R_WorkforcePersonFactSheet

DDL: R_WORKFORCEPERSONFACTSHEET Type: view_entity COMPOSITE Package: WFD_WORKER_FACTSHEET_BL

Worker Data

R_WorkforcePersonFactSheet is a Composite CDS View that provides data about "Worker Data" in SAP S/4HANA. It reads from 1 data source (R_WorkforcePerson) and exposes 53 fields with key field PersonUUID. It has 8 associations to related views. Part of development package WFD_WORKER_FACTSHEET_BL.

Data Sources (1)

SourceAliasJoin Type
R_WorkforcePerson R_WorkforcePerson from

Associations (8)

CardinalityTargetAliasCondition
[0..1] R_WorkerImageURL _EmployeeImageURL $projection.Person = _EmployeeImageURL.Person and $projection.PersonExternalID = _EmployeeImageURL.WorkforcePersonExternalID
[0..1] E_BP_D _BPExtension $projection.Person = _BPExtension.BusinessPartner
[0..*] R_WorkforcePersonTag _WorkforcePersonTag
[0..*] R_WorkAssignment _WorkAssignment
[1..*] R_WorkforcePersonType _BPUsrRole
[0..*] R_WorkforcePersonPrvtAddress _WorkforcePersonAddress
[0..1] R_WorkforcePersonSummary _WorkforcePersonSummary
[0..*] R_WorkAssignmentListSummary _WorkAssignmentListSummary

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
EndUserText.label Worker Data view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view

Fields (53)

KeyFieldSource TableSource FieldDescription
KEY PersonUUID R_WorkforcePerson PersonUUID
PersonExternalID R_WorkforcePerson PersonExternalID
Person R_WorkforcePerson Person
FirstName R_WorkforcePerson FirstName
LastName R_WorkforcePerson LastName
PersonFullName R_WorkforcePerson PersonFullName
AuthorizationGroup R_WorkforcePerson AuthorizationGroup
CorrespondenceLanguage R_WorkforcePerson CorrespondenceLanguage
FormOfAddress R_WorkforcePerson FormOfAddress
IsBusinessPurposeCompleted R_WorkforcePerson IsBusinessPurposeCompleted
LastChangeDateTime R_WorkforcePerson LastChangeDateTime
EmailAddress R_WorkforcePerson EmailAddress
MobilePhoneNumber R_WorkforcePerson MobilePhoneNumber
MblPhoneDestinationLocCountry R_WorkforcePerson MblPhoneDestinationLocCountry
PhoneNumber R_WorkforcePerson PhoneNumber
PhoneNumberExtension R_WorkforcePerson PhoneNumberExtension
DestinationLocationCountry R_WorkforcePerson DestinationLocationCountry
MblNormalizedPhoneNumber
NormalizedPhoneNumber
UserID R_WorkforcePerson UserID
AcademicTitle R_WorkforcePerson AcademicTitle
AcademicTitle2 R_WorkforcePerson AcademicTitle2
LastNamePrefix R_WorkforcePerson LastNamePrefix
LastNameSecondPrefix R_WorkforcePerson LastNameSecondPrefix
BusinessPartnerSupplementName R_WorkforcePerson BusinessPartnerSupplementName
AdditionalLastName R_WorkforcePerson AdditionalLastName
BusinessPartnerBirthName R_WorkforcePerson BusinessPartnerBirthName
BusinessPartnerNicknameLabel R_WorkforcePerson BusinessPartnerNicknameLabel
MiddleName R_WorkforcePerson MiddleName
Initials R_WorkforcePerson Initials
WorkforcePersonImageURL _EmployeeImageURL WorkforcePersonImageURL
IsBlocked WorkerStatus IsBlocked
WorkerIsInactive WorkerStatus WorkerIsInactive
WorkforcePersonEntrySource R_WorkforcePerson WorkforcePersonEntrySource
DataControllerSet R_WorkforcePerson DataControllerSet
DataController1 R_WorkforcePerson DataController1
DataController2 R_WorkforcePerson DataController2
DataController3 R_WorkforcePerson DataController3
DataController4 R_WorkforcePerson DataController4
DataController5 R_WorkforcePerson DataController5
DataController6 R_WorkforcePerson DataController6
DataController7 R_WorkforcePerson DataController7
DataController8 R_WorkforcePerson DataController8
DataController9 R_WorkforcePerson DataController9
DataController10 R_WorkforcePerson DataController10
_EmployeeImageURL _EmployeeImageURL
_WorkforcePersonTag _WorkforcePersonTag
_WorkAssignment _WorkAssignment
_BPUsrRole _BPUsrRole
_WorkforcePersonAddress _WorkforcePersonAddress
_WorkforcePersonSummary _WorkforcePersonSummary
_WorkAssignmentListSummary _WorkAssignmentListSummary
_EntrySourceText R_WorkforcePerson _EntrySourceText
//@AbapCatalog.viewEnhancementCategory: [#NONE]

@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Worker Data'
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #SAP_INTERNAL_API
}
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #L,
  dataClass: #MIXED
}
@Consumption.dbHints:[ 'USE_HEX_PLAN' ]

define root view entity R_WorkforcePersonFactSheet
  as select from           R_WorkforcePerson
    left outer to one join I_WorkerStatus as WorkerStatus on R_WorkforcePerson.PersonUUID = WorkerStatus.BusinessPartnerUUID
  //    left outer to one join I_WorkerStatus as WorkerStatus on R_WorkforcePerson.Person = WorkerStatus.BusinessPartner

  //   left outer to one join I_InactiveWorker as _InactiveWorker on R_WorkforcePerson.Person = _InactiveWorker.BusinessPartner

  //   left outer to one join I_BlockedWorker  as _BlockedWorker  on R_WorkforcePerson.Person = _BlockedWorker.BusinessPartner

  //composition of target_data_source_name as _association_name

  composition [0..*] of R_WorkforcePersonTag         as _WorkforcePersonTag
  composition [0..*] of R_WorkAssignment             as _WorkAssignment
  composition [1..*] of R_WorkforcePersonType        as _BPUsrRole
  composition [0..*] of R_WorkforcePersonPrvtAddress as _WorkforcePersonAddress
  composition [0..1] of R_WorkforcePersonSummary     as _WorkforcePersonSummary
//  composition [0..1] of R_WorkAssignmentSummary      as _WorkAssignmentSummary

  composition [0..*] of R_WorkAssignmentListSummary  as _WorkAssignmentListSummary
  //  association [0..1] to I_WorkerImageURL      as _EmployeeImageURL on  $projection.Person           = _EmployeeImageURL.Person

  association [0..1] to R_WorkerImageURL             as _EmployeeImageURL on  $projection.Person           = _EmployeeImageURL.Person
                                                                          and $projection.PersonExternalID = _EmployeeImageURL.WorkforcePersonExternalID
  association [0..1] to E_BP_D                       as _BPExtension      on  $projection.Person = _BPExtension.BusinessPartner
  //  association [0..1] to I_WorkforcePersonImageURL as _WorkforcePersonImageURL on $projection.Person = _WorkforcePersonImageURL.Person

{
  key R_WorkforcePerson.PersonUUID,
      R_WorkforcePerson.PersonExternalID,
      R_WorkforcePerson.Person,
      R_WorkforcePerson.FirstName,
      R_WorkforcePerson.LastName,
      R_WorkforcePerson.PersonFullName,
      R_WorkforcePerson.AuthorizationGroup,
      R_WorkforcePerson.CorrespondenceLanguage,
      R_WorkforcePerson.FormOfAddress,
      @Semantics.booleanIndicator
      R_WorkforcePerson.IsBusinessPurposeCompleted,
      R_WorkforcePerson.LastChangeDateTime,
      R_WorkforcePerson.EmailAddress,
      R_WorkforcePerson.MobilePhoneNumber,
      R_WorkforcePerson.MblPhoneDestinationLocCountry,
      R_WorkforcePerson.PhoneNumber,
      R_WorkforcePerson.PhoneNumberExtension,
      R_WorkforcePerson.DestinationLocationCountry,
      R_WorkforcePerson._WorkplaceAddress.MblNormalizedPhoneNumber,
      R_WorkforcePerson._WorkplaceAddress.NormalizedPhoneNumber,
      R_WorkforcePerson.UserID,
      R_WorkforcePerson.AcademicTitle,
      R_WorkforcePerson.AcademicTitle2,
      R_WorkforcePerson.LastNamePrefix,
      R_WorkforcePerson.LastNameSecondPrefix,
      R_WorkforcePerson.BusinessPartnerSupplementName,
      R_WorkforcePerson.AdditionalLastName,
      R_WorkforcePerson.BusinessPartnerBirthName,
      R_WorkforcePerson.BusinessPartnerNicknameLabel,
      R_WorkforcePerson.MiddleName,
      R_WorkforcePerson.Initials,
      // R_WorkforcePerson.BusinessPartnerRole,

      _EmployeeImageURL.WorkforcePersonImageURL as WorkforcePersonImageURL,
      @Semantics.booleanIndicator
      //    _BlockedWorker.IsBlocked                  as IsBlocked,

      WorkerStatus.IsBlocked                    as IsBlocked,
      @Semantics.booleanIndicator
      //    _InactiveWorker.WorkerIsInactive          as WorkerIsInactive,

      WorkerStatus.WorkerIsInactive             as WorkerIsInactive,
      R_WorkforcePerson.WorkforcePersonEntrySource,
      R_WorkforcePerson.DataControllerSet       as DataControllerSet,
      R_WorkforcePerson.DataController1         as DataController1,
      R_WorkforcePerson.DataController2         as DataController2,
      R_WorkforcePerson.DataController3         as DataController3,
      R_WorkforcePerson.DataController4         as DataController4,
      R_WorkforcePerson.DataController5         as DataController5,
      R_WorkforcePerson.DataController6         as DataController6,
      R_WorkforcePerson.DataController7         as DataController7,
      R_WorkforcePerson.DataController8         as DataController8,
      R_WorkforcePerson.DataController9         as DataController9,
      R_WorkforcePerson.DataController10        as DataController10,

      // _BPUsrRole._BPUsrRoleText.BusinessPartnerRoleShortName,

      //      _EmployeeImageURL.WorkforcePersonImageURL as WorkforcePersonImageURL,

      _EmployeeImageURL,
      _WorkforcePersonTag,
      _WorkAssignment,
      _BPUsrRole,
      _WorkforcePersonAddress,
      _WorkforcePersonSummary,
//      _WorkAssignmentSummary,

      _WorkAssignmentListSummary,
      R_WorkforcePerson._EntrySourceText
      //  R_WorkforcePerson._CorrespondenceLanguage,

      // R_WorkforcePerson._FormOfAddressText,

      //      R_WorkforcePerson._BusPartPrefixLastName,

      //      R_WorkforcePerson._BusPartPrefixLastNameSecond,

      //      R_WorkforcePerson._NameSupplementText,

      //   R_WorkforcePerson._AcademicTitle1,

      // R_WorkforcePerson._AcademicTitle2,

      //  R_WorkforcePerson._BPUsrRoleLatest,

      //  R_WorkforcePerson._WorkplaceAddress

}