R_FINTRANSCASHFLOWACTIVITY

CDS View

Financial Transaction Cash Flow Activity

R_FINTRANSCASHFLOWACTIVITY is a CDS View in S/4HANA. Financial Transaction Cash Flow Activity. It contains 3 fields. 14 CDS views read from this table.

CDS Views using this table (14)

ViewTypeJoinVDMDescription
I_FinTransCndnFmlaVarbl view from COMPOSITE Fin Trans Condition Formula Variable
I_FinTransCndnScale view from COMPOSITE Fin Trans Condition Scaled Interest
I_FinTransCndnSingleDate view from COMPOSITE Fin Trans Condition Single Date
I_FinTransCondition view from COMPOSITE Financial Transaction Condition
I_FinTransFlow view from COMPOSITE Financial Transaction Flow
I_FinTransFlow view union_all COMPOSITE Financial Transaction Flow
I_FinTransInterest view from COMPOSITE Fin Trans Interest Information
I_FinTransInterest view union COMPOSITE Fin Trans Interest Information
P_FinTransAlternativeCondition view inner COMPOSITE Alternative Condition
P_FinTransCshSettlmtFlw view from COMPOSITE
P_FinTransFlowWithOneDirection view from COMPOSITE
P_FinTransFlowWithTwoDirection view from COMPOSITE
P_FinTransPremFlw view from COMPOSITE
R_FinTransCshFlwActyMainCndn view from BASIC Cash Flow Activity Main Condition

Fields (3)

KeyField CDS FieldsUsed in Views
KEY CompanyCode CompanyCode 2
KEY FinancialTransaction FinancialTransaction 2
FinancialInstrProductCategory FinancialInstrProductCategory 4
@AbapCatalog.sqlViewName: 'RFINTRANSCASHACT'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AbapCatalog.buffering.status: #NOT_ALLOWED
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Financial Transaction Cash Flow Activity'
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #L
@Metadata.allowExtensions:false
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@VDM.viewType: #BASIC
define view R_FinTransCashFlowActivity
  as select distinct from vtbfhazu as Activity
    left outer join       vtbfhazu as SuccActivity       on  Activity.bukrs  = SuccActivity.bukrs
                                                         and Activity.rfha   = SuccActivity.rfha
                                                         and Activity.rfhazu = SuccActivity.rofhazu
    left outer join       vtbfhazu as SuccSuccActivity   on  SuccActivity.bukrs  = SuccSuccActivity.bukrs
                                                         and SuccActivity.rfha   = SuccSuccActivity.rfha
                                                         and SuccActivity.rfhazu = SuccSuccActivity.rofhazu
    inner join            vtbfha   as Deal               on  Activity.bukrs = Deal.bukrs
                                                         and Activity.rfha  = Deal.rfha
    left outer join       at06     as ProcessingCategory on  Deal.sanlf        = ProcessingCategory.sanlf
                                                         and Deal.abwtyp       = ProcessingCategory.abwtyp
                                                         and Deal.sfgtyp       = ProcessingCategory.sfgtyp
                                                         and Activity.sfgzustt = ProcessingCategory.sfgzustt
{
  key Activity.bukrs   as CompanyCode,
  key Activity.rfha    as FinancialTransaction,
  key Activity.rfhazu  as FinancialInstrumentActivity,
      Activity.sgsart  as FinancialInstrumentProductType,
      Deal.sanlf       as FinancialInstrProductCategory,
      Deal.rfhazul     as FinInstrLastActiveActivity
}
where
  // for money market and some derivatives

  // cashflow activities can be determined with field RFHAZUX

  (
    (
            Deal.sanlf                =  '020'
      or    Deal.sanlf                =  '510'
      or    Deal.sanlf                =  '520'
      or    Deal.sanlf                =  '530'
      or    Deal.sanlf                =  '540'
      or    Deal.sanlf                =  '550'
      or    Deal.sanlf                =  '560'
      or    Deal.sanlf                =  '570'
      or    Deal.sanlf                =  '580'
      or    Deal.sanlf                =  '740'
      or    Deal.sanlf                =  '770'
      or    Deal.sanlf                =  '790'
      or    Deal.sanlf                =  '850'
      or    Deal.sanlf                =  '860'
    )
    // last active activity

    and(
            Activity.rfhazu           =  Deal.rfhazul
      // cashflow activity for successor

      or(
            Activity.rfhazu           =  SuccActivity.rfhazux
        and Activity.saktiv           <> '3'
      )
      // cashflow activity for successor-successor

      or(
            Activity.rfhazu           =  SuccSuccActivity.rfhazux
        and Activity.saktiv           <> '3'
      )
    )
  )
  // for some derivatives

  // cashflow activities can be determined with database table AT06 (defining which activity categories are posting relevant)

  or(
    (
            Deal.sanlf                =  '610'
      or    Deal.sanlf                =  '620'
      or    Deal.sanlf                =  '630'
      or    Deal.sanlf                =  '640'
      or    Deal.sanlf                =  '760'
    )
    and(
            Activity.rfhazu           =  Deal.rfhazul
      or(
            ProcessingCategory.sebene =  '1'
        and Activity.saktiv           <> '3'
      )
    )
  )
  // for other instruments (securities, fx, some derivatives)

  // always only current activity is relevant

  or(
    (
      (
            Deal.rantyp               =  '2'
        and Deal.sanlf                <> '020'
      )
      or    Deal.sanlf                =  '600'
      or    Deal.sanlf                =  '700'
      or    Deal.sanlf                =  '730'
      or    Deal.sanlf                =  '750'
      or    Deal.sanlf                =  '780'
    )
    and     Activity.rfhazu           =  Deal.rfhazul
  )