I_PRACostCenterText

DDL: I_PRACOSTCENTERTEXT SQL: IPVCOSTCENTERT Type: view COMPOSITE

PRA Cost Center - Text

I_PRACostCenterText is a Composite CDS View that provides data about "PRA Cost Center - Text" in SAP S/4HANA. It reads from 2 data sources (I_CompanyCode, I_CostCenterText) and exposes 10 fields with key fields CompanyCode, CostCenter, ValidityEndDate, Language. It has 2 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_CompanyCode I_CompanyCode inner
I_CostCenterText I_CostCenterText from

Associations (2)

CardinalityTargetAliasCondition
[0..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode
[0..1] I_ControllingArea _ControllingArea $projection.ControllingArea = _ControllingArea.ControllingArea

Annotations (13)

NameValueLevelField
EndUserText.label PRA Cost Center - Text view
ObjectModel.dataCategory #TEXT view
Analytics.dataExtraction.enabled true view
VDM.viewType #COMPOSITE view
AbapCatalog.sqlViewName IPVCOSTCENTERT view
AccessControl.authorizationCheck #CHECK view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.representativeKey CostCenter view
ObjectModel.modelingPattern #LANGUAGE_DEPENDENT_TEXT view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MASTER view

Fields (10)

KeyFieldSource TableSource FieldDescription
KEY CompanyCode I_CompanyCode CompanyCode
KEY CostCenter CostCenter
KEY ValidityEndDate ValidityEndDate
KEY Language I_CostCenterText Language
ControllingArea I_CostCenterText ControllingArea
CostCenterName CostCenterName
CostCenterDescription CostCenterDescription
ValidityStartDate ValidityStartDate
_CompanyCode _CompanyCode
_ControllingArea _ControllingArea
@EndUserText.label: 'PRA Cost Center - Text'
@ObjectModel.dataCategory: #TEXT
@Analytics.dataExtraction.enabled: true
@VDM.viewType: #COMPOSITE
@AbapCatalog.sqlViewName: 'IPVCOSTCENTERT'
@AccessControl.authorizationCheck: #CHECK
@Metadata.ignorePropagatedAnnotations:true
@ObjectModel.representativeKey: 'CostCenter'

@ObjectModel.supportedCapabilities: [#LANGUAGE_DEPENDENT_TEXT , #SQL_DATA_SOURCE , #CDS_MODELING_DATA_SOURCE , #CDS_MODELING_ASSOCIATION_TARGET]
@ObjectModel.modelingPattern: #LANGUAGE_DEPENDENT_TEXT

@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.sizeCategory: #M
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.dataClass: #MASTER

// PRA Cost Center references do not use controlling area, rather it is derived from company

// therefore we create this view to expose the text based on a key component of company code


define view I_PRACostCenterText
  as select from I_CostCenterText
    inner join   I_CompanyCode on I_CompanyCode.ControllingArea = I_CostCenterText.ControllingArea

  association [0..1] to I_CompanyCode     as _CompanyCode     on $projection.CompanyCode = _CompanyCode.CompanyCode
  association [0..1] to I_ControllingArea as _ControllingArea on $projection.ControllingArea = _ControllingArea.ControllingArea
{
      @ObjectModel.foreignKey.association: '_CompanyCode'
  key I_CompanyCode.CompanyCode        as CompanyCode,
  key CostCenter,
      @Semantics.businessDate.to: true
  key ValidityEndDate,
      @Semantics.language: true
  key I_CostCenterText.Language        as Language,      
      
      @ObjectModel.foreignKey.association: '_ControllingArea'
      I_CostCenterText.ControllingArea as ControllingArea,

      @Semantics.text: true
      CostCenterName,

      @Semantics.text: true
      CostCenterDescription,
      
      @Semantics.businessDate.from: true
      ValidityStartDate,

      _CompanyCode,
      _ControllingArea
};