C_MasterDataChangeProcess

DDL: C_MASTERDATACHANGEPROCESS Type: view_entity CONSUMPTION Package: MDC_PROCESS_OBJECT

Master Data Change Process

C_MasterDataChangeProcess is a Consumption CDS View that provides data about "Master Data Change Process" in SAP S/4HANA. It reads from 1 data source (I_MasterDataChangeProcessTP) and exposes 84 fields with key field MasterDataChangeProcessUUID. It has 27 associations to related views. It is exposed through 6 OData services (C_MDCHGHIERTRACKCHANGES_SRV, C_MDCHGPROCBPTRACKCHANGES_SRV, C_MDCHGTRACKCHANGES_SRV, ...). Part of development package MDC_PROCESS_OBJECT.

Data Sources (1)

SourceAliasJoin Type
I_MasterDataChangeProcessTP Root from

Associations (27)

CardinalityTargetAliasCondition
[0..*] C_MDChgProcessRelatedProcess _RelatedProcess _RelatedProcess.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..*] C_MDChangeProcessSource _Source _Source.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..1] I_MDChgProcessSrceRecordsCntr _NumberOfSouceRecords _NumberOfSouceRecords.MDChgProcessSourceUUID = $projection.MasterDataChangeProcessUUID
[0..*] C_MasterDataChangeProcessStep _Step _Step.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..1] P_MDChangeProcessStatusState _ProcessState _ProcessState.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..1] C_MDChangeProcessCriticality _Criticality _Criticality.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..1] C_MDChangeProcessProgressRatio _Ratio _Ratio.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..1] C_MDChgProcessStepDescription _StepDescription $projection.MasterDataChangeProcess = _StepDescription.MasterDataChangeProcess and $projection.MDChgProcessCurrentStepNumber = _StepDescription.MDChgProcessStep
[0..1] I_MDChangeProcessIsIdle _ProcessIsIdle _ProcessIsIdle.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..1] C_MasterDataChangeProcessUser _ProcessUserVH _ProcessUserVH.MDChgProcessRequestor = $projection.MDChgProcessRequestor and _ProcessUserVH.MasterDataChangeProcessVariant = $projection.masterdatachangeprocessvariant
[0..1] I_MDChangeProcessVariant _ProcessVariant _ProcessVariant.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
[0..1] I_MDCloudUserContactCard _ProcessRequestorContactCard $projection.MDChgProcessRequestor = _ProcessRequestorContactCard.ContactCardID
[0..1] C_MDChangeProcessStatusStateVH _ProcessStateVH _ProcessStateVH.MDChgProcessStatusStateCode = $projection.MDChgProcessStatusStateCode
[0..1] C_MDChangeProcessGoalValueHelp _ProcessGoalVH _ProcessGoalVH.MDChgProcessGoal = $projection.MDChgProcessGoal
[0..*] C_MasterDataChangeProcessGoal _ProcessGoalText _ProcessGoalText.MDChgProcessGoal = $projection.MDChgProcessGoal
[0..1] C_MDChangeProcessGoalProperty _GoalProperty _GoalProperty.MDChgProcessGoal = $projection.MDChgProcessGoal
[0..1] I_MDChangeProcessTypeVH _ProcessTypeVH _ProcessTypeVH.MDChgProcessTypeID = $projection.MDChgProcessTypeID and _ProcessTypeVH.MDChgProcessSrceObjectTypeCode = $projection.MDChgProcessSrceObjectTypeCode and _ProcessTypeVH.MDChgProcessGoal = $projection.MDChgProcessGoal
[0..1] I_MDChangeProcessReasonText _ReasonText _ReasonText.MasterDataChangeProcessReason = $projection.MasterDataChangeProcessReason and _ReasonText.MDChgProcessSrceObjectTypeCode = $projection.MDChgProcessSrceObjectTypeCode and _ReasonText.Language = $session.system_language
[0..1] I_MDChangeProcessPriorityText _PriorityText _PriorityText.MDChangeProcessPriority = $projection.MDChangeProcessPriority and _PriorityText.Language = $session.system_language
[0..*] I_MDChgProcTypeRejectionReason _TypeRejectionReason _TypeRejectionReason.MDChgProcessTypeID = $projection.MDChgProcessTypeID
[0..1] I_MDChgProcRejectionReasonT _RejectionReasonText _RejectionReasonText.MDChangeProcessRejectionReason = $projection.MDChangeProcessRejectionReason and _RejectionReasonText.Language = $session.system_language
[0..1] I_MDChgProcessTypeText _ProcessTypeText _ProcessTypeText.MDChgProcessTypeID = $projection.MDChgProcessTypeID
[0..1] C_MDChangeProcessStrategyVH _ProcessStrategyVH _ProcessStrategyVH.MDChgProcessDuplicateStrategy = $projection.MDChgProcessDuplicateStrategy
[0..1] C_MDQualityEvaluations _MDQualityEvaluations _MDQualityEvaluations.MasterDataChangeProcess = $projection.MasterDataChangeProcess
[0..1] P_MasterDataAttchLinkCount _Attachments $projection.MasterDataChangeProcess = _Attachments.MasterDataAttachmentObjectID and _Attachments.MasterDataAttachmentObjectType = 'C_MASTERDATACHANGEPROCESS'
[0..1] P_MasterDataNoteItemCount _NoteItem $projection.MasterDataChangeProcess = _NoteItem.MasterDataNoteObjectIdentifier and _NoteItem.MasterDataNoteObjectType = 'C_MASTERDATACHANGEPROCESS'
[0..1] P_MDChgProcTypeRjcnReasonCount _RejectionReason _RejectionReason.MDChgProcessTypeID = $projection.MDChgProcessTypeID

