C_MaintenanceOrderConfirmation

DDL: C_MAINTENANCEORDERCONFIRMATION SQL: CMAINTCONF Type: view_entity CONSUMPTION

Maintenance Order Confirmation Details

C_MaintenanceOrderConfirmation is a Consumption CDS View that provides data about "Maintenance Order Confirmation Details" in SAP S/4HANA. It reads from 1 data source (I_MaintenanceOrderConfirmation) and exposes 40 fields with key fields MaintOrderConf, MaintOrderConfCntrValue. It has 3 associations to related views. It is exposed through 1 OData service (UI_MAINTENANCEJOB_MANAGE). It is used in 1 Fiori application: Perform Maintenance Jobs.

Data Sources (1)

SourceAliasJoin Type
I_MaintenanceOrderConfirmation I_MaintenanceOrderConfirmation from

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_User _EnteredByUser _EnteredByUser.UserID = $projection.EnteredByUser
[1..1] C_ObjPgMaintOrderConfirmation _OrderConfirmation _OrderConfirmation.MaintOrderConf = $projection.MaintOrderConf and _OrderConfirmation.MaintOrderConfCntrValue = $projection.MaintOrderConfCntrValue
[0..1] I_MaintenanceOrderConfirmation _CancelledConfirmations _CancelledConfirmations.MaintOrderConf = $projection.MaintOrderConf and _CancelledConfirmations.CancldMaintOrderConfCntrValue = $projection.MaintOrderConfCntrValue

Annotations (7)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
EndUserText.label Maintenance Order Confirmation Details view
VDM.viewType #CONSUMPTION view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view

OData Services (1)

ServiceBindingVersionContractRelease
UI_MAINTENANCEJOB_MANAGE UI_MAINTENANCEJOB_MANAGE V2 C1 NOT_RELEASED

Fiori Apps (1)

App IDApp NameTypeDescription
F5104A Perform Maintenance Jobs Transactional Perform Maintenance Jobs app will help Maintenance Technician to see the list with all work items assigned to the him/her or to his/her team, several features like Assignment of an operation, Time recording for the Operations, create partial or final confirmations and the ability to display and change the malfunction information are possible with the app. The maintenance technician can post and return the planned components and can also record the measurement document.

Perform Maintenance Jobs

Business Role: Maintenance Technician

Technician records actual work, remaining work, confirmation text, and final confirmation for self as well as for team members working on the job.

Fields (40)

KeyFieldSource TableSource FieldDescription
KEY MaintOrderConf MaintOrderConf
KEY MaintOrderConfCntrValue MaintOrderConfCntrValue
MaintOrdConfLabel
EnteredByUser EnteredByUser
CreatedByUserDescription _EnteredByUser UserDescription
PersonnelNumber PersonnelNumber
PersonFullName
ActualDuration ActualDuration
ActualDurationUnit ActualDurationUnit
ActualWorkQuantity ActualWorkQuantity
ActualWorkQuantityUnit ActualWorkQuantityUnit
RemainingWorkQuantity RemainingWorkQuantity
RemainingWorkQuantityUnit RemainingWorkQuantityUnit
ConfirmationText ConfirmationText
IsFinalConfirmation IsFinalConfirmation
LongText _OrderConfLongText PlainLongText
ActivityType ActivityType
CostCtrActivityTypeName
IsReversed IsReversed Cancelled
WorkCenter _OrderConfirmation WorkCenter
WorkCenterDesc _OrderConfirmation WorkCenterDesc
Plant Plant Work Center Plant
PlantName _Plant PlantName
MaintenanceOrder MaintenanceOrder
PostingDate I_MaintenanceOrderConfirmation PostingDate
MaintOrdConfCancldByPersNmbr _CancelledConfirmations PersonnelNumber Cancelled By
MaintOrdConfCancelledByName
MaintOrdConfCancelledOnDate _CancelledConfirmations MaintOrderConfirmationEntryDte Cancelled On
MaintOrdConfCancellationText _CancelledConfirmations ConfirmationText Cancelled Confirmation Text
MaintOrdConfCanclnLongText Cancelled Confirmation Long Text
AccountingIndicatorCode AccountingIndicatorCode Accounting Indicator
BillableControlName
_OrderConfirmation _OrderConfirmation
_ConfirmationGroup _ConfirmationGroup
_MaintenanceOrder _MaintenanceOrder
_PersonnelName _PersonnelName
_Plant _Plant
_IsFinalConfirmation _IsFinalConfirmation
_IsReversed _IsReversed
_OrderConfLongText _OrderConfLongText
//@AbapCatalog.sqlViewName: 'CMAINTCONF'

//@AbapCatalog.compiler.compareFilter: true

//@AbapCatalog.preserveKey: true

@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@EndUserText.label: 'Maintenance Order Confirmation Details'
@VDM.viewType: #CONSUMPTION
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED}
//@ClientHandling.algorithm: #SESSION_VARIABLE

