CDS标准视图:维护通知活动信息 I_MaintNotificationActyData

  • 视图名称:维护通知活动信息 I_MaintNotificationActyData
  • 视图类型:基础
  • 视图代码:
点击查看代码
@AbapCatalog.sqlViewName: 'INOTIFACTYDATA'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Maintenance Notification Activity Data'

@VDM.viewType: #COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.representativeKey: 'MaintNotificationActivity'
@Metadata.ignorePropagatedAnnotations: true

@Analytics: {
  dataCategory: #FACT,
  dataExtraction: {
    enabled: true,
    delta.byElement: {
      name: 'LastChangeDateTime'
    }
  }
}

@ObjectModel: {
  usageType: {
    dataClass: #TRANSACTIONAL,
    serviceQuality: #C,
    sizeCategory: #L
  }
}
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ObjectModel.supportedCapabilities:[  #EXTRACTION_DATA_SOURCE]

// created as a replacement for BW extractor 2LIS_17_I0ACTY and 2LIS_18_I0ACTY
// with this CDS view only partial details of CS notification would be visible, CS is only in compatibility mode and no further details would be made available
define view I_MaintNotificationActyData
  as select from I_MaintNotifActivityTechObj
   -- Extensions, do not expose as association:
  association [0..1] to E_PMNotifMaintenanceData  as _NotifMaintenanceDataExtension on _NotifMaintenanceDataExtension.MaintenanceNotification = $projection.MaintenanceNotification
{
      @ObjectModel.text.element:  [ 'MaintNotifActyTxt' ]
  key MaintNotificationActivity,
      @ObjectModel.foreignKey.association: '_MaintenanceNotification'
  key MaintenanceNotification,
      @ObjectModel.foreignKey.association: '_MaintenanceNotificationItem'
      MaintenanceNotificationItem,
      @Semantics.text: true
      MaintNotifActyTxt,
      @ObjectModel.foreignKey.association: '_MaintNotificationActivityCode'
      MaintNotificationActivityCode,
      @ObjectModel.foreignKey.association: '_MaintNotifActivityCodeGroup'
      MaintNotifActivityCodeGroup,
      @ObjectModel.foreignKey.association: '_MaintNotifActivityCodeCatalog'
      MaintNotifActivityCodeCatalog,
      @ObjectModel.foreignKey.association: '_IsDeleted'
      IsDeleted,
      @Semantics.systemDateTime.lastChangedAt: true
      LastChangeDateTime,

      @ObjectModel.foreignKey.association: '_AssemblyHeader'
      _MaintenanceNotification._PMNotifMaintenanceData.Assembly                                                                   as AssemblyHeader,
      @ObjectModel.foreignKey.association: '_Equipment'
      _MaintenanceNotification._PMNotifMaintenanceData.Equipment,
      @ObjectModel.foreignKey.association: '_FunctionalLocation'
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment.FunctionalLocation,
      @ObjectModel.foreignKey.association: '_MaintenancePlanningPlant'
      _MaintenanceNotification._PMNotifMaintenanceData.MaintenancePlanningPlant,
      @ObjectModel.foreignKey.association: '_MaintenancePlannerGroup'
      _MaintenanceNotification._PMNotifMaintenanceData.MaintenancePlannerGroup,

      @ObjectModel.foreignKey.association: '_MaintenancePlant'
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment.MaintenancePlant,
      @ObjectModel.foreignKey.association: '_ControllingArea'
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment.ControllingArea,
      @ObjectModel.foreignKey.association: '_CostCenter'
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment.CostCenter,

      _MaintenanceNotification.NotificationOrigin,
      @ObjectModel.foreignKey.association: '_PMNotificationType'
      _MaintenanceNotification.NotificationType,
      _MaintenanceNotification.NotificationCreationDate,

      @ObjectModel.foreignKey.association: '_Assembly'
      _MaintenanceNotificationItem.Assembly,
      @ObjectModel.foreignKey.association: '_MaintNotifDamageCodeCatalog'
      _MaintenanceNotificationItem.MaintNotifDamageCodeCatalog,
      @ObjectModel.foreignKey.association: '_MaintNotificationDamageCode'
      _MaintenanceNotificationItem.MaintNotificationDamageCode,
      @ObjectModel.foreignKey.association: '_MaintNotifDamageCodeGroup'
      _MaintenanceNotificationItem.MaintNotifDamageCodeGroup,
      @ObjectModel.foreignKey.association: '_DefectClass'
      _MaintenanceNotificationItem.DefectClass,
      @ObjectModel.foreignKey.association: '_MaintNotifObjPrtCode'
      _MaintenanceNotificationItem.MaintNotifObjPrtCode,
      @ObjectModel.foreignKey.association: '_MaintNotifObjPrtCodeGroup'
      _MaintenanceNotificationItem.MaintNotifObjPrtCodeGroup,
      @ObjectModel.foreignKey.association: '_MaintNotifObjPrtCodeCatalog'
      _MaintenanceNotificationItem.MaintNotifObjPrtCodeCatalog,

      //No. of Activities
      @DefaultAggregation: #SUM
      cast( 1 as qzhlaktion )                                                                                                     as NumberOfMaintNotifActivities,

      _MaintenanceNotification,
      _MaintenanceNotificationItem,
      _MaintNotifActivityCodeCatalog,
      _MaintNotifActivityCodeGroup,
      _MaintNotificationActivityCode,
      _IsDeleted,
      _MaintenanceNotification._PMNotifMaintenanceData._Assembly                                                                  as _AssemblyHeader,
      _MaintenanceNotification._PMNotifMaintenanceData._Equipment,
      _MaintenanceNotification._PMNotifMaintenanceData._MaintenancePlanningPlant,
      _MaintenanceNotification._PMNotifMaintenanceData._MaintenancePlannerGroup,
      _MaintenanceNotification._PMNotificationType,
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment._FunctionalLocation,
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment._MaintenancePlant,
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment._ControllingArea,
      _MaintenanceNotification._PMNotifMaintenanceData._LocationAccountAssignment._CostCenter,
      _MaintenanceNotificationItem._Assembly,
      _MaintenanceNotificationItem._MaintNotifDamageCodeCatalog,
      _MaintenanceNotificationItem._MaintNotificationDamageCode,
      _MaintenanceNotificationItem._MaintNotifDamageCodeGroup,
      _MaintenanceNotificationItem._DefectClass,
      _MaintenanceNotificationItem._MaintNotifObjPrtCode,
      _MaintenanceNotificationItem._MaintNotifObjPrtCodeGroup,
      _MaintenanceNotificationItem._MaintNotifObjPrtCodeCatalog
}
  • 事务代码:IW23/IW65

  • 视图结构:

字段名称 设备名称
活动 MAINTNOTIFICATIONACTIVITY
通知 MAINTENANCENOTIFICATION
项目 MAINTENANCENOTIFICATIONITEM
作业文本 MAINTNOTIFACTYTXT
活动代码 MAINTNOTIFICATIONACTIVITYCODE
活动代码组 MAINTNOTIFACTIVITYCODEGROUP
活动目录 MAINTNOTIFACTIVITYCODECATALOG
删除 ISDELETED
时戳 LASTCHANGEDATETIME
装配 ASSEMBLYHEADER
设备 EQUIPMENT
功能位置 FUNCTIONALLOCATION
计划工厂 MAINTENANCEPLANNINGPLANT
计划人员组 MAINTENANCEPLANNERGROUP
维护工厂 MAINTENANCEPLANT
成本控制范围 CONTROLLINGAREA
成本中心 COSTCENTER
通知来源 NOTIFICATIONORIGIN
通知类型 NOTIFICATIONTYPE
通知日期 NOTIFICATIONCREATIONDATE
装配 ASSEMBLY
损坏代码目录 MAINTNOTIFDAMAGECODECATALOG
损坏代码 MAINTNOTIFICATIONDAMAGECODE
损坏代码组 MAINTNOTIFDAMAGECODEGROUP
缺陷类 DEFECTCLASS
对象部分代码 MAINTNOTIFOBJPRTCODE
对象部分代码组 MAINTNOTIFOBJPRTCODEGROUP
对象部分目录 MAINTNOTIFOBJPRTCODECATALOG
所有活动 NUMBEROFMAINTNOTIFACTIVITIES

posted @ 2025-01-02 10:40  观兴  阅读(2)  评论(0编辑  收藏  举报