C_MaintOrderOpPhaseControl

DDL: C_MAINTORDEROPPHASECONTROL Type: view_entity CONSUMPTION Package: ODATA_EAM_WORKORDER_MANAGE

Maintenance Order Op Phase Control

C_MaintOrderOpPhaseControl is a Consumption CDS View that provides data about "Maintenance Order Op Phase Control" in SAP S/4HANA. It reads from 1 data source (I_MaintOrderOpPhaseControl) and exposes 30 fields with key fields MaintenanceOrder, MaintenanceOrderOperation, MaintenanceOrderSubOperation, MaintenancePhaseControl. It has 3 associations to related views. It is exposed through 1 OData service (UI_MAINTENANCEORDER_MANAGE). Part of development package ODATA_EAM_WORKORDER_MANAGE.

Data Sources (1)

SourceAliasJoin Type
I_MaintOrderOpPhaseControl MaintOrderOpPhaseControl from

Associations (3)

CardinalityTargetAliasCondition
[0..*] I_EAMProcessPhaseText _EAMProcessPhaseText _EAMProcessPhaseText.EAMProcessPhaseCode = $projection.EAMProcessPhaseCode
[0..*] I_EAMProcessSubPhaseText _EAMProcessSubPhaseText _EAMProcessSubPhaseText.EAMProcessSubPhaseCode = $projection.EAMProcessSubPhaseCode
[0..*] I_MaintObjPhaseControlStateTxt _MaintObjPhaseControlStateTxt _MaintObjPhaseControlStateTxt.MaintObjPhaseControlStateCode = $projection.MaintObjPhaseControlStateCode

Annotations (8)

NameValueLevelField
EndUserText.label Maintenance Order Op Phase Control view
AccessControl.authorizationCheck #MANDATORY view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true 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_MAINTENANCEORDER_MANAGE UI_MAINTENANCEORDER_MANAGE V4 C1 NOT_RELEASED

Fields (30)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceOrder I_MaintOrderOpPhaseControl MaintenanceOrder
KEY MaintenanceOrderOperation I_MaintOrderOpPhaseControl MaintenanceOrderOperation
KEY MaintenanceOrderSubOperation I_MaintOrderOpPhaseControl MaintenanceOrderSubOperation
KEY MaintenancePhaseControl I_MaintOrderOpPhaseControl MaintenancePhaseControl
MaintenancePhaseControlName I_MaintOrderOpPhaseControl MaintenancePhaseControlName
MaintenancePhaseControlText I_MaintOrderOpPhaseControl MaintenancePhaseControlText
MaintPhseCtrlIsSetAutomly I_MaintOrderOpPhaseControl MaintPhseCtrlIsSetAutomly
MaintPhaseControlAuthorityCode I_MaintOrderOpPhaseControl MaintPhaseControlAuthorityCode
MaintProcgPhseCtrlActvtnCode I_MaintOrderOpPhaseControl MaintProcgPhseCtrlActvtnCode
EAMProcessPhaseCode I_MaintOrderOpPhaseControl EAMProcessPhaseCode
EAMProcessSubPhaseCode I_MaintOrderOpPhaseControl EAMProcessSubPhaseCode
MaintObjPhseCtrlStatusIsActive I_MaintOrderOpPhaseControl MaintObjPhseCtrlStatusIsActive
StatusObject I_MaintOrderOpPhaseControl StatusObject
MaintenanceUserStatusCode I_MaintOrderOpPhaseControl MaintenanceUserStatusCode
EAMOverallStatusProfile I_MaintOrderOpPhaseControl EAMOverallStatusProfile
MaintUserStatusProfileCode I_MaintOrderOpPhaseControl MaintUserStatusProfileCode
MaintenanceOrderType I_MaintOrderOpPhaseControl MaintenanceOrderType
MaintenancePlanningPlant I_MaintOrderOpPhaseControl MaintenancePlanningPlant
EAMBlockerCodeEntityType I_MaintOrderOpPhaseControl EAMBlockerCodeEntityType
MaintObjPhaseControlStateCode I_MaintOrderOpPhaseControl MaintObjPhaseControlStateCode
MaintProcgPhseCtrlActvtnDesc
EAMProcessPhaseCodeDesc
EAMProcessSubPhaseCodeDesc
MaintObjPhaseControlStateDesc
MaintOrdOpProcessPhaseCode
MaintOrdOpProcessSubPhaseCode
_MaintObjPhseCtrlCodeChgSet I_MaintOrderOpPhaseControl _MaintObjPhseCtrlCodeChgSet
_MaintObjPhseCtrlCodeChgReset I_MaintOrderOpPhaseControl _MaintObjPhseCtrlCodeChgReset
_MaintenanceOrder I_MaintOrderOpPhaseControl _MaintenanceOrder
_MaintenanceOrderOperation I_MaintOrderOpPhaseControl _MaintenanceOrderOperation
@EndUserText.label: 'Maintenance Order Op Phase Control'
@AccessControl.authorizationCheck: #MANDATORY
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true

