P_ACTVENTPROJACTCOSTSFORLEDGER

DDL: P_ACTVENTPROJACTCOSTSFORLEDGER SQL: PACTENTPROJLED Type: view COMPOSITE

P_ACTVENTPROJACTCOSTSFORLEDGER is a Composite CDS View in SAP S/4HANA. It reads from 4 data sources (P_IsLeadingLedger, I_GLAccountLineItemRawData, P_ActvPROJECTSWITHPROJCAT6, I_LedgerSourceLedger) and exposes 28 fields with key fields FiscalYear, LedgerFiscalYear, FiscalPeriod, FiscalYearPeriod, PostingDate.

Data Sources (4)

SourceAliasJoin Type
P_IsLeadingLedger Ledger inner
I_GLAccountLineItemRawData ProjCstLineItm inner
P_ActvPROJECTSWITHPROJCAT6 Project from
I_LedgerSourceLedger SourceLedger inner

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName PACTENTPROJLED view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AbapCatalog.buffering.status #NOT_ALLOWED view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #D view
VDM.viewType #COMPOSITE view
VDM.private true view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (28)

KeyFieldSource TableSource FieldDescription
KEY FiscalYear I_GLAccountLineItemRawData FiscalYear
KEY LedgerFiscalYear I_GLAccountLineItemRawData LedgerFiscalYear
KEY FiscalPeriod I_GLAccountLineItemRawData FiscalPeriod
KEY FiscalYearPeriod I_GLAccountLineItemRawData FiscalYearPeriod
KEY PostingDate I_GLAccountLineItemRawData PostingDate
AccountingDocument I_GLAccountLineItemRawData AccountingDocument
LedgerGLLineItem I_GLAccountLineItemRawData LedgerGLLineItem
GLAccount I_GLAccountLineItemRawData GLAccount
ChartOfAccounts I_GLAccountLineItemRawData ChartOfAccounts
CompanyCode P_ActvPROJECTSWITHPROJCAT6 CompanyCode
ProfitCenter P_ActvPROJECTSWITHPROJCAT6 ProfitCenter
ControllingArea P_ActvPROJECTSWITHPROJCAT6 ControllingArea
ProjectUUID P_ActvPROJECTSWITHPROJCAT6 ProjectUUID
ProjectInternalID I_GLAccountLineItemRawData ProjectInternalID
ProjectType P_ActvPROJECTSWITHPROJCAT6 ProjectType
Project P_ActvPROJECTSWITHPROJCAT6 ProjectExternalID
ControllingObjectCurrency P_ActvPROJECTSWITHPROJCAT6 ProjectCurrency
GlobalCurrency I_GLAccountLineItemRawData GlobalCurrency
ProjectDescription P_ActvPROJECTSWITHPROJCAT6 ProjectDescription
AvailabilityControlProfile P_ActvPROJECTSWITHPROJCAT6 AvailabilityControlProfile
AvailabilityControlIsActive P_ActvPROJECTSWITHPROJCAT6 AvailabilityControlIsActive
AvailyCtrlTimeRangeType
BudgetCurrencyRole
PlanningCategory
ProjectSummaryTaskUUID P_ActvPROJECTSWITHPROJCAT6 ProjectSummaryTaskUUID
CreationDate I_GLAccountLineItemRawData CreationDate
AmountInObjectCurrency
AmountInGlobalCurrency
@AbapCatalog.sqlViewName: 'PACTENTPROJLED'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AbapCatalog.buffering.status: #NOT_ALLOWED
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass:  #MIXED
@ObjectModel.usageType.serviceQuality: #D
@VDM.viewType: #COMPOSITE
@VDM.private: true
@ClientHandling.algorithm: #SESSION_VARIABLE
define view P_ACTVENTPROJACTCOSTSFORLEDGER
  as select from P_ActvPROJECTSWITHPROJCAT6 as Project
    inner join   I_GLAccountLineItemRawData as ProjCstLineItm on ProjCstLineItm.ProjectInternalID = Project.ProjectInternalID
                                                             and ProjCstLineItm.Project = Project.Project
    inner join   I_LedgerSourceLedger       as SourceLedger   on ProjCstLineItm.SourceLedger = SourceLedger.SourceLedger
    inner join   P_IsLeadingLedger          as Ledger         on SourceLedger.Ledger = Ledger.Ledger
{
  key ProjCstLineItm.FiscalYear,
  key ProjCstLineItm.LedgerFiscalYear, //key

  key ProjCstLineItm.FiscalPeriod,
  key ProjCstLineItm.FiscalYearPeriod,
  key ProjCstLineItm.PostingDate,
      ProjCstLineItm.AccountingDocument,
      ProjCstLineItm.LedgerGLLineItem,
      ProjCstLineItm.GLAccount,
      ProjCstLineItm.ChartOfAccounts,
      Project.CompanyCode, //key

      Project.ProfitCenter, //key

      Project.ControllingArea,
      Project.ProjectUUID,
      ProjCstLineItm.ProjectInternalID,
      Project.ProjectType,
      Project.ProjectExternalID as Project,
      @Semantics.currencyCode: true
      Project.ProjectCurrency                                    as ControllingObjectCurrency,
      @Semantics.currencyCode: true
      ProjCstLineItm.GlobalCurrency,
      Project.ProjectDescription,
      Project.AvailabilityControlProfile,
      Project.AvailabilityControlIsActive,
      Project._AvailabilityCtrlProfile.AvailyCtrlTimeRangeType,
      Project._AvailabilityCtrlProfile.BudgetCurrencyRole,
      cast( cast( 'ACT01' as abap.char( 10  )) as fcom_category) as PlanningCategory,
      Project.ProjectSummaryTaskUUID,
      ProjCstLineItm.CreationDate,

      @DefaultAggregation: #SUM
      @Semantics.amount.currencyCode: 'ControllingObjectCurrency'
      sum(ProjCstLineItm.AmountInObjectCurrency)                 as AmountInObjectCurrency,

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


}