Annotations (14)

NameValueLevelField
EndUserText.label Master Data Change Process view
VDM.viewType #CONSUMPTION view
ObjectModel.compositionRoot true view
ObjectModel.transactionalProcessingDelegated true view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled false view
ObjectModel.draftEnabled false view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
AccessControl.authorizationCheck #MANDATORY view
Search.searchable true view
Metadata.allowExtensions true view

OData Services (6)

ServiceBindingVersionContractRelease
C_MDCHGHIERTRACKCHANGES_SRV C_MDCHGHIERTRACKCHANGES_SRV V4 C1 NOT_RELEASED
C_MDCHGPROCBPTRACKCHANGES_SRV C_MDCHGPROCBPTRACKCHANGES_SRV V4 C1 NOT_RELEASED
C_MDCHGTRACKCHANGES_SRV C_MDCHGTRACKCHANGES_SRV V4 C1 NOT_RELEASED
MASTERDATACHANGEPROCESSSD C_MASTERDATACHANGEPROCESS_V4 V4 C1 C1
MASTERDATACHANGEPROCESSSD MASTERDATACHANGEPROCESSSB V2 C1 NOT_RELEASED
MASTERDATACHANGEPROCESSSD MDCHANGEPROCESSSB_2 V2 C1 NOT_RELEASED

Fields (84)

