I_MaintenanceOrderComponent

DDL: I_MAINTENANCEORDERCOMPONENT SQL: IMAINTORDCOMP Type: view BASIC Package: IWO1

Maintenance Order Component

I_MaintenanceOrderComponent is a Basic CDS View that provides data about "Maintenance Order Component" in SAP S/4HANA. It reads from 3 data sources (resb, rsadd, rsdb) and exposes 110 fields with key fields MaintenanceOrder, MaintenanceOrderOperation, MaintenanceOrderComponent. It has 20 associations to related views. Part of development package IWO1.

Data Sources (3)

SourceAliasJoin Type
resb resb from
rsadd rsadd left_outer
rsdb rsdb_banfn left_outer

Associations (20)

CardinalityTargetAliasCondition
[0..1] I_MaintenanceOrder _MaintenanceOrder _MaintenanceOrder.MaintenanceOrder = $projection.MaintenanceOrder
[0..1] I_MaintenanceOrderOperation _MaintenanceOrderOperation _MaintenanceOrderOperation.MaintenanceOrder = $projection.MaintenanceOrder and _MaintenanceOrderOperation.MaintOrderRoutingNumber = $projection.MaintOrderRoutingNumber and _MaintenanceOrderOperation.MaintOrderOperationCounter = $projection.MaintOrderOperationCounter
[0..1] I_Material _Material _Material.Material = $projection.Material
[0..*] I_MaterialText _MaterialText _MaterialText.Material = $projection.Material
[0..1] I_MaterialGroup _MaterialGroup _MaterialGroup.MaterialGroup = $projection.MaterialGroup
[0..1] I_StorageLocation _StorageLocation _StorageLocation.Plant = $projection.Plant and _StorageLocation.StorageLocation = $projection.StorageLocation
[0..1] I_Supplier _Supplier _Supplier.Supplier = $projection.Supplier
[0..1] I_StatusObject _StatusObject _StatusObject.StatusObject = $projection.MaintOrderComponentInternalID
[0..1] I_Plant _Plant _Plant.Plant = $projection.Plant
[0..1] I_PMUnitOfMeasureVH _UnitOfMeasure _UnitOfMeasure.UnitOfMeasure = $projection.BaseUnit
[0..1] I_PMUnitOfMeasureVH _UnitOfMeasureEntry _UnitOfMeasureEntry.UnitOfMeasure = $projection.UnitOfEntry
[0..1] I_SafetyRelevance _SafetyRelevance _SafetyRelevance.SafetyRelevantObjectType = 'MA' and _SafetyRelevance.SafetyRelevantObject = $projection.Material
[0..*] I_BomItemCategoryText _ItemCategoryText _ItemCategoryText.BillOfMaterialItemCategory = $projection.ItemCategory
[0..1] I_Purchaserequisitionitem _PurchaseRequisitionItem _PurchaseRequisitionItem.PurchaseRequisition = $projection.PurchaseRequisition and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
[0..1] I_Indicator _ReservationIsFinallyIssued $projection.ReservationIsFinallyIssued = _ReservationIsFinallyIssued.IndicatorValue
[0..1] I_ProductTypeCode _ProductTypeCode _ProductTypeCode.ProductTypeCode = $projection.ProductTypeCode
[0..1] I_ReservationItem _ReservationItem _ReservationItem.Reservation = $projection.Reservation and _ReservationItem.ReservationItem = $projection.ReservationItem and _ReservationItem.RecordType = $projection.ReservationType
[0..1] I_PurReqnOrResvnGeneration _PurReqnOrResvnGeneration $projection.PurReqnOrResvnGeneration = _PurReqnOrResvnGeneration.PurReqnOrResvnGeneration
[0..*] I_StatusObjectActiveStatus _StatusObjectActiveStatus $projection.MaintOrderComponentInternalID = _StatusObjectActiveStatus.StatusObject
[0..*] I_MaintOrdCompDelivDateAdjmtT _MaintOrdCompDelivDateAdjmtT $projection.MaintOrdCompDeliveryDateAdjmt = _MaintOrdCompDelivDateAdjmtT.MaintOrdCompDeliveryDateAdjmt

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IMAINTORDCOMP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Maintenance Order Component view
VDM.viewType #BASIC view
ObjectModel.representativeKey MaintenanceOrderComponent view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XL view
VDM.lifecycle.status #DEPRECATED view
VDM.lifecycle.successor I_MaintenanceOrderComponent_2 view

