I_Employee_2

DDL: I_EMPLOYEE_2 Type: view_entity COMPOSITE Package: VDM_SHCM_EMPLOYEE

Employee

I_Employee_2 is a Composite CDS View that provides data about "Employee" in SAP S/4HANA. It reads from 2 data sources (I_BusinessPartner, P_EmployeeValidity) and exposes 38 fields with key field PersonnelNumber. It has 11 associations to related views. Part of development package VDM_SHCM_EMPLOYEE.

Data Sources (2)

SourceAliasJoin Type
I_BusinessPartner bp inner
P_EmployeeValidity EmpValidity inner

Associations (11)

CardinalityTargetAliasCondition
[0..1] I_PersonFormOfAddress _FormOfAddress $projection.FormOfAddress = _FormOfAddress.FormOfAddress
[0..1] I_Gender _Gender $projection.GenderCode = _Gender.GenderCode
[0..1] I_AcademicTitle _AcademicTitle $projection.AcademicTitle = _AcademicTitle.AcademicTitle
[0..1] I_Language _Language $projection.CorrespondenceLanguage = _Language.Language
[0..1] I_Familynameprefixtext _FamilyNamePrefix $projection.FamilyNamePrefix = _FamilyNamePrefix.FamilyNamePrefix
[0..1] I_WorkplaceAddress _WorkplaceAddress $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID
[0..*] I_Employment_2 _Employment $projection.PersonnelNumber = _Employment.PersonnelNumber
[0..1] I_Employment_2 _MainEmployment $projection.PersonnelNumber = _MainEmployment.PersonnelNumber and _MainEmployment.IsMainEmployment = 'X'
[0..*] I_EmployeeskillTags _EmployeeSkillTags $projection.PersonnelNumber = _EmployeeSkillTags.PersonnelNumber
[0..1] I_ServicePerformerFor _IsServicePerformerFor $projection.EmployeeInternalID = _IsServicePerformerFor.BusinessPartner and _IsServicePerformerFor.RoleRelationType = 'BUR025'
[0..1] I_User _User $projection.BusinessPartnerUUID = _User.BusinessPartnerUUID

Annotations (8)

NameValueLevelField
EndUserText.label Employee view
VDM.viewType #COMPOSITE view
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #REQUIRED view
ObjectModel.representativeKey PersonnelNumber view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view

Fields (38)

KeyFieldSource TableSource FieldDescription
KEY PersonnelNumber
EmployeeInternalID
Employee
ValidityStartDate
ValidityEndDate
FormOfAddress
FamilyName
GivenName
MiddleName
AdditionalFamilyName
AcademicTitle
FamilyNamePrefix
Initials
FullName
EmployeeFullName
CorrespondenceLanguage
Person
BusinessPartnerUUID
UserID _User UserID User Name
CreatedByUser
CreationDate
CreationTime
LastChangedByUser
LastChangeDate
LastChangeTime
AuthorizationGroup
IsBusinessPurposeCompleted
_FormOfAddress _FormOfAddress
_Gender _Gender
_AcademicTitle _AcademicTitle
_Language _Language
_FamilyNamePrefix _FamilyNamePrefix
_WorkplaceAddress _WorkplaceAddress
_Employment _Employment
_MainEmployment _MainEmployment
_EmployeeSkillTags _EmployeeSkillTags
_IsServicePerformerFor _IsServicePerformerFor
DataControllerSet I_BusinessPartner DataControllerSet Data Ctrlr. Set

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 I_Employee_2.
-- 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.

