Ansicht
Dokumentation

ABENCDS_VIEW_CLIENT_HANDLING_OBS - CDS VIEW CLIENT HANDLING OBS

ABENCDS_VIEW_CLIENT_HANDLING_OBS - CDS VIEW CLIENT HANDLING OBS

General Material Data   BAL_S_LOG - Application Log: Log header data  
This documentation is copyright by SAP AG.
SAP E-Book

- Obsolete Client Handling in

Before the annotation @ClientHandling was introduced, the client dependency of a CDS view was specified using the annotation ClientDependent with the possible values true and false.

Determining Client Dependency

The possible values true and false of the obsolete annotation @ClientDependent have the following effects on client dependency:

  • true
The annotation ClientDependent:true works like @ClientHandling.type:#INHERITED.
  • A view with client-dependent data sources is a client-dependent view.

  • A view with exclusively client-independent data sources is a client-independent view.

Unlike in @ClientHandling:#INHERITED, a view in which a client-independent data source as the left side of a LEFT OUTER JOIN is joined with a client-dependent data source on the right side cannot be made client-dependent using @ClientDependent:true and a syntax error occurs.
  • false
The annotation ClientDependent:false makes a view into a client-independent view. Unlike in @ClientHandling.type:#CLIENT_INDEPENDENT, this value can also be specified for view when a data source of the view is client-dependent.

Only the annotation @ClientHandling.type should now be used in new CDS views. The annotations @ClientHandling and @ClientDependent cannot be used together in the definition of a CDS table function. If neither of the annotations @ClientHandling.type and @ClientDependent is specified, the default value of @ClientHandling.type applies.

Determining Client Handling

The possible values true and false of the obsolete annotation @ClientDependent have the following effects on client handling:

  • true
The annotation ClientDependent:true works like @ClientHandling.algorithm:#AUTOMATIC. No cross join, however, is created here for the case (forbidden here) where a client-independent data source is joined with a client-dependent data source using a LEFT OUTER JOIN.
  • false
The annotation @ClientDependent:false works like @ClientHandling.algorithm:#NONE. Client handling can be disabled here for views that contain client-dependent data sources.

Properties of Client-independent Views

Client-dependent views with the annotation @ClientDependent:true have the same properties as client-dependent views with the annotation @ClientHandling.type.#INHERITED or @ClientHandling.type.#CLIENT_DEPENDENT. @ClientDependent:false can be used, on the other hand, to define client-independent views, even if they contain client-dependent data sources. These have the following properties:

A client column specified in the SELECT list is preserved in the result set if client dependency is disabled explicitly using the annotation @ClientDependent:false. The column is then applied like a regular view field when the CDS entity is accessed.
If client dependency is switched off explicitly using the annotation @ClientDependent:false, an associated CDS-managed DDIC view does not have a client column if it is not specified explicitly in the SELECT list. A client column specified in the SELECT list, on the other hand, specifies that the CDS-managed DDIC view has a client column, hence making it a client-dependent view. This has consequences for obsolete access to the CDS-managed DDIC view using SELECT. This is then handled in accordance with implicit client handling for dictionary objects.

Note

It is not usually a good idea to disable client dependency in views with client-dependent data sources. If this is still sometimes the case, only the CDS entity must be accessed, and never the CDS-managed DDIC view, to avoid unexpected behavior.

CDS Views, Obsolete Client Handling






SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   General Data in Customer Master  
This documentation is copyright by SAP AG.

Length: 7823 Date: 20240424 Time: 160205     sap01-206 ( 91 ms )