Fields (110)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceOrder resb aufnr
KEY MaintenanceOrderOperation resb vornr
KEY MaintenanceOrderComponent resb posnr
Reservation resb rsnum
ReservationItem resb rspos
ReservationType resb rsart
MaintenanceOrderSubOperation resb uvorn
Material resb matnr
ComponentDescription resb potx1
RequirementQuantityInBaseUnit resb bdmng
BaseUnit resb meins
QuantityInUnitOfEntry resb erfmg
UnitOfEntry resb erfme
RequirementDate resb bdter
RequirementTime resb bdztp
Supplier resb lifnr
Plant resb werks
StorageLocation resb lgort
MaintOrderRoutingNumber resb aufpl
MaintOrderOperationCounter resb aplzl
MaintOrderComponentInternalID resb objnr
ItemCategory resb postp
MaterialGroup resb matkl
xloekasIsDeleted
QuantityWithdrawnInBaseUnit resb enmng
ReservationIsFinallyIssued resb kzear
PurchaseRequisition rsdb banfn
PurchaseRequisitionItem rsdb bnfpo
ProductTypeCode resb producttype
PerformancePeriodStartDate resb startdate
PerformancePeriodEndDate resb enddate
PerformancePeriodStartTime resb performanceperiodstarttime
PerformancePeriodEndTime resb performanceperiodendtime
LeanServiceDuration resb serviceduration
LeanServiceDurationUnit resb servicedurationunit
DistributionFunction resb funct
SrvcSchedgIsAlignedWthOpWrkCtr resb operationworkcenteralignment
ServicePerformer resb serviceperformer
GoodsMovementType resb bwart
WithdrawnQuantity
ConfirmedAvailableQuantity
MaintOrderCompDebitCreditCode resb shkzg
FldLogsSupplyProcess resb fldlogssupplyprocess
GoodsMovementIsAllowed resb xwaok
MaintenanceOrderComponentBatch resb charg
QuantityIsFixed resb fmeng
MaintOrdOpComponentCurrency resb waers
MaintOrdOpComponentGLAccount resb saknr
MaintOrdOpCompCostingRelevancy resb sanka
MaintCompAltvProdUsgeRateInPct resb ewahr
MaintOrderOpComponentSortText resb sortf
MaintOrdOpCompIsBulkProduct resb schgt
MaterialProvisionType resb beikz
MaintOrdOpCompAssgdWBSElmntInt
MaintOrderOpComponentPrice resb gpreis
MaintOrdOpCompPriceUnitQty resb peinh
MatlCompIsMarkedForBackflush resb rgekz
PurchasingGroup resb ekgrp
DeliveryTimeInDays resb lifzt
MaintOrdOpCompGdsRecipientName resb wempf
MaintOrdOpCompUnloadingPtTxt resb ablad
GoodsReceiptDurationInWorkDays resb webaz
PurchasingInfoRecord resb infnr
OperationLeadTimeOffset resb nlfzv
OpsLeadTimeOffsetUnit resb nlfmv
MaintOrdOpCompProcmtTrckgNmbr rsadd bednr
ResponsiblePurchaseOrg rsadd ekorg
MaintOrdOpCompPurOutlineAgrmt resb ebeln
MaintOrdCompPurOutlineAgrmtItm resb ebelp
OrderOpRelationshipIntType
OpRelshpOffsetDurationUnit rsdb zeinh
OpRelshpOffsetDuration rsdb dauer
MaintOrdCompIsDirectlyProcured resb dbskz
MaintOrdOpCompSpecialStockType resb sobkz
VariableSizeDimension1 resb roms1
VariableSizeDimensionUnit resb romei
VariableSizeCompFormulaKey resb rform
VariableSizeDimension2 resb roms2
NumberOfVariableSizeItem
VariableSizeDimension3 resb roms3
VariableSizeItemQuantity resb romen
VariableSizeComponentUnit resb rokme
RqmtDateIsEnteredManually resb kzmpf
SupplierProduct rsadd idnlf
MaintOrdOpCompRequisitioner rsadd afnam
OverallLimitAmount rsadd overalllimitamount
ExpectedOverallLimitAmount rsadd expectedoveralllimitamount
MaintOrdCompCmtdQtyIsKept resb maintordcompcmtdqtyiskept
MaintOrdOpCompProcmtCatalog rsadd catalogid
MaintOrdOpCompProcmtCatalogItm rsadd catalog_prod_id
_MaintenanceOrder _MaintenanceOrder
_MaintenanceOrderOperation _MaintenanceOrderOperation
_Material _Material
_MaterialText _MaterialText
_MaterialGroup _MaterialGroup
_StorageLocation _StorageLocation
_Plant _Plant
_ItemCategoryText _ItemCategoryText
_UnitOfMeasure _UnitOfMeasure
_UnitOfMeasureEntry _UnitOfMeasureEntry
_StatusObject _StatusObject
_SafetyRelevance _SafetyRelevance
_Supplier _Supplier
_PurchaseRequisitionItem _PurchaseRequisitionItem
_ReservationIsFinallyIssued _ReservationIsFinallyIssued
_ProductTypeCode _ProductTypeCode
_ReservationItem _ReservationItem
_PurReqnOrResvnGeneration _PurReqnOrResvnGeneration
_StatusObjectActiveStatus _StatusObjectActiveStatus
_MaintOrdCompDelivDateAdjmtT _MaintOrdCompDelivDateAdjmtT
@AbapCatalog.sqlViewName: 'IMAINTORDCOMP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Maintenance Order Component'
@VDM.viewType: #BASIC

