P_PurchasingSpndComparison1

DDL: P_PURCHASINGSPNDCOMPARISON1 SQL: PMMPURSPNDCOMP1 Type: view CONSUMPTION

Purchasing Spend Comparison 1

P_PurchasingSpndComparison1 is a Consumption CDS View that provides data about "Purchasing Spend Comparison 1" in SAP S/4HANA. It reads from 4 data sources (I_PurgAnalyticsConfiguration, P_PurchasingSpndComparison, I_PurchaseOrder, I_PurchaseOrderItem) and exposes 48 fields with key fields PurchaseOrder, PurchaseOrderItem, PurchaseOrderItem.

Data Sources (4)

SourceAliasJoin Type
I_PurgAnalyticsConfiguration MigrationStatus union_all
P_PurchasingSpndComparison P_PurchasingSpndComparison from
I_PurchaseOrder PurchaseOrder inner
I_PurchaseOrderItem PurchaseOrderItem inner

Parameters (3)

NameTypeDefault
P_DisplayCurrency displaycurrency
P_StartDate bedat
P_EndDate bedat

Annotations (8)

NameValueLevelField
AbapCatalog.sqlViewName PMMPURSPNDCOMP1 view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #CONSUMPTION view
VDM.private true view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Purchasing Spend Comparison 1 view

Fields (48)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrder PurchaseOrder
KEY PurchaseOrderItem PurchaseOrderItem
Supplier Supplier
PurchasingOrganization PurchasingOrganization
PurchasingGroup PurchasingGroup
PurgDocHdrCompanyCode PurgDocHdrCompanyCode
CompanyCode CompanyCode
PurchaseOrderType PurchaseOrderType
PurchaseOrderDate PurchaseOrderDate
CreatedByUser CreatedByUser
Currency DocumentCurrency
MaterialGroup MaterialGroup
Material Material
Plant Plant
PurchaseOrderItemCategory PurchaseOrderItemCategory
PurchaseOrderCategory PurchaseOrderCategory
ProductType ProductType
ServicePerformer ServicePerformer
AccountAssignmentCategory AccountAssignmentCategory
MultipleAcctAssgmtDistribution MultipleAcctAssgmtDistribution
PurchaseOrderQuantityUnit PurchaseOrderQuantityUnit
DocumentCurrency DocumentCurrency
PurchaseOrderAmount PurchaseOrderAmount
ReturnItems
PurchaseOrder
KEY PurchaseOrderItem PurchaseOrderItem
Supplier Supplier
PurchasingOrganization PurchasingOrganization
PurchasingGroup PurchasingGroup
PurgDocHdrCompanyCode I_PurchaseOrder CompanyCode
CompanyCode I_PurchaseOrderItem CompanyCode
PurchaseOrderType PurchaseOrderType
PurchaseOrderDate PurchaseOrderDate
CreatedByUser CreatedByUser
Currency I_PurchaseOrderItem DocumentCurrency
MaterialGroup MaterialGroup
Material Material
Plant Plant
PurchaseOrderItemCategory PurchaseOrderItemCategory
PurchaseOrderCategory PurchaseOrderCategory
ProductType ProductType
ServicePerformer ServicePerformer
AccountAssignmentCategory AccountAssignmentCategory
MultipleAcctAssgmtDistribution MultipleAcctAssgmtDistribution
PurchaseOrderQuantityUnit PurchaseOrderQuantityUnit
DocumentCurrency I_PurchaseOrderItem DocumentCurrency
ReturnItems
OrderQuantity OrderQuantity
@AbapCatalog.sqlViewName: 'PMMPURSPNDCOMP1'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType : #CONSUMPTION
@VDM.private: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Purchasing Spend Comparison 1'
define view P_PurchasingSpndComparison1
  with parameters
    P_DisplayCurrency : displaycurrency,
    P_StartDate       : bedat,
    P_EndDate         : bedat


  as select from P_PurchasingSpndComparison ( P_DisplayCurrency: $parameters.P_DisplayCurrency,
                                              P_StartDate  : $parameters.P_StartDate,
                                              P_EndDate   : $parameters.P_EndDate) 

{
  key  PurchaseOrder,
  key  PurchaseOrderItem,

       Supplier,
       PurchasingOrganization,
       PurchasingGroup,
       PurgDocHdrCompanyCode,
       CompanyCode,
       PurchaseOrderType,
       PurchaseOrderDate,
       CreatedByUser,
       DocumentCurrency                                 as Currency,
       MaterialGroup,
       Material,
       Plant,
       PurchaseOrderItemCategory,
       PurchaseOrderCategory,
       ProductType,
       ServicePerformer,
       AccountAssignmentCategory,
       MultipleAcctAssgmtDistribution,
       PurchaseOrderQuantityUnit,
       DocumentCurrency,

       PurchaseOrderAmount,
       case when IsReturnsItem = 'X' then -1 else 1 end as ReturnItems,
       OrderQuantity


}

union all select from I_PurgAnalyticsConfiguration as MigrationStatus

  inner join          I_PurchaseOrderItem          as PurchaseOrderItem on MigrationStatus.IsIntrastatReportingRelevant = ''
  inner join          I_PurchaseOrder              as PurchaseOrder     on PurchaseOrder.PurchaseOrder = PurchaseOrderItem.PurchaseOrder

{
  key  PurchaseOrderItem.PurchaseOrder,
  key  PurchaseOrderItem,

       Supplier,
       PurchasingOrganization,
       PurchasingGroup,
       PurchaseOrder.CompanyCode as PurgDocHdrCompanyCode,
       PurchaseOrderItem.CompanyCode as CompanyCode,
       PurchaseOrderType,
       PurchaseOrderDate,
       CreatedByUser,
       PurchaseOrderItem.DocumentCurrency               as Currency,
       MaterialGroup,
       Material,
       Plant,
       PurchaseOrderItemCategory,
       PurchaseOrderCategory,
       ProductType,
       ServicePerformer,
       AccountAssignmentCategory,
       MultipleAcctAssgmtDistribution,
       PurchaseOrderQuantityUnit,
       PurchaseOrderItem.DocumentCurrency,
       currency_conversion(
                                   amount             => PurchaseOrderItem.NetAmount,
                                   source_currency    => PurchaseOrderItem.DocumentCurrency,
                                   target_currency    => :P_DisplayCurrency,
                                   exchange_rate_date => PurchaseOrderDate,
                                   exchange_rate_type => 'M',
                                   error_handling => 'FAIL_ON_ERROR'
                                )                       as PurchaseOrderAmount,
       case when IsReturnsItem = 'X' then -1 else 1 end as ReturnItems,
       OrderQuantity
}
where
      PurchaseOrder.PurchasingDocumentDeletionCode     = ''
  and ReleaseIsNotCompleted                            = ''
  and PurchasingCompletenessStatus                     = ''
  and PurchaseOrderItem.PurchasingDocumentDeletionCode = ''
  and PurchaseOrder.DocumentCurrency != ''
  and PurchaseOrderDate                                <= $parameters.P_EndDate
  and PurchaseOrderDate                                >= $parameters.P_StartDate
  and not (IsStatisticalItem = 'X' and Material = '' )
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PURCHASEORDER",
"I_PURCHASEORDERITEM",
"I_PURGANALYTICSCONFIGURATION",
"P_PURCHASINGSPNDCOMPARISON"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/