where
      ProjCstLineItm.CompanyCode          = Project.CompanyCode
  and      
   IsCommitment != 'X'
  and       not(
          (
            ControllingDebitCreditCode          = 'A'
          )
          or(
                  ControllingDebitCreditCode    = 'S'
            and(
                  BusinessTransactionType       = 'KOAO'
              or  BusinessTransactionType       = 'KOAE'
            )
            and(
                  PartnerProject                = ' '
              and PartnerOrder                  = ' '
              and PartnerSalesDocument          = ' '
              and PartnerProjectNetwork         = ' '
              and PartnerProjectNetworkActivity = ' '
              and PartnerBusinessProcess        = ' '
              and PartnerCostObject             = ' '
            )
          )
          or(
                  ControllingDebitCreditCode    = 'S'
            and(
                  BusinessTransactionType       = 'KOAO'
              or  BusinessTransactionType       = 'KOAE'
            )
            and(
                  PartnerProject                =  Project.Project
            )
          )
        )

group by
  Project.CompanyCode,  //

  Project.ProfitCenter, //

  Project.ControllingArea,
  ProjectUUID,
  ProjCstLineItm.ProjectInternalID,
  Project.ProjectType,
  FiscalYear,
  LedgerFiscalYear, //

  Project.Project,
  ControllingObjectCurrency,
  GlobalCurrency,
  FiscalPeriod,
  ProjCstLineItm.FiscalYearPeriod,
  ProjCstLineItm.PostingDate,
  ProjCstLineItm.GLAccount,
  ProjCstLineItm.ChartOfAccounts,
  Project.ProjectExternalID,
  Project.ProjectCurrency,
  Project._AvailabilityCtrlProfile.AvailyCtrlTimeRangeType,
  Project._AvailabilityCtrlProfile.BudgetCurrencyRole,
  //  SemanticTag.SemanticTag,

  ProjCstLineItm.AccountingDocument,
  ProjCstLineItm.LedgerGLLineItem,
  ProjectDescription,
  AvailabilityControlProfile,
  AvailabilityControlIsActive,
  AvailyCtrlTimeRangeType,
  BudgetCurrencyRole,
  ProjectSummaryTaskUUID,
  ProjCstLineItm.CreationDate