@ObjectModel.representativeKey: 'MaintenanceOrderComponent'
@ObjectModel.semanticKey:  [ 'MaintenanceOrder', 'MaintenanceOrderOperation', 'MaintenanceOrderComponent' ]

@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #B
@ObjectModel.usageType.sizeCategory: #XL
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: 'I_MaintenanceOrderComponent_2'
define view I_MaintenanceOrderComponent
  as select from           resb
    left outer to one join aufk               on resb.aufnr = aufk.aufnr
    left outer join        rsdb as rsdb_banfn on  rsdb_banfn.rsnum =  resb.rsnum
                                              and rsdb_banfn.rspos =  resb.rspos
                                              and rsdb_banfn.rsart =  resb.rsart
                                              and rsdb_banfn.banfn <> ''
    left outer join        rsadd              on  resb.rsnum = rsadd.rsnum
                                              and resb.rspos = rsadd.rspos
                                              and resb.rsart = rsadd.rsart
  association [0..1] to I_MaintenanceOrder            as _MaintenanceOrder            on  _MaintenanceOrder.MaintenanceOrder = $projection.MaintenanceOrder
  association [0..1] to I_MaintenanceOrderOperation   as _MaintenanceOrderOperation   on  _MaintenanceOrderOperation.MaintenanceOrder           = $projection.MaintenanceOrder
                                                                                      and _MaintenanceOrderOperation.MaintOrderRoutingNumber    = $projection.MaintOrderRoutingNumber
                                                                                      and _MaintenanceOrderOperation.MaintOrderOperationCounter = $projection.MaintOrderOperationCounter
  association [0..1] to I_Material                    as _Material                    on  _Material.Material = $projection.Material
  association [0..*] to I_MaterialText                as _MaterialText                on  _MaterialText.Material = $projection.Material
  association [0..1] to I_MaterialGroup               as _MaterialGroup               on  _MaterialGroup.MaterialGroup = $projection.MaterialGroup
  association [0..1] to I_StorageLocation             as _StorageLocation             on  _StorageLocation.Plant           = $projection.Plant
                                                                                      and _StorageLocation.StorageLocation = $projection.StorageLocation
  association [0..1] to I_Supplier                    as _Supplier                    on  _Supplier.Supplier = $projection.Supplier
  association [0..1] to I_StatusObject                as _StatusObject                on  _StatusObject.StatusObject = $projection.MaintOrderComponentInternalID
  association [0..1] to I_Plant                       as _Plant                       on  _Plant.Plant = $projection.Plant
  association [0..1] to I_PMUnitOfMeasureVH           as _UnitOfMeasure               on  _UnitOfMeasure.UnitOfMeasure = $projection.BaseUnit
  association [0..1] to I_PMUnitOfMeasureVH           as _UnitOfMeasureEntry          on  _UnitOfMeasureEntry.UnitOfMeasure = $projection.UnitOfEntry
  association [0..1] to I_SafetyRelevance             as _SafetyRelevance             on  _SafetyRelevance.SafetyRelevantObjectType = 'MA'
                                                                                      and _SafetyRelevance.SafetyRelevantObject     = $projection.Material
  association [0..*] to I_BomItemCategoryText         as _ItemCategoryText            on  _ItemCategoryText.BillOfMaterialItemCategory = $projection.ItemCategory
  association [0..1] to I_Purchaserequisitionitem     as _PurchaseRequisitionItem     on  _PurchaseRequisitionItem.PurchaseRequisition     = $projection.PurchaseRequisition
                                                                                      and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
  association [0..1] to I_Indicator                   as _ReservationIsFinallyIssued  on  $projection.ReservationIsFinallyIssued = _ReservationIsFinallyIssued.IndicatorValue
  association [0..1] to I_ProductTypeCode             as _ProductTypeCode             on  _ProductTypeCode.ProductTypeCode = $projection.ProductTypeCode
  association [0..1] to I_ReservationItem             as _ReservationItem             on  _ReservationItem.Reservation     = $projection.Reservation
                                                                                      and _ReservationItem.ReservationItem = $projection.ReservationItem
                                                                                      and _ReservationItem.RecordType      = $projection.ReservationType
  association [0..1] to I_PurReqnOrResvnGeneration    as _PurReqnOrResvnGeneration    on  $projection.PurReqnOrResvnGeneration = _PurReqnOrResvnGeneration.PurReqnOrResvnGeneration
  association [0..*] to I_StatusObjectActiveStatus    as _StatusObjectActiveStatus    on  $projection.MaintOrderComponentInternalID = _StatusObjectActiveStatus.StatusObject
  association [0..*] to I_MaintOrdCompDelivDateAdjmtT as _MaintOrdCompDelivDateAdjmtT on  $projection.MaintOrdCompDeliveryDateAdjmt = _MaintOrdCompDelivDateAdjmtT.MaintOrdCompDeliveryDateAdjmt
{
      @ObjectModel.foreignKey.association: '_MaintenanceOrder'
  key resb.aufnr                                               as MaintenanceOrder,
  key resb.vornr                                               as MaintenanceOrderOperation,
      //  key resb.uvorn                                              as MaintenanceOrderSubOperation,

  key resb.posnr                                               as MaintenanceOrderComponent,
      resb.rsnum                                               as Reservation,
      @ObjectModel.foreignKey.association: '_ReservationItem'
      resb.rspos                                               as ReservationItem,
      resb.rsart                                               as ReservationType,
      resb.uvorn                                               as MaintenanceOrderSubOperation,

      @ObjectModel.text.association: '_MaterialText'
      resb.matnr                                               as Material,
      resb.potx1                                               as ComponentDescription,

      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @DefaultAggregation: #NONE
      resb.bdmng                                               as RequirementQuantityInBaseUnit,
      @ObjectModel.foreignKey.association: '_UnitOfMeasure'
      @Semantics.unitOfMeasure:true
      resb.meins                                               as BaseUnit,

      @Semantics.quantity.unitOfMeasure: 'UnitOfEntry'
      @DefaultAggregation: #NONE
      resb.erfmg                                               as QuantityInUnitOfEntry,
      @ObjectModel.foreignKey.association: '_UnitOfMeasureEntry'
      @Semantics.unitOfMeasure:true
      resb.erfme                                               as UnitOfEntry,

      resb.bdter                                               as RequirementDate,
      resb.bdztp                                               as RequirementTime,
      resb.lifnr                                               as Supplier,
      @ObjectModel.foreignKey.association: '_Plant'
      resb.werks                                               as Plant,
      @ObjectModel.foreignKey.association: '_StorageLocation'
      resb.lgort                                               as StorageLocation,
      //      @ObjectModel.foreignKey.association: '_MaintenanceOrderOperation'

      resb.aufpl                                               as MaintOrderRoutingNumber,

      resb.aplzl                                               as MaintOrderOperationCounter,

      resb.objnr                                               as MaintOrderComponentInternalID,
      @ObjectModel.text.association: '_ItemCategoryText'
      resb.postp                                               as ItemCategory,
      @ObjectModel.foreignKey.association: '_MaterialGroup'
      resb.matkl                                               as MaterialGroup,
      -- careful: XLOEK refers to the reservation! After confirmation of order, reservation is always "deleted"
      -- --> see logic in composite view, where we check the system status
      resb.xloek                                               as IsDeleted,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @DefaultAggregation: #NONE
      resb.enmng                                               as QuantityWithdrawnInBaseUnit,

      @ObjectModel.foreignKey.association: '_PurReqnOrResvnGeneration'
      cast(
        case
            when resb.no_disp = '1' then '1'
            when resb.no_disp = 'X' then '2'
            when resb.no_disp = '' then '3'
        end as purreqnorresvngeneration)                       as PurReqnOrResvnGeneration,


      @ObjectModel.foreignKey.association: '_ReservationIsFinallyIssued'
      resb.kzear                                               as ReservationIsFinallyIssued,

      //      cast(

      //        case when resb.dbskz = 'F' then 'X' else ' ' end as xfeld

      //      )                                             as MaterialCompIsProcuredDirectly,

      cast(
        case when resb.dbskz = 'F' then 'X'
        end as xfeld )                                         as MaterialCompIsProcuredDirectly,
      //_DirectProcurement.PurchaseRequisition,

      //_DirectProcurement.PurchaseRequisitionItem,

      //      coalesce( rsdb_banfn.banfn, resb.banfn )      as PurchaseRequisition,

      //      coalesce( rsdb_banfn.bnfpo, resb.bnfpo )      as PurchaseRequisitionItem,

      rsdb_banfn.banfn                                         as PurchaseRequisition,
      rsdb_banfn.bnfpo                                         as PurchaseRequisitionItem,

      @ObjectModel.foreignKey.association: '_ProductTypeCode'
      resb.producttype                                         as ProductTypeCode,
      resb.startdate                                           as PerformancePeriodStartDate,
      resb.enddate                                             as PerformancePeriodEndDate,
      resb.performanceperiodstarttime                          as PerformancePeriodStartTime,
      resb.performanceperiodendtime                            as PerformancePeriodEndTime,
      @Semantics.quantity.unitOfMeasure: 'LeanServiceDurationUnit'
      resb.serviceduration                                     as LeanServiceDuration,
      resb.servicedurationunit                                 as LeanServiceDurationUnit,
      resb.funct                                               as DistributionFunction,
      cast(
        case
            when resb.kzmpf = 'X' then 'M'
            when resb.funct = 'S10' then ''
            when resb.funct = 'S50' then 'X'
        end as cc4_delvry_date_adj preserving type )           as MaintOrdCompDeliveryDateAdjmt,
      resb.operationworkcenteralignment                        as SrvcSchedgIsAlignedWthOpWrkCtr,
      resb.serviceperformer                                    as ServicePerformer,
      resb.bwart                                               as GoodsMovementType,

      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      cast(resb.enmng as pph_enmng preserving type)            as WithdrawnQuantity,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      cast(resb.vmeng as pph_vmeng preserving type)            as ConfirmedAvailableQuantity,
      // Debit-Credit Indicator

      resb.shkzg                                               as MaintOrderCompDebitCreditCode,
      -- Field Logistics:
      resb.fldlogsdelivisheldonshore                           as FldLogsDelivIsHeldOnShore,
      resb.fldlogssupplyprocess                                as FldLogsSupplyProcess,

      //      case when resb.banfn != '' then resb.banfn

      //        else rsdb_banfn.banfn end                                as  PurchaseRequisition,

      //

      //      case when resb.bnfpo != '00000' then resb.bnfpo

      //        else rsdb_banfn.bnfpo end                                as  PurchaseRequisitionItem,

      //

      //      '' as PurchaseOrder,

      //      '' as PurchaseOrderItem,


      resb.xwaok                                               as GoodsMovementIsAllowed,
      resb.charg                                               as MaintenanceOrderComponentBatch,
      resb.fmeng                                               as QuantityIsFixed,
      @Semantics.currencyCode: true
      resb.waers                                               as MaintOrdOpComponentCurrency,
      //resb.kdauf                                        as SalesOrderNumber,

      //resb.kdpos                                        as SalesOrderItemNumber,

      resb.saknr                                               as MaintOrdOpComponentGLAccount,
      //      @Semantics.quantity.unitOfMeasure: 'BaseUnit'

      //      resb.nomng                                        as QUANTITYINUNITOFENTRY,

      resb.sanka                                               as MaintOrdOpCompCostingRelevancy,
      resb.ewahr                                               as MaintCompAltvProdUsgeRateInPct,
      resb.sortf                                               as MaintOrderOpComponentSortText,
      resb.schgt                                               as MaintOrdOpCompIsBulkProduct,
      resb.beikz                                               as MaterialProvisionType,
      cast( resb.pspel as ps_s4_pspnr preserving type )        as MaintOrdOpCompAssgdWBSElmntInt,
      @Semantics.amount.currencyCode: 'MaintOrdOpComponentCurrency'
      @DefaultAggregation: #NONE
      resb.gpreis                                              as MaintOrderOpComponentPrice,
      resb.peinh                                               as MaintOrdOpCompPriceUnitQty,
      resb.rgekz                                               as MatlCompIsMarkedForBackflush,
      resb.ekgrp                                               as PurchasingGroup,
      resb.lifzt                                               as DeliveryTimeInDays,
      resb.wempf                                               as MaintOrdOpCompGdsRecipientName,
      resb.ablad                                               as MaintOrdOpCompUnloadingPtTxt,
      resb.webaz                                               as GoodsReceiptDurationInWorkDays,
      resb.infnr                                               as PurchasingInfoRecord,
      @Semantics.quantity.unitOfMeasure: 'OpsLeadTimeOffsetUnit'
      resb.nlfzv                                               as OperationLeadTimeOffset,
      @Semantics.unitOfMeasure:true
      resb.nlfmv                                               as OpsLeadTimeOffsetUnit,
      //      rsdb.afnam                                       as MaintOrdOpCompRequisitioner,

      rsadd.bednr                                              as MaintOrdOpCompProcmtTrckgNmbr,
      rsadd.ekorg                                              as ResponsiblePurchaseOrg,
      resb.ebeln                                               as MaintOrdOpCompPurOutlineAgrmt,
      resb.ebelp                                               as MaintOrdCompPurOutlineAgrmtItm,
      //rsdb_banfn.ebeln                                  as AgreementNumber,

      //rsdb_banfn.ebelp                                  as AgreementItem,

      cast( rsdb_banfn.aobar as ps_s4_aobar preserving type )  as OrderOpRelationshipIntType,
      @Semantics.unitOfMeasure:true
      rsdb_banfn.zeinh                                         as OpRelshpOffsetDurationUnit,
      @Semantics.quantity.unitOfMeasure: 'OpRelshpOffsetDurationUnit'
      rsdb_banfn.dauer                                         as OpRelshpOffsetDuration,
      resb.dbskz                                               as MaintOrdCompIsDirectlyProcured,
      resb.sobkz                                               as MaintOrdOpCompSpecialStockType,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
      resb.roms1                                               as VariableSizeDimension1,
      @Semantics.unitOfMeasure:true
      resb.romei                                               as VariableSizeDimensionUnit,
      resb.rform                                               as VariableSizeCompFormulaKey,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
      resb.roms2                                               as VariableSizeDimension2,
      cast(resb.roanz as vdm_roanz)                            as NumberOfVariableSizeItem,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
      resb.roms3                                               as VariableSizeDimension3,
      @Semantics.quantity.unitOfMeasure: 'VariableSizeComponentUnit'
      resb.romen                                               as VariableSizeItemQuantity,
      @Semantics.unitOfMeasure:true
      resb.rokme                                               as VariableSizeComponentUnit,
      resb.kzmpf                                               as RqmtDateIsEnteredManually,
      rsadd.idnlf                                              as SupplierProduct,
      rsadd.afnam                                              as MaintOrdOpCompRequisitioner,
      @Semantics.amount.currencyCode: 'MaintOrdOpComponentCurrency'
      rsadd.overalllimitamount                                 as OverallLimitAmount,
      @Semantics.amount.currencyCode: 'MaintOrdOpComponentCurrency'
      rsadd.expectedoveralllimitamount                         as ExpectedOverallLimitAmount,
      resb.maintordcompcmtdqtyiskept                           as MaintOrdCompCmtdQtyIsKept,
      rsadd.catalogid                                          as MaintOrdOpCompProcmtCatalog,
      rsadd.catalog_prod_id                                    as MaintOrdOpCompProcmtCatalogItm,

      // associations:

      _MaintenanceOrder,
      _MaintenanceOrderOperation,
      _Material,
      _MaterialText,
      _MaterialGroup,
      _StorageLocation,
      _Plant,
      _ItemCategoryText,
      _UnitOfMeasure,
      _UnitOfMeasureEntry,
      _StatusObject,
      _SafetyRelevance,
      _Supplier,
      _PurchaseRequisitionItem,
      _ReservationIsFinallyIssued,
      _ProductTypeCode,
      _ReservationItem,
      _PurReqnOrResvnGeneration,
      _StatusObjectActiveStatus,
      _MaintOrdCompDelivDateAdjmtT
}
where
  aufk.autyp = '30'