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.
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 ASSELECTcast( 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
INNERJOIN P_EmployeeValidity AS EmpValidity ON /* join condition not captured in parsed metadata */
INNERJOIN I_BusinessPartner AS bp ON /* join condition not captured in parsed metadata */
LEFTOUTERJOIN I_PersonFormOfAddress AS _FormOfAddress ON FormOfAddress = _FormOfAddress.FormOfAddress -- association [0..1]LEFTOUTERJOIN I_Gender AS _Gender ON GenderCode = _Gender.GenderCode -- association [0..1]LEFTOUTERJOIN I_AcademicTitle AS _AcademicTitle ON AcademicTitle = _AcademicTitle.AcademicTitle -- association [0..1]LEFTOUTERJOIN I_Language AS _Language ON CorrespondenceLanguage = _Language.Language -- association [0..1]LEFTOUTERJOIN I_Familynameprefixtext AS _FamilyNamePrefix ON FamilyNamePrefix = _FamilyNamePrefix.FamilyNamePrefix -- association [0..1]LEFTOUTERJOIN I_WorkplaceAddress AS _WorkplaceAddress ON BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID -- association [0..1]LEFTOUTERJOIN I_Employment_2 AS _Employment ON PersonnelNumber = _Employment.PersonnelNumber -- association [0..*]LEFTOUTERJOIN I_Employment_2 AS _MainEmployment ON PersonnelNumber = _MainEmployment.PersonnelNumber AND _MainEmployment.IsMainEmployment = 'X' -- association [0..1]LEFTOUTERJOIN I_EmployeeskillTags AS _EmployeeSkillTags ON PersonnelNumber = _EmployeeSkillTags.PersonnelNumber -- association [0..*]LEFTOUTERJOIN I_ServicePerformerFor AS _IsServicePerformerFor ON EmployeeInternalID = _IsServicePerformerFor.BusinessPartner AND _IsServicePerformerFor.RoleRelationType = 'BUR025' -- association [0..1]LEFTOUTERJOIN I_User AS _User ON BusinessPartnerUUID = _User.BusinessPartnerUUID -- association [0..1]
;