C_PurOrdServiceSpend

DDL: C_PURORDSERVICESPEND SQL: CMMPOSERVICESPND Type: view CONSUMPTION Package: ODATA_MM_ANALYTICS

Purchase Order Service Spend

C_PurOrdServiceSpend is a Consumption CDS View (Cube) that provides data about "Purchase Order Service Spend" in SAP S/4HANA. It reads from 3 data sources (P_PurOrdItmServiceSpnd, P_PurOrdServiceEntry, P_PurOrdServiceInvoice) and exposes 46 fields with key fields PurchaseOrder, PurchaseOrderItem. It has 14 associations to related views. Part of development package ODATA_MM_ANALYTICS.

Data Sources (3)

SourceAliasJoin Type
P_PurOrdItmServiceSpnd P_PurOrdItmServiceSpnd from
P_PurOrdServiceEntry P_PurOrdServiceEntry left_outer
P_PurOrdServiceInvoice P_PurOrdServiceInvoice left_outer

Parameters (3)

NameTypeDefault
P_DisplayCurrency displaycurrency
P_StartDate bedat
P_EndDate bedat

Associations (14)

CardinalityTargetAliasCondition
[1..1] I_PurchaseOrderStatus _PurchaseOrderStatus PurchaseOrderItem.PurchaseOrder = _PurchaseOrderStatus.PurchaseOrder
[1..1] I_CalendarDate _CalendarDate PurchaseOrderItem.PurchaseOrderDate = _CalendarDate.CalendarDate
[1..1] I_PurchasingDocumentStatus _PurchasingDocumentStatus $projection.purchasingdocumentstatus = _PurchasingDocumentStatus.PurchasingDocumentStatus
[1..1] I_Material _Material $projection.Material = _Material.Material
[1..1] I_Product _Product $projection.Product = _Product.Product
[1..1] I_MaterialGroup _MaterialGroup $projection.MaterialGroup = _MaterialGroup.MaterialGroup
[1..1] I_ProductGroup _ProductGroup $projection.ProductGroup = _ProductGroup.MaterialGroup
[0..1] I_PurgDocumentItemCategory _PurgDocumentItemCategory $projection.PurchaseOrderItemCategory = _PurgDocumentItemCategory.PurchasingDocumentItemCategory
[1..1] I_Country _Country $projection.SupplierCountry = _Country.Country
[1..1] I_Country _CountryName $projection.country = _CountryName.Country
[1..1] I_Plant _PlantName $projection.PlantName = _PlantName.Plant
[1..1] I_Supplier _SupplierName $projection.SupplierName = _SupplierName.Supplier
[1..1] I_PurchasingOrganization _PurchasingOrganizationName $projection.PurchasingOrganizationName = _PurchasingOrganizationName.PurchasingOrganization
[1..1] I_PurchasingGroup _PurchasingGroupName $projection.PurchasingGroupName = _PurchasingGroupName.PurchasingGroup

Annotations (17)

NameValueLevelField
AbapCatalog.sqlViewName CMMPOSERVICESPND view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
EndUserText.label Purchase Order Service Spend view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #CONSUMPTION view
Analytics.dataCategory #CUBE view
Metadata.allowExtensions true view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.ignorePropagatedAnnotations true view
AbapCatalog.preserveKey true view
Analytics.internalName #LOCAL view
ObjectModel.supportedCapabilities #ANALYTICAL_PROVIDER view
ObjectModel.modelingPattern #ANALYTICAL_CUBE view

Fields (46)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrder PurchaseOrderItem PurchaseOrder Purchasing Document
KEY PurchaseOrderItem PurchaseOrderItem PurchaseOrderItem Purchasing Document Item
Supplier PurchaseOrderItem Supplier Supplier
SupplierName PurchaseOrderItem Supplier Supplier
SupplierCountry
Country _SupplierName Country Venue: Ctry/Reg
PurchasingOrganization PurchaseOrderItem PurchasingOrganization Purchasing Organization
PurchasingOrganizationName PurchaseOrderItem PurchasingOrganization Purchasing Organization
CompanyCode PurchaseOrderItem CompanyCode Receiver Company Code
PurchasingGroup PurchaseOrderItem PurchasingGroup Purchasing Group
PurchasingGroupName PurchaseOrderItem PurchasingGroup Purchasing Group
PurchasingDocumentStatus _PurchaseOrderStatus PurchasingDocumentStatus Short Description
Product PurchaseOrderItem Material Vehicle Model
Material PurchaseOrderItem Material Vehicle Model
ProductGroup PurchaseOrderItem MaterialGroup Product Group
MaterialGroup PurchaseOrderItem MaterialGroup Product Group
Plant PurchaseOrderItem Plant Valuation Area
PlantName PurchaseOrderItem Plant Valuation Area
ProductType Product Type Group
ProductTypeCode ProductType Product Type Group
ServicePerformer ServicePerformer Service Performer
PurchaseOrderDate PurchaseOrderItem PurchaseOrderDate PO Date
CalendarWeek _CalendarDate CalendarWeek Calendar Week
CalendarMonth _CalendarDate CalendarMonth Calendar Month
CalendarQuarter _CalendarDate CalendarQuarter Calendar Quarter
CalendarYear _CalendarDate CalendarYear Year
PurchaseOrderItemCategory PurchaseOrderItemCategory Item Category
DisplayCurrency
TotalNetAmount
InvoiceAmtInDisplayCurrency
_PlantName _PlantName
_Product _Product
_ProductGroup _ProductGroup
_PurchasingOrganizationName _PurchasingOrganizationName
_PurchasingGroupName _PurchasingGroupName
_SupplierName _SupplierName
_CountryName _CountryName
_Plant PurchaseOrderItem _Plant
_MaterialGroup _MaterialGroup
_Material _Material
_PurchasingOrganization PurchaseOrderItem _PurchasingOrganization
_PurchasingGroup PurchaseOrderItem _PurchasingGroup
_Supplier PurchaseOrderItem _Supplier
_PurchasingDocumentStatus _PurchasingDocumentStatus
_PurgDocumentItemCategory _PurgDocumentItemCategory
_Country _Country

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 C_PurOrdServiceSpend.
-- 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: CMMPOSERVICESPND
-- Parameters: P_DisplayCurrency : displaycurrency, P_StartDate : bedat, P_EndDate : bedat

CREATE VIEW C_PurOrdServiceSpend AS
SELECT
  PurchaseOrderItem.PurchaseOrder AS PurchaseOrder,
  PurchaseOrderItem.PurchaseOrderItem AS PurchaseOrderItem,
  PurchaseOrderItem.Supplier AS Supplier,
  PurchaseOrderItem.Supplier AS SupplierName,
  PurchaseOrderItem._Supplier.Country AS SupplierCountry,
  _SupplierName.Country AS Country,
  PurchaseOrderItem.PurchasingOrganization AS PurchasingOrganization,
  PurchaseOrderItem.PurchasingOrganization AS PurchasingOrganizationName,
  PurchaseOrderItem.CompanyCode AS CompanyCode,
  PurchaseOrderItem.PurchasingGroup AS PurchasingGroup,
  PurchaseOrderItem.PurchasingGroup AS PurchasingGroupName,
  _PurchaseOrderStatus.PurchasingDocumentStatus AS PurchasingDocumentStatus,
  PurchaseOrderItem.Material AS Product,
  PurchaseOrderItem.Material AS Material,
  PurchaseOrderItem.MaterialGroup AS ProductGroup,
  PurchaseOrderItem.MaterialGroup AS MaterialGroup,
  PurchaseOrderItem.Plant AS Plant,
  PurchaseOrderItem.Plant AS PlantName,
  cast ( ProductType as producttype) AS ProductType,
  ProductType AS ProductTypeCode,
  ServicePerformer,
  PurchaseOrderItem.PurchaseOrderDate AS PurchaseOrderDate,
  _CalendarDate.CalendarWeek AS CalendarWeek,
  _CalendarDate.CalendarMonth AS CalendarMonth,
  _CalendarDate.CalendarQuarter AS CalendarQuarter,
  _CalendarDate.CalendarYear AS CalendarYear,
  PurchaseOrderItemCategory,
  cast( :P_DisplayCurrency as displaycurrency ) AS DisplayCurrency,
  cast( ServiceEntrySheet.NetAmount as mm_pur_ses_confirmed ) AS TotalNetAmount,
  cast( InvoiceAmtInDisplayCurrency as mm_pur_ana_de_invoice_amount ) AS InvoiceAmtInDisplayCurrency,
  PurchaseOrderItem._Plant AS _Plant,
  PurchaseOrderItem._PurchasingOrganization AS _PurchasingOrganization,
  PurchaseOrderItem._PurchasingGroup AS _PurchasingGroup,
  PurchaseOrderItem._Supplier AS _Supplier
FROM P_PurOrdItmServiceSpnd
LEFT OUTER JOIN P_PurOrdServiceInvoice ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN P_PurOrdServiceEntry ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_PurchaseOrderStatus AS _PurchaseOrderStatus ON PurchaseOrderItem.PurchaseOrder = _PurchaseOrderStatus.PurchaseOrder  -- association [1..1]
LEFT OUTER JOIN I_CalendarDate AS _CalendarDate ON PurchaseOrderItem.PurchaseOrderDate = _CalendarDate.CalendarDate  -- association [1..1]
LEFT OUTER JOIN I_PurchasingDocumentStatus AS _PurchasingDocumentStatus ON purchasingdocumentstatus = _PurchasingDocumentStatus.PurchasingDocumentStatus  -- association [1..1]
LEFT OUTER JOIN I_Material AS _Material ON Material = _Material.Material  -- association [1..1]
LEFT OUTER JOIN I_Product AS _Product ON Product = _Product.Product  -- association [1..1]
LEFT OUTER JOIN I_MaterialGroup AS _MaterialGroup ON MaterialGroup = _MaterialGroup.MaterialGroup  -- association [1..1]
LEFT OUTER JOIN I_ProductGroup AS _ProductGroup ON ProductGroup = _ProductGroup.MaterialGroup  -- association [1..1]
LEFT OUTER JOIN I_PurgDocumentItemCategory AS _PurgDocumentItemCategory ON PurchaseOrderItemCategory = _PurgDocumentItemCategory.PurchasingDocumentItemCategory  -- association [0..1]
LEFT OUTER JOIN I_Country AS _Country ON SupplierCountry = _Country.Country  -- association [1..1]
LEFT OUTER JOIN I_Country AS _CountryName ON country = _CountryName.Country  -- association [1..1]
LEFT OUTER JOIN I_Plant AS _PlantName ON PlantName = _PlantName.Plant  -- association [1..1]
LEFT OUTER JOIN I_Supplier AS _SupplierName ON SupplierName = _SupplierName.Supplier  -- association [1..1]
LEFT OUTER JOIN I_PurchasingOrganization AS _PurchasingOrganizationName ON PurchasingOrganizationName = _PurchasingOrganizationName.PurchasingOrganization  -- association [1..1]
LEFT OUTER JOIN I_PurchasingGroup AS _PurchasingGroupName ON PurchasingGroupName = _PurchasingGroupName.PurchasingGroup  -- association [1..1]
;