I_MaintObjectPhaseControl
Maintenance Object Phase Control Code
I_MaintObjectPhaseControl is a Composite CDS View that provides data about "Maintenance Object Phase Control Code" in SAP S/4HANA. It reads from 2 data sources (I_MaintPhaseControlCode, I_StatusObjectStatus) and exposes 26 fields with key fields StatusObject, MaintenanceOrderType, EAMBlockerCodeEntityType, MaintenancePhaseControlName. It has 4 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_MaintPhaseControlCode | _MaintPhaseControlCode | inner |
| I_StatusObjectStatus | _StatusObjectStatus | from |
Associations (4)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_MaintObjPhseCtrlCodeChgHist | _MaintObjPhseCtrlCodeChgSet | _StatusObjectStatus.StatusObject = _MaintObjPhseCtrlCodeChgSet.StatusObject and _StatusObjectStatus.StatusCode = _MaintObjPhseCtrlCodeChgSet.StatusCode and _MaintObjPhseCtrlCodeChgSet.StatusIsInactive = '' |
| [0..1] | I_MaintObjPhseCtrlCodeChgHist | _MaintObjPhseCtrlCodeChgReset | _StatusObjectStatus.StatusObject = _MaintObjPhseCtrlCodeChgReset.StatusObject and _StatusObjectStatus.StatusCode = _MaintObjPhseCtrlCodeChgReset.StatusCode and _MaintObjPhseCtrlCodeChgReset.StatusIsInactive = 'X' |
| [0..1] | I_MaintPhseCtrlActivationCode | _MaintPhseCtrlActivationCode | _MaintPhseCtrlActivationCode.MaintProcgPhseCtrlActvtnCode = $projection.MaintProcgPhseCtrlActvtnCode |
| [0..1] | I_MaintObjPhaseControlState | _MaintObjPhaseControlState | _MaintObjPhaseControlState.MaintObjPhaseControlStateCode = $projection.MaintObjPhaseControlStateCode |
Annotations (10)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Maintenance Object Phase Control Code | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AbapCatalog.sqlViewName | IMOBJPHCTL | view | |
| AccessControl.authorizationCheck | #PRIVILEGED_ONLY | view | |
| VDM.viewType | #COMPOSITE | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view |
Fields (26)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | StatusObject | I_StatusObjectStatus | StatusObject | |
| KEY | MaintenanceOrderType | I_MaintPhaseControlCode | MaintenanceOrderType | |
| KEY | EAMBlockerCodeEntityType | I_MaintPhaseControlCode | EAMBlockerCodeEntityType | |
| KEY | MaintenancePhaseControlName | I_MaintPhaseControlCode | MaintenancePhaseControlName | |
| MaintUserStatusProfileCode | I_MaintPhaseControlCode | MaintUserStatusProfileCode | ||
| MaintenanceUserStatusCode | I_MaintPhaseControlCode | MaintenanceUserStatusCode | ||
| MaintenancePhaseControlText | I_MaintPhaseControlCode | MaintenancePhaseControlText | ||
| MaintPhseCtrlIsSetAutomly | I_MaintPhaseControlCode | MaintPhseCtrlIsSetAutomly | ||
| EAMOverallStatusProfile | I_MaintPhaseControlCode | EAMOverallStatusProfile | ||
| MaintPhaseControlAuthorityCode | I_MaintPhaseControlCode | MaintPhaseControlAuthorityCode | ||
| ConfigDeprecationCode | I_MaintPhaseControlCode | ConfigDeprecationCode | ||
| MaintProcgPhseCtrlActvtnCode | _MaintPhseCtrlActvtnProcValue | MaintProcgPhseCtrlActvtnCode | ||
| EAMProcessPhaseCode | _MaintPhseCtrlActvtnProcValue | EAMProcessPhaseCode | ||
| EAMProcessSubPhaseCode | _MaintPhseCtrlActvtnProcValue | EAMProcessSubPhaseCode | ||
| MaintObjPhaseCtrlCodeSetBy | ||||
| MaintObjPhaseCtrlCodeResetBy | ||||
| _StatusObject | I_StatusObjectStatus | _StatusObject | ||
| _StatusCode | I_MaintPhaseControlCode | _StatusCode | ||
| _StatusProfile | I_MaintPhaseControlCode | _StatusProfile | ||
| _ProcessingPhase | _MaintPhseCtrlActvtnProcValue | _ProcessingPhase | ||
| _ProcessingSubPhase | _MaintPhseCtrlActvtnProcValue | _ProcessingSubPhase | ||
| _MaintPhseCtrlActivationCode | _MaintPhseCtrlActivationCode | |||
| _MaintObjPhaseControlState | _MaintObjPhaseControlState | |||
| _ConfignDeprecationCode | I_MaintPhaseControlCode | _ConfignDeprecationCode | ||
| _LastSetByUser | _MaintObjPhseCtrlCodeChgSet | _LastChangedByUser | ||
| _LastResetByUser | _MaintObjPhseCtrlCodeChgReset | _LastChangedByUser |
@EndUserText.label: 'Maintenance Object Phase Control Code'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AbapCatalog.sqlViewName: 'IMOBJPHCTL'
@AccessControl: {
authorizationCheck: #PRIVILEGED_ONLY,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@VDM.viewType: #COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel: {
usageType.serviceQuality: #C,
usageType.sizeCategory: #XL,
usageType.dataClass: #MIXED
}
define view I_MaintObjectPhaseControl
as select from I_StatusObjectStatus as _StatusObjectStatus
inner join I_MaintPhaseControlCode as _MaintPhaseControlCode on _StatusObjectStatus.StatusCode = _MaintPhaseControlCode.MaintenanceUserStatusCode
left outer to one join I_MaintPhseCtrlActvtnProcValue as _MaintPhseCtrlActvtnProcValue on _MaintPhseCtrlActvtnProcValue.MaintenanceOrderType = _MaintPhaseControlCode.MaintenanceOrderType
and _MaintPhseCtrlActvtnProcValue.EAMBlockerCodeEntityType = _MaintPhaseControlCode.EAMBlockerCodeEntityType
and _MaintPhseCtrlActvtnProcValue.EAMBlockerCode = _MaintPhaseControlCode.MaintenancePhaseControlName
and _MaintPhseCtrlActvtnProcValue.MaintProcgPhseCtrlActvtnCode = '02' //Filter Blocks (Endphase) only
association [0..1] to I_MaintObjPhseCtrlCodeChgHist as _MaintObjPhseCtrlCodeChgSet on _StatusObjectStatus.StatusObject = _MaintObjPhseCtrlCodeChgSet.StatusObject
and _StatusObjectStatus.StatusCode = _MaintObjPhseCtrlCodeChgSet.StatusCode
and _MaintObjPhseCtrlCodeChgSet.StatusIsInactive = ''
association [0..1] to I_MaintObjPhseCtrlCodeChgHist as _MaintObjPhseCtrlCodeChgReset on _StatusObjectStatus.StatusObject = _MaintObjPhseCtrlCodeChgReset.StatusObject
and _StatusObjectStatus.StatusCode = _MaintObjPhseCtrlCodeChgReset.StatusCode
and _MaintObjPhseCtrlCodeChgReset.StatusIsInactive = 'X'
association [0..1] to I_MaintPhseCtrlActivationCode as _MaintPhseCtrlActivationCode on _MaintPhseCtrlActivationCode.MaintProcgPhseCtrlActvtnCode = $projection.MaintProcgPhseCtrlActvtnCode
association [0..1] to I_MaintObjPhaseControlState as _MaintObjPhaseControlState on _MaintObjPhaseControlState.MaintObjPhaseControlStateCode = $projection.MaintObjPhaseControlStateCode
{
key _StatusObjectStatus.StatusObject,
key _MaintPhaseControlCode.MaintenanceOrderType,
key _MaintPhaseControlCode.EAMBlockerCodeEntityType,
key _MaintPhaseControlCode.MaintenancePhaseControlName,
_MaintPhaseControlCode.MaintUserStatusProfileCode,
_MaintPhaseControlCode.MaintenanceUserStatusCode,
_MaintPhaseControlCode.MaintenancePhaseControlText,
_MaintPhaseControlCode.MaintPhseCtrlIsSetAutomly,
_MaintPhaseControlCode.EAMOverallStatusProfile,
_MaintPhaseControlCode.MaintPhaseControlAuthorityCode,
_MaintPhaseControlCode.ConfigDeprecationCode,
@ObjectModel.foreignKey.association: '_MaintPhseCtrlActivationCode'
_MaintPhseCtrlActvtnProcValue.MaintProcgPhseCtrlActvtnCode,
_MaintPhseCtrlActvtnProcValue.EAMProcessPhaseCode,
_MaintPhseCtrlActvtnProcValue.EAMProcessSubPhaseCode,
@ObjectModel.foreignKey.association: '_MaintObjPhaseControlState'
cast(
case
when _StatusObjectStatus.StatusIsActive = 'X' then
'X'
when _StatusObjectStatus.StatusIsInactive = 'X' then
'Y'
else
''
end as eam_bo_blkcd_status preserving type) as MaintObjPhaseControlStateCode,
cast( _MaintObjPhseCtrlCodeChgSet.LastChangedByUser as eam_bo_blkcd_set_userid preserving type ) as MaintObjPhaseCtrlCodeSetBy,
cast( dats_tims_to_tstmp( _MaintObjPhseCtrlCodeChgSet.LastChangeDate,
_MaintObjPhseCtrlCodeChgSet.LastChangeTime,
abap_system_timezone($session.client, 'NULL'),
$session.client, 'NULL') as eam_bo_blkcd_set_on preserving type ) as MaintObjPhseCtrlCodeSetDteTime,
cast( _MaintObjPhseCtrlCodeChgReset.LastChangedByUser as eam_bo_blkcd_resolved_userid preserving type ) as MaintObjPhaseCtrlCodeResetBy,
cast( dats_tims_to_tstmp( _MaintObjPhseCtrlCodeChgReset.LastChangeDate,
_MaintObjPhseCtrlCodeChgReset.LastChangeTime,
abap_system_timezone($session.client, 'NULL'),
$session.client, 'NULL') as eam_bo_blkcd_resolved_on preserving type ) as MaintObjPhseCtrlCodeRsetDteTme,
/* Propagated associations */
_StatusObjectStatus._StatusObject,
_MaintPhaseControlCode._StatusCode,
_MaintPhaseControlCode._StatusProfile,
_MaintPhseCtrlActvtnProcValue._ProcessingPhase,
_MaintPhseCtrlActvtnProcValue._ProcessingSubPhase,
_MaintPhseCtrlActivationCode,
_MaintObjPhaseControlState,
_MaintPhaseControlCode._ConfignDeprecationCode,
_MaintObjPhseCtrlCodeChgSet._LastChangedByUser as _LastSetByUser,
_MaintObjPhseCtrlCodeChgReset._LastChangedByUser as _LastResetByUser
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MAINTOBJPHSECTRLCODECHGHIST",
"I_MAINTPHASECONTROLCODE",
"I_MAINTPHSECTRLACTVTNPROCVALUE",
"I_STATUSOBJECTSTATUS"
],
"ASSOCIATED":
[
"I_CONFIGNDEPRECATIONCODE",
"I_EAMPROCESSPHASE",
"I_EAMPROCESSSUBPHASE",
"I_MAINTOBJPHASECONTROLSTATE",
"I_MAINTOBJPHSECTRLCODECHGHIST",
"I_MAINTPHSECTRLACTIVATIONCODE",
"I_STATUSCODE",
"I_STATUSOBJECT",
"I_STATUSPROFILE",
"I_USER"
],
"BASE":
[
"I_MAINTOBJPHSECTRLCODECHGHIST",
"I_MAINTPHASECONTROLCODE",
"I_MAINTPHSECTRLACTVTNPROCVALUE",
"I_STATUSOBJECTSTATUS"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA