P_Empfactsheet_Employee

DDL: P_EMPFACTSHEET_EMPLOYEE SQL: PEMPFSEMPLOYEE Type: view CONSUMPTION Package: VDM_SHCM_EMPLOYEE

Employee Factsheet CDS - Employee

P_Empfactsheet_Employee is a Consumption CDS View that provides data about "Employee Factsheet CDS - Employee" in SAP S/4HANA. It reads from 1 data source (I_Employment) and exposes 66 fields with key field EmployeeExtID. It has 12 associations to related views. Part of development package VDM_SHCM_EMPLOYEE.

Data Sources (1)

SourceAliasJoin Type
I_Employment employment left_outer

Associations (12)

CardinalityTargetAliasCondition
[0..*] P_Empfactsheet_Projects _Projects EE.PersonnelNumber = _Projects.PersonnelNumber
[0..*] P_Empfactsheet_Tags _EmployeeSkillTags EE.PersonnelNumber = _EmployeeSkillTags.PersonnelNumber and _EmployeeSkillTags.EmployeeSkillTagType = 'U'
[0..*] P_Empfactsheet_Contrinfo _ServiceCostLevel EE.PersonnelNumber = _ServiceCostLevel.PersonnelNumber and _ServiceCostLevel.IsMainEmployment = 'X'
[0..1] P_EmpDetailsCurrent _ServiceCostLevelCurrent EE.PersonnelNumber = _ServiceCostLevelCurrent.PersonnelNumber and _ServiceCostLevelCurrent.IsMainEmployment = 'X'
[0..*] P_EmpDetailsCurrent _EmploymentCurrent EE.PersonnelNumber = _EmploymentCurrent.PersonnelNumber
[0..1] I_EmployOrgDet _MainEmploymentDetails EE.PersonnelNumber = _MainEmploymentDetails.PersonnelNumber and _MainEmploymentDetails.StartDate <= $session.system_date and _MainEmploymentDetails.EndDate >= $session.system_date and _MainEmploymentDetails.IsMainEmployment = 'X'
[0..1] P_Employeeorgdet _EmploymentDetails EE.PersonnelNumber = _EmploymentDetails.PersonnelNumber and _EmploymentDetails.StartDate <= $session.system_date and _EmploymentDetails.EndDate >= $session.system_date and _EmploymentDetails.IsMainEmployment = 'X'
[0..1] I_Supplier _Supplier $projection.Supplier = _Supplier.Supplier
[0..*] I_WorkplaceAddress _WorkplaceAddressInfo EE.BusinessPartnerUUID = _WorkplaceAddressInfo.BusinessPartnerUUID
[0..1] I_WorkplaceAddress WorkplaceAddressInfocurrent EE.BusinessPartnerUUID = WorkplaceAddressInfocurrent.BusinessPartnerUUID and WorkplaceAddressInfocurrent.ValidityStartDate <= $session.system_date and WorkplaceAddressInfocurrent.ValidityEndDate >= $session.system_date
[0..1] I_EmployeePayment _PaymentExists EE.PersonnelNumber = _PaymentExists.PersonnelNumber
[0..*] I_EmployeePayment _PaymentInformation EE.PersonnelNumber = _PaymentInformation.PersonnelNumber

Annotations (25)

NameValueLevelField
AbapCatalog.sqlViewName PEMPFSEMPLOYEE view
ClientDependent true view
VDM.private true view
VDM.viewType #CONSUMPTION view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Employee Factsheet CDS - Employee view
Search.searchable false view
UI.headerInfo.typeName Employee view
UI.headerInfo.typeName_AsOTR 40F2E93067D51EE594A745E2D0DA3356 view
UI.headerInfo.typeNamePlural Employees view
UI.headerInfo.typeNamePlural_AsOTR 40F2E93067D51EE594A745E2D0DA3356 view
UI.headerInfo.imageUrl EmployeeImageURL view
UI.headerInfo.title.type #STANDARD view
UI.headerInfo.title.value EmployeeFullName view
UI.headerInfo.description.value HeaderInfo view
UI.badge.headLine.type #STANDARD view
UI.badge.headLine.value HeaderInfo view
UI.badge.title.type #STANDARD view
UI.badge.title.value EmployeeFullName view
UI.badge.imageUrl EmployeeImageURL view
UI.badge.mainInfo.type #STANDARD view
UI.badge.mainInfo.value HeaderInfo view
UI.badge.secondaryInfo.type #STANDARD view
UI.badge.secondaryInfo.value AcademicTitle view

Fields (66)

