R_FINTRANSCONDITION

CDS View

Financial Transaction Condition

R_FINTRANSCONDITION is a CDS View in S/4HANA. Financial Transaction Condition. It contains 53 fields. 6 CDS views read from this table.

CDS Views using this table (6)

ViewTypeJoinVDMDescription
I_FinTransCndnScale view inner COMPOSITE Fin Trans Condition Scaled Interest
I_FinTransCndnSingleDate view inner COMPOSITE Fin Trans Condition Single Date
I_FinTransCndnSingleDate view left_outer COMPOSITE Fin Trans Condition Single Date
I_FinTransCondition view inner COMPOSITE Financial Transaction Condition
I_FinTransCondition view left_outer COMPOSITE Financial Transaction Condition
I_FinTransInterest view inner COMPOSITE Fin Trans Interest Information

Fields (53)

KeyField CDS FieldsUsed in Views
KEY CompanyCode CompanyCode 3
KEY ConditionItemValidityStartDate ConditionItemValidityStartDate 3
KEY FinancialInstrumentActivity FinancialInstrumentActivity 3
KEY FinancialTransaction FinancialTransaction 3
KEY FinancialTransactionDirection FinancialTransactionDirection 3
KEY FinConditionItem FinConditionItem 3
KEY FinConditionSubItem FinConditionSubItem 2
KEY FinInstrConditionLogicGroup FinInstrConditionLogicGroup 2
AverageInterestLowerLimitRate AverageInterestLowerLimitRate 1
AverageInterestRateSpreadValue AverageInterestRateSpreadValue 1
AverageInterestUpperLimitRate AverageInterestUpperLimitRate 1
AverageIntrstRateResetCalcEvt AverageIntrstRateResetCalcEvt 1
AverageIntrstRateRndngCategory AverageIntrstRateRndngCategory 1
AverageIntrstRateRndngDecimals AverageIntrstRateRndngDecimals 1
AverageIntrstRateWeightingCat AverageIntrstRateWeightingCat 1
AvgIntrstRateHasUsedLowerLimit AvgIntrstRateHasUsedLowerLimit 1
AvgIntrstRateHasUsedUpperLimit AvgIntrstRateHasUsedUpperLimit 1
ConditionPercentageRate ConditionPercentageRate 1
DueDate DueDate 1
DueDateIsAsEndDateMonthEnd DueDateIsAsEndDateMonthEnd 1
ExponentialIntrstSettlmtFrqcy ExponentialIntrstSettlmtFrqcy 1
FinCndnAmountRoundingCategory FinCndnAmountRoundingCategory 1
FinCndnAmountRoundingUnit FinCndnAmountRoundingUnit 1
FinCndnBaseFactorRndngCategory FinCndnBaseFactorRndngCategory 1
FinCndnBaseFactorRndngDecimals FinCndnBaseFactorRndngDecimals 1
FinCndnCrsRefcdAccmlnCndnGrp FinCndnCrsRefcdAccmlnCndnGrp 1
FinCndnFactorRoundingCategory FinCndnFactorRoundingCategory 1
FinCndnFactorRoundingDecimals FinCndnFactorRoundingDecimals 1
FinCndnLimitAmountCurrency FinCndnLimitAmountCurrency 1
FinCndnPaytDateWrkgDayShft FinCndnPaytDateWrkgDayShft 1
FinCndnProcessingSequenceValue FinCndnProcessingSequenceValue 1
FinCndnRateFactorRndngCategory FinCndnRateFactorRndngCategory 1
FinCndnRateFactorRndngDecimals FinCndnRateFactorRndngDecimals 1
FinCndnRateFixingLockoutPeriod FinCndnRateFixingLockoutPeriod 1
FinCndnScaleLowerLimitAmount FinCndnScaleLowerLimitAmount 1
FinCndnScaleUpperLimitAmount FinCndnScaleUpperLimitAmount 1
FinConditionConditionCategory FinConditionConditionCategory 2
FinConditionConditionType FinConditionConditionType 1
FinConditionFactoryCalendar1 FinConditionFactoryCalendar1 1
FinConditionFactoryCalendar2 FinConditionFactoryCalendar2 1
FinConditionFactoryCalendar3 FinConditionFactoryCalendar3 1
FinConditionFactoryCalendar4 FinConditionFactoryCalendar4 1
FinConditionFactoryCalendar5 FinConditionFactoryCalendar5 1
FinConditionFixedAmount FinConditionFixedAmount 1
FinConditionFixedAmountCrcy FinConditionFixedAmountCrcy 1
FinConditionHasSingleDateEntry FinConditionHasSingleDateEntry 1
FinConditionInterestCategory FinConditionInterestCategory 2
FinConditionIntrstBaseAmount FinConditionIntrstBaseAmount 1
FinConditionRpaytCurrency FinConditionRpaytCurrency 1
FinConditionRpaytPercentRate FinConditionRpaytPercentRate 1
InterestFirstPeriodRate InterestFirstPeriodRate 1
RndngBaseUntAmtInCndnItmCrcy RndngBaseUntAmtInCndnItmCrcy 1
TreasuryContractType TreasuryContractType 1
@AbapCatalog.sqlViewName: 'RFINTRANSCNDN'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.buffering.status: #NOT_ALLOWED
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Financial Transaction Condition'
@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_FinTransCondition
  as select from vtbfinko as Condition
{
      //exposed fields


  key Condition.bukrs                                                           as CompanyCode,
  key Condition.rfha                                                            as FinancialTransaction,
  key Condition.rfhazu                                                          as FinancialInstrumentActivity,
  key Condition.rkondgr                                                         as FinancialTransactionDirection,
  key Condition.rkond                                                           as FinConditionItem,
  key Condition.dguel_kp                                                        as ConditionItemValidityStartDate,
  key Condition.nstufe                                                          as FinConditionSubItem,

      cast(
       Condition.logic_rkond as ftr_instr_cndn_logic_group preserving type )    as FinInstrConditionLogicGroup,
      Condition.rantyp                                                          as TreasuryContractType,
      cast( Condition.sbktyp as ftr_cndn_condition_category preserving type )   as FinConditionConditionCategory,
      cast( Condition.skoart as ftr_cndn_condition_type preserving type )       as FinConditionConditionType,

      Condition.szbmeth                                                         as InterestCalculationMethod,
      cast ( case
        when Condition.jexpozins      = 'X' then '1'
        when Condition.jprozr         = 'X' then '2'
        when Condition.jprozr         = 'Y' then '3'
        when Condition.jexpointfactor = 'X' then '4'
        when Condition.jexpozins      = 'L' then '5'
        when Condition.jexpointfactor = 'L' then '6'
        when Condition.jexpointfactor = 'A' then '7'
        else '0'
        end as tfmsintcalc preserving type )                                    as InterestCalculationType,
      case
      //scaled(incremental)

        when ( Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27') and Condition.sstaff = '1'
          then '06'
      //scaled(interval)

        when ( Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27') and Condition.sstaff = '2'
          then '07'
      //zero condition

        when ( Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27') and Condition.jnullkon = '1'
          then '01'
      //amount

        when ( Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27') and Condition.bkond is not initial and Condition.swhrkond is not initial
          then '05'
      //fixed interest

        when ( Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27') and Condition.pkond is not initial
          then '02'
      //formula

        when ( Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27') and Condition.sformref is not initial and Condition.sformref <> '0003'
          then '04'
      //variable interest

        when ( Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27') and Condition.szsref is not initial
          then '03'
      end                                                                       as FinConditionInterestCategory,
      case
        when     (Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27')
          then Condition.pkond
        end                                                                     as ConditionPercentageRate,
      case
        when     (Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27')
          then Condition.sformref
        else
          ''
      end                                                                       as FinConditionFormulaReference,
      case
        when     (Condition.sbktyp = '20' or Condition.sbktyp = '15' or Condition.sbktyp = '27')
             and ( Condition.sformref is initial or Condition.sformref = '0003' )
          then Condition.szsref
        else
          ''
      end                                                                       as InterestReference,
      @Semantics.amount.currencyCode: 'FinConditionFixedAmountCrcy'
      cast( case
        when     (Condition.sbktyp = '20' or Condition.sbktyp = '15')
          then Condition.bkond
      end as ftr_cndn_fixed_amount preserving type )                            as FinConditionFixedAmount,
      cast( case
        when     (Condition.sbktyp = '20' or Condition.sbktyp = '15')
             and Condition.bkond is not initial
          then Condition.swhrkond
      end as ftr_cndn_fixed_amount_currency preserving type )                   as FinConditionFixedAmountCrcy,
      cast( case
        when (Condition.sbktyp = '12' or Condition.sbktyp = '13' or Condition.sbktyp = '14')
          then Condition.pkond
        end as ftr_cndn_rpayt_percent_rate preserving type )                    as FinConditionRpaytPercentRate,
      @Semantics.amount.currencyCode: 'FinConditionRpaytCurrency'
      case
        when (Condition.sbktyp = '12' or Condition.sbktyp = '13' or Condition.sbktyp = '14')
          then Condition.bbasis
        end                                                                     as FinConditionRpaytBaseAmount,
      @Semantics.amount.currencyCode: 'FinConditionRpaytCurrency'
      cast( case
        when (Condition.sbktyp = '12' or Condition.sbktyp = '13' or Condition.sbktyp = '14')
          then Condition.bkond
        end as ftr_cndn_repayment_amount preserving type )                      as FinConditionRpaytAmount,
      cast( case
        when (Condition.sbktyp = '12' or Condition.sbktyp = '13' or Condition.sbktyp = '14')
          then Condition.swhrkond
        end as ftr_cndn_rpayt_amount_currency preserving type )                 as FinConditionRpaytCurrency,
      cast( case
        when Condition.sfvmeth = '06'
          or Condition.sfvmeth = '07'
          or Condition.sfvmeth = '08'
          or ( Condition.sfvmeth = '03' and Condition.sbktyp = '21')
          or ( Condition.svmeth = '5' and ( Condition.sbktyp = '13' or Condition.sbktyp = '14' ))
          then 'X'
        end as ftr_hassingledate preserving type )                              as FinConditionHasSingleDateEntry,
      Condition.dvalut                                                          as CalculationDate,
      cast( Condition.svmeth as ftr_cndn_calc_date_update_meth preserving type )as FinCndnCalcDteUpdateMethod,
      cast(case
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' ) and Condition.attrhy is not initial
          then Condition.attrhy
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' ) and Condition.ammrhy is not initial
          then Condition.ammrhy
      end as ftr_codn_calc_dte_frequency preserving type )                      as FinCndnCalcDteFrequency,
      cast(case
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' ) and Condition.attrhy is not initial
          then '1'
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' ) and Condition.ammrhy is not initial
          then '0'
      end as ftr_codn_calc_dte_unit preserving type )                           as FinCndnCalcDteFrqcyUnit,
      cast(
      case
        when Condition.sincl = '0'
          then ''
        else 'X'
        end as ftr_dateisinclusive preserving type )                            as CalcDateIsAsEndDateInclusive,
      
      cast( 
        Condition.svult  as calc_dte_as_end_dte_month_end preserving type )     as CalcDateIsAsEndDateMonthEnd,
      cast( 
      Condition.svwerk as ftr_cndn_calc_date_wrk_day_sft preserving type )      as FinCndnCalcDteWrkgDayShft,
      cast( case
        when Condition.avgstage < 0
          then '-'
        when Condition.avgstage >= 0
          then '+'
      end as ftr_cndn_calc_dte_shft_drctn preserving type )                     as FinCndnCalcDteShftDrctn,
      cast( Condition.avgstage as ftr_cndn_calc_dte_shft_days preserving type ) as FinCndnCalcDteShftNrOfDays,

      Condition.dfaell                                                          as DueDate,
      cast( Condition.sfmeth as ftr_cndn_due_date_update_meth preserving type ) as FinCndnDueDteUpdateMethod,
      cast( case
        when ( Condition.sfmeth = '1' or Condition.sfmeth = '2' or Condition.sfmeth = '5' ) and Condition.attrhy is not initial
          then Condition.attrhy
        when ( Condition.sfmeth = '1' or Condition.sfmeth = '2' or Condition.sfmeth = '5' ) and Condition.ammrhy is not initial
          then Condition.ammrhy
      end as ftr_cndn_due_date_frequency preserving type )                      as FinCndnDueDteFrequency,
      cast( case
        when ( Condition.sfmeth = '1' or Condition.sfmeth = '2' or Condition.sfmeth = '5' ) and Condition.attrhy is not initial
          then '1'
        when ( Condition.sfmeth = '1' or Condition.sfmeth = '2' or Condition.sfmeth = '5' ) and Condition.ammrhy is not initial
          then '0'
      end as ftr_cndn_due_date_frqcy_unit preserving type )                     as FinCndnDueDteFrqcyUnit,
      cast (case
        when Condition.sfincl = '0'
          then ''
        else 'X'
        end as ftr_dateisinclusive preserving type )                            as DueDateIsAsEndDateInclusive,
      
      cast( Condition.sfult as due_dte_as_end_date_month_end preserving type )  as DueDateIsAsEndDateMonthEnd,
      cast( Condition.sfwerk as ftr_cndn_due_date_wrk_day_sft preserving type ) as FinCndnDueDteWrkgDayShft,
      cast( case
        when Condition.afgstage < 0
          then '-'
        when Condition.afgstage >= 0
          then '+'
      end as ftr_cndn_due_date_shift_drctn preserving type )                    as FinCndnDueDteShftDrctn,
      Condition.afgstage                                                        as FinCndnDueDteShftNrOfDays,

      cast( Condition.skalid as ftr_cndn_factory_calendar1 preserving type )    as FinConditionFactoryCalendar1,
      cast( Condition.skalid2 as ftr_cndn_factory_calendar2 preserving type )   as FinConditionFactoryCalendar2,
      cast( Condition.skalid3 as ftr_cndn_factory_calendar3 preserving type )   as FinConditionFactoryCalendar3,
      cast( Condition.skalid4 as ftr_cndn_factory_calendar4 preserving type )   as FinConditionFactoryCalendar4,
      cast( Condition.skalid5 as ftr_cndn_factory_calendar5 preserving type )   as FinConditionFactoryCalendar5,


      @Semantics.amount.currencyCode: 'FinCndnLimitAmountCurrency'
      Condition.bugrenz                                                         as FinCndnScaleLowerLimitAmount,
      @Semantics.amount.currencyCode: 'FinCndnLimitAmountCurrency'
      Condition.bogrenz                                                         as FinCndnScaleUpperLimitAmount,
      @Semantics.amount.currencyCode: 'FinCndnLimitAmountCurrency'
      Condition.bugrenz                                                         as FinCndnItemLowerLimitAmount,
      @Semantics.amount.currencyCode: 'FinCndnLimitAmountCurrency'
      Condition.bogrenz                                                         as FinCndnItemUpperLimitAmount,
      cast( case
        when Condition.bugrenz is not initial or Condition.bogrenz is not initial
          then Condition.swhrkond
      end as ftr_cndn_limit_amount_currency preserving type )                   as FinCndnLimitAmountCurrency,

      // new

      Condition.ammrhyzv                                                        as ExponentialIntrstSettlmtFrqcy,
      Condition.skalidwt                                                        as IntrstCalcMethFactoryCalendar,
      Condition.ppayment                                                        as FinancialConditionPaymentRate,
      Condition.pkond1stper                                                     as InterestFirstPeriodRate,
      Condition.savgweight                                                      as AverageIntrstRateWeightingCat,
      Condition.sroundavginterest                                               as AverageIntrstRateRndngCategory,
      Condition.rounddecavginterest                                             as AverageIntrstRateRndngDecimals,
      Condition.pavgspread                                                      as AverageInterestRateSpreadValue,
      Condition.javgcap                                                         as AvgIntrstRateHasUsedUpperLimit,
      Condition.pavgcap                                                         as AverageInterestUpperLimitRate,
      Condition.javgfloor                                                       as AvgIntrstRateHasUsedLowerLimit,
      Condition.pavgfloor                                                       as AverageInterestLowerLimitRate,
      Condition.sfactorreset                                                    as AverageIntrstRateResetCalcEvt,
      Condition.sroundratefactor                                                as FinCndnRateFactorRndngCategory,
      Condition.rounddecratefactor                                              as FinCndnRateFactorRndngDecimals,
      Condition.sroundfactor                                                    as FinCndnFactorRoundingCategory,
      Condition.rounddecfactor                                                  as FinCndnFactorRoundingDecimals,
      Condition.sroundbasefactor                                                as FinCndnBaseFactorRndngCategory,
      Condition.rounddecbasefactor                                              as FinCndnBaseFactorRndngDecimals,
      Condition.sround                                                          as FinCndnAmountRoundingCategory,
      Condition.broundunit                                                      as FinCndnAmountRoundingUnit,
      @Semantics.amount.currencyCode: 'FinConditionFixedAmountCrcy'
      Condition.bbasisunit                                                      as RndngBaseUntAmtInCndnItmCrcy,
      @Semantics.amount.currencyCode: 'FinConditionFixedAmountCrcy'
      cast ( case
        when (Condition.sbktyp = '20' or Condition.sbktyp = '15')
          then Condition.bbasis
        end as ftr_cndn_intrst_base_amount )                                    as FinConditionIntrstBaseAmount,

      Condition.sbasis                                                          as FinCndnCalcBaseReference,
      Condition.ssequence                                                       as FinCndnProcessingSequenceValue,
      Condition.jbmonat                                                         as FinCndnAmountTimeUnit,
      Condition.jugrenz                                                         as FinCndnItmHasUsedLowerLimitAmt,
      Condition.jogrenz                                                         as FinCndnItmHasUsedUpperLimitAmt,
      Condition.adgstage                                                        as FinCndnRateFixingLockoutPeriod,
      Condition.sum_rkond                                                       as FinCndnCrsRefcdAccmlnCndnGrp,
      cast ( case Condition.szeitant
        when '0' then '0'
        when '1' then '2'
        when '2' then '1'
        when '3' then '0'
        when '4' then '0'
        when '5' then '2'
        when '6' then '1'
        when '7' then '2'
        when '8' then '1'
      end as tfmsfstper preserving type )                                        as FinCndnFirstPeriodCalcMethod,
      cast ( case Condition.szeitant
        when '0' then '0'
        when '1' then '2'
        when '2' then '1'
        when '3' then '2'
        when '4' then '1'
        when '5' then '0'
        when '6' then '0'
        when '7' then '1'
        when '8' then '2'
      end as tfmslstper preserving type )                                       as FinCndnLastPeriodCalcMethod,
      cast( Condition.sfranz  as tb_sfranze_new )                               as FinCndnDueDteShiftToTermEnd,
      Condition.sdwerk                                                          as FinCndnPaytDateWrkgDayShft,
      Condition.jsofverr                                                        as FinCndnRpaytSettlmt
}
where
  Condition.rgatt is initial