A_CntrlPurContrItmDistribution
Item Distribution
A_CntrlPurContrItmDistribution is a Composite CDS View that provides data about "Item Distribution" in SAP S/4HANA. It reads from 1 data source (I_CntrlPurContrDistribution) and exposes 60 fields with key fields CentralPurchaseContract, CentralPurchaseContractItem, DistributionKey. It has 4 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_CntrlPurContrDistribution | I_CntrlPurContrDistribution | from |
Associations (4)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | A_CntrlPurchaseContractItem | _CentralPurchaseContractItem | $projection.CentralPurchaseContract = _CentralPurchaseContractItem.CentralPurchaseContract and $projection.CentralPurchaseContractItem = _CentralPurchaseContractItem.CentralPurchaseContractItem |
| [0..*] | A_CntrlPurContrItemPartner | _CntrlPurContrItemPartner | $projection.CentralPurchaseContract = _CntrlPurContrItemPartner.CentralPurchaseContract and $projection.CentralPurchaseContractItem = _CntrlPurContrItemPartner.CentralPurchaseContractItem and $projection.DistributionKey = _CntrlPurContrItemPartner.DistributionKey |
| [1..1] | A_CentralPurchaseContract | _CentralPurchaseContract | $projection.CentralPurchaseContract = _CentralPurchaseContract.CentralPurchaseContract ----Extension |
| [1..1] | E_CntrlPurContrDistribution | _CntrlPurContrItmDistExtension | _CntrlPurContrItmDistExtension.PurchasingDocument = $projection.CentralPurchaseContract and _CntrlPurContrItmDistExtension.PurchasingDocumentItem = $projection.CentralPurchaseContractItem and _CntrlPurContrItmDistExtension.DistributionKey = $projection.DistributionKey |
Annotations (14)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | ACNTRLPCTRID | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Item Distribution | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.createEnabled | false | view | |
| ObjectModel.updateEnabled | false | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (60)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CentralPurchaseContract | CentralPurchaseContract | ||
| KEY | CentralPurchaseContractItem | CentralPurchaseContractItem | ||
| KEY | DistributionKey | DistributionKey | ||
| ProcmtHubCompanyCode | CompanyCode | |||
| ProcmtHubPlant | Plant | |||
| ProcmtHubPurchasingOrg | PurchasingOrganization | |||
| ProcmtHubPurchasingGroup | PurchasingGroup | |||
| ProcmtHubCompanyCodeGroupingID | ProcmtHubCompanyCodeGroupingID | |||
| PaymentTerms | PaymentTerms | |||
| CashDiscount1Days | CashDiscount1Days | |||
| CashDiscount2Days | CashDiscount2Days | |||
| NetPaymentDays | NetPaymentDays | |||
| CashDiscount1Percent | CashDiscount1Percent | |||
| CashDiscount2Percent | CashDiscount2Percent | |||
| DistributionType | DistributionType | |||
| ExternalReferenceDocument | ExternalReferenceDocument | |||
| ExternalReferenceDocumentItem | ExternalReferenceDocumentItem | |||
| ExternalRefDocCategory | ExternalRefDocCategory | |||
| PurchasingDocumentCategory | PurchasingDocumentCategory | |||
| PurchasingDocumentType | PurchasingDocumentType | |||
| StorageLocation | StorageLocation | |||
| CntrlPurContrDistributionPct | CntrlPurContrDistributionPct | |||
| CntrlPurContrItmDistrQty | TargetQuantity | |||
| OrderQuantityUnit | OrderQuantityUnit | |||
| CntrlPurContrItmDistrAmt | TargetAmount | |||
| ProcurementHubSourceSystem | ProcurementHubSourceSystem | |||
| ProcmtHubProduct | Material | |||
| ProcmtHubProductGroup | MaterialGroup | |||
| ProcmtHubPurchaseContract | ExtContractForPurg | |||
| ProcmtHubPurchaseContractItem | ExtContractItemForPurg | |||
| ItemDistributionStatus | ItemDistributionStatus | |||
| ReferenceHeaderDistributionKey | ReferenceHeaderDistributionKey | |||
| IsDeleted | IsDeleted | |||
| OutlineAgrmtItmIsBlocked | OutlineAgrmtItmIsBlocked | |||
| PurgDocItmBlkRsnCode | PurgDocItmBlkRsnCode | |||
| PurchasingInfoRecordUpdateCode | PurchasingInfoRecordUpdateCode | |||
| ReferenceDistributionNumber | ExtContractItemDistrForPurg | |||
| SourceListIsUpdated | ||||
| SourceListRestriction | SourceListRestriction | |||
| IncotermsClassification | IncotermsClassification | |||
| IncotermsLocation1 | IncotermsLocation1 | |||
| ShippingInstruction | ShippingInstruction | |||
| ProcmtHubDelivAddressTypeCode | ProcmtHubDelivAddressTypeCode | |||
| ReferenceDeliveryAddressID | ReferenceDeliveryAddressID | |||
| ProcmtHubSubcontractor | ProcmtHubSubcontractor | |||
| ProcmtHubSuplrIsSubcontractor | ProcmtHubSuplrIsSubcontractor | |||
| FormOfAddress | FormOfAddress | |||
| ProcmtHubBusinessPartnerName1 | ProcmtHubBusinessPartnerName1 | |||
| ProcmtHubBusinessPartnerName2 | ProcmtHubBusinessPartnerName2 | |||
| ProcmtHubBusinessPartnerName3 | ProcmtHubBusinessPartnerName3 | |||
| ProcmtHubBusinessPartnerName4 | ProcmtHubBusinessPartnerName4 | |||
| ProcmtHubStreetName | ProcmtHubStreetName | |||
| ProcmtHubHouseNumber | ProcmtHubHouseNumber | |||
| ProcmtHubPostalCode | ProcmtHubPostalCode | |||
| ProcmtHubCityName | ProcmtHubCityName | |||
| ProcmtHubCountry | ProcmtHubCountry | |||
| ProcmtHubRegion | ProcmtHubRegion | |||
| _CentralPurchaseContract | _CentralPurchaseContract | |||
| _CentralPurchaseContractItem | _CentralPurchaseContractItem | |||
| _CntrlPurContrItemPartner | _CntrlPurContrItemPartner |
@AbapCatalog.sqlViewName: 'ACNTRLPCTRID'
@VDM.viewType : #COMPOSITE
@VDM.lifecycle.contract.type:#PUBLIC_REMOTE_API
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Item Distribution'
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel : {
createEnabled: false,
updateEnabled: false
}
@AccessControl.personalData.blocking: #REQUIRED
@Metadata.ignorePropagatedAnnotations:true
define view A_CntrlPurContrItmDistribution
as select from I_CntrlPurContrDistribution
association [1..1] to A_CntrlPurchaseContractItem as _CentralPurchaseContractItem on $projection.CentralPurchaseContract = _CentralPurchaseContractItem.CentralPurchaseContract
and $projection.CentralPurchaseContractItem = _CentralPurchaseContractItem.CentralPurchaseContractItem
association [0..*] to A_CntrlPurContrItemPartner as _CntrlPurContrItemPartner on $projection.CentralPurchaseContract = _CntrlPurContrItemPartner.CentralPurchaseContract
and $projection.CentralPurchaseContractItem = _CntrlPurContrItemPartner.CentralPurchaseContractItem
and $projection.DistributionKey = _CntrlPurContrItemPartner.DistributionKey
association [1..1] to A_CentralPurchaseContract as _CentralPurchaseContract on $projection.CentralPurchaseContract = _CentralPurchaseContract.CentralPurchaseContract
----Extension Association
association [1..1] to E_CntrlPurContrDistribution as _CntrlPurContrItmDistExtension on _CntrlPurContrItmDistExtension.PurchasingDocument = $projection.CentralPurchaseContract
and _CntrlPurContrItmDistExtension.PurchasingDocumentItem = $projection.CentralPurchaseContractItem
and _CntrlPurContrItmDistExtension.DistributionKey = $projection.DistributionKey
{
key CentralPurchaseContract,
key CentralPurchaseContractItem,
key DistributionKey,
CompanyCode as ProcmtHubCompanyCode,
Plant as ProcmtHubPlant,
PurchasingOrganization as ProcmtHubPurchasingOrg,
PurchasingGroup as ProcmtHubPurchasingGroup,
ProcmtHubCompanyCodeGroupingID,
// DocumentCurrency,
case
when DocumentCurrency = '' or DocumentCurrency = ' '
then _CentralPurchaseContractItem.DocumentCurrency
else
DocumentCurrency end as CntrlPurContrDistrCurrency,
@ObjectModel.sapObjectNodeTypeReference:'PaymentTerms'
PaymentTerms,
CashDiscount1Days,
CashDiscount2Days,
NetPaymentDays,
CashDiscount1Percent,
CashDiscount2Percent,
DistributionType,
ExternalReferenceDocument,
ExternalReferenceDocumentItem,
ExternalRefDocCategory,
PurchasingDocumentCategory,
@ObjectModel.sapObjectNodeTypeReference: 'PurchasingDocumentType'
PurchasingDocumentType,
@ObjectModel.sapObjectNodeTypeReference: 'StorageLocation'
StorageLocation,
CntrlPurContrDistributionPct,
@Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
TargetQuantity as CntrlPurContrItmDistrQty,
OrderQuantityUnit,
@Semantics.amount.currencyCode: 'CntrlPurContrDistrCurrency'
TargetAmount as CntrlPurContrItmDistrAmt,
// currency_conversion( amount => ContractNetPriceAmount,
// source_currency => _CntrlPurchaseContractItem.DocumentCurrency,
// round => 'X',
// target_currency => Currency,
// exchange_rate_date => _CentralPurchaseContract.CreationDate ,
// error_handling => 'SET_TO_NULL' ) as ContractNetPriceAmount,
ProcurementHubSourceSystem as ProcurementHubSourceSystem,
Material as ProcmtHubProduct,
MaterialGroup as ProcmtHubProductGroup,
ExtContractForPurg as ProcmtHubPurchaseContract,
ExtContractItemForPurg as ProcmtHubPurchaseContractItem,
ItemDistributionStatus,
ReferenceHeaderDistributionKey,
IsDeleted,
OutlineAgrmtItmIsBlocked,
PurgDocItmBlkRsnCode,
PurchasingInfoRecordUpdateCode,
ExtContractItemDistrForPurg as ReferenceDistributionNumber,
cast(SourceListIsUpdated as xfeld) as SourceListIsUpdated,
SourceListRestriction,
@ObjectModel.sapObjectNodeTypeReference:'IncotermsClassification'
IncotermsClassification,
IncotermsLocation1,
@ObjectModel.sapObjectNodeTypeReference:'PurchasingShippingInstruction'
ShippingInstruction,
ProcmtHubDelivAddressTypeCode,
ReferenceDeliveryAddressID,
ProcmtHubSubcontractor,
ProcmtHubSuplrIsSubcontractor,
FormOfAddress,
ProcmtHubBusinessPartnerName1,
ProcmtHubBusinessPartnerName2,
ProcmtHubBusinessPartnerName3,
ProcmtHubBusinessPartnerName4,
ProcmtHubStreetName,
ProcmtHubHouseNumber,
ProcmtHubPostalCode,
ProcmtHubCityName,
ProcmtHubCountry,
ProcmtHubRegion,
//@ObjectModel.association.type: [ #TO_COMPOSITION_ROOT ]
_CentralPurchaseContract,
//@ObjectModel.association.type: [ #TO_COMPOSITION_PARENT ]
_CentralPurchaseContractItem,
_CntrlPurContrItemPartner
}
where
CentralPurchaseContractItem <> '00000' //filter out only item distributions.
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"A_CNTRLPURCHASECONTRACTITEM",
"I_CNTRLPURCONTRDISTRIBUTION"
],
"ASSOCIATED":
[
"A_CENTRALPURCHASECONTRACT",
"A_CNTRLPURCHASECONTRACTITEM",
"A_CNTRLPURCONTRITEMPARTNER",
"E_CNTRLPURCONTRDISTRIBUTION"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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