P_CADocumentLineItem_Split
Line Item Split
P_CADocumentLineItem_Split is a Composite CDS View that provides data about "Line Item Split" in SAP S/4HANA. It reads from 4 data sources (I_CADocumentBPItem, I_CADocumentBPItem, I_FiscalCalYearPeriodForCoCode, I_FiscalCalYearPeriodForCoCode) and exposes 50 fields with key fields CADocumentNumber, CARepetitionItemNumber, CABPItemNumber, CASubItemNumber, CARepetitionItemNumber. Part of development package FKK_ID_PL_REP.
Data Sources (4)
| Source | Alias | Join Type |
|---|---|---|
| I_CADocumentBPItem | DOC | from |
| I_CADocumentBPItem | DOC | union |
| I_FiscalCalYearPeriodForCoCode | PER | inner |
| I_FiscalCalYearPeriodForCoCode | PER | inner |
Parameters (1)
| Name | Type | Default |
|---|---|---|
| P_KeyDate | vdm_v_key_date |
Annotations (8)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| EndUserText.label | Line Item Split | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.usageType.serviceQuality | #X | view | |
| ObjectModel.usageType.sizeCategory | #S | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.private | true | view | |
| VDM.viewType | #COMPOSITE | view |
Fields (50)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CADocumentNumber | I_CADocumentBPItem | CADocumentNumber | |
| KEY | CARepetitionItemNumber | I_CADocumentBPItem | CARepetitionItemNumber | |
| KEY | CABPItemNumber | I_CADocumentBPItem | CABPItemNumber | |
| KEY | CASubItemNumber | I_CADocumentBPItem | CASubItemNumber | |
| BusinessPartner | I_CADocumentBPItem | BusinessPartner | ||
| ContractAccount | I_CADocumentBPItem | ContractAccount | ||
| CompanyCode | I_CADocumentBPItem | CompanyCode | ||
| CAAmountInLocalCurrency | I_CADocumentBPItem | CAAmountInLocalCurrency | ||
| CAAmountInTransactionCurrency | I_CADocumentBPItem | CAAmountInTransactionCurrency | ||
| TransactionCurrency | I_CADocumentBPItem | TransactionCurrency | ||
| CompanyCodeCurrency | I_CADocumentBPItem | CompanyCodeCurrency | ||
| CAReconciliationAccount | I_CADocumentBPItem | CAReconciliationAccount | ||
| CAPostingDate | I_CADocumentBPItem | CAPostingDate | ||
| CAClearingDate | I_CADocumentBPItem | CAClearingDate | ||
| CAReferenceDocument | I_CADocumentBPItem | CAReferenceDocument | ||
| DocumentDate | I_CADocumentBPItem | DocumentDate | ||
| CADocumentType | I_CADocumentBPItem | CADocumentType | ||
| CreatedByUser | ||||
| CASubApplication | I_CADocumentBPItem | CASubApplication | ||
| CAContract | I_CADocumentBPItem | CAContract | ||
| CADocumentOriginCode | I_CADocumentBPItem | CADocumentOriginCode | ||
| BusinessArea | I_CADocumentBPItem | BusinessArea | ||
| Segment | I_CADocumentBPItem | Segment | ||
| _BusinessPartner | I_CADocumentBPItem | _BusinessPartner | ||
| _ContractAccountPartner | I_CADocumentBPItem | _ContractAccountPartner | ||
| KEY | CARepetitionItemNumber | I_CADocumentBPItem | CARepetitionItemNumber | |
| KEY | CABPItemNumber | I_CADocumentBPItem | CABPItemNumber | |
| KEY | CASubItemNumber | I_CADocumentBPItem | CASubItemNumber | |
| BusinessPartner | I_CADocumentBPItem | BusinessPartner | ||
| ContractAccount | I_CADocumentBPItem | ContractAccount | ||
| CompanyCode | I_CADocumentBPItem | CompanyCode | ||
| CAAmountInLocalCurrency | ||||
| CAAmountInTransactionCurrency | ||||
| TransactionCurrency | I_CADocumentBPItem | TransactionCurrency | ||
| CompanyCodeCurrency | I_CADocumentBPItem | CompanyCodeCurrency | ||
| CAReconciliationAccount | I_CADocumentBPItem | CAReconciliationAccount | ||
| CAPostingDate | I_CADocumentBPItem | CAClearingDate | ||
| CAClearingDate | I_CADocumentBPItem | CAClearingDate | ||
| CAReferenceDocument | I_CADocumentBPItem | CAReferenceDocument | ||
| DocumentDate | I_CADocumentBPItem | CAPostingDateOfClearingDoc | ||
| CADocumentType | I_CADocumentBPItem | CADocumentType | ||
| CreatedByUser | ||||
| CASubApplication | I_CADocumentBPItem | CASubApplication | ||
| CAContract | I_CADocumentBPItem | CAContract | ||
| CADocumentOriginCode | I_CADocumentBPItem | CADocumentOriginCode | ||
| BusinessArea | I_CADocumentBPItem | BusinessArea | ||
| Segment | I_CADocumentBPItem | Segment | ||
| _BusinessPartner | I_CADocumentBPItem | _BusinessPartner | ||
| _ContractAccountPartner | I_CADocumentBPItem | _ContractAccountPartner | ||
| _CAProviderContract | I_CADocumentBPItem | _CAProviderContract |
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Line Item Split'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
serviceQuality: #X,
sizeCategory: #S,
dataClass: #MIXED
}
@VDM.private:true
@VDM.viewType: #COMPOSITE
define view entity P_CADocumentLineItem_Split
with parameters
@Consumption.hidden: true
@Environment.systemField: #SYSTEM_DATE
P_KeyDate : vdm_v_key_date
as
select from I_CADocumentBPItem as DOC
inner join I_FiscalCalYearPeriodForCoCode as PER
on PER.CompanyCode = DOC.CompanyCode and PER.FiscalPeriodStartDate <= $parameters.P_KeyDate and PER.FiscalPeriodEndDate >= $parameters.P_KeyDate
{
key DOC.CADocumentNumber,
key DOC.CARepetitionItemNumber,
key DOC.CABPItemNumber,
key DOC.CASubItemNumber,
DOC.BusinessPartner,
DOC.ContractAccount,
DOC.CompanyCode,
@Semantics.amount.currencyCode: 'CompanyCodeCurrency'
DOC.CAAmountInLocalCurrency,
@Semantics.amount.currencyCode: 'TransactionCurrency'
DOC.CAAmountInTransactionCurrency,
DOC.TransactionCurrency,
DOC.CompanyCodeCurrency,
DOC.CAReconciliationAccount,
DOC.CAPostingDate,
DOC.CAClearingDate,
DOC.CAStatisticalItemCode,
DOC.CAReferenceDocument,
DOC.DocumentDate,
DOC.CADocumentType,
@Semantics.amount.currencyCode: 'CompanyCodeCurrency'
( case when DOC.CAAmountInLocalCurrency < 0
then DOC.CAAmountInLocalCurrency else null end * -1 ) as Credit,
@Semantics.amount.currencyCode: 'CompanyCodeCurrency'
case when DOC.CAAmountInLocalCurrency > 0
then DOC.CAAmountInLocalCurrency else null end as Debit,
@Semantics.amount.currencyCode: 'TransactionCurrency'
( case when DOC.CAAmountInTransactionCurrency < 0
then DOC.CAAmountInTransactionCurrency else null end * -1 ) as CreditTr,
@Semantics.amount.currencyCode: 'TransactionCurrency'
case when DOC.CAAmountInTransactionCurrency > 0
then DOC.CAAmountInTransactionCurrency else null end as DebitTr,
DOC._CADocument.CreatedByUser,
DOC.CASubApplication,
DOC.CAContract,
DOC.CADocumentOriginCode,
DOC.BusinessArea,
DOC.Segment,
DOC._BusinessPartner,
DOC._ContractAccountPartner,
DOC._CAProviderContract
}
where DOC.CAPostingDate <= PER.FiscalPeriodEndDate and DOC.CAStatisticalItemCode is initial
union
select from I_CADocumentBPItem as DOC
inner join I_FiscalCalYearPeriodForCoCode as PER
on PER.CompanyCode = DOC.CompanyCode and PER.FiscalPeriodStartDate <= $parameters.P_KeyDate and PER.FiscalPeriodEndDate >= $parameters.P_KeyDate
{
key DOC.CAClearingDocumentNumber as CADocumentNumber,
key DOC.CARepetitionItemNumber,
key DOC.CABPItemNumber,
key DOC.CASubItemNumber,
DOC.BusinessPartner,
DOC.ContractAccount,
DOC.CompanyCode,
( DOC.CAAmountInLocalCurrency * -1 ) as CAAmountInLocalCurrency,
( DOC.CAAmountInTransactionCurrency * -1 ) as CAAmountInTransactionCurrency,
DOC.TransactionCurrency,
DOC.CompanyCodeCurrency,
DOC.CAReconciliationAccount,
DOC.CAClearingDate as CAPostingDate,
DOC.CAClearingDate,
DOC.CAStatisticalItemCode,
DOC.CAReferenceDocument,
DOC.CAPostingDateOfClearingDoc as DocumentDate,
DOC.CADocumentType,
// case when DOC.CAAmountInLocalCurrency > 0
// then DOC.CAAmountInLocalCurrency else null end as Credit,
case when DOC._CADocument.CAReversalDocumentNumber <> '' and DOC.CAAmountInLocalCurrency < 0 then DOC.CAAmountInLocalCurrency * -1
when DOC._CADocument.CAReversalDocumentNumber = '' and DOC.CAAmountInLocalCurrency > 0 then DOC.CAAmountInLocalCurrency else null end as Credit,
// ( case when DOC.CAAmountInLocalCurrency < 0
// then DOC.CAAmountInLocalCurrency else null end * -1 ) as Debit,
case when DOC._CADocument.CAReversalDocumentNumber <> '' and DOC.CAAmountInLocalCurrency > 0 then DOC.CAAmountInLocalCurrency * -1
when DOC._CADocument.CAReversalDocumentNumber = '' and DOC.CAAmountInLocalCurrency < 0 then DOC.CAAmountInLocalCurrency else null end as Debit,
// case when DOC.CAAmountInTransactionCurrency > 0
// then DOC.CAAmountInTransactionCurrency else null end as CreditTr,
case when DOC._CADocument.CAReversalDocumentNumber <> '' and DOC.CAAmountInTransactionCurrency < 0 then DOC.CAAmountInTransactionCurrency * -1
when DOC._CADocument.CAReversalDocumentNumber = '' and DOC.CAAmountInTransactionCurrency > 0 then DOC.CAAmountInTransactionCurrency else null end as CreditTr,
// ( case when DOC.CAAmountInTransactionCurrency < 0
// then DOC.CAAmountInTransactionCurrency else null end * -1 ) as DebitTr,
case when DOC._CADocument.CAReversalDocumentNumber <> '' and DOC.CAAmountInTransactionCurrency > 0 then DOC.CAAmountInTransactionCurrency * -1
when DOC._CADocument.CAReversalDocumentNumber = '' and DOC.CAAmountInTransactionCurrency < 0 then DOC.CAAmountInTransactionCurrency else null end as DebitTr,
DOC._CADocument.CreatedByUser,
DOC.CASubApplication,
DOC.CAContract,
DOC.CADocumentOriginCode,
DOC.BusinessArea,
DOC.Segment,
DOC._BusinessPartner,
DOC._ContractAccountPartner,
DOC._CAProviderContract
}
where DOC.CAPostingDateOfClearingDoc <= PER.FiscalPeriodEndDate and DOC.CAStatisticalItemCode is initial and DOC.CAClearingStatus = '9'
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA