P_PrcSttgMethExecutionAnalysis
P_PrcSttgMethExecutionAnalysis is a Basic CDS View in SAP S/4HANA. It reads from 16 data sources and exposes 45 fields with key fields PricingDocument, PricingDocumentItem, ConditionType, ConditionTermRateFixation.
Data Sources (16)
| Source | Alias | Join Type |
|---|---|---|
| ekko | ekko | left_outer |
| ekpo | ekpo | left_outer |
| cmmfdof_d_fill | fill | left_outer |
| cmmfdof_d_flpkt | fillpacket | left_outer |
| cped_formdoc | formdoc | left_outer |
| wbhd | GTMHeaderPurchase | left_outer |
| wbhk | GTMHeaderSales | left_outer |
| wbhi | GTMItemPurchase | left_outer |
| wbhi | GTMItemSales | left_outer |
| cped_knumvtoguid | knumvtoguid | left_outer |
| cmmfdor_d_doc | orderdoc | left_outer |
| cmmfdor_d_order | orderreq | left_outer |
| cped_termgrpout | termgrpout | left_outer |
| cped_terminput | terminput | from |
| vbak | vbak | left_outer |
| vbap | vbap | left_outer |
Annotations (10)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | PCMM_PSMPC01 | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| VDM.private | true | view | |
| VDM.viewType | #BASIC | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| AccessControl.authorizationCheck | #NOT_ALLOWED | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view |
Fields (45)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PricingDocument | cped_knumvtoguid | knumv | |
| KEY | PricingDocumentItem | cped_knumvtoguid | kposn | |
| KEY | ConditionType | cped_formdoc | cond_type | |
| KEY | ConditionTermRateFixation | cped_termgrpout | termno | |
| NumberOfCommodityContracts | ||||
| PriceSettingMethod | cped_terminput | psmethod | ||
| PriceSettingMethodStatus | cped_terminput | psmstatus | ||
| DerivativeContrSpecification | cped_terminput | dcsid | ||
| MarketIdentifierCode | cped_terminput | mic | ||
| PriceQuotationType | cped_terminput | pricetype | ||
| MaturityKeyDate | cped_terminput | keydate | ||
| ConditionTermQuantity | cped_termgrpout | termcommquan | ||
| ConditionTermUnit | cped_termgrpout | termcommuom | ||
| PurchasingDocumentCategory | ekko | bstyp | ||
| PurchasingDocument | ||||
| vbtypendasSDDocumentCategory | ||||
| SalesDocument | vbak | vbeln | ||
| tkonnendasContractNum | ||||
| tposnendasTradingContractItem | ||||
| matnrendasMaterial | ||||
| kwmengendasmenge_dasQuantityInBaseUnit | ||||
| meinsendasBaseUnit | ||||
| CmmdtyOrderFillPrcgUpdtStatus | cmmfdor_d_doc | cmmdtyorderfillprcgupdtstatus | ||
| CmmdtyOrdReqDocPricingLot | cmmfdor_d_doc | cmmdtyordreqdocpricinglot | ||
| CmmdtyOrdReqDocApplication | cmmfdor_d_doc | cmmdtyordreqdocapplication | ||
| CmmdtyOrdReqDocPricingStatus | cmmfdor_d_doc | cmmdtyordreqdocpricingstatus | ||
| CmmdtyOrdRequestDocumentType | cmmfdor_d_doc | cmmdtyordrequestdocumenttype | ||
| CommodityOrderRequestDocument | cmmfdor_d_doc | commodityorderrequestdocument | ||
| CmmdtyOrdReqDocToFillQty | cmmfdor_d_doc | cmmdtyordreqdoctofillqty | ||
| CmmdtyOrdReqDocToFillQtyUnit | cmmfdor_d_doc | cmmdtyordreqdoctofillqtyunit | ||
| CommodityOrderRequest | cmmfdor_d_order | commodityorderrequest | ||
| CommoditySubAccount | cmmfdor_d_order | commoditysubaccount | ||
| CmmdtyOrderRequestStatus | cmmfdor_d_order | cmmdtyorderrequeststatus | ||
| CmmdtyOrderRequestType | cmmfdor_d_order | cmmdtyorderrequesttype | ||
| CmmdtyOrdReqCntrPtySubAcct | cmmfdor_d_order | cmmdtyordreqcntrptysubacct | ||
| CreationDateTime | cmmfdor_d_order | creationdatetime | ||
| LastChangeDateTime | cmmfdor_d_order | lastchangedatetime | ||
| CmmdtyOrderFillPacketStatus | cmmfdof_d_flpkt | cmmdtyorderfillpacketstatus | ||
| CommodityOrderFill | cmmfdof_d_fill | commodityorderfill | ||
| CmmdtyOrdFillFinancialTransID | cmmfdof_d_fill | cmmdtyordfillfinancialtransid | ||
| CmmdtyOrderFillQuantityInLots | cmmfdof_d_fill | cmmdtyorderfillquantityinlots | ||
| CmmdtyOrdFillUoMPerLot | cmmfdof_d_fill | cmmdtyordfilluomperlot | ||
| CmmdtyOrdFillQuantityPerLot | cmmfdof_d_fill | cmmdtyordfillquantityperlot | ||
| CmmdtyOrderFillPrice | cmmfdof_d_fill | cmmdtyorderfillprice | ||
| CmmdtyOrderFillPriceCrcy | cmmfdof_d_fill | cmmdtyorderfillpricecrcy |
@AbapCatalog.sqlViewName: 'PCMM_PSMPC01'
//@EndUserText.label: 'Price Setting Method Execution Analysis'
@AbapCatalog.compiler.compareFilter: true
@VDM.private: true
@VDM.viewType: #BASIC
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #M
@AccessControl.authorizationCheck: #NOT_ALLOWED
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
define view P_PrcSttgMethExecutionAnalysis
as select from cped_terminput as terminput
left outer join cped_termgrpout as termgrpout on terminput.terminput_guid = termgrpout.terminput_guid
left outer join cped_formdoc as formdoc on termgrpout.forminput_guid = formdoc.forminput_guid
left outer join cped_knumvtoguid as knumvtoguid on knumvtoguid.docitem_guid = formdoc.docitem_guid
left outer join ekko as ekko on ekko.knumv = knumvtoguid.knumv
left outer join ekpo as ekpo on ekko.ebeln = ekpo.ebeln
and ekpo.ebelp = substring(
knumvtoguid.kposn, 2, 5
)
left outer join vbak as vbak on vbak.knumv = knumvtoguid.knumv
left outer join vbap as vbap on vbak.vbeln = vbap.vbeln
and knumvtoguid.kposn = vbap.posnr
left outer join wbhk as GTMHeaderSales on GTMHeaderSales.knumv_sd = knumvtoguid.knumv
left outer join wbhi as GTMItemSales on GTMItemSales.tkonn = GTMHeaderSales.tkonn
and GTMItemSales.tposn = knumvtoguid.kposn
left outer join wbhd as GTMHeaderPurchase on GTMHeaderPurchase.knumv_mm = knumvtoguid.knumv
left outer join wbhi as GTMItemPurchase on GTMItemPurchase.tkonn = GTMHeaderPurchase.tkonn
and GTMItemPurchase.tposn = knumvtoguid.kposn
left outer join cmmfdor_d_doc as orderdoc on cmmdtyordreqdocexternalid = terminput.psmguid
left outer join cmmfdor_d_order as orderreq on orderreq.commodityorderrequestuuid = orderdoc.commodityorderrequestuuid
left outer join cmmfdof_d_flpkt as fillpacket on fillpacket.commodityorderrequestuuid = orderdoc.commodityorderrequestuuid
and fillpacket.commodityorderfillpacketuuid = terminput.fillpacketuuid
left outer join cmmfdof_d_fill as fill on fill.commodityorderfillpacketuuid = fillpacket.commodityorderfillpacketuuid
{
key knumvtoguid.knumv as PricingDocument,
key knumvtoguid.kposn as PricingDocumentItem,
key formdoc.cond_type as ConditionType,
key termgrpout.termno as ConditionTermRateFixation,
cast ( terminput.number_of_lots as astueck ) as NumberOfCommodityContracts,
terminput.psmethod as PriceSettingMethod,
terminput.psmstatus as PriceSettingMethodStatus,
terminput.dcsid as DerivativeContrSpecification,
terminput.mic as MarketIdentifierCode,
terminput.pricetype as PriceQuotationType,
terminput.keydate as MaturityKeyDate,
termgrpout.termcommquan as ConditionTermQuantity,
termgrpout.termcommuom as ConditionTermUnit,
ekko.bstyp as PurchasingDocumentCategory,
cast ( ekko.ebeln as fis_ebeln ) as PurchasingDocument,
case when (vbak.vbtyp is null ) then ' #'
else vbak.vbtyp end as SDDocumentCategory,
vbak.vbeln as SalesDocument,
// cast (
// case when (vbak.vbtyp is null ) then ' #'
// else vbak.vbtyp end as vbtyp) as SDDocumentCategory,
// vbak.vbeln as SalesDocument,
case when ( GTMHeaderPurchase.tkonn is null ) then GTMHeaderSales.tkonn
else GTMHeaderPurchase.tkonn end as ContractNum,
case when ( GTMItemPurchase.tposn is null ) then GTMItemSales.tposn
else GTMItemPurchase.tposn end as TradingContractItem,
case when ( ekpo.matnr is not null ) then ekpo.matnr
when ( GTMItemPurchase.matnr is not null ) then GTMItemPurchase.matnr
when ( GTMItemSales.matnr is not null ) then GTMItemSales.matnr
else vbap.matnr end as Material,
cast (
case when ( ekpo.menge is not null ) then ekpo.menge
when ( GTMItemPurchase.menge is not null ) then GTMItemPurchase.menge
when ( GTMItemSales.menge is not null ) then GTMItemSales.menge
else vbap.kwmeng end as menge_d ) as QuantityInBaseUnit,
case when ( ekpo.meins is not null ) then ekpo.meins
when ( GTMItemPurchase.meins is not null ) then GTMItemPurchase.meins
when ( GTMItemSales.meins is not null ) then GTMItemSales.meins
else vbap.meins end as BaseUnit,
orderdoc.cmmdtyorderfillprcgupdtstatus as CmmdtyOrderFillPrcgUpdtStatus,
orderdoc.cmmdtyordreqdocpricinglot as CmmdtyOrdReqDocPricingLot,
orderdoc.cmmdtyordreqdocapplication as CmmdtyOrdReqDocApplication,
orderdoc.cmmdtyordreqdocpricingstatus as CmmdtyOrdReqDocPricingStatus,
orderdoc.cmmdtyordrequestdocumenttype as CmmdtyOrdRequestDocumentType,
orderdoc.commodityorderrequestdocument as CommodityOrderRequestDocument,
orderdoc.cmmdtyordreqdoctofillqty as CmmdtyOrdReqDocToFillQty,
orderdoc.cmmdtyordreqdoctofillqtyunit as CmmdtyOrdReqDocToFillQtyUnit,
orderreq.commodityorderrequest as CommodityOrderRequest,
orderreq.commoditysubaccount as CommoditySubAccount,
orderreq.cmmdtyorderrequeststatus as CmmdtyOrderRequestStatus,
orderreq.cmmdtyorderrequesttype as CmmdtyOrderRequestType,
orderreq.cmmdtyordreqcntrptysubacct as CmmdtyOrdReqCntrPtySubAcct,
// cast ( orderreq.creationdatetime as timestampl ) as CreationDateTime,
orderreq.creationdatetime as CreationDateTime,
orderreq.lastchangedatetime as LastChangeDateTime,
// fillpacket.commodityorderrequesttrader as CommodityOrderRequestTrader,
fillpacket.cmmdtyorderfillpacketstatus as CmmdtyOrderFillPacketStatus,
// fillpacket.cmmdtyordfillrejectionreason as CmmdtyOrdFillRejectionReason,
fill.commodityorderfill as CommodityOrderFill,
fill.cmmdtyordfillfinancialtransid as CmmdtyOrdFillFinancialTransID,
fill.cmmdtyorderfillquantityinlots as CmmdtyOrderFillQuantityInLots,
fill.cmmdtyordfilluomperlot as CmmdtyOrdFillUoMPerLot,
fill.cmmdtyordfillquantityperlot as CmmdtyOrdFillQuantityPerLot,
fill.cmmdtyorderfillprice as CmmdtyOrderFillPrice,
fill.cmmdtyorderfillpricecrcy as CmmdtyOrderFillPriceCrcy
// fill.cmmdtyordfillrejectionreason as CmmdtyOrdFillRejectionReason
}
where not ( ekko.knumv is null and vbak.knumv is null and GTMHeaderPurchase.knumv_mm is null and GTMHeaderSales.knumv_sd is null )
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