R_MaintenanceNotificationTP

DDL: R_MAINTENANCENOTIFICATIONTP Type: view_entity TRANSACTIONAL

Maintenance Notification Tech Object

R_MaintenanceNotificationTP is a Transactional CDS View that provides data about "Maintenance Notification Tech Object" in SAP S/4HANA. It reads from 1 data source (I_MaintNotificationTechObj) and exposes 44 fields with key field MaintenanceNotification. It has 33 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_MaintNotificationTechObj I_MaintNotificationTechObj from

Associations (33)

CardinalityTargetAliasCondition
[0..1] I_NumberOfOpnNotifByTechObj _NumberOfOpnNotifByTechObj _NumberOfOpnNotifByTechObj.TechnicalObject = $projection.TechnicalObject and _NumberOfOpnNotifByTechObj.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc
[0..*] I_TechnicalObjectCategoryT _TechnicalObjectCategoryT _TechnicalObjectCategoryT.TechnicalObjectCategory = $projection.TechnicalObjectCategory and _TechnicalObjectCategoryT.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc
[0..*] C_TechObjCstmHierVH _TechObjHier _TechObjHier.TechnicalObject = $projection.TechnicalObject and _TechObjHier.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc and _TechObjHier.ValidityEndDate = $projection.MalfunctionStartDate and _TechObjHier.ValidityEndTime = $projection.MalfunctionStartTime and _TechObjHier.TechnicalObjectLabel = $projection.TechnicalObjectLabel
[0..1] I_PMContactCardUser _CreatedByUser _CreatedByUser.UserID = $projection.CreatedByUser
[0..1] I_Plant _MaintPlant _MaintPlant.Plant = $projection.MaintenancePlanningPlant
[0..1] I_MaintenancePlannerGroup _MaintPlantGroup _MaintPlantGroup.MaintenancePlannerGroup = $projection.MaintenancePlannerGroup and _MaintPlantGroup.MaintenancePlanningPlant = $projection.MaintenancePlanningPlant
[0..1] I_GenericPriorityData _GenericPriorityData _GenericPriorityData.GenericPriorityType = $projection.MaintPriorityType and _GenericPriorityData.PriorityCode = $projection.MaintPriority
[0..*] I_StatusObjectActiveStatus _ActiveSystemStatus _ActiveSystemStatus.StatusObject = $projection.MaintNotifInternalID and _ActiveSystemStatus.IsUserStatus = ''
[0..*] I_StatusObjectActiveStatus _SystemStatus _SystemStatus.StatusObject = $projection.MaintNotifInternalID and _SystemStatus.IsUserStatus = '' and ( _SystemStatus.StatusCode = 'I052R' or _SystemStatus.StatusCode = 'I0527' )
[0..1] I_TextObjectPlainLongText _TextObjectPlainLongText _TextObjectPlainLongText.TextObjectKey = I_MaintNotificationTechObj.MaintenanceNotification and _TextObjectPlainLongText.TextObjectType = 'LTXT' and _TextObjectPlainLongText.TextObjectCategory = 'QMEL' and _TextObjectPlainLongText.Language = $session.system_language
[0..*] I_MaintNotifRejectionReasonTxt _MaintNotifRejectionReasonTxt _MaintNotifRejectionReasonTxt.MaintNotifRejectionReasonCode = $projection.maintnotifrejectionreasoncode
[0..1] I_TechObjWorkReqQuickVw _TechnicalObjQuickVw _TechnicalObjQuickVw.TechnicalObject = $projection.TechnicalObject and _TechnicalObjQuickVw.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc and _TechnicalObjQuickVw.TechnicalObjectLabel = $projection.TechnicalObjectLabel
[0..*] I_FunctionalLocationText _SupFunctionalLocationText _SupFunctionalLocationText.FunctionalLocation = $projection.FunctionalLocation
[0..1] I_MaintenanceTaskList _TaskListDesc _TaskListDesc.TaskListType = $projection.maintenancetasklisttype and _TaskListDesc.TaskListGroup = $projection.tasklistgroup and _TaskListDesc.TaskListGroupCounter = $projection.tasklistgroupcounter
[0..*] I_TechObjIsEquipOrFuncnlLocT _TechObjIsEquipOrFuncnlLocDesc $projection.TechObjIsEquipOrFuncnlLoc = _TechObjIsEquipOrFuncnlLocDesc.TechObjIsEquipOrFuncnlLoc
[0..*] I_TechnicalObjectText _TechnicalObjectText _TechnicalObjectText.TechnicalObject = $projection.TechnicalObject and _TechnicalObjectText.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc
[0..1] I_EAMProcessSubPhase _SubPhase $projection.maintnotifprocesssubphasecode = _SubPhase.EAMProcessSubPhaseCode
[0..1] I_EAMProcessPhase _Phase $projection.maintnotifprocessphasecode = _Phase.EAMProcessPhaseCode
[0..*] I_MaintNotifDetectionCodeText _MaintNotifDetectCodeTxt $projection.maintnotifdetectioncode = _MaintNotifDetectCodeTxt.MaintNotifDetectionCode
[0..*] I_MaintNotifDetectCodeGroupTxt _MaintNotifDetectCodeGroupTxt _MaintNotifDetectCodeGroupTxt.MaintNotifDetectionCodeGroup = $projection.maintnotifdetectioncodegroup
[0..1] I_MaintNotifProcgContextText _MaintNotifProcgContextTxt _MaintNotifProcgContextTxt.MaintNotifProcessingContext = $projection.maintnotifprocessingcontext and _MaintNotifProcgContextTxt.Language = $session.system_language
[0..1] I_OrderType _MaintOrderType _MaintOrderType.OrderType = $projection.MaintenanceOrderType
[0..1] I_FunctionalLocationLabel _SupFunctionalLocationLabel $projection.SuperiorFunctionalLocation = _SupFunctionalLocationLabel.FunctionalLocation
[0..*] I_FunctionalLocationText _SuperiorFuncLocText $projection.SuperiorFunctionalLocation = _SuperiorFuncLocText.FunctionalLocation
[0..1] I_Plant _MaintenanceWorkCenterPlant $projection.MaintenanceWorkCenterPlant = _MaintenanceWorkCenterPlant.Plant
[0..1] I_UserDescription _CreatedByUserSimpl _CreatedByUserSimpl.UserID = $projection.CreatedByUser
[0..*] I_ABCIndicatorText _ABCIndicatorText $projection.ABCIndicator = _ABCIndicatorText.ABCIndicator -- Extensions, do not expose as association:
[0..1] E_PMNotifMaintenanceData _NotifMaintenanceDataExtension _NotifMaintenanceDataExtension.MaintenanceNotification = $projection.MaintenanceNotification
[0..*] R_MaintNotificationItemTP _Item
[0..*] R_MaintNotifEventPrioznTP _EventPrio
[0..*] R_MaintNotificationPartnerTP _Partner
[0..*] R_MaintNotificationTaskTP _Task
[0..*] R_MaintNotificationActivityTP _Activity

