P_FXOptionTransBusVol
P_FXOptionTransBusVol is a Composite CDS View in SAP S/4HANA. It reads from 4 data sources (I_FinTransActivity, R_FinTransFXOption, P_FinTransBusVolKeyDate, I_FinancialTransaction) and exposes 10 fields with key fields FinancialTransaction, KeyDate.
Data Sources (4)
| Source | Alias | Join Type |
|---|---|---|
| I_FinTransActivity | Activity | inner |
| R_FinTransFXOption | Option | inner |
| P_FinTransBusVolKeyDate | P_FinTransBusVolKeyDate | from |
| I_FinancialTransaction | Trans | inner |
Parameters (3)
| Name | Type | Default |
|---|---|---|
| P_StartDate | vdm_v_start_date | |
| P_EndDate | vdm_v_end_date | |
| P_FinTransAmtRptgFrequency | ftr_date_granularity |
Annotations (10)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | PFXBUSVOLDATE | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| VDM.private | true | view | |
| VDM.viewType | #COMPOSITE | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view |
Fields (10)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | FinancialTransaction | R_FinTransFXOption | FinancialTransaction | |
| KEY | KeyDate | CalendarDate | KeyDate | |
| TransactionCurrency | R_FinTransFXOption | OptionUndrlgTradedCurrency | ||
| Counterparty | R_FinTransFXOption | Counterparty | ||
| CompanyCode | R_FinTransFXOption | CompanyCode | ||
| FinTransProductGroup | ||||
| FinancialInstrumentProductType | I_FinancialTransaction | FinancialInstrumentProductType | ||
| FinancialInstrTransactionType | I_FinancialTransaction | FinancialInstrTransactionType | ||
| Portfolio | I_FinancialTransaction | Portfolio | ||
| SecurityAccount |
@AbapCatalog.sqlViewName: 'PFXBUSVOLDATE'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.private: true
@VDM.viewType: #COMPOSITE
@ObjectModel.usageType.serviceQuality:#D
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.algorithm: #SESSION_VARIABLE
define view P_FXOptionTransBusVol
with parameters
@Environment.systemField: #SYSTEM_DATE
P_StartDate : vdm_v_start_date,
@Environment.systemField: #SYSTEM_DATE
P_EndDate : vdm_v_end_date,
P_FinTransAmtRptgFrequency : ftr_date_granularity
as select from P_FinTransBusVolKeyDate(P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate,
P_FinTransAmtRptgFrequency : $parameters.P_FinTransAmtRptgFrequency) as CalendarDate
inner join R_FinTransFXOption as Option on CalendarDate.KeyDate >= Option.TermStartDate
// and CalendarDate.KeyDate <= Option.OptionExpirationDate
inner join I_FinTransActivity as Activity on Activity.FinancialTransaction = Option.FinancialTransaction
and Activity.CompanyCode = Option.CompanyCode
and Activity.TermEndDate >= CalendarDate.KeyDate
inner join I_FinancialTransaction as Trans on Activity.CompanyCode = Trans.CompanyCode
and Activity.FinancialTransaction = Trans.FinancialTransaction
and Activity.FinancialInstrumentActivity = Trans.FinInstrLastActiveActivity
{
key Option.FinancialTransaction,
key CalendarDate.KeyDate,
Option.OptionUndrlgTradedCurrency as TransactionCurrency,
//Set the Amount to Zero on TermEndDate
case when KeyDate = Activity.TermEndDate
then 0
else Option.OptionUndrlgTradedAmount
end as AmountInTransactionCurrency,
Option.Counterparty,
Option.CompanyCode,
cast('FX' as ftr_productgroup) as FinTransProductGroup,
Trans.FinancialInstrumentProductType,
Trans.FinancialInstrTransactionType,
Trans.Portfolio,
cast('' as ftr_gen_security_account) as SecurityAccount
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_FINANCIALTRANSACTION",
"I_FINTRANSACTIVITY",
"P_FINTRANSBUSVOLKEYDATE",
"R_FINTRANSFXOPTION"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA