I_MaintenanceNotificationCause

DDL: I_MAINTENANCENOTIFICATIONCAUSE SQL: IMAINTNOTIFCAUSE Type: view BASIC

Maintenance Notification Cause

I_MaintenanceNotificationCause is a Basic CDS View (Dimension) that provides data about "Maintenance Notification Cause" in SAP S/4HANA. It reads from 1 data source (qmur) and exposes 22 fields with key fields MaintenanceNotificationCause, MaintenanceNotification, MaintenanceNotificationItem. It has 7 associations to related views.

Data Sources (1)

SourceAliasJoin Type
qmur qmur from

Associations (7)

CardinalityTargetAliasCondition
[1..1] I_MaintenanceNotification _MaintenanceNotification $projection.MaintenanceNotification = _MaintenanceNotification.MaintenanceNotification
[1..1] I_MaintenanceNotificationItem _MaintenanceNotificationItem _MaintenanceNotificationItem.MaintenanceNotification = $projection.MaintenanceNotification and _MaintenanceNotificationItem.MaintenanceNotificationItem = $projection.MaintenanceNotificationItem
[0..1] I_Indicator _IsDeleted $projection.IsDeleted = _IsDeleted.IndicatorValue
[0..1] I_InspectionCode _MaintNotificationCauseCode $projection.MaintNotificationCauseCode = _MaintNotificationCauseCode.InspectionCode and $projection.MaintNotifCauseCodeCatalog = _MaintNotificationCauseCode.InspectionCatalog and $projection.MaintNotifCauseCodeGroup = _MaintNotificationCauseCode.InspectionCodeGroup
[0..1] I_Inspectioncatalog _MaintNotifCauseCodeCatalog $projection.MaintNotifCauseCodeCatalog = _MaintNotifCauseCodeCatalog.InspectionCatalog
[0..1] I_InspectionCodeGroup _MaintNotifCauseCodeGroup $projection.MaintNotifCauseCodeGroup = _MaintNotifCauseCodeGroup.InspectionCodeGroup and $projection.MaintNotifCauseCodeCatalog = _MaintNotifCauseCodeGroup.InspectionCatalog
[0..1] I_EAMRootCause _MaintNotificationRootCause $projection.MaintNotificationRootCause = _MaintNotificationRootCause.MaintNotificationRootCause

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName IMAINTNOTIFCAUSE view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
Analytics.dataCategory #DIMENSION view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Maintenance Notification Cause view
ObjectModel.representativeKey MaintenanceNotificationCause 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 MaintenanceNotificationCause qmur urnum
KEY MaintenanceNotification qmur qmnum
KEY MaintenanceNotificationItem qmur fenum
MaintNotifCauseText qmur urtxt
MaintNotifCauseSortNumber qmur qurnum
MaintNotificationCauseCode
MaintNotifCauseCodeGroup
MaintNotifCauseCodeCatalog
IsDeleted qmur kzloesch
MaintNotificationRootCause qmur rootcause
CreationDate qmur erdat
TimeOfCreation qmur erzeit
LastChangeDateTime qmur changeddatetime
LastChangeDate qmur aedat
LastChangeTime qmur aezeit
_MaintenanceNotification _MaintenanceNotification
_MaintNotifCauseCodeCatalog _MaintNotifCauseCodeCatalog
_MaintNotificationCauseCode _MaintNotificationCauseCode
_MaintNotifCauseCodeGroup _MaintNotifCauseCodeGroup
_MaintenanceNotificationItem _MaintenanceNotificationItem
_IsDeleted _IsDeleted
_MaintNotificationRootCause _MaintNotificationRootCause
@AbapCatalog.sqlViewName: 'IMAINTNOTIFCAUSE'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
--@Analytics: { dataCategory: #DIMENSION }
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Maintenance Notification Cause'
@ObjectModel.representativeKey: 'MaintenanceNotificationCause'
@ObjectModel.semanticKey: ['MaintenanceNotification','MaintenanceNotificationItem','MaintenanceNotificationCause']
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #L
@VDM.viewType: #BASIC


define view I_MaintenanceNotificationCause
  as select from qmur
  association [1..1] to I_MaintenanceNotification     as _MaintenanceNotification     on  $projection.MaintenanceNotification = _MaintenanceNotification.MaintenanceNotification
  association [1..1] to I_MaintenanceNotificationItem as _MaintenanceNotificationItem on  _MaintenanceNotificationItem.MaintenanceNotification     = $projection.MaintenanceNotification
                                                                                      and _MaintenanceNotificationItem.MaintenanceNotificationItem = $projection.MaintenanceNotificationItem
  association [0..1] to I_Indicator                   as _IsDeleted                   on  $projection.IsDeleted = _IsDeleted.IndicatorValue
  // Cause Coding

  association [0..1] to I_InspectionCode              as _MaintNotificationCauseCode  on  $projection.MaintNotificationCauseCode = _MaintNotificationCauseCode.InspectionCode
                                                                                      and $projection.MaintNotifCauseCodeCatalog = _MaintNotificationCauseCode.InspectionCatalog
                                                                                      and $projection.MaintNotifCauseCodeGroup   = _MaintNotificationCauseCode.InspectionCodeGroup
  association [0..1] to I_Inspectioncatalog           as _MaintNotifCauseCodeCatalog  on  $projection.MaintNotifCauseCodeCatalog = _MaintNotifCauseCodeCatalog.InspectionCatalog
  association [0..1] to I_InspectionCodeGroup         as _MaintNotifCauseCodeGroup    on  $projection.MaintNotifCauseCodeGroup   = _MaintNotifCauseCodeGroup.InspectionCodeGroup
                                                                                      and $projection.MaintNotifCauseCodeCatalog = _MaintNotifCauseCodeGroup.InspectionCatalog
  association [0..1] to I_EAMRootCause                as _MaintNotificationRootCause  on  $projection.MaintNotificationRootCause = _MaintNotificationRootCause.MaintNotificationRootCause                                                                                   
{

  key qmur.urnum                                   as MaintenanceNotificationCause,

      @ObjectModel.foreignKey.association: '_MaintenanceNotification'
  key qmur.qmnum                                   as MaintenanceNotification,
      @ObjectModel.foreignKey.association: '_MaintenanceNotificationItem'
  key qmur.fenum                                   as MaintenanceNotificationItem,

      @Semantics.text: true
      qmur.urtxt                                   as MaintNotifCauseText,

      qmur.qurnum                                  as MaintNotifCauseSortNumber,

      @ObjectModel.foreignKey.association: '_MaintNotificationCauseCode'
      cast( qmur.urcod as eam_cause_code )         as MaintNotificationCauseCode,
      @ObjectModel.foreignKey.association: '_MaintNotifCauseCodeGroup'
      cast( qmur.urgrp as eam_cause_code_group )   as MaintNotifCauseCodeGroup,
      @ObjectModel.foreignKey.association: '_MaintNotifCauseCodeCatalog'
      cast( qmur.urkat as eam_cause_code_catalog ) as MaintNotifCauseCodeCatalog,
      @ObjectModel.foreignKey.association: '_IsDeleted'
      qmur.kzloesch                                as IsDeleted,
      @ObjectModel.foreignKey.association: '_MaintNotificationRootCause'
      qmur.rootcause                               as MaintNotificationRootCause,

      qmur.erdat                                   as CreationDate,

      qmur.erzeit                                  as TimeOfCreation,
      
      @Semantics.systemDateTime.lastChangedAt: true
      qmur.changeddatetime                         as LastChangeDateTime,
      qmur.aedat                                   as LastChangeDate,
      qmur.aezeit                                  as LastChangeTime,
      
      // Associations

      _MaintenanceNotification,
      _MaintNotifCauseCodeCatalog,
      _MaintNotificationCauseCode,
      _MaintNotifCauseCodeGroup,
      _MaintenanceNotificationItem,
      _IsDeleted,
      _MaintNotificationRootCause
} where
// Only show PM & CS relevant Causes

_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)

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MAINTENANCENOTIFICATION",
"QMUR"
],
"ASSOCIATED":
[
"I_EAMROOTCAUSE",
"I_INDICATOR",
"I_INSPECTIONCATALOG",
"I_INSPECTIONCODE",
"I_INSPECTIONCODEGROUP",
"I_MAINTENANCENOTIFICATION",
"I_MAINTENANCENOTIFICATIONITEM"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/