P_MaintOrdDirectProcmtViaPR

DDL: P_MAINTORDDIRECTPROCMTVIAPR SQL: PMTORDPROMTPREQ Type: view COMPOSITE

P_MaintOrdDirectProcmtViaPR is a Composite CDS View in SAP S/4HANA. It reads from 7 data sources and exposes 249 fields with key fields PurchaseRequisition, PurchaseRequisitionItem, PurchaseRequisitionItem, PurchaseRequisitionItem, PurchaseRequisitionItem. It has 8 associations to related views.

Data Sources (7)

SourceAliasJoin Type
I_MaintenanceOrderComponent_2 _MaintenanceOrderComponent from
I_LogisticsOrder I_LogisticsOrder inner
I_LogisticsOrderBasic I_LogisticsOrderBasic inner
I_MaintOrdCompResvnPurgDoc I_MaintOrdCompResvnPurgDoc inner
I_OrderOperation I_OrderOperation union_all
I_PurReqnAcctAssgmt I_PurReqnAcctAssgmt union_all
I_PurReqnAcctAssgmt I_PurReqnAcctAssgmt union_all

Associations (8)

CardinalityTargetAliasCondition
[0..1] I_Purchaserequisitionitem _PurchaseRequisitionItem _PurchaseRequisitionItem.PurchaseRequisition = $projection.PurchaseRequisition and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
[1..1] I_MaintenanceOrder _MaintOrder _MaintOrder.MaintenanceOrder = $projection.MaintenanceOrder
[1] I_MaintOrdProcurementMilestone _ProcurementMilestone _ProcurementMilestone.MaintenanceOrder = $projection.MaintenanceOrder and _ProcurementMilestone.MaintOrdProcurementDocument = $projection.MaintOrdProcurementDocument and _ProcurementMilestone.MaintOrdProcmtMlstnIsCurrent = 'X'
[0..*] I_FunclocationLabelInternal _FuncnlLocationLabel _FuncnlLocationLabel.FunctionalLocation = $projection.functionallocation
[0..1] I_OrderOperation _MaintenanceOrderOperation _MaintenanceOrderOperation.OrderInternalID = _MaintenanceOrderComponent.MaintOrderRoutingNumber and _MaintenanceOrderOperation.OrderOperationInternalID = _MaintenanceOrderComponent.MaintOrderOperationCounter
[0..1] I_Supplier _PreferredSupplier _PreferredSupplier.Supplier = $projection.PreferredSupplier
[1..1] I_MaintenanceOrder _MaintenanceOrder _MaintenanceOrder.MaintenanceOrder = I_PurReqnAcctAssgmt.OrderID
[0..1] I_OrderOperationDatesQty _OperationDates _OperationDates.OrderInternalID = I_OrderOperation.OrderInternalID and _OperationDates.OrderOperationInternalID = I_OrderOperation.OrderOperationInternalID

Annotations (6)

NameValueLevelField
VDM.private true view
VDM.viewType #COMPOSITE view
AccessControl.authorizationCheck #NOT_REQUIRED view
AbapCatalog.sqlViewName PMTORDPROMTPREQ view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.compiler.compareFilter true view

Fields (249)

