C_APProcFlwNodeClearingDoc

DDL: C_APPROCFLWNODECLEARINGDOC SQL: CAPPRCFLWCLRGDOC Type: view CONSUMPTION

C_APProcFlwNodeClearingDoc is a Consumption CDS View in SAP S/4HANA. It reads from 1 data source (I_OperationalAcctgDocItem) and exposes 45 fields with key fields ParentProcFlowNodeCompanyCode, ParentProcessFlowNodeDocument, ParentProcFlowNodeFiscalYear, ParentProcessFlowNodeDocItem. It has 3 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_OperationalAcctgDocItem clrg inner

Associations (3)

CardinalityTargetAliasCondition
[1..1] P_APProcFlowJournalEntry _journalEntry clrg.CompanyCode = _journalEntry.CompanyCode and clrg.AccountingDocument = _journalEntry.AccountingDocument and clrg.FiscalYear = _journalEntry.FiscalYear
[0..1] I_InternalOrder _InternalOrder $projection.OrderID = _InternalOrder.InternalOrder
[0..1] I_Order _Order $projection.OrderID = _Order.OrderID

Annotations (11)

NameValueLevelField
VDM.viewType #CONSUMPTION view
AbapCatalog.sqlViewName CAPPRCFLWCLRGDOC view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
DataAging.noAgingRestriction false view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #C view
AbapCatalog.preserveKey true view

Fields (45)

KeyFieldSource TableSource FieldDescription
KEY ParentProcFlowNodeCompanyCode bseg CompanyCode
KEY ParentProcessFlowNodeDocument bseg AccountingDocument
KEY ParentProcFlowNodeFiscalYear bseg FiscalYear
KEY ParentProcessFlowNodeDocItem bseg AccountingDocumentItem
ParentProcessFlowNode
ParentProcFlwNodeDocCategory
ProcessFlowNode
ProcessFlowNodeDocument I_OperationalAcctgDocItem AccountingDocument
ProcessFlowNodeDocCategory
FiscalYear I_OperationalAcctgDocItem FiscalYear
CompanyCode I_OperationalAcctgDocItem CompanyCode
CompanyCodeName
ParProcFlwNodeCompanyCodeName
PostingDate I_OperationalAcctgDocItem PostingDate
AccountingDocumentType I_OperationalAcctgDocItem AccountingDocumentType
AccountingDocumentTypeName
AccountingDocCreatedByUser
FullName _journalEntry FullName
TransactionCurrency I_OperationalAcctgDocItem TransactionCurrency
FinancialAccountType I_OperationalAcctgDocItem FinancialAccountType
BusinessArea I_OperationalAcctgDocItem BusinessArea
FunctionalArea I_OperationalAcctgDocItem FunctionalArea
Segment I_OperationalAcctgDocItem Segment
ProfitCenter I_OperationalAcctgDocItem ProfitCenter
ControllingArea I_OperationalAcctgDocItem ControllingArea
CostCenter I_OperationalAcctgDocItem CostCenter
Plant I_OperationalAcctgDocItem Plant
ValuationArea I_OperationalAcctgDocItem ValuationArea
GLAccount I_OperationalAcctgDocItem GLAccount
_GLAccountInCompanyCode I_OperationalAcctgDocItem _GLAccountInCompanyCode
Supplier I_OperationalAcctgDocItem Supplier
_Supplier I_OperationalAcctgDocItem _Supplier
Customer I_OperationalAcctgDocItem Customer
_Customer I_OperationalAcctgDocItem _Customer
_AccountingDocumentType I_OperationalAcctgDocItem _AccountingDocumentType
SalesDocument I_OperationalAcctgDocItem SalesDocument
_SalesDocument I_OperationalAcctgDocItem _SalesDocument
OrderID I_OperationalAcctgDocItem OrderID
_Order _Order
_InternalOrder _InternalOrder
FixedAsset I_OperationalAcctgDocItem FixedAsset
MasterFixedAsset I_OperationalAcctgDocItem MasterFixedAsset
_FixedAsset I_OperationalAcctgDocItem _FixedAsset
AuthorizationGroup
ProfitCtrResponsibleUser
@VDM.viewType: #CONSUMPTION
@AbapCatalog.sqlViewName: 'CAPPRCFLWCLRGDOC'
@AbapCatalog.compiler.compareFilter: true

@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED // FI_DOCUMNT


@ClientHandling.algorithm: #SESSION_VARIABLE
@DataAging.noAgingRestriction: false

@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass:  #MIXED
@ObjectModel.usageType.serviceQuality: #C
@AbapCatalog.preserveKey:true
define view C_APProcFlwNodeClearingDoc
  as select distinct from I_OperationalAcctgDocItem as bseg
    inner join            I_OperationalAcctgDocItem as clrg on  clrg.CompanyCode                = bseg.CompanyCode
                                                            and clrg.FiscalYear                 = bseg.ClearingDocFiscalYear
                                                            and clrg.AccountingDocument         = bseg.ClearingAccountingDocument
                                                            and clrg.ClearingAccountingDocument = bseg.ClearingAccountingDocument

  association [1..1] to P_APProcFlowJournalEntry as _journalEntry on  clrg.CompanyCode        = _journalEntry.CompanyCode
                                                                  and clrg.AccountingDocument = _journalEntry.AccountingDocument
                                                                  and clrg.FiscalYear         = _journalEntry.FiscalYear

association [0..1] to I_InternalOrder      as _InternalOrder                 on  $projection.OrderID           = _InternalOrder.InternalOrder
association [0..1] to I_Order              as _Order                         on  $projection.OrderID           = _Order.OrderID

