R_PurchaseOrderTP
Purchase Order Transactional View
R_PurchaseOrderTP is a Transactional CDS View that provides data about "Purchase Order Transactional View" in SAP S/4HANA. It reads from 1 data source (R_PurchaseOrder) and exposes 87 fields with key field PurchaseOrder. It has 6 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| R_PurchaseOrder | PurchaseOrder | from |
Associations (6)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | E_PurchasingDocument | _PurchaseOrderExtension | $projection.PurchaseOrder = _PurchaseOrderExtension.PurchasingDocument |
| [1..1] | I_PurchasingDocumentType | _PurchaseOrderType | $projection.PurchaseOrderType = _PurchaseOrderType.PurchasingDocumentType and _PurchaseOrderType.PurchasingDocumentCategory = 'F' |
| [1..*] | R_PurchaseOrderItemTP | _PurchaseOrderItem | |
| [1..1] | R_PurchaseOrdSupplierAddressTP | _SupplierAddress | |
| [1..*] | R_PurchaseOrderNoteTP | _PurchaseOrderNote | |
| [1..*] | R_PurchaseOrderPartnerTP | _PurchaseOrderPartner | |
Annotations (10)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| EndUserText.label | Purchase Order Transactional View | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.sapObjectNodeType.name | PurchaseOrder | view | |
| VDM.lifecycle.contract.type | #SAP_INTERNAL_API | view | |
| VDM.viewType | #TRANSACTIONAL | view |
Fields (87)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PurchaseOrder | R_PurchaseOrder | PurchaseOrder | |
| PurchaseOrderType | R_PurchaseOrder | PurchaseOrderType | ||
| PurchaseOrderSubtype | R_PurchaseOrder | PurchaseOrderSubtype | ||
| PurchasingDocumentOrigin | R_PurchaseOrder | PurchasingDocumentOrigin | ||
| PurchasingDocumentProcessCode | PurchasingDocumentProcessCode | |||
| CreatedByUser | R_PurchaseOrder | CreatedByUser | ||
| CreationDate | R_PurchaseOrder | CreationDate | ||
| PurchaseOrderDate | R_PurchaseOrder | PurchaseOrderDate | ||
| LastChangeDateTime | R_PurchaseOrder | LastChangeDateTime | ||
| ValidityStartDate | R_PurchaseOrder | ValidityStartDate | ||
| ValidityEndDate | R_PurchaseOrder | ValidityEndDate | ||
| Language | R_PurchaseOrder | Language | ||
| PurchaseOrderDeletionCode | R_PurchaseOrder | PurchaseOrderDeletionCode | ||
| ReleaseIsNotCompleted | R_PurchaseOrder | ReleaseIsNotCompleted | ||
| PurchasingCompletenessStatus | R_PurchaseOrder | PurchasingCompletenessStatus | ||
| PurchasingProcessingStatus | R_PurchaseOrder | PurchasingProcessingStatus | ||
| PurgReleaseSequenceStatus | R_PurchaseOrder | PurgReleaseSequenceStatus | ||
| ReleaseCode | R_PurchaseOrder | ReleaseCode | ||
| PurchasingReleaseStrategy | R_PurchaseOrder | PurchasingReleaseStrategy | ||
| PurgReasonForDocCancellation | R_PurchaseOrder | PurgReasonForDocCancellation | ||
| CompanyCode | R_PurchaseOrder | CompanyCode | ||
| PurchasingOrganization | R_PurchaseOrder | PurchasingOrganization | ||
| PurchasingGroup | R_PurchaseOrder | PurchasingGroup | ||
| Supplier | R_PurchaseOrder | Supplier | ||
| ManualSupplierAddressID | R_PurchaseOrder | ManualSupplierAddressID | ||
| SupplierAddressID | R_PurchaseOrder | SupplierAddressID | ||
| SupplierRespSalesPersonName | R_PurchaseOrder | SupplierRespSalesPersonName | ||
| SupplierPhoneNumber | R_PurchaseOrder | SupplierPhoneNumber | ||
| SupplyingSupplier | R_PurchaseOrder | SupplyingSupplier | ||
| SupplyingPlant | R_PurchaseOrder | SupplyingPlant | ||
| InvoicingParty | R_PurchaseOrder | InvoicingParty | ||
| Customer | R_PurchaseOrder | Customer | ||
| PurchaseContract | R_PurchaseOrder | PurchaseContract | ||
| SupplierQuotationExternalID | R_PurchaseOrder | SupplierQuotationExternalID | ||
| QuotationSubmissionDate | R_PurchaseOrder | QuotationSubmissionDate | ||
| ItemNumberIntervalForSubItems | R_PurchaseOrder | ItemNumberIntervalForSubItems | ||
| PaymentTerms | R_PurchaseOrder | PaymentTerms | ||
| CashDiscount1Days | R_PurchaseOrder | CashDiscount1Days | ||
| CashDiscount2Days | R_PurchaseOrder | CashDiscount2Days | ||
| NetPaymentDays | R_PurchaseOrder | NetPaymentDays | ||
| CashDiscount1Percent | R_PurchaseOrder | CashDiscount1Percent | ||
| CashDiscount2Percent | R_PurchaseOrder | CashDiscount2Percent | ||
| DownPaymentType | R_PurchaseOrder | DownPaymentType | ||
| DownPaymentPercentageOfTotAmt | R_PurchaseOrder | DownPaymentPercentageOfTotAmt | ||
| DownPaymentAmount | R_PurchaseOrder | DownPaymentAmount | ||
| DownPaymentDueDate | R_PurchaseOrder | DownPaymentDueDate | ||
| IncotermsClassification | R_PurchaseOrder | IncotermsClassification | ||
| IncotermsTransferLocation | R_PurchaseOrder | IncotermsTransferLocation | ||
| IncotermsVersion | R_PurchaseOrder | IncotermsVersion | ||
| IncotermsLocation1 | R_PurchaseOrder | IncotermsLocation1 | ||
| IncotermsLocation2 | R_PurchaseOrder | IncotermsLocation2 | ||
| IsIntrastatReportingRelevant | R_PurchaseOrder | IsIntrastatReportingRelevant | ||
| IsIntrastatReportingExcluded | R_PurchaseOrder | IsIntrastatReportingExcluded | ||
| CorrespncExternalReference | R_PurchaseOrder | CorrespncExternalReference | ||
| CorrespncInternalReference | R_PurchaseOrder | CorrespncInternalReference | ||
| PricingDocument | R_PurchaseOrder | PricingDocument | ||
| PricingProcedure | R_PurchaseOrder | PricingProcedure | ||
| DocumentCurrency | R_PurchaseOrder | DocumentCurrency | ||
| ExchangeRate | ||||
| ExchangeRateIsFixed | R_PurchaseOrder | ExchangeRateIsFixed | ||
| PurgReleaseTimeTotalAmount | R_PurchaseOrder | PurgReleaseTimeTotalAmount | ||
| TaxReturnCountry | R_PurchaseOrder | TaxReturnCountry | ||
| VATRegistrationCountry | R_PurchaseOrder | VATRegistrationCountry | ||
| PurgAggrgdProdCmplncSuplrSts | R_PurchaseOrder | PurgAggrgdProdCmplncSuplrSts | ||
| PurgAggrgdProdMarketabilitySts | R_PurchaseOrder | PurgAggrgdProdMarketabilitySts | ||
| PurgAggrgdSftyDataSheetStatus | R_PurchaseOrder | PurgAggrgdSftyDataSheetStatus | ||
| PurgProdCmplncTotDngrsGoodsSts | R_PurchaseOrder | PurgProdCmplncTotDngrsGoodsSts | ||
| _PurchaseOrderItem | _PurchaseOrderItem | |||
| _SupplierAddress | _SupplierAddress | |||
| _PurchaseOrderNote | _PurchaseOrderNote | |||
| _PurchaseOrderPartner | _PurchaseOrderPartner | |||
| _CompanyCode | R_PurchaseOrder | _CompanyCode | ||
| _CreatedByUser | R_PurchaseOrder | _CreatedByUser | ||
| _DocumentCurrency | R_PurchaseOrder | _DocumentCurrency | ||
| _IncotermsClassification | R_PurchaseOrder | _IncotermsClassification | ||
| _IncotermsVersion | R_PurchaseOrder | _IncotermsVersion | ||
| _InvoicingParty | R_PurchaseOrder | _InvoicingParty | ||
| _Language | R_PurchaseOrder | _Language | ||
| _PaymentTerms | R_PurchaseOrder | _PaymentTerms | ||
| _PurchaseOrderCalcFields | R_PurchaseOrder | _PurchaseOrderCalcFields | ||
| _PurchaseOrderDeletionCode | R_PurchaseOrder | _PurchaseOrderDeletionCode | ||
| _PurchaseOrderType | _PurchaseOrderType | |||
| _PurchasingGroup | R_PurchaseOrder | _PurchasingGroup | ||
| _PurchasingOrganization | R_PurchaseOrder | _PurchasingOrganization | ||
| _Supplier | R_PurchaseOrder | _Supplier | ||
| _SupplyingPlant | R_PurchaseOrder | _SupplyingPlant | ||
| _SupplyingSupplier | R_PurchaseOrder | _SupplyingSupplier |
@AccessControl: { authorizationCheck: #CHECK, personalData.blocking: #BLOCKED_DATA_EXCLUDED, privilegedAssociations: ['_SupplierAddress','_PurchaseOrderPartner'] }
@EndUserText.label: 'Purchase Order Transactional View'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #L, dataClass: #MASTER}
@ObjectModel.sapObjectNodeType.name: 'PurchaseOrder'
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@VDM.viewType: #TRANSACTIONAL
define root view entity R_PurchaseOrderTP
as select from R_PurchaseOrder as PurchaseOrder
// inner join P_PurchaseOrderItemExists as PurchaseOrderItemExists on
// PurchaseOrder.PurchaseOrder = PurchaseOrderItemExists.PurchaseOrder
composition [1..*] of R_PurchaseOrderItemTP as _PurchaseOrderItem
composition [1..1] of R_PurchaseOrdSupplierAddressTP as _SupplierAddress
composition [1..*] of R_PurchaseOrderNoteTP as _PurchaseOrderNote
composition [1..*] of R_PurchaseOrderPartnerTP as _PurchaseOrderPartner
--Extension Association
association [1..1] to E_PurchasingDocument as _PurchaseOrderExtension on $projection.PurchaseOrder = _PurchaseOrderExtension.PurchasingDocument
association [1..1] to I_PurchasingDocumentType as _PurchaseOrderType on $projection.PurchaseOrderType = _PurchaseOrderType.PurchasingDocumentType
and _PurchaseOrderType.PurchasingDocumentCategory = 'F'
{
//Key
key PurchaseOrder.PurchaseOrder,
//Category
PurchaseOrder.PurchaseOrderType,
PurchaseOrder.PurchaseOrderSubtype,
PurchaseOrder.PurchasingDocumentOrigin,
//PurchasingDocumentIsAged,
PurchasingDocumentProcessCode,
//Admin
PurchaseOrder.CreatedByUser,
PurchaseOrder.CreationDate,
PurchaseOrder.PurchaseOrderDate,
PurchaseOrder.LastChangeDateTime,
PurchaseOrder.ValidityStartDate,
PurchaseOrder.ValidityEndDate,
PurchaseOrder.Language,
//Status
PurchaseOrder.PurchaseOrderDeletionCode,
PurchaseOrder.ReleaseIsNotCompleted,
PurchaseOrder.PurchasingCompletenessStatus,
PurchaseOrder.PurchasingProcessingStatus,
PurchaseOrder.PurgReleaseSequenceStatus,
PurchaseOrder.ReleaseCode,
PurchaseOrder.PurchasingReleaseStrategy,
PurchaseOrder.PurgReasonForDocCancellation,
//Organization
PurchaseOrder.CompanyCode,
PurchaseOrder.PurchasingOrganization,
PurchaseOrder.PurchasingGroup,
//Supplier
PurchaseOrder.Supplier,
PurchaseOrder.ManualSupplierAddressID,
PurchaseOrder.SupplierAddressID,
PurchaseOrder.SupplierRespSalesPersonName,
PurchaseOrder.SupplierPhoneNumber,
PurchaseOrder.SupplyingSupplier,
PurchaseOrder.SupplyingPlant,
PurchaseOrder.InvoicingParty,
PurchaseOrder.Customer,
//Contract
PurchaseOrder.PurchaseContract,
//Quotation Request
// RequestForQuotation,
PurchaseOrder.SupplierQuotationExternalID,
PurchaseOrder.QuotationSubmissionDate,
PurchaseOrder.ItemNumberIntervalForSubItems,
//Payments
PurchaseOrder.PaymentTerms,
PurchaseOrder.CashDiscount1Days,
PurchaseOrder.CashDiscount2Days,
PurchaseOrder.NetPaymentDays,
PurchaseOrder.CashDiscount1Percent,
PurchaseOrder.CashDiscount2Percent,
PurchaseOrder.DownPaymentType,
PurchaseOrder.DownPaymentPercentageOfTotAmt,
//Downpayment
@Semantics.amount.currencyCode: 'DocumentCurrency'
PurchaseOrder.DownPaymentAmount,
PurchaseOrder.DownPaymentDueDate,
//Incoterms
PurchaseOrder.IncotermsClassification,
PurchaseOrder.IncotermsTransferLocation,
PurchaseOrder.IncotermsVersion,
PurchaseOrder.IncotermsLocation1,
PurchaseOrder.IncotermsLocation2,
//Reference and Intrastat
PurchaseOrder.IsIntrastatReportingRelevant,
PurchaseOrder.IsIntrastatReportingExcluded,
PurchaseOrder.CorrespncExternalReference,
PurchaseOrder.CorrespncInternalReference,
//Pricing document
PurchaseOrder.PricingDocument,
PurchaseOrder.PricingProcedure,
PurchaseOrder.DocumentCurrency,
cast( PurchaseOrder.ExchangeRate as fis_exchange_rate preserving type ) as ExchangeRate,
PurchaseOrder.ExchangeRateIsFixed,
@Semantics.amount.currencyCode: 'DocumentCurrency'
PurchaseOrder.PurgReleaseTimeTotalAmount,
//
// @Semantics.booleanIndicator: true
// IsEndOfPurposeBlocked,
PurchaseOrder.TaxReturnCountry,
PurchaseOrder.VATRegistrationCountry,
// fields from product compliance
PurchaseOrder.PurgAggrgdProdCmplncSuplrSts,
PurchaseOrder.PurgAggrgdProdMarketabilitySts,
PurchaseOrder.PurgAggrgdSftyDataSheetStatus,
PurchaseOrder.PurgProdCmplncTotDngrsGoodsSts,
/* Compositions */
_PurchaseOrderItem,
_SupplierAddress,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
_PurchaseOrderNote,
_PurchaseOrderPartner,
/* Associations */
PurchaseOrder._CompanyCode,
PurchaseOrder._CreatedByUser,
PurchaseOrder._DocumentCurrency,
PurchaseOrder._IncotermsClassification,
PurchaseOrder._IncotermsVersion,
PurchaseOrder._InvoicingParty,
PurchaseOrder._Language,
PurchaseOrder._PaymentTerms,
PurchaseOrder._PurchaseOrderCalcFields,
PurchaseOrder._PurchaseOrderDeletionCode,
_PurchaseOrderType,
PurchaseOrder._PurchasingGroup,
PurchaseOrder._PurchasingOrganization,
PurchaseOrder._Supplier,
PurchaseOrder._SupplyingPlant,
PurchaseOrder._SupplyingSupplier
//TODOs:
//1.Category: fields exist in EKKO DB and need to be added to I_PurchasingDocument (GFN doesn't exist yet)
//WarrantyDate - GWLDT
//GoodsReceiptIndicator - WEAKT
//CollectiveNumber - SUBMI
//LogicalSystem - LOGSY
//ShippingType - VSART
//ShippingConditions - SHIPCOND
//ExternalReferenceSysID - EXTERNALSYSTEM
//ExternalReferenceID - EXTERNALREFERENCEID
//ExternalCallRevisionTime - EXT_REV_TMSTMP
//2.Category: GFN already created for the fields and need to be added to I_PurchasingDocument
//GoodsReceiptReasonCode - REASON_CODE
//RetentionIndicator - RETTP
//RetentionPercentage - RETPC
//GoodsHandoverLocation - HANDOVERLOC
//IncompletenessCategory - MEMORYTYPE
//3.Category: SAP and ISO unit fields - not yet clear in which view need to be added
//LanguageISOUnit
//LanguageSAPUnit
//CurrencyISOUnit
//CurrencySAPUnit
//VATCountryISOUnit
//VATCountrySAPUnit
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"R_PURCHASEORDER"
],
"ASSOCIATED":
[
"I_COMPANYCODE",
"I_CURRENCY",
"I_INCOTERMSCLASSIFICATION",
"I_INCOTERMSVERSION",
"I_LANGUAGE",
"I_PAYMENTTERMS",
"I_PLANT",
"I_PURCHASEORDERCALCFIELDS",
"I_PURCHASEORDERDELETIONCODE",
"I_PURCHASINGDOCUMENTTYPE",
"I_PURCHASINGGROUP",
"I_PURCHASINGORGANIZATION",
"I_SUPPLIER",
"I_USER",
"R_PURCHASEORDERITEMTP",
"R_PURCHASEORDERNOTETP",
"R_PURCHASEORDERPARTNERTP",
"R_PURCHASEORDSUPPLIERADDRESSTP"
],
"BASE":
[
"R_PURCHASEORDER"
],
"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