Rsrts_Cds_Query_List_Sources

DDL: RSRTS_CDS_QUERY_LIST_SOURCES SQL: RSRTS_CDS_QSRS Type: view

Released CDS based Query Sources

Rsrts_Cds_Query_List_Sources is a CDS View that provides data about "Released CDS based Query Sources" in SAP S/4HANA. It reads from 11 data sources and exposes 6 fields with key field compid.

Data Sources (11)

SourceAliasJoin Type
RSRTS_APP_COMPONENT akh inner
ARS_APIS_RELEASED_C1_OR_GROUPS ars_api_released inner
ddldependency cube_stob inner
ddldependency cube_view inner
dd2526v dd2526v inner
ddldependency dep_stob inner
ddldependency dep_view inner
ddheadanno headanno from
ddheadanno headannotext left_outer
tadir tadir inner
ddddlsrc02bt text left_outer

Annotations (5)

NameValueLevelField
AbapCatalog.sqlViewName RSRTS_CDS_QSRS view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Released CDS based Query Sources view

Fields (6)

KeyFieldSource TableSource FieldDescription
KEY compid
infoprovider
ddlname ddldependency ddlname
view_name ddheadanno strucobjn
cube_ddlname ddldependency ddlname
description ddddlsrc02bt ddtext
@AbapCatalog.sqlViewName: 'RSRTS_CDS_QSRS'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Released CDS based Query Sources'
define view Rsrts_Cds_Query_List_Sources

    as select from   ddheadanno                     as headanno

    inner join      ddldependency                  as dep_stob         on  dep_stob.objectname = headanno.strucobjn
                                                                       and dep_stob.state      = 'A'
                                                                       and dep_stob.objecttype = 'STOB'

    inner join      ddldependency                  as dep_view         on  dep_view.ddlname = dep_stob.ddlname
                                                                       and dep_view.state      = 'A'
                                                                       and dep_view.objecttype = 'VIEW'

    // only released objects

    inner join      ARS_APIS_RELEASED_C1_OR_GROUPS as ars_api_released on  ars_api_released.object_type = 'CDS_STOB'
                                                                       and ars_api_released.object_key  = dep_stob.objectname
                                                                       //and ( ars_api_released.state = 'RELEASED' or ars_api_released.state = 'DEPRECATED' ) // DEPRECATED too long!

                                                                       and ars_api_released.state = 'RELEASED'

    inner join       dd2526v                       as dd2526v          on  dd2526v.viewname = dep_view.objectname
                                                                       and dd2526v.as4local = 'A'
                                                                       and dd2526v.tabname  <> 'DDDDLNUMTYPES'
                                                                       and dd2526v.tabname  <> 'DDDDLCHARTYPES'
                                                                       and dd2526v.tabname  <> 'DDDDLCURRTYPES'
                                                                       and dd2526v.tabname  <> 'DDDDLQUANTYPES'
                                                                       //and dd2526v.tabname  <> 'ALLDATATYPE_1'


    inner join      ddldependency                  as cube_view         on  cube_view.objectname = dd2526v.tabname
                                                                        and cube_view.state      = 'A'
                                                                        and cube_view.objecttype = 'VIEW'

    inner join      ddldependency                  as cube_stob         on  cube_stob.ddlname = cube_view.ddlname
                                                                        and cube_stob.state      = 'A'
                                                                        and cube_stob.objecttype = 'STOB'

    left outer join ddheadanno                     as headannotext     on  headannotext.strucobjn = dep_stob.objectname
                                                                       and headannotext.name      = 'ENDUSERTEXT.LABEL'

    left outer join ddddlsrc02bt                   as text             on  text.ddlname    = dep_view.ddlname
                                                                       and text.strucobjn  = dep_stob.objectname
                                                                       and text.as4local   = dep_view.state
                                                                       and text.ddlanguage = $session.system_language

    inner join tadir                               as tadir            on  tadir.obj_name = cube_stob.ddlname // DDLNAME and not Objectname (CDS Name)

                                                                       and tadir.pgmid = 'R3TR'
                                                                       and tadir.object = 'DDLS'

    inner join RSRTS_APP_COMPONENT                 as akh              on  akh. pkg =  tadir.devclass


{
    key
      concat( '2C', dep_view.objectname )                               as compid,
      concat( '2C', dd2526v.tabname )                                   as infoprovider,
      dep_stob.ddlname                                                  as ddlname,
      headanno.strucobjn                                                as view_name,
      dep_view.objectname                                               as sql_view_name,
      cube_view.ddlname                                                 as cube_ddlname,
      cube_stob.objectname                                              as cube_view_name,
      cube_view.objectname                                              as cube_sql_view_name,
      text.ddtext                                                       as description,
      headannotext.value                                                as enduser_text_label,
      case when  akh.app_component <> ''
           then concat( '2O-', akh.app_component )          
           else  akh.app_component
      end                                                               as infoarea
}

      where  headanno.name = 'ANALYTICS.QUERY'
      and    headanno.value = 'true'