P_GR_CustomerLedgerBasicItem

DDL: P_GR_CUSTOMERLEDGERBASICITEM Type: view_entity COMPOSITE Package: FKK_ID_GR_REP

Greece Customer Ledger Basic Item

P_GR_CustomerLedgerBasicItem is a Composite CDS View that provides data about "Greece Customer Ledger Basic Item" in SAP S/4HANA. It reads from 7 data sources and exposes 41 fields with key fields CADocumentNumber, CompanyCode, CABPItemNumber, CARepetitionItemNumber, CASubItemNumber. Part of development package FKK_ID_GR_REP.

Data Sources (7)

SourceAliasJoin Type
I_CADocumentBPItem fica_itm_bp inner
I_CADocumentBPItem fica_itm_bp_clear inner
I_CADocument ficadoc inner
I_CADocument ficadoc inner
I_GLAccountInCompanyCode recon_account from
I_GLAccountInCompanyCode recon_account union_all
I_CASubTransactionText subtransactiontext inner

Parameters (1)

NameTypeDefault
P_CompanyCode fis_bukrs

Annotations (8)

NameValueLevelField
VDM.viewType #COMPOSITE view
AccessControl.authorizationCheck #NOT_REQUIRED view
AccessControl.personalData.blocking #NOT_REQUIRED view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MIXED view
VDM.private true view

Fields (41)

KeyFieldSource TableSource FieldDescription
KEY CADocumentNumber I_CADocumentBPItem CADocumentNumber
KEY CompanyCode I_CADocumentBPItem CompanyCode
KEY CABPItemNumber I_CADocumentBPItem CABPItemNumber
KEY CARepetitionItemNumber I_CADocumentBPItem CARepetitionItemNumber
KEY CASubItemNumber I_CADocumentBPItem CASubItemNumber
BusinessPartner I_CADocumentBPItem BusinessPartner
BusinessPartnerName
BPTaxType
CAReferenceDocument I_CADocument CAReferenceDocument
CAPostingDate I_CADocumentBPItem CAPostingDate
CAApplicationArea I_CADocumentBPItem CAApplicationArea
CAMainTransaction I_CADocumentBPItem CAMainTransaction
CASubTransaction I_CADocumentBPItem CASubTransaction
CASubTransactionName I_CASubTransactionText CASubTransactionName
FiscalYearVariant
GLAccount I_GLAccountInCompanyCode GLAccount
AlternativeGLAccount I_GLAccountInCompanyCode AlternativeGLAccount
CompanyCodeCurrency I_CADocumentBPItem CompanyCodeCurrency
CAAmountInLocalCurrency I_CADocumentBPItem CAAmountInLocalCurrency
CAClearingStatus I_CADocumentBPItem CAClearingStatus
CADocumentNumber
KEY CompanyCode I_CADocumentBPItem CompanyCode
KEY CABPItemNumber I_CADocumentBPItem CABPItemNumber
KEY CARepetitionItemNumber I_CADocumentBPItem CARepetitionItemNumber
KEY CASubItemNumber I_CADocumentBPItem CASubItemNumber
BusinessPartner I_CADocumentBPItem BusinessPartner
BusinessPartnerName
BPTaxType
CAReferenceDocument I_CADocument CAReferenceDocument
CAPostingDate I_CADocument CAPostingDate
CAApplicationArea I_CADocumentBPItem CAApplicationArea
CAMainTransaction
CASubTransaction
CASubTransactionName
FiscalYearVariant
GLAccount I_GLAccountInCompanyCode GLAccount
AlternativeGLAccount I_GLAccountInCompanyCode AlternativeGLAccount
CompanyCodeCurrency I_CADocumentBPItem CompanyCodeCurrency
CAAmountInLocalCurrency
CAClearingStatus I_CADocumentBPItem CAClearingStatus
CAClearingDocumentNumber
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck:  #NOT_REQUIRED
@AccessControl.personalData.blocking:  #NOT_REQUIRED
@AbapCatalog.viewEnhancementCategory: [#NONE]
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #D,
  sizeCategory: #XXL,
  dataClass: #MIXED
}
@VDM.private:true

@Consumption.dbHints: [ 'USE_HEX_PLAN', 'FILTER_THRU_JOIN', 'FILTER_RULE' ]
define view entity P_GR_CustomerLedgerBasicItem
with parameters
    P_CompanyCode                 : fis_bukrs 
    
  as select from I_GLAccountInCompanyCode as recon_account
    inner join         I_CADocumentBPItem       as fica_itm_bp on(
      fica_itm_bp.CompanyCode                 = recon_account.CompanyCode
      and fica_itm_bp.CAReconciliationAccount = recon_account.GLAccount
    )
    inner join         I_CADocument             as ficadoc     on(
          ficadoc.CADocumentNumber = fica_itm_bp.CADocumentNumber
        )