Annotations (9)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
EndUserText.label Maintenance Notification Tech Object view
ObjectModel.transactionalProcessingEnabled true view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.sapObjectNodeType.name MaintenanceNotification view

Fields (44)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceNotification I_MaintNotificationTechObj MaintenanceNotification
MaintNotifInternalID I_MaintNotificationTechObj MaintNotifInternalID
NotificationText I_MaintNotificationTechObj NotificationText
MaintPriority I_MaintNotificationTechObj MaintPriority
MaintPriorityType I_MaintNotificationTechObj MaintPriorityType
GenericPriorityColorCode
NotificationType I_MaintNotificationTechObj NotificationType
NotifProcessingPhase I_MaintNotificationTechObj NotifProcessingPhase
CreatedByUser I_MaintNotificationTechObj CreatedByUser
LastChangedByUser I_MaintNotificationTechObj LastChangedByUser
CreationDate I_MaintNotificationTechObj CreationDate
LastChangeTime I_MaintNotificationTechObj LastChangeTime
LastChangeDate I_MaintNotificationTechObj LastChangeDate
LastChangeDateTime I_MaintNotificationTechObj LastChangeDateTime
CreationTime I_MaintNotificationTechObj CreationTime
CreationDateTime
ReportedByUser I_MaintNotificationTechObj ReportedByUser
ReporterFullName I_MaintNotificationTechObj ReporterFullName
PersonResponsible I_MaintNotificationTechObj PersonResponsible
MalfunctionEffect I_MaintNotificationTechObj MalfunctionEffect
MalfunctionStartDate I_MaintNotificationTechObj MalfunctionStartDate
MalfunctionStartTime I_MaintNotificationTechObj MalfunctionStartTime
MalfunctionStartDateTime
MalfunctionEndDate I_MaintNotificationTechObj MalfunctionEndDate
MalfunctionEndTime I_MaintNotificationTechObj MalfunctionEndTime
MalfunctionEndDateTime
MaintNotificationCatalog I_MaintNotificationTechObj MaintNotificationCatalog
MaintNotificationCode I_MaintNotificationTechObj MaintNotificationCode
MaintNotificationCodeGroup I_MaintNotificationTechObj MaintNotificationCodeGroup
CatalogProfile I_MaintNotificationTechObj CatalogProfile
NotificationCreationDate I_MaintNotificationTechObj NotificationCreationDate
NotificationCreationTime I_MaintNotificationTechObj NotificationCreationTime
NotificationCreationDateTime
NotificationTimeZone I_MaintNotificationTechObj NotificationTimeZone
RequiredStartDate I_MaintNotificationTechObj RequiredStartDate
RequiredStartTime I_MaintNotificationTechObj RequiredStartTime
MaintNotifRqdStartDateTime
RequiredEndDate I_MaintNotificationTechObj RequiredEndDate
RequiredEndTime I_MaintNotificationTechObj RequiredEndTime
MaintNotifRqdEndDateTime
LatestAcceptableCompletionDate I_MaintNotificationTechObj LatestAcceptableCompletionDate
MaintenanceObjectIsDown I_MaintNotificationTechObj MaintenanceObjectIsDown
TextObjectType
MaintNotifLongTextForEdit
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Maintenance Notification Tech Object'
@AccessControl.personalData.blocking: #('TRANSACTIONAL_DATA')
@ObjectModel.transactionalProcessingEnabled: true
@AccessControl.privilegedAssociations: ['_ActiveSystemStatus', '_TechnicalObjectCategoryT', '_TaskListDesc' ]
@VDM.viewType: #TRANSACTIONAL
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@ObjectModel.semanticKey: ['MaintenanceNotification']

