SAP RAP FEATURE TABLE



Get Example source ABAP code based on a different SAP table
  



ABAP_RAP - Feature Tables
The following sections shows all available language elements of the RAP BDL and their release dates. For further information on the release dates, see TITLE .
ITOC

BDL

CDS Behavior Definitions

CDS Behavior Definition Header
The following tables list the keywords that can be used in BDEFs of type managed, unmanaged, and projection. If the release dates differ per implementation type, the release dates are given per implementation type. Language ElementMeaningABAP Release
managed
TOKEN MANAGED Defines a managed RAP BO. 7.77, 7.54
unmanaged
TOKEN UNMANAGED Defines an unmanaged RAP BO. 7.73, 7.53
projection
TOKEN PROJECTION Defines a projection RAP BO. 7.77, 7.54
implementation in class $[unique$]
TOKEN IMPLEMENTATION IN CLASS UNIQUE Class for manual method implementation. 7.77, 7.54
strict
TOKEN STRICT Enables BDEF strict mode. 7.84, 7.56
strict(2)
TOKEN STRICT STRICT 2 Enables BDEF strict mode, version 2 . 7.89, 7.57
extensible
TOKEN EXTENSIBLE RAP extensibility enablement for managed and unmanaged RAP BOs and for projection BDEFs. 7.89, 7.57
with validations on save lbr with determinations on save lbr with determinations on modify lbr with additional save lbr (extensible)
TOKEN WITH VALIDATIONS ON SAVE WITH DETERMINATION ON SAVE
TOKEN WITH DETERMINATIONS ON MODIFY
TOKEN WITH ADDITIONAL SAVE RAP extensibility enablement. lbr ABAP_CAUTION Currently only available for managed RAP BOs. 7.89, 7.57
with draft
TOKEN WITH DRAFT Enables RAP draft handling. 7.81, 7.55
use draft
TOKEN USE DRAFT Reuse of RAP draft handling in a CDS projection BDEF.7.77, 7.54
with privileged mode
TOKEN WITH PRIVILEGED MODE Enables BDEF privileged mode. 7.83, 7.56. Obsolete as of 7.89, 7.57.
with privileged mode disabling
TOKEN WITH PRIVILEGED MODE DISABLING Enables BDEF privileged mode for managed and unmanaged RAP BOs. 7.89, 7.56
with privileged mode disabling base context $[and$]
TOKEN WITH PRIVILEGED MODE DISABLING BASE CONTEXT AND Enables BDEF privileged mode in projection BDEFs.7.86, 7.57
foreign entity
TOKEN FOREIGN ENTITY Defines an entity which is not part of the BO structure as component for the response structures, thus enabling message mapping for other BOs.Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54 lbr Projection BDEF: 7.77, 7.54

Entity Behavior Definition Language ElementMeaningABAP Release
define behavior for...alias
TOKEN DEFINE BEHAVIOR FOR ALIAS Defines an entity behavior definition .Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54 lbr Projection BDEF: 7.77, 7.54

Authorization Context Definition Language ElementMeaningABAP Release
define authorization context ... lbr $[for disable ${modify$|read$|modify,read$}$]
TOKEN DEFINE AUTHORIZATION CONTEXT FOR DISABLE MODIFY READ Defines an authorization context that lists authorization objects that can be skipped when the respective authorization context is activated.7.85, 7.56
define own authorization context
TOKEN DEFINE OWN AUTHORIZATION CONTEXT Defines an own authorization context that documents authorization objects used in the implementation of the RAP BO in question.7.86, 7.57
define own authorization context by privileged mode $[and$]{...}
TOKEN BY PRIVILEGED MODE AND Defines an own authorization context 7.89, 7.56

