I_MfgOrderOperationComponent

DDL: I_MFGORDEROPERATIONCOMPONENT SQL: IPPMFGORDOPCOMP Type: view BASIC Package: VDM_PP_SFC

Manufacturing Order Operation Component

I_MfgOrderOperationComponent is a Basic CDS View (Dimension) that provides data about "Manufacturing Order Operation Component" in SAP S/4HANA. It reads from 1 data source (P_MfgOrderOpReservationItem) and exposes 242 fields with key fields Reservation, ReservationItem, RecordType. It has 97 associations to related views. Part of development package VDM_PP_SFC.

Data Sources (1)

SourceAliasJoin Type
P_MfgOrderOpReservationItem resb from

Associations (97)

CardinalityTargetAliasCondition
[1..1] I_ReservationDocumentHeader _Reservation $projection.Reservation = _Reservation.Reservation
[1..1] I_ReservationDocumentItem _ReservationItem $projection.Reservation = _ReservationItem.Reservation and $projection.ReservationItem = _ReservationItem.ReservationItem and $projection.RecordType = _ReservationItem.RecordType
[0..1] I_ReservationDocRecordType _ReservationDocRecordType $projection.RecordType = _ReservationDocRecordType.RecordType
[1..1] I_ManufacturingOrder _ManufacturingOrder $projection.ManufacturingOrder = _ManufacturingOrder.ManufacturingOrder
[1..1] I_ManufacturingOrderSequence _ManufacturingOrderSequence $projection.ManufacturingOrder = _ManufacturingOrderSequence.ManufacturingOrder and $projection.ManufacturingOrderSequence = _ManufacturingOrderSequence.ManufacturingOrderSequence
[1..1] I_MfgOrder _MfgOrder $projection.ManufacturingOrder = _MfgOrder.ManufacturingOrder
[1..1] I_MfgOrderSequence _MfgOrderSequence $projection.ManufacturingOrder = _MfgOrderSequence.ManufacturingOrder and $projection.ManufacturingOrderSequence = _MfgOrderSequence.ManufacturingOrderSequence
[0..1] I_SequenceCategory _MfgOrderSequenceCategory $projection.MfgOrderSequenceCategory = _MfgOrderSequenceCategory.SequenceCategory
[1..1] I_MfgOrderOperationBasic _MfgOrderOperation $projection.OrderInternalBillOfOperations = _MfgOrderOperation.OrderInternalBillOfOperations and $projection.OrderIntBillOfOperationsItem = _MfgOrderOperation.OrderIntBillOfOperationsItem
[1..1] I_MfgOrderOperationBySemanKey _MfgOrderOperationBySemanKey $projection.ManufacturingOrder = _MfgOrderOperationBySemanKey.ManufacturingOrder and $projection.ManufacturingOrderSequence = _MfgOrderOperationBySemanKey.ManufacturingOrderSequence and $projection.ManufacturingOrderOperation = _MfgOrderOperationBySemanKey.ManufacturingOrderOperation
[1..1] I_MfgOrderOperationBySemKey _MfgOrderOperationBySemKey $projection.ManufacturingOrder = _MfgOrderOperationBySemKey.ManufacturingOrder and $projection.ManufacturingOrderSequence = _MfgOrderOperationBySemKey.ManufacturingOrderSequence and $projection.ManufacturingOrderOperation_2 = _MfgOrderOperationBySemKey.ManufacturingOrderOperation
[1..1] I_MfgOrderCategory _MfgOrderCategory $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
[1..1] I_MfgOrderType _MfgOrderType $projection.ManufacturingOrderType = _MfgOrderType.ManufacturingOrderType
[1..1] I_Plant _ProductionPlant $projection.ProductionPlant = _ProductionPlant.Plant
[1..1] I_OrdInternalBillOfOperations _OrdInternalBillOfOperations $projection.OrderInternalBillOfOperations = _OrdInternalBillOfOperations.OrderInternalBillOfOperations
[1..1] I_OrderInternalID _OrderInternalID $projection.OrderInternalBillOfOperations = _OrderInternalID.OrderInternalID
[1..1] I_MaterialRequirementType _RequirementType $projection.RequirementType = _RequirementType.RequirementType
[1..1] I_MaterialGroup _MaterialGroup $projection.MaterialGroup = _MaterialGroup.MaterialGroup
[1..1] I_Material _Material $projection.Material = _Material.Material
[1..1] I_Product _Product $projection.Material = _Product.Product
[1..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[1..1] I_ProductPlant _ProductPlant $projection.Material = _ProductPlant.Product and $projection.Plant = _ProductPlant.Plant
[1..1] I_ProductPlantBasic _ProductPlant2 $projection.Material = _ProductPlant2.Product and $projection.Plant = _ProductPlant2.Plant
[1..1] I_ProductSupplyPlanning _ProductSupplyPlanning $projection.Material = _ProductSupplyPlanning.Product and $projection.Plant = _ProductSupplyPlanning.Plant
[0..1] I_ProductStorageLocation _ProductStorageLocation $projection.Material = _ProductStorageLocation.Product and $projection.Plant = _ProductStorageLocation.Plant and $projection.StorageLocation = _ProductStorageLocation.StorageLocation
[0..1] I_ProductStorageLocationBasic _ProductStorageLocation2 $projection.Material = _ProductStorageLocation2.Product and $projection.Plant = _ProductStorageLocation2.Plant and $projection.StorageLocation = _ProductStorageLocation2.StorageLocation
[1..*] I_ProductUnitsOfMeasure _ProductUnitsOfMeasure $projection.Material = _ProductUnitsOfMeasure.Product
[0..1] I_MRPController _AssemblyMRPController $projection.Plant = _AssemblyMRPController.Plant and $projection.AssemblyMRPController = _AssemblyMRPController.MRPController
[0..1] I_ProductionSupervisor _ProductionSupervisor $projection.Plant = _ProductionSupervisor.Plant and $projection.ProductionSupervisor = _ProductionSupervisor.ProductionSupervisor
[0..1] I_SalesOrder _SalesOrder $projection.SalesOrder = _SalesOrder.SalesOrder
[0..1] I_SalesOrderItem _SalesOrderItem $projection.SalesOrder = _SalesOrderItem.SalesOrder and $projection.SalesOrderItem = _SalesOrderItem.SalesOrderItem
[0..1] I_WBSElementByInternalKey _WBSElement $projection.WBSElementInternalID = _WBSElement.WBSElementInternalID
[0..1] I_WBSElementBasicData _WBSElementBasicData $projection.WBSElementInternalID = _WBSElementBasicData.WBSElementInternalID
[0..1] I_WBSElementBasicData _WBSElementBasicData2 $projection.WBSElementInternalID_2 = _WBSElementBasicData2.WBSElementInternalID
[0..1] I_EnterpriseProjectElement _EnterpriseProjectElement $projection.WBSElementInternalID_2 = _EnterpriseProjectElement.WBSElementInternalID
[0..1] I_ChangeMaster _ChangeNumber $projection.ChangeNumber = _ChangeNumber.ChangeNumber
[0..1] I_BOMExplosionDate _BOMExplosion $projection.BOMExplosionDateID = _BOMExplosion.BOMExplosionDateID
[0..1] I_BillOfMaterialItemBasic _BillOfMaterialItem $projection.BillOfMaterialCategory = _BillOfMaterialItem.BillOfMaterialCategory and $projection.BillOfMaterial = _BillOfMaterialItem.BillOfMaterial and $projection.BOMItem = _BillOfMaterialItem.BillOfMaterialItemNodeNumber and $projection.BOMItemInternalChangeCount = _BillOfMaterialItem.BOMItemInternalChangeCount
[0..1] I_BillOfMaterialItemCategory _BOMItemCategory $projection.BOMItemCategory = _BOMItemCategory.BillOfMaterialItemCategory
[0..1] I_PurchasingInfoRecordApi01 _PurchasingInfoRecord $projection.PurchasingInfoRecord = _PurchasingInfoRecord.PurchasingInfoRecord
[0..1] I_PurchasingGroup _PurchasingGroup $projection.PurchasingGroup = _PurchasingGroup.PurchasingGroup
[0..1] I_PurchaseOrderAPI01 _PurchaseOrder $projection.PurchaseOrder = _PurchaseOrder.PurchaseOrder
[0..1] I_PurchaseOrderItemAPI01 _PurchaseOrderItem $projection.PurchaseOrder = _PurchaseOrderItem.PurchaseOrder and $projection.PurchaseOrderItem = _PurchaseOrderItem.PurchaseOrderItem
[0..1] I_Purchaserequisition _PurchaseRequisition $projection.PurchaseRequisition = _PurchaseRequisition.PurchaseRequisition
[0..1] I_PurchaseRequisition_Api01 _PurchaseRequisitionItem $projection.PurchaseRequisition = _PurchaseRequisitionItem.PurchaseRequisition and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem.PurchaseRequisitionItem
[0..1] I_PurchaseRequisitionItemAPI01 _PurchaseRequisitionItem2 $projection.PurchaseRequisition = _PurchaseRequisitionItem2.PurchaseRequisition and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem2.PurchaseRequisitionItem
[0..1] I_Supplier _Supplier $projection.Supplier = _Supplier.Supplier
[0..1] I_SupplierCompanyByPlant _SupplierCompanyByPlant $projection.Plant = _SupplierCompanyByPlant.Plant and $projection.Supplier = _SupplierCompanyByPlant.Supplier
[0..1] I_StorageLocation _StorageLocation $projection.Plant = _StorageLocation.Plant and $projection.StorageLocation = _StorageLocation.StorageLocation
[0..*] I_Batch _Batch $projection.Material = _Batch.Material and $projection.Batch = _Batch.Batch
[0..1] I_BatchSplitType _BatchSplitType $projection.BatchSplitType= _BatchSplitType.BatchSplitType
[1..1] I_DebitCreditCode _DebitCreditCode $projection.DebitCreditCode = _DebitCreditCode.DebitCreditCode
[1..1] I_GoodsMovementType _GoodsMovementType $projection.GoodsMovementType = _GoodsMovementType.GoodsMovementType
[0..1] I_InventorySpecialStockType _InventorySpecialStockType $projection.InventorySpecialStockType = _InventorySpecialStockType.InventorySpecialStockType
[0..1] I_InvtrySpecialStockValnType _InventorySpecialStockValnType $projection.InventorySpecialStockValnType = _InventorySpecialStockValnType.InventorySpecialStockValnType
[0..1] I_ConsumptionPosting _ConsumptionPosting $projection.ConsumptionPosting = _ConsumptionPosting.ConsumptionPosting
[0..1] I_ProductionSupplyArea _SupplyArea $projection.Plant = _SupplyArea.Plant and $projection.SupplyArea = _SupplyArea.ProductionSupplyArea
[0..1] I_Warehouse _Warehouse $projection.Warehouse = _Warehouse.Warehouse
[0..1] I_Product _PhantomAssembly $projection.Assembly = _PhantomAssembly.Product
[0..1] I_Product _FollowUpMaterial $projection.FollowUpMaterial = _FollowUpMaterial.Product
[0..1] I_MatlCompDiscontinuationType _MatlCompDiscontinuationType $projection.MatlCompDiscontinuationType = _MatlCompDiscontinuationType.MatlCompDiscontinuationType
[0..1] I_MatlCompProvisionType _ProvisionType $projection.MaterialProvisionType = _ProvisionType.MaterialProvisionType
[0..1] I_MatlCompSparePartType _SparePartType $projection.MatlComponentSparePartType = _SparePartType.MatlComponentSparePartType
[0..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode
[0..1] I_BusinessArea _BusinessArea $projection.BusinessArea = _BusinessArea.BusinessArea
[0..1] I_GLAccount _GLAccount $projection.GLAccount = _GLAccount.GLAccount and $projection.CompanyCode = _GLAccount.CompanyCode
[0..1] I_ControllingArea _ControllingArea $projection.ControllingArea = _ControllingArea.ControllingArea
[0..1] I_FunctionalArea _FunctionalArea $projection.FunctionalArea = _FunctionalArea.FunctionalArea
[0..1] I_AccountAssignmentCategory _AccountAssignmentCategory $projection.AccountAssignmentCategory = _AccountAssignmentCategory.AccountAssignmentCategory
[0..1] I_CommitmentItemShortID _CommitmentItemShortID $projection.CommitmentItemShortID = _CommitmentItemShortID.CommitmentItemShortID
[0..1] I_UnitOfMeasure _OpLeadTimeOffsetUnit $projection.OperationLeadTimeOffsetUnit = _OpLeadTimeOffsetUnit.UnitOfMeasure
[0..1] I_UnitOfMeasure _VariableSizeItemUnit $projection.VariableSizeItemUnit = _VariableSizeItemUnit.UnitOfMeasure
[0..1] I_UnitOfMeasure _VariableSizeCompUnit $projection.VariableSizeComponentUnit = _VariableSizeCompUnit.UnitOfMeasure
[0..1] I_UnitOfMeasure _VariableSizeDimensionUnit $projection.VariableSizeDimensionUnit = _VariableSizeDimensionUnit.UnitOfMeasure
[1..1] I_UnitOfMeasure _BaseUnit $projection.BaseUnit = _BaseUnit.UnitOfMeasure
[1..1] I_UnitOfMeasure _EntryUnit $projection.EntryUnit = _EntryUnit.UnitOfMeasure
[0..1] I_Currency _Currency $projection.Currency = _Currency.Currency
[1..1] I_StatusObject _StatusObject $projection.ObjectInternalID = _StatusObject.StatusObject
[0..1] I_Language _LongTextLanguage $projection.LongTextLanguageCode = _LongTextLanguage.Language
[0..1] I_OrderComponentLongText _LongText $projection.Reservation = _LongText.Reservation and $projection.ReservationItem = _LongText.ReservationItem and $projection.RecordType = _LongText.RecordType
[0..1] I_MfgOrderComponentLongText _MfgOrderComponentLongText $projection.Reservation = _MfgOrderComponentLongText.Reservation and $projection.ReservationItem = _MfgOrderComponentLongText.ReservationItem and $projection.RecordType = _MfgOrderComponentLongText.RecordType and $projection.LongTextLanguageCode = _MfgOrderComponentLongText.LongTextLanguage -- to extension
[1..1] E_ReservationDocumentItem _Extension $projection.Reservation = _Extension.Reservation and $projection.ReservationItem = _Extension.ReservationItem and $projection.RecordType = _Extension.RecordType -- start new associations for full coverage of text relations
[1..1] I_ManufacturingOrder _MfgOrderText $projection.ManufacturingOrder = _MfgOrderText.ManufacturingOrder
[1..1] I_Plant _ProductionPlantText $projection.ProductionPlant = _ProductionPlantText.Plant
[0..1] I_Plant _PlantText $projection.Plant = _PlantText.Plant
[0..*] I_ProductText _MaterialText $projection.Material = _MaterialText.Product
[0..1] I_WBSElementBasicData _WBSElementText $projection.WBSElementInternalID_2 = _WBSElementText.WBSElementInternalID
[0..1] I_StorageLocation _StorageLocationText $projection.Plant = _StorageLocationText.Plant and $projection.StorageLocation = _StorageLocationText.StorageLocation
[0..*] I_ProductionSupplyAreaText _SupplyAreaText $projection.Plant = _SupplyAreaText.Plant and $projection.SupplyArea = _SupplyAreaText.ProductionSupplyArea
[0..1] I_Supplier _SupplierText $projection.Supplier = _SupplierText.Supplier
[0..1] I_PurchasingGroup _PurchasingGroupText $projection.PurchasingGroup = _PurchasingGroupText.PurchasingGroup
[0..*] I_ProductText _PhantomAssemblyText $projection.Assembly = _PhantomAssemblyText.Product
[0..*] I_ProductText _FollowUpMaterialText $projection.FollowUpMaterial = _FollowUpMaterialText.Product
[0..*] I_BusinessAreaText _BusinessAreaText $projection.BusinessArea = _BusinessAreaText.BusinessArea
[0..1] I_CompanyCode _CompanyCodeText $projection.CompanyCode = _CompanyCodeText.CompanyCode
[0..1] I_ControllingArea _ControllingAreaText $projection.ControllingArea = _ControllingAreaText.ControllingArea
[0..*] I_FunctionalAreaText _FunctionalAreaText $projection.FunctionalArea = _FunctionalAreaText.FunctionalArea -- end new associations for full coverage of text relations

Annotations (19)

NameValueLevelField
AbapCatalog.sqlViewName IPPMFGORDOPCOMP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #MANDATORY view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
Analytics.internalName #LOCAL view
ClientHandling.algorithm #SESSION_VARIABLE view
ClientHandling.type #CLIENT_DEPENDENT view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #NONE view
ObjectModel.sapObjectNodeType.name ProductionOrderComponent view
ObjectModel.representativeKey ReservationItem view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #BASIC view
EndUserText.label Manufacturing Order Operation Component view

Fields (242)

KeyFieldSource TableSource FieldDescription
KEY Reservation P_MfgOrderOpReservationItem rsnum
KEY ReservationItem
KEY RecordType
MaterialGroup P_MfgOrderOpReservationItem matkl
Material P_MfgOrderOpReservationItem matnr
Plant P_MfgOrderOpReservationItem werks
ManufacturingOrderCategory
ManufacturingOrderType
ManufacturingOrder
MfgOrderSequenceCategory
ManufacturingOrderOperation
ManufacturingOrderOperation_2
ProductionPlant
OrderInternalBillOfOperations
OrderIntBillOfOperationsItem
AssemblyMRPController
ProductionSupervisor
OrderObjectInternalID P_MfgOrderOpReservationItem OrderObjectInternalID
MatlCompRequirementDate
MatlCompRequirementTime
LatestRequirementDate
MfgOrderActualReleaseDate
ReservationItemCreationCode
ReservationIsFinallyIssued P_MfgOrderOpReservationItem kzear
MatlCompIsMarkedForDeletion
MaterialComponentIsMissing P_MfgOrderOpReservationItem xfehl
IsBulkMaterialComponent P_MfgOrderOpReservationItem schgt
MatlCompIsMarkedForBackflush P_MfgOrderOpReservationItem rgekz
MatlCompIsTextItem P_MfgOrderOpReservationItem txtps
MaterialPlanningRelevance
MatlCompIsConfigurable P_MfgOrderOpReservationItem kfpos
MaterialComponentIsClassified P_MfgOrderOpReservationItem clakz
MaterialCompIsIntraMaterial P_MfgOrderOpReservationItem inpos
LongTextLanguageCode P_MfgOrderOpReservationItem ltxsp
RequirementType
SalesOrder
SalesOrderItem
WBSElementInternalID
WBSElementInternalID_2
ProductConfiguration P_MfgOrderOpReservationItem cuobj
ChangeNumber P_MfgOrderOpReservationItem aennr
MaterialRevisionLevel
EffectivityParameterVariant P_MfgOrderOpReservationItem techs
SortField P_MfgOrderOpReservationItem sortf
MaterialComponentSortText P_MfgOrderOpReservationItem sortf
ObjectInternalID P_MfgOrderOpReservationItem objnr
BillOfMaterialCategory
BillOfMaterialInternalID P_MfgOrderOpReservationItem stlnr
BillOfMaterialInternalID_2
BillOfMaterialVariantUsage P_MfgOrderOpReservationItem stlan
BillOfMaterialVariant P_MfgOrderOpReservationItem stlal
BillOfMaterial P_MfgOrderOpReservationItem stlnr2
BOMItem
BillOfMaterialVersion P_MfgOrderOpReservationItem bom_versn
BOMItemInternalChangeCount P_MfgOrderOpReservationItem stpoz
InheritedBOMItemNode P_MfgOrderOpReservationItem stvkn
BOMItemCategory
BillOfMaterialItemNumber P_MfgOrderOpReservationItem posnr
BillOfMaterialItemNumber_2
BOMItemDescription P_MfgOrderOpReservationItem potx1
BOMItemText2 P_MfgOrderOpReservationItem potx2
BOMExplosionDateID
PurchasingInfoRecord
PurchasingGroup
Supplier P_MfgOrderOpReservationItem lifnr
DeliveryDurationInDays
MaterialGoodsReceiptDuration
NumberOfOperationPriceUnits
GoodsMovementIsAllowed P_MfgOrderOpReservationItem xwaok
StorageLocation
DebitCreditCode
GoodsMovementType P_MfgOrderOpReservationItem bwart
InventorySpecialStockType
InventorySpecialStockValnType
ConsumptionPosting
SupplyArea
GoodsRecipientName
UnloadingPointName P_MfgOrderOpReservationItem ablad
StockSegment P_MfgOrderOpReservationItem sgt_scat
RequirementSegment P_MfgOrderOpReservationItem sgt_rcat
Batch P_MfgOrderOpReservationItem charg
BatchSplitType P_MfgOrderOpReservationItem splkz
BatchClassification P_MfgOrderOpReservationItem chobj
MaterialStaging P_MfgOrderOpReservationItem berkz
Warehouse P_MfgOrderOpReservationItem lgnum
StorageType P_MfgOrderOpReservationItem lgtyp
StorageBin P_MfgOrderOpReservationItem lgpla
MaterialCompIsCostRelevant P_MfgOrderOpReservationItem sanka
BusinessArea P_MfgOrderOpReservationItem gsber
CompanyCode P_MfgOrderOpReservationItem bukrs
GLAccount P_MfgOrderOpReservationItem saknr
FunctionalArea P_MfgOrderOpReservationItem fkber
ControllingArea P_MfgOrderOpReservationItem kokrs
AccountAssignmentCategory
CommitmentItem
CommitmentItemShortID
FundsCenter
MaterialCompIsVariableSized P_MfgOrderOpReservationItem rohps
NumberOfVariableSizeComponents
VariableSizeItemQuantity
VariableSizeComponentQuantity
romeiasVariableSizeDimensionUnit
VariableSizeDimension1 P_MfgOrderOpReservationItem roms1
VariableSizeDimension2 P_MfgOrderOpReservationItem roms2
VariableSizeDimension3 P_MfgOrderOpReservationItem roms3
FormulaKey P_MfgOrderOpReservationItem rform
MaterialCompIsAlternativeItem P_MfgOrderOpReservationItem alpos
AlternativeItemGroup
AlternativeItemStrategy
AlternativeItemPriority
UsageProbabilityPercent P_MfgOrderOpReservationItem ewahr
MaterialComponentIsPhantomItem
OrderPathValue P_MfgOrderOpReservationItem aufwg
OrderLevelValue P_MfgOrderOpReservationItem aufst
Assembly P_MfgOrderOpReservationItem baugr
AssemblyOrderPathValue P_MfgOrderOpReservationItem bauwg
AssemblyOrderLevelValue P_MfgOrderOpReservationItem baust
DiscontinuationGroup
MatlCompDiscontinuationType P_MfgOrderOpReservationItem kzaus
MatlCompIsFollowUpMaterial
FollowUpGroup
FollowUpMaterial
FollowUpMaterialIsNotActive
FollowUpMaterialIsActive
MaterialProvisionType
MatlComponentSparePartType
LeadTimeOffset
OperationLeadTimeOffsetUnit
OperationLeadTimeOffset
QuantityIsFixed P_MfgOrderOpReservationItem fmeng
IsNetScrap P_MfgOrderOpReservationItem netau
ComponentScrapInPercent P_MfgOrderOpReservationItem ausch
OperationScrapInPercent P_MfgOrderOpReservationItem avoau
MaterialQtyToBaseQtyNmrtr P_MfgOrderOpReservationItem umrez
MaterialQtyToBaseQtyDnmntr P_MfgOrderOpReservationItem umren
meinsasBaseUnit
RequiredQuantity P_MfgOrderOpReservationItem bdmng
WithdrawnQuantity
ConfirmedAvailableQuantity
MaterialCompOriginalQuantity
erfmeasEntryUnit
GoodsMovementEntryQty
Currency P_MfgOrderOpReservationItem waers
WithdrawnQuantityAmount P_MfgOrderOpReservationItem enwrt
CriticalComponentType fsh_critical_comp
CriticalComponentLevel fsh_critical_level
_Reservation _Reservation
_ReservationItem _ReservationItem
_ReservationDocRecordType _ReservationDocRecordType
_MfgOrder _MfgOrder
_MfgOrderSequence _MfgOrderSequence
_ManufacturingOrder _ManufacturingOrder
_ManufacturingOrderSequence _ManufacturingOrderSequence
_MfgOrderCategory _MfgOrderCategory
_MfgOrderType _MfgOrderType
_MfgOrderOperation _MfgOrderOperation
_MfgOrderOperationBySemanKey _MfgOrderOperationBySemanKey
_MfgOrderOperationBySemKey _MfgOrderOperationBySemKey
_MfgOrderSequenceCategory _MfgOrderSequenceCategory
_MfgOrderComponentLongText _MfgOrderComponentLongText
_OrdInternalBillOfOperations _OrdInternalBillOfOperations
_OrderInternalID _OrderInternalID
_ProductionPlant _ProductionPlant
_AssemblyMRPController _AssemblyMRPController
_ProductionSupervisor _ProductionSupervisor
_RequirementType _RequirementType
_MaterialGroup _MaterialGroup
_Material _Material
_Product _Product
_ProductPlant _ProductPlant
_ProductPlant2 _ProductPlant2
_ProductStorageLocation _ProductStorageLocation
_ProductStorageLocation2 _ProductStorageLocation2
_ProductSupplyPlanning _ProductSupplyPlanning
_ProductUnitsOfMeasure _ProductUnitsOfMeasure
_Plant _Plant
_StorageLocation _StorageLocation
_Batch _Batch
_BatchSplitType _BatchSplitType
_DebitCreditCode _DebitCreditCode
_GoodsMovementType _GoodsMovementType
_InventorySpecialStockType _InventorySpecialStockType
_InventorySpecialStockValnType _InventorySpecialStockValnType
_ConsumptionPosting _ConsumptionPosting
_SupplyArea _SupplyArea
_Warehouse _Warehouse
_FollowUpMaterial _FollowUpMaterial
_MatlCompDiscontinuationType _MatlCompDiscontinuationType
_ProvisionType _ProvisionType
_SparePartType _SparePartType
_PhantomAssembly _PhantomAssembly
_BOMExplosion _BOMExplosion
_BillOfMaterialItem _BillOfMaterialItem
_BOMItemCategory _BOMItemCategory
_SalesOrder _SalesOrder
_SalesOrderItem _SalesOrderItem
_WBSElement _WBSElement
_WBSElementBasicData _WBSElementBasicData
_WBSElementBasicData2 _WBSElementBasicData2
_EnterpriseProjectElement _EnterpriseProjectElement
_ChangeNumber _ChangeNumber
_PurchasingGroup _PurchasingGroup
_PurchasingInfoRecord _PurchasingInfoRecord
_PurchaseOrder _PurchaseOrder
_PurchaseOrderItem _PurchaseOrderItem
_PurchaseRequisition _PurchaseRequisition
_PurchaseRequisitionItem _PurchaseRequisitionItem
_PurchaseRequisitionItem2 _PurchaseRequisitionItem2
_Supplier _Supplier
_SupplierCompanyByPlant _SupplierCompanyByPlant
_CompanyCode _CompanyCode
_BusinessArea _BusinessArea
_GLAccount _GLAccount
_ControllingArea _ControllingArea
_FunctionalArea _FunctionalArea
_AccountAssignmentCategory _AccountAssignmentCategory
_CommitmentItemShortID _CommitmentItemShortID
_OpLeadTimeOffsetUnit _OpLeadTimeOffsetUnit
_VariableSizeItemUnit _VariableSizeItemUnit
_VariableSizeCompUnit _VariableSizeCompUnit
_VariableSizeDimensionUnit _VariableSizeDimensionUnit
_BaseUnit _BaseUnit
_EntryUnit _EntryUnit
_Currency _Currency
_StatusObject _StatusObject
_LongTextLanguage _LongTextLanguage
_LongText _LongText
_MfgOrderText _MfgOrderText
_PlantText _PlantText
_ProductionPlantText _ProductionPlantText
_MaterialText _MaterialText
_WBSElementText _WBSElementText
_StorageLocationText _StorageLocationText
_SupplyAreaText _SupplyAreaText
_SupplierText _SupplierText
_PurchasingGroupText _PurchasingGroupText
_PhantomAssemblyText _PhantomAssemblyText
_FollowUpMaterialText _FollowUpMaterialText
_BusinessAreaText _BusinessAreaText
_CompanyCodeText _CompanyCodeText
_ControllingAreaText _ControllingAreaText
_FunctionalAreaText _FunctionalAreaText
@AbapCatalog.sqlViewName: 'IPPMFGORDOPCOMP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #('TRANSACTIONAL_DATA')
@AccessControl.privilegedAssociations: ['_AssemblyMRPController', '_ProductionSupervisor', '_LongText', '_StatusObject']
@Analytics.dataCategory: #DIMENSION
@Analytics.dataExtraction: { enabled: true,
                             delta.changeDataCapture:
                                    { mapping:
                                      [ { role: #MAIN,
                                          table: 'resb',
                                          tableElement: ['rsnum'      , 'rspos'          , 'rsart'],
                                          viewElement:  ['Reservation', 'ReservationItem', 'RecordType']
                                        },
                                        { role: #LEFT_OUTER_TO_ONE_JOIN,
                                          table: 'aufk',
                                          tableElement: ['aufnr'],
                                          viewElement:  ['ManufacturingOrder']
                                        },
                                        { role: #LEFT_OUTER_TO_ONE_JOIN,
                                          table: 'afko',
                                          tableElement: ['aufnr'],
                                          viewElement:  ['ManufacturingOrder']
                                        } ] } }
@Analytics.internalName: #LOCAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@ClientHandling.type: #CLIENT_DEPENDENT
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #NONE
@ObjectModel.supportedCapabilities: [#SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #EXTRACTION_DATA_SOURCE, #ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET]
@ObjectModel.sapObjectNodeType.name: 'ProductionOrderComponent'
@ObjectModel.representativeKey: 'ReservationItem'
@ObjectModel.usageType: {serviceQuality: #B, sizeCategory: #XL, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Manufacturing Order Operation Component'

/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ]  } */
define view I_MfgOrderOperationComponent
  as select from P_MfgOrderOpReservationItem as resb

  association [1..1] to I_ReservationDocumentHeader    as _Reservation                 on  $projection.Reservation = _Reservation.Reservation
  association [1..1] to I_ReservationDocumentItem      as _ReservationItem             on  $projection.Reservation     = _ReservationItem.Reservation
                                                                                       and $projection.ReservationItem = _ReservationItem.ReservationItem
                                                                                       and $projection.RecordType      = _ReservationItem.RecordType
  association [0..1] to I_ReservationDocRecordType     as _ReservationDocRecordType    on  $projection.RecordType = _ReservationDocRecordType.RecordType
  association [1..1] to I_ManufacturingOrder           as _ManufacturingOrder          on  $projection.ManufacturingOrder = _ManufacturingOrder.ManufacturingOrder
  association [1..1] to I_ManufacturingOrderSequence   as _ManufacturingOrderSequence  on  $projection.ManufacturingOrder         = _ManufacturingOrderSequence.ManufacturingOrder
                                                                                       and $projection.ManufacturingOrderSequence = _ManufacturingOrderSequence.ManufacturingOrderSequence
  association [1..1] to I_MfgOrder                     as _MfgOrder                    on  $projection.ManufacturingOrder = _MfgOrder.ManufacturingOrder
  association [1..1] to I_MfgOrderSequence             as _MfgOrderSequence            on  $projection.ManufacturingOrder         = _MfgOrderSequence.ManufacturingOrder
                                                                                       and $projection.ManufacturingOrderSequence = _MfgOrderSequence.ManufacturingOrderSequence
  association [0..1] to I_SequenceCategory             as _MfgOrderSequenceCategory    on  $projection.MfgOrderSequenceCategory = _MfgOrderSequenceCategory.SequenceCategory
  association [1..1] to I_MfgOrderOperationBasic       as _MfgOrderOperation           on  $projection.OrderInternalBillOfOperations = _MfgOrderOperation.OrderInternalBillOfOperations
                                                                                       and $projection.OrderIntBillOfOperationsItem  = _MfgOrderOperation.OrderIntBillOfOperationsItem
  association [1..1] to I_MfgOrderOperationBySemanKey  as _MfgOrderOperationBySemanKey on  $projection.ManufacturingOrder          = _MfgOrderOperationBySemanKey.ManufacturingOrder
                                                                                       and $projection.ManufacturingOrderSequence  = _MfgOrderOperationBySemanKey.ManufacturingOrderSequence
                                                                                       and $projection.ManufacturingOrderOperation = _MfgOrderOperationBySemanKey.ManufacturingOrderOperation
  association [1..1] to I_MfgOrderOperationBySemKey    as _MfgOrderOperationBySemKey   on  $projection.ManufacturingOrder            = _MfgOrderOperationBySemKey.ManufacturingOrder
                                                                                       and $projection.ManufacturingOrderSequence    = _MfgOrderOperationBySemKey.ManufacturingOrderSequence
                                                                                       and $projection.ManufacturingOrderOperation_2 = _MfgOrderOperationBySemKey.ManufacturingOrderOperation
  association [1..1] to I_MfgOrderCategory             as _MfgOrderCategory            on  $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
  association [1..1] to I_MfgOrderType                 as _MfgOrderType                on  $projection.ManufacturingOrderType = _MfgOrderType.ManufacturingOrderType
  association [1..1] to I_Plant                        as _ProductionPlant             on  $projection.ProductionPlant = _ProductionPlant.Plant
  association [1..1] to I_OrdInternalBillOfOperations  as _OrdInternalBillOfOperations on  $projection.OrderInternalBillOfOperations = _OrdInternalBillOfOperations.OrderInternalBillOfOperations
  association [1..1] to I_OrderInternalID              as _OrderInternalID             on  $projection.OrderInternalBillOfOperations = _OrderInternalID.OrderInternalID
  association [1..1] to I_MaterialRequirementType      as _RequirementType             on  $projection.RequirementType = _RequirementType.RequirementType
  association [1..1] to I_MaterialGroup                as _MaterialGroup               on  $projection.MaterialGroup = _MaterialGroup.MaterialGroup
  association [1..1] to I_Material                     as _Material                    on  $projection.Material = _Material.Material
  association [1..1] to I_Product                      as _Product                     on  $projection.Material = _Product.Product
  association [1..1] to I_Plant                        as _Plant                       on  $projection.Plant = _Plant.Plant
  association [1..1] to I_ProductPlant                 as _ProductPlant                on  $projection.Material = _ProductPlant.Product
                                                                                       and $projection.Plant    = _ProductPlant.Plant
  association [1..1] to I_ProductPlantBasic            as _ProductPlant2               on  $projection.Material = _ProductPlant2.Product
                                                                                       and $projection.Plant    = _ProductPlant2.Plant
  association [1..1] to I_ProductSupplyPlanning        as _ProductSupplyPlanning       on  $projection.Material = _ProductSupplyPlanning.Product
                                                                                       and $projection.Plant    = _ProductSupplyPlanning.Plant
  association [0..1] to I_ProductStorageLocation       as _ProductStorageLocation      on  $projection.Material        = _ProductStorageLocation.Product
                                                                                       and $projection.Plant           = _ProductStorageLocation.Plant
                                                                                       and $projection.StorageLocation = _ProductStorageLocation.StorageLocation
  association [0..1] to I_ProductStorageLocationBasic  as _ProductStorageLocation2     on  $projection.Material        = _ProductStorageLocation2.Product
                                                                                       and $projection.Plant           = _ProductStorageLocation2.Plant
                                                                                       and $projection.StorageLocation = _ProductStorageLocation2.StorageLocation
  association [1..*] to I_ProductUnitsOfMeasure        as _ProductUnitsOfMeasure       on  $projection.Material = _ProductUnitsOfMeasure.Product
  association [0..1] to I_MRPController                as _AssemblyMRPController       on  $projection.Plant                 = _AssemblyMRPController.Plant
                                                                                       and $projection.AssemblyMRPController = _AssemblyMRPController.MRPController
  association [0..1] to I_ProductionSupervisor         as _ProductionSupervisor        on  $projection.Plant                = _ProductionSupervisor.Plant

                                                                                       and $projection.ProductionSupervisor = _ProductionSupervisor.ProductionSupervisor
  association [0..1] to I_SalesOrder                   as _SalesOrder                  on  $projection.SalesOrder = _SalesOrder.SalesOrder
  association [0..1] to I_SalesOrderItem               as _SalesOrderItem              on  $projection.SalesOrder     = _SalesOrderItem.SalesOrder
                                                                                       and $projection.SalesOrderItem = _SalesOrderItem.SalesOrderItem
  association [0..1] to I_WBSElementByInternalKey      as _WBSElement                  on  $projection.WBSElementInternalID = _WBSElement.WBSElementInternalID
  association [0..1] to I_WBSElementBasicData          as _WBSElementBasicData         on  $projection.WBSElementInternalID = _WBSElementBasicData.WBSElementInternalID
  association [0..1] to I_WBSElementBasicData          as _WBSElementBasicData2        on  $projection.WBSElementInternalID_2 = _WBSElementBasicData2.WBSElementInternalID
  association [0..1] to I_EnterpriseProjectElement     as _EnterpriseProjectElement    on  $projection.WBSElementInternalID_2 = _EnterpriseProjectElement.WBSElementInternalID  
  association [0..1] to I_ChangeMaster                 as _ChangeNumber                on  $projection.ChangeNumber = _ChangeNumber.ChangeNumber
  association [0..1] to I_BOMExplosionDate             as _BOMExplosion                on  $projection.BOMExplosionDateID = _BOMExplosion.BOMExplosionDateID
  association [0..1] to I_BillOfMaterialItemBasic      as _BillOfMaterialItem          on  $projection.BillOfMaterialCategory     = _BillOfMaterialItem.BillOfMaterialCategory
                                                                                       and $projection.BillOfMaterial             = _BillOfMaterialItem.BillOfMaterial
                                                                                       and $projection.BOMItem                    = _BillOfMaterialItem.BillOfMaterialItemNodeNumber
                                                                                       and $projection.BOMItemInternalChangeCount = _BillOfMaterialItem.BOMItemInternalChangeCount
  association [0..1] to I_BillOfMaterialItemCategory   as _BOMItemCategory             on  $projection.BOMItemCategory = _BOMItemCategory.BillOfMaterialItemCategory
  association [0..1] to I_PurchasingInfoRecordApi01    as _PurchasingInfoRecord        on  $projection.PurchasingInfoRecord = _PurchasingInfoRecord.PurchasingInfoRecord
  association [0..1] to I_PurchasingGroup              as _PurchasingGroup             on  $projection.PurchasingGroup = _PurchasingGroup.PurchasingGroup
  association [0..1] to I_PurchaseOrderAPI01           as _PurchaseOrder               on  $projection.PurchaseOrder = _PurchaseOrder.PurchaseOrder
  association [0..1] to I_PurchaseOrderItemAPI01       as _PurchaseOrderItem           on  $projection.PurchaseOrder     = _PurchaseOrderItem.PurchaseOrder
                                                                                       and $projection.PurchaseOrderItem = _PurchaseOrderItem.PurchaseOrderItem
  association [0..1] to I_Purchaserequisition          as _PurchaseRequisition         on  $projection.PurchaseRequisition = _PurchaseRequisition.PurchaseRequisition
  association [0..1] to I_PurchaseRequisition_Api01    as _PurchaseRequisitionItem     on  $projection.PurchaseRequisition     = _PurchaseRequisitionItem.PurchaseRequisition
                                                                                       and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem.PurchaseRequisitionItem
  association [0..1] to I_PurchaseRequisitionItemAPI01 as _PurchaseRequisitionItem2    on  $projection.PurchaseRequisition     = _PurchaseRequisitionItem2.PurchaseRequisition
                                                                                       and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem2.PurchaseRequisitionItem
  association [0..1] to I_Supplier                     as _Supplier                    on  $projection.Supplier = _Supplier.Supplier
  association [0..1] to I_SupplierCompanyByPlant       as _SupplierCompanyByPlant      on  $projection.Plant    = _SupplierCompanyByPlant.Plant
                                                                                       and $projection.Supplier = _SupplierCompanyByPlant.Supplier
  association [0..1] to I_StorageLocation              as _StorageLocation             on  $projection.Plant           = _StorageLocation.Plant
                                                                                       and $projection.StorageLocation = _StorageLocation.StorageLocation
  association [0..*] to I_Batch                        as _Batch                       on  $projection.Material = _Batch.Material
                                                                                       and $projection.Batch    = _Batch.Batch
  association [0..1] to I_BatchSplitType               as _BatchSplitType              on  $projection.BatchSplitType= _BatchSplitType.BatchSplitType    
  association [1..1] to I_DebitCreditCode              as _DebitCreditCode             on  $projection.DebitCreditCode = _DebitCreditCode.DebitCreditCode
  association [1..1] to I_GoodsMovementType            as _GoodsMovementType           on  $projection.GoodsMovementType = _GoodsMovementType.GoodsMovementType
  association [0..1] to I_InventorySpecialStockType    as _InventorySpecialStockType   on  $projection.InventorySpecialStockType = _InventorySpecialStockType.InventorySpecialStockType
  association [0..1] to I_InvtrySpecialStockValnType   as _InventorySpecialStockValnType on $projection.InventorySpecialStockValnType = _InventorySpecialStockValnType.InventorySpecialStockValnType
  association [0..1] to I_ConsumptionPosting           as _ConsumptionPosting          on  $projection.ConsumptionPosting = _ConsumptionPosting.ConsumptionPosting
  association [0..1] to I_ProductionSupplyArea         as _SupplyArea                  on  $projection.Plant      = _SupplyArea.Plant
                                                                                       and $projection.SupplyArea = _SupplyArea.ProductionSupplyArea
  association [0..1] to I_Warehouse                    as _Warehouse                   on  $projection.Warehouse = _Warehouse.Warehouse
  association [0..1] to I_Product                      as _PhantomAssembly             on  $projection.Assembly = _PhantomAssembly.Product
  association [0..1] to I_Product                      as _FollowUpMaterial            on  $projection.FollowUpMaterial = _FollowUpMaterial.Product
  association [0..1] to I_MatlCompDiscontinuationType  as _MatlCompDiscontinuationType on  $projection.MatlCompDiscontinuationType = _MatlCompDiscontinuationType.MatlCompDiscontinuationType
  association [0..1] to I_MatlCompProvisionType        as _ProvisionType               on  $projection.MaterialProvisionType = _ProvisionType.MaterialProvisionType
  association [0..1] to I_MatlCompSparePartType        as _SparePartType               on  $projection.MatlComponentSparePartType = _SparePartType.MatlComponentSparePartType
  association [0..1] to I_CompanyCode                  as _CompanyCode                 on  $projection.CompanyCode = _CompanyCode.CompanyCode
  association [0..1] to I_BusinessArea                 as _BusinessArea                on  $projection.BusinessArea = _BusinessArea.BusinessArea
  association [0..1] to I_GLAccount                    as _GLAccount                   on  $projection.GLAccount   = _GLAccount.GLAccount
                                                                                       and $projection.CompanyCode = _GLAccount.CompanyCode
  association [0..1] to I_ControllingArea              as _ControllingArea             on  $projection.ControllingArea = _ControllingArea.ControllingArea
  association [0..1] to I_FunctionalArea               as _FunctionalArea              on  $projection.FunctionalArea = _FunctionalArea.FunctionalArea
  association [0..1] to I_AccountAssignmentCategory    as _AccountAssignmentCategory   on  $projection.AccountAssignmentCategory = _AccountAssignmentCategory.AccountAssignmentCategory
  association [0..1] to I_CommitmentItemShortID        as _CommitmentItemShortID       on  $projection.CommitmentItemShortID = _CommitmentItemShortID.CommitmentItemShortID
  association [0..1] to I_UnitOfMeasure                as _OpLeadTimeOffsetUnit        on  $projection.OperationLeadTimeOffsetUnit = _OpLeadTimeOffsetUnit.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _VariableSizeItemUnit        on  $projection.VariableSizeItemUnit = _VariableSizeItemUnit.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _VariableSizeCompUnit        on  $projection.VariableSizeComponentUnit = _VariableSizeCompUnit.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure                as _VariableSizeDimensionUnit   on  $projection.VariableSizeDimensionUnit = _VariableSizeDimensionUnit.UnitOfMeasure
  association [1..1] to I_UnitOfMeasure                as _BaseUnit                    on  $projection.BaseUnit = _BaseUnit.UnitOfMeasure
  association [1..1] to I_UnitOfMeasure                as _EntryUnit                   on  $projection.EntryUnit = _EntryUnit.UnitOfMeasure
  association [0..1] to I_Currency                     as _Currency                    on  $projection.Currency = _Currency.Currency
  association [1..1] to I_StatusObject                 as _StatusObject                on  $projection.ObjectInternalID = _StatusObject.StatusObject
  association [0..1] to I_Language                     as _LongTextLanguage            on  $projection.LongTextLanguageCode = _LongTextLanguage.Language
  association [0..1] to I_OrderComponentLongText       as _LongText                    on  $projection.Reservation     = _LongText.Reservation
                                                                                       and $projection.ReservationItem = _LongText.ReservationItem
                                                                                       and $projection.RecordType      = _LongText.RecordType
  association [0..1] to I_MfgOrderComponentLongText    as _MfgOrderComponentLongText   on  $projection.Reservation          = _MfgOrderComponentLongText.Reservation
                                                                                       and $projection.ReservationItem      = _MfgOrderComponentLongText.ReservationItem
                                                                                       and $projection.RecordType           = _MfgOrderComponentLongText.RecordType
                                                                                       and $projection.LongTextLanguageCode = _MfgOrderComponentLongText.LongTextLanguage
  -- to extension
  association [1..1] to E_ReservationDocumentItem      as _Extension                   on  $projection.Reservation     = _Extension.Reservation
                                                                                       and $projection.ReservationItem = _Extension.ReservationItem
                                                                                       and $projection.RecordType      = _Extension.RecordType
-- start new associations for full coverage of text relations
  association [1..1] to I_ManufacturingOrder           as _MfgOrderText                on  $projection.ManufacturingOrder = _MfgOrderText.ManufacturingOrder
  association [1..1] to I_Plant                        as _ProductionPlantText         on  $projection.ProductionPlant = _ProductionPlantText.Plant
  association [0..1] to I_Plant                        as _PlantText                   on  $projection.Plant = _PlantText.Plant
  association [0..*] to I_ProductText                  as _MaterialText                on  $projection.Material = _MaterialText.Product
  association [0..1] to I_WBSElementBasicData          as _WBSElementText              on  $projection.WBSElementInternalID_2 = _WBSElementText.WBSElementInternalID
  association [0..1] to I_StorageLocation              as _StorageLocationText         on  $projection.Plant           = _StorageLocationText.Plant
                                                                                       and $projection.StorageLocation = _StorageLocationText.StorageLocation
  association [0..*] to I_ProductionSupplyAreaText     as _SupplyAreaText              on  $projection.Plant      = _SupplyAreaText.Plant
                                                                                       and $projection.SupplyArea = _SupplyAreaText.ProductionSupplyArea
  association [0..1] to I_Supplier                     as _SupplierText                on  $projection.Supplier = _SupplierText.Supplier
  association [0..1] to I_PurchasingGroup              as _PurchasingGroupText         on  $projection.PurchasingGroup = _PurchasingGroupText.PurchasingGroup
  association [0..*] to I_ProductText                  as _PhantomAssemblyText         on  $projection.Assembly = _PhantomAssemblyText.Product
  association [0..*] to I_ProductText                  as _FollowUpMaterialText        on  $projection.FollowUpMaterial = _FollowUpMaterialText.Product  
  association [0..*] to I_BusinessAreaText             as _BusinessAreaText            on  $projection.BusinessArea = _BusinessAreaText.BusinessArea
  association [0..1] to I_CompanyCode                  as _CompanyCodeText             on  $projection.CompanyCode = _CompanyCodeText.CompanyCode
  association [0..1] to I_ControllingArea              as _ControllingAreaText         on  $projection.ControllingArea = _ControllingAreaText.ControllingArea 
  association [0..*] to I_FunctionalAreaText           as _FunctionalAreaText          on  $projection.FunctionalArea = _FunctionalAreaText.FunctionalArea
-- end new associations for full coverage of text relations
{
      // Key

      @ObjectModel.foreignKey.association: '_Reservation'
  key resb.rsnum                                                      as Reservation,
      @ObjectModel.text.element:  ['BOMItemDescription']
  key cast(resb.rspos as pph_rspos preserving type)                   as ReservationItem,
      @ObjectModel.foreignKey.association: '_ReservationDocRecordType'
  key cast(resb.rsart as pph_rsart preserving type)                   as RecordType,

      //Material data

      @ObjectModel.foreignKey.association: '_MaterialGroup'
      resb.matkl                                                      as MaterialGroup,
      @ObjectModel.foreignKey.association: '_Material'
      @ObjectModel.text.association: '_MaterialText'  
      resb.matnr                                                      as Material,
      @ObjectModel.foreignKey.association: '_Plant'
      resb.werks                                                      as Plant,

      // Order and Operation data

      @ObjectModel.foreignKey.association: '_MfgOrderCategory'
      cast(resb.autyp as manufacturingordercategory preserving type)  as ManufacturingOrderCategory,
      @ObjectModel.foreignKey.association: '_MfgOrderType'
      cast(resb.auart as manufacturingordertype preserving type)      as ManufacturingOrderType,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderStdVH', element: 'ManufacturingOrder' } } ]
      @ObjectModel.foreignKey.association: '_ManufacturingOrder'
      cast(resb.aufnr as manufacturingorder preserving type)          as ManufacturingOrder,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderSequenceStdVH', element: 'ManufacturingOrderSequence' } } ]
      @ObjectModel.foreignKey.association: '_ManufacturingOrderSequence'
      case resb.autyp
        when '10' then case resb.plnfl
          when '' then '000000'
          else resb.plnfl
          end
        when '40' then ''   // clear sequence for process orders

      end                                                             as ManufacturingOrderSequence,
      @ObjectModel.foreignKey.association: '_MfgOrderSequenceCategory'
      cast(resb.flgat as folgenart preserving type)                   as MfgOrderSequenceCategory,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'ManufacturingOrderOperation_2'
      @ObjectModel.foreignKey.association: '_MfgOrderOperationBySemanKey'
      cast(resb.vornr as manufacturingorderoperation preserving type) as ManufacturingOrderOperation,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrdOpBySemanticKeyStdVH', element: 'ManufacturingOrderOperation' } } ]
      @ObjectModel.foreignKey.association: '_MfgOrderOperationBySemKey'
      cast(resb.vornr as vdm_vornr preserving type)                   as ManufacturingOrderOperation_2,
      @ObjectModel.foreignKey.association: '_ProductionPlant'
      cast(resb.pwerk as pwwrk preserving type)                       as ProductionPlant,
      @ObjectModel.foreignKey.association: '_OrdInternalBillOfOperations'
      cast(resb.aufpl as pph_aufpl preserving type)                   as OrderInternalBillOfOperations,
      @ObjectModel.foreignKey.association: '_MfgOrderOperation'
      cast(resb.aplzl as operationinternalid preserving type)         as OrderIntBillOfOperationsItem,
      @ObjectModel.foreignKey.association: '_AssemblyMRPController'
      cast(resb.dispo as assymrpcontrl preserving type)               as AssemblyMRPController,
      @ObjectModel.foreignKey.association: '_ProductionSupervisor'
      cast(resb.fevor as pph_fevor preserving type)                   as ProductionSupervisor,
      resb.OrderObjectInternalID,

      // Date and Time

      @Semantics.businessDate.at: true
      cast(resb.bdter as pph_bdter preserving type)                   as MatlCompRequirementDate,
      cast(resb.bdztp as pph_bdztp preserving type)                   as MatlCompRequirementTime,
      cast(resb.sbter as pph_sbter preserving type)                   as LatestRequirementDate,
      cast(resb.ftrmi as mfgorderactualreleasedate preserving type)   as MfgOrderActualReleaseDate,

      // Attributes

      cast(resb.rssta as pph_rssta preserving type)                   as ReservationItemCreationCode,
      resb.kzear                                                      as ReservationIsFinallyIssued,
      cast(resb.xloek as pph_xloek preserving type)                   as MatlCompIsMarkedForDeletion,
      resb.xfehl                                                      as MaterialComponentIsMissing,
      resb.schgt                                                      as IsBulkMaterialComponent,
      resb.rgekz                                                      as MatlCompIsMarkedForBackflush,
      resb.txtps                                                      as MatlCompIsTextItem,
      cast(resb.no_disp as vdm_no_disp preserving type)               as MaterialPlanningRelevance,
      resb.kfpos                                                      as MatlCompIsConfigurable,
      resb.clakz                                                      as MaterialComponentIsClassified,
      resb.inpos                                                      as MaterialCompIsIntraMaterial,
      cast(case
             when resb.dbskz =  'E' then 'X' 
             when resb.dbskz <> 'E' then ''
      end as clcor preserving type )                                  as MaterialIsDirectlyProduced,
      cast(case
             when resb.dbskz =  'F' then 'X'
             when resb.dbskz <> 'F' then ''
      end as dirpr preserving type )                                  as MaterialIsDirectlyProcured,

      // Text

      @ObjectModel.foreignKey.association: '_LongTextLanguage'
      resb.ltxsp                                                      as LongTextLanguageCode,
      cast(case 
             when resb.ltxsp <> '' then 'X'
             else resb.ltxsp
      end as aufltext preserving type)                                as LongTextExists,

      // Assignments

      @ObjectModel.foreignKey.association: '_RequirementType'
      cast(resb.bdart as pph_bdart preserving type)                   as RequirementType,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_SalesOrderStdVH', element: 'SalesOrder' } } ]      
      @ObjectModel.foreignKey.association: '_SalesOrder'
      cast(resb.kdauf as co_kdauf preserving type)                    as SalesOrder,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_SalesOrderItemStdVH', element: 'SalesOrderItem' } } ]  
      @ObjectModel.foreignKey.association: '_SalesOrderItem'
      cast(resb.kdpos as co_kdpos preserving type)                    as SalesOrderItem,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'WBSElementInternalID_2'
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_WBSElementBasicDataStdVH', element: 'WBSElementInternalID' } } ]
      @ObjectModel.foreignKey.association: '_WBSElement'
      cast(resb.pspel as pph_pspel preserving type)                   as WBSElementInternalID,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_WBSElementBasicDataStdVH', element: 'WBSElementInternalID' } } ]
      @ObjectModel.foreignKey.association: '_WBSElementBasicData2'
      cast(resb.pspel as ps_s4_pspnr preserving type)                 as WBSElementInternalID_2,
      resb.cuobj                                                      as ProductConfiguration,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ChangeMasterStdVH', element: 'ChangeNumber' } } ]
      @ObjectModel.foreignKey.association: '_ChangeNumber'
      resb.aennr                                                      as ChangeNumber,
      cast(resb.revlv as vdm_qm_revlv preserving type)                as MaterialRevisionLevel,
      resb.techs                                                      as EffectivityParameterVariant,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'MaterialComponentSortText'
      resb.sortf                                                      as SortField,
      resb.sortf                                                      as MaterialComponentSortText,
      @ObjectModel.foreignKey.association: '_StatusObject'
      resb.objnr                                                      as ObjectInternalID,

      // Assignments BOM

      cast(resb.stlty as pph_stlty preserving type)                   as BillOfMaterialCategory,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'BillOfMaterialInternalID_2'
      resb.stlnr                                                      as BillOfMaterialInternalID,
      cast(resb.stlnr as pph_stnum preserving type)                   as BillOfMaterialInternalID_2,
      resb.stlan                                                      as BillOfMaterialVariantUsage,
      resb.stlal                                                      as BillOfMaterialVariant,
      resb.stlnr2                                                     as BillOfMaterial,
      cast(resb.stlkn as pph_stlkn preserving type)                   as BOMItem,
      resb.bom_versn                                                  as BillOfMaterialVersion,
      resb.stpoz                                                      as BOMItemInternalChangeCount,
      resb.stvkn                                                      as InheritedBOMItemNode,
      cast(resb.postp as pph_postp preserving type)                   as BOMItemCategory,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'BillOfMaterialItemNumber_2'
      @ObjectModel.text.element: ['BOMItemDescription']
      resb.posnr                                                      as BillOfMaterialItemNumber,
      @ObjectModel.text.element: ['BOMItemDescription']
      cast(resb.posnr as vdm_sposn preserving type)                   as BillOfMaterialItemNumber_2,
      @Semantics.text: true
      resb.potx1                                                      as BOMItemDescription,
      @Semantics.text: true
      resb.potx2                                                      as BOMItemText2,
      @ObjectModel.foreignKey.association: '_BOMExplosion'
      cast(resb.sernr as pph_sernr  preserving type)                  as BOMExplosionDateID,

      // Assignments Purchasing

      cast(resb.infnr as pph_infnr preserving type)                   as PurchasingInfoRecord,
      @ObjectModel.foreignKey.association: '_PurchasingGroup'
      cast(resb.ekgrp as pph_ekgrp preserving type)                   as PurchasingGroup,
--    @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PurchaseRequisitionStdVH', element: 'PurchaseRequisition' } } ] 
      cast(resb.banfn as co_banfn  preserving type)                   as PurchaseRequisition,
--    @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PurchaseRequisitionItemStdVH', element: 'PurchaseRequisitionItem' } } ] 
      cast(resb.bnfpo as co_bnfpo  preserving type)                   as PurchaseRequisitionItem,
--    @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PurchaseOrderStdVH', element: 'PurchaseOrder' } } ] 
      cast(resb.ebeln as vdm_purchaseorder     preserving type)       as PurchaseOrder,
--    @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PurchaseOrderItemStdVH', element: 'PurchaseOrderItem' } } ] 
      cast(resb.ebelp as vdm_purchaseorderitem preserving type)       as PurchaseOrderItem,
--    @ObjectModel.foreignKey.association: '_PurchaseOrderScheduleLine'
      cast(resb.ebele as fis_etenr preserving type)                   as PurchaseOrderScheduleLine,
      @ObjectModel.foreignKey.association: '_Supplier'
      resb.lifnr                                                      as Supplier,
      cast(resb.lifzt as pph_lifzt preserving type)                   as DeliveryDurationInDays,
      cast(resb.webaz as pph_webaz preserving type)                   as MaterialGoodsReceiptDuration,
      -- Price
      @Aggregation.default: #SUM
      @Semantics.amount.currencyCode: 'Currency'
      cast(resb.gpreis as kblpreis  preserving type)                  as ExternalProcessingPrice,
      cast(resb.peinh  as pph_peinh preserving type)                  as NumberOfOperationPriceUnits,

      // Goods Movement data

      resb.xwaok                                                      as GoodsMovementIsAllowed,
      @ObjectModel.foreignKey.association: '_StorageLocation'
      cast(resb.lgort as pph_lgort preserving type)                   as StorageLocation,
      @ObjectModel.foreignKey.association: '_DebitCreditCode'
      cast(resb.shkzg as pph_shkzg preserving type)                   as DebitCreditCode,
      @ObjectModel.foreignKey.association: '_GoodsMovementType'
      resb.bwart                                                      as GoodsMovementType,
      @ObjectModel.foreignKey.association: '_InventorySpecialStockType'
      cast(resb.sobkz as inventoryspecialstocktype preserving type)   as InventorySpecialStockType,
      @ObjectModel.foreignKey.association: '_InventorySpecialStockValnType'
      cast(resb.kzbws as pph_kzbws preserving type)                   as InventorySpecialStockValnType,
      @ObjectModel.foreignKey.association: '_ConsumptionPosting'
      cast(resb.kzvbr as pph_kzvbr preserving type)                   as ConsumptionPosting,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductionSupplyAreaStdVH', element: 'ProductionSupplyArea' } } ]
      @ObjectModel.foreignKey.association: '_SupplyArea'
      @ObjectModel.text.association: '_SupplyAreaText'  
      cast(resb.prvbe as pph_prvbe preserving type)                   as SupplyArea,
      @Semantics.text: true
      cast(resb.wempf as pph_wempf  preserving type)                  as GoodsRecipientName,
      @Semantics.text: true
      resb.ablad                                                      as UnloadingPointName,
      resb.sgt_scat                                                   as StockSegment,
      resb.sgt_rcat                                                   as RequirementSegment,

      // Batch data

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_BatchStdVH', element: 'Batch' } } ]
      resb.charg                                                      as Batch,
--    @ObjectModel.foreignKey.association: '_BatchEntryDetermination'         
      cast(resb.kzech as vdm_pp_kzech preserving type)                as BatchEntryDeterminationCode,
      @ObjectModel.foreignKey.association: '_BatchSplitType'      
      resb.splkz                                                      as BatchSplitType,
      cast(case resb.splkz 
        when '' then '0000'
        else resb.splrv
      end as vdm_splrv preserving type)                               as BatchMasterReservationItem,
      resb.chobj                                                      as BatchClassification,

      // Assignments WM

      resb.berkz                                                      as MaterialStaging,
      @ObjectModel.foreignKey.association: '_Warehouse'
      resb.lgnum                                                      as Warehouse,
      resb.lgtyp                                                      as StorageType,
      resb.lgpla                                                      as StorageBin,

      // Assignments FI/CO

      resb.sanka                                                      as MaterialCompIsCostRelevant,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_BusinessAreaStdVH', element: 'BusinessArea' } } ]
      @ObjectModel.foreignKey.association: '_BusinessArea'
      @ObjectModel.text.association: '_BusinessAreaText'
      resb.gsber                                                      as BusinessArea,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CompanyCodeStdVH', element: 'CompanyCode' } } ]
      @ObjectModel.foreignKey.association: '_CompanyCode'
      resb.bukrs                                                      as CompanyCode,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_GLAccountStdVH', element: 'GLAccount' } } ]
      @ObjectModel.foreignKey.association: '_GLAccount'
      resb.saknr                                                      as GLAccount,
      @ObjectModel.foreignKey.association: '_FunctionalArea'
      @ObjectModel.text.association: '_FunctionalAreaText'
      resb.fkber                                                      as FunctionalArea,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ControllingAreaStdVH', element: 'ControllingArea' } } ]
      @ObjectModel.foreignKey.association: '_ControllingArea'
      resb.kokrs                                                      as ControllingArea,
      @ObjectModel.foreignKey.association: '_AccountAssignmentCategory'
      cast(resb.knttp as pph_knttp preserving type)                   as AccountAssignmentCategory,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'CommitmentItemShortID'
      cast(resb.fipos as bbpfipos  preserving type)                   as CommitmentItem,
      cast(resb.fipos as fmis_ci_internalname preserving type)        as CommitmentItemShortID,
      cast(resb.fistl as bbpfistl  preserving type)                   as FundsCenter,

      // Variable-size comp. data

      resb.rohps                                                      as MaterialCompIsVariableSized,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'VariableSizeItemQuantity'
      cast(resb.roanz as pph_roanz preserving type)                   as NumberOfVariableSizeComponents,
      -- Item quantity (ROANZ and ROAME)
      @ObjectModel.foreignKey.association: '_VariableSizeItemUnit'
      @Semantics.unitOfMeasure: true
      cast(case 
             when resb.rohps = 'X' then resb.roame
             else resb.rohps
      end as vdm_roame)                                               as VariableSizeItemUnit,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeItemUnit'
      @Aggregation.default: #SUM
      cast(resb.roanz as pph_roanz preserving type)                   as VariableSizeItemQuantity,
      -- Component quantity (ROKME and ROMEN)
      @ObjectModel.foreignKey.association: '_VariableSizeCompUnit'
      @Semantics.unitOfMeasure: true
      cast(resb.rokme as pph_rokme preserving type)                   as VariableSizeComponentUnit,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeComponentUnit'
      @Aggregation.default: #SUM
      cast(resb.romen as pph_romen preserving type)                   as VariableSizeComponentQuantity,
      -- Dimensions (ROMEI and ROMSn)
      @ObjectModel.foreignKey.association: '_VariableSizeDimensionUnit'
      @Semantics.unitOfMeasure: true
      resb.romei                                                      as VariableSizeDimensionUnit,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
      @Aggregation.default: #MAX
      resb.roms1                                                      as VariableSizeDimension1,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
      @Aggregation.default: #MAX
      resb.roms2                                                      as VariableSizeDimension2,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
      @Aggregation.default: #MAX
      resb.roms3                                                      as VariableSizeDimension3,
      resb.rform                                                      as FormulaKey,

      // Alternative item data

      resb.alpos                                                      as MaterialCompIsAlternativeItem,
      cast(resb.alpgr as pph_alpgr preserving type)                   as AlternativeItemGroup,
      cast(resb.alpst as pph_alpst preserving type)                   as AlternativeItemStrategy,
      cast(resb.alprf as pph_alprf preserving type)                   as AlternativeItemPriority,
      resb.ewahr                                                      as UsageProbabilityPercent,
      cast(case resb.alpos
        when '' then '0000'
        else resb.splrv
      end as vdm_splrv_alt preserving type)                           as AlternativeMstrReservationItem,

      // Phantom assembly

      cast(resb.dumps as pph_dumps preserving type)                   as MaterialComponentIsPhantomItem,
      resb.aufwg                                                      as OrderPathValue,
      resb.aufst                                                      as OrderLevelValue,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductStdVH', element: 'Product' } } ]
      @ObjectModel.foreignKey.association: '_PhantomAssembly'
      @ObjectModel.text.association: '_PhantomAssemblyText'  
      resb.baugr                                                      as Assembly,
      resb.bauwg                                                      as AssemblyOrderPathValue,
      resb.baust                                                      as AssemblyOrderLevelValue,

      // Discontinuation

      cast(resb.nfeag as pph_nfeag preserving type)                   as DiscontinuationGroup,
      @ObjectModel.foreignKey.association: '_MatlCompDiscontinuationType'
      resb.kzaus                                                      as MatlCompDiscontinuationType,
      cast(resb.nfpkz as pph_kznfp preserving type)                   as MatlCompIsFollowUpMaterial,
      cast(resb.nfgrp as pph_nfgrp preserving type)                   as FollowUpGroup,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductStdVH', element: 'Product' } } ]
      @ObjectModel.foreignKey.association: '_FollowUpMaterial'
      @ObjectModel.text.association: '_FollowUpMaterialText'  
      cast(resb.nomat as pph_nomat preserving type)                   as FollowUpMaterial,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'FollowUpMaterialIsActive'
      cast(resb.nafkz as pph_nafkz preserving type)                   as FollowUpMaterialIsNotActive,
      cast(resb.nafkz as pph_nafkz preserving type)                   as FollowUpMaterialIsActive,
      cast(case resb.kzaus
        when '5' then resb.splrv 
        else '0000'
      end as vdm_splrv_dis preserving type)                           as DiscontinuationMasterResvnItem,

      // Material provision

      @ObjectModel.foreignKey.association: '_ProvisionType'
      cast(resb.beikz as vdm_beikz preserving type)                   as MaterialProvisionType,

      // Spare part

      @ObjectModel.foreignKey.association: '_SparePartType'
      cast(resb.erskz as vdm_erskz preserving type)                   as MatlComponentSparePartType,

      // Lead-Time offset

      cast(resb.nlfzt as pph_nlfzt preserving type)                   as LeadTimeOffset,
      @ObjectModel.foreignKey.association: '_OpLeadTimeOffsetUnit'
      @Semantics.unitOfMeasure: true
      cast(resb.nlfmv as pph_nlfmv preserving type)                   as OperationLeadTimeOffsetUnit,
      cast(resb.nlfzv as pph_nlfzv preserving type)                   as OperationLeadTimeOffset,

      // Quantities and UoM

      resb.fmeng                                                      as QuantityIsFixed,
      resb.netau                                                      as IsNetScrap,
      resb.ausch                                                      as ComponentScrapInPercent,
      resb.avoau                                                      as OperationScrapInPercent,
      resb.umrez                                                      as MaterialQtyToBaseQtyNmrtr,
      resb.umren                                                      as MaterialQtyToBaseQtyDnmntr,
      -- Base unit
      @ObjectModel.foreignKey.association: '_BaseUnit'
      @Semantics.unitOfMeasure: true
      resb.meins                                                      as BaseUnit,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @Aggregation.default: #SUM
      resb.bdmng                                                      as RequiredQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @Aggregation.default: #SUM
      cast(resb.enmng as pph_enmng preserving type)                   as WithdrawnQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @Aggregation.default: #SUM
      cast(resb.vmeng as pph_vmeng preserving type)                   as ConfirmedAvailableQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @Aggregation.default: #SUM
      cast(resb.nomng as pph_nomng preserving type)                   as MaterialCompOriginalQuantity,
      -- Entry unit
      @ObjectModel.foreignKey.association: '_EntryUnit'
      @Semantics.unitOfMeasure: true
      resb.erfme                                                      as EntryUnit,
      @Semantics.quantity.unitOfMeasure: 'EntryUnit'
      @Aggregation.default: #SUM
      cast(resb.erfmg as pph_erfmg preserving type)                   as GoodsMovementEntryQty,

      // Amount and Currency

      @ObjectModel.foreignKey.association: '_Currency'
      @Semantics.currencyCode: true
      resb.waers                                                      as Currency,
      @Aggregation.default: #SUM
      @Semantics.amount.currencyCode: 'Currency'
      resb.enwrt                                                      as WithdrawnQuantityAmount,

      // Fashion Manufacturing Fields

      fsh_critical_comp                                               as CriticalComponentType,
      fsh_critical_level                                              as CriticalComponentLevel,

      // Associations

      _Reservation,
      _ReservationItem,
      _ReservationDocRecordType,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_ManufacturingOrder'
      _MfgOrder,
      _MfgOrderSequence,
      _ManufacturingOrder,
      _ManufacturingOrderSequence,
      _MfgOrderCategory,
      _MfgOrderType,
      _MfgOrderOperation,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_MfgOrderOperationBySemKey'
      _MfgOrderOperationBySemanKey,
      _MfgOrderOperationBySemKey,
      _MfgOrderSequenceCategory,
      _MfgOrderComponentLongText,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_OrderInternalID'
      _OrdInternalBillOfOperations,
      _OrderInternalID,
      _ProductionPlant,
      _AssemblyMRPController,
      _ProductionSupervisor,
      _RequirementType,
      _MaterialGroup,
      _Material,
      _Product,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_ProductPlant2'
      _ProductPlant,
      _ProductPlant2,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_ProductStorageLocation2'
      _ProductStorageLocation,
      _ProductStorageLocation2,
      _ProductSupplyPlanning,
      _ProductUnitsOfMeasure,
      _Plant,
      _StorageLocation,
      _Batch,
      _BatchSplitType,
      _DebitCreditCode,
      _GoodsMovementType,
      _InventorySpecialStockType,
      _InventorySpecialStockValnType,
      _ConsumptionPosting,
      _SupplyArea,
      _Warehouse,
      _FollowUpMaterial,
      _MatlCompDiscontinuationType,
      _ProvisionType,
      _SparePartType,
      _PhantomAssembly,
      _BOMExplosion,
      _BillOfMaterialItem,
      _BOMItemCategory,
      _SalesOrder,
      _SalesOrderItem,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_WBSElementBasicData2'
      _WBSElement,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_WBSElementBasicData2'
      _WBSElementBasicData,
      _WBSElementBasicData2,
      _EnterpriseProjectElement,
      _ChangeNumber,
      _PurchasingGroup,
      _PurchasingInfoRecord,
      _PurchaseOrder,
      _PurchaseOrderItem,
      _PurchaseRequisition,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_PurchaseRequisitionItem2'
      _PurchaseRequisitionItem,
      _PurchaseRequisitionItem2,
      _Supplier,
      @Consumption.hidden: true
      _SupplierCompanyByPlant,
      _CompanyCode,
      _BusinessArea,
      _GLAccount,
      _ControllingArea,
      _FunctionalArea,
      _AccountAssignmentCategory,
      _CommitmentItemShortID,
      _OpLeadTimeOffsetUnit,
      _VariableSizeItemUnit,
      _VariableSizeCompUnit,
      _VariableSizeDimensionUnit,
      _BaseUnit,
      _EntryUnit,
      _Currency,
      _StatusObject,
      _LongTextLanguage,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_MfgOrderComponentLongText'
      _LongText,

      // Text relations

      _MfgOrderText,
      _PlantText,
      _ProductionPlantText,
      _MaterialText,
      _WBSElementText,
      _StorageLocationText,
      _SupplyAreaText,
      _SupplierText,
      _PurchasingGroupText,
      _PhantomAssemblyText,
      _FollowUpMaterialText,
      _BusinessAreaText,
      _CompanyCodeText,
      _ControllingAreaText,
      _FunctionalAreaText
}
where
      resb.kzkup =  ''   //no co-products

  and resb.postp <> 'D'; //no documents