P_RealTimeMfgOrderReserve

DDL: P_REALTIMEMFGORDERRESERVE SQL: PRTMORSRV Type: view COMPOSITE Package: FINS_PCC_EBW

Event-based Order Reserves

P_RealTimeMfgOrderReserve is a Composite CDS View that provides data about "Event-based Order Reserves" in SAP S/4HANA. It reads from 2 data sources (I_GLAccountLineItemRawData, I_Ledger) and exposes 12 fields with key fields OrderID, Ledger. Part of development package FINS_PCC_EBW.

Data Sources (2)

SourceAliasJoin Type
I_GLAccountLineItemRawData _item from
I_Ledger _ledger inner

Parameters (2)

NameTypeDefault
P_FiscalPeriodStartDate budat
P_FiscalPeriodEndDate budat

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PRTMORSRV view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
VDM.private true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
AbapCatalog.preserveKey true view

Fields (12)

KeyFieldSource TableSource FieldDescription
KEY OrderID OrderID
KEY Ledger SourceLedger
AmountInCompanyCodeCurrency
AmountInGlobalCurrency
AmountInFreeDefinedCurrency1
AmountInFreeDefinedCurrency2
AmountInFreeDefinedCurrency3
AmountInFreeDefinedCurrency4
AmountInFreeDefinedCurrency5
AmountInFreeDefinedCurrency6
AmountInFreeDefinedCurrency7
AmountInFreeDefinedCurrency8
@AbapCatalog.sqlViewName: 'PRTMORSRV'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
//@EndUserText.label: 'Event-based Order Reserves'

@VDM.viewType: #COMPOSITE
@VDM.private:true
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@AbapCatalog.preserveKey:true

define view P_RealTimeMfgOrderReserve
  with parameters
    P_FiscalPeriodStartDate    : budat,
    P_FiscalPeriodEndDate      : budat
  as select from I_GLAccountLineItemRawData   as _item
    inner join   I_Ledger as _ledger on  _ledger.Ledger     = _item.SourceLedger
    //and _ledger.IsLeadingLedger = 'X'  //support only leading leader in CE2005

                                     and _ledger.LedgerType = '' //standard ledger only

{

  key OrderID,
  key SourceLedger            as Ledger,

      sum(AmountInCompanyCodeCurrency)          as AmountInCompanyCodeCurrency,
      sum(AmountInGlobalCurrency)          as AmountInGlobalCurrency,
      sum(AmountInFreeDefinedCurrency1)          as AmountInFreeDefinedCurrency1,
      sum(AmountInFreeDefinedCurrency2)          as AmountInFreeDefinedCurrency2,
      sum(AmountInFreeDefinedCurrency3)          as AmountInFreeDefinedCurrency3,
      sum(AmountInFreeDefinedCurrency4)          as AmountInFreeDefinedCurrency4,
      sum(AmountInFreeDefinedCurrency5)          as AmountInFreeDefinedCurrency5,
      sum(AmountInFreeDefinedCurrency6)          as AmountInFreeDefinedCurrency6,
      sum(AmountInFreeDefinedCurrency7)          as AmountInFreeDefinedCurrency7,
      sum(AmountInFreeDefinedCurrency8)          as AmountInFreeDefinedCurrency8,

      /////////////////////////////////////////////////////////////////////////////////////

      // Period Amount Fields

      /////////////////////////////////////////////////////////////////////////////////////

      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInCompanyCodeCurrency
            end)  as PeriodAmountInCompanyCodeCrcy,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInGlobalCurrency
            end)          as PeriodAmountInGlobalCurrency,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency1
            end)        as PeriodAmountInFreeDfndCrcy1,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency2
            end)        as PeriodAmountInFreeDfndCrcy2,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency3
            end) as PeriodAmountInFreeDfndCrcy3,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency4
            end) as PeriodAmountInFreeDfndCrcy4,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency5
            end) as PeriodAmountInFreeDfndCrcy5,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency6
            end) as PeriodAmountInFreeDfndCrcy6,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency7
            end) as PeriodAmountInFreeDfndCrcy7,
      sum(case
            when (PostingDate >= $parameters.P_FiscalPeriodStartDate and PostingDate <= $parameters.P_FiscalPeriodEndDate) then
                AmountInFreeDefinedCurrency8
            end) as PeriodAmountInFreeDfndCrcy8

}
where
      SubLedgerAcctLineItemType   = '09110'
  and BusinessTransactionCategory      = 'EBWP'
  and(
      PostingDate <= $parameters.P_FiscalPeriodEndDate
  )
group by
  OrderID,
  SourceLedger