P_FR_FECClearingDocCALogic

DDL: P_FR_FECCLEARINGDOCCALOGIC SQL: PFRFECCLRCALGC Type: view CONSUMPTION Package: GLO_FIN_IS_AUDIT_FR

Clearing document and date logic for CA

P_FR_FECClearingDocCALogic is a Consumption CDS View that provides data about "Clearing document and date logic for CA" in SAP S/4HANA. It reads from 1 data source (I_CADocumentBPItem) and exposes 4 fields with key fields CADocumentNumber, CAClearingDocumentNumber, CAClearingDate, CAClearingStatus. Part of development package GLO_FIN_IS_AUDIT_FR.

Data Sources (1)

SourceAliasJoin Type
I_CADocumentBPItem I_CADocumentBPItem from

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName PFRFECCLRCALGC view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
VDM.viewType #CONSUMPTION view
VDM.private true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.type #INHERITED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Clearing document and date logic for CA view

Fields (4)

KeyFieldSource TableSource FieldDescription
KEY CADocumentNumber I_CADocumentBPItem CADocumentNumber
KEY CAClearingDocumentNumber
KEY CAClearingDate
KEY CAClearingStatus
@AbapCatalog.sqlViewName: 'PFRFECCLRCALGC'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey:true
@VDM.viewType: #CONSUMPTION
@VDM.private: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling: { type: #INHERITED, algorithm: #SESSION_VARIABLE }
@EndUserText.label: 'Clearing document and date logic for CA'
define view P_FR_FECClearingDocCALogic   as select from I_CADocumentBPItem
{
  key I_CADocumentBPItem.CADocumentNumber,
  key max( I_CADocumentBPItem.CAClearingDocumentNumber ) as CAClearingDocumentNumber,  // since it is only one clearing doc max will give the right document

  key max( I_CADocumentBPItem.CAClearingDate ) as CAClearingDate,                 
  key min( I_CADocumentBPItem.CAClearingStatus ) as CAClearingStatus        // if an uncleared item exists we know that the fica doc is partially cleared

}
group by
  I_CADocumentBPItem.CADocumentNumber
having
  (
  // 1  clearing document fully cleared case

    count ( distinct I_CADocumentBPItem.CAClearingDocumentNumber ) = 1      
    and min( I_CADocumentBPItem.CAClearingStatus ) = '9'
  )
  or(
  // 1 clearing document partially cleared case

    count( distinct I_CADocumentBPItem.CAClearingDocumentNumber )  = 2      // number of clearing docs need to be 2 since empty clearingdoc is counted as one also

    and min( I_CADocumentBPItem.CAClearingStatus )  = ''
  )