P_POCountInQtyContract
Purchase Order Count in Quantity Contract
P_POCountInQtyContract is a Consumption CDS View that provides data about "Purchase Order Count in Quantity Contract" in SAP S/4HANA. It reads from 4 data sources (I_PurContractClassification, I_PurchaseContractHistory, I_PurchaseContract, I_PurchaseContractItem) and exposes 3 fields with key fields PurchaseContract, PurchaseContractItem.
Data Sources (4)
| Source | Alias | Join Type |
|---|---|---|
| I_PurContractClassification | ContractClassification | inner |
| I_PurchaseContractHistory | ContractHistory | from |
| I_PurchaseContract | PurchaseContract | inner |
| I_PurchaseContractItem | PurchaseContractItem | inner |
Parameters (2)
| Name | Type | Default |
|---|---|---|
| P_StartDate | vdm_validitystart | |
| P_EndDate | vdm_validitystart |
Annotations (12)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | PPOCOUNTQC | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #PRIVILEGED_ONLY | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| VDM.viewType | #CONSUMPTION | view | |
| VDM.private | true | view | |
| EndUserText.label | Purchase Order Count in Quantity Contract | view |
Fields (3)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PurchaseContract | I_PurchaseContractHistory | PurchaseContract | |
| KEY | PurchaseContractItem | I_PurchaseContractHistory | PurchaseContractItem | |
| NumberOfPurchaseOrderItems |
@AbapCatalog.sqlViewName: 'PPOCOUNTQC'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@ClientHandling.algorithm: #SESSION_VARIABLE //Inserted by VDM CDS Suite Plugin
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #L
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@VDM.viewType: #CONSUMPTION
@VDM.private: true
@EndUserText.label: 'Purchase Order Count in Quantity Contract'
define view P_POCountInQtyContract
with parameters
P_StartDate : vdm_validitystart,
P_EndDate : vdm_validitystart
as select from I_PurchaseContractHistory as ContractHistory
inner join I_PurchaseContractItem as PurchaseContractItem on PurchaseContractItem.PurchaseContract = ContractHistory.PurchaseContract
and PurchaseContractItem.PurchaseContractItem = ContractHistory.PurchaseContractItem
inner join I_PurchaseContract as PurchaseContract on ContractHistory.PurchaseContract = PurchaseContract.ActivePurchasingDocument
inner join I_PurContractClassification as ContractClassification on PurchaseContract.PurchaseContractType = ContractClassification.PurchasingDocumentType
// left outer to many join I_PurgDocAccountAssignment as AccountAssignment on PurchaseContractItem.PurchaseContract = AccountAssignment.PurchasingDocument
// and PurchaseContractItem.PurchaseContractItem = AccountAssignment.PurchasingDocumentItem
{
key ContractHistory.PurchaseContract,
key ContractHistory.PurchaseContractItem,
count(*) as NumberOfPurchaseOrderItems
}
where
ContractClassification.PurchaseContractClassification = '1'
and PurchaseContractItem.PurchasingContractDeletionCode = ''
and PurchaseContract.ValidityStartDate <= $parameters.P_EndDate
and PurchaseContract.ValidityEndDate >= $parameters.P_StartDate
and PurchaseContract.IsEndOfPurposeBlocked = ''
and PurchasingDocumentItemCategory != '9'
and PurchasingDocumentItemCategory != '1'
and PurchasingDocumentItemCategory != 'A'
and not(
Material = ''
and IsStatisticalItem = 'X'
)
group by
ContractHistory.PurchaseContract,
ContractHistory.PurchaseContractItem
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PURCHASECONTRACT",
"I_PURCHASECONTRACTHISTORY",
"I_PURCHASECONTRACTITEM",
"I_PURCONTRACTCLASSIFICATION"
],
"ASSOCIATED":
[],
"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