CREATE VIEW I_Employee_2 AS
SELECT
  cast( keymap.CentralPerson as hrobjid preserving type ) AS PersonnelNumber,
  cast( bp.BusinessPartner as bu_partner preserving type ) AS EmployeeInternalID,
  cast(upper(keymap.WorkforcePersonExternalID) as bu_id_number) AS Employee,
  cast( EmpValidity.StartDate as begdatum preserving type ) AS ValidityStartDate,
  cast( EmpValidity.EndDate as enddatum preserving type) AS ValidityEndDate,
  cast( bp.FormOfAddress as ad_title preserving type ) AS FormOfAddress,
  cast( bp.LastName as bu_namep_l preserving type ) AS FamilyName,
  cast( bp.FirstName as bu_namep_f preserving type ) AS GivenName,
  cast( bp.MiddleName as bu_namemid preserving type ) AS MiddleName,
  cast( bp.AdditionalLastName as bu_namepl2 preserving type ) AS AdditionalFamilyName,
  cast( bp.AcademicTitle as ad_title1 preserving type ) AS AcademicTitle,
  cast( bp.LastNamePrefix as ad_prefix preserving type ) AS FamilyNamePrefix,
  cast( bp.Initials as ad_inits preserving type ) AS Initials,
  cast( bp.PersonFullName as bu_name1tx preserving type ) AS FullName,
  cast( bp.PersonFullName as bu_name1tx preserving type ) AS EmployeeFullName,
  cast( bp.CorrespondenceLanguage as bu_langu_corr preserving type ) AS CorrespondenceLanguage,
  cast( bp.PersonNumber as ad_persnum preserving type ) AS Person,
  cast( bp.BusinessPartnerUUID as bu_partner_guid preserving type ) AS BusinessPartnerUUID,
  _User.UserID AS UserID,
  cast( bp.CreatedByUser as bu_crusr preserving type ) AS CreatedByUser,
  cast( bp.CreationDate as bu_crdat preserving type ) AS CreationDate,
  cast( bp.CreationTime as bu_crtim preserving type ) AS CreationTime,
  cast( bp.LastChangedByUser as bu_chusr preserving type ) AS LastChangedByUser,
  cast( bp.LastChangeDate as bu_chdat preserving type ) AS LastChangeDate,
  cast( bp.LastChangeTime as bu_chtim preserving type ) AS LastChangeTime,
  cast( bp.AuthorizationGroup as bu_augrp preserving type ) AS AuthorizationGroup,
  cast( bp.IsBusinessPurposeCompleted as bu_xpcpt preserving type ) AS IsBusinessPurposeCompleted,
  bp.DataControllerSet AS DataControllerSet
INNER JOIN P_EmployeeValidity AS EmpValidity ON /* join condition not captured in parsed metadata */
INNER JOIN I_BusinessPartner AS bp ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_PersonFormOfAddress AS _FormOfAddress ON FormOfAddress = _FormOfAddress.FormOfAddress  -- association [0..1]
LEFT OUTER JOIN I_Gender AS _Gender ON GenderCode = _Gender.GenderCode  -- association [0..1]
LEFT OUTER JOIN I_AcademicTitle AS _AcademicTitle ON AcademicTitle = _AcademicTitle.AcademicTitle  -- association [0..1]
LEFT OUTER JOIN I_Language AS _Language ON CorrespondenceLanguage = _Language.Language  -- association [0..1]
LEFT OUTER JOIN I_Familynameprefixtext AS _FamilyNamePrefix ON FamilyNamePrefix = _FamilyNamePrefix.FamilyNamePrefix  -- association [0..1]
LEFT OUTER JOIN I_WorkplaceAddress AS _WorkplaceAddress ON BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID  -- association [0..1]
LEFT OUTER JOIN I_Employment_2 AS _Employment ON PersonnelNumber = _Employment.PersonnelNumber  -- association [0..*]
LEFT OUTER JOIN I_Employment_2 AS _MainEmployment ON PersonnelNumber = _MainEmployment.PersonnelNumber AND _MainEmployment.IsMainEmployment = 'X'  -- association [0..1]
LEFT OUTER JOIN I_EmployeeskillTags AS _EmployeeSkillTags ON PersonnelNumber = _EmployeeSkillTags.PersonnelNumber  -- association [0..*]
LEFT OUTER JOIN I_ServicePerformerFor AS _IsServicePerformerFor ON EmployeeInternalID = _IsServicePerformerFor.BusinessPartner AND _IsServicePerformerFor.RoleRelationType = 'BUR025'  -- association [0..1]
LEFT OUTER JOIN I_User AS _User ON BusinessPartnerUUID = _User.BusinessPartnerUUID  -- association [0..1]
;