P_PURCHASEORDERCOMMITMENT

CDS View

P_PURCHASEORDERCOMMITMENT is a CDS View in S/4HANA. It contains 21 fields. 1 CDS views read from this table.

CDS Views using this table (1)

ViewTypeJoinVDMDescription
C_PurchaseOrderCommitment view from CONSUMPTION Commitments of Purchase Order

Fields (21)

KeyField CDS FieldsUsed in Views
KEY AccountAssignment AccountAssignment 1
KEY AccountAssignmentType AccountAssignmentType 1
KEY BudgetPeriod BudgetPeriod 1
KEY CashLedgerAccount CashLedgerAccount 1
KEY CompanyCode CompanyCode 1
KEY CostCenter CostCenter 1
KEY FiscalYearPeriod FiscalYearPeriod 1
KEY FunctionalArea FunctionalArea 1
KEY Fund Fund 1
KEY GLAccount GLAccount 1
KEY GrantID GrantID 1
KEY ProfitCenter ProfitCenter 1
KEY PubSecBudgetAccount PubSecBudgetAccount 1
KEY PubSecBudgetAccountCoCode PubSecBudgetAccountCoCode 1
KEY PubSecBudgetCnsmpnType PubSecBudgetCnsmpnType 1
KEY PubSecBudgetIsRelevant PubSecBudgetIsRelevant 1
KEY SponsoredClass SponsoredClass 1
KEY SponsoredProgram SponsoredProgram 1
KEY WBSElement WBSElement 1
KEY WBSElementInternalID WBSElementInternalID 1
_FunctionalArea _FunctionalArea 1
@AbapCatalog.sqlViewName: 'PPURORDCOMMIT'
@AbapCatalog.compiler.compareFilter: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED
@VDM.private: true
@VDM.viewType: #COMPOSITE

define view P_PurchaseOrderCommitment
  as select from I_GLAccountLineItem

    inner join   I_PurchaseOrder as PurchaseOrder on I_GLAccountLineItem.PurchasingDocument = PurchaseOrder.PurchaseOrder
    association[0..1] to I_PredictionLedger as _PredictionLedger on $projection.Ledger = _PredictionLedger.PredictionLedger

  -- :* association to the Account Assignment child node
  //  association [1..1] to I_PurOrdAccountAssignment       as _PurOrdAcctAssignment        on  _PurOrdAcctAssignment.PurchaseOrder              = $projection.PurchasingDocument

  //                                                                                        and _PurOrdAcctAssignment.PurchaseOrderItem          = $projection.PurchasingDocumentItem

  //                                                                                        and _PurOrdAcctAssignment.AccountAssignmentNumber    = $projection.AccountAssignmentNumber

{

  key PurchasingDocument,
  key PurchasingDocumentItem,
  key AccountAssignmentNumber,
  key SourceReferenceDocSubitem,
  key GLAccount,
  key ControllingArea,
  key FunctionalArea,
  key I_GLAccountLineItem.CompanyCode,
  key I_GLAccountLineItem.FiscalYearPeriod,
  key CashLedgerAccount,
  key Fund,
  key GrantID,
  key BudgetPeriod,
  key PubSecBudgetAccount,
  key PubSecBudgetAccountCoCode,
  key PubSecBudgetIsRelevant,
  key PubSecBudgetCnsmpnType,
  key CostCenter,
  key ProfitCenter,
  key Segment,
  key WBSElementInternalID,
  key WBSElement,
  key AccountAssignmentType,
  key AccountAssignment,
  key SponsoredProgram,
  key SponsoredClass,
  

      Ledger,
      IsCommitment,

      // ------------------AGGREGATIONS----------------------


      // aggregation of amounts in transaction currency is commited amount

      @DefaultAggregation: #SUM
      @Semantics.amount.currencyCode: 'TransactionCurrency'
      sum (
        AmountInTransactionCurrency
      ) as AmountInTransactionCurrency,

      //// aggregation of positive amounts (created by PO) in transaction currency is planned amount

      //      @DefaultAggregation: #SUM

      //      @Semantics.amount.currencyCode: 'TransactionCurrency'

      //     sum (

      //      case

      //          when ( AmountInTransactionCurrency < 0 ) // ignore negative amounts

      //              then

      //                  0

      //              else

      //                  AmountInTransactionCurrency end

      //      ) as PlannedAmountInTransactnCrncy,


      @DefaultAggregation: #SUM
      @Semantics.amount.currencyCode: 'CompanyCodeCurrency'
      sum (
        AmountInCompanyCodeCurrency
      ) as AmountInCompanyCodeCurrency,


      @DefaultAggregation: #SUM
      @Semantics.amount.currencyCode: 'GlobalCurrency'
      sum (
        AmountInGlobalCurrency
      ) as AmountInGlobalCurrency,

      //------------------------------------------------------


      //  @Semantics: { unitOfMeasure: true }

      //  BaseUnit,

      //  @Semantics: { quantity.unitOfMeasure: 'BaseUnit' }

      //  _PurOrdAcctAssignment.Quantity            as  PlannedQuantity,



      @Semantics.currencyCode: true
      TransactionCurrency,
      @Semantics.currencyCode: true
      CompanyCodeCurrency,
      @Semantics.currencyCode: true
      GlobalCurrency,

      _FunctionalArea

}
where
      SourceReferenceDocumentType = 'PORD'
  and IsCommitment                = 'X'
  and _PredictionLedger.LedgerIsRelevantForAvailyCtrl = 'X'

group by
  PurchasingDocument,
  PurchasingDocumentItem,
  AccountAssignmentNumber,
  SourceReferenceDocSubitem,
  IsCommitment,
  GLAccount,
  ControllingArea,
  FunctionalArea,
  TransactionCurrency,
  CompanyCodeCurrency,
  GlobalCurrency,
  ControllingObjectCurrency,
  SourceLedger,
  I_GLAccountLineItem.CompanyCode,
  I_GLAccountLineItem.FiscalYearPeriod,
  FiscalYear,
  Ledger,
  CashLedgerAccount,
  Fund,
  GrantID,
  BudgetPeriod,
  PubSecBudgetAccount,
  PubSecBudgetAccountCoCode,
  PubSecBudgetIsRelevant,
  PubSecBudgetCnsmpnType,
  CostCenter,
  ProfitCenter,
  Segment,
  WBSElementInternalID,
  WBSElement,
  AccountAssignmentType,
  AccountAssignment,
  SponsoredProgram,
  SponsoredClass