I_BRKRRECNCLNCLRGBRKRTRANSCONF

CDS View

Clear Transaction Confirmation

I_BRKRRECNCLNCLRGBRKRTRANSCONF is a CDS View in S/4HANA. Clear Transaction Confirmation. 2 CDS views read from this table.

CDS Views using this table (2)

ViewTypeJoinVDMDescription
A_BrkrRecnclnClrgBrkrConf_2 view_entity projection CONSUMPTION Confirmation Trades
A_BrkrRecnclnClrgBrkrTransConf view_entity projection CONSUMPTION Confirmation Trades
@AbapCatalog.sqlViewName: 'IBRRCLBRTRCONF'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #X
@ObjectModel.usageType.sizeCategory: #S
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Clear Transaction Confirmation'
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #COMPOSITE

//with this view either future derivatives are considered or Open listed options and futures -> see condition at the end.

//ExtListedDerivativeCategory = '01' = Futures;

//TreasuryBusinessTransCategory = '2315' = Exercise Commodity Listed Option - Transfer of Premium;

//TreasuryBusinessTransCategory = '3001' = Open listed options and futures;


define view I_BrkrRecnclnClrgBrkrTransConf
  as select distinct from  I_BrkrRecnclnBusTransOnPosDate as _BusTransOnPositionDate
    left outer to one join I_BrkrRecnclnBusTransByBroker  as _BusTransactionByBroker on  _BusTransOnPositionDate.TreasuryPositionLotUUID = _BusTransactionByBroker.TreasuryPositionLotUUID
                                                                                     and _BusTransactionByBroker.Counterparty            is not null

    left outer to one join I_BrkrRecnclnClrgOptnExer_2    as _BusTransOptnExer       on  _BusTransOptnExer.BrkrReconciliationActivityDate = _BusTransOnPositionDate.BrkrReconciliationActivityDate
                                                                                     and _BusTransOptnExer.DistributorBusTransactionUUID  = _BusTransOnPositionDate.DistributorBusTransactionUUID
                                                                                     and _BusTransOptnExer.BusinessTransactionUUID        = _BusTransOnPositionDate.BusinessTransactionUUID

    inner join             I_BrkrRecnclnTransOnAccount    as _TransOnAccount         on  _TransOnAccount.FutureAccount = _BusTransOnPositionDate.FutureAccount
                                                                                     and _TransOnAccount.CompanyCode   = _BusTransOnPositionDate.CompanyCode

  association to parent C_BrkrRecnclnClrgBrkrTransAll as _BrokerAll on  $projection.Counterparty = _BrokerAll.Counterparty
                                                                    and $projection.CompanyCode  = _BrokerAll.CompanyCode
                                                                    and $projection.PositionAccountNumber = _BrokerAll.PositionAccountNumber                      
{
  key   _TransOnAccount.DepositoryBank                                              as Counterparty,
  key   _BusTransOnPositionDate.BrkrReconciliationActivityDate                      as BrkrReconciliationActivityDate,

  key   case when _BusTransactionByBroker.CompanyCode <> ''
          then _BusTransactionByBroker.CompanyCode
          else _BusTransOptnExer.CompanyCode end                                    as CompanyCode,
  key _TransOnAccount.PositionAccountNumber                                        as PositionAccountNumber,
        _BusTransOnPositionDate.FutureAccount                                       as FutureAccount,

        @Semantics.uuid
        _BusTransOnPositionDate.TreasuryPositionLotUUID                             as TreasuryPositionLotUUID,
        @Semantics.uuid
        _BusTransOnPositionDate.DistributorBusTransactionUUID                       as DistributorBusTransactionUUID,

        case when _BusTransOnPositionDate.TreasuryBusinessTransCategory = '2315' and _BusTransOnPositionDate.ExtListedDerivativeCategory = '01'
          then bintohex( _BusTransOnPositionDate.TreasuryPositionLotUUID )
          else _BusTransOnPositionDate.BusinessTransactionUUID end                  as BusinessTransactionUUID,

        _BusTransactionByBroker.ActivityFinancialTransaction                        as ActivityFinancialTransaction,
        _BusTransOnPositionDate.ContrDrvtvContrMaturityCode                         as ContrDrvtvContrMaturityCode,

        case when _BusTransOnPositionDate.BrkrRecnclnNumberOfContracts < 0
          then _BusTransOnPositionDate.BrkrRecnclnNumberOfContracts*-1
          else _BusTransOnPositionDate.BrkrRecnclnNumberOfContracts       end       as BrkrRecnclnNumberOfContracts,

        _BusTransOnPositionDate.TreasuryPositionLongShortCode                       as TreasuryPositionLongShortCode,

        @Semantics.amount.currencyCode: 'Currency'
        @OData.v2.amount.noDecimalShift: true        
        case when _BusTransOnPositionDate.TreasuryBusinessTransCategory = '2315'
          then cast(  case when _BusTransOnPositionDate.BrkrReconciliationStrikePrice <> 0
                        then _BusTransOnPositionDate.BrkrReconciliationStrikePrice
                        else _BusTransOptnExer.BrkrReconciliationStrikePrice end as abap.dec( 23, 14 ) )
          else cast( _BusTransactionByBroker.ContractPrice as abap.dec( 23, 14 ) )  end as ContractPrice,

        case when _BusTransactionByBroker.Currency <> ''
          then _BusTransactionByBroker.Currency
          else _BusTransOptnExer.Currency  end                                      as Currency,

        @Semantics.amount.currencyCode: 'OptionStrikeCurrency'
        @OData.v2.amount.noDecimalShift: true
        _BusTransOnPositionDate.BrkrReconciliationStrikePrice                       as BrkrReconciliationStrikePrice,
        _BusTransOnPositionDate.OptionStrikeCurrency                                as OptionStrikeCurrency,
        _BusTransOnPositionDate.OptionPutCallCode                                   as OptionPutCallCode,
        _BusTransOnPositionDate.CommodityProductSymbol                              as CommodityProductSymbol,
        _BusTransOnPositionDate.KeyDate                                             as KeyDate,
        _BusTransOnPositionDate.ExtListedDerivativeCategory                         as ExtListedDerivativeCategory,
        _BusTransOnPositionDate.FinancialInstrumentProductType                      as FinancialInstrumentProductType,
        _BusTransOnPositionDate.TreasuryBusinessTransCategory                       as TreasuryBusinessTransCategory,
        _BusTransOnPositionDate.SecurityClass                                       as SecurityClass,
        _BusTransOnPositionDate.DerivativeContrSpecification                        as DerivativeContrSpecification,
        _BusTransOnPositionDate.DerivativeContrSpecName                             as DerivativeContrSpecName,
        @Semantics.quantity.unitOfMeasure: 'LotSizeUnitOfMeasure'
        _BusTransOnPositionDate.LotSize                                             as LotSize,
        @Semantics.unitOfMeasure: true
        _BusTransOnPositionDate.LotSizeUnitOfMeasure                                as LotSizeUnitOfMeasure,
        _BrokerAll
}
where
  (
        _BusTransOnPositionDate.ExtListedDerivativeCategory   = '01'
    and _BusTransOnPositionDate.TreasuryBusinessTransCategory = '2315'
  )
  or    _BusTransOnPositionDate.TreasuryBusinessTransCategory = '3001'