C_ObjPgMaintOrderOpMaterial

DDL: C_OBJPGMAINTORDEROPMATERIAL SQL: COPMORDOPMATL Type: view CONSUMPTION

Maintenance Order Operation Material

C_ObjPgMaintOrderOpMaterial is a Consumption CDS View that provides data about "Maintenance Order Operation Material" in SAP S/4HANA. It reads from 1 data source (I_MaintOrderOperComp) and exposes 38 fields with key fields MaintenanceOrder, MaintenanceOrderOperation, MaintOrderComponentInternalID. It has 5 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_MaintOrderOperComp I_MaintOrderOperComp from

Associations (5)

CardinalityTargetAliasCondition
[1..1] I_MaintenanceOrder _MaintenanceOrder _MaintenanceOrder.MaintenanceOrder = $projection.MaintenanceOrder
[0..1] C_EAMProductQuickVw _EAMProductQuickVw _EAMProductQuickVw.Material = $projection.Material
[0..*] I_FldLogsSupplyProcessText _FldLogsSupplyProcessText _FldLogsSupplyProcessText.FldLogsSupplyProcess = $projection.FldLogsSupplyProcess
[0..*] I_MaintOrdCompDelivDateAdjmtT _MaintOrdCompDelivDateAdjmtT _MaintOrdCompDelivDateAdjmtT.MaintOrdCompDeliveryDateAdjmt = $projection.MaintOrdCompDeliveryDateAdjmt
[0..1] P_EAMServiceFeature _EAMServiceFeature _EAMServiceFeature.BusinessFeatureID = '01'

Annotations (10)

NameValueLevelField
AbapCatalog.compiler.compareFilter true view
AbapCatalog.sqlViewName COPMORDOPMATL view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Maintenance Order Operation Material view
Metadata.allowExtensions true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #CONSUMPTION view

Fields (38)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceOrder I_MaintOrderOperComp MaintenanceOrder
KEY MaintenanceOrderOperation I_MaintOrderOperComp MaintenanceOrderOperation
KEY MaintOrderComponentInternalID I_MaintOrderOperComp MaintOrderComponentInternalID
MaintenanceOrderComponent I_MaintOrderOperComp MaintenanceOrderComponent Item Number
Reservation I_MaintOrderOperComp Reservation
ReservationItem I_MaintOrderOperComp ReservationItem Reservation Item Number
Material I_MaintOrderOperComp Material
ItemCategory I_MaintOrderOperComp ItemCategory Item Category
BillOfMaterialItemCategoryDesc Item Category Text
MaintOrderCompDebitCreditCode I_MaintOrderOperComp MaintOrderCompDebitCreditCode
AbsoluteQuantity I_MaintOrderOperComp RequirementQuantityInBaseUnit
BaseUnit I_MaintOrderOperComp BaseUnit
StorageLocation I_MaintOrderOperComp StorageLocation
StorageLocationName Storage Location Name
MaterialGroup I_MaintOrderOperComp MaterialGroup
MaterialGroupName Material Group Description
PurchaseRequisition I_MaintOrderOperComp PurchaseRequisition Purchase Requisition
PurchaseRequisitionItem I_MaintOrderOperComp PurchaseRequisitionItem Purchase Requisition Item
PurReqnOrResvnGeneration I_MaintOrderOperComp PurReqnOrResvnGeneration
PerformancePeriodStartDate I_MaintOrderOperComp PerformancePeriodStartDate Start Date
PerformancePeriodStartTime I_MaintOrderOperComp PerformancePeriodStartTime Start Time
PerformancePeriodEndDate I_MaintOrderOperComp PerformancePeriodEndDate End Date
PerformancePeriodEndTime I_MaintOrderOperComp PerformancePeriodEndTime End Time
LeanServiceDuration I_MaintOrderOperComp LeanServiceDuration Service Duration
LeanServiceDurationUnit I_MaintOrderOperComp LeanServiceDurationUnit Service Duration Unit
MaintOrdCompDeliveryDateAdjmt I_MaintOrderOperComp MaintOrdCompDeliveryDateAdjmt Align Requirement Date
MaintOrdCompDelivDateAdjmtText
SrvcSchedgIsAlignedWthOpWrkCtr I_MaintOrderOperComp SrvcSchedgIsAlignedWthOpWrkCtr
MaintOrdOpComponentCurrency I_MaintOrderOperComp MaintOrdOpComponentCurrency
ExpectedOverallLimitAmount I_MaintOrderOperComp ExpectedOverallLimitAmount Expected Value
OverallLimitAmount I_MaintOrderOperComp OverallLimitAmount Overall Limit
FldLogsDelivIsHeldOnShore FldLogsDelivIsHeldOnShore
FldLogsSupplyProcess FldLogsSupplyProcess
_PurReqnOrResvnGeneration _PurReqnOrResvnGeneration
_MaintenanceOrder _MaintenanceOrder
_EAMProductQuickVw _EAMProductQuickVw
_FldLogsSupplyProcessText _FldLogsSupplyProcessText
_EAMServiceFeature _EAMServiceFeature
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.sqlViewName: 'COPMORDOPMATL'
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.privilegedAssociations:  ['_EAMProductQuickVw']
@EndUserText.label: 'Maintenance Order Operation Material'
@Metadata.allowExtensions: true
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED

@VDM.viewType: #CONSUMPTION

define view C_ObjPgMaintOrderOpMaterial
  as select from I_MaintOrderOperComp

  association [1..1] to I_MaintenanceOrder            as _MaintenanceOrder            on _MaintenanceOrder.MaintenanceOrder = $projection.MaintenanceOrder
  association [0..1] to C_EAMProductQuickVw           as _EAMProductQuickVw           on _EAMProductQuickVw.Material = $projection.Material
  association [0..*] to I_FldLogsSupplyProcessText    as _FldLogsSupplyProcessText    on _FldLogsSupplyProcessText.FldLogsSupplyProcess = $projection.FldLogsSupplyProcess
  association [0..*] to I_MaintOrdCompDelivDateAdjmtT as _MaintOrdCompDelivDateAdjmtT on _MaintOrdCompDelivDateAdjmtT.MaintOrdCompDeliveryDateAdjmt = $projection.MaintOrdCompDeliveryDateAdjmt

  association [0..1] to P_EAMServiceFeature           as _EAMServiceFeature       on  _EAMServiceFeature.BusinessFeatureID = '01'

{
      @UI.hidden: true
  key I_MaintOrderOperComp.MaintenanceOrder,

      @UI.hidden: true
  key I_MaintOrderOperComp.MaintenanceOrderOperation,

      @UI.hidden: true
  key I_MaintOrderOperComp.MaintOrderComponentInternalID,

      @EndUserText.label: 'Item Number'
      @UI.lineItem: { importance: #HIGH, position: 10}
      I_MaintOrderOperComp.MaintenanceOrderComponent,

      I_MaintOrderOperComp.Reservation,

      @EndUserText.label: 'Reservation Item Number'
      I_MaintOrderOperComp.ReservationItem,

      @Consumption.semanticObject: 'Material'
      @UI.lineItem: { importance: #HIGH, position: 20}
      @ObjectModel: { foreignKey.association: '_EAMProductQuickVw', mandatory: true}
      @UI:{
      fieldGroup: {
          importance: #HIGH,
          groupLabel: 'Product',
          qualifier: 'Product'
      //                position: 40

      }
      }
      I_MaintOrderOperComp.Material,

      @UI.lineItem: { importance: #HIGH, position: 30}
      case I_MaintOrderOperComp.Material
        when '' then I_MaintOrderOperComp.ComponentDescription
        else I_MaintOrderOperComp._MaterialText[1:Language=$session.system_language].MaterialName
      end                                                                                                        as ItemComponentDescription,

      @EndUserText.label: 'Item Category'
      @ObjectModel.text.element:  [ 'BillOfMaterialItemCategoryDesc' ]
      @UI.lineItem: { importance: #HIGH, position: 40}
      @UI.textArrangement: #TEXT_FIRST
      I_MaintOrderOperComp.ItemCategory,

      @EndUserText.label: 'Item Category Text'
      I_MaintOrderOperComp._ItemCategoryText[1:Language=$session.system_language].MaintComponentItemCategoryDesc as BillOfMaterialItemCategoryDesc,

      @UI.hidden: true
      I_MaintOrderOperComp.MaintOrderCompDebitCreditCode,
      @UI.hidden: true
      I_MaintOrderOperComp.RequirementQuantityInBaseUnit                                                         as AbsoluteQuantity,
      @UI.lineItem: { importance: #HIGH, position: 50}
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      cast(case MaintOrderCompDebitCreditCode
          when 'S' then -RequirementQuantityInBaseUnit
          else RequirementQuantityInBaseUnit
      end                    as bdmng preserving type )                                                          as RequirementQuantityInBaseUnit,

      I_MaintOrderOperComp.BaseUnit,

      @ObjectModel.text.element:  [ 'StorageLocationName' ]
      @UI.lineItem: { importance: #HIGH, position: 60}
      @UI.textArrangement: #TEXT_FIRST
      I_MaintOrderOperComp.StorageLocation,

      @EndUserText.label: 'Storage Location Name'
      I_MaintOrderOperComp._StorageLocation.StorageLocationName,

      @ObjectModel.text.element:  [ 'MaterialGroupName' ]
      @UI.lineItem: { importance: #HIGH, position: 70}
      @UI.textArrangement: #TEXT_FIRST
      I_MaintOrderOperComp.MaterialGroup,

      @EndUserText.label: 'Material Group Description'
      I_MaintOrderOperComp._MaterialGroup._Text[1:Language = $session.system_language].MaterialGroupName,

      @Consumption.semanticObject: 'PurchaseRequisition'
      @EndUserText.label: 'Purchase Requisition'
      @UI.lineItem: { importance: #HIGH, position: 80}
      I_MaintOrderOperComp.PurchaseRequisition,

      @Consumption.semanticObject: 'PurchaseRequisitionItem'
      @EndUserText.label: 'Purchase Requisition Item'
      @UI.lineItem: { importance: #HIGH, position: 90}
      I_MaintOrderOperComp.PurchaseRequisitionItem,

      @UI.lineItem: { importance: #HIGH, position: 100}
      @UI.textArrangement: #TEXT_ONLY
      I_MaintOrderOperComp.PurReqnOrResvnGeneration,

      @EndUserText.label: 'Start Date'
      @UI.hidden: true
      I_MaintOrderOperComp.PerformancePeriodStartDate,

      @EndUserText.label: 'Start Time'
      @UI.hidden: true
      I_MaintOrderOperComp.PerformancePeriodStartTime,

      @EndUserText: {label: 'Start', quickInfo: 'Start Date and Time'}
      cast(dats_tims_to_tstmp(I_MaintOrderOperComp.PerformancePeriodStartDate,
      I_MaintOrderOperComp.PerformancePeriodStartTime,
      abap_system_timezone($session.client,'NULL'), $session.client,'NULL') as timestamp)                        as PerformancePeriodStartDateTime,


      @EndUserText.label: 'End Date'
      @UI.hidden: true
      I_MaintOrderOperComp.PerformancePeriodEndDate,

      @EndUserText.label: 'End Time'
      @UI.hidden: true
      I_MaintOrderOperComp.PerformancePeriodEndTime,

      @EndUserText: {label: 'Finish', quickInfo: 'Finish Date and Time'}
      cast(dats_tims_to_tstmp(I_MaintOrderOperComp.PerformancePeriodEndDate,
      I_MaintOrderOperComp.PerformancePeriodEndTime,
      abap_system_timezone($session.client,'NULL'), $session.client,'NULL') as timestamp)                        as PerformancePeriodEndDateTime,


      @EndUserText.label: 'Service Duration'
      I_MaintOrderOperComp.LeanServiceDuration,

      @UI.hidden: true
      @EndUserText.label: 'Service Duration Unit'
      I_MaintOrderOperComp.LeanServiceDurationUnit,

      @EndUserText.label: 'Align Requirement Date'
      @UI.textArrangement: #TEXT_ONLY
      @ObjectModel.text.element: ['MaintOrdCompDelivDateAdjmtText']
      I_MaintOrderOperComp.MaintOrdCompDeliveryDateAdjmt,

      @UI.hidden: true
      _MaintOrdCompDelivDateAdjmtT[1:Language = $session.system_language].MaintOrdCompDelivDateAdjmtText,

      I_MaintOrderOperComp.SrvcSchedgIsAlignedWthOpWrkCtr,

      @UI.hidden: true
      @Semantics.currencyCode: true
      I_MaintOrderOperComp.MaintOrdOpComponentCurrency,

      @Semantics.amount.currencyCode: 'MaintOrdOpComponentCurrency'
      @EndUserText.label: 'Expected Value'
      I_MaintOrderOperComp.ExpectedOverallLimitAmount,

      @Semantics.amount.currencyCode: 'MaintOrdOpComponentCurrency'
      @EndUserText.label: 'Overall Limit'
      I_MaintOrderOperComp.OverallLimitAmount,

      FldLogsDelivIsHeldOnShore,
      @ObjectModel.text.association: '_FldLogsSupplyProcessText'
      @ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
      FldLogsSupplyProcess,

      @Consumption.filter.hidden: true
      _PurReqnOrResvnGeneration,

      /* Associations - DCL */
      @Consumption.filter.hidden: true
      _MaintenanceOrder,
      @Consumption.filter.hidden: true
      _EAMProductQuickVw,
      @Consumption.filter.hidden: true
      _FldLogsSupplyProcessText,
      @Consumption.hidden: true
      _EAMServiceFeature

}
where
      I_MaintOrderOperComp.IsDeleted                  =  ''
  and ( _MaintenanceOrder.MaintOrderProcessingContext <> 'B' or
        _EAMServiceFeature.BusinessFeatureState       = 'X' )