C_ObjPgMaintOrderWthDesc
Maintenance Order with Description
C_ObjPgMaintOrderWthDesc is a Consumption CDS View that provides data about "Maintenance Order with Description" in SAP S/4HANA. It reads from 1 data source (I_MaintOrderTechObj) and exposes 24 fields with key field MaintenanceOrder. It has 3 associations to related views. Part of development package ODATA_EAM_ORD_MAN.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_MaintOrderTechObj | I_MaintOrderTechObj | from |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | C_MaintNotificationQuickVw | _MaintNotificationQuickView | $projection.MaintenanceNotification = _MaintNotificationQuickView.MaintenanceNotification |
| [0..1] | C_MaintenancePlanQuickVw | _MaintenancePlanQuickVw | _MaintenancePlanQuickVw.MaintenancePlan = $projection.MaintenancePlan |
| [0..1] | C_MaintTaskListQuickVw | _MaintTaskListQuickVw | _MaintTaskListQuickVw.TaskList = $projection.TaskList and _MaintTaskListQuickVw.TaskListType = $projection.TaskListType and _MaintTaskListQuickVw.TaskListGroup = $projection.TaskListGroup and _MaintTaskListQuickVw.TaskListGroupCounter = $projection.TaskListGroupCounter |
Annotations (9)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | COPMNTORDWTHDESC | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Maintenance Order with Description | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| VDM.viewType | #CONSUMPTION | view |
Fields (24)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MaintenanceOrder | I_MaintOrderTechObj | MaintenanceOrder | |
| MaintenanceNotification | I_MaintOrderTechObj | MaintenanceNotification | ||
| MaintenanceNotificationText | Notification Description | |||
| TaskListGroup | ||||
| TaskListType | ||||
| TaskListGroupCounter | ||||
| TaskListKeyDate | ||||
| TaskListDesc | ||||
| MaintenancePlan | I_MaintOrderTechObj | MaintenancePlan | ||
| MaintenancePlanDesc | ||||
| MaintenanceOrderLongText | Long Text | |||
| OrderHasLongText | I_MaintOrderTechObj | OrderHasLongText | ||
| MaintenancePlanningPlant | I_MaintOrderTechObj | MaintenancePlanningPlant | ||
| MaintenanceOrderType | I_MaintOrderTechObj | MaintenanceOrderType | ||
| MaintenancePlannerGroup | I_MaintOrderTechObj | MaintenancePlannerGroup | ||
| ControllingArea | I_MaintOrderTechObj | ControllingArea | ||
| ResponsibleCostCenter | I_MaintOrderTechObj | ResponsibleCostCenter | ||
| Equipment | I_MaintOrderTechObj | Equipment | ||
| MaintObjectLocAcctAssgmtNmbr | I_MaintOrderTechObj | MaintObjectLocAcctAssgmtNmbr | ||
| _Equipment | I_MaintOrderTechObj | _Equipment | ||
| _LocationAccountAssignment | I_MaintOrderTechObj | _LocationAccountAssignment | ||
| _MaintNotificationQuickView | _MaintNotificationQuickView | |||
| _MaintenancePlanQuickVw | _MaintenancePlanQuickVw | |||
| _MaintTaskListQuickVw | _MaintTaskListQuickVw |
@AbapCatalog.sqlViewName: 'COPMNTORDWTHDESC'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.privilegedAssociations: ['_MaintNotificationQuickView','_MaintenancePlanQuickVw', '_MaintTaskListQuickVw']
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Maintenance Order with Description' //same as DDL description
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@VDM.viewType: #CONSUMPTION
define view C_ObjPgMaintOrderWthDesc
as select from I_MaintOrderTechObj
association [0..1] to C_MaintNotificationQuickVw as _MaintNotificationQuickView on $projection.MaintenanceNotification = _MaintNotificationQuickView.MaintenanceNotification
association [0..1] to C_MaintenancePlanQuickVw as _MaintenancePlanQuickVw on _MaintenancePlanQuickVw.MaintenancePlan = $projection.MaintenancePlan
association [0..1] to C_MaintTaskListQuickVw as _MaintTaskListQuickVw on _MaintTaskListQuickVw.TaskList = $projection.TaskList
and _MaintTaskListQuickVw.TaskListType = $projection.TaskListType
and _MaintTaskListQuickVw.TaskListGroup = $projection.TaskListGroup
and _MaintTaskListQuickVw.TaskListGroupCounter = $projection.TaskListGroupCounter
{
key I_MaintOrderTechObj.MaintenanceOrder,
@Consumption.semanticObject: 'MaintenanceNotification'
@ObjectModel: { foreignKey.association: '_MaintNotificationQuickView', mandatory: true }
@ObjectModel.text.element: [ 'MaintenanceNotificationText' ]
@UI:{
fieldGroup: {
importance: #HIGH,
qualifier: 'General',
position: 10
}
}
I_MaintOrderTechObj.MaintenanceNotification,
@EndUserText.label: 'Notification Description'
I_MaintOrderTechObj._MaintenanceNotification.NotificationText as MaintenanceNotificationText,
I_MaintOrderTechObj._Order.BillOfOperations as TaskListGroup,
I_MaintOrderTechObj._Order.BillOfOperationsType as TaskListType,
I_MaintOrderTechObj._Order.BillOfOperationsVariant as TaskListGroupCounter,
@UI.hidden:true
$session.system_date as TaskListKeyDate,
@EndUserText.label: 'Task List'
@ObjectModel.text.element: [ 'TaskListDesc' ]
@UI:{
fieldGroup: {
importance: #HIGH,
qualifier: 'General',
position: 20
}
}
@Consumption.semanticObject: 'MaintenanceTaskList'
@ObjectModel: { foreignKey.association: '_MaintTaskListQuickVw', mandatory: true}
case I_MaintOrderTechObj._Order.BillOfOperationsType
when '' then ''
else case I_MaintOrderTechObj._Order.BillOfOperations
when '' then ''
else case I_MaintOrderTechObj._Order.BillOfOperationsVariant
when '' then ''
else concat( concat( concat( concat(
I_MaintOrderTechObj._Order.BillOfOperationsType,
'/' ),
ltrim( I_MaintOrderTechObj._Order.BillOfOperations, '0') ),
'/' ),
ltrim( I_MaintOrderTechObj._Order.BillOfOperationsVariant, '0')
)
end
end
end as TaskList,
I_MaintOrderTechObj._Order._BillOfOperationsChangeState.BillOfOperationsDesc as TaskListDesc,
@ObjectModel.text.element: [ 'MaintenancePlanDesc' ]
@Consumption.semanticObject: 'MaintenancePlan'
@ObjectModel: { foreignKey.association: '_MaintenancePlanQuickVw', mandatory: true }
@UI:{
fieldGroup: {
importance: #HIGH,
qualifier: 'General',
position: 30
}
}
I_MaintOrderTechObj.MaintenancePlan,
I_MaintOrderTechObj._MaintenancePlan.MaintenancePlanDesc,
@EndUserText.label: 'Long Text'
@Semantics.text: true
@UI:{
fieldGroup: {
importance: #HIGH,
qualifier: 'General',
position: 40
}
}
@ObjectModel.virtualElement
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EAM_ORDER_LTXT_EXIT'
cast (' ' as eams_ltext) as MaintenanceOrderLongText,
@UI.hidden: true
I_MaintOrderTechObj.OrderHasLongText,
/* Technical Fields - DCL */
@UI.hidden: true
I_MaintOrderTechObj.MaintenancePlanningPlant,
@UI.hidden: true
I_MaintOrderTechObj.MaintenanceOrderType,
@UI.hidden: true
I_MaintOrderTechObj.MaintenancePlannerGroup,
@UI.hidden: true
I_MaintOrderTechObj.ControllingArea,
@UI.hidden: true
I_MaintOrderTechObj.ResponsibleCostCenter,
@UI.hidden: true
I_MaintOrderTechObj.Equipment,
@UI.hidden: true
I_MaintOrderTechObj.MaintObjectLocAcctAssgmtNmbr,
/* Associations - DCL */
I_MaintOrderTechObj._Equipment,
I_MaintOrderTechObj._LocationAccountAssignment,
/* Association for Quick Views */
@Consumption.filter.hidden
_MaintNotificationQuickView,
@Consumption.filter.hidden: true
_MaintenancePlanQuickVw,
@Consumption.filter.hidden: true
_MaintTaskListQuickVw
}
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