ABAP - Keyword Documentation → ABAP Core Data Services (ABAP CDS) → 

    ABAP CDS Glossary

    In the following, terms of the ABAP Glossary are listed that are relevant for ABAP CDS.

    ABAP annotation

    SAP annotation that can be specified in CDS source code and that is evaluated by the ABAP Core Data Services framework, namely the ABAP runtime framework itself. Any other CDS annotations are framework-specific annotations and must be evaluated by their own frameworks.

    ABAP CDS

    -> ABAP Core Data Services

    ABAP Core Data Services

    ABAP CDS for short. An infrastructure for defining and consuming semantically rich data models on AS ABAP. ABAP CDS provides different languages for defining metadata realized as CDS objects. ABAP CDS is based on SQL but provides more features and sublanguages than SQL.

    ABAP tuning object

    Synonym for app-server tuning object. A tuning object that defines the technical settings for a CDS entity on AS ABAP. ABAP tuning objects are defined as CDS objects in CDS source code. Currently, there are the following ABAP tuning objects:

    aggregate

    The result of an aggregate function. Can be determined using aggregate functions in an ABAP SQL SELECT statement or in the SELECT list of a CDS view entity.

    aggregate expression

    In ABAP SQL or in CDS DDL, an aggregate expression uses an aggregate function to determine a value from the values of a column of the result set of a query.

    aggregate function

    A function that processes multiple values together and returns a single value as a result. The calculation is done in the database system. An aggregate function can be used in an aggregate expression. In ABAP SQL, it can also be used as a window function in a window expression, and in a hierarchy aggregate navigator.

    alias name

    A name that is assigned as a substitute name to an element, an object, etc. The following alias names can be defined in ABAP:

    analytical formula

    An analytical formula is an element of a CDS analytical projection view that is added as a new element in the projection layer and performs a calculation.

    analytical scalar function

    CDS scalar function that is evaluated by an analytical runtime environment. Analytical scalar functions can be used in analytical projection views in operand positions that expect a scalar value.

    Analytical scalar functions are system functions. They can only be defined and implemented internally by SAP. They are available for internal and external use in CDS analytical queries.

    For a list of analytical scalar functions delivered by SAP, see ABAP CDS - Analytical Scalar Functions.

    analytical selection

    Also called restricted measure. An analytical selection is an element of a CDS analytical projection view that is newly added in the projection layer. A selection is defined by means of a selection-related case expression.

    annotation array

    CDS annotation defined with the addition array of in its annotation definition. When an annotation array is specified in annotation syntax, any number of similar elements are listed in square brackets [ ].

    annotation value

    A value specified for a CDS annotation in the CDS annotation syntax. The possible values can be specified in the CDS annotation definition using a type specification, enumeration symbols, and a default value.

    arithmetic expression

    Formulation of an arithmetic calculation.

    arithmetic operator

    Combines two numeric operands in an arithmetic expression.

    association source

    Data source that serves as the source of an association.

    association target

    Data source that serves as the target of an association.

    base type

    Technical storage type of enumerated constants, enumerated variables, and CDS enumerated elements. In ABAP CDS, the base type of an enumerated type is also used for compatibility checks in cast expressions and in comparisons. In ABAP, the base type of an enumerated type can be used in special conversions using CONV. A base type is flat, elementary, and has a maximum length of 16 bytes.

    binary floating point literal

    A numeric literal that has the binary floating point data type f or FLTP.

    See also:

    built-in function

    A predefined function in ABAP, ABAP SQL, and ABAP CDS.

    Actual parameters passed to the formal parameters of built-in functions are called also called arguments of the function.

    byte field literal

    A literal of the byte field type x or RAW with the length of the specified bytes. Only typed byte field literals are available.

    See also:

    byte string literal

    A literal of the byte string type xstring or RAWSTRING.

    See also:

    case distinction

    Control structure with the control statement CASE or CASE TYPE OF, condition expression with the conditional operator SWITCH, CASE expression in ABAP SQL, or CASE expression in CDS DDL. In a case distinction, the value of an operand determines which of multiple source code sections is executed. In the ABAP language, there are only simple case distinctions. In ABAP CDS and ABAP SQL, there are simple case distinctions and complex case distinctions.

    cast

    In ABAP, see casting. In SQL, a cast is a type conversion.

    CDS

    -> Core Data Services

    CDS abstract entity

    A CDS transient entity defined using DEFINE ABSTRACT ENTITY in a CDS data definition. A CDS abstract entity defines the type properties of a CDS entity without defining a database object.

    CDS abstract entity extension

    CDS entity extension of a CDS abstract entity. A CDS abstract entity extension can be used to add elements to an abstract entity without making any modifications to the original entity. It is defined using the statement EXTEND ABSTRACT ENTITY.

    CDS access condition

    Condition in a CDS role defined in an access rule of the statement DEFINE ROLE for a CDS entity. CDS access control evaluates the access conditions of a CDS entity by default when ABAP SQL is used to access objects. Access conditions can include for example PFCG conditions, literal conditions, user conditions, and other conditions.

    CDS access control

    Implicit restriction applied to a selection of CDS entities when accessing objects with ABAP SQL using access conditions defined in CDS roles. CDS access control is switched on by default for each CDS view entity, CDS DDIC-based view (obsolete), and CDS table function. It can be switched off for individual views and table functions using a view annotation or table function annotation.

    CDS access policy

    Framework defined in the DCL of the ABAP Core Data Services using DEFINE ACCESSPOLICY. Currently, only one CDS access policy is used as a frame for the definition of exactly one PFCG mapping.

    CDS access rule

    An access rule formulates an access condition for a CDS entity or guarantees open access in a CDS role.

    CDS amount field

    A component of a CDS entity of data type CURR, DECFLOAT34, DEC, or FLTP in ABAP CDS. It is used for entering an amount in a particular currency. The content of an amount field is interpreted as an integer in the smallest unit of the currency. An ABAP CDS amount field must be linked with a currency key of the same CDS entity that specifies the currency and the number of decimal places.

    Related terms:

    CDS analytical cube view

    CDS view entity or CDS DDIC-based view (obsolete)  annotated with @Analytics.dataCategory: #CUBE. Serves as a data source for CDS analytical projection views.

    CDS analytical dimension field

    An analytical dimension field is an element of an analytical cube view that describes a characteristic of the view's subject and that can be used for grouping or filtering. For example if a view describes a sales order, the following columns can be dimensions: customer, date, region.

    CDS analytical dimension view

    CDS view entity or CDS DDIC-based view (obsolete) annotated with @Analytics.dataCategory: #DIMENSION. Can serve as a data source for CDS analytical projection views.

    CDS analytical measure field

    An analytical measure field is a field of an analytical cube view or an analytical dimension view that contains measurable data. In other words, an analytical measure field can be any field that contains quantifiable data that can be calculated, for example, the total price of all sales order positions.

    CDS analytical projection view

    Synonym for CDS analytical query. CDS projection view that is intended for modeling analytical queries within a CDS data model. A CDS analytical projection view is defined using the CDS DDL statement DEFINE TRANSIENT VIEW ENTITY AS PROJECTION ON and it must have the provider contract set to ANALYTICAL_QUERY. A CDS analytical projection view is a CDS transient entity.

    CDS analytical query

    -> CDS analytical projection view

    CDS annotation

    A CDS annotation adds metadata to a CDS object that goes beyond the syntax features of SQL. An annotation is specified using the annotation syntax in the CDS source code of the CDS object. CDS annotations and their syntax are defined using CDS annotation definitions. SAP delivers a predefined set of SAP annotations.

    CDS annotation definition

    Defines a CDS annotation as a CDS object using the statement DEFINE ANNOTATION in DDLA source code in CDS DDL in ABAP CDS. A CDS annotation definition specifies the CDS annotation syntax that is to be used when the annotation is specified in CDS source code.

    CDS annotation syntax

    Syntax for specifying a CDS annotation in CDS source code. The CDS annotation syntax is fixed and the CDS annotation definition specifies further rules for the use of the respective annotation.

    CDS aspect

    CDS object available in ABAP CDS. The following types of CDS aspects are available:

    CDS association

    An association of ABAP CDS. Associations define join relationships between association sources and association targets. CDS associations can be defined for CDS view entities, CDS DDIC-based views (obsolete), CDS projection views, CDS custom entities, and CDS abstract entities using the addition ASSOCIATION in the CDS DDL in ABAP CDS. They can be evaluated in CDS DDL, CDS DCL, and in ABAP SQL using SQL path expressions. To-child associations and to-parent associations are specialized associations that together build a CDS composition relationship for the CDS composition tree of a RAP business object.

    CDS association path

    A sequence of CDS associations. CDS association paths can be specified in the form of SQL path expressions in ABAP SQL and in ABAP CDS.

    CDS buffer propagation

    Buffer propagation means that the joins defined by a CDS association are processed by the ABAP SQL in-memory engine on data stored in the table buffer. Instead of using joins instantiated on the SAP HANA database, temporary joins for processing the table buffer are established on the AS ABAP. This can lead to performance gains.

    CDS built-in function

    A predefined function in ABAP CDS that can be used in operand positions of CDS entities. ABAP CDS offers numeric functions, string functions, and date and time functions that have a return value of the corresponding data type. Conversion functions are available to perform conversions between data types.

    CDS built-in type

    Built-in  elementary CDS type. CDS built-in types are based on the built-in Dictionary types and the same rules apply as to the corresponding built-in ABAP Dictionary types. CDS built-in types can be used for the typing of CDS elements,  CDS parameters, and  CDS simple types, and for casting in ABAP CDS.

    CDS calculated quantity

    A component of a CDS view entity in ABAP CDS. A calculated quantity is always the result of a calculation using CDS amount and / or CDS quantity fields. The DDIC data type is DECFLOAT34. An ABAP CDS calculated quantity must be linked with a CDS calculated unit of the same CDS view entity that specifies a user-defined unit for the calculated quantity.

    CDS calculated unit

    A component of a CDS view entity of data type CHAR that specifies a user-defined unit which is not contained in any list of predefined values. A CDS calculated unit can be linked with a CDS calculated quantity of the same CDS view entity.

    CDS child entity

    Any CDS entity of a CDS composition tree other than the root entity. A child entity is defined as the composition target of a to-child association in its parent entity and has a to-parent association to its parent entity. A child entity has exactly one parent entity.

    CDS composition

    A CDS composition consists of a to-parent association and a to-child association. A CDS composition defines an existential dependency between two entities, where the child entity cannot exist without the parent entity.

    CDS composition path

    A sequence of CDS compositions that link the CDS entities of a CDS composition tree. CDS composition paths can be specified like CDS association paths in SQL path expressions.

    CDS composition tree

    A tree hierarchy of a RAP business object that consists of parent entities and child entities that are themselves defined using CDS compositions. The top parent entity of a CDS composition tree is the root entity which represents the business object.

    CDS condition

    Logical expression in a CDS operand position.

    CDS custom entity

    A CDS transient entity defined using DEFINE CUSTOM ENTITY in a CDS data definition. A CDS custom entity allows developers to implement their own data retrieval using the ABAP language. The data retrieval is implemented by a method of an ABAP class that is called when accessing the custom entity in a framework such as the RAP query engine. Custom entities cannot be used in ABAP SQL. In RAP, custom entities are used as the data model basis for unmanaged queries.

    CDS custom entity extension

    CDS entity extension of a CDS custom entity. A CDS custom entity extension can be used to add elements to a custom entity without making any modifications to the original entity. It is defined using the statement EXTEND CUSTOM ENTITY.

    CDS data definition

    A definition or extension of a CDS entity using language elements of the CDS DDL in ABAP CDS in DDL source code. A CDS data definition might also contain DQL parts that define the data retrieval. For example, the DQL statement SELECT is embedded in CDS DDL for CDS views.

    CDS DCL

    Data control language (DCL) of ABAP CDS used to define CDS roles and CDS access policies in DCL source code in CDS access control.

    CDS DCL aspect

    Object used for the definition of user-specific values and their use in the conditions of a CDS role. Currently, the predefined aspects pfcg_auth and user are available, plus the user-defined aspects defined with DEFINE ASPECT.

    CDS DDIC-based entity (obsolete)

    A CDS persistent entity for which a CDS-managed DDIC view (obsolete) is created in the ABAP Dictionary alongside the CDS entity upon activation.

    There is only one kind of DDIC-based entity available, namely CDS DDIC-based views.

    CDS DDIC-based view

    An obsolete type of CDS view that is technically based on a CDS-managed DDIC view (obsolete) in the ABAP Dictionary. A CDS DDIC-based view (obsolete) is defined with the CDS DDL statement DEFINE VIEW ddic_based_view.

    CDS DDIC-based view extension

    A CDS entity extension of a CDS DDIC-based view. A CDS DDIC-based view extension can be used to add elements and/or clauses to a view without making any modifications to the original view. It is defined using the statement EXTEND VIEW.

    CDS DDL

    The data definition language of ABAP CDS. Besides CDS DDL for CDS data definitions, there two further dialects, namely CDS DDLA and CDS DDLX.

    CDS DDL aspect

    A CDS object defined in ABAP CDS that defines reusable components for CDS entities. A CDS aspect is defined using the syntax DEFINE ASPECT. An aspect can be included in one or more CDS data definitions by a CDS aspect binding.

    CDS DDL aspect binding

    An optional component of a CDS data definition, specified in front of the SELECT list. With a CDS aspect binding, a CDS aspect is bound to a CDS data definition using the syntax BIND ASPECT. This makes the elements of the aspect available for use in an operand position of the data definition, using the syntax INCLUDE.

    CDS DDL expression

    Expression in a CDS DDL operand position that is passed to the database system for evaluation.

    CDS DDLA

    A CDS DDL dialect that contains language elements for CDS annotation definitions in DDLA source code.

    CDS DDLX

    A CDS DDL dialect that contains language elements for  CDS metadata extensions in DDLX source code.

    CDS delegated buffer

    A CDS view entity buffer that delegates the buffer usage from one CDS entity to its base entity, which avoids numerous entries of the same data in the memory of the AS ABAP. This can improve performance.

    Defined using the syntax TYPE DELEGATED in the definition of a CDS entity buffer.

    CDS element

    An element in a CDS entity. A CDS element is defined in an element list of a CDS data definition and is a structure component of the structured type defined by the CDS entity. CDS elements can be, for example, CDS source fields, CDS literals, or CDS DDL expressions.

    CDS entity

    CDS object in ABAP CDS. A CDS entity is defined in a CDS data definition using the CDS DDL of ABAP CDS in DDL source code. A CDS entity is defined when it is activated. Within CDS, a CDS entity can access other entities. Currently, there are the following CDS entities available:

    In ABAP programs, a CDS entity can be used as a global type and ABAP SQL read statements can be used to access CDS entities.

    CDS entity buffer

    An ABAP tuning object that defines table buffering settings for CDS entities. The following types of CDS entity buffers are available:

    Sometimes, CDS entity buffer is also used as a synonym for the area of the table buffer in the shared memory where data from CDS entities is buffered.

    CDS entity extension

    A transportable extension of a CDS entity. A CDS entity extension can be used to add elements and/or clauses to a CDS entity without making any modifications to the original entity.

    There are currently four different statements that can be used to extend a CDS entity in CDS DDL:

    CDS enumerated element

    CDS element that is typed with a CDS enumerated type. A CDS enumerated element can only contain one of the enumerated values of the respective enumerated type.

    CDS enumerated type

    CDS user-defined type in ABAP CDS that defines an enumerated type. A CDS enumerated type is defined using the statement DEFINE TYPE ENUM.

    CDS external entity

    A CDS persistent entity defined using DEFINE EXTERNAL ENTITY in a CDS data definition. A CDS external entity can be used to access data from external database systems within the AS ABAP. The external systems can be other SAP HANA or non-SAP HANA database systems. The properties of the connection between an external entity and the external system are configured using a logical external schema. The connection is managed using SAP HANA Smart Data Access. Currently, only dynamic external entities are available.

    CDS FDL

    Function Definition Language in ABAP CDS. CDS FDL contains language elements for CDS scalar functions in FDL source code.

    CDS function

    Function in ABAP CDS that can be used in operand positions of CDS entities. A CDS function can be a user-defined function, a built-in function, or a system function.

    CDS function definition

    A CDS object that defines a CDS function using language elements of the CDS FDL in ABAP CDS in FDL source code.  Currently, CDS scalar function definitions are the only type of CDS function definition available.

    CDS generic type

    Built-in generic CDS type. The generic CDS types are: any and numeric. Generic CDS types can be used for the typing of parameters of CDS scalar functions.

    CDS hierarchy

    A CDS persistent entity defined using DEFINE HIERARCHY in a CDS data definition. A CDS hierarchy allows the retrieval of the nodes of hierarchical data. In ABAP SQL read statements, a CDS hierarchy can be accessed as a SQL hierarchy. Additional hierarchy columns containing the hierarchy attributes are available.

    CDS literal

    An elementary CDS operand defined by the textual specification of a value in a CDS object. ABAP CDS provides typed literals and  untyped literals.

    CDS literal condition

    Part of an access condition in a CDS role that associates an element of a CDS entity with a literal value.

    CDS localized field

    A SQL path target field in a CDS entity whose original data source is a CDS text provider view and that is automatically displayed in the user's logon language. Defined using the keyword LOCALIZED. Currently available in CDS projection views only.

    CDS logical external schema

    A logical database schema that maps one or more CDS external entities to a concrete physical external system or database, and a specific database schema in such a remote system. A logical external schema is represented by a transportable repository object whose configuration specifies the connection details required by the SAP HANA remote source to connect to an external system.

    CDS metadata extension

    Short MDE. A CDS object of the ABAP CDS is defined in DDLX source code with language elements of the CDS DDL. In a CDS metadata extension, CDS annotations are specified for a CDS entity outside its data definition. A CDS metadata extension is always assigned to a layer such as industry, partner or customer.

    CDS object

    A repository object of ABAP CDS. CDS objects are, for example, CDS entities, CDS annotation definitions, CDS metadata extensions, CDS roles, CDS user-defined types, CDS functions, and ABAP tuning objects.

    CDS operand

    A syntax element of a CDS data definition at an operand position. Defined directly or as a formal parameter, built-in function, or expression. Operands can be combined with operators to form expressions that in turn can be listed at certain operand positions.

    More about:

    CDS parameter

    An input parameter of a CDS object. A CDS parameter can be defined, for example, in the parameter list of a CDS data definition or of a CDS scalar function definition. When a CDS object with parameters is used in another CDS object or in an ABAP SQL statement, actual parameters must be assigned to their CDS parameters.

    CDS parent entity

    A CDS entity of a CDS composition tree that uses a to-child association to define a child entity. A parent entity can have multiple child entities. Each child entity must define and expose a to-parent association to its parent entity.

    CDS persistent entity

    A CDS entity for which an artifact is created on the database and which can be used as a data source in ABAP SQL, such as a CDS view entity or a CDS table function.

    See also:  CDS transient entity

    CDS PFCG condition

    Part of an access condition in a CDS role that uses an authorization object to associate an element of a CDS entity with the authorizations of the current ABAP user.

    CDS PFCG mapping

    A PFCG mapping associates CDS elements with authorization fields. It is defined using DEFINE PFCG_MAPPING as part of a CDS access policy and can be used in PFCG conditions.

    CDS projected entity

    Used in the context of CDS projection views. The CDS view entity that is used as the basis of a CDS projection view, and that is defined after the addition AS PROJECTION ON is called projected entity.

    CDS projection view

    A special CDS view entity that is based on another CDS view entity (called projected entity). CDS projection views adapt a CDS data model for service-specific use cases. A CDS projection view is defined with the CDS DDL statement DEFINE [TRANSIENT] VIEW ENTITY AS PROJECTION.

    The following types of CDS projection views are available:

    CDS propagated buffer

    A CDS entity buffer that defines SQL path target fields for buffer propagation. Defined using the syntax PROPAGATE VIEW ENTITY BUFFER.

    CDS provider contract

    In ABAP CDS, a provider contract specifies the scenario in which a CDS object is used. Depending on the scenario, different rules apply to the definition of the object in question. Each provider contract imposes a different set of syntax checks.

    Currently, the following CDS objects can have a provider contract:

    CDS quantity field

    A component of a CDS entity of data type QUAN, DECFLOAT16, DECFLOAT34, DEC, FLTP, INT1, INT2, or INT4 in ABAP CDS. It is used for entering a quantity in a particular unit. An ABAP CDS quantity field must be linked with a unit key of the same CDS entity that specifies the unit of measurement and the number of decimal places.

    Related terms:

    CDS role

    A CDS object defined using the statement DEFINE ROLE in a DCL source code in the CDS DCL of ABAP CDS. This object applies CDS access control based on access conditions when CDS persistent entities are accessed using ABAP SQL. The access conditions of a CDS role evaluate the classic authorizations of the current user.

    CDS root entity

    The top CDS entity of a CDS composition tree. The addition ROOT must be specified in the definition of a root entity with CDS DDL. A root entity can be part of exactly one RAP BO. A CDS root entity is typically a CDS parent entity and it is typically used as a RAP BO root entity in the context of the ABAP RESTful Application Programming Model.

    CDS scalar function

    CDS function that operates on a single input data set and returns a scalar (that means elementary) return value as result. A CDS scalar function is defined using DEFINE SCALAR FUNCTION in a CDS data definition. CDS scalar functions can be user-defined functions or system functions.

    There are analytical scalar functions and SQL-based scalar functions.

    A scalar function can have one or more scalar function implementation references that bind it to implementations in different environments, such as an SQL environment or the ABAP Analytical Engine.

    CDS scalar function definition

    CDS object that defines a CDS scalar function using language elements of the CDS FDL in ABAP CDS in FDL source code. A CDS scalar function definition is defined using the statement DEFINE SCALAR FUNCTION.

    CDS scalar function implementation reference

    Repository object that binds a CDS scalar function to a runtime environment. In case of an SQL-based scalar function, the scalar function implementation reference also specifies the AMDP function implementation that implements the scalar function in question.

    CDS schema notation

    CSN for short. Notation for compact representations of data models, such as data models defined with ABAP CDS. SAP standard format for metadata exchange between data models of different technology stacks, for example between ABAP CDS and SAP Analytics Cloud (SAC).

    CDS SDL

    The Service Definition Language of ABAP CDS. CDS SDL contains language elements for CDS service definitions in SDL source code.

    CDS service definition

    A CDS service definition is a CDS object that exposes CDS entities for a business service. A CDS service definition is defined by the CDS SDL language elements of ABAP CDS in SDL source code.

    CDS service definition extension

    A transportable extension of a CDS service definition using the CDS SDL statement EXTEND SERVICE. A CDS service definition extension can add further entities to an existing CDS service definition without modifying the original service definition.

    CDS simple type

    CDS user-defined type in ABAP CDS that defines an elementary data type. A CDS simple type is defined using the statement DEFINE TYPE.

    CDS source code

    The source code for the definition of a CDS object. There are different kinds of CDS source code, such as

    The different types of source code have different editors in ADT, which are documented there. The CDS objects defined in CDS source code are transported using the source code.

    CDS source field

    A field of a data source of a CDS entity that can be used as a CDS element and at different operand positions of that CDS entity.

    CDS source type

    Denotes the type of CDS data definition. The following categories are available:

    All available CDS source types are listed in the domain DDDDLSRCTYPE.

    CDS SQL query

    A database query that is implemented in the CDS DDL as a part of the definition of a view entity using the SQL language element SELECT. The clauses and additions of SELECT define the result set returned by the database. ‎

    CDS system entity

    A CDS entity delivered with an ABAP system that implements basic functionality, such as generating a series of integers (SERIES_GENERATE_INTEGER). It can be used as data source of other CDS entities or in queries of ABAP SQL.

    CDS system function

    A CDS function delivered as part of the ABAP technology that implements basic functionality. Currently, SAP delivers analytical scalar functions  and SQL-based scalar functions as system functions. System functions are classified with the C1 contract for use internally in the system.

    CDS system table function

    A CDS system entity that is realized as CDS table function.

    CDS table function

    A CDS persistent entity defined using DEFINE TABLE FUNCTION in a CDS data definition. Each CDS table function is linked with an AMDP table function  in which it is implemented using SQLScript. A CDS table function returns a tabular result set.

    CDS TDL

    The Type Definition Language in ABAP CDS. CDS TDL contains language elements for CDS user-defined types in TDL source code.

    CDS text association

    A regular CDS association whose association target is a CDS text provider view. The target cardinality of a CDS text association is TO MANY. CDS text associations are used for defining CDS localized fields.

    CDS text provider view

    A CDS entity whose primary key consists of multiple key fields, one of which is of data type LANG and length 1. A text provider view typically contains one or more text fields for which translations in different languages are maintained. A text provider view can serve as an association target for a CDS text association.

    CDS to-child association

    A specialized CDS association in ABAP CDS that is defined in the parent entity and points to the child entity using the syntax statement COMPOSITION OF. In combination with the to-parent association, they define a CDS composition relationship. The CDS compositions are the basis for the CDS composition tree of a RAP business object.

    CDS to-parent association

    A specialized CDS association in ABAP CDS that is defined in the child entity and points to the parent entity using the syntax statement ASSOCIATION TO PARENT. In combination with the to-child association, they define a CDS composition relationship. The CDS compositions are the basis for the CDS composition tree of a RAP business object.

    CDS transactional interface

    A CDS transactional interface is a CDS projection view that is intended to serve as stable public interface for consumption. A CDS transactional interface should be classified by a release contract and thus serve as released API. They are typically used in the context of the ABAP RESTful Application Programming Model to provide the basis for a RAP BO interface. A CDS transactional interface is defined using the CDS DDL statement DEFINE VIEW ENTITY AS PROJECTION ON and it must have its provider contract set to TRANSACTIONAL_INTERFACE. A CDS transactional interface is a CDS persistent entity.

    CDS transactional query

    A CDS projection view that is intended for modeling transactional queries. A transactional query is typically used in the context of the ABAP RESTful Application Programming Model to adapt a CDS data model for service-specific use cases. A transactional query is defined using the CDS DDL statement DEFINE VIEW ENTITY AS PROJECTION ON and it must have the provider contract set to TRANSACTIONAL_QUERY. A CDS transactional query is a CDS persistent entity.

    CDS transient entity

    A CDS entity for which no ABAP-managed database object is created and which cannot be used in read access in ABAP SQL and ABAP CDS.

    Currently, the following transient entities are available:

    See also: CDS persistent entity

    CDS type

    Data type in ABAP CDS. There are CDS user-defined types, CDS built-in types, and CDS generic types.

    CDS type definition

    A definition of a CDS user-defined type using language elements of the CDS TDL in ABAP CDS in TDL source code.

    CDS user-defined function

    Custom function in ABAP CDS that allows developers to define and implement their own custom logic and reuse it in operand positions of CDS entities. SQL-based scalar functions are the only type of CDS user-defined functions available.

    CDS user-defined type

    A CDS object in ABAP CDS. A CDS user-defined type is defined in the CDS type definition language (CDS TDL). CDS user-defined types can be used for typing, casting, and as operands of expressions in CDS entities and in other CDS objects and in ABAP after the addition TYPES. A CDS user-defined type can be enriched with metadata using CDS annotations.  Currently, the following CDS user-defined types are available:

    CDS variant

    CDS object of ABAP CDS defined in the ADT. A CDS variant consists of a name, which can be used to link a CDS metadata extension to the CDS variant in the statement ANNOTATE. When evaluating annotations, a CDS variant can be specified to select the corresponding CDS metadata extension during the evaluation of the metadata extensions.

    Caution

    CDS variants are not currently released for general use. It is not possible to define standalone CDS variants and the use of CDS variants in metadata extensions produces a syntax check warning.

    CDS view

    A CDS entity defined in a CDS data definition that implements a view. There are three types of CDS views:

    Read access on a CDS view is possible using ABAP SQL or from other CDS entities.

    CDS view entity

    A view defined in ABAP CDS as a CDS persistent entity with the CDS DDL statement DEFINE VIEW ENTITY.

    CDS view entity buffer

    A CDS entity buffer that defines the kind of table buffering for a CDS entity. Defined using the statement DEFINE VIEW ENTITY BUFFER.

    CDS view entity extension

    CDS entity extension of a CDS view entity or a CDS projection view. A CDS view entity extension can be used to add elements and/or clauses to a view without making any modifications to the original view. It is defined using the statement EXTEND VIEW ENTITY.

    CDS virtual element

    Element in the element list of a projection view which is not included in the projected entity. Virtual elements are not persistent on the database, but calculated during runtime, usually in ABAP classes. In order to fill and analyze the virtual elements of a projection view, special frameworks like the RAP query engine have to be involved.

    CDS-Based Enterprise Search

    The ABAP-CDS-specific version of the SAP Enterprise Search technology.  It is based on CDS view entities in the backend. These view entities are annotated with framework-specific annotations from the EnterpriseSearch domain.  The annotations define search capabilities and they also trigger the  generation of a CDS-based search connector. CDS-based enterprise search provides enhanced search capabilities in SAP Fiori launchpad.

    CDS-based search connector

    A search connector that enables communication between an ABAP system and the SAP HANA database in  the context of CDS-based enterprise search.

    CDS-managed DDIC view

    An obsolete DDIC database view of the ABAP Dictionary that is created in addition to the CDS entity when a CDS DDIC-based view (obsolete) is activated. CDS-managed DDIC views are used as technical foundations for a CDS view of this type, but should not be used directly in ABAP or ABAP CDS.

    CDS/CTE association path

    A sequence of CDS associations and CTE associations that associate CDS entities and common table expressions with association targets. In other words, a mixture of CDS and CTE association paths. CDS or CTE association paths can be specified in the form of SQL path expressions in ABAP SQL.

    character literal

    Also referred to as text literal. A literal with a character-like data type whose value is a character string.

    See also:

    client dependency

    Property of a SQL data source. A SQL data source can be client-dependent or client-independent. When accessing a client-dependent SQL data source in ABAP SQL, an implicit client handling takes place.

    client handling

    Processing of the application data of a client. When accessing client-dependent DDIC database tables or views, ABAP SQL statements use implicit client handling, which by default accesses the current client. By using additions to the ABAP SQL statements, the implicit client handling can be switched to other clients. The client handling of AMDP methods can be defined with special AMDP options.

    client isolation

    Client isolation on an AS ABAP means that an ABAP user has access to data of the current client only. In ABAP Cloud, client isolation is enforced as follows:

    client literal

    A literal that contains a client ID and has the data type CLNT.

    See also:

    client-dependent

    A SQL data source for which an implicit client handling takes place when accessed with ABAP SQL.

    See also: client-independent.

    client-independent

    A SQL data source that is not client-dependent. Client-independent SQL data sources contain data that is not specific to a client and should be accessed by system programs. See also system table.

    client-safe

    A repository object that accesses client-dependent SQL data sources is client-safe, if it can access data of one client only. Such repository objects support the concept of client isolation for AMDP methods:

    A repository object that accesses only client-independent SQL data sources is implicitly client-safe.

    coalesce function

    A built-in function that returns the first non-zero expression in a list of expressions. Available in ABAP CDS and ABAP SQL.

    complex case distinction

    Also searched case. A case distinction that evaluates logical expressions to determine which statements to execute. Available in ABAP CDS and ABAP SQL.

    composition source

    Data source that serves as the source of a CDS composition.

    composition target

    Data source that serves as the target of a CDS composition.

    constant

    In ABAP, a named data object whose value cannot be changed during the runtime of an ABAP program or a procedure. In ABAP CDS, constants appear as components of CDS enumerated types.

    core annotation

    -> ABAP annotation

    Core Data Services

    -> ABAP Core Data Services

    cross join

    A join type for which the rows of the result set are determined by a cross product of the result sets of both SQL data sources. The result set contains all possible combinations of rows.

    CSN

    -> CDS schema notation

    currency field

    A currency field is linked to a currency key and it is used for entering an amount in a particular currency. Currency fields are available in ABAP Dictionary (DDIC) and in ABAP CDS, but the possible data types and handling differs.

    See also:

    currency field literal

    A literal of the data type CURR.

    See also:

    currency key literal

    A literal of the data type CUKY that contains a currency code.

    See also:

    current client

    The current client of a user session is the client whose client ID was specified  during logon.

    database query

    Query for short. A database query is used to retrieve data from database tables. In SQL, queries are generally expressed in its subset DQL (Data Query Language). In ABAP SQL a query is called ABAP SQL Query. In ABAP CDS, queries appear in the SQL-part of the definitions of CDS views.

    DCL

    Short for Data Control Language. A subset of SQL. The statements of the DCL perform authorization and consistency checks on relational databases.

    DCL source code

    CDS source code for the definition of CDS roles and of CDS access policies for CDS access control in the CDS DCL in ABAP CDS.

    DDL

    Short for Data Definition Language. A subset of SQL. The statements in the DDL create and delete the objects of a relational database. In an ABAP system, ABAP-managed database objects are edited using tools and frameworks in AS ABAP, such as ABAP Dictionary, ABAP CDS, and AMDP, where DDIC DDL, CDS DDL, or Native SQL are used.  ABAP SQL does not support DDL.

    DDL source code

    The CDS source code for CDS data definitions or their extensions in CDS DDL. See also DDLA source code and DDLX source code.

    DDLA source code

    CDS source code for CDS annotation definitions in CDS DDLA.

    DDLX source code

    CDS source code for CDS metadata extensions in CDS DDLX.

    decimal floating point literal

    A numeric literal of a decimal floating point type.

    See also:

    DML

    Short for Data Manipulation Language. Subset of SQL. The statements in DML perform CUD operations on relational database tables. In the ABAP language, DML is implemented predominantly by the statements for write accesses of ABAP SQL. Note: Sometimes the term DML also includes the statements of DQL.

    DQL

    Short for Data Query Language. Subset of SQL. The statements in DQL perform read operations on relational database tables. In the ABAP language, DQL is implemented predominantly by the statements for read accesses of ABAP SQL. In ABAP CDS, the DQL statement SELECT is embedded in CDS DDL for CDS views. Note: Sometimes the statements of DQL are included in the term DML.

    dynamic external entity

    A CDS external  entity that does not specify a logical external schema in its data definition, but instead uses the addition PROVIDED AT RUNTIME. The logical external schema for a dynamic external entity must be provided as a part of the ABAP SQL SELECT statement when accessing the external entity, using a PROVIDED BY clause. Dynamic external entities can only be accessed by ABAP SQL; they cannot be used as a data source for other CDS entities.

    enumerated structure

    A constant structure declared in the definition of an enumerated type, whose components contain all enumerated values of the enumerated type. The components are special enumerated objects. For an ABAP enumerated type, the declaration of an enumerated structure is optional. A CDS enumerated type is always connected to an enumerated structure. See also enumerated constant.

    enumerated type

    Enum for short. An enumerated type is a data type that specifies a value set in addition to the actual type properties. Enumerated types can be defined in ABAP with TYPES BEGIN OF ENUM or in ABAP CDS with DEFINE TYPE ENUM.

    See also:

    enumerated value

    An enumerated value is an allowed value of an enumerated variable or a CDS enumerated element. The possible enumerated values are defined in the definition of the respective enumerated type as the values of enumerated constants or of components of an enumerated structure. The technical data type of an enumerated value is the base type of the enumerated type.

    enumeration

    -> enumerated type

    FDL source code

    CDS source code for CDS function definitions in CDS FDL.

    filter condition

    Specifies a condition for a CDS association or CTE association in an SQL path expression.

    framework-specific annotation

    SAP annotation that is evaluated by a framework of an SAP software component.

    grouping set

    Grouping sets are used in the GROUP BY clause of a query. A grouping set is specified either as an empty grouping set or as a comma-separated list. Columns and SQL expressions can also be used in the list. The GROUP BY addition GROUPING SETS makes it possible to define multiple grouping sets under a GROUP BY clause. The grouping sets are aggregated separately and merged into one result set.

    inheritance condition

    Part of an access condition in a CDS role that inherits conditions from another CDS role or a different CDS entity.

    integer literal

    A numeric literal of an integer type.

    See also:

    join

    A combination of two SQL data sources into one result set, consisting of columns of both data sources. The rows of the result set are determined by the join type and by join conditions between columns of the data sources. The relation between the rows of the data sources can be expressed by a cardinality. Joins can be implemented in ABAP as follows:

    Furthermore, CDS associations and CTE associations define join relationships that are instantiated when the associations are used in SQL path expressions.

    join condition

    A SQL condition or a CDS DDL condition specified after the addition ON of a join expression. Also called ON condition.

    join expression

    The implementation of a join in SQL using the addition JOIN. Join expressions can be defined in queries, defined by the SELECT statement of ABAP SQL, the SELECT statement in CDS view entities, or the  SELECT statement in CDS DDIC-based views (obsolete).

    join type

    The join type determines, together with the join conditions of a  join expression, how the rows of its result set are combined from its SQL data sources. ABAP SQL and ABAP CDS support inner joins, outer joins (left  and right), and cross joins.

    language key literal

    A literal of the data type LANG that contains a language key.

    See also:

    leaf entity

    A CDS entity of a CDS composition tree of a RAP business object that does not have any child entities. The root entity can also be a leaf entity.

    left outer join

    A join type that determines the same rows as an inner join and an additional row for each row of the left SQL data source that is not included by the join conditions. In these rows, the columns coming from the right data source contain null values.

    literal

    The textual representation of a value in the ABAP source code of an ABAP program or in a CDS object. There are typed literals and untyped literals available.

    See also:

    logical expression

    Formulation of a condition for operands. A logical expression is a single relational expression or is made up of multiple relational expressions combined by Boolean operators. The result of a logical expression is a truth value, that is, either true or false.

    main annotation

    Also called root annotation. The CDS annotation defined after the statement DEFINE ANNOTATION in a CDS annotation definition, or a name of an annotation specified on its own or in front of a period in the annotation syntax. A main annotation can be structured using subannotations.

    null value

    A special value returned by a database to indicate an undefined value or result. There are no special null values in ABAP. In assignments made to ABAP data objects in ABAP SQL, Native SQL, and AMDP, null values are transformed to type-dependent initial values. The ABAP SQL in-memory engine for accessing the table buffer and internal tables as data sources of ABAP SQL queries, however, handles null values as null values.

    ABAP SQL - Null Values

    ABAP CDS - Null Values

    numeric literal

    A literal that has a numeric data type and whose characters represent a numeric value.

    See also:

    numeric text literal

    A literal that contains numeric text and has the length of the specified characters. The data type is n or NUMC.

    See also:

    operand

    A component of an ABAP statement or of a CDS data definition at an operand position. An operand can be an elementary operand or an expression.

    There are different types of operands:

    operand position

    Position of an ABAP statement or of a CDS data definition at which an operand is listed. There are read and write positions. In an ABAP statement, such an operand position is typed with an operand type and appropriate data objects or expressions can be specified. The operand positions for the latter are expression positions. Besides that there are other operand positions, where types, callable units or other external resources such as CDS entities or DDIC database tables can be specified as operands.

    operator

    Component of an ABAP statement or of a CDS data definition that, when combined with operands, forms an expression. When the statement is executed, an operation is executed for two operands connected by one operator, and the result is processed further in the statement. There are arithmetic, bit, string, Boolean, relational, and assignment operators. There are also operators that do not combine operands, but perform other operations in operand positions. Operators of this type are the dereferencing operator, declarations operators, and constructor operators. Finally, the literal operator is used to combine two literals.

    outer join

    A type of join. There are two types of outer joins:

    packed number literal

    A numeric literal of packed number type.

    See also:

    path expression

    A sequence of associations specified at an operand position. Either an SQL path expression or a mesh path expression.

    path specification

    -> Path expression

    quantity field literal

    A literal of the data type QUAN.

    See also:

    query

    -> database query

    replacement object

    A replacement object is a CDS view that can be specified for a DDIC database table or a DDIC database view. In case of a read access using ABAP SQL, the replacement object is addressed instead of the original object.

    return value

    The result of functional methods, built-in functions, and CDS scalar functions.

    reuse expression

    A CDS element that reuses an expression from the SELECT list of the same entity using the syntax $projection.

    right outer join

    A type of join that determines the same rows as an inner join and an additional row for each row of the right SQL data source that is not included by the join conditions. In these rows, the columns coming from the left data source contain null values.

    root annotation

    -> main annotation

    SAP annotation

    CDS annotation delivered by SAP as a CDS annotation definition. There are the following categories of SAP annotations:

    SDL source code

    CDS source code for CDS service definitions in CDS SDL.

    self-association

    An association in which the association source and the association target are the same. Also referred to as reflexive association.

    service binding

    SB for short. A service binding is a repository object that binds a CDS service definition to a communication protocol and publishes it as a business service of AS ABAP.

    session variable

    A global variable of a database system that contains information about the current context. The SAP HANA database has special ABAP-specific session variables whose content matches the value of certain ABAP system fields when accessed from ABAP. In CDS views, these ABAP-specific session variables can be accessed on all supported platforms.

    set operator

    A set operator merges the result sets of multiple queries into a single result set. In CDS view entities and ABAP SQL, the following set operators are available:

    • EXCEPT returns all distinct rows of the first result set that are not part of the following result sets.
    • INTERSECT returns all distinct rows that are part of all result sets.
    • UNION merges the result sets of all queries.

    Set operators in CDS view entities

    Set operators in ABAP SQL

    simple case distinction

    A case distinction that matches an operand to another operand specified in one or more WHEN clauses. Available in ABAP CDS and ABAP SQL.

    source cardinality

    The cardinality of a join or association consists of a source cardinality and a target cardinality. The source cardinality describes the number of matching entries for the entries of the joined data source. For example, a source cardinality of one means that each record of the joined data source has zero or one matching entry in the original data source.

    SQL expression

    An expression in an ABAP SQL statement or in CDS DDL that is evaluated by the database.

    SQL function

    Built-in database platform function that can be used in SQL. In ABAP SQL and in the CDS DDL in ABAP CDS, a set of SQL functions can be accessed platform-independently.

    SQL path expression

    Specifies a CDS association path, a CTE association path, or a CDS/CTE association path in ABAP SQL or ABAP CDS. A SQL path expression can be used as a data source, or for specifying a SQL path target field in an operand position. For this, CDS associations and CTE associations are implicitly transformed into joins. See

    SQL path target field

    A field that is specified behind a SQL path expression.

    SQL-based scalar function

    CDS scalar function that is evaluated by an SQL environment. SQL-based scalar functions can be used in CDS view entities in operand positions that expect scalar values.

    SQL-based scalar functions can be user-defined functions or system functions.

    A CDS scalar function consists of three development objects:

    standalone data type

    A data type that is defined using the statement TYPES in an ABAP program, as a data type of the ABAP Dictionary or as a CDS entity. See also bound data type.

    static external entity

    A CDS external entity that uses the addition PROVIDED BY to specify a logical external schema in its data definition. Static external entities can be used as data sources in ABAP SQL SELECT statements, in other CDS entities, and in ABAP Managed Database Procedures (AMDP).

    string literal

    Either text string literal or byte string literal.

    structured type

    Data type of a structure. It contains other data types as structure components. A named structured type is either defined as a DDIC structure, a CDS entity or inside an ABAP program using the statement TYPES BEGIN OF.

    sub-annotation

    CDS annotation that is specified in curly brackets { } in an annotation definition after another annotation. When specifying a sub-annotation in annotation syntax, curly brackets { } or structured names separated by periods are also used.

    table buffering

    Buffering of data from DDIC database tables, DDIC database views, or from CDS entities in a table buffer in the shared memory of the current AS instance. Whether and how a DDIC database table or a DDIC database view is buffered is determined by its technical settings. For a CDS entity, the buffering is determined by annotations and a CDS entity buffer. Buffering is managed by the database interface. Table buffering is applied implicitly when the database is accessed using ABAP SQL  and from classic dynpros. In ABAP SQL, the ABAP SQL in-memory engine processes the tabular data in the table buffer.

    TDL source code

    CDS source code for CDS type definitions in CDS TDL.

    text field literal

    A character literal of the text field type c or CHAR with the length of the specified characters. A text field literal can be linked to a text symbol.

    See also:

    text literal

    -> Character literal

    text string literal

    A character literal of the text string type string.

    See also:

    time literal

    A literal of the data type TIMN or TIMS.

    See also:

    time stamp literal

    A literal of the data type UTCLONG.

    See also:

    tuning object

    A repository object that defines technical settings for certain repository objects. A tuning object can be defined and transported separately from the repository object for which it is defined. The following types of tuning objects are currently available:

    typed literal

    A literal whose data type is specified explicitly.

    See also untyped literal.

    unit key literal

    A literal of the data type UNIT that contains a unit key.

    See also:

    user condition

    Part of an access condition in a CDS role that compares an element of a CDS entity with the current user name.