I_CmmdtyHedgeTransFlowActivity

DDL: I_CMMDTYHEDGETRANSFLOWACTIVITY SQL: ICMHDGTRANS Type: view COMPOSITE

Financial Transaction Flow

I_CmmdtyHedgeTransFlowActivity is a Composite CDS View that provides data about "Financial Transaction Flow" in SAP S/4HANA. It reads from 7 data sources and exposes 33 fields with key fields CmmdtyHedgeConstellationUUID, CmmdtyHedgeCnstltnRecordType, CmmdtyHedgeConstellationDeal, CmmdtyHdgConstellationDealType.

Data Sources (7)

SourceAliasJoin Type
I_CompanyCodeStdVH CompanyCode inner
I_CommodityHedgePlanExposure Exposures inner
I_FinTransActivity FinTransActivity inner
P_CmmdtyHdgExpsrRqdVersion P_CmmdtyHdgExpsrRqdVersion inner
vtbfha Transaction inner
I_CmmdtyHdgTransFlowDetails TransactionFlow inner
I_FinancialInstrProdTypeText TransProductType inner

Parameters (5)

NameTypeDefault
P_CmmdtyHdgUtilznPlnExposureID cmm_exposure_id
P_CmmdtyHdgUtilznEvalDate sydatum
P_CmmdtyHdgUtilznIsCnstltnData xfeld
P_CmmdtyHdgUtilznAreOverHedged xfeld
P_CmmdtyHdgPlanExposureVersion cmm_exposure_version

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName ICMHDGTRANS view
AbapCatalog.dataMaintenance #RESTRICTED view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #S view
EndUserText.label Financial Transaction Flow view
VDM.viewType #COMPOSITE view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (33)

