I_MaintNotificationItemBasic

DDL: I_MAINTNOTIFICATIONITEMBASIC Type: view_entity BASIC Package: VDM_EAM_NTF

Maintenance Notification Basic

I_MaintNotificationItemBasic is a Basic CDS View that provides data about "Maintenance Notification Basic" in SAP S/4HANA. It reads from 2 data sources (qmel, qmfe) and exposes 22 fields with key fields MaintenanceNotification, MaintenanceNotificationItem. Part of development package VDM_EAM_NTF.

Data Sources (2)

SourceAliasJoin Type
qmel Notification inner
qmfe NotificationItem from

Annotations (6)

NameValueLevelField
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Maintenance Notification Basic view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #BASIC view

Fields (22)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceNotification qmfe qmnum
KEY MaintenanceNotificationItem qmfe fenum
MaintNotifItemText qmfe fetxt
MaintNotifItemTxtLanguage qmfe kzmla
MaintNotifDamageCodeCatalog
MaintNotifDamageCodeGroup
MaintNotificationDamageCode
MaintNotifDamageCodeVersNumber qmfe fever
MaintNotifObjPrtCodeCatalog
MaintNotifObjPrtCodeGroup
MaintNotifObjPrtCode
MaintNotifObjectCodeVersNmbr qmfe otver
Assembly qmfe bautl
IsDeleted qmfe kzloesch
NotificationItemExternalID qmfe posnr
CreatedByUser qmfe ernam
CreationDate qmfe erdat
CreationTime qmfe erzeit
LastChangedByUser qmfe aenam
LastChangeDate qmfe aedat
LastChangeTime qmfe aezeit
LastChangeDateTime qmfe changeddatetime
@AccessControl.authorizationCheck: #NOT_REQUIRED

@EndUserText.label: 'Maintenance Notification Basic'

@ObjectModel.semanticKey: [ 'MaintenanceNotification', 'MaintenanceNotificationItem' ]
@ObjectModel.usageType: { dataClass: #TRANSACTIONAL, serviceQuality: #A, sizeCategory: #L }

@VDM.viewType: #BASIC

define view entity I_MaintNotificationItemBasic
  as select from qmfe as NotificationItem

    inner join   qmel as Notification     on NotificationItem.qmnum = Notification.qmnum

{
  key NotificationItem.qmnum                                                       as MaintenanceNotification,
  key NotificationItem.fenum                                                       as MaintenanceNotificationItem,


      @Semantics.text: true
      NotificationItem.fetxt                                                       as MaintNotifItemText,

      NotificationItem.kzmla                                                       as MaintNotifItemTxtLanguage,

      // Damage

      cast(NotificationItem.fekat as eam_damage_code_catalog preserving type)      as MaintNotifDamageCodeCatalog,
      cast(NotificationItem.fegrp as eam_damage_code_group preserving type)        as MaintNotifDamageCodeGroup,
      cast(NotificationItem.fecod as eam_damage_code preserving type)              as MaintNotificationDamageCode,
      NotificationItem.fever                                                       as MaintNotifDamageCodeVersNumber,

      // Object Part

      cast(NotificationItem.otkat as eam_object_part_code_catalog preserving type) as MaintNotifObjPrtCodeCatalog,
      cast(NotificationItem.otgrp as eam_object_part_code_group preserving type)   as MaintNotifObjPrtCodeGroup,
      cast(NotificationItem.oteil as eam_object_part_code preserving type)         as MaintNotifObjPrtCode,
      NotificationItem.otver                                                       as MaintNotifObjectCodeVersNmbr,

      NotificationItem.bautl                                                       as Assembly,
      NotificationItem.kzloesch                                                    as IsDeleted,
      NotificationItem.posnr                                                       as NotificationItemExternalID,

      // Administrative Data

      NotificationItem.ernam                                                       as CreatedByUser,
      NotificationItem.erdat                                                       as CreationDate,
      NotificationItem.erzeit                                                      as CreationTime,
      NotificationItem.aenam                                                       as LastChangedByUser,
      NotificationItem.aedat                                                       as LastChangeDate,
      NotificationItem.aezeit                                                      as LastChangeTime,

      @Semantics.systemDateTime.lastChangedAt: true
      NotificationItem.changeddatetime                                             as LastChangeDateTime
}

where

  // ** Only PM relevant Notifications

      (   Notification.herkz = '01' // General Maintenance Notification

       or Notification.herkz = '02' // Malfunction Report

       or Notification.herkz = '03' // Activity Report

      )