@ObjectModel.semanticKey:  [ 'MaintenanceOrder', 'MaintenanceOrderOperation', 'MaintenanceOrderSubOperation', 'MaintenancePhaseControl' ]

@VDM.viewType: #CONSUMPTION
@AccessControl.personalData.blocking: #('TRANSACTIONAL')
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED}

define view entity C_MaintOrderOpPhaseControl
  as select from           I_MaintOrderOpPhaseControl     as MaintOrderOpPhaseControl

    left outer to one join I_EAMOverallStatusPhaseMapping as EAMOverallStatusPhaseMapping on  MaintOrderOpPhaseControl.EAMOverallStatusProfile  = EAMOverallStatusPhaseMapping.EAMOverallStatusProfile
                                                                                          and MaintOrderOpPhaseControl.EAMBlockerCodeEntityType = EAMOverallStatusPhaseMapping.EAMOverallStatusEntity
                                                                                          and MaintOrderOpPhaseControl.EAMProcessPhaseCode      = EAMOverallStatusPhaseMapping.EAMProcessPhaseCode
                                                                                          and MaintOrderOpPhaseControl.EAMProcessSubPhaseCode   = EAMOverallStatusPhaseMapping.EAMProcessSubPhaseCode

    left outer to one join I_EAMOverallStatus             as EAMOverallStatus             on  MaintOrderOpPhaseControl.EAMOverallStatusProfile  = EAMOverallStatus.EAMOverallStatusProfile
                                                                                          and MaintOrderOpPhaseControl.EAMBlockerCodeEntityType = EAMOverallStatus.EAMOverallStatusEntity
                                                                                          and EAMOverallStatusPhaseMapping.EAMOverallStatus     = EAMOverallStatus.EAMOverallStatus

    left outer to one join I_EAMOverallStatusPhaseMapping as EAMOverallStatusPhMapOrdOp   on  MaintOrderOpPhaseControl.EAMOverallStatusProfile       = EAMOverallStatusPhMapOrdOp.EAMOverallStatusProfile
                                                                                          and MaintOrderOpPhaseControl.EAMBlockerCodeEntityType      = EAMOverallStatusPhMapOrdOp.EAMOverallStatusEntity
                                                                                          and MaintOrderOpPhaseControl.MaintOrdOpProcessPhaseCode    = EAMOverallStatusPhMapOrdOp.EAMProcessPhaseCode
                                                                                          and MaintOrderOpPhaseControl.MaintOrdOpProcessSubPhaseCode = EAMOverallStatusPhMapOrdOp.EAMProcessSubPhaseCode

    left outer to one join I_EAMOverallStatus             as EAMOverallStatusOrdOp        on  MaintOrderOpPhaseControl.EAMOverallStatusProfile  = EAMOverallStatusOrdOp.EAMOverallStatusProfile
                                                                                          and MaintOrderOpPhaseControl.EAMBlockerCodeEntityType = EAMOverallStatusOrdOp.EAMOverallStatusEntity
                                                                                          and EAMOverallStatusPhMapOrdOp.EAMOverallStatus       = EAMOverallStatusOrdOp.EAMOverallStatus

  association [0..*] to I_EAMProcessPhaseText          as _EAMProcessPhaseText          on _EAMProcessPhaseText.EAMProcessPhaseCode = $projection.EAMProcessPhaseCode
  association [0..*] to I_EAMProcessSubPhaseText       as _EAMProcessSubPhaseText       on _EAMProcessSubPhaseText.EAMProcessSubPhaseCode = $projection.EAMProcessSubPhaseCode
  association [0..*] to I_MaintObjPhaseControlStateTxt as _MaintObjPhaseControlStateTxt on _MaintObjPhaseControlStateTxt.MaintObjPhaseControlStateCode = $projection.MaintObjPhaseControlStateCode
{

  key MaintOrderOpPhaseControl.MaintenanceOrder,
  key MaintOrderOpPhaseControl.MaintenanceOrderOperation,
  key MaintOrderOpPhaseControl.MaintenanceOrderSubOperation,
      @ObjectModel.text.element: ['MaintenancePhaseControlName']
  key MaintOrderOpPhaseControl.MaintenancePhaseControl,
      MaintOrderOpPhaseControl.MaintenancePhaseControlName,
      MaintOrderOpPhaseControl.MaintenancePhaseControlText,
      MaintOrderOpPhaseControl.MaintPhseCtrlIsSetAutomly,
      MaintOrderOpPhaseControl.MaintPhaseControlAuthorityCode,
      @ObjectModel.text.element: ['MaintProcgPhseCtrlActvtnDesc']
      MaintOrderOpPhaseControl.MaintProcgPhseCtrlActvtnCode,
      @ObjectModel.text.element: ['EAMProcessPhaseCodeDesc']
      MaintOrderOpPhaseControl.EAMProcessPhaseCode,
      @ObjectModel.text.element: ['EAMProcessSubPhaseCodeDesc']
      MaintOrderOpPhaseControl.EAMProcessSubPhaseCode,
      @Semantics.booleanIndicator:true
      @ObjectModel.filter.enabled: false
      @ObjectModel.sort.enabled: false
      MaintOrderOpPhaseControl.MaintObjPhseCtrlStatusIsActive,

      @ObjectModel.filter.enabled: false
      @ObjectModel.sort.enabled: false
      MaintOrderOpPhaseControl.StatusObject,
      MaintOrderOpPhaseControl.MaintenanceUserStatusCode,
      MaintOrderOpPhaseControl.EAMOverallStatusProfile,
      MaintOrderOpPhaseControl.MaintUserStatusProfileCode,

      MaintOrderOpPhaseControl.MaintenanceOrderType,
      MaintOrderOpPhaseControl.MaintenancePlanningPlant,
      MaintOrderOpPhaseControl.EAMBlockerCodeEntityType,

      @ObjectModel.text.element: ['MaintObjPhaseControlStateDesc']
      MaintOrderOpPhaseControl.MaintObjPhaseControlStateCode,

      @ObjectModel.filter.enabled: false
      @ObjectModel.sort.enabled: false
      @Semantics.booleanIndicator: true
      case
        when EAMOverallStatusOrdOp.EAMOverallStatusSequence is null then ' '
        when EAMOverallStatus.EAMOverallStatusSequence is null then 'X'
        when EAMOverallStatus.EAMOverallStatusSequence > EAMOverallStatusOrdOp.EAMOverallStatusSequence then 'X'
        else ' '
      end as MaintPhaseControlIsRelevant,

      @Semantics.text: true
      MaintOrderOpPhaseControl._MaintPhseCtrlActivationCode._MaintPhseCtrlActvtnCodeTxt[1:Language = $session.system_language ].MaintProcgPhseCtrlActvtnDesc,
      @Semantics.text: true
      _EAMProcessPhaseText[1:Language = $session.system_language ].EAMProcessPhaseCodeDesc,
      @Semantics.text: true
      _EAMProcessSubPhaseText[1:Language = $session.system_language ].EAMProcessSubPhaseCodeDesc,
      @Semantics.text: true
      _MaintObjPhaseControlStateTxt[1:Language = $session.system_language ].MaintObjPhaseControlStateDesc,

      MaintOrderOpPhaseControl._MaintenanceOrderOperation.MaintOrdOpProcessPhaseCode,
      MaintOrderOpPhaseControl._MaintenanceOrderOperation.MaintOrdOpProcessSubPhaseCode,

      MaintOrderOpPhaseControl._MaintObjPhseCtrlCodeChgSet,
      MaintOrderOpPhaseControl._MaintObjPhseCtrlCodeChgReset,
      MaintOrderOpPhaseControl._MaintenanceOrder,
      MaintOrderOpPhaseControl._MaintenanceOrderOperation
}