C_MaintNotificationQuickVw

DDL: C_MAINTNOTIFICATIONQUICKVW SQL: CNOTIFQV Type: view CONSUMPTION Package: ODATA_EAM_NTF_MAN

Quick View for Maintenance Notification

C_MaintNotificationQuickVw is a Consumption CDS View that provides data about "Quick View for Maintenance Notification" in SAP S/4HANA. It reads from 1 data source (I_MaintNotificationTechObj) and exposes 1 field with key field MaintenanceNotification. It is exposed through 3 OData services (UI_MAINTENANCEITEM, UI_MAINTENANCEJOB_MANAGE, UI_MAINTENANCENOTIFICATION). It is used in 2 Fiori applications: Perform Maintenance Jobs, Manage Maintenance Items. Part of development package ODATA_EAM_NTF_MAN.

Data Sources (1)

SourceAliasJoin Type
I_MaintNotificationTechObj I_MaintNotificationTechObj from

Annotations (12)

NameValueLevelField
VDM.viewType #CONSUMPTION view
AbapCatalog.sqlViewName CNOTIFQV view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
EndUserText.label Quick View for Maintenance Notification view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.representativeKey MaintenanceNotification view
UI.headerInfo.typeName Maintenance Notification view
UI.headerInfo.typeNamePlural Maintenance Notifications view
UI.headerInfo.typeImageUrl sap-icon: imageUrl: view

OData Services (3)

ServiceBindingVersionContractRelease
UI_MAINTENANCEITEM UI_MAINTENANCEITEM V2 C1 NOT_RELEASED
UI_MAINTENANCEJOB_MANAGE UI_MAINTENANCEJOB_MANAGE V2 C1 NOT_RELEASED
UI_MAINTENANCENOTIFICATION UI_MAINTENANCENOTIFICATION V4 C1 NOT_RELEASED

Fiori Apps (2)

App IDApp NameTypeDescription
F5104A Perform Maintenance Jobs Transactional Perform Maintenance Jobs app will help Maintenance Technician to see the list with all work items assigned to the him/her or to his/her team, several features like Assignment of an operation, Time recording for the Operations, create partial or final confirmations and the ability to display and change the malfunction information are possible with the app. The maintenance technician can post and return the planned components and can also record the measurement document.
F5356 Manage Maintenance Items Transactional An application to Manage Maintenance Items, provides and comprehensive Maintenance Item view, create new Maintenance Item, edit existing Maintenance Item.

Perform Maintenance Jobs

Business Role: Maintenance Technician

Technician records actual work, remaining work, confirmation text, and final confirmation for self as well as for team members working on the job.

Manage Maintenance Items

Business Role: Maintenance Planner

With the Manage Maintenance Items app, you as a maintenance planner can manage maintenance items. You can create maintenance items, decide how to evaluate final due date for a maintenance item, assign maintenance item to a maintenance plan, view details of a maintenance item, view status of an equipment or a functional location within a maintenance item, and so on.

Fields (1)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceNotification MaintenanceNotification Maintenance Notification
@VDM.viewType: #CONSUMPTION
@AbapCatalog.sqlViewName: 'CNOTIFQV'
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@AccessControl.personalData.blocking: #('TRANSACTIONAL_DATA')
@EndUserText.label: 'Quick View for Maintenance Notification'
@ClientHandling.algorithm: #SESSION_VARIABLE

@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.representativeKey: 'MaintenanceNotification'

@UI.headerInfo : { typeName: 'Maintenance Notification',
                   typeNamePlural: 'Maintenance Notifications',
                   typeImageUrl: 'sap-icon://request',

                   imageUrl: 'MaintNotificationThumbnailURL'}

define view C_MaintNotificationQuickVw
  as select from I_MaintNotificationTechObj

