@AbapCatalog.sqlViewName: 'IFTRCLUTILIZE'
@AbapCatalog.compiler.compareFilter: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.viewType: #COMPOSITE
@Analytics.dataCategory: #FACT
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@EndUserText.label: 'Facility Utilization With Contract Info'
define view I_Ftr_Cl_Utilize
with parameters
@Environment.systemField: #SYSTEM_DATE
P_StartDate : vdm_v_start_date,
@Environment.systemField: #SYSTEM_DATE
P_EndDate : vdm_v_end_date,
P_CrdtLineReportingFrequency : ftr_date_granularity
as select from P_Ftr_Asgn_Utilize(
P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate,
P_CrdtLineReportingFrequency: $parameters.P_CrdtLineReportingFrequency) as Utilization
inner join I_FinancialTransaction as FinancialTransaction on FinancialTransaction.CompanyCode = Utilization.CompanyCode
and FinancialTransaction.FinancialTransaction = Utilization.FinancialTransaction
inner join I_Ftr_Fac_Trans_Cat as FinancialTransactionCategory on FinancialTransaction.FinancialInstrumentProductType = FinancialTransactionCategory.FinancialInstrumentProductType
and FinancialTransaction.FinancialInstrTransactionType = FinancialTransactionCategory.FinancialInstrTransactionType
inner join I_FacilityRule as FacilityRule on Utilization.CompanyCode = FacilityRule.CompanyCode
and Utilization.FinancialTransaction = FacilityRule.FinancialTransaction
{
key Utilization.CompanyCode,
key cast(Utilization.FinancialTransaction as ftr_rfha) as FinancialTransaction,
key Utilization.KeyDate,
key FinancialTransaction.Counterparty,
key cast(case when Utilization.SyndicatedCounterparty = ''
then FinancialTransaction.Counterparty
else Utilization.SyndicatedCounterparty end as ftr_syndicatedcounterparty) as SyndicatedCounterparty,
cast(Utilization.RelatObject as crdt_line_assgmt_obj preserving type ) as CreditLineAssignmentObject,
Utilization.CreditLineReportingPeriod,
@Semantics.currencyCode: true
Utilization.TransactionCurrency,
FinancialTransaction.FinancialInstrumentProductType,
FinancialTransaction.FinancialInstrTransactionType,
FinancialTransaction.FinancialInstrProductCategory,
FinancialTransactionCategory.FinInstrTransactionCategory,
cast(FinancialTransaction._CompanyCode.Country as ftr_bukrs_land) as CompanyCodeCountry,
FinancialTransaction.Portfolio,
@Semantics.amount.currencyCode: 'TransactionCurrency'
@DefaultAggregation: #SUM
Utilization.TotalAmount as TotalAmountInTransactionCrcy,
@Semantics.amount.currencyCode: 'TransactionCurrency'
@DefaultAggregation: #SUM
cast(sum(Utilization.UtilizedChangeAmount) as ftr_utilamtintranscrcy) as UtilizedAmountInTransCrcy,
Utilization._TransactionCurrency,
FacilityRule.FcltyTermEndExceededIsAllowed
}
where
FinancialTransaction.FinancialInstrumentStatus <> '3'
group by
Utilization.CompanyCode,
Utilization.FinancialTransaction,
FinancialTransaction.Counterparty,
Utilization.SyndicatedCounterparty,
Utilization.KeyDate,
Utilization.CreditLineReportingPeriod,
Utilization.TransactionCurrency,
FinancialTransaction.FinancialInstrumentProductType,
FinancialTransaction.FinancialInstrTransactionType,
FinancialTransaction.FinancialInstrProductCategory,
FinancialTransactionCategory.FinInstrTransactionCategory,
_CompanyCode.Country,
FinancialTransaction.Portfolio,
Utilization.TotalAmount,
Utilization.RelatObject,
FacilityRule.FcltyTermEndExceededIsAllowed
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_COMPANYCODE",
"I_FACILITYRULE",
"I_FINANCIALTRANSACTION",
"I_FTR_FAC_TRANS_CAT",
"P_FTR_ASGN_UTILIZE"
],
"ASSOCIATED":
[
"I_CURRENCY"
],
"BASE":
[
"P_FTR_ASGN_UTILIZE"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/