@UI.lineItem: [{criticality: 'IsCancelled'}]
define view entity C_MaintenanceOrderConfirmation
  as select from I_MaintenanceOrderConfirmation
  association [0..1] to I_User                         as _EnteredByUser          on  _EnteredByUser.UserID = $projection.EnteredByUser
  association [1..1] to C_ObjPgMaintOrderConfirmation  as _OrderConfirmation      on  _OrderConfirmation.MaintOrderConf          = $projection.MaintOrderConf
                                                                                  and _OrderConfirmation.MaintOrderConfCntrValue = $projection.MaintOrderConfCntrValue
  association [0..1] to I_MaintenanceOrderConfirmation as _CancelledConfirmations on  _CancelledConfirmations.MaintOrderConf                = $projection.MaintOrderConf
                                                                                  and _CancelledConfirmations.CancldMaintOrderConfCntrValue = $projection.MaintOrderConfCntrValue
{
      @UI.hidden: true
  key MaintOrderConf,
      @UI.hidden: true
  key MaintOrderConfCntrValue,
      @Consumption.semanticObject: 'MaintOrderConfirmation'
      @UI.lineItem: [ {position: 10, importance: #HIGH,
      type: #WITH_INTENT_BASED_NAVIGATION,
      semanticObject: 'MaintOrderConfirmation',
      label:'Confirmation', semanticObjectAction: 'displayFactSheet', value: 'MaintOrdConfLabel'}]
      concat(concat(ltrim(MaintOrderConf, '0') ,'/'), ltrim(MaintOrderConfCntrValue, '0')) as MaintOrdConfLabel,

      @ObjectModel.text.element:  [ 'CreatedByUserDescription' ]
      @UI.textArrangement: #TEXT_ONLY
      @UI.lineItem: [{position: 20, importance: #HIGH }]
      @UI.hidden: true
      EnteredByUser,
      @UI.hidden: true
      _EnteredByUser.UserDescription                                                       as CreatedByUserDescription,

      @UI.lineItem: [{position: 30, importance: #HIGH, label: 'Personnel Number' }]
      @ObjectModel.text.element: [ 'PersonFullName' ]
      PersonnelNumber,
      @UI.hidden: true
      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EAM_OBJPG_MAINT_BP_TXT_EXIT'
      cast('' as eams_person_responsible_name )                                            as PersonFullName,
      //_PersonResponsible.PersonFullName,


      @Semantics.quantity.unitOfMeasure: 'ActualDurationUnit'
      ActualDuration,
      @UI.hidden: true
      ActualDurationUnit,

      @Semantics.quantity.unitOfMeasure: 'ActualWorkQuantityUnit'
      @UI.lineItem: [{position: 50, importance: #HIGH }]
      ActualWorkQuantity,
      @UI.hidden: true
      ActualWorkQuantityUnit,

      @Semantics.quantity.unitOfMeasure: 'RemainingWorkQuantityUnit'
      RemainingWorkQuantity,
      @UI.hidden: true
      RemainingWorkQuantityUnit,

      @Semantics.text: true
      @UI.lineItem: [{position: 70, importance: #HIGH, label: 'Confirmation Text' }]
      ConfirmationText,

      @UI.lineItem: [{position: 90, importance: #HIGH, label: 'Final Confirmation' }]
      IsFinalConfirmation,

      @UI.lineItem: [{position: 80, importance: #HIGH, label: 'Confirmation Long Text'}]
      @UI.multiLineText: true
      _OrderConfLongText.PlainLongText                                                     as LongText,

      @ObjectModel.text.element:  [ 'CostCtrActivityTypeName' ]
      ActivityType,
      @UI.hidden: true
      _ActivityTypeText[1:Language = $session.system_language].CostCtrActivityTypeName,

      @UI.hidden: true
      case I_MaintenanceOrderConfirmation.IsReversed
        when 'X' then cast(1 as mpe_criticality_type preserving type)
        else cast(0 as  mpe_criticality_type preserving type)
        end                                                                                as IsCancelled,
      @EndUserText.label: 'Cancelled'
      IsReversed,
      _OrderConfirmation.WorkCenter,
      @UI.hidden: true
      _OrderConfirmation.WorkCenterDesc,
      //@UI.hidden: true

      @ObjectModel.foreignKey.association: '_Plant'
      @ObjectModel.text.element:  [ 'PlantName' ]
      @EndUserText.label: 'Work Center Plant'
      Plant,
      @UI.hidden: true
      _Plant.PlantName,
      @UI.hidden: true
      MaintenanceOrder,
      @UI.lineItem: [{position: 60, importance: #HIGH, label: 'Posting Date' }]
      I_MaintenanceOrderConfirmation.PostingDate,
      @EndUserText.label: 'Cancelled By'
      @ObjectModel.text.element:  [ 'MaintOrdConfCancelledByName' ]
      _CancelledConfirmations.PersonnelNumber                                              as MaintOrdConfCancldByPersNmbr,
      @UI.hidden: true
      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EAM_OBJPG_MAINT_BP_TXT_EXIT'
      cast('' as eams_person_responsible_name )                                            as MaintOrdConfCancelledByName,
      //_CancelledConfirmations._PersonnelName.PersonFullName as MaintOrdConfCancelledByName,

      @EndUserText.label: 'Cancelled On'
      _CancelledConfirmations.MaintOrderConfirmationEntryDte                               as MaintOrdConfCancelledOnDate,
      @EndUserText.label: 'Cancelled Confirmation Text'
      _CancelledConfirmations.ConfirmationText                                             as MaintOrdConfCancellationText,
      @EndUserText.label: 'Cancelled Confirmation Long Text'
      _CancelledConfirmations._OrderConfLongText.PlainLongText                             as MaintOrdConfCanclnLongText,
      @EndUserText.label: 'Accounting Indicator'
      @UI:{ textArrangement: #TEXT_FIRST }
      @ObjectModel.text.element: ['BillableControlName']
      AccountingIndicatorCode,
      @UI.hidden: true
      @Semantics.text: true
      _BillableControl._Text[1:Language = $session.system_language].BillableControlName,
      /*Associations*/
      _OrderConfirmation,
      _ConfirmationGroup,
      _MaintenanceOrder,
      _PersonnelName,
      _Plant,
      _IsFinalConfirmation,
      _IsReversed,
      _OrderConfLongText //confirmation longtext

}
where
  IsReversal = ''