C_BPDataController

DDL: C_BPDATACONTROLLER SQL: CBPDATACTRLR Type: view CONSUMPTION

Consumption view for BP Data Controller

C_BPDataController is a Consumption CDS View that provides data about "Consumption view for BP Data Controller" in SAP S/4HANA. It reads from 1 data source (I_BPDataControllerTP) and exposes 16 fields with key fields BusinessPartner, DataControllerName, BPDataPurposeText. It has 4 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_BPDataControllerTP BPDataController from

Associations (4)

CardinalityTargetAliasCondition
[1..1] C_BusinessPartner _BusinessPartner $projection.BusinessPartner = _BusinessPartner.BusinessPartner
[1..1] C_BusinessPartnerCustomer _BusinessPartnerCustomer $projection.BusinessPartner = _BusinessPartnerCustomer.BusinessPartner
[1..1] C_BusinessPartnerSupplier _BusinessPartnerSupplier $projection.BusinessPartner = _BusinessPartnerSupplier.BusinessPartner
[0..1] I_BPDataControllerVH _DataController $projection.DataControllerNameForEdit = _DataController.DataCtrlName

Annotations (15)

NameValueLevelField
AbapCatalog.sqlViewName CBPDATACTRLR view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.allowExtensions true view
EndUserText.label Consumption view for BP Data Controller view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MASTER view
Search.searchable true view
UI.headerInfo.typeName Data Controller view
UI.headerInfo.typeNamePlural Data Controllers view
VDM.viewType #CONSUMPTION view

Fields (16)

KeyFieldSource TableSource FieldDescription
KEY BusinessPartner I_BPDataControllerTP BusinessPartner
KEY DataControllerName I_BPDataControllerTP DataControllerName
KEY BPDataPurposeText I_BPDataControllerTP BPDataPurposeText
BusinessPartnerForEdit I_BPDataControllerTP BusinessPartnerForEdit
DataControllerNameForEdit I_BPDataControllerTP DataControllerNameForEdit
AuthorizationGroup I_BPDataControllerTP AuthorizationGroup
IsDerivationSet IsDerivationSet
DataControlAssignmentStatus DataControlAssignmentStatus
PurposeDerived PurposeDerived
PurposeType PurposeType
BusinessPurposeFlag BusinessPurposeFlag
DataControllerDescription _DataController DataCtrlDescription
_BusinessPartner _BusinessPartner
_BusinessPartnerCustomer _BusinessPartnerCustomer
_BusinessPartnerSupplier _BusinessPartnerSupplier
_DataController _DataController
@AbapCatalog.sqlViewName: 'CBPDATACTRLR'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions: true
@EndUserText.label: 'Consumption view for BP Data Controller'
@ObjectModel: {
    semanticKey: ['BusinessPartnerForEdit','DataControllernameForEdit','BPDataPurposeText'],
    createEnabled,
    updateEnabled,
    deleteEnabled: #( EXTERNAL_CALCULATION )
}
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MASTER

@Search.searchable: true

@UI.headerInfo:{
  typeName: 'Data Controller',
  typeNamePlural: 'Data Controllers'
}
@VDM.viewType: #CONSUMPTION

define view C_BPDataController
  as select from I_BPDataControllerTP as BPDataController
  association [1..1] to C_BusinessPartner         as _BusinessPartner         on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
  association [1..1] to C_BusinessPartnerCustomer as _BusinessPartnerCustomer on $projection.BusinessPartner = _BusinessPartnerCustomer.BusinessPartner
  association [1..1] to C_BusinessPartnerSupplier as _BusinessPartnerSupplier on $projection.BusinessPartner = _BusinessPartnerSupplier.BusinessPartner
  association [0..1] to I_BPDataControllerVH      as _DataController          on $projection.DataControllerNameForEdit = _DataController.DataCtrlName
{
  key  BPDataController.BusinessPartner,
  key  BPDataController.DataControllerName,
       @UI.hidden: true
  key  BPDataController.BPDataPurposeText,
       BPDataController.BusinessPartnerForEdit,
              @ObjectModel: {
                 foreignKey.association: '_DataController',
                  text.element: ['DataControllerDescription']
                }

       @ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       BPDataController.DataControllerNameForEdit,
       BPDataController.AuthorizationGroup,
       @ObjectModel.readOnly: 'true'
       @Semantics.booleanIndicator: true
       IsDerivationSet,
       @Semantics.booleanIndicator: true
       @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
       DataControlAssignmentStatus,
       @UI.hidden: true
       PurposeDerived,
       @UI.hidden: true
       PurposeType,
       @UI.hidden: true
       BusinessPurposeFlag,
       @ObjectModel.readOnly: 'true'
       _DataController.DataCtrlDescription as DataControllerDescription,
        @ObjectModel.association.type:  [ #TO_COMPOSITION_ROOT , #TO_COMPOSITION_PARENT ]
       _BusinessPartner,
       @ObjectModel.association.type:  [ #TO_COMPOSITION_ROOT , #TO_COMPOSITION_PARENT ]
       _BusinessPartnerCustomer,
       @ObjectModel.association.type:  [ #TO_COMPOSITION_ROOT , #TO_COMPOSITION_PARENT ]
       _BusinessPartnerSupplier,
       _DataController

}