P_OpnPurReqnForContr
Open Purchase Reqn for Contracts
P_OpnPurReqnForContr is a Composite CDS View that provides data about "Open Purchase Reqn for Contracts" in SAP S/4HANA. It reads from 2 data sources (I_PurchaseContractItem, R_PurchaseReqnItem) and exposes 17 fields with key fields PurchaseContract, PurchaseContractItem, PurchaseRequisition, PurchaseRequisitionItem. Part of development package VDM_MM_PUR_PR.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_PurchaseContractItem | _PurchaseContractItem | from |
| R_PurchaseReqnItem | _PurchaseReqnItem | left_outer |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | POPNPRFORCONTR | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| VDM.private | true | view | |
| VDM.viewType | #COMPOSITE | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.lifecycle.contract.type | #NONE | view |
Fields (17)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PurchaseContract | I_PurchaseContractItem | PurchaseContract | |
| KEY | PurchaseContractItem | I_PurchaseContractItem | PurchaseContractItem | |
| KEY | PurchaseRequisition | R_PurchaseReqnItem | PurchaseRequisition | |
| KEY | PurchaseRequisitionItem | R_PurchaseReqnItem | PurchaseRequisitionItem | |
| PurchaseContractItemUniqueID | PurchaseContractItemUniqueID | |||
| PurchaseContractType | I_PurchaseContractItem | PurchaseContractType | ||
| Supplier | ||||
| ContractItemCategory | I_PurchaseContractItem | PurchasingDocumentItemCategory | ||
| _PurchaseContract | I_PurchaseContractItem | _PurchaseContract | ||
| PurchaseReqnItemUniqueID | R_PurchaseReqnItem | PurchaseReqnItemUniqueID | ||
| PurchaseRequisitionType | R_PurchaseReqnItem | PurchaseRequisitionType | ||
| PurchasingOrganization | R_PurchaseReqnItem | PurchasingOrganization | ||
| PurchasingGroup | R_PurchaseReqnItem | PurchasingGroup | ||
| PurchasingDocumentSubtype | R_PurchaseReqnItem | PurchasingDocumentSubtype | ||
| MaterialGroup | R_PurchaseReqnItem | MaterialGroup | ||
| Plant | R_PurchaseReqnItem | Plant | ||
| PurReqItemCategory | R_PurchaseReqnItem | PurchasingDocumentItemCategory |
@AbapCatalog.sqlViewName: 'POPNPRFORCONTR'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.private: true
@VDM.viewType: #COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED
@VDM.lifecycle.contract.type: #NONE
define view P_OpnPurReqnForContr
as select from I_PurchaseContractItem as _PurchaseContractItem
left outer join R_PurchaseReqnItem as _PurchaseReqnItem on _PurchaseContractItem.Material = _PurchaseReqnItem.Material
and _PurchaseReqnItem.Material <> '' //Out-of-scope : Contracts at Material Group level
and (
//_PurchaseContractItem.Plant is null
_PurchaseContractItem.Plant = ''
or _PurchaseContractItem.Plant = _PurchaseReqnItem.Plant
)
and (
_PurchaseContractItem.PurchasingOrganization = _PurchaseReqnItem.PurchasingOrganization
//or _PurchaseReqnItem.PurchasingOrganization is null
or _PurchaseReqnItem.PurchasingOrganization = ''
)
and (
//_PurchaseContractItem.AccountAssignmentCategory is null
_PurchaseContractItem.AccountAssignmentCategory = ''
or _PurchaseContractItem.AccountAssignmentCategory = 'U'
or(
_PurchaseContractItem.AccountAssignmentCategory is not null
and _PurchaseContractItem.AccountAssignmentCategory <> 'U'
and(
_PurchaseContractItem.AccountAssignmentCategory = _PurchaseReqnItem.AccountAssignmentCategory
or _PurchaseReqnItem.AccountAssignmentCategory = 'U'
)
)
)
and _PurchaseReqnItem.ProcessingStatus = 'N' //Follow-on document not created
and _PurchaseReqnItem.OrderedQuantity = 0
and _PurchaseReqnItem.PurchaseContract = ''
and _PurchaseContractItem.PurchasingContractDeletionCode = ''
and _PurchaseReqnItem.IsClosed = '' // PR should not be closed
and _PurchaseContractItem.IsStatisticalItem = '' // Do not Consider Outline Items
{
//Contracta and PR joint keys
key _PurchaseContractItem.PurchaseContract,
key _PurchaseContractItem.PurchaseContractItem,
key _PurchaseReqnItem.PurchaseRequisition,
key _PurchaseReqnItem.PurchaseRequisitionItem,
PurchaseContractItemUniqueID,
@ObjectModel.foreignKey: {
association: null
}
_PurchaseContractItem.PurchaseContractType,
@ObjectModel.foreignKey: {
association: null
}
_PurchaseContractItem._PurchaseContract.Supplier,
@ObjectModel.foreignKey: {
association: null
}
_PurchaseContractItem.PurchasingDocumentItemCategory as ContractItemCategory,
_PurchaseContractItem._PurchaseContract,
//Purchase Requisition related fields
_PurchaseReqnItem.PurchaseReqnItemUniqueID,
_PurchaseReqnItem.PurchaseRequisitionType,
_PurchaseReqnItem.PurchasingOrganization,
_PurchaseReqnItem.PurchasingGroup,
//Newly added
_PurchaseReqnItem.PurchasingDocumentSubtype,
_PurchaseReqnItem.MaterialGroup,
@ObjectModel.foreignKey: {
association: null
}
_PurchaseReqnItem.Plant,
_PurchaseReqnItem.PurchasingDocumentItemCategory as PurReqItemCategory
}
where
// _PurchaseReqnItem.OrderedQuantity = 0
// and _PurchaseReqnItem.ProcessingStatus = 'N' //Follow-on document not created
// and _PurchaseReqnItem.Material <> '' //Out-of-scope : Contracts at Material Group level
_PurchaseReqnItem.PurchaseReqnItemUniqueID <> '' //TO-BE removed - Added for testing purpose
and _PurchaseReqnItem.PurchasingDocumentSubtype <> 'R' //This Situation use case is not valid for PR with control indicator R (meant for outline agreement)
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