@EndUserText.label: 'Transportation Charge Item Element'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog: {sqlViewName: 'CTCHRGITEMELEM' ,
compiler.compareFilter: true,
preserveKey: true }
@ObjectModel: {representativeKey: 'TranspChargeItemElementUUID',
usageType: { serviceQuality: #D,
sizeCategory: #XXL,
dataClass: #MIXED}}
@AccessControl: {authorizationCheck: #CHECK,
privilegedAssociations: [ '_TranspChargeObject',
'_TranspChargeCalcRule',
'_TranspChargeCalcBase'],
personalData.blocking: #('TRANSACTIONAL_DATA')}
@VDM: {viewType: #CONSUMPTION}
@Metadata.allowExtensions: true
define view C_TranspChargeItemElement
as select from I_TranspChargeItemElement
/* Business Object related Node Associations*/
association [1..1] to C_TranspChargeObject as _TranspChargeObject on $projection.TransportationChargesObjUUID = _TranspChargeObject.TransportationChargesObjUUID
association [0..*] to C_TranspChargeCalcBase as _TranspChargeCalcBase on $projection.TranspChargeItemElementUUID = _TranspChargeCalcBase.TranspChargeItemElementUUID
association [0..*] to C_TranspChargeCalcRule as _TranspChargeCalcRule on $projection.TranspChargeItemElementUUID = _TranspChargeCalcRule.TranspChargeItemElementUUID
association to parent C_FrtOrdGenDataBasicFacts as _FrtOrdGenDataBasicFacts on $projection.transpchargehostdocumentuuid = _FrtOrdGenDataBasicFacts.TransportationOrderUUID
/* Foreign Key and Text Associations */
association [0..*] to I_OTRText as _OTRText on _OTRText.OnlnTxtRpstryConceptID = '40F2E9AFC5011ED8BA840937780C5DE1'
{
key TranspChargeItemElementUUID,
TransportationChargesObjUUID,
TranspChargeCalcSheetLineNmbr,
_TranspChargeObject.TranspChargeHostDocumentUUID,
TranspChargeInstrnType,
@ObjectModel.text.element: ['TranspChargeTypeDesc']
TranspChargeType,
@Semantics.text: true
cast(_TranspChargeType._Text[1: Language = $session.system_language].TranspChargeTypeDesc as /scmtms/charge_desc preserving type) as TranspChargeTypeDesc,
@ObjectModel.text.element: ['TranspChargeCalcReslnBaseDesc']
TranspChargeCalcReslnBase,
@Semantics.text: true
_TranspChargeCalcReslnBase._Text[1: Language = $session.system_language].TranspChargeCalcReslnBaseDesc,
@Semantics.amount.currencyCode: 'TranspChargeCalcdAmountCrcy'
cast(TranspChargeCalcdAmount as /scmtms/vdm_calc_amount) as TranspChargeCalcdAmount,
TranspChargeCalcdAmountCrcy,
TranspChrgLogisticalRefDesc,
TranspChrgRateCurrency,
@Semantics.amount.currencyCode: 'TranspChrgRateCurrency'
cast(TranspChrgRateAmount as /scmtms/vdm_rate_amount) as TranspChrgRateAmount,
cast(TranspChrgLineNumber as /scmtms/vdm_trchrg_line_no) as TranspChrgLineNumber,
cast(TranspChrgRefFromLineNumber as /scmtms/vdm_trchrg_ref_item) as TranspChrgRefFromLineNumber,
TranspChargeDocumentCurrency,
@Semantics.amount.currencyCode: 'TranspChargeDocumentCurrency'
cast(TranspChrgAmountInDocCurrency as /scmtms/vdm_doc_amount) as TranspChrgAmountInDocCurrency,
TranspChargeLocalCurrency,
@Semantics.amount.currencyCode: 'TranspChargeLocalCurrency'
cast(TranspChrgAmountInLoclCurrency as /scmtms/vdm_local_amount) as TranspChrgAmountInLoclCurrency,
TranspCalculationMethodType,
TranspCalculationMethodName,
cast(_TranspChargeExchRate.TranspChrgExchangeRate as abap.dec( 28, 5 ) ) as TranspChrgExchangeRate,
TranspChargeIsMandatory,
@ObjectModel.text.element: ['ExchangeRateTypeName']
_TranspChargeExchRate.TranspChrgExchangeRateType as TranspChrgExchangeRateType,
@Semantics.text: true
_TranspChargeExchRate._TranspChrgExchangeRateType._Text[1: Language = $session.system_language].ExchangeRateTypeName,
_TranspChargeExchRate.ExchangeRateDate as ExchangeRateDate,
@ObjectModel.text.element: ['TranspDimnWeightProfDesc']
_TranspDimnWeightProfile.TranspDimnWeightProfile as TranspDimnWeightProfile,
_TranspDimnWeightProfile._Text[1: Language = $session.system_language].TranspDimnWeightProfDesc,
cast( case
when TranspChrgRateCurrency is not initial and TranspChrgRateCurrency <> '%' and TranspChargeDocumentCurrency is not initial
and (TranspChrgRateCurrency <> TranspChargeDocumentCurrency)
then concat_with_space( TranspChrgRateCurrency,
concat_with_space(_OTRText[1: Language = $session.system_language].Text, TranspChargeDocumentCurrency, 2 ), 2)
else ' ' end as /scmtms/vdm_curr_conv_from_to) as TranspChargeRateToDocCrcy,
_TranspChargeCalcRule[1: TranspChargeItemElementUUID = TranspChargeItemElementUUID ].TranspChrgDataSourceQuantity,
_TranspChargeCalcRule[1: TranspChargeItemElementUUID = TranspChargeItemElementUUID ].TranspChrgCalcRuleUnit,
_TranspChargeCalcRule[1: TranspChargeItemElementUUID = TranspChargeItemElementUUID ].TranspChrgPricePerQuantity,
@ObjectModel.text.element: ['TranspChargeCalcStatusDesc']
TranspChargeCalcStatus,
case TranspChargeCalcStatus
when '03' then 1
when '05' then 2
else 3
end as TranspChargeCalcStsCriticality,
@Semantics.text: true
_TranspChargeCalcStatusText[1: Language = $session.system_language].TranspChargeCalcStatusDesc,
TranspChargeRateValue,
@ObjectModel.text.element: ['TranspCalculationDateTypeDesc']
TranspCalculationDateType,
@Semantics.text: true
_TranspCalculationDateType._Text[1: Language = $session.system_language ].TranspCalculationDateTypeDesc,
TranspChargeItmElmntCalcDteTme,
cast(tstmp_to_dats(TranspChargeItmElmntCalcDteTme,
abap_system_timezone( $session.client,'NULL' ),
$session.client,
'NULL' ) as /scmtms/vdm_calc_date) as TranspChargeCalculationDate,
TransportationRateUUID,
@ObjectModel.text.element: ['TranspRateTableDesc']
@Consumption.semanticObject: 'TransportationRateTable'
cast( case when _TransportationRate.TranspChrgCalcSheetUUID = hextobin('00000000000000000000000000000000')
then TransportationRate
else ' ' end as /scmtms/tc_ratetable_id preserving type ) as TransportationRate,
@Semantics.text: true
_TransportationRate._TranspRateTableText[1: Language = $session.system_language].TranspRateTableDesc,
/* Associations */
_TranspChargeObject,
_TranspChargeCalcBase,
_TranspChargeCalcRule,
_TranspCalcMethodType,
_FrtOrdGenDataBasicFacts,
_TranspChargeRateValue
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"C_TRANSPCHARGECALCRULE",
"C_TRANSPCHARGEOBJECT",
"I_EXCHANGERATETYPE",
"I_EXCHANGERATETYPETEXT",
"I_OTRTEXT",
"I_TRANSPCALCULATIONDATETYPE",
"I_TRANSPCALCULATIONDATETYPETXT",
"I_TRANSPCHARGECALCRESLNBASE",
"I_TRANSPCHARGECALCRESLNBASET",
"I_TRANSPCHARGECALCSTATUSTEXT",
"I_TRANSPCHARGEEXCHRATE",
"I_TRANSPCHARGEITEMELEMENT",
"I_TRANSPCHARGETYPE",
"I_TRANSPCHARGETYPETEXT",
"I_TRANSPDIMNWEIGHTPROFILE",
"I_TRANSPDIMNWGTPROFILETEXT",
"I_TRANSPORTATIONRATE",
"I_TRANSPORTATIONRATETABLEDESC"
],
"ASSOCIATED":
[
"C_FRTORDGENDATABASICFACTS",
"C_TRANSPCHARGECALCBASE",
"C_TRANSPCHARGECALCRULE",
"C_TRANSPCHARGEOBJECT",
"I_OTRTEXT",
"I_TRANSPCALCMETHODTYPE",
"I_TRANSPCHARGERATEVALUE"
],
"BASE":
[
"I_TRANSPCHARGEITEMELEMENT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/