I_MstrProjStructure

DDL: I_MSTRPROJSTRUCTURE SQL: IMSTRPROJSTRUCT Type: view COMPOSITE

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)

SourceAliasJoin Type
I_MasterProjectItemList MasterProject from
P_MstrProjStructure ProjCostObj inner
I_Project ProjectDefinition inner

Annotations (10)

NameValueLevelField
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)

KeyFieldSource TableSource FieldDescription
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":""
}
}*/