@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL

@ObjectModel.sapObjectNodeType.name: 'MaintenanceNotification'

define root view entity R_MaintenanceNotificationTP
  as select from I_MaintNotificationTechObj

  // Add Child Composition

  composition [0..*] of R_MaintNotificationItemTP      as _Item
  composition [0..*] of R_MaintNotifEventPrioznTP      as _EventPrio
  composition [0..*] of R_MaintNotificationPartnerTP   as _Partner
  composition [0..*] of R_MaintNotificationTaskTP      as _Task
  composition [0..*] of R_MaintNotificationActivityTP  as _Activity

  association [0..1] to I_NumberOfOpnNotifByTechObj    as _NumberOfOpnNotifByTechObj     on  _NumberOfOpnNotifByTechObj.TechnicalObject           = $projection.TechnicalObject
                                                                                         and _NumberOfOpnNotifByTechObj.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc

  association [0..*] to I_TechnicalObjectCategoryT     as _TechnicalObjectCategoryT      on  _TechnicalObjectCategoryT.TechnicalObjectCategory   = $projection.TechnicalObjectCategory
                                                                                         and _TechnicalObjectCategoryT.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc

  association [0..*] to C_TechObjCstmHierVH            as _TechObjHier                   on  _TechObjHier.TechnicalObject           = $projection.TechnicalObject
                                                                                         and _TechObjHier.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc
                                                                                         and _TechObjHier.ValidityEndDate           = $projection.MalfunctionStartDate
                                                                                         and _TechObjHier.ValidityEndTime           = $projection.MalfunctionStartTime
                                                                                         and _TechObjHier.TechnicalObjectLabel      = $projection.TechnicalObjectLabel

  association [0..1] to I_PMContactCardUser            as _CreatedByUser                 on  _CreatedByUser.UserID = $projection.CreatedByUser

  association [0..1] to I_Plant                        as _MaintPlant                    on  _MaintPlant.Plant = $projection.MaintenancePlanningPlant

  association [0..1] to I_MaintenancePlannerGroup      as _MaintPlantGroup               on  _MaintPlantGroup.MaintenancePlannerGroup  = $projection.MaintenancePlannerGroup
                                                                                         and _MaintPlantGroup.MaintenancePlanningPlant = $projection.MaintenancePlanningPlant

  association [0..1] to I_GenericPriorityData          as _GenericPriorityData           on  _GenericPriorityData.GenericPriorityType = $projection.MaintPriorityType
                                                                                         and _GenericPriorityData.PriorityCode        = $projection.MaintPriority


  association [0..*] to I_StatusObjectActiveStatus     as _ActiveSystemStatus            on  _ActiveSystemStatus.StatusObject = $projection.MaintNotifInternalID
                                                                                         and _ActiveSystemStatus.IsUserStatus = ''

  association [0..*] to I_StatusObjectActiveStatus     as _SystemStatus                  on  _SystemStatus.StatusObject = $projection.MaintNotifInternalID
                                                                                         and _SystemStatus.IsUserStatus = ''
                                                                                         and (
                                                                                            _SystemStatus.StatusCode    = 'I052R'
                                                                                            or _SystemStatus.StatusCode = 'I0527'
                                                                                          )

  //  association [0..*] to I_StatusObjectStatusBasic      as _SystemStatus                  on  _SystemStatus.StatusObject = $projection.MaintNotifInternalID

  //  with default filter _SystemStatus.StatusIsInactive is initial

  //               and    (

  //                      _SystemStatus.StatusCode       = 'I052R'

  //               or     _SystemStatus.StatusCode       = 'I0527'

  //                      )


  association [0..1] to I_TextObjectPlainLongText      as _TextObjectPlainLongText       on  _TextObjectPlainLongText.TextObjectKey      = I_MaintNotificationTechObj.MaintenanceNotification
                                                                                         and _TextObjectPlainLongText.TextObjectType     = 'LTXT'
                                                                                         and _TextObjectPlainLongText.TextObjectCategory = 'QMEL'
                                                                                         and _TextObjectPlainLongText.Language           = $session.system_language

  association [0..*] to I_MaintNotifRejectionReasonTxt as _MaintNotifRejectionReasonTxt  on  _MaintNotifRejectionReasonTxt.MaintNotifRejectionReasonCode = $projection.maintnotifrejectionreasoncode

  association [0..1] to I_TechObjWorkReqQuickVw        as _TechnicalObjQuickVw           on  _TechnicalObjQuickVw.TechnicalObject           = $projection.TechnicalObject
                                                                                         and _TechnicalObjQuickVw.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc
                                                                                         and _TechnicalObjQuickVw.TechnicalObjectLabel      = $projection.TechnicalObjectLabel
  association [0..*] to I_FunctionalLocationText       as _SupFunctionalLocationText     on  _SupFunctionalLocationText.FunctionalLocation = $projection.FunctionalLocation

  // Association for Task List Description

  association [0..1] to I_MaintenanceTaskList          as _TaskListDesc                  on  _TaskListDesc.TaskListType         = $projection.maintenancetasklisttype
                                                                                         and _TaskListDesc.TaskListGroup        = $projection.tasklistgroup
                                                                                         and _TaskListDesc.TaskListGroupCounter = $projection.tasklistgroupcounter
  association [0..*] to I_TechObjIsEquipOrFuncnlLocT   as _TechObjIsEquipOrFuncnlLocDesc on  $projection.TechObjIsEquipOrFuncnlLoc = _TechObjIsEquipOrFuncnlLocDesc.TechObjIsEquipOrFuncnlLoc
  association [0..*] to I_TechnicalObjectText          as _TechnicalObjectText           on  _TechnicalObjectText.TechnicalObject           = $projection.TechnicalObject
                                                                                         and _TechnicalObjectText.TechObjIsEquipOrFuncnlLoc = $projection.TechObjIsEquipOrFuncnlLoc


  association [0..1] to I_EAMProcessSubPhase           as _SubPhase                      on  $projection.maintnotifprocesssubphasecode = _SubPhase.EAMProcessSubPhaseCode
  association [0..1] to I_EAMProcessPhase              as _Phase                         on  $projection.maintnotifprocessphasecode = _Phase.EAMProcessPhaseCode

  association [0..*] to I_MaintNotifDetectionCodeText  as _MaintNotifDetectCodeTxt       on  $projection.maintnotifdetectioncode = _MaintNotifDetectCodeTxt.MaintNotifDetectionCode
  association [0..*] to I_MaintNotifDetectCodeGroupTxt as _MaintNotifDetectCodeGroupTxt  on  _MaintNotifDetectCodeGroupTxt.MaintNotifDetectionCodeGroup = $projection.maintnotifdetectioncodegroup

  association [0..1] to I_MaintNotifProcgContextText   as _MaintNotifProcgContextTxt     on  _MaintNotifProcgContextTxt.MaintNotifProcessingContext = $projection.maintnotifprocessingcontext
                                                                                         and _MaintNotifProcgContextTxt.Language                    = $session.system_language

  association [0..1] to I_OrderType                    as _MaintOrderType                on  _MaintOrderType.OrderType = $projection.MaintenanceOrderType

  association [0..1] to I_FunctionalLocationLabel      as _SupFunctionalLocationLabel    on  $projection.SuperiorFunctionalLocation = _SupFunctionalLocationLabel.FunctionalLocation
  association [0..*] to I_FunctionalLocationText       as _SuperiorFuncLocText           on  $projection.SuperiorFunctionalLocation = _SuperiorFuncLocText.FunctionalLocation
  association [0..1] to I_Plant                        as _MaintenanceWorkCenterPlant    on  $projection.MaintenanceWorkCenterPlant = _MaintenanceWorkCenterPlant.Plant
  association [0..1] to I_UserDescription              as _CreatedByUserSimpl            on  _CreatedByUserSimpl.UserID = $projection.CreatedByUser
  association [0..*] to I_ABCIndicatorText             as _ABCIndicatorText              on  $projection.ABCIndicator = _ABCIndicatorText.ABCIndicator


  -- Extensions, do not expose as association:
  association [0..1] to E_PMNotifMaintenanceData       as _NotifMaintenanceDataExtension on  _NotifMaintenanceDataExtension.MaintenanceNotification = $projection.MaintenanceNotification

