@EndUserText.label: 'ASR Cockpit Freight Order Stops'
@ObjectModel: { representativeKey: 'TransportationOrderStopUUID',
usageType: {serviceQuality: #D,
sizeCategory: #XL,
dataClass: #TRANSACTIONAL}}
@VDM: { viewType: #CONSUMPTION,
usage.type: [#TRANSACTIONAL_PROCESSING_SERVICE]}
@AccessControl: { authorizationCheck: #MANDATORY,
personalData.blocking: #('TRANSACTIONAL_DATA') }
@Metadata.allowExtensions: true
define root view entity C_FreightOrderStopASR
as select from I_TransportationOrderStop as Stop
association [1..1] to I_TransportationOrder as _TransportationOrder on Stop.TransportationOrderUUID = _TransportationOrder.TransportationOrderUUID
association [1..1] to I_TransportationOrderItem as _ActvVehRsceItem on Stop.TransportationOrderUUID = _ActvVehRsceItem.TransportationOrderUUID
and _ActvVehRsceItem.TranspOrdItemCategory = 'AVR'
association [1..1] to I_EWM_WarehouseNumber_2 as _WarehouseTimeZone on Stop.TranspOrdStopWrhsNmbr = _WarehouseTimeZone.EWMWarehouse
association [1..1] to I_TransportationOrderStop as _LogisticalStop on Stop.TranspOrdStopStopParentUUID = _LogisticalStop.TransportationOrderStopUUID
/* Text associations */
association [0..1] to I_TranspOrdWarehouseText as _TranspOrdWarehouseText on Stop.TranspOrdStopWrhsNmbr = _TranspOrdWarehouseText.TranspOrdStopWrhsNmbr
association [0..1] to I_LocationBasic as _LoadingPointText on Stop.TranspOrdStopLoadingPointID = _LoadingPointText.Location
association [0..1] to I_TranspOrdStopWrhsCategory as _TranspOrdStopWrhsCategory on Stop.TranspOrdStopWrhsCat = _TranspOrdStopWrhsCategory.TranspOrdStopWrhsCat
association [0..1] to I_TranspOrdStopWrhsDoorStatus as _TranspOrdStopWrhsDoorStatus on Stop.TranspOrdStopWrhsDoorStatus = _TranspOrdStopWrhsDoorStatus.TranspOrdStopWrhsDoorStatus
/* compositions */
composition [1..*] of C_FrtOrdStopLoadRefFreightUnit as _FreightUnit
composition [1..*] of C_FrtOrdStopLoadRefCsgnmt as _Consignment
composition [1..*] of C_FrtOrdStopLoadRefERPOrder as _ERPOrder
composition [1..*] of C_FrtOrdStopLoadRefLogsExecDlv as _LogsExecDelivery
composition [1..*] of C_FrtOrdStopLoadRefWrhsRequest as _WarehouseRequest
composition [1..*] of C_FrtOrdStopLoadRefStagingArea as _EWMStagingArea
composition [1..*] of C_FrtOrdStopLoadRefStagingBay as _EWMStagingBay
composition [1..*] of C_FrtOrdStopLoadRefStggAreaGrp as _EWMStagingAreaGroup
{
// Warehouse Stop data
key Stop.TransportationOrderStopUUID,
Stop.TransportationOrderUUID,
Stop.TransportationOrderStop,
Stop.TranspOrdStopStopParentUUID,
@ObjectModel.text.element: ['TranspOrdStopCategoryDesc']
Stop.TranspOrdStopCategory,
@Semantics.text: true
Stop._TranspOrdStopCategory._Text[1:Language = $session.system_language ].TranspOrdStopCategoryDesc as TranspOrdStopCategoryDesc,
@ObjectModel.text.element: ['TranspOrdStopHndlgExecStsDesc']
Stop.TranspOrdStopHndlgExecStatus,
Stop._TranspHndlgExecStatus._Text[1:Language = $session.system_language ].TranspOrdStopHndlgExecStsDesc as TranspOrdStopHndlgExecStsDesc,
case Stop.TranspOrdStopHndlgExecStatus
when '12' then 3 // Unloaded = Completed
when '18' then 3 // Loaded = Completed
else 1 //Not started
end as TranspOrdStopHndlgExecCritlty,
@Consumption.filter: { selectionType: #INTERVAL, multipleSelections : false }
@Semantics.dateTime: true
@Semantics.timeZoneReference: 'TimeZoneID'
Stop.TranspOrdStopPlanTranspDteTme,
Stop.TranspOrdStopDteTme,
@Semantics.timeZone: true
_WarehouseTimeZone.TimeZoneID,
// Logistical Stop data
_LogisticalStop.LocationId, // as WarehouseLocation,
@ObjectModel.text.element: ['TrOrdLoglStopHndlgExecStsDesc']
_LogisticalStop.TranspOrdStopHndlgExecStatus as TranspOrdLoglStopHndlgExecSts,
_LogisticalStop._TranspHndlgExecStatus._Text[1:Language = $session.system_language ].TranspOrdStopHndlgExecStsDesc as TrOrdLoglStopHndlgExecStsDesc,
// Warehouse data
@ObjectModel.text.element: ['TranspOrdStopWrhsCatDesc']
Stop.TranspOrdStopWrhsCat,
_TranspOrdStopWrhsCategory._Text[1:Language=$session.system_language].TranspOrdStopWrhsCatDesc as TranspOrdStopWrhsCatDesc,
@ObjectModel.text.element:['TranspOrdStopWrhsDesc']
@Consumption.valueHelpDefinition: [{ entity: {name: 'I_TranspOrdWarehouseNumberVH', element: 'TranspOrdStopWrhsNmbr'} }]
Stop.TranspOrdStopWrhsNmbr,
_TranspOrdWarehouseText[1:Language=$session.system_language].TranspOrdStopWrhsDesc as TranspOrdStopWrhsDesc,
@Consumption.valueHelpDefinition: [{ entity: {name: 'I_TranspOrdWrhsLoadgPtVH', element: 'TranspOrdStopLoadingPointID' } ,
additionalBinding: [{ localElement: 'TranspOrdStopWrhsNmbr', element: 'TranspOrdStopWrhsNmbr', usage: #FILTER_AND_RESULT }] }]
@ObjectModel.text.element:['TranspOrdStopLoadingPointDesc']
Stop.TranspOrdStopLoadingPointID,
_LoadingPointText._Text[1:Language=$session.system_language].LocationDescription as TranspOrdStopLoadingPointDesc,
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_TranspOrdWarehouseDoorVH', element: 'TranspOrdStopWrhsDoorID'},
additionalBinding: [{ localElement: 'TranspOrdStopWrhsNmbr', element: 'TranspOrdStopWrhsNmbr', usage: #FILTER_AND_RESULT }] }]
Stop.TranspOrdStopWrhsDoorID,
@ObjectModel.text.element:['TranspOrdStopWrhsDoorStsDesc']
Stop.TranspOrdStopWrhsDoorStatus,
_TranspOrdStopWrhsDoorStatus._Text[1:Language=$session.system_language].TranspOrdStopWrhsDoorStsDesc as TranspOrdStopWrhsDoorStsDesc,
case Stop.TranspOrdStopWrhsDoorStatus
when 'A' then 3 // Arrived = Green, Departed = Empty
end as TrOrdStopWhseDoorStsCritlty,
// Freight Order Data
_TransportationOrder.TransportationOrder as FreightOrder,
@ObjectModel.text.element: ['TransportationOrderTypeDesc']
_TransportationOrder.TransportationOrderType,
@Semantics.text: true
_TransportationOrder._TransportationOrderType._Text[1:Language = $session.system_language ].TransportationOrderTypeDesc as TransportationOrderTypeDesc,
_TransportationOrder.CreationDateTime,
@ObjectModel.text.element: ['TranspOrdLifeCycleStatusDesc']
@Consumption.valueHelpDefinition: [{ entity: {name: 'I_TranspOrdLifeCycleStatusVH' , element: 'TranspOrdLifeCycleStatus'}}]
_TransportationOrder.TranspOrdLifeCycleStatus as TranspOrdLifeCycleStatus,
@Semantics.text: true
_TransportationOrder._TranspOrdLifeCycleStatus._Text[1:Language = $session.system_language ].TranspOrdLifeCycleStatusDesc as TranspOrdLifeCycleStatusDesc,
@ObjectModel.text.element: ['TransportationOrderExecStsDesc']
@Consumption.valueHelpDefinition: [{ entity: {name: 'I_TranspOrdExecStsVH' , element: 'TransportationOrderExecSts'}}]
_TransportationOrder.TransportationOrderExecSts as TransportationOrderExecSts,
@Semantics.text: true
_TransportationOrder._TransportationOrderExecSts._Text[1:Language = $session.system_language ].TransportationOrderExecStsDesc as TransportationOrderExecStsDesc,
@ObjectModel.text.element: ['TranspOrdGoodsMvtStatusDesc']
_TransportationOrder.TranspOrdGoodsMovementStatus,
@Semantics.text: true
_TransportationOrder._TranspOrdGoodsMvtStatus._Text[1:Language = $session.system_language ].TranspOrdGoodsMvtStatusDesc as TranspOrdGoodsMvtStatusDesc,
@ObjectModel.text.element: ['TranspOrderDngrsGdsStsDesc']
_TransportationOrder.TranspOrderDngrsGdsSts,
@Semantics.text: true
_TransportationOrder._TranspOrdDngrsGdsStatus._Text[1:Language = $session.system_language ].TranspOrderDngrsGdsStsDesc as TranspOrderDngrsGdsStsDesc,
@ObjectModel.text.element: ['TranspOrdWhseProcgStatusDesc']
_TransportationOrder.TranspOrdWhseProcessingStatus,
@Semantics.text: true
_TransportationOrder._TranspOrdWhseProcgStatus._Text[1:Language = $session.system_language ].TranspOrdWhseProcgStatusDesc as TranspOrdWhseProcgStatusDesc,
_TransportationOrder.Shipper,
_TransportationOrder.Consignee,
@Consumption.valueHelpDefinition: [{ entity: {name: 'C_TransportationCarrierVH' , element: 'BusinessPartner'}}]
_TransportationOrder.Carrier,
@ObjectModel.text.element: ['TransportationModeDesc']
_TransportationOrder.TransportationMode,
@Semantics.text: true
_TransportationOrder._TransportationMode._Text[1:Language = $session.system_language ].TransportationModeDesc as TransportationModeDesc,
@ObjectModel.text.element: ['MeansOfTransportDesc']
cast( _TransportationOrder.MeansOfTransport as /sapapo/tr_traty preserving type ) as TranspOrdMeansOfTransport, // prevent ATC data type missmatch
@Semantics.text: true
_TransportationOrder._MeansOfTransport._Text[1:Language = $session.system_language ].MeansOfTransportDesc as MeansOfTransportDesc,
// Vehicle Data
_ActvVehRsceItem.TranspOrdItmEquipmentGroup,
_ActvVehRsceItem.TranspOrdItmEquipmentType,
_ActvVehRsceItem.TranspOrdItmResourceID,
// NOT make associations public
// _ActvVehRsceItem,
// _WarehouseTimeZone,
// Stop._TranspOrdStopCategory,
// Stop._TranspHndlgExecStatus,
// _TransportationOrder,
// _TransportationOrder._TransportationOrderType,
// @Consumption.filter.hidden: true
// _TransportationOrder._TranspOrdLifeCycleStatus,
// @Consumption.filter.hidden: true
// _TransportationOrder._TransportationOrderExecSts,
// _TransportationOrder._TranspOrdGoodsMvtStatus,
// _TransportationOrder._TranspOrdDngrsGdsStatus,
// _TransportationOrder._TranspOrdWhseProcgStatus,
// _TransportationOrder._TransportationMode,
// // _TransportationOrder._MeansOfTransport,
// _TransportationOrder._Shipper,
// _TransportationOrder._Consignee,
// _TransportationOrder._Carrier,
// _TranspOrdWarehouseText,
// _LoadingPointText,
// _TranspOrdStopWrhsCategory,
// _TranspOrdStopWrhsDoorStatus,
// _LogisticalStop,
// make child compositions public
_FreightUnit,
_Consignment,
_ERPOrder,
_LogsExecDelivery,
_WarehouseRequest,
_EWMStagingArea,
_EWMStagingBay,
_EWMStagingAreaGroup
}
where
Stop.TranspOrdStopASRRelevance = '1'
and _TransportationOrder.TransportationOrderCategory = 'TO'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_EWM_WAREHOUSENUMBER_2",
"I_LOCATIONBASIC",
"I_LOCATIONTEXT",
"I_MEANSOFTRANSPORT",
"I_MEANSOFTRANSPORTTEXT",
"I_TRANSPHNDLGEXECSTATUS",
"I_TRANSPHNDLGEXECSTATUSTEXT",
"I_TRANSPORDDNGRSGDSSTATUS",
"I_TRANSPORDDNGRSGDSSTATUSTEXT",
"I_TRANSPORDGOODSMVTSTATUS",
"I_TRANSPORDGOODSMVTSTSTEXT",
"I_TRANSPORDLIFECYCLESTATUS",
"I_TRANSPORDLIFECYCLESTATUSTEXT",
"I_TRANSPORDSTOPCATEGORY",
"I_TRANSPORDSTOPCATEGORYTEXT",
"I_TRANSPORDSTOPWRHSCATEGORY",
"I_TRANSPORDSTOPWRHSCATTEXT",
"I_TRANSPORDSTOPWRHSDOORSTATUS",
"I_TRANSPORDSTOPWRHSDOORSTSTXT",
"I_TRANSPORDWAREHOUSETEXT",
"I_TRANSPORDWHSEPROCGSTATUS",
"I_TRANSPORDWHSEPROCGSTSTEXT",
"I_TRANSPORTATIONMODE",
"I_TRANSPORTATIONMODETEXT",
"I_TRANSPORTATIONORDER",
"I_TRANSPORTATIONORDEREXECSTS",
"I_TRANSPORTATIONORDEREXECSTST",
"I_TRANSPORTATIONORDERITEM",
"I_TRANSPORTATIONORDERSTOP",
"I_TRANSPORTATIONORDERTYPE",
"I_TRANSPORTATIONORDERTYPETEXT"
],
"ASSOCIATED":
[
"C_FRTORDSTOPLOADREFCSGNMT",
"C_FRTORDSTOPLOADREFERPORDER",
"C_FRTORDSTOPLOADREFFREIGHTUNIT",
"C_FRTORDSTOPLOADREFLOGSEXECDLV",
"C_FRTORDSTOPLOADREFSTAGINGAREA",
"C_FRTORDSTOPLOADREFSTAGINGBAY",
"C_FRTORDSTOPLOADREFSTGGAREAGRP",
"C_FRTORDSTOPLOADREFWRHSREQUEST"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/