P_MaintNotifForScreeningC

DDL: P_MAINTNOTIFFORSCREENINGC SQL: PMAINTNTFSCRNGQ Type: view COMPOSITE Package: ODATA_EAM_ORD_MON

Maintenance Notifications for Screening Cube

P_MaintNotifForScreeningC is a Composite CDS View that provides data about "Maintenance Notifications for Screening Cube" in SAP S/4HANA. It reads from 1 data source (I_MaintNotificationTechObj) and exposes 25 fields with key field MaintenanceNotification. It has 2 associations to related views. Part of development package ODATA_EAM_ORD_MON.

Data Sources (1)

SourceAliasJoin Type
I_MaintNotificationTechObj I_MaintNotificationTechObj from

Associations (2)

CardinalityTargetAliasCondition
[0..1] P_MaintStsNumberedUserStatus _ActiveUserStatusWthStsNmbr _ActiveUserStatusWthStsNmbr.StatusObject = $projection.MaintNotifInternalID
[0..1] I_PMWOCDefaults _PMWocDefaults _PMWocDefaults.NotificationCategory is not null

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName PMAINTNTFSCRNGQ view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.private true view
VDM.viewType #COMPOSITE view
ClientHandling.type #CLIENT_DEPENDENT view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view

Fields (25)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceNotification I_MaintNotificationTechObj MaintenanceNotification
NotificationType I_MaintNotificationTechObj NotificationType
NotificationTypeName
MaintPriority I_MaintNotificationTechObj MaintPriority
MaintPriorityType I_MaintNotificationTechObj MaintPriorityType
MaintPriorityTypeDesc
MaintPriorityDesc
MaintenanceActivityType
MaintenanceActivityTypeName
StatusCode _ActiveUserStatusWthStsNmbr StatusCode
StatusProfile _ActiveUserStatusWthStsNmbr StatusProfile
UserStatus
NotifProcessingPhase I_MaintNotificationTechObj NotifProcessingPhase
MaintNotifInternalID I_MaintNotificationTechObj MaintNotifInternalID
ReferenceDate I_MaintNotificationTechObj RequiredStartDate
MaintenancePlannerGroup
MaintenancePlanningPlant
MainWorkCenter
MaintenanceOrderType
MaintenanceRevision
MainWorkCenterPlant I_MaintNotificationTechObj MaintenanceWorkCenterPlant
MaintenanceWorkCenterPlant
MaintenanceWorkCenter
NmbrOfOpenMaintNotifications
_PMNotifMaintenanceData _PMNotifMaintenanceData
@AbapCatalog.sqlViewName: 'PMAINTNTFSCRNGQ'

@AccessControl.authorizationCheck: #NOT_REQUIRED
//@EndUserText.label: 'Maintenance Notifications for Screening'


@VDM.private: true
@VDM.viewType: #COMPOSITE

@ClientHandling: {
  type:      #CLIENT_DEPENDENT,
  algorithm: #SESSION_VARIABLE
}


@ObjectModel.usageType: {
  serviceQuality: #D,
  sizeCategory:   #L,
  dataClass:      #MIXED
}

define view P_MaintNotifForScreeningC
  as select from I_MaintNotificationTechObj
  //  association [0..1] to I_StatusObjectActiveStatus as _StatusObjectActiveStatus on  $projection.UserStatus           = _StatusObjectActiveStatus.StatusCode

  //                                                                                and $projection.MaintNotifInternalID = _StatusObjectActiveStatus.StatusObject

  association [0..1] to P_MaintStsNumberedUserStatus as _ActiveUserStatusWthStsNmbr on _ActiveUserStatusWthStsNmbr.StatusObject = $projection.MaintNotifInternalID

  association [0..1] to I_PMWOCDefaults             as _PMWocDefaults              on _PMWocDefaults.NotificationCategory is not null
{

  key I_MaintNotificationTechObj.MaintenanceNotification,

      @ObjectModel.text.element:  [ 'NotificationTypeName' ]
      I_MaintNotificationTechObj.NotificationType,
      I_MaintNotificationTechObj._PMNotificationType._Text[1: Language = $session.system_language ].NotificationTypeName,

      @ObjectModel.text.element:  [ 'MaintPriorityDesc' ]
      I_MaintNotificationTechObj.MaintPriority,
      @ObjectModel.text.element:  [ 'MaintPriorityTypeDesc' ]
      I_MaintNotificationTechObj.MaintPriorityType,
      I_MaintNotificationTechObj._PMNotificationPriority._PMNotificationPriorityType._Text[1: Language = $session.system_language ].MaintPriorityTypeDesc,
      I_MaintNotificationTechObj._PMNotificationPriority._Text[1: Language = $session.system_language ].MaintPriorityDesc,

      @ObjectModel.text.element:  [ 'MaintenanceActivityTypeName' ]
      I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenanceActivityType,
      I_MaintNotificationTechObj._PMNotifMaintenanceData._MaintenanceActivityType._Text[1: Language = $session.system_language ].MaintenanceActivityTypeName,


      // Select all active user status

      //cast( I_MaintNotificationTechObj._StatusObjectActiveStatus[1: IsUserStatus = 'X' ].StatusCode as j_estat ) as UserStatus,

      _ActiveUserStatusWthStsNmbr.StatusCode,
      _ActiveUserStatusWthStsNmbr.StatusProfile,
      cast(_ActiveUserStatusWthStsNmbr.StatusCode as j_estat )                                             as UserStatus,


      I_MaintNotificationTechObj.NotifProcessingPhase,

      I_MaintNotificationTechObj.MaintNotifInternalID,

      I_MaintNotificationTechObj.RequiredStartDate                                                         as ReferenceDate,

      I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenancePlannerGroup,

      I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenancePlanningPlant,

      I_MaintNotificationTechObj._MainWorkCenter.WorkCenter                                                as MainWorkCenter,

      I_MaintNotificationTechObj._MaintenanceOrder.MaintenanceOrderType,

      I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenanceRevision,

      I_MaintNotificationTechObj.MaintenanceWorkCenterPlant                                                as MainWorkCenterPlant,

      I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment.MaintenancePlant       as MaintenanceWorkCenterPlant,
      I_MaintNotificationTechObj._PMNotifMaintenanceData._LocationAccountAssignment._WorkCenter.WorkCenter as MaintenanceWorkCenter,


      @DefaultAggregation: #SUM
      cast( 1  as eam_open_notifications )                                                                 as NmbrOfOpenMaintNotifications,

      /* Associations */
      //_StatusObjectActiveStatus,

      //_ActiveUserStatusWthStsNmbr, - ATC: issue with association target

      _PMNotifMaintenanceData


}
where
  I_MaintNotificationTechObj._PMNotificationType.NotificationCategory = _PMWocDefaults.NotificationCategory // PM Notification