KeyFieldSource TableSource FieldDescription
KEY PurchaseRequisition I_MaintOrdCompResvnPurgDoc PurchaseRequisition
KEY PurchaseRequisitionItem I_MaintOrdCompResvnPurgDoc PurchaseRequisitionItem
OperationIsProcessedExternally
MaintenanceOrder I_MaintenanceOrderComponent_2 MaintenanceOrder
MaintOrderRoutingNumber I_MaintenanceOrderComponent_2 MaintOrderRoutingNumber
MaintOrderOperationCounter I_MaintenanceOrderComponent_2 MaintOrderOperationCounter
Reservation I_MaintenanceOrderComponent_2 Reservation
ReservationItem I_MaintenanceOrderComponent_2 ReservationItem
MaintenanceOrderOperation
ManufacturingOrderOperation I_MaintenanceOrderComponent_2 MaintenanceOrderOperation
OperationDescription _MaintenanceOrderOperation OperationText
ReferenceDate
MaintOrdBasicStartDate _MaintenanceOrder MaintOrdBasicStartDate
OpErlstSchedldExecStrtDte
RequirementDate I_MaintenanceOrderComponent_2 RequirementDate
MaintenanceOrderType _MaintenanceOrder MaintenanceOrderType
MaintenanceOrderDesc _MaintenanceOrder MaintenanceOrderDesc
MaintPriorityType _MaintenanceOrder MaintPriorityType
MaintPriority _MaintenanceOrder MaintPriority
MaintenanceProcessingPhase _MaintenanceOrder MaintenanceProcessingPhase
MaintPriorityDesc
MaintPriorityColorCode
MaintenanceRevision _MaintenanceOrder MaintenanceRevision
MaintenancePlannerGroup _MaintenanceOrder MaintenancePlannerGroup
MaintenancePlanningPlant _MaintenanceOrder MaintenancePlanningPlant
MaintenancePlant _MaintenanceOrder MaintenancePlant
MainWorkCenter _MaintenanceOrder MainWorkCenter
MainWorkCenterPlant _MaintenanceOrder MainWorkCenterPlant
ScheduledBasicStartDate _MaintenanceOrder ScheduledBasicStartDate
ScheduledBasicStartTime _MaintenanceOrder ScheduledBasicStartTime
ScheduledBasicEndDate _MaintenanceOrder ScheduledBasicEndDate
ScheduledBasicEndTime _MaintenanceOrder ScheduledBasicEndTime
PlantSection
WorkCenterInternalID _MaintenanceOrder WorkCenterInternalID
Equipment _MaintenanceOrder Equipment
FunctionalLocation
MaintObjectLocAcctAssgmtNmbr _MaintenanceOrder MaintObjectLocAcctAssgmtNmbr
Material I_MaintenanceOrderComponent_2 Material
MaterialName I_MaintenanceOrderComponent_2 ComponentDescription
PurchaseOrder _PurchaseRequisitionItem PurchasingDocument
PurchaseOrderItem _PurchaseRequisitionItem PurchasingDocumentItem
PurReqnCmpltnsCat _PurchaseRequisitionItem PurReqnCmpltnsCat
PurReqnReleaseStatus _PurchaseRequisitionItem PurReqnReleaseStatus
RequestedQuantity _PurchaseRequisitionItem RequestedQuantity
BaseUnit _PurchaseRequisitionItem BaseUnit
PurReqnItemCurrency _PurchaseRequisitionItem PurReqnItemCurrency
PurchaseRequisitionPrice _PurchaseRequisitionItem PurchaseRequisitionPrice
PurchaseRequisitionItemText _PurchaseRequisitionItem PurchaseRequisitionItemText
PurchasingGroup _PurchaseRequisitionItem PurchasingGroup
Supplier _PurchaseRequisitionItem FixedSupplier
SupplierName
PreferredSupplier _PurchaseRequisitionItem Supplier
PreferredSupplierName
MaintOrdProcurementDocument I_MaintenanceOrderComponent_2 MaintOrderComponentInternalID
MaintProcurementMilestone _ProcurementMilestone MaintProcurementMilestone
MaintOrdProcmtMilestoneDate _ProcurementMilestone MaintOrdProcmtMilestoneDate
MaintOrdProcmtMlstnDateTime _ProcurementMilestone MaintOrdProcmtMlstnDateTime
_ProcurementMilestone _ProcurementMilestone
_FuncnlLocationLabel _FuncnlLocationLabel
_PurchaseRequisitionItem _PurchaseRequisitionItem
_MaintenanceOrder _MaintOrder
_Supplier _PurchaseRequisitionItem _Supplier
PurchaseRequisition
KEY PurchaseRequisitionItem I_PurReqnAcctAssgmt PurchaseRequisitionItem
OperationIsProcessedExternally
MaintenanceOrder I_PurReqnAcctAssgmt OrderID
MaintOrderRoutingNumber
MaintOrderOperationCounter
Reservation
ReservationItem
MaintenanceOrderOperation
ManufacturingOrderOperation
OperationDescription
ReferenceDate I_LogisticsOrder PlannedStartDate
MaintOrdBasicStartDate I_LogisticsOrder PlannedStartDate
OpErlstSchedldExecStrtDte
RequirementDate
MaintenanceOrderType _MaintenanceOrder MaintenanceOrderType
MaintenanceOrderDesc I_LogisticsOrder OrderDescription
MaintPriorityType _MaintenanceOrder MaintPriorityType
MaintPriority _MaintenanceOrder MaintPriority
MaintenanceProcessingPhase _MaintenanceOrder MaintenanceProcessingPhase
MaintPriorityDesc
MaintPriorityColorCode
MaintenanceRevision _MaintenanceOrder MaintenanceRevision
MaintenancePlannerGroup _MaintenanceOrder MaintenancePlannerGroup
MaintenancePlanningPlant _MaintenanceOrder MaintenancePlanningPlant
MaintenancePlant _MaintenanceOrder MaintenancePlant
MainWorkCenter _MaintenanceOrder MainWorkCenter
MainWorkCenterPlant _MaintenanceOrder MainWorkCenterPlant
ScheduledBasicStartDate _MaintenanceOrder ScheduledBasicStartDate
ScheduledBasicStartTime _MaintenanceOrder ScheduledBasicStartTime
ScheduledBasicEndDate _MaintenanceOrder ScheduledBasicEndDate
ScheduledBasicEndTime _MaintenanceOrder ScheduledBasicEndTime
PlantSection
WorkCenterInternalID _MaintenanceOrder WorkCenterInternalID
Equipment _MaintenanceOrder Equipment
FunctionalLocation
MaintObjectLocAcctAssgmtNmbr _MaintenanceOrder MaintObjectLocAcctAssgmtNmbr
Material _PurchaseRequisitionItem Material
MaterialName _PurchaseRequisitionItem PurchaseRequisitionItemText
PurchaseOrder _PurchaseRequisitionItem PurchasingDocument
PurchaseOrderItem _PurchaseRequisitionItem PurchasingDocumentItem
PurReqnCmpltnsCat _PurchaseRequisitionItem PurReqnCmpltnsCat
PurReqnReleaseStatus _PurchaseRequisitionItem PurReqnReleaseStatus
RequestedQuantity _PurchaseRequisitionItem RequestedQuantity
BaseUnit _PurchaseRequisitionItem BaseUnit
PurReqnItemCurrency _PurchaseRequisitionItem PurReqnItemCurrency
PurchaseRequisitionPrice _PurchaseRequisitionItem PurchaseRequisitionPrice
PurchaseRequisitionItemText _PurchaseRequisitionItem PurchaseRequisitionItemText
PurchasingGroup _PurchaseRequisitionItem PurchasingGroup
Supplier _PurchaseRequisitionItem FixedSupplier
SupplierName
PreferredSupplier
PreferredSupplierName
MaintOrdProcurementDocument I_PurchaseRequisitionItemBasic PurchaseReqnItemUniqueID
MaintProcurementMilestone _ProcurementMilestone MaintProcurementMilestone
MaintOrdProcmtMilestoneDate _ProcurementMilestone MaintOrdProcmtMilestoneDate
MaintOrdProcmtMlstnDateTime _ProcurementMilestone MaintOrdProcmtMlstnDateTime
_ProcurementMilestone _ProcurementMilestone
_FuncnlLocationLabel _FuncnlLocationLabel
_PurchaseRequisitionItem _PurchaseRequisitionItem
_MaintenanceOrder _MaintenanceOrder
_Supplier _PurchaseRequisitionItem _Supplier
PurchaseRequisition
KEY PurchaseRequisitionItem I_PurReqnAcctAssgmt PurchaseRequisitionItem
OperationIsProcessedExternally
MaintenanceOrder I_PurReqnAcctAssgmt OrderID
MaintOrderRoutingNumber I_PurReqnAcctAssgmt OrderInternalID
MaintOrderOperationCounter I_PurReqnAcctAssgmt NetworkActivityInternalID
Reservation
ReservationItem
MaintenanceOrderOperation _MaintOrderOperPlanningValues Operation
ManufacturingOrderOperation _MaintOrderOperPlanningValues Operation
OperationDescription _MaintOrderOperPlanningValues OperationText
ReferenceDate _MaintOrderOperPlanningValues OpErlstSchedldExecStrtDte
MaintOrdBasicStartDate _MaintenanceOrder MaintOrdBasicStartDate
OpErlstSchedldExecStrtDte _MaintOrderOperPlanningValues OpErlstSchedldExecStrtDte
RequirementDate
MaintenanceOrderType I_LogisticsOrder OrderType
MaintenanceOrderDesc I_LogisticsOrder OrderDescription
MaintPriorityType _MaintenanceOrder MaintPriorityType
MaintPriority _MaintenanceOrder MaintPriority
MaintenanceProcessingPhase _MaintenanceOrder MaintenanceProcessingPhase
MaintPriorityDesc
MaintPriorityColorCode
MaintenanceRevision _MaintenanceOrder MaintenanceRevision
MaintenancePlannerGroup _MaintenanceOrder MaintenancePlannerGroup
MaintenancePlanningPlant _MaintenanceOrder MaintenancePlanningPlant
MaintenancePlant _MaintenanceOrder MaintenancePlant
MainWorkCenter _MaintenanceOrder MainWorkCenter
MainWorkCenterPlant _MaintenanceOrder MainWorkCenterPlant
ScheduledBasicStartDate _MaintenanceOrder ScheduledBasicStartDate
ScheduledBasicStartTime _MaintenanceOrder ScheduledBasicStartTime
ScheduledBasicEndDate _MaintenanceOrder ScheduledBasicEndDate
ScheduledBasicEndTime _MaintenanceOrder ScheduledBasicEndTime
PlantSection
WorkCenterInternalID _MaintenanceOrder WorkCenterInternalID
Equipment _MaintenanceOrder Equipment
FunctionalLocation
MaintObjectLocAcctAssgmtNmbr _MaintenanceOrder MaintObjectLocAcctAssgmtNmbr
Material _PurchaseRequisitionItem Material
MaterialName _PurchaseRequisitionItem PurchaseRequisitionItemText
PurchaseOrder _PurchaseRequisitionItem PurchasingDocument
PurchaseOrderItem _PurchaseRequisitionItem PurchasingDocumentItem
PurReqnCmpltnsCat _PurchaseRequisitionItem PurReqnCmpltnsCat
PurReqnReleaseStatus _PurchaseRequisitionItem PurReqnReleaseStatus
RequestedQuantity _PurchaseRequisitionItem RequestedQuantity
BaseUnit _PurchaseRequisitionItem BaseUnit
PurReqnItemCurrency _PurchaseRequisitionItem PurReqnItemCurrency
PurchaseRequisitionPrice _PurchaseRequisitionItem PurchaseRequisitionPrice
PurchaseRequisitionItemText _PurchaseRequisitionItem PurchaseRequisitionItemText
PurchasingGroup _PurchaseRequisitionItem PurchasingGroup
Supplier _PurchaseRequisitionItem FixedSupplier
SupplierName
PreferredSupplier
PreferredSupplierName
MaintOrdProcurementDocument I_PurchaseRequisitionItemBasic PurchaseReqnItemUniqueID
MaintProcurementMilestone _ProcurementMilestone MaintProcurementMilestone
MaintOrdProcmtMilestoneDate _ProcurementMilestone MaintOrdProcmtMilestoneDate
MaintOrdProcmtMlstnDateTime _ProcurementMilestone MaintOrdProcmtMlstnDateTime
_ProcurementMilestone _ProcurementMilestone
_FuncnlLocationLabel _FuncnlLocationLabel
_PurchaseRequisitionItem _PurchaseRequisitionItem
_MaintenanceOrder _MaintenanceOrder
_Supplier _PurchaseRequisitionItem _Supplier
PurchaseRequisition
KEY PurchaseRequisitionItem I_OrderOperation PurchaseRequisitionItem
OperationIsProcessedExternally
MaintenanceOrder I_LogisticsOrderBasic OrderID
MaintOrderRoutingNumber I_OrderOperation OrderInternalID
MaintOrderOperationCounter I_OrderOperation OrderOperationInternalID
Reservation
ReservationItem
MaintenanceOrderOperation I_OrderOperation Operation
ManufacturingOrderOperation I_OrderOperation Operation
OperationDescription I_OrderOperation OperationText
ReferenceDate
MaintOrdBasicStartDate _MaintenanceOrder MaintOrdBasicStartDate
OpErlstSchedldExecStrtDte _OperationDates OpErlstSchedldExecStrtDte
RequirementDate
MaintenanceOrderType _MaintenanceOrder MaintenanceOrderType
MaintenanceOrderDesc _MaintenanceOrder MaintenanceOrderDesc
MaintPriorityType _MaintenanceOrder MaintPriorityType
MaintPriority _MaintenanceOrder MaintPriority
MaintenanceProcessingPhase _MaintenanceOrder MaintenanceProcessingPhase
MaintPriorityDesc
MaintPriorityColorCode
MaintenanceRevision _MaintenanceOrder MaintenanceRevision
MaintenancePlannerGroup _MaintenanceOrder MaintenancePlannerGroup
MaintenancePlanningPlant _MaintenanceOrder MaintenancePlanningPlant
MaintenancePlant _MaintenanceOrder MaintenancePlant
MainWorkCenter _MaintenanceOrder MainWorkCenter
MainWorkCenterPlant _MaintenanceOrder MainWorkCenterPlant
ScheduledBasicStartDate _MaintenanceOrder ScheduledBasicStartDate
ScheduledBasicStartTime _MaintenanceOrder ScheduledBasicStartTime
ScheduledBasicEndDate _MaintenanceOrder ScheduledBasicEndDate
ScheduledBasicEndTime _MaintenanceOrder ScheduledBasicEndTime
PlantSection
WorkCenterInternalID _MaintenanceOrder WorkCenterInternalID
Equipment _MaintenanceOrder Equipment
FunctionalLocation
MaintObjectLocAcctAssgmtNmbr _MaintenanceOrder MaintObjectLocAcctAssgmtNmbr
Material
MaterialName
PurchaseOrder _PurchaseRequisitionItem PurchasingDocument
PurchaseOrderItem _PurchaseRequisitionItem PurchasingDocumentItem
PurReqnCmpltnsCat _PurchaseRequisitionItem PurReqnCmpltnsCat
PurReqnReleaseStatus _PurchaseRequisitionItem PurReqnReleaseStatus
RequestedQuantity _PurchaseRequisitionItem RequestedQuantity
BaseUnit _PurchaseRequisitionItem BaseUnit
PurReqnItemCurrency _PurchaseRequisitionItem PurReqnItemCurrency
PurchaseRequisitionPrice _PurchaseRequisitionItem PurchaseRequisitionPrice
PurchaseRequisitionItemText _PurchaseRequisitionItem PurchaseRequisitionItemText
PurchasingGroup _PurchaseRequisitionItem PurchasingGroup
Supplier _PurchaseRequisitionItem FixedSupplier
SupplierName
PreferredSupplier _PurchaseRequisitionItem Supplier
PreferredSupplierName
MaintOrdProcurementDocument I_OrderOperation ObjectInternalID
MaintProcurementMilestone _ProcurementMilestone MaintProcurementMilestone
MaintOrdProcmtMilestoneDate _ProcurementMilestone MaintOrdProcmtMilestoneDate
MaintOrdProcmtMlstnDateTime _ProcurementMilestone MaintOrdProcmtMlstnDateTime
_ProcurementMilestone _ProcurementMilestone
_FuncnlLocationLabel _FuncnlLocationLabel
_PurchaseRequisitionItem _PurchaseRequisitionItem
_MaintenanceOrder _MaintenanceOrder
_Supplier _PurchaseRequisitionItem _Supplier
_PreferredSupplier _PreferredSupplier
@VDM.private: true
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #NOT_REQUIRED
@AbapCatalog.sqlViewName: 'PMTORDPROMTPREQ'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true

define view P_MaintOrdDirectProcmtViaPR

  -- ordered with reservation:
  as select from I_MaintenanceOrderComponent_2 as _MaintenanceOrderComponent
    inner join   I_MaintOrdCompResvnPurgDoc on  _MaintenanceOrderComponent.Reservation         =  I_MaintOrdCompResvnPurgDoc.Reservation
                                            and _MaintenanceOrderComponent.ReservationItem     =  I_MaintOrdCompResvnPurgDoc.ReservationItem
                                            and I_MaintOrdCompResvnPurgDoc.PurchaseRequisition <> ''

  association [0..1] to I_Purchaserequisitionitem      as _PurchaseRequisitionItem   on  _PurchaseRequisitionItem.PurchaseRequisition     = $projection.PurchaseRequisition
                                                                                     and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
  association [1..1] to I_MaintenanceOrder             as _MaintOrder                on  _MaintOrder.MaintenanceOrder = $projection.MaintenanceOrder
  association [1]    to I_MaintOrdProcurementMilestone as _ProcurementMilestone      on  _ProcurementMilestone.MaintenanceOrder             = $projection.MaintenanceOrder
                                                                                     and _ProcurementMilestone.MaintOrdProcurementDocument  = $projection.MaintOrdProcurementDocument
                                                                                     and _ProcurementMilestone.MaintOrdProcmtMlstnIsCurrent = 'X'
  association [0..*] to I_FunclocationLabelInternal    as _FuncnlLocationLabel       on  _FuncnlLocationLabel.FunctionalLocation = $projection.functionallocation
  association [0..1] to I_OrderOperation               as _MaintenanceOrderOperation on  _MaintenanceOrderOperation.OrderInternalID          = _MaintenanceOrderComponent.MaintOrderRoutingNumber
                                                                                     and _MaintenanceOrderOperation.OrderOperationInternalID = _MaintenanceOrderComponent.MaintOrderOperationCounter
  association [0..1] to I_Supplier                     as _PreferredSupplier         on  _PreferredSupplier.Supplier = $projection.PreferredSupplier
{
  key I_MaintOrdCompResvnPurgDoc.PurchaseRequisition,
  key I_MaintOrdCompResvnPurgDoc.PurchaseRequisitionItem,

      cast( ' ' as xfeld preserving type )                                                                      as OperationIsProcessedExternally,

      _MaintenanceOrderComponent.MaintenanceOrder,
      _MaintenanceOrderComponent.MaintOrderRoutingNumber,
      _MaintenanceOrderComponent.MaintOrderOperationCounter,

      _MaintenanceOrderComponent.Reservation,
      _MaintenanceOrderComponent.ReservationItem,

      cast( _MaintenanceOrderComponent.MaintenanceOrderOperation as maintenanceorderoperation preserving type ) as MaintenanceOrderOperation,
      _MaintenanceOrderComponent.MaintenanceOrderOperation                                                      as ManufacturingOrderOperation,
      _MaintenanceOrderOperation.OperationText                                                                  as OperationDescription,
      cast( _MaintenanceOrderComponent.RequirementDate as abap.dats )                                           as ReferenceDate,

      _MaintenanceOrder.MaintOrdBasicStartDate,
      cast( '00000000' as fsavd )                                                                               as OpErlstSchedldExecStrtDte,
      _MaintenanceOrderComponent.RequirementDate                                                                as RequirementDate,

      _MaintenanceOrder.MaintenanceOrderType,
      _MaintenanceOrder.MaintenanceOrderDesc,
      _MaintenanceOrder.MaintPriorityType,
      _MaintenanceOrder.MaintPriority,
      _MaintenanceOrder.MaintenanceProcessingPhase,
      _MaintenanceOrder._MaintenancePriority._Text[ 1: Language = $session.system_language ].MaintPriorityDesc,
      _MaintenanceOrder._MaintenancePriority.MaintPriorityColorCode,
      _MaintenanceOrder.MaintenanceRevision,
      _MaintenanceOrder.MaintenancePlannerGroup,
      _MaintenanceOrder.MaintenancePlanningPlant,
      _MaintenanceOrder.MaintenancePlant,
      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'C_PMWorkCenterVH',
                     element: 'WorkCenter' },
          additionalBinding: [{ localElement: 'MainWorkCenterPlant',
                                element: 'Plant' }]
        }]
      _MaintenanceOrder.MainWorkCenter,
      _MaintenanceOrder.MainWorkCenterPlant,
      _MaintenanceOrder.ScheduledBasicStartDate,
      _MaintenanceOrder.ScheduledBasicStartTime,
      _MaintenanceOrder.ScheduledBasicEndDate,
      _MaintenanceOrder.ScheduledBasicEndTime,
      _MaintenanceOrder._LocationAccountAssignment.PlantSection,
      _MaintenanceOrder.WorkCenterInternalID,
      _MaintenanceOrder.Equipment,
      _MaintenanceOrder._LocationAccountAssignment.FunctionalLocation,
      _MaintenanceOrder.MaintObjectLocAcctAssgmtNmbr,


      _MaintenanceOrderComponent.Material,
      _MaintenanceOrderComponent.ComponentDescription                                                           as MaterialName,
      _PurchaseRequisitionItem.PurchasingDocument                                                               as PurchaseOrder,
      _PurchaseRequisitionItem.PurchasingDocumentItem                                                           as PurchaseOrderItem,
      _PurchaseRequisitionItem.PurReqnCmpltnsCat,
      _PurchaseRequisitionItem.PurReqnReleaseStatus,
      _PurchaseRequisitionItem.RequestedQuantity,
      _PurchaseRequisitionItem.BaseUnit,
      _PurchaseRequisitionItem.PurReqnItemCurrency,
      _PurchaseRequisitionItem.PurchaseRequisitionPrice,
      _PurchaseRequisitionItem.PurchaseRequisitionItemText,
      _PurchaseRequisitionItem.PurchasingGroup,

      _PurchaseRequisitionItem.FixedSupplier                                                                    as Supplier,
      _PurchaseRequisitionItem._Supplier.SupplierName,
      _PurchaseRequisitionItem.Supplier                                                                         as PreferredSupplier,
      _PurchaseRequisitionItem._Supplier.SupplierName                                                           as PreferredSupplierName,

      _MaintenanceOrderComponent.MaintOrderComponentInternalID                                                  as MaintOrdProcurementDocument,
      _ProcurementMilestone.MaintProcurementMilestone,
      _ProcurementMilestone.MaintOrdProcmtMilestoneDate,
      _ProcurementMilestone.MaintOrdProcmtMlstnDateTime,

      _ProcurementMilestone,
      _FuncnlLocationLabel,
      _PurchaseRequisitionItem,
      _MaintOrder                                                                                               as _MaintenanceOrder,
      _PurchaseRequisitionItem._Supplier,
      _PreferredSupplier
}
where
      _MaintenanceOrderComponent.IsDeleted           = ''
  and I_MaintOrdCompResvnPurgDoc.PurchaseRequisition is not null