KeyFieldSource TableSource FieldDescription
KEY EmployeeExtID EE Employee Object ID
Employee EE Employee Object ID
currtimestmp
EmployeeInternalID EE EmployeeInternalID Busn. Partner
ValidityStartDate EE ValidityStartDate Validity Start Date
ValidityEndDate EE ValidityEndDate ValidTo
FormOfAddress EE FormOfAddress Title Key
FamilyName EE FamilyName
GivenName EE GivenName
MiddleName EE MiddleName Middle Name
AdditionalFamilyName EE AdditionalFamilyName
FamilyNamePrefix EE FamilyNamePrefix
Initials EE Initials Initials
CorrespondenceLanguage EE CorrespondenceLanguage Language
GenderCode EE GenderCode
UserID EE UserID User Name
Person EE Person Person/ Farm/ Field
BusinessPartnerUUID EE BusinessPartnerUUID UUID
system_date
BusinessPartnerRole EE BusinessPartnerRole BP Role
Supplier
SupplierText
EmployeeText
MainEmploymentInternalID I_Employment EmploymentInternalID WorkForce Assgmt ID
ContentType
ControllingArea
ServiceCostLevel _ServiceCostLevelCurrent ServiceCostLevel Service Cost Level
CostLevel_fc
_FormOfAddress EE _FormOfAddress
_Gender EE _Gender
_AcademicTitle EE _AcademicTitle
_FamilyNamePrefix EE _FamilyNamePrefix
_Language EE _Language
_Employment EE _Employment
_HomeAddress EE _HomeAddress
_WorkplaceAddress EE _WorkplaceAddress
_Payment _Payment
PersonnelNumber EE PersonnelNumber Personnel No.
currentdate
CompanyName
ManagerFullName
EmploymentStatus _ServiceCostLevelCurrent EmploymentStatus
_Projects _Projects
_EmployeeSkillTags _EmployeeSkillTags
_ServiceCostLevel _ServiceCostLevel
HeaderInfo
HeaderDescription EE GivenName
Costcenter _EmploymentDetails CostCenter Cost Center
ServiceCostLevelName _ServiceCostLevelCurrent ServiceCostLevelName
AcademicTitle EE AcademicTitle Academic Title
EmployeeFullName EE EmployeeFullName
EmployeeImageURL EE EmployeeImageURL
Job _EmploymentDetails Job Undefined range (can be used for patch levels)
Department _EmploymentDetails OrganizationalUnit Org. Unit ID
CompanyCode
ManagerEmployee
CostLevel
SupplierTxt
MblNormalizedPhoneNumber WorkplaceAddressInfocurrent MblNormalizedPhoneNumber
NormalizedPhoneNumber WorkplaceAddressInfocurrent NormalizedPhoneNumber
DefaultEmailAddress WorkplaceAddressInfocurrent DefaultEmailAddress
_ServiceCostLevelCurrent _ServiceCostLevelCurrent
PaymentExistsText
_PaymentInformation _PaymentInformation
Payment_fc
PaymentApplicable

Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.

-- Derived SQL interpretation of CDS view P_Empfactsheet_Employee.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- SQL view name: PEMPFSEMPLOYEE

CREATE VIEW P_Empfactsheet_Employee AS
SELECT
  EE.Employee AS EmployeeExtID,
  EE.Employee AS Employee,
  tstmp_current_utctimestamp() AS currtimestmp,
  EE.EmployeeInternalID AS EmployeeInternalID,
  EE.ValidityStartDate AS ValidityStartDate,
  EE.ValidityEndDate AS ValidityEndDate,
  EE.FormOfAddress AS FormOfAddress,
  EE.FamilyName AS FamilyName,
  EE.GivenName AS GivenName,
  EE.MiddleName AS MiddleName,
  EE.AdditionalFamilyName AS AdditionalFamilyName,
  EE.FamilyNamePrefix AS FamilyNamePrefix,
  EE.Initials AS Initials,
  EE.CorrespondenceLanguage AS CorrespondenceLanguage,
  EE.GenderCode AS GenderCode,
  EE.UserID AS UserID,
  EE.Person AS Person,
  EE.BusinessPartnerUUID AS BusinessPartnerUUID,
  EE.BusinessPartnerRole AS BusinessPartnerRole,
  EE._IsServicePerformerFor.Supplier AS Supplier,
  lpad('',80,'x') AS SupplierText,
  lpad('',80,'x') AS EmployeeText,
  employment.EmploymentInternalID AS MainEmploymentInternalID,
  'image/jpeg' AS ContentType,
  _MainEmploymentDetails._CostCenter.ControllingArea AS ControllingArea,
  _ServiceCostLevelCurrent.ServiceCostLevel AS ServiceCostLevel,
  cast( 0 as abap.int1) AS CostLevel_fc,
  EE._FormOfAddress AS _FormOfAddress,
  EE._Gender AS _Gender,
  EE._AcademicTitle AS _AcademicTitle,
  EE._FamilyNamePrefix AS _FamilyNamePrefix,
  EE._Language AS _Language,
  EE._Employment AS _Employment,
  EE._HomeAddress AS _HomeAddress,
  EE._WorkplaceAddress AS _WorkplaceAddress,
  EE.PersonnelNumber AS PersonnelNumber,
  substring( cast(tstmp_current_utctimestamp() as abap.char( 17 ) ) , 1, 8 ) AS currentdate,
  _MainEmploymentDetails._CompanyCode.CompanyCodeName AS CompanyName,
  lpad('',80,' ') AS ManagerFullName,
  _ServiceCostLevelCurrent.EmploymentStatus AS EmploymentStatus,
  lpad('',410,'x') AS HeaderInfo,
  EE.GivenName AS HeaderDescription,
  _EmploymentDetails.CostCenter AS Costcenter,
  _ServiceCostLevelCurrent.ServiceCostLevelName AS ServiceCostLevelName,
  EE.AcademicTitle AS AcademicTitle,
  EE.EmployeeFullName AS EmployeeFullName,
  EE.EmployeeImageURL AS EmployeeImageURL,
  _EmploymentDetails.Job AS Job,
  _EmploymentDetails.OrganizationalUnit AS Department,
  _MainEmploymentDetails._CompanyCode.CompanyCode AS CompanyCode,
  lpad('',60,'x') AS ManagerEmployee,
  lpad('',40,'x') AS CostLevel,
  lpad('',95,'x') AS SupplierTxt,
  WorkplaceAddressInfocurrent.MblNormalizedPhoneNumber AS MblNormalizedPhoneNumber,
  WorkplaceAddressInfocurrent.NormalizedPhoneNumber AS NormalizedPhoneNumber,
  WorkplaceAddressInfocurrent.DefaultEmailAddress AS DefaultEmailAddress,
  lpad('',80,'x') AS PaymentExistsText,
  cast( ' ' as boolean ) AS Payment_fc,
  cast( 0 as abap.int1) AS PaymentApplicable
