C_FrtOrdStopLoadRefEWMDelivery is a Consumption CDS View that provides data about "Reference Stop to EWM Delivery Item" in SAP S/4HANA. It reads from 2 data sources (I_TransportationOrderItem, I_TranspOrdStopItmLoadRef) and exposes 5 fields with key fields TransportationOrderUUID, TransportationOrderStopUUID. It has 7 associations to related views.
@EndUserText.label: 'Reference Stop to EWM Delivery Item'
@ObjectModel: { usageType: {serviceQuality: #C,
sizeCategory: #XL,
dataClass: #TRANSACTIONAL}}
@VDM: { viewType: #CONSUMPTION,
usage.type: [#TRANSACTIONAL_PROCESSING_SERVICE]}@AccessControl: { authorizationCheck: #MANDATORY,
personalData.blocking:#('TRANSACTIONAL_DATA') }@Metadata.ignorePropagatedAnnotations: truedefineviewentity C_FrtOrdStopLoadRefEWMDelivery
asselectfrom I_TranspOrdStopItmLoadRef as StopItemLoadref
//Loadref Item to Item
innerjoin I_TransportationOrderItem as _LoadedItem on StopItemLoadref.TransportationOrderItemUUID = _LoadedItem.TransportationOrderItemUUID
//Loadref Package to Iterm - we need only one child item per package
leftouter to one join I_TransportationOrderItem as _ChildItem on StopItemLoadref.TransportationOrderItemUUID = _ChildItem.TranspOrdItemParentItemUUID
//Loadref Package to package - we need two levels of nested packages
leftouter to one join I_TransportationOrderItem as _ChildItemNested on _ChildItem.TransportationOrderItemUUID = _ChildItemNested.TranspOrdItemParentItemUUID
// Associations for loaded items
association [0..1] to I_EWM_InbDeliveryItemBasic as _EWMInboundDelivery on _LoadedItem.TranspOrdDocReferenceID = _EWMInboundDelivery.EWMInboundDelivery
and _LoadedItem.TranspOrdDocReferenceItmID = _EWMInboundDelivery.EWMInboundDeliveryItem
and _LoadedItem.TranspOrdDocReferenceType = '3004'
association [0..1] to I_EWM_OutbDelivOrdItemBasic as _EWMOutboundDelivery on _LoadedItem.TranspOrdDocReferenceID = _EWMOutboundDelivery.OutboundDeliveryOrder
and _LoadedItem.TranspOrdDocReferenceItmID = _EWMOutboundDelivery.OutboundDeliveryOrderItem
and _LoadedItem.TranspOrdDocReferenceType = '496'
// Associations for loaded package to iterm
association [0..1] to I_EWM_InbDeliveryItemBasic as _EWMInboundDeliveryChild on _ChildItem.TranspOrdDocReferenceID = _EWMInboundDeliveryChild.EWMInboundDelivery
and _ChildItem.TranspOrdDocReferenceItmID = _EWMInboundDeliveryChild.EWMInboundDeliveryItem
and _ChildItem.TranspOrdDocReferenceType = '3004'
association [0..1] to I_EWM_OutbDelivOrdItemBasic as _EWMOutboundDeliveryChild on _ChildItem.TranspOrdDocReferenceID = _EWMOutboundDeliveryChild.OutboundDeliveryOrder
and _ChildItem.TranspOrdDocReferenceItmID = _EWMOutboundDeliveryChild.OutboundDeliveryOrderItem
and _ChildItem.TranspOrdDocReferenceType = '496'
// Associations for nested packages
association [0..1] to I_EWM_InbDeliveryItemBasic as _EWMInbDeliveryChildNested on _ChildItemNested.TranspOrdDocReferenceID = _EWMInbDeliveryChildNested.EWMInboundDelivery
and _ChildItemNested.TranspOrdDocReferenceItmID = _EWMInbDeliveryChildNested.EWMInboundDeliveryItem
and _ChildItemNested.TranspOrdDocReferenceType = '3004'
association [0..1] to I_EWM_OutbDelivOrdItemBasic as _EWMOutbDeliveryChildNested on _ChildItemNested.TranspOrdDocReferenceID = _EWMOutbDeliveryChildNested.OutboundDeliveryOrder
and _ChildItemNested.TranspOrdDocReferenceItmID = _EWMOutbDeliveryChildNested.OutboundDeliveryOrderItem
and _ChildItemNested.TranspOrdDocReferenceType = '496'
// Association needed for DCL
association [0..1] to C_FreightOrderStopASR as _Stop on $projection.TransportationOrderStopUUID = _Stop.TransportationOrderStopUUID
{
key StopItemLoadref.TransportationOrderUUID,
key StopItemLoadref.TransportationOrderStopUUID,
// Find staging area data
// Inbound ReferenceType 3004, Outbound ReferenceType 496
// Outbound deliveries (496) with PKG have the btd_id on package and item
// Inbound deliveries (3004) with PKG item have the btd_id only on the child item
// In special cases a nested HU requres two levels of child items
//Staging Area
case _LoadedItem.TranspOrdDocReferenceType
when '3004' thencasewhen _LoadedItem.TranspOrdItemCategory = 'PRD' then _EWMInboundDelivery.StagingArea // Product was loaded
when _ChildItemNested.TransportationOrderItemUUID isnotnullthen _EWMInbDeliveryChildNested.StagingArea // nested HU was loaded
else _EWMInboundDeliveryChild.StagingArea // Package was loaded
endwhen '496' thencasewhen _LoadedItem.TranspOrdItemCategory = 'PRD' then _EWMOutboundDelivery.StagingArea
when _ChildItemNested.TransportationOrderItemUUID isnotnullthen _EWMOutbDeliveryChildNested.StagingArea
else _EWMOutboundDeliveryChild.StagingArea
endwhen '' thencase//inbound with package find btd_id via child item
when _ChildItem.TranspOrdDocReferenceType = '3004' then _EWMInboundDeliveryChild.StagingArea
else '' //prevent havingNULL values
endelse ''
endas StagingArea,
//Staging Area Groupcase _LoadedItem.TranspOrdDocReferenceType
when '3004' thencasewhen _LoadedItem.TranspOrdItemCategory = 'PRD' then _EWMInboundDelivery.StagingAreaGroup
when _ChildItemNested.TransportationOrderItemUUID isnotnullthen _EWMInbDeliveryChildNested.StagingAreaGroup
else _EWMInboundDeliveryChild.StagingAreaGroup
endwhen '496' thencasewhen _LoadedItem.TranspOrdItemCategory = 'PRD' then _EWMOutboundDelivery.StagingAreaGroup
when _ChildItemNested.TransportationOrderItemUUID isnotnullthen _EWMOutbDeliveryChildNested.StagingAreaGroup
else _EWMOutboundDeliveryChild.StagingAreaGroup
endwhen '' thencase//inbound with package find btd_id via child item
when _ChildItem.TranspOrdDocReferenceType = '3004' then _EWMInboundDeliveryChild.StagingAreaGroup
else ''
endelse ''
endas StagingAreaGroup,
//Staging Area Bay
case _LoadedItem.TranspOrdDocReferenceType
when '3004' thencasewhen _LoadedItem.TranspOrdItemCategory = 'PRD' then _EWMInboundDelivery.StagingBay
when _ChildItemNested.TransportationOrderItemUUID isnotnullthen _EWMInbDeliveryChildNested.StagingBay
else _EWMInboundDeliveryChild.StagingBay
endwhen '496' thencasewhen _LoadedItem.TranspOrdItemCategory = 'PRD' then _EWMOutboundDelivery.StagingBay
when _ChildItemNested.TransportationOrderItemUUID isnotnullthen _EWMOutbDeliveryChildNested.StagingBay
else _EWMOutboundDeliveryChild.StagingBay
endwhen '' thencase//inbound with package find btd_id via child item
when _ChildItem.TranspOrdDocReferenceType = '3004' then _EWMInboundDeliveryChild.StagingBay
else ''
endelse ''
endas StagingBay,
//needed for DCL
_Stop
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_EWM_INBDELIVERYITEMBASIC",
"I_EWM_OUTBDELIVORDITEMBASIC",
"I_TRANSPORDSTOPITMLOADREF",
"I_TRANSPORTATIONORDERITEM"
],
"ASSOCIATED":
[
"C_FREIGHTORDERSTOPASR"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/