C_CustomerDepartment

DDL: C_CUSTOMERDEPARTMENT SQL: CBPDEPARTMENT Type: view CONSUMPTION

Consumption view for Customer Department

C_CustomerDepartment is a Consumption CDS View that provides data about "Consumption view for Customer Department" in SAP S/4HANA. It reads from 1 data source (I_CustomerDepartmentTP) and exposes 19 fields with key fields Customer, CustomerDepartment, BusinessPartner. It has 6 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_CustomerDepartmentTP BPCustomerDepartment from

Associations (6)

CardinalityTargetAliasCondition
[1..1] C_BusinessPartnerCustomer _BusinessPartnerCustomer $projection.BusinessPartner = _BusinessPartnerCustomer.BusinessPartner
[1..1] C_BusinessPartner _BusinessPartner $projection.BusinessPartner = _BusinessPartner.BusinessPartner
[0..*] I_ContactPersonStdDepartmentT _ContactPersonStdDepartmentT $projection.CustomerDepartmentForEdit = _ContactPersonStdDepartmentT.ContactPersonStdDepartment
[0..*] I_UnitOfMeasureText _UnitOfMeasureText $projection.RetailLocationSellingAreaUnit = _UnitOfMeasureText.UnitOfMeasure
[0..*] I_RetailLayoutText _RetailLayoutText $projection.DepartmentLayout = _RetailLayoutText.RetailLayout
[0..*] I_RetailAreaSchemaText _RetailAreaSchemaText $projection.DepartmentLayoutAreaSchema = _RetailAreaSchemaText.RetailLayoutAreaSchema

Annotations (19)

NameValueLevelField
AbapCatalog.sqlViewName CBPDEPARTMENT view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
EndUserText.label Consumption view for Customer Department view
Metadata.allowExtensions true view
ObjectModel.type #CONSUMPTION view
ObjectModel.writeEnabled true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view
Search.searchable true view
UI.headerInfo.typeName Department view
UI.headerInfo.typeNamePlural Departments view
UI.headerInfo.title.label Department view
UI.headerInfo.title.value CustomerDepartment view
VDM.viewType #CONSUMPTION view

Fields (19)

KeyFieldSource TableSource FieldDescription
KEY Customer I_CustomerDepartmentTP Customer
KEY CustomerDepartment I_CustomerDepartmentTP CustomerDepartment
KEY BusinessPartner I_CustomerDepartmentTP BusinessPartner
CustomerForEdit I_CustomerDepartmentTP CustomerForEdit
CustomerDepartmentForEdit I_CustomerDepartmentTP CustomerDepartmentForEdit
BusinessPartnerForEdit I_CustomerDepartmentTP BusinessPartnerForEdit
BusinessPartnerUUID I_CustomerDepartmentTP BusinessPartnerUUID
ReceivingPoint I_CustomerDepartmentTP ReceivingPoint
RetailLocationSellingAreaSize I_CustomerDepartmentTP RetailLocationSellingAreaSize
RetailLocationSellingAreaUnit I_CustomerDepartmentTP RetailLocationSellingAreaUnit
DepartmentLayout I_CustomerDepartmentTP DepartmentLayout
DepartmentLayoutAreaSchema I_CustomerDepartmentTP DepartmentLayoutAreaSchema
_Customer _Customer
_BusinessPartnerCustomer _BusinessPartnerCustomer
_BusinessPartner _BusinessPartner
_ContactPersonStdDepartmentT _ContactPersonStdDepartmentT
_UnitOfMeasureText _UnitOfMeasureText
_RetailLayoutText _RetailLayoutText
_RetailAreaSchemaText _RetailAreaSchemaText
@AbapCatalog.sqlViewName: 'CBPDEPARTMENT'
@AbapCatalog.compiler.compareFilter: true

@AbapCatalog.preserveKey:true

@ClientHandling.algorithm: #SESSION_VARIABLE

@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED

@EndUserText.label: 'Consumption view for Customer Department'

