P_WorkCenterTargetCosts is a Composite CDS View in SAP S/4HANA. It reads from 1 data source (P_COMFGOrderTargetCube) and exposes 16 fields with key fields OrderID, Ledger, OrderOperation, WorkCenterInternalID, GLAccount.
@AbapCatalog.sqlViewName: 'PFIMFGORDTGTBYWC'
@VDM.viewType: #COMPOSITE@AccessControl.authorizationCheck: #NOT_REQUIRED@ClientHandling.algorithm: #SESSION_VARIABLE@AbapCatalog.buffering.status: #NOT_ALLOWED@Metadata.ignorePropagatedAnnotations: true@VDM.private:true@ObjectModel.usageType.sizeCategory: #XL@ObjectModel.usageType.serviceQuality: #C@ObjectModel.usageType.dataClass: #TRANSACTIONALdefineview P_WorkCenterTargetCosts
withparameters
P_FromFiscalYearPeriod : fis_jahrper,
P_ToFiscalYearPeriod : fis_jahrper,
P_PlanningCategory : fcom_category,
P_CurrencyRole : fac_crcyrole
asselectfrom P_COMFGOrderTargetCube (
P_FromFiscalYearPeriod : $parameters.P_FromFiscalYearPeriod,
P_ToFiscalYearPeriod : $parameters.P_ToFiscalYearPeriod,
P_PlanningCategory : $parameters.P_PlanningCategory
) as _TartgetLineItem
leftouter to one join I_LedgerCompanyCodeCrcyRoles as _CrcyRoles on _CrcyRoles.Ledger = _TartgetLineItem.Ledger
and _CrcyRoles.CompanyCode = _TartgetLineItem.CompanyCode
{
key OrderID,
key _TartgetLineItem.Ledger,
key OrderOperation,
key WorkCenterInternalID,
key GLAccount,
key Material,
key PartnerCostCenter,
key PartnerCostCtrActivityType,
key GlobalCurrency,
key CompanyCodeCurrency,
key CostSourceUnit as UnitOfMeasure,
key $parameters.P_PlanningCategory as PlanningCategory,
keycast(case $parameters.P_CurrencyRole
when _CrcyRoles.CompanyCodeCurrencyRole then CompanyCodeCurrency
when _CrcyRoles.GlobalCurrencyRole then GlobalCurrency
when _CrcyRoles.FreeDefinedCurrency1Role then FreeDefinedCurrency1
when _CrcyRoles.FreeDefinedCurrency2Role then FreeDefinedCurrency2
when _CrcyRoles.FreeDefinedCurrency3Role then FreeDefinedCurrency3
when _CrcyRoles.FreeDefinedCurrency4Role then FreeDefinedCurrency4
when _CrcyRoles.FreeDefinedCurrency5Role then FreeDefinedCurrency5
when _CrcyRoles.FreeDefinedCurrency6Role then FreeDefinedCurrency6
when _CrcyRoles.FreeDefinedCurrency7Role then FreeDefinedCurrency7
when _CrcyRoles.FreeDefinedCurrency8Role then FreeDefinedCurrency8
endas displaycurrency) as DisplayCurrency,
_TartgetLineItem.CompanyCode,
_TartgetLineItem.Plant,
_TartgetLineItem.ControllingArea,
//target costs
sum( casewhen ( ControllingDebitCreditCode = 'H' or ControllingDebitCreditCode = 'S' )
then AmountInGlobalCurrency
else 0
end ) as DebitTargetCostInGlobalCrcy,
sum( casewhen ( ControllingDebitCreditCode = 'H' or ControllingDebitCreditCode = 'S' )
then AmountInCompanyCodeCurrency
else 0
end ) as DebitTargetCostInCoCodeCrcy,
sum( casewhen ( ControllingDebitCreditCode = 'H' or ControllingDebitCreditCode = 'S' )
then (case $parameters.P_CurrencyRole
when _CrcyRoles.CompanyCodeCurrencyRole then AmountInCompanyCodeCurrency
when _CrcyRoles.GlobalCurrencyRole then AmountInGlobalCurrency
when _CrcyRoles.FreeDefinedCurrency1Role then AmountInFreeDefinedCurrency1
when _CrcyRoles.FreeDefinedCurrency2Role then AmountInFreeDefinedCurrency2
when _CrcyRoles.FreeDefinedCurrency3Role then AmountInFreeDefinedCurrency3
when _CrcyRoles.FreeDefinedCurrency4Role then AmountInFreeDefinedCurrency4
when _CrcyRoles.FreeDefinedCurrency5Role then AmountInFreeDefinedCurrency5
when _CrcyRoles.FreeDefinedCurrency6Role then AmountInFreeDefinedCurrency6
when _CrcyRoles.FreeDefinedCurrency7Role then AmountInFreeDefinedCurrency7
when _CrcyRoles.FreeDefinedCurrency8Role then AmountInFreeDefinedCurrency8
else 0
end)
else 0
end ) as DebitTargetCostInDspCrcy,
sum(TotalQuantity) as TargetQuantity
}
where
AccountAssignmentType = 'OR' // debit target costs on header only
and(
ControllingDebitCreditCode = 'H'
or ControllingDebitCreditCode = 'S'
)
groupby
OrderID,
_TartgetLineItem.Ledger,
OrderOperation,
WorkCenterInternalID,
GLAccount,
Material,
PartnerCostCenter,
PartnerCostCtrActivityType,
GlobalCurrency,
CompanyCodeCurrency,
CostSourceUnit,
CompanyCodeCurrencyRole,
GlobalCurrencyRole,
FreeDefinedCurrency1Role,
FreeDefinedCurrency2Role,
FreeDefinedCurrency3Role,
FreeDefinedCurrency4Role,
FreeDefinedCurrency5Role,
FreeDefinedCurrency6Role,
FreeDefinedCurrency7Role,
FreeDefinedCurrency8Role,
FreeDefinedCurrency1,
FreeDefinedCurrency2,
FreeDefinedCurrency3,
FreeDefinedCurrency4,
FreeDefinedCurrency5,
FreeDefinedCurrency6,
FreeDefinedCurrency7,
FreeDefinedCurrency8,
_TartgetLineItem.CompanyCode,
_TartgetLineItem.Plant,
_TartgetLineItem.ControllingArea
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_LEDGERCOMPANYCODECRCYROLES",
"P_COMFGORDERTARGETCUBE"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/