Entity Behavior Characteristics Language ElementMeaningABAP Release
persistent table
TOKEN PERSISTENT TABLE Defines a persistent database table in a managed RAP BO. 7.77, 7.54
draft table
TOKEN DRAFT TABLE Defines the draft database table used to store draft data.7.81, 7.55
query
TOKEN QUERY Defines a draft query view for a draft database table.7.89, 7.57
with additional save
TOKEN WITH ADDITIONAL SAVE User-defined saving strategy for managed RAP BOs. 7.78, 7.55
with unmanaged save
TOKEN WITH UNMANAGED SAVE User-defined saving strategy for managed RAP BOs. 7.78, 7.55
and cleanup
TOKEN AND CLEANUP User-defined saving strategy for managed RAP BOs. 7.83, 7.56
with full data
TOKEN WITH FULL DATA User-defined saving strategy for managed RAP BOs. 7.88, 7.57
etag master, etag dependent, total etag
TOKEN ETAG MASTER ETAG DEPENDENT TOTAL ETAG Defines an ETag field for optimistic concurrency control. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54 lbr Projection BDEF: 7.77, 7.54
use etag
TOKEN USE ETAG Reuse of ETag fields for optimistic concurrency control in a CDS projection BDEF.7.77, 7.54
lock master
TOKEN LOCK MASTER Defines pessimistic concurrency control in managed or unmanaged RAP BOs.Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
unmanaged (lock master)
TOKEN UNMANAGED Implementation exit for pessimistic concurrency control in managed RAP BOs. 7.80, 7.55
lock dependent
TOKEN LOCK DEPENDENT Defines pessimistic concurrency control in managed or unmanaged RAP BOs.Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
lock:none
TOKEN LOCK NONE RAP BO operation addition that prevents the locking mechanism for a certain RAP BO entity.7.82, 7.56
authorization master( global )
TOKEN AUTHORIZATION MASTER GLOBAL Defines global RAP authorization control for managed and unmanaged RAP BOs.7.82, 7.56
authorization master ( instance )
TOKEN AUTHORIZATION MASTER INSTANCE Defines instance RAP authorization control for managed and unmanaged RAP BOs.7.77, 7.54
authorization dependent
TOKEN AUTHORIZATION DEPENDENT RAP authorization control for managed and unmanaged RAP BOs.7.77, 7.54
authorization ( global ) lbr $| ( instance ) lbr $| ( global, instance )
TOKEN AUTHORIZATION GLOBAL INSTANCE Defines RAP authorization control for projection BDEFs.7.84, 7.56
authorization:update
TOKEN AUTHORIZATION UPDATE RAP BO operation addition to delegate RAP authorization control. 7.85, 7.56
authorization:none
TOKEN AUTHORIZATION NONE RAP BO operation addition to exclude a RAP BO operation from RAP authorization control. 7.77, 7.54
early numbering
TOKEN EARLY NUMBERING Defines unmanaged early numbering for all primary key fields of a business object entity. 7.83, 7.56
late numbering
TOKEN LATE NUMBERING Enables gapless assignment for unique keys when creating new entity instances in managed and unmanaged RAP BOs. Unmanaged RAP BO without draft: 7.73, 7.53 lbr Unmanaged RAP BO with draft and Managed RAP BO: 7.86, 7.57

