I_MAINTENANCENOTIFICATIONTASK

CDS View

Maintenance Notification Task

I_MAINTENANCENOTIFICATIONTASK is a CDS View in S/4HANA. Maintenance Notification Task. It contains 36 fields. 7 CDS views read from this table.

CDS Views using this table (7)

ViewTypeJoinVDMDescription
C_MaintNotificationTaskCount view from CONSUMPTION Number of tasks for Maintenance Notif.
I_MaintNotifTaskTechObj view from COMPOSITE Maint. Notification Task /w Tech. Obj.
P_MaintNotifOutStdgReldTaskCnt view from COMPOSITE
P_MaintNotifSuccssflTaskCount view from COMPOSITE
P_MaintNotifTaskCount view from COMPOSITE
R_MaintNotificationItemTaskTP view_entity from TRANSACTIONAL Maintenance Notification Item Task
R_MaintNotificationTaskTP view_entity from TRANSACTIONAL Maintenance Notification Task

Fields (36)

KeyField CDS FieldsUsed in Views
KEY MaintenanceNotification MaintenanceNotification 5
KEY MaintenanceNotificationItem MaintenanceNotificationItem 2
KEY MaintenanceNotificationTask MaintenanceNotificationTask 1
_ContactPerson _ContactPerson 1
_Customer _Customer 1
_Employee _Employee 1
_IsDeleted _IsDeleted 1
_MaintenanceNotification _MaintenanceNotification 1
_MaintenanceNotificationItem _MaintenanceNotificationItem 1
_MaintNotificationTaskCode _MaintNotificationTaskCode 1
_MaintNotifTaskCodeCatalog _MaintNotifTaskCodeCatalog 1
_MaintNotifTaskCodeGroup _MaintNotifTaskCodeGroup 1
_OrganizationalUnitText _OrganizationalUnitText 1
_PartnerFunction _PartnerFunction 1
_PositionText _PositionText 1
_StatusObject _StatusObject 1
_StatusObjectStatus _StatusObjectStatus 1
_Supplier _Supplier 1
_User _User 1
CompletedByUser CompletedByUser 1
CompletionDate CompletionDate 1
CompletionTime CompletionTime 1
IsDeleted IsDeleted 1
LastChangeDateTime LastChangeDateTime 1
MaintenanceNotificationCause MaintenanceNotificationCause 1
MaintNotifTaskCode MaintNotifTaskCode 1
MaintNotifTaskCodeCatalog MaintNotifTaskCodeCatalog 1
MaintNotifTaskCodeGroup MaintNotifTaskCodeGroup 1
MaintNotifTaskInternalID MaintNotifTaskInternalID 1
MaintNotifTaskTxt MaintNotifTaskTxt 1
PlannedEndDate PlannedEndDate 1
PlannedEndTime PlannedEndTime 1
PlannedStartDate PlannedStartDate 1
PlannedStartTime PlannedStartTime 1
ResponsiblePerson ResponsiblePerson 1
ResponsiblePersonFunctionCode ResponsiblePersonFunctionCode 1
@AbapCatalog.sqlViewName: 'IMAINTNOTIFTASK'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
--@Analytics: { dataCategory: #DIMENSION }
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Maintenance Notification Task'
@ObjectModel.representativeKey: 'MaintenanceNotificationTask'
@ObjectModel.semanticKey:  [ 'MaintenanceNotificationTask', 'MaintenanceNotification' ]
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@VDM.viewType: #BASIC


define view I_MaintenanceNotificationTask
  as select from qmsm
  association [1..1] to I_MaintenanceNotification     as _MaintenanceNotification     on  $projection.MaintenanceNotification = _MaintenanceNotification.MaintenanceNotification
  association [0..1] to I_MaintenanceNotificationItem as _MaintenanceNotificationItem on  _MaintenanceNotificationItem.MaintenanceNotification     = $projection.MaintenanceNotification
                                                                                      and _MaintenanceNotificationItem.MaintenanceNotificationItem = $projection.MaintenanceNotificationItem
  association [0..1] to I_StatusObject                as _StatusObject                on  $projection.MaintNotifTaskInternalID = _StatusObject.StatusObject
  association [0..1] to I_Indicator                   as _IsDeleted                   on  $projection.IsDeleted = _IsDeleted.IndicatorValue
  association [0..*] to I_StatusObjectStatus          as _StatusObjectStatus          on  $projection.MaintNotifTaskInternalID = _StatusObjectStatus.StatusObject
  // Task Coding

  association [0..1] to I_InspectionCode              as _MaintNotificationTaskCode   on  $projection.MaintNotifTaskCode        = _MaintNotificationTaskCode.InspectionCode
                                                                                      and $projection.MaintNotifTaskCodeCatalog = _MaintNotificationTaskCode.InspectionCatalog
                                                                                      and $projection.MaintNotifTaskCodeGroup   = _MaintNotificationTaskCode.InspectionCodeGroup
  association [0..1] to I_Inspectioncatalog           as _MaintNotifTaskCodeCatalog   on  $projection.MaintNotifTaskCodeCatalog = _MaintNotifTaskCodeCatalog.InspectionCatalog
  association [0..1] to I_InspectionCodeGroup         as _MaintNotifTaskCodeGroup     on  $projection.MaintNotifTaskCodeGroup   = _MaintNotifTaskCodeGroup.InspectionCodeGroup
                                                                                      and $projection.MaintNotifTaskCodeCatalog = _MaintNotifTaskCodeGroup.InspectionCatalog
  association [0..1] to I_PartnerFunction             as _PartnerFunction             on  $projection.ResponsiblePersonFunctionCode = _PartnerFunction.PartnerFunction

  /* Associations - DPP */
  association [0..1] to I_ContactPerson               as _ContactPerson               on  _ContactPerson.ContactPerson = $projection.ResponsiblePerson
  association [0..1] to I_Customer                    as _Customer                    on  _Customer.Customer = $projection.ResponsiblePerson
  association [0..1] to I_WorkforcePerson             as _Employee                    on  _Employee.PersonExternalID = $projection.ResponsiblePerson
  association [0..1] to I_OrganizationalUnitText      as _OrganizationalUnitText      on  _OrganizationalUnitText.OrganizationalUnit = $projection.ResponsiblePerson
                                                                                      and _OrganizationalUnitText.Language           = $session.system_language
                                                                                      and _OrganizationalUnitText.StartDate          <= $session.system_date
                                                                                      and _OrganizationalUnitText.EndDate            >= $session.system_date
  association [0..1] to I_PMPositionText              as _PositionText                on  _PositionText.PositionID = $projection.ResponsiblePerson
                                                                                      and _PositionText.Language   = $session.system_language
                                                                                      and _PositionText.StartDate  <= $session.system_date
                                                                                      and _PositionText.EndDate    >= $session.system_date
  association [0..1] to I_Supplier                    as _Supplier                    on  _Supplier.Supplier = $projection.ResponsiblePerson
  association [0..1] to I_User                        as _User                        on  _User.UserID = $projection.ResponsiblePerson

{
  key qmsm.manum           as MaintenanceNotificationTask,
      @ObjectModel.foreignKey.association: '_MaintenanceNotification'
  key qmsm.qmnum           as MaintenanceNotification,
      @ObjectModel.foreignKey.association: '_MaintenanceNotificationItem'
      qmsm.fenum           as MaintenanceNotificationItem,

      qmsm.urnum           as MaintenanceNotificationCause,
      @Semantics.text: true
      qmsm.matxt           as MaintNotifTaskTxt,
      @ObjectModel.foreignKey.association: '_MaintNotifTaskCodeCatalog'
      qmsm.mnkat           as MaintNotifTaskCodeCatalog,
      @ObjectModel.foreignKey.association: '_MaintNotifTaskCodeGroup'
      qmsm.mngrp           as MaintNotifTaskCodeGroup,
      @ObjectModel.foreignKey.association: '_MaintNotificationTaskCode'
      qmsm.mncod           as MaintNotifTaskCode,
      case qmsm.pstur when '240000'
      then dats_add_days(qmsm.pster,1,'NULL')
      else  qmsm.pster
      end   as PlannedStartDate, //Activity Start Date

      @Semantics.time: true
      case qmsm.pstur when '240000'
      then '000000'
      else qmsm.pstur
      end  as PlannedStartTime, //Start Time of Activity

      case  qmsm.petur when '240000'
      then dats_add_days(qmsm.peter,1,'NULL')
      else  qmsm.peter
      end   as PlannedEndDate, //Activity End Date

      @Semantics.time: true
      case  qmsm.petur when '240000'
      then '000000'
      else  qmsm.petur
      end as PlannedEndTime, //End Time of Activity                                          

      
     case qmsm.erzeit when '240000'
     then dats_add_days(qmsm.erdat,1,'NULL')
     else qmsm.erdat 
     end as CreationDate,
     @Semantics.time: true
     case qmsm.erzeit when '240000'
     then '000000' 
     else qmsm.erzeit 
     end as CreationTime,

     case qmsm.aezeit when '240000'
     then dats_add_days(qmsm.aedat,1,'NULL')
     else qmsm.aedat 
     end as LastChangeDate,
     @Semantics.time: true
     case qmsm.aezeit when '240000'
     then '000000' 
     else qmsm.aezeit
     end as LastChangeTime,
     
     case qmsm.erlzeit when '240000'
     then dats_add_days(qmsm.erldat,1,'NULL')
     else qmsm.erldat 
     end as CompletionDate,
     @Semantics.time: true
     case qmsm.erlzeit when '240000'
     then '000000' 
     else qmsm.erlzeit 
     end as CompletionTime,
//      qmsm.pster           as PlannedStartDate,

//      @Semantics.time: true

//      qmsm.pstur           as PlannedStartTime,

//      qmsm.peter           as PlannedEndDate,

//      @Semantics.time: true

//      qmsm.petur           as PlannedEndTime,

      qmsm.erlnam          as CompletedByUser,
//      qmsm.erldat          as CompletionDate,

//      @Semantics.time: true

//      qmsm.erlzeit         as CompletionTime,

      @ObjectModel.foreignKey.association: '_PartnerFunction'
      qmsm.parvw           as ResponsiblePersonFunctionCode,
      qmsm.parnr           as ResponsiblePerson,
      qmsm.objnr           as MaintNotifTaskInternalID,
      @ObjectModel.foreignKey.association: '_IsDeleted'
      qmsm.kzloesch        as IsDeleted,
      @Semantics.systemDateTime.lastChangedAt: true
      qmsm.changeddatetime as LastChangeDateTime,


      /*Fields for 2108*/
      qmsm.ernam           as CreatedByUser,
//      qmsm.erdat           as CreationDate,

      qmsm.aenam           as LastChangedByUser,
//      qmsm.aedat           as LastChangeDate,

//      @Semantics.time: true

//      qmsm.erzeit          as CreationTime,

//      @Semantics.time: true

//      qmsm.aezeit          as LastChangeTime,

      qmsm.folgeact        as MaintNotifTaskFollowUpAction,
      qmsm.folactprot      as MaintNotifTaskHasFollowUpActn,
      qmsm.kzloesch        as MaintNotificationTaskIsDeleted,
      @Semantics.time: true
      qmsm.wdvzeit         as MaintNotifTaskResubmissionTime,
      qmsm.qsmnum          as MaintNotifTaskSortNumber,

      /* Associations */
      _MaintenanceNotification,
      _MaintenanceNotificationItem,
      _MaintNotificationTaskCode,
      _MaintNotifTaskCodeCatalog,
      _MaintNotifTaskCodeGroup,
      _StatusObject,
      _IsDeleted,
      _PartnerFunction,
      _StatusObjectStatus,


      /* Associations - DPP */
      _ContactPerson,
      _Customer,
      _Employee,
      _OrganizationalUnitText,
      _PositionText,
      _Supplier,
      _User
} where
// Only show PM & CS relevant Tasks

_MaintenanceNotification.NotificationOrigin = '01' or   // General Maintenance Notification

_MaintenanceNotification.NotificationOrigin = '02' or   // Malfunction Report

_MaintenanceNotification.NotificationOrigin = '03' or   // Activity Report

_MaintenanceNotification.NotificationOrigin = '04' or   // Problem notification

_MaintenanceNotification.NotificationOrigin = '05' or   // Activity report (service)

_MaintenanceNotification.NotificationOrigin = '06'      // General notification (service)