KeyFieldSource TableSource FieldDescription
KEY CmmdtyHedgeConstellationUUID HdgConstlnDeals CmmdtyHedgeConstellationUUID
KEY CmmdtyHedgeCnstltnRecordType HdgConstlnDeals CmmdtyHedgeCnstltnRecordType
KEY CmmdtyHedgeConstellationDeal HdgConstlnDeals CmmdtyHedgeConstellationDeal
KEY CmmdtyHdgConstellationDealType HdgConstlnDeals CmmdtyHdgConstellationDealType
CmmdtyHdgConstellationExposure HdgConstlnDeals CmmdtyHdgConstellationExposure
CmmdtyHdgCnstltnValdFrmDteTime HdgConstlnDeals CmmdtyHdgCnstltnValdFrmDteTime
CmmdtyHdgCnstltnExpsrVersion HdgConstlnDeals CmmdtyHdgCnstltnExpsrVersion
CmmdtyHdgCnstltnExposureItem HdgConstlnDeals CmmdtyHdgCnstltnExposureItem
CmmdtyHdgCnstltnFrgnExchHdgReq HdgConstlnDeals CmmdtyHdgCnstltnFrgnExchHdgReq
TermStartDate I_CmmdtyHdgTransFlowDetails FinTransactionPricingStartDate
TermEndDate I_CmmdtyHdgTransFlowDetails FinTransactionPricingEndDate
Counterparty vtbfha kontrh
FinancialInstrumentProductType vtbfha sgsart
FinancialInstrProdTypeName I_FinancialInstrProdTypeText FinancialInstrProdTypeName
FinancialInstrProdTypeWithName
Quantity I_CmmdtyHdgTransFlowDetails Quantity
CmmdtyHdgSingleUnitOfQuantity
CmmdtyHedgePlnExposureQuantity
CmmdtyHdgPlnExpsrQuantityUnit I_CommodityHedgePlanExposure CmmdtyHdgPlnExpsrQuantityUnit
UnitOfMeasure I_CmmdtyHdgTransFlowDetails UnitOfMeasure
CommodityHedgePlanExposureUUID I_CommodityHedgePlanExposure CommodityHedgePlanExposureUUID
CompanyCode HdgConstlnDeals CompanyCode
CompanyCodeName I_CompanyCodeStdVH CompanyCodeName
CmmdtyHdgCnstltnCoCodeWithName
CmmdtyHedgePlanExposureDCSID I_CommodityHedgePlanExposure CmmdtyHedgePlanExposureDCSID
CmmdtyHdgPlanExpsrMktIDCode I_CommodityHedgePlanExposure CmmdtyHdgPlanExpsrMktIDCode
CmmdtyHdgPlanExposureDirection I_CommodityHedgePlanExposure CmmdtyHdgPlanExposureDirection
CmmdtyHdgPlanExposureHedgeBook I_CommodityHedgePlanExposure CmmdtyHdgPlanExposureHedgeBook
CmmdtyHdgPlnExpsrPerdStartDate I_CommodityHedgePlanExposure CmmdtyHdgPlnExpsrPerdStartDate
CmmdtyHdgPlnExpsrPeriodClass I_CommodityHedgePlanExposure CmmdtyHdgPlnExpsrPeriodClass
CmmdtyHdgIsPrcgInDelivPeriod I_CommodityHedgePlanExposure CmmdtyHdgIsPrcgInDelivPeriod
CmmdtyHdgPlnExpsrCompanyCode I_CommodityHedgePlanExposure CmmdtyHdgPlnExpsrCompanyCode
CmmdtyHedgePlanExposureVersion I_CommodityHedgePlanExposure CmmdtyHedgePlanExposureVersion
@AbapCatalog.sqlViewName: 'ICMHDGTRANS'
@AbapCatalog.dataMaintenance: #RESTRICTED
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #X
@ObjectModel.usageType.sizeCategory: #S
@EndUserText.label: 'Financial Transaction Flow'
@VDM.viewType: #COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
define view I_CmmdtyHedgeTransFlowActivity 
  with parameters
    P_CmmdtyHdgUtilznPlnExposureID : cmm_exposure_id,
    P_CmmdtyHdgUtilznEvalDate      : sydatum,
    P_CmmdtyHdgUtilznIsCnstltnData : xfeld,
    P_CmmdtyHdgUtilznAreOverHedged : xfeld,
    P_CmmdtyHdgPlanExposureVersion : cmm_exposure_version
  as select distinct from I_CmmdtyHdgCnstltnExtIntMirror
                          ( P_CmmdtyHdgUtilznPlnExposureID: $parameters.P_CmmdtyHdgUtilznPlnExposureID,
                            P_CmmdtyHdgUtilznIsCnstltnData: $parameters.P_CmmdtyHdgUtilznIsCnstltnData,
                            P_CmmdtyHdgUtilznAreOverHedged: $parameters.P_CmmdtyHdgUtilznAreOverHedged
                            )                                                                                                      as HdgConstlnDeals
    inner join            P_CmmdtyHdgExpsrRqdVersion(P_CmmdtyHdgPlanExposureVersion : $parameters.P_CmmdtyHdgPlanExposureVersion ) as MaxVersionExposure on MaxVersionExposure.CommodityHedgePlanExposureID = HdgConstlnDeals.CmmdtyHdgConstellationExposure
    inner join            I_CommodityHedgePlanExposure                                                                             as Exposures          on  Exposures.CommodityHedgePlanExposureID   = MaxVersionExposure.CommodityHedgePlanExposureID
                                                                                                                                                         and Exposures.CmmdtyHedgePlanExposureVersion = MaxVersionExposure.CmmdtyHedgePlanExposureVersion
    inner join            I_CmmdtyHdgTransFlowDetails                                                                              as TransactionFlow    on  TransactionFlow.CmmdtyHedgeConstellationDeal = HdgConstlnDeals.CmmdtyHedgeConstellationDeal
                                                                                                                                                         and TransactionFlow.CompanyCode                  = HdgConstlnDeals.CompanyCode
    inner join            vtbfha                                                                                                   as Transaction        on  TransactionFlow.CmmdtyHedgeConstellationDeal = Transaction.rfha
                                                                                                                                                         and Transaction.bukrs                            = HdgConstlnDeals.CompanyCode
    inner join            I_FinTransActivity                                                                                       as FinTransActivity   on  FinTransActivity.CompanyCode          = Transaction.bukrs
                                                                                                                                                         and FinTransActivity.FinancialTransaction = Transaction.rfha
    inner join            I_FinancialInstrProdTypeText                                                                             as TransProductType   on  Transaction.sgsart        = TransProductType.FinancialInstrumentProductType
                                                                                                                                                         and TransProductType.Language = $session.system_language

  //      inner join            I_CompanyCodeStdVH            as CompanyCode        on HdgConstlnDeals.CompanyCode = CompanyCode.CompanyCode

    inner join            I_CompanyCodeStdVH                                                                                       as CompanyCode        on Exposures.CmmdtyHdgPlnExpsrCompanyCode = CompanyCode.CompanyCode

