R_FINTRANSCONDITION

CDS View

Financial Transaction Condition

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

CDS Views using this table (7)

ViewTypeJoinVDMDescription
I_FinTransCndnScale view inner COMPOSITE Fin Trans Condition Scaled Interest
I_FinTransCndnScale_2 view_entity 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 (70)

KeyField CDS FieldsUsed in Views
KEY CompanyCode CompanyCode 4
KEY ConditionItemValidityStartDate ConditionItemValidityStartDate 4
KEY FinancialInstrumentActivity FinancialInstrumentActivity 4
KEY FinancialTransaction FinancialTransaction 4
KEY FinancialTransactionDirection FinancialTransactionDirection 4
KEY FinConditionItem FinancialConditionScaleItem,FinConditionItem 4
KEY FinConditionSubItem FinConditionSubItem 2
KEY FinInstrConditionLogicGroup FinInstrConditionLogicGroup 3
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
FinCndnDayFracRoundingCat FinCndnDayFracRoundingCat 1
FinCndnDayFracRoundingDcmls FinCndnDayFracRoundingDcmls 1
FinCndnFactorRoundingCategory FinCndnFactorRoundingCategory 1
FinCndnFactorRoundingDecimals FinCndnFactorRoundingDecimals 1
FinCndnLimitAmountCurrency FinCndnLimitAmountCurrency 2
FinCndnPaytDateWrkgDayShft FinCndnPaytDateWrkgDayShft 1
FinCndnProcessingSequenceValue FinCndnProcessingSequenceValue 1
FinCndnRateFactorRndngCategory FinCndnRateFactorRndngCategory 1
FinCndnRateFactorRndngDecimals FinCndnRateFactorRndngDecimals 1
FinCndnRateFixingLockoutPeriod FinCndnRateFixingLockoutPeriod 1
FinCndnScaleLowerLimitAmount FinCndnScaleLowerLimitAmount 2
FinCndnScaleUpperLimitAmount FinCndnScaleUpperLimitAmount 2
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
FinConditionForm FinConditionForm 1
FinConditionHasSingleDateEntry FinConditionHasSingleDateEntry 1
FinConditionInterestCategory FinConditionInterestCategory 2
FinConditionIntrstBaseAmount FinConditionIntrstBaseAmount 1
FinConditionRpaytCurrency FinConditionRpaytCurrency 1
FinConditionRpaytPercentRate FinConditionRpaytPercentRate 1
FinConditionSettlementCrcy FinConditionSettlementCrcy 1
PrcIdxAdjmtDateReference PrcIdxAdjmtDateReference 1
PrcIdxAdjmtDateShftDrctn PrcIdxAdjmtDateShftDrctn 1
PrcIdxAdjmtDateWrkgDayShift PrcIdxAdjmtDateWrkgDayShift 1
PrcIdxAdjmtFixingDateShftDrctn PrcIdxAdjmtFixingDateShftDrctn 1
PrcIdxAdjmtFixingHighDate PrcIdxAdjmtFixingHighDate 1
PrcIdxAdjmtFixingLowDate PrcIdxAdjmtFixingLowDate 1
PrcIdxAdjmtFxngDteWrkgDayShft PrcIdxAdjmtFxngDteWrkgDayShft 1
PrcIdxFctrCalcCompoundingFrqcy PrcIdxFctrCalcCompoundingFrqcy 1
PriceIndexAdjustmentBaseDate PriceIndexAdjustmentBaseDate 1
PriceIndexApplicationMethod PriceIndexApplicationMethod 1
PriceIndexInterpolationMethod PriceIndexInterpolationMethod 1
RefcdIntrstRateAdjmtCondition RefcdIntrstRateAdjmtCondition 1
RefcdPrcIdxAdjmtCondition RefcdPrcIdxAdjmtCondition 1
RndngBaseUntAmtInCndnItmCrcy RndngBaseUntAmtInCndnItmCrcy 1
TreasuryContractType TreasuryContractType 1
TreasuryPriceIndex TreasuryPriceIndex 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,

      // CE2508 Enhancement

      Condition.jnullkon                                                                           as FinConditionForm,
      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,
      // CE2508 Enhancement

      cast(case
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' or Condition.sbktyp = '26' ) and Condition.attrhy is not initial
          then Condition.attrhy
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' or Condition.sbktyp = '26' ) and Condition.ammrhy is not initial
          then Condition.ammrhy
      end as ftr_codn_calc_dte_frequency preserving type )                                         as FinCndnCalcDteFrequency,
      // CE2508 Enhancement

      cast(case
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' or Condition.sbktyp = '26' ) and Condition.attrhy is not initial
          then '1'
        when ( Condition.svmeth = '1' or Condition.svmeth = '2' or Condition.svmeth = '5' or Condition.sbktyp = '26' ) 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,

      // CE2508 Enhancement

      cast( case
        when Condition.sbktyp <> '41' and ( 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,
      // CE2508 Enhancement

      cast( Condition.szinsanp as ftr_refcd_irate_adjmt_cndn preserving type )                     as RefcdIntrstRateAdjmtCondition,
      // CE2508 Enhancement

      cast( Condition.priceindex_rkondref  as ftr_refcd_pi_adjmt_cndn preserving type )            as RefcdPrcIdxAdjmtCondition,


      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,

      //********** New exposed fields for CE2508 550 VDM Mordenization  *************************************************//


      //********** Price Index Adjustment - general attributes **********//


      cast(case
         when Condition.sbktyp = '26'
          then Condition.reference
      end as ftr_priceindex preserving type)                                                       as TreasuryPriceIndex,
      Condition.index_interpolate                                                                  as PriceIndexInterpolationMethod,
      Condition.priceindex_apply                                                                   as PriceIndexApplicationMethod,
      cast(Condition.priceindex_compound_frequency as ftr_pi_factor_compound_freq preserving type) as PrcIdxFctrCalcCompoundingFrqcy,
      cast(Condition.srounddayfraction as ftr_day_frac_rounding_cat  preserving type)              as FinCndnDayFracRoundingCat,
      cast(Condition.rounddecdayfraction as ftr_day_frac_rounding_dcml  preserving type)           as FinCndnDayFracRoundingDcmls,


      // ********** Price Index Adjustment - reference date for index adjustment date **********//


      Condition.index_adj_date_relation                                                            as PrcIdxAdjmtDateReference,
      cast(Condition.index_adj_date_dateshift as ftr_pi_adjmt_dte_wrkg_day_shft  preserving type)  as PrcIdxAdjmtDateWrkgDayShift,
      cast(case
        when Condition.sbktyp = '26' and Condition.index_adj_date_shiftdays < 0
          then '-'
        when Condition.sbktyp = '26' and Condition.index_adj_date_shiftdays >= 0
          then '+'
      end as ftr_pi_adjmt_dte_shft_drctn preserving type)                                          as PrcIdxAdjmtDateShftDrctn,
      cast(Condition.index_adj_date_shiftdays as ftr_pi_adjmt_dte_shft_days  preserving type)      as PrcIdxAdjmtShftNrOfDays,


      //********** Price Index Adjustment - index base value **********//


      Condition.index_base_date                                                                    as PriceIndexAdjustmentBaseDate,
      //      Condition.index_base_value                                                                   as PrcIdxAdjmtBaseValue,



      //********** Price Index Adjustment - fixing date **********//


      Condition.index_fix_date_low                                                                 as PrcIdxAdjmtFixingLowDate,
      Condition.index_fix_date_high                                                                as PrcIdxAdjmtFixingHighDate,
      cast(Condition.index_fix_date_dateshift as ftr_pi_fixng_dte_wrkg_day_shft   preserving type) as PrcIdxAdjmtFxngDteWrkgDayShft,
      cast(case
            when Condition.sbktyp = '26' and Condition.index_fix_date_shiftdays < 0
              then '-'
            when Condition.sbktyp = '26' and Condition.index_fix_date_shiftdays >= 0
              then '+'
      end as ftr_pi_fixng_dte_shft_drctn preserving type)                                          as PrcIdxAdjmtFixingDateShftDrctn,
      cast(Condition.index_fix_date_shiftdays as ftr_pi_fixng_dte_shft_days   preserving type)     as PrcIdxAdjmtFxngDteShftNrOfDays,


      // ********** FX Rate Adjustment - FX rate reference **********//


      cast(case
         when Condition.sbktyp = '41'
          then Condition.swhrkond
      end as ftr_cndn_settlement_currency preserving type)                                         as FinConditionSettlementCrcy,
      case
         when Condition.sbktyp = '41' and Condition.reference is not initial
          then substring(Condition.reference, 1, 30)
      end                                                                                          as ForeignExchangeFixingReference

}
where
  Condition.rgatt is initial