I_TrOrdItmPrdcssrIntegDocType

DDL: I_TRORDITMPRDCSSRINTEGDOCTYPE Type: view_entity COMPOSITE Package: VDM_TM_BO_TOR

Tr Ord Item Prdcssr Integration Doc Type

I_TrOrdItmPrdcssrIntegDocType is a Composite CDS View that provides data about "Tr Ord Item Prdcssr Integration Doc Type" in SAP S/4HANA. It reads from 6 data sources and exposes 10 fields with key fields TransportationOrderItemUUID, BusinessTransactionDocType, BusinessTransactionDocType, BusinessTransactionDocType. Part of development package VDM_TM_BO_TOR.

Data Sources (6)

SourceAliasJoin Type
I_TransportationOrder_2 FreightUnit inner
R_TransportationOrderItem FreightUnitItem inner
I_TranspOrdItemPredecessor FreightUnitItemPredecessor inner
R_TransportationOrderItem TransportationOrderItem from
R_TransportationOrderItem TransportationOrderItem union
R_TransportationOrderItem TransportationOrderItem union

Annotations (7)

NameValueLevelField
EndUserText.label Tr Ord Item Prdcssr Integration Doc Type view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.viewType #COMPOSITE view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
Metadata.ignorePropagatedAnnotations true view

Fields (10)

KeyFieldSource TableSource FieldDescription
KEY TransportationOrderItemUUID R_TransportationOrderItem TransportationOrderItemUUID
KEY BusinessTransactionDocType I_TranspOrdItemPredecessor BusinessTransactionDocType
BusinessTransactionDocument I_TranspOrdItemPredecessor BusinessTransactionDocument
KEY BusinessTransactionDocType
BusinessTransactionDocument
TranspBizTransacDocItemType
KEY BusinessTransactionDocType
BusinessTransactionDocument
TranspBizTransacDocItemType
BusinessTransactionDocItem
@EndUserText.label: 'Tr Ord Item Prdcssr Integration Doc Type'
@ObjectModel:   {usageType:          {serviceQuality: #C,
                                      sizeCategory:   #XL,
                                      dataClass:      #TRANSACTIONAL}}
@VDM:           {viewType:           #COMPOSITE}
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl: {authorizationCheck: #PRIVILEGED_ONLY,
                 personalData.blocking:#('TRANSACTIONAL_DATA')}
@Metadata.ignorePropagatedAnnotations: true

define view entity I_TrOrdItmPrdcssrIntegDocType
  // Item Predecessor Node of Freight Unit Items contains information about all integrated Predecessor Documents into TM

  as select from R_TransportationOrderItem  as TransportationOrderItem
    inner join   R_TransportationOrderItem  as FreightUnitItem            on (     TransportationOrderItem.TranspOrignRefItemUUID is not initial
                                                                               and TransportationOrderItem.TranspOrignRefItemUUID = FreightUnitItem.TranspOrignRefItemUUID )
                                                                          or (     TransportationOrderItem.TranspOrignRefItemUUID       is initial
                                                                               and TransportationOrderItem.TranspOrignRefParentItemUUID is not initial
                                                                               and TransportationOrderItem.TransportationRequestItem    is not initial
                                                                               and TransportationOrderItem.TranspOrignRefParentItemUUID = FreightUnitItem.TranspOrignRefParentItemUUID
                                                                               and TransportationOrderItem.TransportationRequestItem    = FreightUnitItem.TransportationRequestItem )
    inner join   I_TransportationOrder_2    as FreightUnit                on  FreightUnit.TransportationOrderUUID     = FreightUnitItem.TransportationOrderUUID
                                                                          and FreightUnit.TransportationOrderUUID     = TransportationOrderItem.FreightUnitUUID // safety net, that also TOR Item and FU Root match

                                                                          and FreightUnit.TransportationOrderCategory = 'FU' // Freight Unit

    inner join   I_TranspOrdItemPredecessor as FreightUnitItemPredecessor on FreightUnitItemPredecessor.TransportationOrderItemUUID = FreightUnitItem.TransportationOrderItemUUID

{
  key TransportationOrderItem.TransportationOrderItemUUID    as TransportationOrderItemUUID,
  key FreightUnitItemPredecessor.BusinessTransactionDocType  as BusinessTransactionDocType,
      FreightUnitItemPredecessor.BusinessTransactionDocument as BusinessTransactionDocument,
      cast(
        case
          when FreightUnitItemPredecessor.TranspBizTransacDocItemType is not initial
            then FreightUnitItemPredecessor.TranspBizTransacDocItemType
          when FreightUnitItemPredecessor.TranspBizTransacDocParItmType is not initial
            then FreightUnitItemPredecessor.TranspBizTransacDocParItmType
          else ''
        end as /scmtms/vdm_btd_itm_type preserving type )    as TranspBizTransacDocItemType,
      cast(
        case
          when FreightUnitItemPredecessor.TranspBizTransacDocItemType is not initial
            then FreightUnitItemPredecessor.BusinessTransactionDocItem
          when FreightUnitItemPredecessor.TranspBizTransacDocParItmType is not initial
            then FreightUnitItemPredecessor.TranspBizTransacDocParItm
          else ''
        end as /scmtms/btd_item_id preserving type )         as BusinessTransactionDocItem
}
where
      FreightUnitItemPredecessor.BusinessTransactionDocType is not initial
  and FreightUnitItemPredecessor.BusinessTransactionDocType <> TransportationOrderItem.TranspOriginDocumentType // instance already included in UNION-statement below


union

// ORIG_BTD_ID on item level might on top of that also include information about not-integrated Predecessor Documents into TM

// -> (e.g. SD-reference in case of pure delivery integration)

select from R_TransportationOrderItem as TransportationOrderItem
{
  key TransportationOrderItem.TransportationOrderItemUUID                                                      as TransportationOrderItemUUID,
  key cast( TransportationOrderItem.TranspOriginDocumentType     as /scmtms/btd_type_code    preserving type ) as BusinessTransactionDocType,
      cast( TransportationOrderItem.TransportationOriginDocument as /scmtms/btd_id           preserving type ) as BusinessTransactionDocument,
      cast( TransportationOrderItem.TranspOriginDocumentItemType as /scmtms/vdm_btd_itm_type preserving type ) as TranspBizTransacDocItemType,
      cast( TransportationOrderItem.TranspOriginDocumentItem     as /scmtms/btd_item_id      preserving type ) as BusinessTransactionDocItem
}
where
  TransportationOrderItem.TranspOriginDocumentType is not initial
  
union

// BASE_BTD_ID on item level might on top of that also include information about Delivery Documents of HU Items

select from R_TransportationOrderItem as TransportationOrderItem
{
  key TransportationOrderItem.TransportationOrderItemUUID                                                    as TransportationOrderItemUUID,
  key cast( TransportationOrderItem.TranspBaseDocumentType     as /scmtms/btd_type_code    preserving type ) as BusinessTransactionDocType,
      cast( TransportationOrderItem.TranspBaseDocument         as /scmtms/btd_id           preserving type ) as BusinessTransactionDocument,
      cast( TransportationOrderItem.TranspBaseDocumentItemType as /scmtms/vdm_btd_itm_type preserving type ) as TranspBizTransacDocItemType,
      cast( TransportationOrderItem.TranspBaseDocumentItem     as /scmtms/btd_item_id      preserving type ) as BusinessTransactionDocItem
}
where
      TransportationOrderItem.TranspBaseDocumentType     is not initial
  and TransportationOrderItem.TranspBaseDocumentItemType = '12' //Handling Unit Inventory Change Item