{

  key HdgConstlnDeals.CmmdtyHedgeConstellationUUID,
      //  key HdgConstlnDeals.CmmdtyHedgePlanExposureHashKey,

  key HdgConstlnDeals.CmmdtyHedgeCnstltnRecordType,
  key HdgConstlnDeals.CmmdtyHedgeConstellationDeal,
  key HdgConstlnDeals.CmmdtyHdgConstellationDealType,
      HdgConstlnDeals.CmmdtyHdgConstellationExposure,
      HdgConstlnDeals.CmmdtyHdgCnstltnValdFrmDteTime,
      HdgConstlnDeals.CmmdtyHdgCnstltnExpsrVersion,
      HdgConstlnDeals.CmmdtyHdgCnstltnExposureItem,
//      HdgConstlnDeals.CmmdtyHdgCnstltnFrgnExchExpsr, "I517242: DB field deleted

      HdgConstlnDeals.CmmdtyHdgCnstltnFrgnExchHdgReq,
      //      TransactionFlow.CandidatePricingStartDate                                                              as TermStartDate,

      //      TransactionFlow.CandidatePricingEndDate                                                                as TermEndDate,

      TransactionFlow.FinTransactionPricingStartDate                                                     as TermStartDate,
      TransactionFlow.FinTransactionPricingEndDate                                                       as TermEndDate,
      Transaction.kontrh                                                                                 as Counterparty,
      Transaction.sgsart                                                                                 as FinancialInstrumentProductType,
      TransProductType.FinancialInstrProdTypeName,
      concat(concat(concat( TransProductType.FinancialInstrProdTypeName, '('), Transaction.sgsart), ')') as FinancialInstrProdTypeWithName,
      //Following code for determination of contract start date is temporary and later on,

      //it will be derived on ths basis of contract timestamp only after the resolution of incident 2170256428

      case
      when Transaction.contract_timestamp_utc <> 0
      then
      tstmp_to_dats( Transaction.contract_timestamp_utc,
                     abap_system_timezone( $session.client,'NULL' ),
                     $session.client,
                     'NULL' )
      else
      FinTransActivity.FinTransActyConclusionDate
      end                                                                                                as FinancialTransactionContrDate,
      //Following code for determination of contract start time is temporary and later on,

      //it will be derived on ths basis of contract timestamp only after the resolution of incident 2170256428

      case
      when Transaction.contract_timestamp_utc <> 0
      then
      tstmp_to_tims( Transaction.contract_timestamp_utc,
               abap_system_timezone( $session.client,'NULL' ),
               $session.client,
               'NULL' )
      else
      FinTransActivity.FinTransActyConclusionTime
      end                                                                                                as FinTransActyConclusionTime,

      @Semantics.quantity.unitOfMeasure: 'UnitOfMeasure'
      TransactionFlow.Quantity                                                                           as Quantity,


      cast( 1 as ftr_quan)                                                                               as CmmdtyHdgSingleUnitOfQuantity,
      cast(Exposures.CmmdtyHedgePlnExposureQuantity as abap.fltp)                                        as CmmdtyHedgePlnExposureQuantity,
      Exposures.CmmdtyHdgPlnExpsrQuantityUnit,
      @Semantics.unitOfMeasure: true
      TransactionFlow.UnitOfMeasure,
      Exposures.CommodityHedgePlanExposureUUID,
      @ObjectModel.text.element: ['CompanyCodeName']
      HdgConstlnDeals.CompanyCode                                                                        as CompanyCode,
      CompanyCode.CompanyCodeName                                                                        as CompanyCodeName,
      concat(concat(concat( CompanyCode.CompanyCodeName, '('), HdgConstlnDeals.CompanyCode), ')')        as CmmdtyHdgCnstltnCoCodeWithName,
      Exposures.CmmdtyHedgePlanExposureDCSID,
      Exposures.CmmdtyHdgPlanExpsrMktIDCode,
      Exposures.CmmdtyHdgPlanExposureDirection,
      Exposures.CmmdtyHdgPlanExposureHedgeBook,
      Exposures.CmmdtyHdgPlnExpsrPerdStartDate,
      Exposures.CmmdtyHdgPlnExpsrPeriodClass,
      Exposures.CmmdtyHdgIsPrcgInDelivPeriod,
      Exposures.CmmdtyHdgPlnExpsrCompanyCode,
      Exposures.CmmdtyHedgePlanExposureVersion
}
where
  (
        TransactionFlow.Quantity                     is not initial
    and Exposures.CmmdtyHedgePlanExposureStatus      =  'ICPE4' //Released

    and Exposures.CmmdtyHdgPlnExpsrPrcgStartDate     <= TransactionFlow.FinTransactionPricingStartDate
    and Exposures.CmmdtyHdgPlnExpsrPrcgEndDate       >= TransactionFlow.FinTransactionPricingEndDate
    and TransactionFlow.FinTransCreationDate         <= $parameters.P_CmmdtyHdgUtilznEvalDate
    and TransactionFlow.FinTransactionPricingEndDate >= $parameters.P_CmmdtyHdgUtilznEvalDate
    and HdgConstlnDeals.CmmdtyHedgeCnstltnRecordType =  '1'
  )
  or(
        HdgConstlnDeals.CmmdtyHedgeCnstltnRecordType =  '2'
    and HdgConstlnDeals.CmmdtyHdgUtilznIsCnstltnData =  'X'
  )
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CMMDTYHDGCNSTLTNEXTINTMIRROR",
"I_CMMDTYHDGTRANSFLOWDETAILS",
"I_COMMODITYHEDGEPLANEXPOSURE",
"I_COMPANYCODESTDVH",
"I_FINANCIALINSTRPRODTYPETEXT",
"I_FINTRANSACTIVITY",
"P_CMMDTYHDGEXPSRRQDVERSION",
"VTBFHA"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/