{

  key I_MaintNotificationTechObj.MaintenanceNotification,

      I_MaintNotificationTechObj.MaintNotifInternalID,

      @Semantics.text: true
      I_MaintNotificationTechObj.NotificationText,

      I_MaintNotificationTechObj.MaintPriority,
      I_MaintNotificationTechObj.MaintPriorityType,
      cast( _GenericPriorityData.GenericPriorityColorCode as abap.int1)                                                                                                                         as GenericPriorityColorCode,
      @ObjectModel.text.association: '_PMNotificationType'
      I_MaintNotificationTechObj.NotificationType, //Notification Type

      I_MaintNotificationTechObj.NotifProcessingPhase, //Processing Phase

      @ObjectModel.text.association: '_CreatedByUser'
      I_MaintNotificationTechObj.CreatedByUser, //Created By User

      I_MaintNotificationTechObj.LastChangedByUser, //Last Changed by user

      I_MaintNotificationTechObj.CreationDate, //Creation Date

      I_MaintNotificationTechObj.LastChangeTime, // Last Change Time

      I_MaintNotificationTechObj.LastChangeDate, // Last Change Date

      @Semantics.systemDateTime.lastChangedAt: true
      I_MaintNotificationTechObj.LastChangeDateTime, // Last  Change Date Time for ETAG

      I_MaintNotificationTechObj.CreationTime, //Creation Time

      cast (dats_tims_to_tstmp( CreationDate, CreationTime, abap_system_timezone( $session.client,'NULL' ) , $session.client, 'NULL') as  tzntstmps preserving type )                           as CreationDateTime, //Timestamp

      @ObjectModel.text.element:  [ 'ReporterFullName' ]
      I_MaintNotificationTechObj.ReportedByUser, //Reported By user


      I_MaintNotificationTechObj.ReporterFullName, // Reported Full Name


      I_MaintNotificationTechObj.PersonResponsible, //Person Responsible

      @ObjectModel.foreignKey.association: '_MalfunctionEffect'
      I_MaintNotificationTechObj.MalfunctionEffect, //Malfunction Effect

      I_MaintNotificationTechObj.MalfunctionStartDate, //Malfunction Start Date

      I_MaintNotificationTechObj.MalfunctionStartTime, //Malfunction Start Time

      cast (dats_tims_to_tstmp( MalfunctionStartDate, MalfunctionStartTime, I_MaintNotificationTechObj.NotificationTimeZone, $session.client, 'NULL') as  tzntstmps preserving type )           as MalfunctionStartDateTime,
      I_MaintNotificationTechObj.MalfunctionEndDate, //Malfunction End Date

      I_MaintNotificationTechObj.MalfunctionEndTime, //Malfunction End Time

      cast (dats_tims_to_tstmp( MalfunctionEndDate, MalfunctionEndTime, I_MaintNotificationTechObj.NotificationTimeZone, $session.client, 'NULL') as  tzntstmps preserving type )               as MalfunctionEndDateTime,
      I_MaintNotificationTechObj.MaintNotificationCatalog, //Notification Catalog

      I_MaintNotificationTechObj.MaintNotificationCode, //Notification Code

      I_MaintNotificationTechObj.MaintNotificationCodeGroup, //Code Group

      I_MaintNotificationTechObj.CatalogProfile, //Catalog Profile

      I_MaintNotificationTechObj.NotificationCreationDate, // Notification Creation Date

      @Semantics.time: true
      I_MaintNotificationTechObj.NotificationCreationTime, // Notif Creation time

      cast (dats_tims_to_tstmp( NotificationCreationDate, NotificationCreationTime, I_MaintNotificationTechObj.NotificationTimeZone , $session.client, 'NULL') as  tzntstmps preserving type )  as NotificationCreationDateTime,
      I_MaintNotificationTechObj.NotificationTimeZone, // Time Zone

      //cast (dats_tims_to_tstmp( NotificationReferenceDate, NotificationReferenceTime, I_MaintNotificationTechObj.NotificationTimeZone, $session.client, 'NULL') as  tzntstmps preserving type )              as NotificationReferenceDateTime,


      I_MaintNotificationTechObj.RequiredStartDate, // Work Request Start Date

      @Semantics.time: true
      I_MaintNotificationTechObj.RequiredStartTime, // Work Request Start Time

      cast (dats_tims_to_tstmp( RequiredStartDate, RequiredStartTime, I_MaintNotificationTechObj.NotificationTimeZone , $session.client, 'NULL') as  tzntstmps preserving type )                as MaintNotifRqdStartDateTime,
      I_MaintNotificationTechObj.RequiredEndDate, // Work Request End Date

      @Semantics.time: true
      I_MaintNotificationTechObj.RequiredEndTime, // Work Request End Time

      cast (dats_tims_to_tstmp( RequiredEndDate, RequiredEndTime,I_MaintNotificationTechObj.NotificationTimeZone, $session.client, 'NULL') as  tzntstmps preserving type )                      as MaintNotifRqdEndDateTime,
      I_MaintNotificationTechObj.LatestAcceptableCompletionDate                                                                                                                                 as LatestAcceptableCompletionDate, //LACD Date

      I_MaintNotificationTechObj.MaintenanceObjectIsDown                                                                                                                                        as MaintenanceObjectIsDown, //Breakdown


      //      _TextObjectPlainLongText.PlainLongText                                                              as MaintNotificationLongText, //Long Text


      -- Performance Changes
      //      I_MaintNotificationTechObj._MaintNotifLongText.TextObjectCategory                                                                                                                        as TextObjectCategory,

      //      I_MaintNotificationTechObj._MaintNotifLongText.TextObjectType                                                                                                                            as TextObjectType,

      cast( 'QMEL' as tdobject )                                                                                                                                                                as TextObjectCategory,
      cast( 'LTXT' as tdid preserving type )                                                                                                                                                    as TextObjectType,
      //      I_MaintNotificationTechObj._MaintNotifLongText.MaintNotifLongTextForEdit                                                                                                                  as MaintNotifLongTextForEdit,

      cast('' as eams_ltext )                                                                                                                                                                   as MaintNotifLongTextForEdit,


      // Technical Object Details

      @ObjectModel: { foreignKey.association: '_TechnicalObjQuickVw'}
      I_MaintNotificationTechObj.TechnicalObject, //Technical Object

      @ObjectModel.foreignKey.association:  '_TechObjIsEquipOrFuncnlLoc'
      //      @ObjectModel: {[ foreignKey.association: '_TechnicalObjQuickVw',

      //                      foreignKey.association: '_TechObjIsEquipOrFuncnlLoc']}

      I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc, //Technical Object is Equi or Floc

      //      @ObjectModel: { foreignKey.association: '_TechnicalObjQuickVw'}


      -- Performance Changes
      //      cast( case when I_MaintNotificationTechObj._TechnicalObject.TechObjIsEquipOrFuncnlLoc = 'EAMS_FL' then // Functional Location

      //                     I_MaintNotificationTechObj._TechnicalObject._FunctionalLocationLabel.FunctionalLocationLabelName

      //                     when I_MaintNotificationTechObj._TechnicalObject.TechObjIsEquipOrFuncnlLoc != 'EAMS_FL'then

      //                I_MaintNotificationTechObj._TechnicalObject.TechnicalObject end as eams_tech_obj_alpha_conv )                                                                                   as TechnicalObjectLabel, //Technical Object Label


      cast ( case when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'
                  then ltrim( I_MaintNotificationTechObj.Equipment , '0' )
                  when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'
                  then _FunctionalLocationLabel.FunctionalLocationLabelName  end as eams_tec_obj preserving type)                                                                               as TechnicalObjectLabel, //Technical Object Label


      I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenancePlanningPlant                                                                                                               as MaintenancePlanningPlant, //Planning Plant

      I_MaintNotificationTechObj._PMNotifMaintenanceData.MaintenancePlannerGroup                                                                                                                as MaintenancePlannerGroup, //PLanner Group


      -- Performance Changes
      //      I_MaintNotificationTechObj._TechnicalObject.AssetManufacturerName                                                                                                                        as AssetManufacturerName, //Manufacturer

      case when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'
           then I_MaintNotificationTechObj._Equipment.AssetManufacturerName
           when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'
           then I_MaintNotificationTechObj._FunctionalLocation.AssetManufacturerName end                                                                                                        as AssetManufacturerName,

      I_MaintNotificationTechObj._LocationAccountAssignment.PlantSection                                                                                                                        as PlantSection, //Plant Section

      I_MaintNotificationTechObj._LocationAccountAssignment.ABCIndicator                                                                                                                        as ABCIndicator, //ABC Indicator


      -- Performance Changes
      //      cast( case when I_MaintNotificationTechObj._TechnicalObject.SuperiorObjIsEquipOrFuncnlLoc = 'EAMS_EQUI' then

      //              I_MaintNotificationTechObj._TechnicalObject.SuperiorTechnicalObject

      //              when I_MaintNotificationTechObj._TechnicalObject.SuperiorObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'

      //         then I_MaintNotificationTechObj._TechnicalObject._SuperFunctionalLocationLabel.FunctionalLocationLabelName

      //        end as eams_tech_obj_alpha_conv)                                                                                                                                                       as SuperiorTechnicalObjectLabel,

      //      cast(

      //        case

      //          when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'

      //          then case

      //                when I_MaintNotificationTechObj._Equipment._CurrentTimeSegment.SuperordinateEquipment != ''

      //                then I_MaintNotificationTechObj._Equipment._CurrentTimeSegment.SuperordinateEquipment

      //                when I_MaintNotificationTechObj._Equipment._CurrentTimeSegment.SuperordinateEquipment = ''

      //                then I_MaintNotificationTechObj._Equipment._CurrentTimeSegment._LocationAccountAssignment._FunctionalLocation._FunctionalLocationLabel.FunctionalLocationLabelName end

      //          when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'

      //          then I_MaintNotificationTechObj._FunctionalLocation._SuperiorFunctionalLocation._FunctionalLocationLabel.FunctionalLocationLabelName end as eams_tech_obj_alpha_conv preserving type) as SuperiorTechnicalObjectLabel,


      cast(
        case
          when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'
          then case
                when I_MaintNotificationTechObj._Equipment._CurrentTimeSegment.SuperordinateEquipment != ''
                then I_MaintNotificationTechObj._Equipment._CurrentTimeSegment.SuperordinateEquipment
                when I_MaintNotificationTechObj._Equipment._CurrentTimeSegment.SuperordinateEquipment = ''
                then I_MaintNotificationTechObj._Equipment._CurrentTimeSegment._LocationAccountAssignment._FunctionalLocation._FunctionalLocationLabel.FunctionalLocationLabelName end
          when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'
          then I_MaintNotificationTechObj._FunctionalLocation._SuperiorFunctionalLocation._FunctionalLocationLabel.FunctionalLocationLabelName end as eams_tech_obj_alpha_conv)                 as SuperiorTechnicalObjectLabel,


      -- Performance Changesxx
      //      I_MaintNotificationTechObj._TechnicalObject.ManufacturerPartTypeName                                                                                                                     as ManufacturerPartTypeName, //Model

      case when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'
           then I_MaintNotificationTechObj._Equipment.ManufacturerPartTypeName
           when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'
           then I_MaintNotificationTechObj._FunctionalLocation.ManufacturerPartTypeName end                                                                                                     as ManufacturerPartTypeName,
      cast(I_MaintNotificationTechObj.FunctionalLocation as eams_ui_oid_name preserving type )                                                                                                  as FunctionalLocation, // Functional Location


      -- Performance Changes
      //      I_MaintNotificationTechObj._LocationAccountAssignment._FunctionalLocation._FunctionalLocationLabel.FunctionalLocationLabelName,

      I_MaintNotificationTechObj._FunctionalLocation._FunctionalLocationLabel.FunctionalLocationLabelName                                                                                       as FunctionalLocationLabelName,

      I_MaintNotificationTechObj._LocationAccountAssignment.AssetLocation                                                                                                                       as AssetLocation, // Location

      I_MaintNotificationTechObj._LocationAccountAssignment._Location.LocationName                                                                                                              as LocationName, // Location Name


      -- Performance Changes
      //      I_MaintNotificationTechObj._TechnicalObject.TechnicalObjectCategory                                                                                                                      as TechnicalObjectCategory, // Technical Object Category

      //      I_MaintNotificationTechObj._TechnicalObject.TechnicalObjectType                                                                                                                          as TechnicalObjectType, // Technical Object Type

      cast( case when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'
                 then I_MaintNotificationTechObj._Equipment.EquipmentCategory
                 when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'
                 then I_MaintNotificationTechObj._FunctionalLocation.FunctionalLocationCategory end as eams_tec_obj_cat preserving type )                                                       as TechnicalObjectCategory,

      cast( case when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'
                 then I_MaintNotificationTechObj._Equipment.TechnicalObjectType
                 when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc != 'EAMS_EQUI'
                 then I_MaintNotificationTechObj._FunctionalLocation.TechnicalObjectType end as eqart preserving type)                                                                          as TechnicalObjectType,

      I_MaintNotificationTechObj._LocationAccountAssignment.MaintenancePlant                                                                                                                    as MaintenancePlant, //Maintenance Plant


      // Work Center Details

      I_MaintNotificationTechObj.WorkCenterInternalID, //Work Center ID

      //      I_MaintNotificationTechObj.MaintenanceWorkCenterPlant, // Maintenance Work Center Plant

      I_MaintNotificationTechObj._LocationAccountAssignment._WorkCenter.Plant                                                                                                                   as MaintenanceWorkCenterPlant,

      I_MaintNotificationTechObj._MainWorkCenter.WorkCenter                                                                                                                                     as MainWorkCenter, // Maint Work Center From Notification


      -- Performance Changes
      // cast( I_MaintNotificationTechObj._TechnicalObject._WorkCenter.WorkCenter as gewrk )                                                                                                       as MaintenanceWorkCenter, //Main Work Center Of Tech Obj

      //      cast( case when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'

      //                 then I_MaintNotificationTechObj._Equipment._CurrentTimeSegment._LocationAccountAssignment._WorkCenter.WorkCenter

      //                 when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_FL'

      //                 then I_MaintNotificationTechObj._FunctionalLocation._LocationAccountAssignment._WorkCenter.WorkCenter end as gewrk )                                                           as MaintenanceWorkCenter,


      I_MaintNotificationTechObj._LocationAccountAssignment._WorkCenter.WorkCenter                                                                                                              as MaintenanceWorkCenter,

      I_MaintNotificationTechObj.WorkCenterTypeCode, //Work Center Type Code

      I_MaintNotificationTechObj._MainWorkCenter.Plant                                                                                                                                          as MainWorkCenterPlant, // Maint Work Center Plant From Notification

      //      I_MaintNotificationTechObj.MaintenanceWorkCenterPlant                                                                                                                                     as MainWorkCenterPlant,

      //      cast( case when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_EQUI'

      //                 then I_MaintNotificationTechObj._Equipment._CurrentTimeSegment._LocationAccountAssignment._WorkCenter.Plant

      //                 when I_MaintNotificationTechObj.TechObjIsEquipOrFuncnlLoc = 'EAMS_FL'

      //                 then I_MaintNotificationTechObj._FunctionalLocation._LocationAccountAssignment._WorkCenter.Plant end as werks_d )                                                              as MaintenanceWorkCenterPlant,


      //Generic Details

      I_MaintNotificationTechObj.LocationDescription                                                                                                                                            as LocationDescription, //  Location Description

      _NumberOfOpnNotifByTechObj.NmbrOfOpenMaintNotifications                                                                                                                                   as NmbrOfOpenMaintNotifications,

      // Performance Issue with Number of Orders(TechOnj Union) _NumberOfOpnOrderByTechObj.NumberOfOrders