We are hiring and constantly growing! Have a look through our vacancies to find the right role for you!
... CLIENT SPECIFIED ${ $[entity1~clnt$] $[, entity2~clnt$] ... $}
$| $[(clnt_syntax)$] ...
1. ... $[entity1~clnt$] $[, entity2~clnt$] ...
2. ... (clnt_syntax)
Generally, the addition CLIENT SPECIFIED can be specified in the statement SELECT of queries in the same places as USING. This is obsolete and forbidden in strict mode from Release and whenever global temporary tables are accessed. Moreover, the addition CLIENT SPECIFIED is not allowed when accessing (for more details, see ABAP CDS - Client Handling in CDS View Entities). The addition USING should be used instead of CLIENT SPECIFIED.
The addition CLIENT SPECIFIED disables implicit client handling for the current query. No implicit condition is created for the current client and, in the case of joins, no equality condition is created for the client columns of the client-dependent data sources involved. Instead, the client column of client-dependent data sources can be specified in the SQL conditions of the query used to select clients.
The addition CLIENT SPECIFIED is applied only to the current query. If multiple queries are used in a SELECT statement or WITH statement, client handling must be examined separately for each query. More specifically, client handling in a main query is disabled separately from client handling in the subqueries used there. Unlike USING, CLIENT SPECIFIED can also be specified in the subqueries of conditions sql_cond to achieve the same client handling as in the main query.
If CLIENT SPECIFIED is specified for a client-dependent CDS entity, the client field is read from the database and added to the result set. The structure of a client-dependent or a client-dependent CDS table function does not have a component for the client field, which means that a client column is added to the result set here implicitly. If the client field is accessed explicitly or implicitly in the SELECT statement, an addition entity~clnt must be used to assign the field a name that can be used in the current statement.
If known statically that the data sources data_source are not client-dependent, the addition CLIENT SPECIFIED must not be specified. Furthermore, the addition CLIENT SPECIFIED cannot be used when the following CDS entities are accessed:
The addition CLIENT SPECIFIED cannot be used together with the following path expressions:
Like the example for USING CLIENT,
this example reads all customers in client 800 from a client-dependent database table, but needs an explicit WHERE condition to do this.
Accesses a client-dependent CDS view with the addition CLIENT SPECIFIED. To do this, the line type of the internal table used as a target range is defined using the addition CLIENT SPECIFIED of the statement TYPES. If the addition CLIENT SPECIFIED of the statement TYPES is not used, the column clnt would not exist in the table scarr_spfli_clnt and could not be used as a target range.
The following example shows how the recommended addition USING ALL CLIENTS is used, for which no special target area is required.
... $[entity1~clnt$] $[, entity2~clnt$] ...
Declares the names clnt of the client fields of the client-dependent CDS entities. If CLIENT SPECIFIED is used, the result set for a client-dependent CDS entity has a client field, although the structure of the entity does not have a component of this type. The declaration of a name with entity~clnt is necessary when accessing this type of client field explicitly or implicitly in the SELECT statement:
Here entity is the name of a client-dependent CDS entity used as a
data source and clnt is a freely
definable unique name for its client column, which is valid throughout the current SELECT statement.
A name defined with entity~clnt is completely independent of the actual name of a client column
in a data source of a CDS entity. It is used, for example, in a WHERE condition or ON condition to select specific clients in a CDS entity.
Like the previous example for accessing a CDS view with addition CLIENT SPECIFIED. In this case,
a WHERE condition is specified for the client column. This requires a name to be defined after CLIENT SPECIFIED.
... (clnt_syntax)
If (source_syntax) is specified dynamically after FROM, a parenthesized data object clnt_syntax can be specified instead of a static $[entity1~clnt$] $[, entity2~clnt$] ... This data object must contain the static syntax when the statement is executed. The data object clnt_syntax can be a character-like data object or a standard table with a character-like line type. The syntax in clnt_syntax is not case-sensitive, as in the static syntax. When an internal table is specified, the syntax can span multiple rows.
Like in the previous example for accessing a CDS view using the additionCLIENT SPECIFIED, but with dynamic specifications.
Leave us your contact details and we will call you back. Fields marked with * are mandatory.
We offer holistic SAP solutions from a single source to shape digital change and develop new business areas.
Switzerland
Schaffhausen
Germany
Mannheim, Düsseldorf, Munich
USA
Haverhill
Greece
Thessaloniki