P_PurgSpendOpenReqn

DDL: P_PURGSPENDOPENREQN SQL: PMMPSOPENREQN Type: view CONSUMPTION

Purchasing Spend for Open Requisition

P_PurgSpendOpenReqn is a Consumption CDS View that provides data about "Purchasing Spend for Open Requisition" in SAP S/4HANA. It reads from 1 data source (I_Purchaserequisitionitem) and exposes 20 fields with key fields PurchaseRequisition, PurchaseRequisitionItem.

Data Sources (1)

SourceAliasJoin Type
I_Purchaserequisitionitem PurchaseRequisitionItem from

Parameters (2)

NameTypeDefault
P_Date sydatum
P_DisplayCurrency displaycurrency

Annotations (7)

NameValueLevelField
AbapCatalog.sqlViewName PMMPSOPENREQN view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Purchasing Spend for Open Requisition view
VDM.private true view
VDM.viewType #CONSUMPTION view
AccessControl.personalData.blocking #NOT_REQUIRED view

Fields (20)

KeyFieldSource TableSource FieldDescription
KEY PurchaseRequisition I_Purchaserequisitionitem PurchaseRequisition
KEY PurchaseRequisitionItem I_Purchaserequisitionitem PurchaseRequisitionItem
PurchasingDocumentCategory I_Purchaserequisitionitem PurchasingDocumentCategory
PurchasingDocumentItemCategory I_Purchaserequisitionitem PurchasingDocumentItemCategory
PurReqnReleaseStatus PurReqnReleaseStatus
PurchaseRequisitionType PurchaseRequisitionType
IsPurReqnCmplt IsPurReqnCmplt
PurReqnCmpltnsCat PurReqnCmpltnsCat
PurchasingOrganization I_Purchaserequisitionitem PurchasingOrganization
PurchasingGroup PurchasingGroup
Supplier FixedSupplier
CompanyCode CompanyCode
Plant Plant
Material Material
MaterialGroup I_Purchaserequisitionitem MaterialGroup
PurchaseRequisitionReleaseDate PurchaseRequisitionReleaseDate
DisplayCurrency
PurchaseRequisitionPrice PurchaseRequisitionPrice
PurReqnItemCurrency PurReqnItemCurrency
RequestedQuantity RequestedQuantity
@AbapCatalog.sqlViewName: 'PMMPSOPENREQN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Purchasing Spend for Open Requisition'
@VDM.private: true
@VDM.viewType:#CONSUMPTION
@AccessControl.personalData.blocking: #NOT_REQUIRED 
define view P_PurgSpendOpenReqn 

with parameters 
  P_Date : sydatum,
  P_DisplayCurrency : displaycurrency
  
as select from I_Purchaserequisitionitem as PurchaseRequisitionItem

//   inner join      I_CalendarDate  as _Date                       on PurchaseRequisitionReleaseDate = _Date.CalendarDate

{
 key PurchaseRequisitionItem.PurchaseRequisition,
 
 key  PurchaseRequisitionItem.PurchaseRequisitionItem,
      PurchaseRequisitionItem.PurchasingDocumentCategory,
      PurchaseRequisitionItem.PurchasingDocumentItemCategory,
     
      PurReqnReleaseStatus,
      
      PurchaseRequisitionType,
      
      IsPurReqnCmplt,
      
      PurReqnCmpltnsCat,
    
      PurchaseRequisitionItem.PurchasingOrganization,
      PurchasingGroup, 
      FixedSupplier as Supplier,
      CompanyCode,
      
      Plant, 
      Material,
      PurchaseRequisitionItem.MaterialGroup,
    
      PurchaseRequisitionReleaseDate,
//      _Date.CalendarYear,

//      CalendarQuarter,

//      CalendarMonth,

//      CalendarWeek,

//      YearQuarter,

      
      $parameters.P_DisplayCurrency as DisplayCurrency,
      
      @Semantics.amount.currencyCode: 'PurReqnItemCurrency'
      PurchaseRequisitionPrice,
      @Semantics.currencyCode: true
      PurReqnItemCurrency,
      
      RequestedQuantity,
      
      cast( DIVISION((cast( currency_conversion(  amount => PurchaseRequisitionPrice, 
                            source_currency => PurReqnItemCurrency, 
                            target_currency => $parameters.P_DisplayCurrency,
                            exchange_rate_date => PurchaseRequisitionReleaseDate,
                            exchange_rate_type => 'M',
                           error_handling => 'FAIL_ON_ERROR' ) as mm_future_spend ) * RequestedQuantity), PurReqnPriceQuantity, 3)    //2830203

       as mm_future_spend ) as  ExpectedSpend
  
}where ( ( PurReqnReleaseStatus = '03' ) or IsPurReqnCmplt = 'X'  and (PurReqnCmpltnsCat = 'A' or PurReqnCmpltnsCat = 'P' ) )
    and DeliveryDate  <= DATS_ADD_DAYS( :P_Date, 180, 'FAIL' )
    and DeliveryDate > $parameters.P_Date
    and IsDeleted = ''                                      //2820724

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PURCHASEREQUISITIONITEM"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/