Entity Behavior Body Language ElementMeaningABAP Release
field(readonly)
TOKEN FIELD READONLY Defines a RAP field characteristic. Unmanaged RAP BO: 7.76, 7.54 lbr Managed RAP BO: 7.77, 7.54
field(mandatory)
TOKEN FIELD MANDATORY Defines a RAP field characteristic. Unmanaged RAP BO: 7.76, 7.54 lbr Managed RAP BO: 7.77, 7.54
field (features:instance)
TOKEN FIELD FEATURES INSTANCE Defines a RAP field characteristic. 7.77, 7.54
field (mandatory:create)
TOKEN FIELD MANDATORY CREATE Defines a RAP field characteristic. 7.81, 7.55
field (readonly:update)
TOKEN FIELD READONLY UPDATE Defines a RAP field characteristic. 7.81, 7.55
field (numbering:managed)
TOKEN FIELD NUMBERING MANAGED Defines managed internal numbering for a field in a managed RAP BO. 7.79, 7.55
field (suppress)
TOKEN FIELD SUPPRESS Defines a RAP field characteristic. Managed RAP BO: 7.88, 7.57 lbr Unmanaged RAP BO: 7.87, 7.57 lbr Projection BDEF: 7.84, 7.56
field (notrigger:warn)
TOKEN FIELD NOTRIGGER WARN Defines a RAP field characteristic. 7.90, 7.58
field (modify)
TOKEN FIELD MODIFY Augmentation of a CDS virtual element in a CDS projection BDEF. 7.82, 7.56
group
TOKEN GROUP Splits the implementation-relevant parts of a business object's logic into multiple groups to allow simultaneous work.7.78, 7.55
create, update, delete
TOKEN CREATE UPDATE DELETE Enables CRUD operations for a managed or unmanaged RAP business object. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
use
TOKEN USE Reuse of RAP BO operations in a CDS projection BDEF. 7.81, 7.55
association ... abbreviation ... $[without response$]
TOKEN ASSOCIATION ABBREVIATION WITHOUT RESPONSE Enables read-by-association and create-by-association operations for associations. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
action ... $[external$]
TOKEN ACTION EXTERNAL Defines a RAP action. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
static (action)
TOKEN STATIC Defines a static RAP action.Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
repeatable (action or function)
TOKEN REPEATABLE Defines a RAP repeatable operation. 7.89, 7.57
factory (action)
TOKEN FACTORY Defines a RAP factory action. Unmanaged RAP BO: 7.76, 7.54 lbr Managed RAP BO: 7.86, 7.57
default
TOKEN DEFAULT Defines a default static factory action. 7.90, 7.58
save(finalize lbr $| adjustnumbers lbr $| finalize, adjustnumbers) lbr (action)
TOKEN SAVE FINALIZE ADJUSTNUMBERS Defines a RAP save action. 7.89, 7.57
function ... $[external$]
TOKEN FUNCTION EXTERNAL Defines a RAP function. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
determine action
TOKEN DETERMINE ACTION Defines a determine action that allows a RAP BO consumer to execute determinations and validations on request. 7.81, 7.55
always (determine action)
TOKEN ALWAYS Ignores the trigger condition of a determine action. 7.82, 7.56
draft action Edit lbr$| draft action Activate lbr$| draft action Discard lbr$| draft action Resume $[with additional implementation$] lbr$| draft determine action Prepare
TOKEN DRAFT ACTION EDIT ACTIVATE DISCARD
TOKEN DRAFT ACTION RESUME WITH ADDITIONAL IMPLEMENTATION
TOKEN DRAFT DETERMINE ACTION PREPARE Defines a draft action in a draft-enabled scenario. 7.81, 7.55
parameter ... $[$self$]
TOKEN PARAMETER $SELF Defines an input parameter for an action or function.Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
deep $[table$] (parameter)
TOKEN DEEP TABLE Defines a deep input parameter or a deep table input parameter for an action or function.7.83, 7.56
result[cardinality] ${ $self $| entity $}
TOKEN RESULT $SELF ENTITY Defines an output parameter for an action or function. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77, 7.54
selective (result)
TOKEN SELECTIVE Syntax addition for an output parameter for an action or function. 7.79, 7.55
selective (deep result)
TOKEN SELECTIVE Syntax addition for a deep output parameter for an action or function. 7.89, 7.57
mapping for ... $[control ... $] $[corresponding$] $[except$]
TOKEN MAPPING FOR CONTROL CORRESPONDING EXCEPT Maps field names from database tables to field names from the current data model. 7.78, 7.55
validation ... on save { ... }
TOKEN VALIDATION ON SAVE Defines a validation which is called during the save sequence. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77,7.54
determination ... on save { ... } $| on modify { ... }
TOKEN DETERMINATION ON SAVE ON MODIFY Defines a determination which is called during the save sequence or immediately after data has been changed. Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77,7.54
features: global
TOKEN FEATURES GLOBAL RAP BO operation addition that defines global feature control for a RAP BO operation. 7.82, 7.56
features: instance
TOKEN FEATURES INSTANCE RAP BO operation addition that defines instance feature control for a RAP BO operation. 7.77, 7.54
internal
TOKEN INTERNAL Defines a RAP BO operation as internal.Unmanaged RAP BO: 7.73, 7.53 lbr Managed RAP BO: 7.77,7.54
precheck
TOKEN PRECHECK Prevents illegal changes from reaching the application buffer by prechecking modify operations. 7.81, 7.55
augment
TOKEN AUGMENT Augments modify requests on the projection layer in a CDS projection BDEF. 7.82, 7.56
event ... $[$[deep$] parameter$]
TOKEN EVENT Defines a RAP business event in a managed or unmanaged RAP BO. 7.89, 7.57

