I_EngagementProject

DDL: I_ENGAGEMENTPROJECT Type: view BASIC

Engagement Project

I_EngagementProject (Basic)

Package: Explore, extend and adapt the SAP S/4HANA Cloud Private Edition with built-in and side-by-side extension capabilities.

R&D Engineering

I_EngagementProject is a Basic CDS View (Dimension) that provides data about "Engagement Project" in SAP S/4HANA. It reads from 1 data source (P_EngagementProject) and exposes 40 fields with key field EngagementProject. It has 15 associations to related views.

SAP API Hub

StateC1
Line of BusinessR&D Engineering
Application ComponentCA-CPD-SS
CapabilitiesAnalytical Dimension, Association Target for Defining CDS Entities, Data Source for Defining CDS Entities, Data Source for Data Extraction, Data Source in SQL Select
PackageR&D Engineering for SAP S/4HANA Cloud Private Edition

Documentation

Data Sources (1)

SourceAliasJoin Type
P_EngagementProject EngagementProject from

Associations (15)

CardinalityTargetAliasCondition
[1..1] I_EngagementProjFinancialPlan _EngagementProjFinancialPlan $projection.EngagementProjectUUID = _EngagementProjFinancialPlan.EngagementProjectUUID
[0..*] I_PersnWrkAgreementDet _PersonWorkAgreementDet $projection.ProjectManagerWorkAgreement = _PersonWorkAgreementDet.PersonWorkAgreement
[0..1] I_Employment _Employment $projection.ProjectManagerWorkAgreement = _Employment.EmploymentInternalID
[0..1] I_Customer _Customer $projection.Customer = _Customer.Customer
[0..*] I_CostCenter _CostCenter $projection.CostCenter = _CostCenter.CostCenter and $projection.ControllingArea = _CostCenter.ControllingArea
[0..*] I_ProfitCenter _ProfitCenter $projection.ProfitCenter = _ProfitCenter.ProfitCenter and $projection.ControllingArea = _ProfitCenter.ControllingArea
[0..1] I_ControllingArea _ControllingArea $projection.ControllingArea = _ControllingArea.ControllingArea
[0..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode
[0..1] I_EngagementProjectStage _EngagementProjectStage $projection.EngagementProjectStage = _EngagementProjectStage.EngagementProjectStage
[0..*] I_EngagementProjectItem _EngagementProjectItem $projection.EngagementProjectUUID = _EngagementProjectItem.EngagementProjectUUID
[0..1] I_EngagementProjectSrvcOrg _EngagementProjectServiceOrg $projection.EngagementProjectServiceOrg = _EngagementProjectServiceOrg.EngagementProjectServiceOrg
[1..1] E_CustomerProject _Extension EngagementProject.mp_id = _Extension.CustomerProject
[1..1] I_EngmntProjWithUserInvlmnt _UserInvlmnt $projection.EngagementProjectUUID = _UserInvlmnt.ProjectUUID
[0..*] I_PersonWorkAgreement _PersonWorkAgreement $projection.ProjectManagerWorkAgreement = _PersonWorkAgreement.PersonWorkAgreement
[0..1] I_PersonWorkAgreement_1 _PersonWorkAgreement_1 $projection.ProjectManagerWorkAgreement = _PersonWorkAgreement_1.PersonWorkAgreement

Annotations (18)

NameValueLevelField
AbapCatalog.sqlViewName IENGMNTPROJ view
AbapCatalog.preserveKey true view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Engagement Project view
ObjectModel.representativeKey EngagementProject view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
VDM.viewType #BASIC view

Fields (40)

KeyFieldSource TableSource FieldDescription
KEY EngagementProject Engagement Project ID
EngagementProjectUUID Engagement Project UUID
EngagementProjectName P_EngagementProject text Customer Project Name
EngmntProjNameUprCase P_EngagementProject textu Short Text(Upper case)
EngagementProjectType Engagement Project Type
EngagementProjectStage P_EngagementProject mp_stage Identified Stage
EngagementProjectServiceOrg P_EngagementProject org_id Service Organization
EngagementProjectCategory Project Type
ProjectStartDate P_EngagementProject start_date Commercial Project: Start Date
ProjectEndDate P_EngagementProject end_date Commercial Project: End Date
ProjectVisibility P_EngagementProject confidential Confidential Indicator for Commercial Project
ProjectManager P_EngagementProject proj_manager_id
ProjectManagerWorkAgreement P_EngagementProject proj_manager_id
LastChangeDateTime P_EngagementProject changed_on Commercial Project Last Changed On
LastChangedByUser P_EngagementProject changed_by Changed By
CreatedByUser P_EngagementProject created_by Version Created By
CreationDateTime P_EngagementProject created_on Variant created on
CostCenter P_EngagementProject cost_center Organization Unit Key
ProfitCenter P_EngagementProject profit_center Profit Center
Customer P_EngagementProject customer Customer Number
ControllingArea P_EngagementProject ControllingArea Controlling area for the project
CompanyCode P_EngagementProject CompanyCode Company code for the project
TimePostingIsRestricted P_EngagementProject restrict_time_posting Restrict Unstaffed Posting
RestrictedTimePosting P_EngagementProject restrict_time_posting Restrict Unstaffed Posting
ProjectBillingIsUsed P_EngagementProject use_project_billing Project Invoicing Solution
ProjectProfileCode P_EngagementProject ProjectProfileCode Project Profile
_PersonWorkAgreement _PersonWorkAgreement
_PersonWorkAgreement_1 _PersonWorkAgreement_1
_PersonWorkAgreementDet _PersonWorkAgreementDet
_Customer _Customer
_ControllingArea _ControllingArea
_CompanyCode _CompanyCode
_CostCenter _CostCenter
_ProfitCenter _ProfitCenter
_EngagementProjFinancialPlan _EngagementProjFinancialPlan
_EngagementProjectStage _EngagementProjectStage
_EngagementProjectItem _EngagementProjectItem
_EngagementProjectServiceOrg _EngagementProjectServiceOrg
_UserInvlmnt _UserInvlmnt
_Employment _Employment

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_EngagementProject.
-- 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_EngagementProject AS
SELECT
  cast(EngagementProject.mp_id as /cpd/eng_mp_id preserving type ) AS EngagementProject,
  cast(EngagementProject.db_key as /cpd/eng_db_key preserving type ) AS EngagementProjectUUID,
  EngagementProject.text AS EngagementProjectName,
  EngagementProject.textu AS EngmntProjNameUprCase,
  cast(EngagementProject.mp_type as /cpd/eng_mp_type preserving type ) AS EngagementProjectType,
  EngagementProject.mp_stage AS EngagementProjectStage,
  EngagementProject.org_id AS EngagementProjectServiceOrg,
  cast(EngagementProject.project_type as /cpd/eng_proj_type preserving type ) AS EngagementProjectCategory,
  EngagementProject.start_date AS ProjectStartDate,
  EngagementProject.end_date AS ProjectEndDate,
  EngagementProject.confidential AS ProjectVisibility,
  EngagementProject.proj_manager_id AS ProjectManager,
  EngagementProject.proj_manager_id AS ProjectManagerWorkAgreement,
  EngagementProject.changed_on AS LastChangeDateTime,
  EngagementProject.changed_by AS LastChangedByUser,
  EngagementProject.created_by AS CreatedByUser,
  EngagementProject.created_on AS CreationDateTime,
  EngagementProject.cost_center AS CostCenter,
  EngagementProject.profit_center AS ProfitCenter,
  EngagementProject.customer AS Customer,
  EngagementProject.ControllingArea AS ControllingArea,
  EngagementProject.CompanyCode AS CompanyCode,
  EngagementProject.restrict_time_posting AS TimePostingIsRestricted,
  EngagementProject.restrict_time_posting AS RestrictedTimePosting,
  EngagementProject.use_project_billing AS ProjectBillingIsUsed,
  EngagementProject.ProjectProfileCode AS ProjectProfileCode
FROM P_EngagementProject AS EngagementProject
LEFT OUTER JOIN I_EngagementProjFinancialPlan AS _EngagementProjFinancialPlan ON EngagementProjectUUID = _EngagementProjFinancialPlan.EngagementProjectUUID  -- association [1..1]
LEFT OUTER JOIN I_PersnWrkAgreementDet AS _PersonWorkAgreementDet ON ProjectManagerWorkAgreement = _PersonWorkAgreementDet.PersonWorkAgreement  -- association [0..*]
LEFT OUTER JOIN I_Employment AS _Employment ON ProjectManagerWorkAgreement = _Employment.EmploymentInternalID  -- association [0..1]
LEFT OUTER JOIN I_Customer AS _Customer ON Customer = _Customer.Customer  -- association [0..1]
LEFT OUTER JOIN I_CostCenter AS _CostCenter ON CostCenter = _CostCenter.CostCenter AND ControllingArea = _CostCenter.ControllingArea  -- association [0..*]
LEFT OUTER JOIN I_ProfitCenter AS _ProfitCenter ON ProfitCenter = _ProfitCenter.ProfitCenter AND ControllingArea = _ProfitCenter.ControllingArea  -- association [0..*]
LEFT OUTER JOIN I_ControllingArea AS _ControllingArea ON ControllingArea = _ControllingArea.ControllingArea  -- association [0..1]
LEFT OUTER JOIN I_CompanyCode AS _CompanyCode ON CompanyCode = _CompanyCode.CompanyCode  -- association [0..1]
LEFT OUTER JOIN I_EngagementProjectStage AS _EngagementProjectStage ON EngagementProjectStage = _EngagementProjectStage.EngagementProjectStage  -- association [0..1]
LEFT OUTER JOIN I_EngagementProjectItem AS _EngagementProjectItem ON EngagementProjectUUID = _EngagementProjectItem.EngagementProjectUUID  -- association [0..*]
LEFT OUTER JOIN I_EngagementProjectSrvcOrg AS _EngagementProjectServiceOrg ON EngagementProjectServiceOrg = _EngagementProjectServiceOrg.EngagementProjectServiceOrg  -- association [0..1]
LEFT OUTER JOIN E_CustomerProject AS _Extension ON EngagementProject.mp_id = _Extension.CustomerProject  -- association [1..1]
LEFT OUTER JOIN I_EngmntProjWithUserInvlmnt AS _UserInvlmnt ON EngagementProjectUUID = _UserInvlmnt.ProjectUUID  -- association [1..1]
LEFT OUTER JOIN I_PersonWorkAgreement AS _PersonWorkAgreement ON ProjectManagerWorkAgreement = _PersonWorkAgreement.PersonWorkAgreement  -- association [0..*]
LEFT OUTER JOIN I_PersonWorkAgreement_1 AS _PersonWorkAgreement_1 ON ProjectManagerWorkAgreement = _PersonWorkAgreement_1.PersonWorkAgreement  -- association [0..1]
;