I_MaintJobAndWorkItemForUser

DDL: I_MAINTJOBANDWORKITEMFORUSER Type: view_entity COMPOSITE Package: IOCF

Current Users Maintenance Jobs and Work Items

I_MaintJobAndWorkItemForUser is a Composite CDS View that provides data about "Current Users Maintenance Jobs and Work Items" in SAP S/4HANA. It reads from 2 data sources (I_BusinessUserBasic, I_MaintenanceJobAndWorkItem) and exposes 12 fields with key fields MaintenanceJobInternalID, StatusObject, ObjectType. It has 5 associations to related views. Part of development package IOCF.

Data Sources (2)

SourceAliasJoin Type
I_BusinessUserBasic BusUser inner
I_MaintenanceJobAndWorkItem I_MaintenanceJobAndWorkItem from

Associations (5)

CardinalityTargetAliasCondition
[0..1] I_EAMObjectUsrStatusWithNumber _ObjectUserStatusWithNumber _ObjectUserStatusWithNumber.StatusObject = $projection.StatusObject inner join I_BusinessUserBasic as BusUser on BusUser.UserID = $session.user
[0..1] I_PersonWorkAgreement_1 _PersonWorkAgreement _PersonWorkAgreement.PersonWorkAgreement = I_MaintenanceJobAndWorkItem.PersonResponsible
[0..1] I_EAMObjectOverallStatus _ObjectOverallStatus _ObjectOverallStatus.StatusObject = I_MaintenanceJobAndWorkItem.StatusObject
[0..*] I_EAMOvrlStatusNextViaAction _NextViaAction _NextViaAction.EAMOverallStatusProfile = $projection.eamoverallobjectstatusprofile and _NextViaAction.EAMOverallStatus = $projection.eamoverallobjectstatus
[0..1] I_WorkforcePerson _PersonResponsible _PersonResponsible.PersonExternalID = $projection.PersonResponsible

Annotations (6)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
EndUserText.label Current Users Maintenance Jobs and Work Items view
VDM.viewType #COMPOSITE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view

Fields (12)

KeyFieldSource TableSource FieldDescription
KEY MaintenanceJobInternalID I_MaintenanceJobAndWorkItem MaintenanceJobInternalID
KEY StatusObject I_MaintenanceJobAndWorkItem StatusObject
KEY ObjectType I_MaintenanceJobAndWorkItem ObjectType
PersonResponsible I_MaintenanceJobAndWorkItem PersonResponsible
StatusCode I_MaintenanceJobAndWorkItem StatusCode
EAMOverallObjectStatusProfile _ObjectOverallStatus EAMOverallObjectStatusProfile
EAMOverallObjectStatus _ObjectOverallStatus EAMOverallObjectStatus
MaintWkItmIsInConfirmationMode
EAMNextPrimaryOverallStatus
_OverallStatus _ObjectOverallStatus _OverallStatus
_NextViaAction _NextViaAction
_PersonResponsible _PersonResponsible
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Current Users Maintenance Jobs and Work Items'
@VDM.viewType: #COMPOSITE
@ObjectModel: {
   usageType.serviceQuality: #C,
   usageType.sizeCategory: #XL,
   usageType.dataClass: #TRANSACTIONAL
}

-- Selection is limited to logon user's employee ID!
@AccessControl.personalData.blocking: #('TRANSACTIONAL_DATA')

define view entity I_MaintJobAndWorkItemForUser
  as select from I_MaintenanceJobAndWorkItem
  --association [0..1] to I_EAMObjectUsrStatusWithNumber as _ObjectUserStatusWithNumber on  _ObjectUserStatusWithNumber.StatusObject = $projection.StatusObject
    inner join   I_BusinessUserBasic as BusUser on BusUser.UserID = $session.user
  association [0..1] to I_PersonWorkAgreement_1      as _PersonWorkAgreement on  _PersonWorkAgreement.PersonWorkAgreement = I_MaintenanceJobAndWorkItem.PersonResponsible
  association [0..1] to I_EAMObjectOverallStatus     as _ObjectOverallStatus on  _ObjectOverallStatus.StatusObject = I_MaintenanceJobAndWorkItem.StatusObject
  association [0..*] to I_EAMOvrlStatusNextViaAction as _NextViaAction       on  _NextViaAction.EAMOverallStatusProfile = $projection.eamoverallobjectstatusprofile
                                                                             and _NextViaAction.EAMOverallStatus        = $projection.eamoverallobjectstatus
  association [0..1] to I_WorkforcePerson            as _PersonResponsible   on  _PersonResponsible.PersonExternalID = $projection.PersonResponsible

{
  key I_MaintenanceJobAndWorkItem.MaintenanceJobInternalID,
  key I_MaintenanceJobAndWorkItem.StatusObject,
  key I_MaintenanceJobAndWorkItem.ObjectType,
      I_MaintenanceJobAndWorkItem.PersonResponsible,
      I_MaintenanceJobAndWorkItem.StatusCode,

      _ObjectOverallStatus.EAMOverallObjectStatusProfile,
      _ObjectOverallStatus.EAMOverallObjectStatus,

      _ObjectOverallStatus._ConfirmationUsage.EAMOvrlStsIsCoveredByEvent as MaintWkItmIsInConfirmationMode,
      _ObjectOverallStatus._NextPrimaryStatus.EAMNextPrimaryOverallStatus,

      _ObjectOverallStatus._OverallStatus,
      _NextViaAction,
      _PersonResponsible
}
where
  BusUser.BusinessPartner = _PersonWorkAgreement.Person