Ars_V_Ddls_Extensions

DDL: ARS_V_DDLS_EXTENSIONS Type: view_entity Package: S_ARS_API_FACADE_DDLS

API Release: CDS Extensions (DDLS)

Ars_V_Ddls_Extensions is a CDS View that provides data about "API Release: CDS Extensions (DDLS)" in SAP S/4HANA. It reads from 4 data sources (ddldependency, DDL_OBJECT_NAMES, dd02bnd, DDL_OBJECT_NAMES) and exposes 2 fields with key fields object_type, object_name. Part of development package S_ARS_API_FACADE_DDLS.

Data Sources (4)

SourceAliasJoin Type
ddldependency entity left_outer
DDL_OBJECT_NAMES ext inner
dd02bnd object_info inner
DDL_OBJECT_NAMES parent from

Annotations (6)

NameValueLevelField
AccessControl.authorizationCheck #NOT_ALLOWED view
EndUserText.label API Release: CDS Extensions (DDLS) view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.dataClass #MIXED view

Fields (2)

KeyFieldSource TableSource FieldDescription
KEY object_type
KEY object_name
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #NOT_ALLOWED
@EndUserText.label: 'API Release: CDS Extensions (DDLS)'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
    serviceQuality: #X,
    sizeCategory: #S,
    dataClass: #MIXED
}
define view entity Ars_V_Ddls_Extensions
  as select from    DDL_OBJECT_NAMES as parent
    inner join      DDL_OBJECT_NAMES as ext         on  parent.CDS_DDL = ext.CDS_PARENT_VIEW
                                                    and parent.STATE   = 'A'
                                                    and ext.STATE      = 'A'
    inner join      dd02bnd          as object_info on  parent.CDS_ENTITY    = object_info.strucobjn
                                                    and object_info.nodename = '.NODE1'
                                                    and object_info.as4local = 'A'
    left outer join ddldependency    as entity      on  ext.CDS_DDL       = entity.ddlname
                                                    and ext.STATE         = entity.state
                                                    and entity.objecttype = 'STOB'

{
  key cast('DDLS'           as trobjtype preserving type)                   as object_type,
  key cast(ext.CDS_DDL      as sobj_name preserving type)                   as object_name,
      cast('CDS_STOB' as ars_sub_object_type)                               as sub_object_type,
      cast(coalesce(entity.objectname, ext.CDS_DDL) as ars_sub_object_name) as sub_object_name,
      cast('DDLS'           as trobjtype preserving type)                   as core_object_type,
      cast(parent.CDS_DDL   as sobj_name preserving type)                   as core_object_name,
      cast(
        case object_info.provider_contract
            when 'TQ' then ' '  //Transactional queries cannot be C1 released

            else 'X'
        end
                            as abap_boolean preserving type)                as is_c1_release_allowed
}
where
     ext.CDS_OBJECT_TYPE = 'X'  //V2 extends

  or ext.CDS_OBJECT_TYPE = 'E'; //V1 extends