KeyFieldSource TableSource FieldDescription
KEY MasterDataChangeProcessUUID I_MasterDataChangeProcessTP MasterDataChangeProcessUUID
MasterDataChangeProcess I_MasterDataChangeProcessTP MasterDataChangeProcess Process
MDChangeProcessNumberDisplay
MDChgProcessDescription I_MasterDataChangeProcessTP MDChgProcessDescription
MDChgProcessTypeID I_MasterDataChangeProcessTP MDChgProcessTypeID
MDChgProcessGoal I_MasterDataChangeProcessTP MDChgProcessGoal
MDChgProcessStatus I_MasterDataChangeProcessTP MDChgProcessStatus
MDChgProcessSrceObjectTypeCode I_MasterDataChangeProcessTP MDChgProcessSrceObjectTypeCode
MDChgProcessWorkflowTemplate I_MasterDataChangeProcessTP MDChgProcessWorkflowTemplate
MDChgProcessRequestor I_MasterDataChangeProcessTP MDChgProcessRequestor Process Requestor
MasterDataChangeProcessVariant _ProcessVariant MasterDataChangeProcessVariant
MDChgProcessCreationDate I_MasterDataChangeProcessTP MDChgProcessCreationDate
MDChgProcessCreationTime I_MasterDataChangeProcessTP MDChgProcessCreationTime
MDChgProcessChangeDate I_MasterDataChangeProcessTP MDChgProcessChangeDate
MDChgProcessChangeTime I_MasterDataChangeProcessTP MDChgProcessChangeTime
MDChgProcessDelSrceDataIsRqd I_MasterDataChangeProcessTP MDChgProcessDelSrceDataIsRqd
MDChgProcessFinishDate I_MasterDataChangeProcessTP MDChgProcessFinishDate
MDChgProcessFinishTime I_MasterDataChangeProcessTP MDChgProcessFinishTime
MDChgProcessUpdateToken I_MasterDataChangeProcessTP MDChgProcessUpdateToken
MDChgProcessIsStarted I_MasterDataChangeProcessTP MDChgProcessIsStarted
MDChgProcessIsInitialized I_MasterDataChangeProcessTP MDChgProcessIsInitialized
MDChgProcessIsFinalized I_MasterDataChangeProcessTP MDChgProcessIsFinalized
MDChgProcessLastStepIsFinished I_MasterDataChangeProcessTP MDChgProcessLastStepIsFinished
MDChgProcessCurrentStepNumber I_MasterDataChangeProcessTP MDChgProcessCurrentStepNumber
MDChgProcessChkPointIsActive I_MasterDataChangeProcessTP MDChgProcessChkPointIsActive
MDChgProcessCompletionIsReqd I_MasterDataChangeProcessTP MDChgProcessCompletionIsReqd
MDChgProcessWrkFlwDeltnIsRqd I_MasterDataChangeProcessTP MDChgProcessWrkFlwDeltnIsRqd
MDChgProcessSrceDeletionIsRqd I_MasterDataChangeProcessTP MDChgProcessSrceDeletionIsRqd
MDChgProcessFilterChain I_MasterDataChangeProcessTP MDChgProcessFilterChain
MDChgProcessErrorsAreLogged I_MasterDataChangeProcessTP MDChgProcessErrorsAreLogged
MDChgProcessLastActKey I_MasterDataChangeProcessTP MDChgProcessLastActKey
MDChgProcessPredecessor I_MasterDataChangeProcessTP MDChgProcessPredecessor Related Process
MDChgProcessFinalDateTime I_MasterDataChangeProcessTP MDChgProcessFinalDateTime
MDChgProcessNextStpAtDateTime I_MasterDataChangeProcessTP MDChgProcessNextStpAtDateTime
MDChgProcDuplicateStrategyText
MDChgProcessDuplicateStrategy I_MasterDataChangeProcessTP MDChgProcessDuplicateStrategy
MDChgProcessIsReliable I_MasterDataChangeProcessTP MDChgProcessIsReliable
MDChgProcessProtectionReason I_MasterDataChangeProcessTP MDChgProcessProtectionReason
MDChgProcessIsErased I_MasterDataChangeProcessTP MDChgProcessIsErased Deleted
MDChgProcessStatusCriticality _Criticality MDChgProcessStatusCriticality
MDChangeProcessProgressUnit
MDChgProcPrgrsRatioInPercent _Ratio MDChgProcPrgrsRatioInPercent
MDChangeProcessNumberOfSteps _Ratio MDChangeProcessNumberOfSteps
MDChgProcessNmbrOfSrceRecords _NumberOfSouceRecords MDChgProcessNmbrOfSrceRecords Records
MDChgProcessIsIdle _ProcessIsIdle MDChgProcessIsIdle
MDChgProcessStatusStateCode _ProcessState MDChgProcessStatusStateCode Process Status
MDChgProcessStatusStateName _ProcessState MDChgProcessStatusStateName Process Status
MDChgProcessSrceSystem Data Source
MDChgProcessModelRootTableName
MDChgProcSelectionIsAvailable
NumberOfAttachments _Attachments NumberOfAttachments Attachments
NumberOfNotes _NoteItem NumberOfNotes Notes
MDChgProcDspAttchIsAllowed
MDChgProcVisualizationProcess
MDChgProcVisualizationSrceSyst
MDChgProcRefcdFederationToken I_MasterDataChangeProcessTP MDChgProcRefcdFederationToken
MDChgProcRefcdFederationStp I_MasterDataChangeProcessTP MDChgProcRefcdFederationStp
MDChgProcFederationBusSystName I_MasterDataChangeProcessTP MDChgProcFederationBusSystName
MasterDataChangeProcessDueDate I_MasterDataChangeProcessTP MasterDataChangeProcessDueDate
MasterDataChangeProcessReason I_MasterDataChangeProcessTP MasterDataChangeProcessReason
MDChangeProcessReasonText _ReasonText MDChangeProcessReasonText
MDChgProcObjectTypeCodeReason
MDChangeProcessPriority I_MasterDataChangeProcessTP MDChangeProcessPriority
MDChangeProcessPriorityText _PriorityText MDChangeProcessPriorityText
MDChangeProcessRejectionReason I_MasterDataChangeProcessTP MDChangeProcessRejectionReason
MDChgProcRejectionReasonText _RejectionReasonText MDChgProcRejectionReasonText
_Source _Source
_Step _Step
_MDQualityEvaluations _MDQualityEvaluations
MDChgProcessTypeStepDspDesc _StepDescription MDChgProcessStepDescription
MDChgProcessTypeStepDesc _StepDescription MDChgProcessStepType
_ProcessUserVH _ProcessUserVH
_ProcessVariant _ProcessVariant
_ProcessGoalVH _ProcessGoalVH
_ProcessStateVH _ProcessStateVH
_ProcessState _ProcessState
_ProcessTypeVH _ProcessTypeVH
_ProcessGoalText _ProcessGoalText
_GoalProperty _GoalProperty
_ProcessTypeText _ProcessTypeText
_ProcessStrategyVH _ProcessStrategyVH
_RelatedProcess _RelatedProcess
_ProcessRequestorContactCard _ProcessRequestorContactCard
_TypeRejectionReason _TypeRejectionReason
@EndUserText.label: 'Master Data Change Process'
@VDM.viewType: #CONSUMPTION
@ObjectModel: {
    compositionRoot: true,
    transactionalProcessingDelegated:true,
    createEnabled:true,
    updateEnabled:true,
    deleteEnabled:false,
    draftEnabled:false,
    usageType.serviceQuality: #C,
    usageType.sizeCategory : #L,
    usageType.dataClass: #MIXED,
    alternativeKey: [{
        id : 'MASTERDATACHANGEPROCESS',
        uniqueness : #UNIQUE_IF_NOT_INITIAL,
        element : ['MASTERDATACHANGEPROCESS']
    }]
//    entityChangeStateId: 'MDChgProcessUpdateToken'

}
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.privilegedAssociations:  [
  '_ProcessRequestorContactCard'
]
@Search.searchable: true
@Metadata.allowExtensions: true
@ObjectModel.semanticKey: ['MasterDataChangeProcess']
@ObjectModel.delegatedAction: [
  { name: 'CHECK_AND_CREATE_MASS_PROCESS', exposureName: 'CheckAndCreateMassProcess' },
  { name: 'CHECK_SELECTION', exposureName: 'CheckProcessSelection' },
  { name: 'CONTINUE_PROCESS', exposureName: 'ContinueProcess' },
  { name: 'FINISH_STEP', exposureName: 'CompleteProcessStep' },
  { name: 'GET_AUDIT_TRAIL', exposureName: 'GetProcessAuditTrail' },
  { name: 'GET_AUDIT_TRAIL_USERS', exposureName: 'GetProcessAuditTrailUsers' },
  { name: 'GET_GRADES', exposureName: 'GetProcessGrades' },
//  { name: 'GET_FREE_SOURCES', exposureName: 'GetFreeProcessSources' },

  { name: 'REPLENISH_WORKLIST_QUERIES', exposureName: 'ReplenishWorklistQueries' },
  { name: 'REMOVE_RECORDS', exposureName: 'RemoveProcessRecords' },
  { name: 'RETRY_STEP', exposureName: 'RetryProcessStep' },
  { name: 'REVALIDATE_AND_CONTINUE', exposureName: 'RecheckAndContinueProcess' },
  { name: 'ROLLBACK_PROCESS', exposureName: 'RollbackProcess' },
  { name: 'SPLIT_RECORDS', exposureName: 'SplitProcessRecords' },
  { name: 'START_PROCESS_WITHOUT_SCOPE', exposureName: 'TriggerProcessWithoutScope' },
  { name: 'STOP_PROCESS', exposureName: 'CancelProcess' },
  { name: 'TERMINATE_PROCESS', exposureName: 'TerminateProcess' },
  { name: 'TOUCH', exposureName: 'TriggerProcessDeterminations' },
  { name: 'MANUAL_START_STEP_WORKFLOW', exposureName: 'TriggerProcessStepWorkflow' },
  { name: 'RETRY_START_STEP_WORKFLOW', exposureName: 'RetryStartProcessStepWorkflow' },
  { name: 'ERASE_PROCESS', exposureName: 'DeleteProcess' },
  { name: 'ERASE_PROCESS_WITH_REASON', exposureName: 'DeleteProcessWithReason' },
  { name: 'HAS_PROCESS_OPEN_DRAFTS', exposureName: 'CheckProcessHasOpenDrafts' },
  { name: 'VERIFY_CLOUD_READINESS', exposureName: 'VerifyCloudReadiness' }
]
/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ]  } */
define root view entity C_MasterDataChangeProcess
  as select from I_MasterDataChangeProcessTP as Root

  association [0..*] to C_MDChgProcessRelatedProcess   as _RelatedProcess              on  _RelatedProcess.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..*] to C_MDChangeProcessSource        as _Source                      on  _Source.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..1] to I_MDChgProcessSrceRecordsCntr  as _NumberOfSouceRecords        on  _NumberOfSouceRecords.MDChgProcessSourceUUID = $projection.MasterDataChangeProcessUUID
  association [0..*] to C_MasterDataChangeProcessStep  as _Step                        on  _Step.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..1] to P_MDChangeProcessStatusState   as _ProcessState                on  _ProcessState.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..1] to C_MDChangeProcessCriticality   as _Criticality                 on  _Criticality.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..1] to C_MDChangeProcessProgressRatio as _Ratio                       on  _Ratio.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..1] to C_MDChgProcessStepDescription  as _StepDescription             on  $projection.MasterDataChangeProcess       = _StepDescription.MasterDataChangeProcess
                                                                                       and $projection.MDChgProcessCurrentStepNumber = _StepDescription.MDChgProcessStep

  association [0..1] to I_MDChangeProcessIsIdle        as _ProcessIsIdle               on  _ProcessIsIdle.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..1] to C_MasterDataChangeProcessUser  as _ProcessUserVH               on  _ProcessUserVH.MDChgProcessRequestor          = $projection.MDChgProcessRequestor
                                                                                       and _ProcessUserVH.MasterDataChangeProcessVariant = $projection.masterdatachangeprocessvariant
  association [0..1] to I_MDChangeProcessVariant       as _ProcessVariant              on  _ProcessVariant.MasterDataChangeProcessUUID = $projection.MasterDataChangeProcessUUID
  association [0..1] to I_MDCloudUserContactCard       as _ProcessRequestorContactCard on  $projection.MDChgProcessRequestor = _ProcessRequestorContactCard.ContactCardID

  association [0..1] to C_MDChangeProcessStatusStateVH as _ProcessStateVH              on  _ProcessStateVH.MDChgProcessStatusStateCode = $projection.MDChgProcessStatusStateCode
  association [0..1] to C_MDChangeProcessGoalValueHelp as _ProcessGoalVH               on  _ProcessGoalVH.MDChgProcessGoal = $projection.MDChgProcessGoal
  association [0..*] to C_MasterDataChangeProcessGoal  as _ProcessGoalText             on  _ProcessGoalText.MDChgProcessGoal = $projection.MDChgProcessGoal
  association [0..1] to C_MDChangeProcessGoalProperty  as _GoalProperty                on  _GoalProperty.MDChgProcessGoal = $projection.MDChgProcessGoal
  association [0..1] to I_MDChangeProcessTypeVH        as _ProcessTypeVH               on  _ProcessTypeVH.MDChgProcessTypeID             = $projection.MDChgProcessTypeID
                                                                                       and _ProcessTypeVH.MDChgProcessSrceObjectTypeCode = $projection.MDChgProcessSrceObjectTypeCode
                                                                                       and _ProcessTypeVH.MDChgProcessGoal               = $projection.MDChgProcessGoal
  association [0..1] to I_MDChangeProcessReasonText    as _ReasonText                  on  _ReasonText.MasterDataChangeProcessReason  = $projection.MasterDataChangeProcessReason
                                                                                       and _ReasonText.MDChgProcessSrceObjectTypeCode = $projection.MDChgProcessSrceObjectTypeCode
                                                                                       and _ReasonText.Language                       = $session.system_language
  association [0..1] to I_MDChangeProcessPriorityText  as _PriorityText                on  _PriorityText.MDChangeProcessPriority = $projection.MDChangeProcessPriority
                                                                                       and _PriorityText.Language                = $session.system_language
  association [0..*] to I_MDChgProcTypeRejectionReason as _TypeRejectionReason         on  _TypeRejectionReason.MDChgProcessTypeID = $projection.MDChgProcessTypeID
  association [0..1] to I_MDChgProcRejectionReasonT    as _RejectionReasonText         on  _RejectionReasonText.MDChangeProcessRejectionReason = $projection.MDChangeProcessRejectionReason
                                                                                       and _RejectionReasonText.Language                       = $session.system_language
  association [0..1] to I_MDChgProcessTypeText         as _ProcessTypeText             on  _ProcessTypeText.MDChgProcessTypeID = $projection.MDChgProcessTypeID
  association [0..1] to C_MDChangeProcessStrategyVH    as _ProcessStrategyVH           on  _ProcessStrategyVH.MDChgProcessDuplicateStrategy = $projection.MDChgProcessDuplicateStrategy
  association [0..1] to C_MDQualityEvaluations         as _MDQualityEvaluations        on  _MDQualityEvaluations.MasterDataChangeProcess = $projection.MasterDataChangeProcess

  association [0..1] to P_MasterDataAttchLinkCount     as _Attachments                 on  $projection.MasterDataChangeProcess         = _Attachments.MasterDataAttachmentObjectID
                                                                                       and _Attachments.MasterDataAttachmentObjectType = 'C_MASTERDATACHANGEPROCESS'
  association [0..1] to P_MasterDataNoteItemCount      as _NoteItem                    on  $projection.MasterDataChangeProcess = _NoteItem.MasterDataNoteObjectIdentifier
                                                                                       and _NoteItem.MasterDataNoteObjectType  = 'C_MASTERDATACHANGEPROCESS'
  association [0..1] to P_MDChgProcTypeRjcnReasonCount as _RejectionReason             on  _RejectionReason.MDChgProcessTypeID = $projection.MDChgProcessTypeID
{
  key Root.MasterDataChangeProcessUUID,
      @EndUserText.label: 'Process'
      @ObjectModel.text.element: ['MDChgProcessDescription']
      @ObjectModel.readOnly: true
      Root.MasterDataChangeProcess                                                                 as MasterDataChangeProcess,
      @Search.defaultSearchElement: true
      @Search.ranking: #HIGH
      @Search.fuzzinessThreshold: 0.8
      @UI.hidden: true
      cast( Root.MasterDataChangeProcess as mdc_process_id_alpha_out )                             as MDChangeProcessNumberDisplay,
      @Semantics.text:true
      @Search.ranking: #HIGH
      @Search.fuzzinessThreshold: 0.8
      Root.MDChgProcessDescription,
      @Consumption.valueHelpDefinition: [{ association: '_ProcessTypeVH', distinctValues: true }]
      @ObjectModel.text.association: '_ProcessTypeText'
      @ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
      Root.MDChgProcessTypeID,
      @Consumption.valueHelpDefinition: [{ association: '_ProcessGoalVH', distinctValues: true }]
      @ObjectModel.text.association: '_ProcessGoalText'
      @ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
      Root.MDChgProcessGoal,
      @Search.ranking: #LOW
      Root.MDChgProcessStatus,
      Root.MDChgProcessSrceObjectTypeCode,
      Root.MDChgProcessWorkflowTemplate,
      @Consumption.valueHelpDefinition: [{ association: '_ProcessUserVH', distinctValues: true }]
      @ObjectModel.foreignKey.association: '_ProcessRequestorContactCard'
      @Semantics.user.createdBy: true
      @EndUserText.label: 'Process Requestor'
      @Search.ranking: #MEDIUM
      Root.MDChgProcessRequestor,
      @UI.hidden: true
      @ObjectModel.readOnly: true
      _ProcessVariant.MasterDataChangeProcessVariant,
      Root.MDChgProcessCreationDate,
      Root.MDChgProcessCreationTime,
      @ObjectModel.readOnly: true
      @ObjectModel.filter.transformedBy: 'ABAP:CL_MDC_PROCESS_FLT_SORT_EXIT'
      @ObjectModel.sort.transformedBy: 'ABAP:CL_MDC_PROCESS_FLT_SORT_EXIT'
      cast( dats_tims_to_tstmp(Root.MDChgProcessCreationDate, Root.MDChgProcessCreationTime, 'UTC', $session.client, 'NULL')
        as timestamp preserving type )                                                             as MDChgProcessCreationDateTime,
      Root.MDChgProcessChangeDate,
      Root.MDChgProcessChangeTime,
      Root.MDChgProcessDelSrceDataIsRqd,
      Root.MDChgProcessFinishDate,
      Root.MDChgProcessFinishTime,
      Root.MDChgProcessUpdateToken,
      Root.MDChgProcessIsStarted,
      Root.MDChgProcessIsInitialized,
      Root.MDChgProcessIsFinalized,
      Root.MDChgProcessLastStepIsFinished,
      Root.MDChgProcessCurrentStepNumber,
      Root.MDChgProcessChkPointIsActive,
      Root.MDChgProcessCompletionIsReqd,
      Root.MDChgProcessWrkFlwDeltnIsRqd,
      Root.MDChgProcessSrceDeletionIsRqd,
      Root.MDChgProcessFilterChain,
      Root.MDChgProcessErrorsAreLogged,
      Root.MDChgProcessLastActKey,
      @EndUserText.label: 'Related Process'
      Root.MDChgProcessPredecessor,
      Root.MDChgProcessFinalDateTime,
      Root.MDChgProcessNextStpAtDateTime,
      @Semantics.text: true
      @ObjectModel.readOnly: true
      _ProcessStrategyVH._Text[1:Language=$session.system_language].MDChgProcDuplicateStrategyText as MDChgProcDuplicateStrategyText,
      @Consumption.valueHelpDefinition: [{ association: '_ProcessStrategyVH', distinctValues: true }]
      @ObjectModel.foreignKey.association: '_ProcessStrategyVH'
      @ObjectModel.text.element: ['MDChgProcDuplicateStrategyText']
      @Search.ranking: #LOW
      Root.MDChgProcessDuplicateStrategy,
      Root.MDChgProcessIsReliable,
      Root.MDChgProcessProtectionReason,
      @Consumption.filter: { selectionType : #SINGLE,
                             defaultValue : ''
      }
      @EndUserText.label: 'Deleted'
      Root.MDChgProcessIsErased,
      @ObjectModel.readOnly: true
      _Criticality.MDChgProcessStatusCriticality                                                   as MDChgProcessStatusCriticality,
      @ObjectModel.readOnly: true
      cast( '%' as msehi )                                                                         as MDChangeProcessProgressUnit,
      @ObjectModel.readOnly: true
      _Ratio.MDChgProcPrgrsRatioInPercent                                                          as MDChgProcPrgrsRatioInPercent,
      @ObjectModel.readOnly: true
      _Ratio.MDChangeProcessNumberOfSteps,
      @ObjectModel.readOnly: true
      @EndUserText.label: 'Records'
      _NumberOfSouceRecords.MDChgProcessNmbrOfSrceRecords                                          as MDChgProcessNmbrOfSrceRecords,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      _ProcessIsIdle.MDChgProcessIsIdle                                                            as MDChgProcessIsIdle,
      @ObjectModel.readOnly: true
      @Consumption.valueHelpDefinition: [{ association: '_ProcessStateVH', distinctValues: true }]
      @ObjectModel.foreignKey.association: '_ProcessStateVH'
      @ObjectModel.text.association: '_ProcessState'
      @EndUserText.label: 'Process Status'
      @EndUserText.quickInfo: 'Process Status'
      _ProcessState.MDChgProcessStatusStateCode                                                    as MDChgProcessStatusStateCode,
      @ObjectModel.readOnly: true
      @EndUserText.label: 'Process Status'
      @EndUserText.quickInfo: 'Process Status'
      @UI.hidden: true
      _ProcessState.MDChgProcessStatusStateName                                                    as MDChgProcessStatusStateName,
      @ObjectModel.readOnly: true
      @ObjectModel.filter.transformedBy: 'ABAP:CL_MDC_PROCESS_FLT_SORT_EXIT'
      @EndUserText.label: 'Data Source'
      cast( '' as abap.char( 60 ) )                                                                as MDChgProcessSrceSystem,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MDC_PROCESS_CALC_EXIT'
      cast( '                              ' as mdc_table_name preserving type )                   as MDChgProcessModelRootTableName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MDC_PROCESS_CALC_EXIT'
      cast( '' as abap_boolean preserving type )                                                   as MDChgProcSelectionIsAvailable,

      @Consumption.filter: { selectionType : #SINGLE,
                             defaultValue : ''
      }
      @ObjectModel.readOnly: true
      @EndUserText.label: 'Obsolete'
      cast(
        case when Root.MDChgProcessIsStarted = 'X'
             and _NumberOfSouceRecords.MDChgProcessNmbrOfSrceRecords = 0
        then 'X'
        else ''
      end as abap_boolean preserving type )                                                        as MDChangeProcessIsObsolete,
      @ObjectModel.readOnly: true
      @EndUserText.label: 'Attachments'
      _Attachments.NumberOfAttachments,
      @ObjectModel.readOnly: true
      @EndUserText.label: 'Notes'
      _NoteItem.NumberOfNotes,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MDC_PROCESS_CALC_EXIT'
      cast( '' as abap_boolean preserving type )                                                   as MDChgProcDspAttchIsAllowed,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MDC_PROCESS_CALC_EXIT'
      cast('' as mdc_process_id)                                                                   as MDChgProcVisualizationProcess,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MDC_PROCESS_CALC_EXIT'
      cast('' as mdc_business_system)                                                              as MDChgProcVisualizationSrceSyst,
      Root.MDChgProcRefcdFederationToken,
      Root.MDChgProcRefcdFederationStp,
      Root.MDChgProcFederationBusSystName,
      @Semantics.businessDate.at: true
      Root.MasterDataChangeProcessDueDate,
      @ObjectModel.text.element: [ 'MDChangeProcessReasonText' ]
      @ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
      Root.MasterDataChangeProcessReason,
      @ObjectModel.readOnly: true
      _ReasonText.MDChangeProcessReasonText                                                        as MDChangeProcessReasonText,
      @ObjectModel.readOnly: true
      @ObjectModel.text.element: [ 'MDChangeProcessReasonText' ]
      concat( Root.MDChgProcessSrceObjectTypeCode, Root.MasterDataChangeProcessReason )            as MDChgProcObjectTypeCodeReason,
      @ObjectModel.text.element: [ 'MDChangeProcessPriorityText' ]
      @ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
      Root.MDChangeProcessPriority,
      @ObjectModel.readOnly: true
      _PriorityText.MDChangeProcessPriorityText                                                    as MDChangeProcessPriorityText,
      @ObjectModel:{
        text.element: [ 'MDChgProcRejectionReasonText' ],
        foreignKey.association: '_TypeRejectionReason'
      }
      @ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
      @UI.hidden: true
      Root.MDChangeProcessRejectionReason,
      @ObjectModel.readOnly: true
      @EndUserText.label: 'Rejection Reason is required'
      @UI.hidden: true
      cast(
        case when _RejectionReason.MDChgProcNmbrOfRjcnRsn is null
          or MDChgProcessIsFinalized = 'X' or MDChgProcessIsErased = 'X'
        then ' '
        else 'X'
      end as abap_boolean preserving type )                                                        as MDChgProcRjcnReasonIsRequired,
      @ObjectModel.readOnly: true
      @UI.hidden: true
      _RejectionReasonText.MDChgProcRejectionReasonText,

      /* Associations */
      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _Source,
      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _Step,
      @Consumption.filter.hidden: true
      _MDQualityEvaluations,
      @ObjectModel.readOnly: true
      _StepDescription.MDChgProcessStepDescription                                                 as MDChgProcessTypeStepDspDesc,
      @ObjectModel.readOnly: true
      _StepDescription.MDChgProcessStepType                                                        as MDChgProcessTypeStepDesc,
      _ProcessUserVH,
      @Consumption.filter.hidden: true
      _ProcessVariant,
      _ProcessGoalVH,
      _ProcessStateVH,
      @Search.defaultSearchElement: false
      _ProcessState,
      _ProcessTypeVH,
      @Search.defaultSearchElement: false
      _ProcessGoalText,
      _GoalProperty,
      @Search.defaultSearchElement: false
      _ProcessTypeText,
      _ProcessStrategyVH,
      _RelatedProcess,
      @Consumption.filter.hidden: true
      _ProcessRequestorContactCard,
      @Consumption.filter.hidden: true
      @UI.hidden: true
      _TypeRejectionReason
}