union all

// -- ordered directly:

select from              I_PurReqnAcctAssgmt
  inner join             I_LogisticsOrder               on I_LogisticsOrder.OrderID = I_PurReqnAcctAssgmt.OrderID
  left outer to one join I_PurchaseRequisitionItemBasic on  I_PurReqnAcctAssgmt.PurchaseRequisition     = I_PurchaseRequisitionItemBasic.PurchaseRequisition
                                                        and I_PurReqnAcctAssgmt.PurchaseRequisitionItem = I_PurchaseRequisitionItemBasic.PurchaseRequisitionItem
association [0..1] to I_Purchaserequisitionitem      as _PurchaseRequisitionItem on  _PurchaseRequisitionItem.PurchaseRequisition     = $projection.PurchaseRequisition
                                                                                 and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
association [1..1] to I_MaintenanceOrder             as _MaintenanceOrder        on  _MaintenanceOrder.MaintenanceOrder = I_PurReqnAcctAssgmt.OrderID
association [1]    to I_MaintOrdProcurementMilestone as _ProcurementMilestone    on  _ProcurementMilestone.MaintenanceOrder             = $projection.MaintenanceOrder
                                                                                 and _ProcurementMilestone.MaintOrdProcurementDocument  = $projection.MaintOrdProcurementDocument
                                                                                 and _ProcurementMilestone.MaintOrdProcmtMlstnIsCurrent = 'X'
