I_PPS_PurReqnProcessFlow
Interface for PPS Process Flow
I_PPS_PurReqnProcessFlow is a Composite CDS View that provides data about "Interface for PPS Process Flow" in SAP S/4HANA. It reads from 8 data sources and exposes 41 fields with key fields PrecedingDocument, PrecedingDocumentItem, SubsequentDocument, SubsequentDocumentItem, PrecedingDocumentItem.
Data Sources (8)
| Source | Alias | Join Type |
|---|---|---|
| I_PurchaseContract | PC | inner |
| I_PurchaseContract | PC | inner |
| I_PurchaseContractItem | PCItem | inner |
| I_PurchaseContractItem | PCItem | inner |
| I_PPS_PurchaseOrder | PO | inner |
| I_PPS_PurchaseOrder | PO | inner |
| I_PPS_PurchaseOrderItem | POItem | inner |
| I_PPS_PurchaseOrderItem | POItem | inner |
Annotations (8)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #MANDATORY | view | |
| EndUserText.label | Interface for PPS Process Flow | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| VDM.lifecycle.contract.type | #SAP_INTERNAL_API | view | |
| VDM.viewType | #COMPOSITE | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view |
Fields (41)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PrecedingDocument | PurchaseRequisition | ||
| KEY | PrecedingDocumentItem | PurchaseRequisitionItem | ||
| KEY | SubsequentDocument | |||
| KEY | SubsequentDocumentItem | |||
| PrecedingDocumentCategory | ||||
| SubsequentDocumentCategory | ||||
| PurchaseRequisition | PurchaseRequisition | |||
| PurchaseRequisitionItem | PurchaseRequisitionItem | |||
| PurchaseRequisitionType | PurchaseRequisitionType | |||
| PurchasingGroup | PurchasingGroup | |||
| PurchaseRequisitionasPrecedingDocument | ||||
| KEY | PrecedingDocumentItem | PRItem | PurchaseRequisitionItem | |
| KEY | SubsequentDocument | I_PPS_PurchaseOrderItem | PurchaseOrder | |
| KEY | SubsequentDocumentItem | I_PPS_PurchaseOrderItem | PurchaseOrderItem | |
| PrecedingDocumentCategory | ||||
| SubsequentDocumentCategory | ||||
| PurchaseRequisition | PRItem | PurchaseRequisition | ||
| PurchaseRequisitionItem | PRItem | PurchaseRequisitionItem | ||
| PurchaseRequisitionType | PRItem | PurchaseRequisitionType | ||
| PurchasingGroup | PRItem | PurchasingGroup | ||
| PurchaseRequisitionasPrecedingDocument | ||||
| KEY | PrecedingDocumentItem | PRItem | PurchaseRequisitionItem | |
| KEY | SubsequentDocument | I_PurchaseContractItem | PurchaseContract | |
| KEY | SubsequentDocumentItem | I_PurchaseContractItem | PurchaseContractItem | |
| PrecedingDocumentCategory | ||||
| SubsequentDocumentCategory | ||||
| PurchaseRequisition | PRItem | PurchaseRequisition | ||
| PurchaseRequisitionItem | PRItem | PurchaseRequisitionItem | ||
| PurchaseRequisitionType | PRItem | PurchaseRequisitionType | ||
| PurchasingGroup | PRItem | PurchasingGroup | ||
| PurchaseContractasPrecedingDocument | ||||
| KEY | PrecedingDocumentItem | |||
| KEY | SubsequentDocument | I_PPS_PurchaseOrderItem | PurchaseOrder | |
| KEY | SubsequentDocumentItem | |||
| PrecedingDocumentCategory | I_PurchaseContractItem | PurchasingObjectCategory | ||
| SubsequentDocumentCategory | I_PPS_PurchaseOrderItem | PurchaseOrderCategory | ||
| PurchaseRequisition | PRItem | PurchaseRequisition | ||
| PurchaseRequisitionItem | PRItem | PurchaseRequisitionItem | ||
| PurchaseRequisitionType | PRItem | PurchaseRequisitionType | ||
| PurchasingGroup | PRItem | PurchasingGroup | ||
| PurchasingOrganization | PRItem | PurchasingOrganization |
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Interface for PPS Process Flow'
@Metadata.ignorePropagatedAnnotations: true
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@VDM.viewType: #COMPOSITE
@ObjectModel: {
usageType.serviceQuality: #D,
usageType.sizeCategory: #XL,
usageType.dataClass: #MIXED
}
//@JIRA-KEY S4PPS-7110
define view entity I_PPS_PurReqnProcessFlow
as
//PR
select distinct from I_Purchaserequisitionitem
{
key PurchaseRequisition as PrecedingDocument,
key PurchaseRequisitionItem as PrecedingDocumentItem,
key cast (' ' as vdm_purchaserequisition) as SubsequentDocument,
key cast (' ' as vdm_purchaserequisitionitem) as SubsequentDocumentItem,
// key cast (cast (' ' as vdm_purchaseorderitem) as char10) as SubsequentDocumentItem,
cast(cast ('B' as bstyp) as char4) as PrecedingDocumentCategory,
cast (cast (' ' as bstyp) as char4) as SubsequentDocumentCategory,
PurchaseRequisition,
PurchaseRequisitionItem,
PurchaseRequisitionType,
PurchasingGroup,
PurchasingOrganization
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// PR -> PO
union all select distinct from I_Purchaserequisitionitem as PRItem
inner join I_PPS_PurchaseOrderItem as POItem on POItem.PurchaseRequisition = PRItem.PurchaseRequisition
and POItem.PurchaseRequisitionItem = PRItem.PurchaseRequisitionItem //Incident ID 2380131799
inner join I_PPS_PurchaseOrder as PO on POItem.PurchaseOrder = PO.ActivePurchasingDocument //Incident ID 2380131799
{
key PRItem.PurchaseRequisition as PrecedingDocument,
key PRItem.PurchaseRequisitionItem as PrecedingDocumentItem,
key POItem.PurchaseOrder as SubsequentDocument,
key POItem.PurchaseOrderItem as SubsequentDocumentItem,
cast (cast ('B' as bstyp)as char4) as PrecedingDocumentCategory,
cast (POItem.PurchaseOrderCategory as char4) as SubsequentDocumentCategory,
PRItem.PurchaseRequisition,
PRItem.PurchaseRequisitionItem,
PRItem.PurchaseRequisitionType,
PRItem.PurchasingGroup,
PRItem.PurchasingOrganization
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// PR -> PC
union all select distinct from I_Purchaserequisitionitem as PRItem
inner join I_PurchaseContractItem as PCItem on PCItem.PurchaseRequisition = PRItem.PurchaseRequisition
and PCItem.PurchaseRequisitionItem = PRItem.PurchaseRequisitionItem
inner join I_PurchaseContract as PC on PCItem.PurchaseContract = PC.ActivePurchasingDocument //added on 20/11/23
{
key PRItem.PurchaseRequisition as PrecedingDocument,
key PRItem.PurchaseRequisitionItem as PrecedingDocumentItem,
key PCItem.PurchaseContract as SubsequentDocument,
key PCItem.PurchaseContractItem as SubsequentDocumentItem,
cast(cast ('B' as bstyp) as char4) as PrecedingDocumentCategory,
cast(PCItem.PurchasingObjectCategory as char4) as SubsequentDocumentCategory,
PRItem.PurchaseRequisition,
PRItem.PurchaseRequisitionItem,
PRItem.PurchaseRequisitionType,
PRItem.PurchasingGroup,
PRItem.PurchasingOrganization
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Call off PO
union all select distinct from I_Purchaserequisitionitem as PRItem
inner join I_PurchaseContractItem as PCItem on PRItem.PurchaseContract = PCItem.PurchaseContract
and PRItem.PurchaseContractItem = PCItem.PurchaseContractItem
inner join I_PurchaseContract as PC on PCItem.PurchaseContract = PC.ActivePurchasingDocument //added on 20/11/23
inner join I_PPS_PurchaseOrderItem as POItem on POItem.PurchaseContract = PCItem.PurchaseContract
and POItem.PurchaseContractItem = PCItem.PurchaseContractItem //Incident ID 2380131799
inner join I_PPS_PurchaseOrder as PO on POItem.PurchaseOrder = PO.ActivePurchasingDocument //Incident ID 2380131799
{
key PCItem.PurchaseContract as PrecedingDocument,
key cast(PCItem.PurchaseContractItem as char10) as PrecedingDocumentItem,
key POItem.PurchaseOrder as SubsequentDocument,
key cast(POItem.PurchaseOrderItem as char10) as SubsequentDocumentItem,
PCItem.PurchasingObjectCategory as PrecedingDocumentCategory,
POItem.PurchaseOrderCategory as SubsequentDocumentCategory,
PRItem.PurchaseRequisition,
PRItem.PurchaseRequisitionItem,
PRItem.PurchaseRequisitionType,
PRItem.PurchasingGroup,
PRItem.PurchasingOrganization
}
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