I_MasterProject
Master Project
I_MasterProject is a Basic CDS View (Dimension) that provides data about "Master Project" in SAP S/4HANA. It reads from 2 data sources (/cpd/d_mp_hdr_s, /cpd/d_mp_hdr) and exposes 46 fields with key field MasterProject. It has 18 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| /cpd/d_mp_hdr_s | MasterProjectText | inner |
| /cpd/d_mp_hdr | MPList | from |
Associations (18)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_MasterProjectType | _MasterProjectType | $projection.MasterProjectType = _MasterProjectType.MasterProjectType |
| [0..1] | I_EngagementProjectStage | _MasterProjectStage | $projection.MasterProjectStage = _MasterProjectStage.EngagementProjectStage |
| [0..1] | I_Customer | _Customer | $projection.Customer = _Customer.Customer |
| [0..1] | I_BusinessPartner | _ProjectManager | $projection.ProjectManager = _ProjectManager.BusinessPartner |
| [0..1] | I_EngagementProjectSrvcOrg | _MasterProjectOrganization | $projection.MasterProjectOrganization = _MasterProjectOrganization.EngagementProjectServiceOrg |
| [0..1] | I_Country | _Country | $projection.Country = _Country.Country |
| [0..1] | I_Region | _Region | $projection.Country = _Region.Country and $projection.Region = _Region.Region |
| [0..1] | I_CpdIndustry | _Industry | $projection.Industry = _Industry.Industry |
| [0..1] | I_Cpdprojectrisk | _ProjectRisk | $projection.ProjectRisk = _ProjectRisk.ProjectRisk |
| [0..1] | I_Cpdfinancialrisk | _FinancialRisk | $projection.FinancialRisk = _FinancialRisk.FinancialRisk |
| [0..1] | I_Cpdtechnicalrisk | _TechnicalRisk | $projection.TechnicalRisk = _TechnicalRisk.TechnicalRisk |
| [0..1] | I_Cpdprojectrisk | _OverallRisk | $projection.OverallRisk = _OverallRisk.ProjectRisk |
| [1..*] | I_MPContactPerson | _ContactPerson | $projection.MasterProjectUUID = _ContactPerson.MasterProjectUUID |
| [0..1] | I_MasterProjectVH | _MasterProject | $projection.MasterProject = _MasterProject.MasterProject |
| [0..1] | I_Cpdworktype | _WorkType | $projection.WorkType = _WorkType.WorkType |
| [0..1] | I_WorkforcePerson | _Employee | $projection.ProjectManager = _Employee.Person |
| [1..1] | E_MasterProject | _Extension | $projection.MasterProjectUUID = _Extension.MasterProjectUUID |
| [0..1] | E_MasterProjectKPI | _ExtensionKPI | $projection.MasterProject = _ExtensionKPI.MasterProject |
Annotations (14)
| Name | Value | Level | Field |
|---|---|---|---|
| VDM.viewType | #BASIC | view | |
| AbapCatalog.sqlViewName | IMASTERPROJECT | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.dataExtraction.enabled | true | view | |
| ObjectModel.representativeKey | MasterProject | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.serviceQuality | #B | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Master Project | view | |
| Metadata.allowExtensions | true | view | |
| AbapCatalog.preserveKey | true | view |
Fields (46)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | MasterProject | |||
| MasterProjectUUID | /cpd/d_mp_hdr | db_key | ||
| MasterProjectName | ||||
| MasterProjectType | ||||
| MasterProjectStage | ||||
| StartDate | /cpd/d_mp_hdr | start_date | ||
| EndDate | /cpd/d_mp_hdr | end_date | ||
| StatusIsActive | /cpd/d_mp_hdr | active | ||
| Customer | /cpd/d_mp_hdr | customer | ||
| MasterProjectOrganization | ||||
| MasterProjectIsConfidential | ||||
| Country | ||||
| Region | /cpd/d_mp_hdr | region | ||
| WorkType | /cpd/d_mp_hdr | work_type | ||
| Industry | /cpd/d_mp_hdr | industry | ||
| ProjectRisk | ||||
| FinancialRisk | /cpd/d_mp_hdr | fin_risk | ||
| TechnicalRisk | /cpd/d_mp_hdr | tech_risk | ||
| OverallRisk | ||||
| InspectionDate | /cpd/d_mp_hdr | int_inspect_date | ||
| InternalInspectionDate | ||||
| ExternalInspectionDate | ||||
| CreatedByUser | /cpd/d_mp_hdr | created_by | ||
| CreationDateTime | ||||
| ProjectLastChangedDateTime | ||||
| ChangedBy | /cpd/d_mp_hdr | changed_by | ||
| ProjectManager | /cpd/d_mp_hdr | proj_mgr_bupa_id | ||
| ProjectUUID | ||||
| Currency | /cpd/d_mp_hdr | proj_currency | ||
| MstrProjCutOffDate | /cpd/d_mp_hdr | cut_off_date | ||
| _MasterProjectType | _MasterProjectType | |||
| _MasterProjectStage | _MasterProjectStage | |||
| _Customer | _Customer | |||
| _ProjectManager | _ProjectManager | |||
| _MasterProjectOrganization | _MasterProjectOrganization | |||
| _Country | _Country | |||
| _Region | _Region | |||
| _Industry | _Industry | |||
| _ProjectRisk | _ProjectRisk | |||
| _FinancialRisk | _FinancialRisk | |||
| _TechnicalRisk | _TechnicalRisk | |||
| _OverallRisk | _OverallRisk | |||
| _ContactPerson | _ContactPerson | |||
| _MasterProject | _MasterProject | |||
| _WorkType | _WorkType | |||
| _Employee | _Employee |
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IMASTERPROJECT'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@Analytics: { dataCategory: #DIMENSION, dataExtraction.enabled: true }
@ObjectModel.representativeKey: 'MasterProject'
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.serviceQuality: #B
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Master Project'
@Metadata.allowExtensions:true
@AbapCatalog.preserveKey:true
define view I_MasterProject
as select from /cpd/d_mp_hdr as MPList
inner join /cpd/d_mp_hdr_s as MasterProjectText on MPList.db_key = MasterProjectText.parent_key
association [0..1] to I_MasterProjectType as _MasterProjectType on $projection.MasterProjectType = _MasterProjectType.MasterProjectType
association [0..1] to I_EngagementProjectStage as _MasterProjectStage on $projection.MasterProjectStage = _MasterProjectStage.EngagementProjectStage
association [0..1] to I_Customer as _Customer on $projection.Customer = _Customer.Customer
association [0..1] to I_BusinessPartner as _ProjectManager on $projection.ProjectManager = _ProjectManager.BusinessPartner
association [0..1] to I_EngagementProjectSrvcOrg as _MasterProjectOrganization on $projection.MasterProjectOrganization = _MasterProjectOrganization.EngagementProjectServiceOrg
association [0..1] to I_Country as _Country on $projection.Country = _Country.Country
association [0..1] to I_Region as _Region on $projection.Country = _Region.Country
and $projection.Region = _Region.Region
association [0..1] to I_CpdIndustry as _Industry on $projection.Industry = _Industry.Industry
association [0..1] to I_Cpdprojectrisk as _ProjectRisk on $projection.ProjectRisk = _ProjectRisk.ProjectRisk
association [0..1] to I_Cpdfinancialrisk as _FinancialRisk on $projection.FinancialRisk = _FinancialRisk.FinancialRisk
association [0..1] to I_Cpdtechnicalrisk as _TechnicalRisk on $projection.TechnicalRisk = _TechnicalRisk.TechnicalRisk
association [0..1] to I_Cpdprojectrisk as _OverallRisk on $projection.OverallRisk = _OverallRisk.ProjectRisk
association [1..*] to I_MPContactPerson as _ContactPerson on $projection.MasterProjectUUID = _ContactPerson.MasterProjectUUID
association [0..1] to I_MasterProjectVH as _MasterProject on $projection.MasterProject = _MasterProject.MasterProject
association [0..1] to I_Cpdworktype as _WorkType on $projection.WorkType = _WorkType.WorkType
// association [0..1] to I_EmployeeWorkplaceAddress as _Employee on $projection.ProjectManager = _Employee.EmployeeInternalID //HRDecoupling
association [0..1] to I_WorkforcePerson as _Employee on $projection.ProjectManager = _Employee.Person //HRDecoupling
association [1..1] to E_MasterProject as _Extension on $projection.MasterProjectUUID = _Extension.MasterProjectUUID
association [0..1] to E_MasterProjectKPI as _ExtensionKPI on $projection.MasterProject = _ExtensionKPI.MasterProject
{
@ObjectModel.text.element: 'MasterProjectName'
key cast(MPList.mp_id as /cpd/cpm_comlprojid) as MasterProject,
MPList.db_key as MasterProjectUUID,
@Semantics.text: true
cast(MasterProjectText.text as /cpd/cpm_comlprojname) as MasterProjectName,
@ObjectModel: {foreignKey.association: '_MasterProjectType'}
cast(MPList.mp_type as /cpd/cpm_mp_type) as MasterProjectType,
@ObjectModel: {foreignKey.association: '_MasterProjectStage'}
cast(MPList.mp_stage as /cpd/cpm_mp_stage) as MasterProjectStage,
MPList.start_date as StartDate,
MPList.end_date as EndDate,
MPList.active as StatusIsActive,
@ObjectModel: {foreignKey.association: '_Customer'}
MPList.customer as Customer,
@ObjectModel: {foreignKey.association: '_MasterProjectOrganization'}
cast(MPList.org_id as /cpd/cpm_comlprojorg) as MasterProjectOrganization,
cast(MPList.confidential as /cpd/cpm_comlprojcofl ) as MasterProjectIsConfidential,
@ObjectModel: {foreignKey.association: '_Country'}
cast(MPList.country as /cpd/cpm_country) as Country,
@ObjectModel: {foreignKey.association: '_Region'}
MPList.region as Region,
@ObjectModel: {foreignKey.association: '_WorkType'}
MPList.work_type as WorkType,
@ObjectModel: {foreignKey.association: '_Industry'}
MPList.industry as Industry,
@ObjectModel: {foreignKey.association: '_ProjectRisk'}
cast(MPList.proj_risk as /cpd/cpm_projrisk) as ProjectRisk,
@ObjectModel: {foreignKey.association: '_FinancialRisk'}
MPList.fin_risk as FinancialRisk,
@ObjectModel: {foreignKey.association: '_TechnicalRisk'}
MPList.tech_risk as TechnicalRisk,
@ObjectModel: {foreignKey.association: '_OverallRisk'}
cast(MPList.overall_risk as /cpd/cpm_overalprojrisk) as OverallRisk,
MPList.int_inspect_date as InspectionDate,
cast(MPList.int_inspect_date as /cpd/cpm_intinsdate) as InternalInspectionDate,
cast(MPList.ext_inspect_date as /cpd/cpm_extinsdate) as ExternalInspectionDate,
MPList.created_by as CreatedByUser,
// MPList.created_by as CreatedBy,
cast(MPList.created_on as /cpd/cpm_createdon) as CreationDateTime,
cast(MPList.changed_on as /cpd/cpm_changedon) as ProjectLastChangedDateTime,
MPList.changed_by as ChangedBy,
@ObjectModel: {foreignKey.association: '_ProjectManager'}
MPList.proj_mgr_bupa_id as ProjectManager,
bintohex(MPList.db_key) as ProjectUUID,
MPList.proj_currency as Currency,
MPList.cut_off_date as MstrProjCutOffDate,
_MasterProjectType,
_MasterProjectStage,
_Customer,
_ProjectManager,
_MasterProjectOrganization,
_Country,
_Region,
_Industry,
_ProjectRisk,
_FinancialRisk,
_TechnicalRisk,
_OverallRisk,
_ContactPerson,
_MasterProject,
_WorkType,
_Employee
//_MPDetails
}
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA