I_WORKASSIGNMENT

CDS View

Work Assignments

I_WORKASSIGNMENT is a CDS View in S/4HANA. Work Assignments. It contains 19 fields. 9 CDS views read from this table.

CDS Views using this table (9)

ViewTypeJoinVDMDescription
C_EAMPersonWorkAgreementVH view_entity from CONSUMPTION Person Work Agreement
C_RSHPersonCalendar view_entity from CONSUMPTION Calendar for a Person in RSH EAM
C_SrcgProjPurchaserRespVH view inner CONSUMPTION Purchaser Responsible for Srcg Project
I_EngmntProjWorkAssignment view_entity from COMPOSITE Basic details of Work Assignment
I_WorkAssignmentByManager view_entity inner COMPOSITE Work assignments under a manager
P_EngmntProjStfngSrchByPerson view from CONSUMPTION Employee Person Search
P_EngmntProjStfngSrchByRole view inner CONSUMPTION Employee Role based search
P_EngmntProjStfngSrchBySkill view inner CONSUMPTION Employee Role Skill search
R_RSHPersonTP view_entity from TRANSACTIONAL Person in RSH EAM TP

Fields (19)

KeyField CDS FieldsUsed in Views
KEY Person Person 5
KEY WorkAssignment PersonWorkAgreement,WorkAssignment 4
_BusinessPartner _BusinessPartner 1
AuthorizationGroup AuthorizationGroup 4
DataController1 DataController1 1
DataController10 DataController10 1
DataController2 DataController2 1
DataController3 DataController3 1
DataController4 DataController4 1
DataController5 DataController5 1
DataController6 DataController6 1
DataController7 DataController7 1
DataController8 DataController8 1
DataController9 DataController9 1
DataControllerSet DataControllerSet 1
IsBlocked IsBlocked 4
IsBusinessPurposeCompleted IsBusinessPurposeCompleted 1
PersonFullName EmployeeFullName,PersonFullName 5
WorkAssignmentExternalID WorkAssignmentExternalID 3
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@ObjectModel.modelingPattern: #NONE
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@Metadata.ignorePropagatedAnnotations:true
@EndUserText.label: 'Work Assignments'
@Consumption.dbHints:[ 'USE_HEX_PLAN' ]
define view entity I_WorkAssignment
  as select from wfd_d_keymap         as keymap
    inner join   wfd_d_assgmt         as assgmt          on keymap.workforce_assgmt_id = assgmt.workforce_assgmt_id
    inner join   I_BusinessPartner    as BusinessPartner on  keymap.business_partner_id              = BusinessPartner.BusinessPartner
                                                         and BusinessPartner.BusinessPartnerCategory = '1'
//    inner join   P_WFD_TF_DATA_SWITCH as switch          on switch.WFDSwitch = 'C'

  association [1]    to I_BusinessPartner            as _BusinessPartner  on $projection.Person = _BusinessPartner.BusinessPartner
  association [1]    to I_WorkforcePerson            as _WorkforcePerson  on $projection.Person = _WorkforcePerson.Person
  association [0..1] to I_WorkplaceAddress           as _WorkplaceAddress on $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID
  association [1..*] to I_PersonWorkAgrmtOrglDetails as _OrglDets         on _OrglDets.PersonWorkAgreement = $projection.WorkAssignment
{
  key  keymap.workforce_assgmt_id                 as WorkAssignment,
       BusinessPartner.BusinessPartner            as Person,
       keymap.person_id_external                  as WorkforcePersonExternalID,
       cast(keymap.user_id as wfd_assgmt_ext_id preserving type) as WorkAssignmentExternalID,
       @Semantics.text
       BusinessPartner.PersonFullName,
       BusinessPartner.AuthorizationGroup,
       BusinessPartner.BusinessPartnerUUID,
       @Semantics.booleanIndicator:true
       BusinessPartner.IsBusinessPurposeCompleted as IsBusinessPurposeCompleted,
       keymap.block_ind                           as IsBlocked,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataControllerSet          as DataControllerSet,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController1            as DataController1,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController2            as DataController2,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController3            as DataController3,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController4            as DataController4,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController5            as DataController5,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController6            as DataController6,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController7            as DataController7,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController8            as DataController8,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController9            as DataController9,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController10           as DataController10,

       _BusinessPartner,
       _WorkforcePerson,
       _WorkplaceAddress,
       _OrglDets
}
/*
define view entity I_WorkAssignment
  as select from wfd_d_keymap         as keymap
    inner join   wfd_d_assgmt         as assgmt          on keymap.workforce_assgmt_id = assgmt.workforce_assgmt_id
    inner join   I_BusinessPartner    as BusinessPartner on  keymap.business_partner_id              = BusinessPartner.BusinessPartner
                                                         and BusinessPartner.BusinessPartnerCategory = '1'
//    inner join   P_WFD_TF_DATA_SWITCH as switch          on switch.WFDSwitch = 'C'

  association [1]    to I_BusinessPartner            as _BusinessPartner  on $projection.Person = _BusinessPartner.BusinessPartner
  association [1]    to I_WorkforcePerson            as _WorkforcePerson  on $projection.Person = _WorkforcePerson.Person
  association [0..1] to I_WorkplaceAddress           as _WorkplaceAddress on $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID
  association [1..*] to I_PersonWorkAgrmtOrglDetails as _OrglDets         on _OrglDets.PersonWorkAgreement = $projection.WorkAssignment
{
  key  keymap.workforce_assgmt_id                 as WorkAssignment,
       BusinessPartner.BusinessPartner            as Person,
       keymap.person_id_external                  as WorkforcePersonExternalID,
       @Semantics.text
       BusinessPartner.PersonFullName,
       BusinessPartner.AuthorizationGroup,
       BusinessPartner.BusinessPartnerUUID,
       @Semantics.booleanIndicator:true
       BusinessPartner.IsBusinessPurposeCompleted as IsBusinessPurposeCompleted,
       keymap.block_ind                           as IsBlocked,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataControllerSet          as DataControllerSet,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController1            as DataController1,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController2            as DataController2,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController3            as DataController3,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController4            as DataController4,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController5            as DataController5,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController6            as DataController6,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController7            as DataController7,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController8            as DataController8,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController9            as DataController9,
       @Consumption.hidden:true
       @UI.hidden:true
       BusinessPartner.DataController10           as DataController10,

       _BusinessPartner,
       _WorkforcePerson,
       _WorkplaceAddress,
       _OrglDets
}

union all

select from  P_O_HrPersWrkAgrmt        as HrPersonWorkAgreement
  inner join P_O_PersWrkAgrmtToPartner as PersonWrkAgrmtToPartner on PersonWrkAgrmtToPartner.PersonWorkAgreement = HrPersonWorkAgreement.PersonWorkAgreement
  inner join I_BusinessPartner         as BusinessPartner         on  BusinessPartner.BusinessPartner         = PersonWrkAgrmtToPartner.Person
                                                                  and BusinessPartner.BusinessPartnerCategory = '1'
  inner join I_BuPaIdentification      as BPIdentifier            on PersonWrkAgrmtToPartner.Person      = BPIdentifier.BusinessPartner
                                                                  and(
                                                                    BPIdentifier.BPIdentificationType    = 'HCM001' // HCM001 - Employee ID

                                                                    or BPIdentifier.BPIdentificationType = 'HCM030' // HCM030 - Service Agent

                                                                    or BPIdentifier.BPIdentificationType = 'HCM031'
                                                                  )                                                 // HCM031 - Freelancer

  inner join P_WFD_TF_DATA_SWITCH      as switch                  on switch.WFDSwitch = 'O'
association [1]    to I_BusinessPartner            as _BusinessPartner  on $projection.Person = _BusinessPartner.BusinessPartner
association [1]    to I_WorkforcePerson            as _WorkforcePerson  on $projection.Person = _WorkforcePerson.Person
association [0..1] to I_WorkplaceAddress           as _WorkplaceAddress on $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID
association [1..*] to I_PersonWorkAgrmtOrglDetails as _OrglDets         on _OrglDets.PersonWorkAgreement = $projection.WorkAssignment
{
  key  HrPersonWorkAgreement.PersonWorkAgreement  as WorkAssignment,
       BusinessPartner.BusinessPartner            as Person,
       BPIdentifier.BPIdentificationNumber        as WorkforcePersonExternalID,
       BusinessPartner.PersonFullName,
       BusinessPartner.AuthorizationGroup,
       BusinessPartner.BusinessPartnerUUID,
       BusinessPartner.IsBusinessPurposeCompleted as IsBusinessPurposeCompleted,
       ' '                                        as IsBlocked,
       //       @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataControllerSet          as DataControllerSet,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController1            as DataController1,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController2            as DataController2,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController3            as DataController3,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController4            as DataController4,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController5            as DataController5,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController6            as DataController6,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController7            as DataController7,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController8            as DataController8,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController9            as DataController9,
       //        @Consumption.hidden:true

       //        @UI.hidden:true

       BusinessPartner.DataController10           as DataController10,

       _BusinessPartner,
       _WorkforcePerson,
       _WorkplaceAddress,
       _OrglDets
}*/