
Datasource showcasing the DDIC object
@AbapCatalog.sqlViewName: 'ZCDSCDSDSINFO'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: false
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'CDS Based Datasources Info'
define view zcds_cds_ds_info as select distinct from cdsviewanno
inner join cdsviewcrossref on cdsname = objectddlsourcename
{
key cdsname as Cdsname,
key sqlviewname as DDICObject,
key annotationname as Annotationname,
annotationvalue as Annotationvalue,
actualposition as Actualposition,
nextannotationname as Nextannotationname
}
@AbapCatalog.sqlViewName: 'ZCDSCDSDSINFO'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: false
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'CDS Based Datasources Info'
define view zcds_cds_ds_info as select distinct from cdsviewanno
inner join cdsviewcrossref on cdsname = objectddlsourcename
{
key cdsname as Cdsname,
key sqlviewname as DDICObject,
key annotationname as Annotationname,
annotationvalue as Annotationvalue,
actualposition as Actualposition,
nextannotationname as Nextannotationname
} where annotationname like '%ANALYTICS%'
@AbapCatalog.sqlViewName: 'ZCDSCDSDSINFO'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: false
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'CDS Based Datasources Info'
define view zcds_cds_ds_info
with parameters v_ddicObj : abap.char( 30 )
as select distinct from cdsviewanno
inner join cdsviewcrossref on cdsname = objectddlsourcename
{
key cdsname as Cdsname,
key sqlviewname as DDICObject,
key annotationname as Annotationname,
annotationvalue as Annotationvalue,
actualposition as Actualposition,
nextannotationname as Nextannotationname
} where sqlviewname = $parameters.v_ddicObj
Executing the parameterized CDS view
CDS Result
@AbapCatalog.sqlViewName: 'ZCDSCDSDSINFO'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: false
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'CDS Based Datasources Info'
define view zcds_cds_ds_info -- CDS Datasource Information with Analytic
as select from cdsviewanno
inner join cdsviewcrossref on cdsname = objectddlsourcename
{
key cdsname as CDSName,
key sqlviewname as DDICObject,
key annotationname as Annotationname,
annotationvalue as Annotationvalue,
actualposition as Actualposition,
nextannotationname as Nextannotationname
} where annotationname = 'ANALYTICS.DATAEXTRACTION.ENABLED' and annotationvalue = 'true'
@AbapCatalog.sqlViewName: 'ZCDSCDSDSDET'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: false
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'CDS Based Datasources Details'
define view zcds_cds_ds_det
as select distinct from cdsviewanno as A
inner join zcds_cds_ds_info --First CDS which identifies only those with analytics annotations
as B on A.cdsname = B.CDSName {
key A.cdsname,
key B.DDICObject,
key A.annotationname,
A.annotationvalue,
A.actualposition,
A.nextannotationname
}
@AbapCatalog.sqlViewName: 'ZCDSCDSDSDET'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: false
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'CDS Based Datasources Details'
@Analytics.dataCategory: #DIMENSION
@Analytics.dataExtraction.enabled: true
@ObjectModel.representativeKey: [ 'cdsname', 'DDICObject', 'annotationname' ]
define view zcds_cds_ds_det
as select distinct from cdsviewanno as A
inner join zcds_cds_ds_info --First CDS which identifies only those with analytics annotations
as B on A.cdsname = B.CDSName {
key A.cdsname as cdsname,
key B.DDICObject as DDICObject,
key A.annotationname as annotationname,
substring(A.annotationvalue, 1, 250) as annotationvalue,
A.actualposition,
A.nextannotationname
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
9 | |
8 | |
6 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 | |
3 |