LEFT OUTER JOIN I_Employment AS employment ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN P_Empfactsheet_Projects AS _Projects ON EE.PersonnelNumber = _Projects.PersonnelNumber  -- association [0..*]
LEFT OUTER JOIN P_Empfactsheet_Tags AS _EmployeeSkillTags ON EE.PersonnelNumber = _EmployeeSkillTags.PersonnelNumber AND _EmployeeSkillTags.EmployeeSkillTagType = 'U'  -- association [0..*]
LEFT OUTER JOIN P_Empfactsheet_Contrinfo AS _ServiceCostLevel ON EE.PersonnelNumber = _ServiceCostLevel.PersonnelNumber AND _ServiceCostLevel.IsMainEmployment = 'X'  -- association [0..*]
LEFT OUTER JOIN P_EmpDetailsCurrent AS _ServiceCostLevelCurrent ON EE.PersonnelNumber = _ServiceCostLevelCurrent.PersonnelNumber AND _ServiceCostLevelCurrent.IsMainEmployment = 'X'  -- association [0..1]
LEFT OUTER JOIN P_EmpDetailsCurrent AS _EmploymentCurrent ON EE.PersonnelNumber = _EmploymentCurrent.PersonnelNumber  -- association [0..*]
LEFT OUTER JOIN I_EmployOrgDet AS _MainEmploymentDetails ON EE.PersonnelNumber = _MainEmploymentDetails.PersonnelNumber AND _MainEmploymentDetails.StartDate <= $session.system_date AND _MainEmploymentDetails.EndDate >= $session.system_date AND _MainEmploymentDetails.IsMainEmployment = 'X'  -- association [0..1]
LEFT OUTER JOIN P_Employeeorgdet AS _EmploymentDetails ON EE.PersonnelNumber = _EmploymentDetails.PersonnelNumber AND _EmploymentDetails.StartDate <= $session.system_date AND _EmploymentDetails.EndDate >= $session.system_date AND _EmploymentDetails.IsMainEmployment = 'X'  -- association [0..1]
LEFT OUTER JOIN I_Supplier AS _Supplier ON Supplier = _Supplier.Supplier  -- association [0..1]
LEFT OUTER JOIN I_WorkplaceAddress AS _WorkplaceAddressInfo ON EE.BusinessPartnerUUID = _WorkplaceAddressInfo.BusinessPartnerUUID  -- association [0..*]
LEFT OUTER JOIN I_WorkplaceAddress AS WorkplaceAddressInfocurrent ON EE.BusinessPartnerUUID = WorkplaceAddressInfocurrent.BusinessPartnerUUID AND WorkplaceAddressInfocurrent.ValidityStartDate <= $session.system_date AND WorkplaceAddressInfocurrent.ValidityEndDate >= $session.system_date  -- association [0..1]
LEFT OUTER JOIN I_EmployeePayment AS _PaymentExists ON EE.PersonnelNumber = _PaymentExists.PersonnelNumber  -- association [0..1]
LEFT OUTER JOIN I_EmployeePayment AS _PaymentInformation ON EE.PersonnelNumber = _PaymentInformation.PersonnelNumber  -- association [0..*]
;