P_PurOrdMaintainHeaderAll
P_PurOrdMaintainHeaderAll is a Consumption CDS View in SAP S/4HANA. It reads from 2 data sources (P_PurOrdMaintainHeaderActive, P_PurOrdMaintainHeaderDraft) and exposes 115 fields with key fields ID, PurchaseOrder, PurchaseOrderHeaderDraftUUID, PurchaseOrder, PurchaseOrderHeaderDraftUUID. It has 13 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| P_PurOrdMaintainHeaderActive | active | from |
| P_PurOrdMaintainHeaderDraft | draft | union_all |
Associations (13)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_Supplier | active_supplier | $projection.Supplier = active_supplier.Supplier |
| [0..1] | I_Supplier | active_invparty | $projection.InvoicingParty = active_invparty.Supplier |
| [0..1] | I_PurchasingOrganization | active_ekorg | $projection.PurchasingOrganization = active_ekorg.PurchasingOrganization |
| [0..1] | I_PurchasingGroup | active_ekgrp | $projection.PurchasingGroup = active_ekgrp.PurchasingGroup |
| [1..1] | I_CompanyCode | active_t001 | $projection.CompanyCode = active_t001.CompanyCode |
| [1..1] | P_PurOrdMaintainHeaderActCalFs | active_POHeaderCalFields | $projection.PurchaseOrder = active_POHeaderCalFields.PurchaseOrder |
| [0..1] | P_PurOrdMaintainHeaderDraft | draft_header | $projection.PurchaseOrder = draft_header.PurchaseOrder |
| [0..1] | I_Supplier | draft_supplier | $projection.Supplier = draft_supplier.Supplier |
| [0..1] | I_Supplier | draft_invparty | $projection.InvoicingParty = draft_invparty.Supplier |
| [0..1] | I_PurchasingOrganization | draft_ekorg | $projection.PurchasingOrganization = draft_ekorg.PurchasingOrganization |
| [0..1] | I_PurchasingGroup | draft_ekgrp | $projection.PurchasingGroup = draft_ekgrp.PurchasingGroup |
| [1..1] | I_CompanyCode | draft_t001 | $projection.CompanyCode = draft_t001.CompanyCode |
| [1..1] | P_PurOrdMaintainHeaderDrfCalFs | draft_POHeaderCalFields | $projection.PurchaseOrderHeaderDraftUUID = draft_POHeaderCalFields.PurchaseOrderHeaderDraftUUID |
Annotations (5)
| Name | Value | Level | Field |
|---|---|---|---|
| VDM.viewType | #CONSUMPTION | view | |
| VDM.private | true | view | |
| AbapCatalog.sqlViewName | PPOMAINTHDRALL | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view |
Fields (115)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ID | |||
| KEY | PurchaseOrder | P_PurOrdMaintainHeaderActive | PurchaseOrder | Purchasing Document |
| KEY | PurchaseOrderHeaderDraftUUID | UUID 22 char. | ||
| DraftUUID | ||||
| PurchasingDocumentCategory | P_PurOrdMaintainHeaderActive | PurchasingDocumentCategory | Doc. Category | |
| PurchasingDocumentType | P_PurOrdMaintainHeaderActive | PurchasingDocumentType | RFQ Type | |
| CompanyCode | P_PurOrdMaintainHeaderActive | CompanyCode | Receiver Company Code | |
| CompanyCodeName | active_t001 | CompanyCodeName | Company Name | |
| PurchasingOrganization | P_PurOrdMaintainHeaderActive | PurchasingOrganization | Purchasing Organization | |
| PurchasingOrganizationName | active_ekorg | PurchasingOrganizationName | Purch. Org. Name | |
| PurchasingGroup | P_PurOrdMaintainHeaderActive | PurchasingGroup | Purchasing Group | |
| PurchasingGroupName | active_ekgrp | PurchasingGroupName | Purchasing Grp. Name | |
| Supplier | P_PurOrdMaintainHeaderActive | Supplier | Supplier | |
| SupplierName | active_supplier | SupplierName | Supplier Name | |
| Currency | P_PurOrdMaintainHeaderActive | Currency | Valuation Crcy | |
| PaymentTerms | P_PurOrdMaintainHeaderActive | PaymentTerms | Pyt Terms | |
| CashDiscount1Days | P_PurOrdMaintainHeaderActive | CashDiscount1Days | Days from Baseline Date for Payment | |
| CashDiscount2Days | P_PurOrdMaintainHeaderActive | CashDiscount2Days | Days from Baseline Date for Payment | |
| NetPaymentDays | P_PurOrdMaintainHeaderActive | NetPaymentDays | Net Pmt Terms Period | |
| CashDiscount1Percent | P_PurOrdMaintainHeaderActive | CashDiscount1Percent | Disc. Percent 1 | |
| CashDiscount2Percent | P_PurOrdMaintainHeaderActive | CashDiscount2Percent | Disc. Percent 2 | |
| ExchangeRate | P_PurOrdMaintainHeaderActive | ExchangeRate | Exchange rate | |
| IncotermsClassification | P_PurOrdMaintainHeaderActive | IncotermsClassification | Incoterms | |
| IncotermsTransferLocation | P_PurOrdMaintainHeaderActive | IncotermsTransferLocation | Incoterms 2 | |
| IncotermsVersion | P_PurOrdMaintainHeaderActive | IncotermsVersion | Inco. Version | |
| IncotermsLocation1 | P_PurOrdMaintainHeaderActive | IncotermsLocation1 | Inco. Location1 | |
| IncotermsLocation2 | P_PurOrdMaintainHeaderActive | IncotermsLocation2 | Inco. Location2 | |
| CreatedByUser | P_PurOrdMaintainHeaderActive | CreatedByUser | User Name | |
| PurchaseOrderDate | P_PurOrdMaintainHeaderActive | PurchaseOrderDate | PO Date | |
| LastChangeDateTime | P_PurOrdMaintainHeaderActive | LastChangeDateTime | Timestamp | |
| LastChangeUser | P_PurOrdMaintainHeaderActive | LastChangeUser | User Name | |
| InvoicingParty | P_PurOrdMaintainHeaderActive | InvoicingParty | Supplier | |
| InvoicingPartyName | active_invparty | SupplierName | Supplier Name | |
| ReleaseIsNotCompleted | P_PurOrdMaintainHeaderActive | ReleaseIsNotCompleted | Subj.to Release | |
| IsHeld | P_PurOrdMaintainHeaderActive | IsHeld | Incomplete | |
| NumberOfItems | active_POHeaderCalFields | NumberOfItems | ||
| PurchaseOrderNetAmount | active_POHeaderCalFields | NetValue | Net Value | |
| PurchasingDocumentStatus | active_POHeaderCalFields | PurchasingDocumentStatus | Short Description | |
| EditState | P_PurOrdMaintainHeaderActive | EditState | ||
| IsDraft | ||||
| HasTwin | P_PurOrdMaintainHeaderActive | HasTwin | ||
| TwinPurchaseOrderHdrDraftUUID | draft_header | PurchaseOrderHeaderDraftUUID | UUID 22 char. | |
| TwinUUID | ||||
| PurchasingDocumentCondition | P_PurOrdMaintainHeaderActive | PurchasingDocumentCondition | Doc. Condition | |
| PricingProcedure | P_PurOrdMaintainHeaderActive | PricingProcedure | Procedure | |
| AddressID | P_PurOrdMaintainHeaderActive | AddressID | Ship-to address | |
| AddressName | P_PurOrdMaintainHeaderActive | AddressName | Name | |
| AddressStreetName | P_PurOrdMaintainHeaderActive | AddressStreetName | Street | |
| AddressHouseNumber | P_PurOrdMaintainHeaderActive | AddressHouseNumber | House Number | |
| AddressPostalCode | P_PurOrdMaintainHeaderActive | AddressPostalCode | Postal Code | |
| AddressCityName | P_PurOrdMaintainHeaderActive | AddressCityName | City | |
| AddressPhoneNumber | P_PurOrdMaintainHeaderActive | AddressPhoneNumber | Telephone | |
| AddressFaxNumber | P_PurOrdMaintainHeaderActive | AddressFaxNumber | Fax | |
| AddressRegion | P_PurOrdMaintainHeaderActive | AddressRegion | Region | |
| AddressCountry | P_PurOrdMaintainHeaderActive | AddressCountry | Country/Reg. | |
| AddressCorrespondenceLanguage | P_PurOrdMaintainHeaderActive | AddressCorrespondenceLanguage | Language | |
| IsActiveEntity | ||||
| char32asID | ||||
| KEY | PurchaseOrder | P_PurOrdMaintainHeaderDraft | PurchaseOrder | Purchasing Document |
| KEY | PurchaseOrderHeaderDraftUUID | P_PurOrdMaintainHeaderDraft | PurchaseOrderHeaderDraftUUID | UUID 22 char. |
| DraftUUID | ||||
| PurchasingDocumentCategory | P_PurOrdMaintainHeaderDraft | PurchasingDocumentCategory | Doc. Category | |
| PurchasingDocumentType | P_PurOrdMaintainHeaderDraft | PurchasingDocumentType | RFQ Type | |
| CompanyCode | P_PurOrdMaintainHeaderDraft | CompanyCode | Receiver Company Code | |
| CompanyCodeName | draft_t001 | CompanyCodeName | Company Name | |
| PurchasingOrganization | P_PurOrdMaintainHeaderDraft | PurchasingOrganization | Purchasing Organization | |
| PurchasingOrganizationName | draft_ekorg | PurchasingOrganizationName | Purch. Org. Name | |
| PurchasingGroup | P_PurOrdMaintainHeaderDraft | PurchasingGroup | Purchasing Group | |
| PurchasingGroupName | draft_ekgrp | PurchasingGroupName | Purchasing Grp. Name | |
| Supplier | P_PurOrdMaintainHeaderDraft | Supplier | Supplier | |
| SupplierName | draft_supplier | SupplierName | Supplier Name | |
| Currency | P_PurOrdMaintainHeaderDraft | Currency | Valuation Crcy | |
| PaymentTerms | P_PurOrdMaintainHeaderDraft | PaymentTerms | Pyt Terms | |
| CashDiscount1Days | P_PurOrdMaintainHeaderDraft | CashDiscount1Days | Days from Baseline Date for Payment | |
| CashDiscount2Days | P_PurOrdMaintainHeaderDraft | CashDiscount2Days | Days from Baseline Date for Payment | |
| NetPaymentDays | P_PurOrdMaintainHeaderDraft | NetPaymentDays | Net Pmt Terms Period | |
| CashDiscount1Percent | P_PurOrdMaintainHeaderDraft | CashDiscount1Percent | Disc. Percent 1 | |
| CashDiscount2Percent | P_PurOrdMaintainHeaderDraft | CashDiscount2Percent | Disc. Percent 2 | |
| ExchangeRate | P_PurOrdMaintainHeaderDraft | ExchangeRate | Exchange rate | |
| IncotermsClassification | P_PurOrdMaintainHeaderDraft | IncotermsClassification | Incoterms | |
| IncotermsTransferLocation | P_PurOrdMaintainHeaderDraft | IncotermsTransferLocation | Incoterms 2 | |
| IncotermsVersion | P_PurOrdMaintainHeaderDraft | IncotermsVersion | Inco. Version | |
| IncotermsLocation1 | P_PurOrdMaintainHeaderDraft | IncotermsLocation1 | Inco. Location1 | |
| IncotermsLocation2 | P_PurOrdMaintainHeaderDraft | IncotermsLocation2 | Inco. Location2 | |
| CreatedByUser | P_PurOrdMaintainHeaderDraft | CreatedByUser | User Name | |
| PurchaseOrderDate | P_PurOrdMaintainHeaderDraft | PurchaseOrderDate | PO Date | |
| LastChangeDateTime | P_PurOrdMaintainHeaderDraft | LastChangeDateTime | Timestamp | |
| LastChangeUser | P_PurOrdMaintainHeaderDraft | LastChangeUser | User Name | |
| InvoicingParty | P_PurOrdMaintainHeaderDraft | InvoicingParty | Supplier | |
| InvoicingPartyName | draft_invparty | SupplierName | Supplier Name | |
| ReleaseIsNotCompleted | P_PurOrdMaintainHeaderDraft | ReleaseIsNotCompleted | Subj.to Release | |
| IsHeld | P_PurOrdMaintainHeaderDraft | IsHeld | Incomplete | |
| NumberOfItems | draft_POHeaderCalFields | NumberOfItems | ||
| PurchaseOrderNetAmount | draft_POHeaderCalFields | NetValue | Net Value | |
| PurchasingDocumentStatus | Short Description | |||
| char1endasEditState | ||||
| IsDraft | ||||
| char1endasHasTwin | ||||
| TwinPurchaseOrderHdrDraftUUID | UUID 22 char. | |||
| TwinUUID | ||||
| PurchasingDocumentCondition | P_PurOrdMaintainHeaderDraft | PurchasingDocumentCondition | Doc. Condition | |
| PricingProcedure | P_PurOrdMaintainHeaderDraft | PricingProcedure | Procedure | |
| AddressID | P_PurOrdMaintainHeaderDraft | AddressID | Ship-to address | |
| AddressName | P_PurOrdMaintainHeaderDraft | AddressName | Name | |
| AddressStreetName | P_PurOrdMaintainHeaderDraft | AddressStreetName | Street | |
| AddressHouseNumber | P_PurOrdMaintainHeaderDraft | AddressHouseNumber | House Number | |
| AddressPostalCode | P_PurOrdMaintainHeaderDraft | AddressPostalCode | Postal Code | |
| AddressCityName | P_PurOrdMaintainHeaderDraft | AddressCityName | City | |
| AddressPhoneNumber | P_PurOrdMaintainHeaderDraft | AddressPhoneNumber | Telephone | |
| AddressFaxNumber | P_PurOrdMaintainHeaderDraft | AddressFaxNumber | Fax | |
| AddressRegion | P_PurOrdMaintainHeaderDraft | AddressRegion | Region | |
| AddressCountry | P_PurOrdMaintainHeaderDraft | AddressCountry | Country/Reg. | |
| AddressCorrespondenceLanguage | P_PurOrdMaintainHeaderDraft | AddressCorrespondenceLanguage | Language | |
| IsActiveEntity | ||||
| IsEndOfPurposeBlocked |
Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.
-- Derived SQL interpretation of CDS view P_PurOrdMaintainHeaderAll.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- SQL view name: PPOMAINTHDRALL
CREATE VIEW P_PurOrdMaintainHeaderAll AS
SELECT
cast(CONCAT(':',REPLACE(REPLACE(active.PurchaseOrder,'~','~~'),':','~:')) as abap.char(32)) AS ID,
active.PurchaseOrder AS PurchaseOrder,
cast('' as abap.char(32)) AS PurchaseOrderHeaderDraftUUID,
hextobin('00000000000000000000000000000000') AS DraftUUID,
active.PurchasingDocumentCategory AS PurchasingDocumentCategory,
active.PurchasingDocumentType AS PurchasingDocumentType,
active.CompanyCode AS CompanyCode,
active_t001.CompanyCodeName AS CompanyCodeName,
active.PurchasingOrganization AS PurchasingOrganization,
active_ekorg.PurchasingOrganizationName AS PurchasingOrganizationName,
active.PurchasingGroup AS PurchasingGroup,
active_ekgrp.PurchasingGroupName AS PurchasingGroupName,
active.Supplier AS Supplier,
active_supplier.SupplierName AS SupplierName,
active.Currency AS Currency,
active.PaymentTerms AS PaymentTerms,
active.CashDiscount1Days AS CashDiscount1Days,
active.CashDiscount2Days AS CashDiscount2Days,
active.NetPaymentDays AS NetPaymentDays,
active.CashDiscount1Percent AS CashDiscount1Percent,
active.CashDiscount2Percent AS CashDiscount2Percent,
active.ExchangeRate AS ExchangeRate,
active.IncotermsClassification AS IncotermsClassification,
active.IncotermsTransferLocation AS IncotermsTransferLocation,
active.IncotermsVersion AS IncotermsVersion,
active.IncotermsLocation1 AS IncotermsLocation1,
active.IncotermsLocation2 AS IncotermsLocation2,
active.CreatedByUser AS CreatedByUser,
active.PurchaseOrderDate AS PurchaseOrderDate,
active.LastChangeDateTime AS LastChangeDateTime,
active.LastChangeUser AS LastChangeUser,
active.InvoicingParty AS InvoicingParty,
active_invparty.SupplierName AS InvoicingPartyName,
active.ReleaseIsNotCompleted AS ReleaseIsNotCompleted,
active.IsHeld AS IsHeld,
active_POHeaderCalFields.NumberOfItems AS NumberOfItems,
active_POHeaderCalFields.NetValue AS PurchaseOrderNetAmount,
active_POHeaderCalFields.PurchasingDocumentStatus AS PurchasingDocumentStatus,
active.EditState AS EditState,
cast('' as abap.char(1)) AS IsDraft,
active.HasTwin AS HasTwin,
draft_header.PurchaseOrderHeaderDraftUUID AS TwinPurchaseOrderHdrDraftUUID,
hextobin(draft_header.PurchaseOrderHeaderDraftUUID) AS TwinUUID,
active.PurchasingDocumentCondition AS PurchasingDocumentCondition,
active.PricingProcedure AS PricingProcedure,
active.AddressID AS AddressID,
active.AddressName AS AddressName,
active.AddressStreetName AS AddressStreetName,
active.AddressHouseNumber AS AddressHouseNumber,
active.AddressPostalCode AS AddressPostalCode,
active.AddressCityName AS AddressCityName,
active.AddressPhoneNumber AS AddressPhoneNumber,
active.AddressFaxNumber AS AddressFaxNumber,
active.AddressRegion AS AddressRegion,
active.AddressCountry AS AddressCountry,
active.AddressCorrespondenceLanguage AS AddressCorrespondenceLanguage,
cast('X' as abap.char(1)) AS IsActiveEntity,
IsEndOfPurposeBlocked as IsEndOfPurposeBlocked AS char32asID,
case draft.PurchaseOrder when '' then cast('1' as abap.char(1)) else cast('3' as abap.char(1)) end as EditState AS char1endasEditState,
case draft.PurchaseOrder when '' then cast('' as abap.char(1)) else cast('X' as abap.char(1)) end as HasTwin AS char1endasHasTwin,
cast(' ' as abap.char(1)) AS IsEndOfPurposeBlocked
FROM P_PurOrdMaintainHeaderActive AS active
LEFT OUTER JOIN I_Supplier AS active_supplier ON Supplier = active_supplier.Supplier -- association [0..1]
LEFT OUTER JOIN I_Supplier AS active_invparty ON InvoicingParty = active_invparty.Supplier -- association [0..1]
LEFT OUTER JOIN I_PurchasingOrganization AS active_ekorg ON PurchasingOrganization = active_ekorg.PurchasingOrganization -- association [0..1]
LEFT OUTER JOIN I_PurchasingGroup AS active_ekgrp ON PurchasingGroup = active_ekgrp.PurchasingGroup -- association [0..1]
LEFT OUTER JOIN I_CompanyCode AS active_t001 ON CompanyCode = active_t001.CompanyCode -- association [1..1]
LEFT OUTER JOIN P_PurOrdMaintainHeaderActCalFs AS active_POHeaderCalFields ON PurchaseOrder = active_POHeaderCalFields.PurchaseOrder -- association [1..1]
LEFT OUTER JOIN P_PurOrdMaintainHeaderDraft AS draft_header ON PurchaseOrder = draft_header.PurchaseOrder -- association [0..1]
LEFT OUTER JOIN I_Supplier AS draft_supplier ON Supplier = draft_supplier.Supplier -- association [0..1]
LEFT OUTER JOIN I_Supplier AS draft_invparty ON InvoicingParty = draft_invparty.Supplier -- association [0..1]
LEFT OUTER JOIN I_PurchasingOrganization AS draft_ekorg ON PurchasingOrganization = draft_ekorg.PurchasingOrganization -- association [0..1]
LEFT OUTER JOIN I_PurchasingGroup AS draft_ekgrp ON PurchasingGroup = draft_ekgrp.PurchasingGroup -- association [0..1]
LEFT OUTER JOIN I_CompanyCode AS draft_t001 ON CompanyCode = draft_t001.CompanyCode -- association [1..1]
LEFT OUTER JOIN P_PurOrdMaintainHeaderDrfCalFs AS draft_POHeaderCalFields ON PurchaseOrderHeaderDraftUUID = draft_POHeaderCalFields.PurchaseOrderHeaderDraftUUID -- association [1..1]
-- UNION ALL with additional select branch(es): P_PurOrdMaintainHeaderDraft
;
Learn More
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- CDS View Annotations — A Complete Guide
- What Is a CDS View in SAP S/4HANA?
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- 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
- BSEG to ACDOCA: The Universal Journal Migration
- Business Partner Migration: KNA1/LFA1 to BUT000
- Material Document Migration: MSEG/MKPF to MATDOC
- How to Find the Right CDS View for an SAP Table
- BW Extractor to CDS View Migration Guide
- S/4HANA CDS View Deprecation: What You Need to Know
- ABAP CDS View Tutorial — From Basics to Real-World Examples
- RAP and CDS Views — Building Transactional Apps in SAP S/4HANA
- Sales Document Status Migration: VBUP/VBUK Removal in S/4HANA
- CO Tables in S/4HANA: COEP, COBK, COSS, COSP to ACDOCA