{

      //Parent Document

      @ObjectModel.text.element: ['ParProcFlwNodeCompanyCodeName']
      @UI.textArrangement: #TEXT_LAST
  key bseg.CompanyCode                                                                                                                    as ParentProcFlowNodeCompanyCode,
  key bseg.AccountingDocument                                                                                                             as ParentProcessFlowNodeDocument,
  key bseg.FiscalYear                                                                                                                     as ParentProcFlowNodeFiscalYear,
  key bseg.AccountingDocumentItem                                                                                                         as ParentProcessFlowNodeDocItem,
      concat(concat(bseg.AccountingDocument,concat('000',bseg.AccountingDocumentItem)),concat(bseg.CompanyCode,concat(bseg.FiscalYear,'3')))                               as ParentProcessFlowNode,
      cast( '3' as char1  )                                                                                                               as ParentProcFlwNodeDocCategory,

      //Current Document

      concat(concat(clrg.AccountingDocument,'000000'),concat(bseg.CompanyCode,concat(clrg.FiscalYear,'4')))                               as ProcessFlowNode,
      clrg.AccountingDocument                                                                                                             as ProcessFlowNodeDocument,
      cast( '4' as char1 )                                                                                                                as ProcessFlowNodeDocCategory,
      clrg.FiscalYear                                                                                                                     as FiscalYear ,
      @ObjectModel.text.element: ['CompanyCodeName']
      @UI.textArrangement: #TEXT_LAST
      clrg.CompanyCode                                                                                                                    as CompanyCode,
      @ObjectModel.readOnly
      @Consumption.semanticObject: 'CompanyCode'
      @Semantics.text: true
      clrg._CompanyCode.CompanyCodeName                                                                                                   as CompanyCodeName,
      @ObjectModel.readOnly
      @Consumption.semanticObject: 'ParentProcFlowNodeCompanyCode'
      @Semantics.text: true
      bseg._CompanyCode.CompanyCodeName                                                                                                   as ParProcFlwNodeCompanyCodeName,

      //Additional Info

      clrg.PostingDate                                                                                                                    as PostingDate,
      clrg.AccountingDocumentType                                                                                                         as AccountingDocumentType,
      clrg._AccountingDocumentType._Text[1:Language = $session.system_language].AccountingDocumentTypeName                                as AccountingDocumentTypeName,
      clrg._JournalEntry.AccountingDocCreatedByUser                                                                                       as AccountingDocCreatedByUser,
      _journalEntry.FullName                                                                                                              as FullName,
      @Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
      case clrg.DebitCreditCode
        when 'H' then  clrg.AmountInTransactionCurrency
        else (clrg.AmountInTransactionCurrency * (-1))
      end                                                                                                                                 as AmountInTransactionCurrency,
      @Semantics.currencyCode:true
      clrg.TransactionCurrency                                                                                                            as TransactionCurrency,

      //Auth

      @Consumption.hidden: true
      clrg.FinancialAccountType                                                                                                           as FinancialAccountType,
      @Consumption.hidden: true
      clrg.BusinessArea                                                                                                                   as BusinessArea,
      @Consumption.hidden: true
      clrg.FunctionalArea                                                                                                                 as FunctionalArea,
      @Consumption.hidden: true
      clrg.Segment                                                                                                                        as Segment,
      //@Consumption.hidden: true

      clrg.ProfitCenter                                                                                                                   as ProfitCenter,
      @Consumption.hidden: true
      clrg.ControllingArea                                                                                                                as ControllingArea,
      @Consumption.hidden: true
      clrg.CostCenter                                                                                                                     as CostCenter,
      @Consumption.hidden: true
      clrg.Plant                                                                                                                          as Plant,
      @Consumption.hidden: true
      clrg.ValuationArea                                                                                                                  as ValuationArea,
      @Consumption.hidden: true
      clrg.GLAccount                                                                                                                      as GLAccount,
      @Consumption.hidden: true
      clrg._GLAccountInCompanyCode                                                                                                        as _GLAccountInCompanyCode,
      @Consumption.hidden: true
      clrg.Supplier                                                                                                                       as Supplier,
      @Consumption.hidden: true
      clrg._Supplier                                                                                                                      as _Supplier,
      @Consumption.hidden: true
      clrg.Customer                                                                                                                       as Customer,
      @Consumption.hidden: true
      clrg._Customer                                                                                                                      as _Customer,
      @Consumption.hidden: true
      clrg._AccountingDocumentType                                                                                                        as _AccountingDocumentType,
      @Consumption.hidden: true
      clrg.SalesDocument                                                                                                                  as SalesDocument,
      @Consumption.hidden: true
      clrg._SalesDocument                                                                                                                 as _SalesDocument,
      @Consumption.hidden: true
      clrg.OrderID                                                                                                                        as OrderID,
      @Consumption.hidden: true
      _Order                                                                                                                              as _Order,
      @Consumption.hidden: true
      _InternalOrder                                                                                                                      as _InternalOrder,
      @Consumption.hidden: true
      clrg.FixedAsset                                                                                                                     as FixedAsset,
      @Consumption.hidden: true
      clrg.MasterFixedAsset                                                                                                               as MasterFixedAsset,
      @Consumption.hidden: true
      clrg._FixedAsset                                                                                                                    as _FixedAsset,
      @Consumption.hidden: true
      bseg._Supplier.AuthorizationGroup, //GDPR Supplier Authorization

      @Consumption.hidden: true
      clrg._ProfitCenter.ProfitCtrResponsibleUser
}
where
  bseg.AccountingDocument <> bseg.ClearingAccountingDocument
  and bseg.FinancialAccountType = 'K'