@Metadata.allowExtensions: true

@ObjectModel.type: #CONSUMPTION
@ObjectModel.writeEnabled: true
@ObjectModel: {
    semanticKey: ['BusinessPartner', 'Customer', 'CustomerDepartmentForEdit'],
    createEnabled,
    updateEnabled,
    deleteEnabled
}
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MASTER

@Search.searchable: true

@UI.headerInfo:{
  typeName: 'Department',
  typeNamePlural: 'Departments',
  title:  { label: 'Department', value: 'CustomerDepartment'}
}

@VDM.viewType: #CONSUMPTION

define view C_CustomerDepartment 
    as select from  I_CustomerDepartmentTP                      as BPCustomerDepartment    
    
   association [1..1] to C_BusinessPartnerCustomer              as _BusinessPartnerCustomer                  on  $projection.BusinessPartner = _BusinessPartnerCustomer.BusinessPartner

   association [1..1] to C_BusinessPartner                      as _BusinessPartner                          on  $projection.BusinessPartner = _BusinessPartner.BusinessPartner
   
   association [0..*] to I_ContactPersonStdDepartmentT          as _ContactPersonStdDepartmentT              on  $projection.CustomerDepartmentForEdit = _ContactPersonStdDepartmentT.ContactPersonStdDepartment
   
   association [0..*] to I_UnitOfMeasureText                    as _UnitOfMeasureText                        on  $projection.RetailLocationSellingAreaUnit = _UnitOfMeasureText.UnitOfMeasure

  association [0..*] to I_RetailLayoutText            as _RetailLayoutText            on $projection.DepartmentLayout = _RetailLayoutText.RetailLayout

  association [0..*] to I_RetailAreaSchemaText        as _RetailAreaSchemaText        on $projection.DepartmentLayoutAreaSchema = _RetailAreaSchemaText.RetailLayoutAreaSchema
{

    key BPCustomerDepartment.Customer,
    key BPCustomerDepartment.CustomerDepartment,
    key BPCustomerDepartment.BusinessPartner,
    
    BPCustomerDepartment.CustomerForEdit,
    
    @ObjectModel.text.association: '_ContactPersonStdDepartmentT'
    BPCustomerDepartment.CustomerDepartmentForEdit,
    BPCustomerDepartment.BusinessPartnerForEdit,
    BPCustomerDepartment.BusinessPartnerUUID,
    
    BPCustomerDepartment.ReceivingPoint,
    
    BPCustomerDepartment.RetailLocationSellingAreaSize,
    @ObjectModel.text.association: '_UnitOfMeasureText'
    BPCustomerDepartment.RetailLocationSellingAreaUnit,
    @ObjectModel.text.association: '_RetailLayoutText'
    BPCustomerDepartment.DepartmentLayout,
    @ObjectModel.text.association: '_RetailAreaSchemaText'
    BPCustomerDepartment.DepartmentLayoutAreaSchema,
     
     @Consumption.hidden: true
     _Customer,
     
     @ObjectModel.association.type:  [ #TO_COMPOSITION_ROOT , #TO_COMPOSITION_PARENT ]
     _BusinessPartnerCustomer,
     @ObjectModel.association.type:  [ #TO_COMPOSITION_ROOT , #TO_COMPOSITION_PARENT ]
     _BusinessPartner,
     
     _ContactPersonStdDepartmentT,
     _UnitOfMeasureText,
      _RetailLayoutText,
      _RetailAreaSchemaText

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTOMERDEPARTMENTTP"
],
"ASSOCIATED":
[
"C_BUSINESSPARTNER",
"C_BUSINESSPARTNERCUSTOMER",
"I_CONTACTPERSONSTDDEPARTMENTT",
"I_CUSTOMER",
"I_RETAILAREASCHEMATEXT",
"I_RETAILLAYOUTTEXT",
"I_UNITOFMEASURETEXT"
],
"BASE":
[
"I_CUSTOMERDEPARTMENTTP"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/