inner join I_CASubTransactionText as subtransactiontext on (
          fica_itm_bp.CAApplicationArea = subtransactiontext.CAApplicationArea
          and fica_itm_bp.CAMainTransaction = subtransactiontext.CAMainTransaction
          and fica_itm_bp.CASubTransaction = subtransactiontext.CASubTransaction
          and subtransactiontext.Language = $session.system_language
)
{
  key  fica_itm_bp.CADocumentNumber,
  key  fica_itm_bp.CompanyCode,
  key  fica_itm_bp.CABPItemNumber,
  key  fica_itm_bp.CARepetitionItemNumber,
  key  fica_itm_bp.CASubItemNumber,
       fica_itm_bp.BusinessPartner,
       fica_itm_bp._BusinessPartner.BusinessPartnerName,
       concat( fica_itm_bp._BusinessPartner._CurrentDefaultAddress._AddressDefaultRepresentation.Country, '0' ) as BPTaxType,
       ficadoc.CAReferenceDocument,
       fica_itm_bp.CAPostingDate,
       fica_itm_bp.CAApplicationArea,
       fica_itm_bp.CAMainTransaction,
       fica_itm_bp.CASubTransaction,
       subtransactiontext.CASubTransactionName,
       fica_itm_bp._CompanyCode.FiscalYearVariant,
       recon_account.GLAccount,
       recon_account.AlternativeGLAccount,
       fica_itm_bp.CompanyCodeCurrency,
       @Semantics: { amount : {currencyCode: 'CompanyCodeCurrency'} }
       case when fica_itm_bp.CAAmountInLocalCurrency >= 0 // Positive Invoice item is Debit(Positive)

       then cast( fica_itm_bp.CAAmountInLocalCurrency as fis_dr_hsl )
       else cast( 0 as fis_dr_hsl )
       end as DebitAmountInCoCodeCrcy, 
       @Semantics: { amount : {currencyCode: 'CompanyCodeCurrency'} }
       case when fica_itm_bp.CAAmountInLocalCurrency < 0 // Negative Invoice item is Credit(Positive)

       then cast( fica_itm_bp.CAAmountInLocalCurrency * -1 as fis_dr_hsl )
       else cast( 0 as fis_dr_hsl )
       end as CreditAmountInCoCodeCrcy,// Total = Debit - Credit

       @Semantics: { amount : {currencyCode: 'CompanyCodeCurrency'} }
       fica_itm_bp.CAAmountInLocalCurrency,
       fica_itm_bp.CAClearingStatus,
       fica_itm_bp.CAClearingDocumentNumber
}
where
  fica_itm_bp.CAStatisticalItemCode is initial
  and fica_itm_bp.CompanyCode = $parameters.P_CompanyCode
  

// Clearing BP Items 

union all select from I_GLAccountInCompanyCode as recon_account
  inner join            I_CADocumentBPItem       as fica_itm_bp_clear on(
    fica_itm_bp_clear.CompanyCode                 = recon_account.CompanyCode
    and fica_itm_bp_clear.CAReconciliationAccount = recon_account.GLAccount
  )
  inner join            I_CADocument             as ficadoc           
  on ficadoc.CADocumentNumber = fica_itm_bp_clear.CAClearingDocumentNumber
  
{
  key  ficadoc.CADocumentNumber,
  key  fica_itm_bp_clear.CompanyCode,
  key  fica_itm_bp_clear.CABPItemNumber,
  key  fica_itm_bp_clear.CARepetitionItemNumber,
  key  fica_itm_bp_clear.CASubItemNumber,
       fica_itm_bp_clear.BusinessPartner,
       fica_itm_bp_clear._BusinessPartner.BusinessPartnerName,
       concat( fica_itm_bp_clear._BusinessPartner._CurrentDefaultAddress._AddressDefaultRepresentation.Country, '0' ) as BPTaxType,
       ficadoc.CAReferenceDocument,
       ficadoc.CAPostingDate,
       fica_itm_bp_clear.CAApplicationArea,
       cast ( '' as hvorg_kk )            as CAMainTransaction,
       cast ( '' as tvorg_kk )            as CASubTransaction,
       cast ( 'Cleared Item' as tvorg_txt )            as CASubTransactionName,
       fica_itm_bp_clear._CompanyCode.FiscalYearVariant,
       recon_account.GLAccount,
       recon_account.AlternativeGLAccount,
       fica_itm_bp_clear.CompanyCodeCurrency,
       case when fica_itm_bp_clear.CAAmountInLocalCurrency < 0 // --> Clearing a Credit Invoice item --> Clearing Item is Debit(positiv)

       then cast( fica_itm_bp_clear.CAAmountInLocalCurrency * -1 as fis_dr_hsl )
       else cast( 0 as fis_dr_hsl )
       end as DebitAmountInCoCodeCrcy,
       case when fica_itm_bp_clear.CAAmountInLocalCurrency >= 0 // --> Clearing a Debit Invoice item --> Clearing Item is Credit(positiv)

       then cast( fica_itm_bp_clear.CAAmountInLocalCurrency as fis_dr_hsl )
       else cast( 0 as fis_dr_hsl )
       end as CreditAmountInCoCodeCrcy, 
       cast ( fica_itm_bp_clear.CAAmountInLocalCurrency * -1 as betrh_kk ) as CAAmountInLocalCurrency,// Total = Debit - Credit

       fica_itm_bp_clear.CAClearingStatus,
       cast ( '' as opbel_kk  )    as CAClearingDocumentNumber
}
where
  fica_itm_bp_clear.CAStatisticalItemCode is initial
  and fica_itm_bp_clear.CAClearingStatus = '9'
  and fica_itm_bp_clear.CompanyCode = $parameters.P_CompanyCode