C_ObjPgMaintNotifActivity

DDL: C_OBJPGMAINTNOTIFACTIVITY Type: view_entity CONSUMPTION Package: ODATA_EAM_NTF_MAN

Maintenance Notification Activity

C_ObjPgMaintNotifActivity is a Consumption CDS View that provides data about "Maintenance Notification Activity" in SAP S/4HANA. It reads from 1 data source (I_MaintNotifActivityTP) and exposes 19 fields with key fields MaintenanceNotification, MaintNotificationActivity. It has 1 association to related views. Part of development package ODATA_EAM_NTF_MAN.

Data Sources (1)

SourceAliasJoin Type
I_MaintNotifActivityTP I_MaintNotifActivityTP from

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_User _CreatedByUser $projection.CreatedByUser = _CreatedByUser.UserID

Annotations (7)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
VDM.viewType #CONSUMPTION view
EndUserText.label Maintenance Notification Activity view
Metadata.allowExtensions true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view

Fields (19)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceNotification I_MaintNotifActivityTP MaintenanceNotification
KEY MaintNotificationActivity I_MaintNotifActivityTP MaintNotificationActivity
MaintenanceNotificationItem I_MaintNotifActivityTP MaintenanceNotificationItem Activity
MaintNotifActivityCodeGroup I_MaintNotifActivityTP MaintNotifActivityCodeGroup Activity Code Group
MaintNotifActivityCodeGrpName Activity Code Group Name
MaintNotificationActivityCode I_MaintNotifActivityTP MaintNotificationActivityCode
MaintNotifActivityCodeName
MaintNotifActyTxt I_MaintNotifActivityTP MaintNotifActyTxt
CreatedByUser I_MaintNotifActivityTP CreatedByUser
CreatedByUserDescription _CreatedByUser UserDescription Created by User Name
MaintNotifActyQtyFactor I_MaintNotifActivityTP MaintNotifActyQtyFactor
PlannedStartDate I_MaintNotifActivityTP PlannedStartDate
PlannedStartTime I_MaintNotifActivityTP PlannedStartTime
PlannedEndDate I_MaintNotifActivityTP PlannedEndDate
PlannedEndTime I_MaintNotifActivityTP PlannedEndTime
NotificationType
_MaintenanceNotification I_MaintNotifActivityTP _MaintenanceNotification
MaintNotifItmActyStrtDateTime
MaintNotifItemActyEndDateTime
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #CONSUMPTION
@EndUserText.label: 'Maintenance Notification Activity'
@Metadata.allowExtensions: true
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #TRANSACTIONAL

define view entity C_ObjPgMaintNotifActivity
  as select from I_MaintNotifActivityTP
  association [0..1] to I_User as _CreatedByUser on $projection.CreatedByUser = _CreatedByUser.UserID
//  association [0..1] to C_MaintNotifActDetQuickVw as _MaintNotifActDetQuickVw on _MaintNotifActDetQuickVw.MaintenanceNotification = $projection.MaintenanceNotification

{
      @UI.hidden: true
  key I_MaintNotifActivityTP.MaintenanceNotification,
      @UI: {lineItem: [ { position: 10, importance: #HIGH }]}
      @ObjectModel.text.element:  [ 'MaintNotifActyTxt' ]
      @UI.textArrangement: #TEXT_FIRST
  key I_MaintNotifActivityTP.MaintNotificationActivity,
      @UI.hidden: true
      @EndUserText.label: 'Activity'
      @UI:{  selectionField: [ {position: 40}],
             lineItem: [ {position: 30, importance: #HIGH }] }
      @Consumption.semanticObject: 'MaintenanceNotification'
//      @ObjectModel: { foreignKey.association: '_MaintNotifActDetQuickVw', mandatory: true}

      I_MaintNotifActivityTP.MaintenanceNotificationItem,
      @UI: {lineItem: [ { position: 20, importance: #HIGH }]}
      @EndUserText.label: 'Activity Code Group'
      @ObjectModel.text.element:  [ 'MaintNotifActivityCodeGrpName' ]
      @UI.textArrangement: #TEXT_FIRST
      I_MaintNotifActivityTP.MaintNotifActivityCodeGroup,
      @Semantics.text: true
      @EndUserText.label: 'Activity Code Group Name'
      replace(I_MaintNotifActivityTP._MaintNotifActivityCodeGroup._Text[1:Language=$session.system_language].InspSpecAddlCodeGroupText, '&', ' ') as  MaintNotifActivityCodeGrpName,
      @UI: {lineItem: [ { position: 30, importance: #HIGH }]}
      @ObjectModel.text.element:  [ 'MaintNotifActivityCodeName' ]
      @UI.textArrangement: #TEXT_FIRST
      I_MaintNotifActivityTP.MaintNotificationActivityCode,
      @Semantics.text: true
      @EndUserText: { label: 'Activity Code Name', quickInfo: 'Activity Code Name' }
      I_MaintNotifActivityTP._MaintNotificationActivityCode._Text[1:Language=$session.system_language].InspectionCodeText                         as  MaintNotifActivityCodeName,
      @Semantics.text: true
      I_MaintNotifActivityTP.MaintNotifActyTxt,
      @ObjectModel.text.element:  [ 'CreatedByUserDescription' ]
      I_MaintNotifActivityTP.CreatedByUser,
      @EndUserText.label: 'Created by User Name'
      @Semantics.text: true
      _CreatedByUser.UserDescription                                                                                                              as  CreatedByUserDescription,
      @UI: {lineItem: [ { position: 40, importance: #HIGH }]}
      I_MaintNotifActivityTP.MaintNotifActyQtyFactor,
      @UI: {lineItem: [ { position: 50, importance: #HIGH, label:'Start Date' }]}
      @UI.hidden: true
      I_MaintNotifActivityTP.PlannedStartDate,
      @UI: {lineItem: [ { position: 60, importance: #HIGH, label: 'Start Time' }]}
      @UI.hidden: true
      I_MaintNotifActivityTP.PlannedStartTime,
      @UI.hidden: true
      @UI: {lineItem: [ { position: 70, importance: #HIGH, label: 'End Date' }]}
      I_MaintNotifActivityTP.PlannedEndDate,
      @UI.hidden: true
      @UI: {lineItem: [ { position: 80, importance: #HIGH, label: 'End Time' }]}
      I_MaintNotifActivityTP.PlannedEndTime,

      @UI.hidden: true
      I_MaintNotifActivityTP._MaintenanceNotification.NotificationType,

      I_MaintNotifActivityTP._MaintenanceNotification,
        @UI: {lineItem: [ { position: 50, importance: #HIGH, label:'Start Date' }]}
       cast (dats_tims_to_tstmp( PlannedStartDate, PlannedStartTime, I_MaintNotifActivityTP._MaintenanceNotification.NotificationTimeZone , $session.client, 'NULL') as  tzntstmps preserving type )         as MaintNotifItmActyStrtDateTime,
        @UI: {lineItem: [ { position: 70, importance: #HIGH, label: 'End Date' }]}        
       cast (dats_tims_to_tstmp( PlannedEndDate, PlannedEndTime, I_MaintNotifActivityTP._MaintenanceNotification.NotificationTimeZone , $session.client, 'NULL') as  tzntstmps preserving type )         as MaintNotifItemActyEndDateTime

     
      

// Based on an ATC issue the reference to the view is vanished

//      @Consumption.filter.hidden: true

//      _MaintNotifActDetQuickVw

}