association [0..*] to I_FunclocationLabelInternal    as _FuncnlLocationLabel     on  _FuncnlLocationLabel.FunctionalLocation = $projection.functionallocation
association [0..1] to I_Supplier                     as _PreferredSupplier       on  _PreferredSupplier.Supplier = $projection.PreferredSupplier
{
  key I_PurReqnAcctAssgmt.PurchaseRequisition,
  key I_PurReqnAcctAssgmt.PurchaseRequisitionItem,

      ' '                                                     as OperationIsProcessedExternally,

      I_PurReqnAcctAssgmt.OrderID                             as MaintenanceOrder,
      '0000000000'                                            as MaintOrderRoutingNumber,
      '00000000'                                              as MaintOrderOperationCounter,

      '          '                                            as Reservation,
      '    '                                                  as ReservationItem,

      ''                                                      as MaintenanceOrderOperation,
      ''                                                      as ManufacturingOrderOperation,
      ''                                                      as OperationDescription,
      I_LogisticsOrder.PlannedStartDate                       as ReferenceDate,

      I_LogisticsOrder.PlannedStartDate                       as MaintOrdBasicStartDate,
      '00000000'                                              as OpErlstSchedldExecStrtDte,
      '00000000'                                              as RequirementDate,

      _MaintenanceOrder.MaintenanceOrderType,
      I_LogisticsOrder.OrderDescription                       as MaintenanceOrderDesc,
      _MaintenanceOrder.MaintPriorityType,
      _MaintenanceOrder.MaintPriority,
      _MaintenanceOrder.MaintenanceProcessingPhase,
      _MaintenanceOrder._MaintenancePriority._Text[ 1: Language = $session.system_language ].MaintPriorityDesc,
      _MaintenanceOrder._MaintenancePriority.MaintPriorityColorCode,
      _MaintenanceOrder.MaintenanceRevision,
      _MaintenanceOrder.MaintenancePlannerGroup,
      _MaintenanceOrder.MaintenancePlanningPlant,
      _MaintenanceOrder.MaintenancePlant,
      _MaintenanceOrder.MainWorkCenter,
      _MaintenanceOrder.MainWorkCenterPlant,
      _MaintenanceOrder.ScheduledBasicStartDate,
      _MaintenanceOrder.ScheduledBasicStartTime,
      _MaintenanceOrder.ScheduledBasicEndDate,
      _MaintenanceOrder.ScheduledBasicEndTime,
      _MaintenanceOrder._LocationAccountAssignment.PlantSection,
      _MaintenanceOrder.WorkCenterInternalID,
      _MaintenanceOrder.Equipment,
      _MaintenanceOrder._LocationAccountAssignment.FunctionalLocation,
      _MaintenanceOrder.MaintObjectLocAcctAssgmtNmbr,

      _PurchaseRequisitionItem.Material,
      _PurchaseRequisitionItem.PurchaseRequisitionItemText    as MaterialName,
      _PurchaseRequisitionItem.PurchasingDocument             as PurchaseOrder,
      _PurchaseRequisitionItem.PurchasingDocumentItem         as PurchaseOrderItem,
      _PurchaseRequisitionItem.PurReqnCmpltnsCat,
      _PurchaseRequisitionItem.PurReqnReleaseStatus,
      _PurchaseRequisitionItem.RequestedQuantity,
      _PurchaseRequisitionItem.BaseUnit,
      _PurchaseRequisitionItem.PurReqnItemCurrency,
      _PurchaseRequisitionItem.PurchaseRequisitionPrice,
      _PurchaseRequisitionItem.PurchaseRequisitionItemText,
      _PurchaseRequisitionItem.PurchasingGroup,

      _PurchaseRequisitionItem.FixedSupplier                  as Supplier,
      _PurchaseRequisitionItem._Supplier.SupplierName,
      ''                                                      as PreferredSupplier,
      ''                                                      as PreferredSupplierName,

      I_PurchaseRequisitionItemBasic.PurchaseReqnItemUniqueID as MaintOrdProcurementDocument,
      _ProcurementMilestone.MaintProcurementMilestone,
      _ProcurementMilestone.MaintOrdProcmtMilestoneDate,
      _ProcurementMilestone.MaintOrdProcmtMlstnDateTime,
      
      _ProcurementMilestone,
      _FuncnlLocationLabel,
      _PurchaseRequisitionItem,
      _MaintenanceOrder,
      _PurchaseRequisitionItem._Supplier,
      _PreferredSupplier
}
where
      I_LogisticsOrder.OrderCategory                                = '30'
  and I_PurchaseRequisitionItemBasic.PurchasingDocumentItemCategory = '0'
  and I_PurchaseRequisitionItemBasic.IsDeleted                      = ''
  and I_PurReqnAcctAssgmt.NetworkActivityInternalID                 = '00000000' -- not OLC
  and I_PurReqnAcctAssgmt.OrderIntBillOfOperationsItem              = '00000000' -- not PM02
  and I_PurchaseRequisitionItemBasic.SettlementReservation          = '0000000000' -- not from reservation

union all

// -- ordered with OLC, directly:

select from              I_PurReqnAcctAssgmt
  left outer to one join I_OrderOperation as _MaintOrderOperPlanningValues on  _MaintOrderOperPlanningValues.OrderInternalID          = I_PurReqnAcctAssgmt.OrderInternalID
                                                                           and _MaintOrderOperPlanningValues.OrderOperationInternalID = I_PurReqnAcctAssgmt.NetworkActivityInternalID
  left outer to one join I_LogisticsOrder                                  on I_LogisticsOrder.OrderID = I_PurReqnAcctAssgmt.OrderID
  left outer to one join I_PurchaseRequisitionItemBasic                    on  I_PurReqnAcctAssgmt.PurchaseRequisition     = I_PurchaseRequisitionItemBasic.PurchaseRequisition
                                                                           and I_PurReqnAcctAssgmt.PurchaseRequisitionItem = I_PurchaseRequisitionItemBasic.PurchaseRequisitionItem
  left outer to one join I_OrderOperation                                  on  I_OrderOperation.PurchaseRequisition     = I_PurReqnAcctAssgmt.PurchaseRequisition
                                                                           and I_OrderOperation.PurchaseRequisitionItem = I_PurReqnAcctAssgmt.PurchaseRequisitionItem
association [1..1] to I_MaintenanceOrder             as _MaintenanceOrder        on  _MaintenanceOrder.MaintenanceOrder = I_PurReqnAcctAssgmt.OrderID
association [0..1] to I_Purchaserequisitionitem      as _PurchaseRequisitionItem on  _PurchaseRequisitionItem.PurchaseRequisition     = $projection.PurchaseRequisition
                                                                                 and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
association [1]    to I_MaintOrdProcurementMilestone as _ProcurementMilestone    on  _ProcurementMilestone.MaintenanceOrder             = $projection.MaintenanceOrder
                                                                                 and _ProcurementMilestone.MaintOrdProcurementDocument  = $projection.MaintOrdProcurementDocument
                                                                                 and _ProcurementMilestone.MaintOrdProcmtMlstnIsCurrent = 'X'
association [0..*] to I_FunclocationLabelInternal    as _FuncnlLocationLabel     on  _FuncnlLocationLabel.FunctionalLocation = $projection.functionallocation
association [0..1] to I_Supplier                     as _PreferredSupplier       on  _PreferredSupplier.Supplier = $projection.PreferredSupplier
{
  key I_PurReqnAcctAssgmt.PurchaseRequisition,
  key I_PurReqnAcctAssgmt.PurchaseRequisitionItem,

      ' '                                                     as OperationIsProcessedExternally,

      I_PurReqnAcctAssgmt.OrderID                             as MaintenanceOrder,
      I_PurReqnAcctAssgmt.OrderInternalID                     as MaintOrderRoutingNumber,
      I_PurReqnAcctAssgmt.NetworkActivityInternalID           as MaintOrderOperationCounter,

      '          '                                            as Reservation,
      '    '                                                  as ReservationItem,

      _MaintOrderOperPlanningValues.Operation                 as MaintenanceOrderOperation,
      _MaintOrderOperPlanningValues.Operation                 as ManufacturingOrderOperation,
      _MaintOrderOperPlanningValues.OperationText             as OperationDescription,
      _MaintOrderOperPlanningValues.OpErlstSchedldExecStrtDte as ReferenceDate,

      _MaintenanceOrder.MaintOrdBasicStartDate,
      _MaintOrderOperPlanningValues.OpErlstSchedldExecStrtDte,
      '00000000'                                              as RequirementDate,

      I_LogisticsOrder.OrderType                              as MaintenanceOrderType,
      I_LogisticsOrder.OrderDescription                       as MaintenanceOrderDesc,
      _MaintenanceOrder.MaintPriorityType,
      _MaintenanceOrder.MaintPriority,
      _MaintenanceOrder.MaintenanceProcessingPhase,
      _MaintenanceOrder._MaintenancePriority._Text[ 1: Language = $session.system_language ].MaintPriorityDesc,
      _MaintenanceOrder._MaintenancePriority.MaintPriorityColorCode,
      _MaintenanceOrder.MaintenanceRevision,
      _MaintenanceOrder.MaintenancePlannerGroup,
      _MaintenanceOrder.MaintenancePlanningPlant,
      _MaintenanceOrder.MaintenancePlant,
      _MaintenanceOrder.MainWorkCenter,
      _MaintenanceOrder.MainWorkCenterPlant,
      _MaintenanceOrder.ScheduledBasicStartDate,
      _MaintenanceOrder.ScheduledBasicStartTime,
      _MaintenanceOrder.ScheduledBasicEndDate,
      _MaintenanceOrder.ScheduledBasicEndTime,
      _MaintenanceOrder._LocationAccountAssignment.PlantSection,
      _MaintenanceOrder.WorkCenterInternalID,
      _MaintenanceOrder.Equipment,
      _MaintenanceOrder._LocationAccountAssignment.FunctionalLocation,
      _MaintenanceOrder.MaintObjectLocAcctAssgmtNmbr,

      _PurchaseRequisitionItem.Material,
      _PurchaseRequisitionItem.PurchaseRequisitionItemText    as MaterialName,
      _PurchaseRequisitionItem.PurchasingDocument             as PurchaseOrder,
      _PurchaseRequisitionItem.PurchasingDocumentItem         as PurchaseOrderItem,
      _PurchaseRequisitionItem.PurReqnCmpltnsCat,
      _PurchaseRequisitionItem.PurReqnReleaseStatus,
      _PurchaseRequisitionItem.RequestedQuantity,
      _PurchaseRequisitionItem.BaseUnit,
      _PurchaseRequisitionItem.PurReqnItemCurrency,
      _PurchaseRequisitionItem.PurchaseRequisitionPrice,
      _PurchaseRequisitionItem.PurchaseRequisitionItemText,
      _PurchaseRequisitionItem.PurchasingGroup,

      _PurchaseRequisitionItem.FixedSupplier                  as Supplier,
      _PurchaseRequisitionItem._Supplier.SupplierName,
      ''                                                      as PreferredSupplier,
      ''                                                      as PreferredSupplierName,

      I_PurchaseRequisitionItemBasic.PurchaseReqnItemUniqueID as MaintOrdProcurementDocument,
      _ProcurementMilestone.MaintProcurementMilestone,
      _ProcurementMilestone.MaintOrdProcmtMilestoneDate,
      _ProcurementMilestone.MaintOrdProcmtMlstnDateTime,

      _ProcurementMilestone,
      _FuncnlLocationLabel,
      _PurchaseRequisitionItem,
      _MaintenanceOrder,
      _PurchaseRequisitionItem._Supplier,
      _PreferredSupplier
}
where
      I_LogisticsOrder.OrderCategory                                = '30'
  and I_LogisticsOrder.NtwkAccountAssignmentCode                    = '2'
  and I_PurchaseRequisitionItemBasic.PurchasingDocumentItemCategory = '0'
  and I_PurchaseRequisitionItemBasic.IsDeleted                      = ''
  and I_PurchaseRequisitionItemBasic.SettlementReservation          = '0000000000'
  and I_PurReqnAcctAssgmt.OrderIntBillOfOperationsItem              = '00000000'

union all

// --- external operations (PM02), only needed for Backlog Overview / Procurement Milestones:

select from              I_OrderOperation
  left outer to one join I_OperationControlProfile on I_OperationControlProfile.OperationControlProfile = I_OrderOperation.OperationControlProfile
  inner join             I_LogisticsOrderBasic     on I_LogisticsOrderBasic.OrderInternalID = I_OrderOperation.OrderInternalID
association [0..1] to I_OrderOperationDatesQty       as _OperationDates          on  _OperationDates.OrderInternalID          = I_OrderOperation.OrderInternalID
                                                                                 and _OperationDates.OrderOperationInternalID = I_OrderOperation.OrderOperationInternalID
association [0..1] to I_Purchaserequisitionitem      as _PurchaseRequisitionItem on  _PurchaseRequisitionItem.PurchaseRequisition     = I_OrderOperation.PurchaseRequisition
                                                                                 and _PurchaseRequisitionItem.PurchaseRequisitionItem = I_OrderOperation.PurchaseRequisitionItem
association [1..1] to I_MaintenanceOrder             as _MaintenanceOrder        on  _MaintenanceOrder.MaintenanceOrder = $projection.MaintenanceOrder
association [1]    to I_MaintOrdProcurementMilestone as _ProcurementMilestone    on  _ProcurementMilestone.MaintenanceOrder             = $projection.MaintenanceOrder
                                                                                 and _ProcurementMilestone.MaintOrdProcurementDocument  = $projection.MaintOrdProcurementDocument
                                                                                 and _ProcurementMilestone.MaintOrdProcmtMlstnIsCurrent = 'X'