{

      @UI.facet: [{ purpose: #QUICK_VIEW, type: #FIELDGROUP_REFERENCE, targetQualifier: 'MaintNotificationQuickVw' }]

      // Maintenance Notification ID (Key)

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 10 }]}
      @UI.hidden: true
      @EndUserText.label: 'Maintenance Notification'
  key MaintenanceNotification,

      // Maintenance Notification Image

      @Semantics.imageUrl: true
      @EndUserText.label: 'Image'
      @Consumption.filter.hidden: true
      //      'sap-icon://request'                                               as MaintNotificationThumbnailURL,

      cast( 'sap-icon://request' as string128 )                          as MaintNotificationThumbnailURL,

      // Maintenance Notification Internal ID ( Status Object Mapping)

      @UI.hidden: true
      MaintNotifInternalID,

      // Maintenance Notification Description

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 20}] }
      @EndUserText.label: 'Description'
      @UI.hidden: true
      NotificationText,

      // Maintenance Notification Long Text

      @Semantics.text: true
      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EAM_NTF_LTXT_EXIT'
      @UI.fieldGroup: [{ qualifier: 'MaintNotificationQuickVw', position: 30 }]
      @UI.multiLineText: true
      @EndUserText.label: 'Long Text'
      cast( '' as eams_ltext )                                           as MaintNotificationLongText,

      // Maintenance Notification Type

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 40 }]}
      @ObjectModel.text.element:  [ 'NotificationTypeName' ]
      @EndUserText.label: 'Notification Type'
      @UI.textArrangement: #TEXT_FIRST
      NotificationType,

      @EndUserText.label: 'Notification Type Name'
      _PMNotificationType._Text[1:Language=$session.system_language].NotificationTypeName,


      // Maintenance Notification Priority

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 50}] }
      @ObjectModel.text.element: 'MaintPriorityDesc'
      @EndUserText.label: 'Priority'
      @UI.textArrangement: #TEXT_FIRST
      MaintPriority,
      @EndUserText.label: 'Priority Text'
      _PMNotificationPriority._Text[1:Language=$session.system_language].MaintPriorityDesc,

      // Maintenance Notification IsBreakdown?

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position:  70 }] }
      @EndUserText.label: 'Breakdown'
      MaintenanceObjectIsDown,

      // Maintenance Notification Creation Date

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 80}] }
      @EndUserText.label: 'Notification Date'
      NotificationCreationDate,

      // Maintenance Notification Person Responsible

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 90}] }
      @EndUserText.label: 'Person Responsible'
      @ObjectModel.text.element:  [ 'PersonResponsibleName' ]
      @UI.textArrangement: #TEXT_FIRST
      PersonResponsible,

      // Maintenance Notification Person Responsible Name

      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EAM_OBJPG_MNTNTF_PART_EXIT'
      @EndUserText.label: 'Person Responsible Name'
      cast('' as eams_person_responsible_name)                           as PersonResponsibleName,

      // Maintenance Notification Parnter Function (Person Responsible)

      @UI.hidden: true
      cast(_PMNotificationType.MaintNotifRespPartnerFunction  as  char2) as MaintNotifRespPartnerFunction,

      // Maintanence Notification System Status

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 100}] }
      @EndUserText.label: 'System Status'
      @ObjectModel: { virtualElement: true, virtualElementCalculatedBy: 'ABAP:CL_EAM_MNTNTF_STS_EXIT' }
      cast ('' as vdm_j_system_status_concat_t)                          as ConcatenatedActiveSystStsName,

      // Maintanence Notification User Status

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 110}] }
      @EndUserText.label: 'User Status'
      @ObjectModel: { virtualElement: true, virtualElementCalculatedBy: 'ABAP:CL_EAM_MNTNTF_STS_EXIT' }
      cast ('' as vdm_j_user_status_concat_t)                            as ConcatenatedActiveUserStsName,

      //    // IME: 2002 LACD

      @UI: { fieldGroup:     [{ qualifier:'MaintNotificationQuickVw', position: 60}] }
      LatestAcceptableCompletionDate
      //    // IME: 2002 LACD



}