Interface Behavior Definitions Language ElementMeaningABAP Release
interface
TOKEN INTERFACE Defines a RAP BO interface. 7.88, 7.57
extensible
TOKEN EXTENSIBLE Declares a RAP BO interface as extensible. 7.89, 7.57
define behavior for ... alias ... external.
TOKEN DEFINE BEHAVIOR FOR Entity behavior definition of an interface BDEF. 7.88, 7.57
use draft.
TOKEN USE DRAFT Reuses the draft-handling from the base BO. 7.88, 7.57
use etag.
TOKEN USE ETAG Reuses the ETag from the base BO. 7.88, 7.57
with privileged mode.
TOKEN WITH PRIVILEGED MODE BDEF privileged mode. 7.88, 7.57
foreign entity.
TOKEN FOREIGN ENTITY Defines a RAP foreign entity for message mapping. 7.88, 7.57
field(readonly)
TOKEN FIELD READONLY RAP field characteristic. 7.90, 7.58
field(mandatory:create)
TOKEN FIELD MANDATORY CREATE RAP field characteristic. 7.90, 7.58
field(readonly:update)
TOKEN FIELD READONLY UPDATE RAP field characteristic. 7.90, 7.58
field(suppress)
TOKEN FIELD SUPPRESS RAP field characteristic. 7.90, 7.58

Abstract Behavior Definitions Language ElementMeaningABAP Release
abstract
TOKEN ABSTRACT Defines an abstract BDEF. 7.83, 7.56
with hierarchy
TOKEN WITH HIERARCHY Causes the construction of a new kind of BDEF derived type. Only available in abstract BDEFs.7.83, 7.56
with control
TOKEN WITH CONTROL Optional addition of the define behavior statement that is only available in abstract BDEFs. Adds the %control structure to the corresponding derived type structure.7.85, 7.56
scalar entity
TOKEN SCALAR ENTITY Alternative to an entity behavior definition that is only available in abstract BDEFs. Integrates a node of the CDS composition tree into the hierarchical derived type of the abstract BDEF as a scalar type. 7.83, 7.56
association ... $[with hierarchy$]
TOKEN ASSOCIATION WITH HIERARCHY In an abstract BDEF, an association can be defined with the optional addition with hierarchy. This addition is available for to-parent associations and cross-BO associations to include them multiple times in the type structure.7.83,7.56
deep mapping for ... $[corresponding$] $[sub$]
TOKEN DEEP MAPPING FOR CORRESPONDING SUB Defines a deep mapping in an abstract BDEF.7.83,7.56
mandatory:execute
TOKEN MANDATORY EXECUTE Field attribute that declares a field of an abstract BDEF as mandatory.7.88, 7.57

BDEF Extensions

Keywords and Additions
This list displays special language elements for BDEF extensions. You can also use statements from CDS behavior definitions. Language ElementMeaningABAP Release
extension
TOKEN EXTENSION Defines a BDEF extension. 7.89, 7.57
extend behavior for
TOKEN EXTEND BEHAVIOR FOR Defines a RAP entity behavior extension.7.89, 7.57
extend own authorization context.
TOKEN EXTEND OWN AUTHORIZATION CONTEXT Extends an own authorization context. 7.89, 7.57
extend determine action
TOKEN EXTEND DETERMINE ACTION Extends an existing RAP BO determine action.7.89, 7.57
extend draft determine action Prepare
TOKEN EXTEND DRAFT DETERMINE ACTION PREPARE Extends an existing draft determine action Prepare.7.89, 7.57
extend mapping for
TOKEN EXTEND MAPPING FOR Extends an existing RAP type mapping .7.89, 7.57
extension for projection
TOKEN EXTENSION FOR PROJECTION Extends a RAP projection behavior definition.7.89, 7.57
ancestor association
TOKEN ANCESTOR ASSOCIATION Defines a CDS association as ancestor association. The association target must be an extension node.7.89, 7.57