I_MstrProjStructure
Master Project Structure Element
I_MstrProjStructure is a Composite CDS View that provides data about "Master Project Structure Element" in SAP S/4HANA. It reads from 3 data sources (I_MasterProjectItemList, P_MstrProjStructure, I_Project) and exposes 23 fields.
Data Sources (3)
| Source | Alias | Join Type |
|---|---|---|
| I_MasterProjectItemList | MasterProject | from |
| P_MstrProjStructure | ProjCostObj | inner |
| I_Project | ProjectDefinition | inner |
Annotations (10)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IMSTRPROJSTRUCT | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| VDM.viewType | #COMPOSITE | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Master Project Structure Element | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view |
Fields (23)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| MasterProjectUUID | I_MasterProjectItemList | MasterProjectUUID | ||
| MasterProject | I_MasterProjectItemList | MasterProject | ||
| MasterProjectName | I_MasterProjectItemList | MasterProjectName | ||
| MasterProjectIsConfidential | I_MasterProjectItemList | MasterProjectIsConfidential | ||
| MasterProjectType | I_MasterProjectItemList | MasterProjectType | ||
| MasterProjectOrganization | I_MasterProjectItemList | MasterProjectOrganization | ||
| Currency | I_MasterProjectItemList | Currency | ||
| MasterProjectItemObjectType | I_MasterProjectItemList | MasterProjectItemObjectType | ||
| Project | I_Project | Project | ||
| ProjectDescription | I_Project | ProjectDescription | ||
| ProjectObjectendasProjectObject | ||||
| BusinessArea | I_Project | BusinessArea | ||
| CompanyCode | I_Project | CompanyCode | ||
| ControllingArea | I_Project | ControllingArea | ||
| ObjectName | P_MstrProjStructure | ObjectName | ||
| ControllingObject | P_MstrProjStructure | ControllingObject | ||
| ControllingObjectExternalID | P_MstrProjStructure | ControllingObjectExternalID | ||
| ObjectInternalID | P_MstrProjStructure | ObjectInternalID | ||
| MstrProjCutOffDate | I_MasterProjectItemList | MstrProjCutOffDate | ||
| ControllingObjectCurrency | P_MstrProjStructure | ControllingObjectCurrency | ||
| WBSElementObject | P_MstrProjStructure | WBSElementObject | ||
| WBSElement | P_MstrProjStructure | WBSElement | ||
| ExternalObjectIdentifier | CProjectList | ExternalObjectIdentifier |
@AbapCatalog.sqlViewName: 'IMSTRPROJSTRUCT'
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Master Project Structure Element'
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory : #XL
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking:#NOT_REQUIRED
define view I_MstrProjStructure
as select from I_MasterProjectItemList as MasterProject
left outer to one join I_CProject as CProject on CProject.MasterProjectItemUUID = MasterProject.MasterProjectItemUUID
// left outer to one join P_WBSObject as WBS on CProject.ProjectObject = WBS.WBSElementObject
inner join I_Project as ProjectDefinition on MasterProject.MasterProjectItem = ProjectDefinition.ProjectObject
or CProject.project = ProjectDefinition.Project
inner join P_MstrProjStructure as ProjCostObj on ProjectDefinition.Project = ProjCostObj.Project
left outer to one join I_CProjectList as CProjectList on CProjectList.ProjectObject = ProjCostObj.ControllingObject
{
MasterProject.MasterProjectUUID,
MasterProject.MasterProject,
MasterProject.MasterProjectName,
MasterProject.MasterProjectIsConfidential,
MasterProject.MasterProjectType,
MasterProject.MasterProjectOrganization,
MasterProject.Currency,
MasterProject.MasterProjectItemObjectType,
ProjectDefinition.Project,
ProjectDefinition.ProjectDescription,
case
when MasterProject.MasterProjectItemObjectType = '0DPO'
then CProject.ProjectExternalID
else ProjectDefinition.ProjectObject
end as ProjectObject,
//ProjectDefinition.ProjectObject,
ProjectDefinition.BusinessArea,
ProjectDefinition.CompanyCode,
ProjectDefinition.ControllingArea,
ProjCostObj.ObjectName,
ProjCostObj.ControllingObject,
ProjCostObj.ControllingObjectExternalID,
case when ProjCostObj.ControllingObjectType = 'PR'
then 'WBS'
else ProjCostObj.ControllingObjectType
end as ControllingObjectType,
ProjCostObj.ObjectInternalID,
MasterProject.MstrProjCutOffDate,
ProjCostObj.ControllingObjectCurrency,
ProjCostObj.WBSElementObject,
ProjCostObj.WBSElement,
CProjectList.ExternalObjectIdentifier
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CPROJECT",
"I_CPROJECTLIST",
"I_MASTERPROJECTITEMLIST",
"I_PROJECT",
"P_MSTRPROJSTRUCTURE"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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