association [0..*] to I_FunclocationLabelInternal    as _FuncnlLocationLabel     on  _FuncnlLocationLabel.FunctionalLocation = $projection.functionallocation
association [0..1] to I_Supplier                     as _PreferredSupplier       on  _PreferredSupplier.Supplier = $projection.PreferredSupplier
{
  key I_OrderOperation.PurchaseRequisition,
  key I_OrderOperation.PurchaseRequisitionItem,

      'X'                                                            as OperationIsProcessedExternally,

      I_LogisticsOrderBasic.OrderID                                  as MaintenanceOrder,
      I_OrderOperation.OrderInternalID                               as MaintOrderRoutingNumber,
      I_OrderOperation.OrderOperationInternalID                      as MaintOrderOperationCounter,

      '          '                                                   as Reservation,
      '    '                                                         as ReservationItem,

      I_OrderOperation.Operation                                     as MaintenanceOrderOperation,
      I_OrderOperation.Operation                                     as ManufacturingOrderOperation,
      I_OrderOperation.OperationText                                 as OperationDescription,
      cast( _OperationDates.OpErlstSchedldExecStrtDte as abap.dats ) as ReferenceDate,

      _MaintenanceOrder.MaintOrdBasicStartDate,
      _OperationDates.OpErlstSchedldExecStrtDte,
      '00000000'                                                     as RequirementDate,

      _MaintenanceOrder.MaintenanceOrderType,
      _MaintenanceOrder.MaintenanceOrderDesc,
      _MaintenanceOrder.MaintPriorityType,
      _MaintenanceOrder.MaintPriority,
      _MaintenanceOrder.MaintenanceProcessingPhase,
      _MaintenanceOrder._MaintenancePriority._Text[ 1: Language = $session.system_language ].MaintPriorityDesc,
      _MaintenanceOrder._MaintenancePriority.MaintPriorityColorCode,
      _MaintenanceOrder.MaintenanceRevision,
      _MaintenanceOrder.MaintenancePlannerGroup,
      _MaintenanceOrder.MaintenancePlanningPlant,
      _MaintenanceOrder.MaintenancePlant,
      _MaintenanceOrder.MainWorkCenter,
      _MaintenanceOrder.MainWorkCenterPlant,
      _MaintenanceOrder.ScheduledBasicStartDate,
      _MaintenanceOrder.ScheduledBasicStartTime,
      _MaintenanceOrder.ScheduledBasicEndDate,
      _MaintenanceOrder.ScheduledBasicEndTime,
      _MaintenanceOrder._LocationAccountAssignment.PlantSection,
      _MaintenanceOrder.WorkCenterInternalID,
      _MaintenanceOrder.Equipment,
      _MaintenanceOrder._LocationAccountAssignment.FunctionalLocation,
      _MaintenanceOrder.MaintObjectLocAcctAssgmtNmbr,


      ''                                                             as Material,
      ''                                                             as MaterialName,
      _PurchaseRequisitionItem.PurchasingDocument                    as PurchaseOrder,
      _PurchaseRequisitionItem.PurchasingDocumentItem                as PurchaseOrderItem,
      _PurchaseRequisitionItem.PurReqnCmpltnsCat,
      _PurchaseRequisitionItem.PurReqnReleaseStatus,
      _PurchaseRequisitionItem.RequestedQuantity,
      _PurchaseRequisitionItem.BaseUnit,
      _PurchaseRequisitionItem.PurReqnItemCurrency,
      _PurchaseRequisitionItem.PurchaseRequisitionPrice,
      _PurchaseRequisitionItem.PurchaseRequisitionItemText,
      _PurchaseRequisitionItem.PurchasingGroup,

      _PurchaseRequisitionItem.FixedSupplier                         as Supplier,
      _PurchaseRequisitionItem._Supplier.SupplierName,
      _PurchaseRequisitionItem.Supplier                              as PreferredSupplier,
      _PurchaseRequisitionItem._Supplier.SupplierName                as PreferredSupplierName,

      I_OrderOperation.ObjectInternalID                              as MaintOrdProcurementDocument,
      _ProcurementMilestone.MaintProcurementMilestone,
      _ProcurementMilestone.MaintOrdProcmtMilestoneDate,
      _ProcurementMilestone.MaintOrdProcmtMlstnDateTime,

      _ProcurementMilestone,
      _FuncnlLocationLabel,
      _PurchaseRequisitionItem,
      _MaintenanceOrder,
      _PurchaseRequisitionItem._Supplier,
      _PreferredSupplier
}
where
      I_OrderOperation.PurchaseRequisition                     <> ''
  and I_OperationControlProfile.OperationIsProcessedExternally =  'X'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_LOCATIONACCOUNTASSIGNMENT",
"I_LOGISTICSORDER",
"I_LOGISTICSORDERBASIC",
"I_MAINTENANCEORDER",
"I_MAINTENANCEORDERCOMPONENT_2",
"I_MAINTORDCOMPRESVNPURGDOC",
"I_MAINTORDPROCUREMENTMILESTONE",
"I_OPERATIONCONTROLPROFILE",
"I_ORDEROPERATION",
"I_ORDEROPERATIONDATESQTY",
"I_PMNOTIFICATIONPRIORITY",
"I_PMNOTIFICATIONPRIORITYTEXT",
"I_PURCHASEREQUISITIONITEM",
"I_PURCHASEREQUISITIONITEMBASIC",
"I_PURREQNACCTASSGMT",
"I_SUPPLIER"
],
"ASSOCIATED":
[
"I_FUNCLOCATIONLABELINTERNAL",
"I_MAINTENANCEORDER",
"I_MAINTORDPROCUREMENTMILESTONE",
"I_ORDEROPERATION",
"I_PURCHASEREQUISITIONITEM",
"I_SUPPLIER"
],
"BASE":
[
"I_PURCHASEREQUISITIONITEM"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/