I_MaintNotificationActivity
Maintenance Notification Activity
I_MaintNotificationActivity is a Basic CDS View (Dimension) that provides data about "Maintenance Notification Activity" in SAP S/4HANA. It reads from 1 data source (qmma) and exposes 29 fields with key fields MaintNotificationActivity, MaintenanceNotification. It has 6 associations to related views. Part of development package IWOC.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| qmma | qmma | from |
Associations (6)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_MaintenanceNotification | _MaintenanceNotification | $projection.MaintenanceNotification = _MaintenanceNotification.MaintenanceNotification |
| [0..1] | I_MaintenanceNotificationItem | _MaintenanceNotificationItem | $projection.MaintenanceNotification = _MaintenanceNotificationItem.MaintenanceNotification and $projection.MaintenanceNotificationItem = _MaintenanceNotificationItem.MaintenanceNotificationItem |
| [0..1] | I_Indicator | _IsDeleted | $projection.IsDeleted = _IsDeleted.IndicatorValue |
| [0..1] | I_Inspectioncatalog | _MaintNotifActivityCodeCatalog | $projection.MaintNotifActivityCodeCatalog = _MaintNotifActivityCodeCatalog.InspectionCatalog |
| [0..1] | I_InspectionCodeGroup | _MaintNotifActivityCodeGroup | $projection.MaintNotifActivityCodeGroup = _MaintNotifActivityCodeGroup.InspectionCodeGroup and $projection.MaintNotifActivityCodeCatalog = _MaintNotifActivityCodeGroup.InspectionCatalog |
| [0..1] | I_InspectionCode | _MaintNotificationActivityCode | $projection.MaintNotificationActivityCode = _MaintNotificationActivityCode.InspectionCode and $projection.MaintNotifActivityCodeCatalog = _MaintNotificationActivityCode.InspectionCatalog and $projection.MaintNotifActivityCodeGroup = _MaintNotificationActivityCode.InspectionCodeGroup |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Maintenance Notification Activity | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| VDM.viewType | #BASIC | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view | |
| AbapCatalog.sqlViewName | IMAINTNOTIFACTV | view | |
| ObjectModel.representativeKey | MaintNotificationActivity | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #L | view |
Fields (29)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MaintNotificationActivity | qmma | manum | |
| KEY | MaintenanceNotification | qmma | qmnum | |
| MaintenanceNotificationItem | qmma | fenum | ||
| MaintNotifActyTxt | qmma | matxt | ||
| MaintNotifActivitySortNumber | qmma | qmanum | ||
| MaintNotifActivityCodeCatalog | ||||
| MaintNotificationActivityCode | ||||
| MaintNotifActivityCodeGroup | ||||
| IsDeleted | qmma | kzloesch | ||
| CreatedByUser | qmma | ernam | ||
| psterendasPlannedStartDate | ||||
| psturendasPlannedStartTime | ||||
| peterendasPlannedEndDate | ||||
| peturendasPlannedEndTime | ||||
| erdatendasCreationDate | ||||
| erzeitendasCreationTime | ||||
| aedatendasLastChangeDate | ||||
| aezeitendasLastChangeTime | ||||
| MaintNotifActyQtyFactor | qmma | mngfa | ||
| LastChangeDateTime | qmma | changeddatetime | ||
| LastChangedByUser | qmma | aenam | ||
| MaintNotifActivityEndDate | qmma | peter | ||
| NotificationHasLongText | qmma | indtx | ||
| _MaintenanceNotification | _MaintenanceNotification | |||
| _MaintenanceNotificationItem | _MaintenanceNotificationItem | |||
| _MaintNotifActivityCodeCatalog | _MaintNotifActivityCodeCatalog | |||
| _MaintNotifActivityCodeGroup | _MaintNotifActivityCodeGroup | |||
| _MaintNotificationActivityCode | _MaintNotificationActivityCode | |||
| _IsDeleted | _IsDeleted |
@EndUserText.label: 'Maintenance Notification Activity'
--@Analytics: { dataCategory: #DIMENSION }
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AbapCatalog.sqlViewName: 'IMAINTNOTIFACTV'
@ObjectModel.representativeKey: 'MaintNotificationActivity'
@ObjectModel.semanticKey: [ 'MaintNotificationActivity', 'MaintenanceNotification' ]
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #L
define view I_MaintNotificationActivity
as select from qmma
association [1..1] to I_MaintenanceNotification as _MaintenanceNotification on $projection.MaintenanceNotification = _MaintenanceNotification.MaintenanceNotification
association [0..1] to I_MaintenanceNotificationItem as _MaintenanceNotificationItem on $projection.MaintenanceNotification = _MaintenanceNotificationItem.MaintenanceNotification
and $projection.MaintenanceNotificationItem = _MaintenanceNotificationItem.MaintenanceNotificationItem
association [0..1] to I_Indicator as _IsDeleted on $projection.IsDeleted = _IsDeleted.IndicatorValue
// Activity Coding
association [0..1] to I_Inspectioncatalog as _MaintNotifActivityCodeCatalog on $projection.MaintNotifActivityCodeCatalog = _MaintNotifActivityCodeCatalog.InspectionCatalog
association [0..1] to I_InspectionCodeGroup as _MaintNotifActivityCodeGroup on $projection.MaintNotifActivityCodeGroup = _MaintNotifActivityCodeGroup.InspectionCodeGroup
and $projection.MaintNotifActivityCodeCatalog = _MaintNotifActivityCodeGroup.InspectionCatalog
association [0..1] to I_InspectionCode as _MaintNotificationActivityCode on $projection.MaintNotificationActivityCode = _MaintNotificationActivityCode.InspectionCode
and $projection.MaintNotifActivityCodeCatalog = _MaintNotificationActivityCode.InspectionCatalog
and $projection.MaintNotifActivityCodeGroup = _MaintNotificationActivityCode.InspectionCodeGroup
{
key qmma.manum as MaintNotificationActivity,
@ObjectModel.foreignKey.association: '_MaintenanceNotification'
key qmma.qmnum as MaintenanceNotification,
@ObjectModel.foreignKey.association: '_MaintenanceNotificationItem'
qmma.fenum as MaintenanceNotificationItem,
@Semantics.text: true
qmma.matxt as MaintNotifActyTxt,
qmma.qmanum as MaintNotifActivitySortNumber,
@ObjectModel.foreignKey.association: '_MaintNotifActivityCodeCatalog'
cast( qmma.mnkat as eam_activity_code_catalog ) as MaintNotifActivityCodeCatalog,
@ObjectModel.foreignKey.association: '_MaintNotificationActivityCode'
cast( qmma.mncod as eam_activity_code ) as MaintNotificationActivityCode,
@ObjectModel.foreignKey.association: '_MaintNotifActivityCodeGroup'
cast( qmma.mngrp as eam_activity_code_group ) as MaintNotifActivityCodeGroup,
@ObjectModel.foreignKey.association: '_IsDeleted'
qmma.kzloesch as IsDeleted,
qmma.ernam as CreatedByUser,
case qmma.pstur when '240000'
then dats_add_days(qmma.pster,1,'NULL')
else qmma.pster
end as PlannedStartDate, //Activity Start Date
@Semantics.time: true
case qmma.pstur when '240000'
then '000000'
else qmma.pstur
end as PlannedStartTime, //Start Time of Activity
case qmma.petur when '240000'
then dats_add_days(qmma.peter,1,'NULL')
else qmma.peter
end as PlannedEndDate, //Activity End Date
@Semantics.time: true
case qmma.petur when '240000'
then '000000'
else qmma.petur
end as PlannedEndTime, //End Time of Activity
case qmma.erzeit when '240000'
then dats_add_days(qmma.erdat,1,'NULL')
else qmma.erdat
end as CreationDate,
@Semantics.time: true
case qmma.erzeit when '240000'
then '000000'
else qmma.erzeit
end as CreationTime,
case qmma.aezeit when '240000'
then dats_add_days(qmma.aedat,1,'NULL')
else qmma.aedat
end as LastChangeDate,
@Semantics.time: true
case qmma.aezeit when '240000'
then '000000'
else qmma.aezeit
end as LastChangeTime,
// qmma.pster as PlannedStartDate,
// qmma.pstur as PlannedStartTime,
qmma.mngfa as MaintNotifActyQtyFactor,
// qmma.peter as PlannedEndDate,
// qmma.petur as PlannedEndTime,
@Semantics.systemDateTime.lastChangedAt: true
qmma.changeddatetime as LastChangeDateTime,
/* Fields for 2108 */
// qmma.erdat as CreationDate,
qmma.aenam as LastChangedByUser,
// qmma.aedat as LastChangeDate,
qmma.peter as MaintNotifActivityEndDate,
qmma.indtx as NotificationHasLongText,
// @Semantics.time: true
// qmma.erzeit as CreationTime,
// @Semantics.time: true
// qmma.aezeit as LastChangeTime,
//Associations
_MaintenanceNotification,
_MaintenanceNotificationItem,
_MaintNotifActivityCodeCatalog,
_MaintNotifActivityCodeGroup,
_MaintNotificationActivityCode,
_IsDeleted
} where
// Only show PM & CS relevant Activities
_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)
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA