@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking : #('TRANSACTIONAL_DATA')
@EndUserText.label : 'Maintenance Work Request'
@VDM.viewType: #TRANSACTIONAL
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@ObjectModel.representativeKey : 'MaintenanceNotification'
@ObjectModel.semanticKey: [ 'MaintenanceNotification' ]
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor : 'R_MaintenanceNotificationTP'
define root view entity R_MaintenanceWorkRequestTP
as select from I_MaintNotificationTechObj
// association [0..1] to I_MaintNotifLongText as _MaintNotifLongText on $projection.MaintenanceNotification = _MaintNotifLongText.MaintenanceNotification
// association [0..1] to I_TechnicalObject as _TechnicalObject on _TechnicalObject.TechnicalObject = $projection.TechnicalObject
// and _TechnicalObject.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc
// association [0..1] to I_TechObjIsEquipOrFuncnlLoc as _TechObjIsEquipOrFuncnlLoc on _TechObjIsEquipOrFuncnlLoc.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc
// association [0..1] to I_PMNotificationPriority as _PMNotificationPriority on $projection.MaintPriority = _PMNotificationPriority.MaintPriority
// and $projection.MaintPriorityType = _PMNotificationPriority.MaintPriorityType
association [1..*] to I_StatusObjectStatus as _StatusObjectStatus on $projection.MaintNotifInternalID = _StatusObjectStatus.StatusObject
association [0..1] to I_MaintenanceJobOverallStatus as _OverallJobStatus on $projection.MaintNotifInternalID = _OverallJobStatus.MaintenanceJobInternalID
-- Extensions, do not expose as association :
association [0..1] to E_PMNotifMaintenanceData as _NotifMaintenanceDataExtension on $projection.MaintenanceNotification = _NotifMaintenanceDataExtension.MaintenanceNotification
{
//@ObjectModel.text.element: [ 'NotificationText' ]
key I_MaintNotificationTechObj.MaintenanceNotification,
@ObjectModel.foreignKey.association : '_PMNotificationType'
I_MaintNotificationTechObj.NotificationType,
I_MaintNotificationTechObj.MaintNotifInternalID,
I_MaintNotificationTechObj.MaintenanceOrder,
I_MaintNotificationTechObj._MaintenanceOrder.MaintenanceOrderDesc,
// @ObjectModel.foreignKey.association : '_PMNotificationPriority'
@ObjectModel.text.element: [ 'MaintPriorityDesc' ]
I_MaintNotificationTechObj.MaintPriority,
// @ObjectModel.foreignKey.association : '_PMNotificationPriority'
I_MaintNotificationTechObj.MaintPriorityType,
I_MaintNotificationTechObj._PMNotificationPriority.MaintPriorityColorCode,
I_MaintNotificationTechObj._PMNotificationPriority._Text[1: Language = $session.system_language ].MaintPriorityDesc,
// @ObjectModel.foreignKey.association : '_TechnicalObject'
I_MaintNotificationTechObj.TechnicalObject,
// @ObjectModel.foreignKey.association : '_TechnicalObject'
@ObjectModel.text.element: [ 'TechnicalObjectDescription' ]
cast ( case when I_MaintNotificationTechObj._TechnicalObject.TechObjIsEquipOrFuncnlLoc = 'EAMS_FL' then // Functional Location
I_MaintNotificationTechObj._TechnicalObject._FunctionalLocationLabel.FunctionalLocationLabelName
else I_MaintNotificationTechObj._TechnicalObject.TechnicalObject end as eams_tech_obj_alpha_conv )
as TechnicalObjectLabel,
I_MaintNotificationTechObj._TechObjIsEquipOrFuncnlLoc._Text[1: Language = $session.system_language ].TechObjIsEquipOrFuncnlLocDesc,
@ObjectModel.foreignKey.association : '_TechObjIsEquipOrFuncnlLoc'
I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc,
I_MaintNotificationTechObj.Equipment,
I_MaintNotificationTechObj._FunctionalLocation.FunctionalLocation,
I_MaintNotificationTechObj._TechnicalObject._TechnicalObjectText[1: Language = $session.system_language ].TechnicalObjectDescription,
I_MaintNotificationTechObj.PersonResponsible,
I_MaintNotificationTechObj.CreatedByUser,
I_MaintNotificationTechObj.CreationDateTime,
I_MaintNotificationTechObj.CreationDate,
@Semantics.text: true
I_MaintNotificationTechObj.NotificationText,
I_MaintNotificationTechObj.NotificationCreationDate,
@Semantics.time: true
I_MaintNotificationTechObj.NotificationCreationTime,
I_MaintNotificationTechObj.NotificationTimeZone,
@ObjectModel.foreignKey.association : '_MalfunctionEffect'
I_MaintNotificationTechObj.MalfunctionEffect,
I_MaintNotificationTechObj.MaintNotificationCatalog,
I_MaintNotificationTechObj.MaintNotificationCode,
I_MaintNotificationTechObj._PMNotifMaintenanceData.LocationDescription,
@ObjectModel.text.element: [ 'ReporterFullName' ]
I_MaintNotificationTechObj.ReportedByUser,
I_MaintNotificationTechObj.ReporterFullName,
I_MaintNotificationTechObj.MalfunctionStartDate,
I_MaintNotificationTechObj.MalfunctionStartTime,
I_MaintNotificationTechObj.MalfunctionEndDate,
I_MaintNotificationTechObj.MalfunctionEndTime,
I_MaintNotificationTechObj._TechnicalObject._LocationAccountAssignment.AssetLocation,
I_MaintNotificationTechObj._TechnicalObject._LocationAccountAssignment._Location.LocationName,
I_MaintNotificationTechObj._MaintNotifLongText.MaintNotificationLongText,
I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenanceObjectIsDown,
@ObjectModel.text.element: [ 'EAMOverallStatusDescription' ]
cast ( case when _StatusObjectStatus[ StatusCode = 'I3350' and StatusIsInactive = '' ].StatusObject is not null then 'F2023' else '' end as pm_source_appl) as MaintNotifSourceApplication,
_OverallJobStatus.EAMOverallObjectStatus,
_OverallJobStatus._OverallStatus._Text[Language = $session.system_language].EAMOverallStatusDescription,
_OverallJobStatus.EAMOverallObjectStatusProfile,
I_MaintNotificationTechObj.NotifProcessingPhase,
cast ('' as objky) as MaintWorkRequestAttchKey, // transient field for attachment ID (temp key )
I_MaintNotificationTechObj._TechnicalObject.MaintenancePlannerGroup,
I_MaintNotificationTechObj._TechnicalObject._LocationAccountAssignment.PlantSection,
I_MaintNotificationTechObj._TechnicalObject._LocationAccountAssignment.BusinessArea,
I_MaintNotificationTechObj._TechnicalObject.CatalogProfile,
I_MaintNotificationTechObj._TechnicalObject._LocationAccountAssignment.CompanyCode,
cast ( I_MaintNotificationTechObj._TechnicalObject._WorkCenter.WorkCenter as gewrk ) as MainWorkCenter,
I_MaintNotificationTechObj._TechnicalObject._LocationAccountAssignment.MaintenancePlant,
I_MaintNotificationTechObj._TechnicalObject.TechnicalObjectCategory,
I_MaintNotificationTechObj._TechnicalObject.TechnicalObjectType,
// _TechnicalObject,
_TechObjIsEquipOrFuncnlLoc,
_PMNotificationPriority,
_StatusObjectStatus,
_OverallJobStatus,
_PMNotificationType,
_MalfunctionEffect
// I_MaintNotificationTechObj._PMNotificationType,
// I_MaintNotificationTechObj._MalfunctionEffect,
//I_MaintNotificationTechObj._PMNotificationPriority,
} where CreatedByUser = $session.user
Depth:
1
2
3
4
5
All
Reload
R_MaintenanceWorkRequestTP view_entity