C_MasterProject

DDL: C_MASTERPROJECT SQL: CMASTERPROJECT Type: view CONSUMPTION

Master Project

C_MasterProject is a Consumption CDS View that provides data about "Master Project" in SAP S/4HANA. It reads from 2 data sources (I_FinancialPlanDates, I_MasterProject) and exposes 68 fields with key field MasterProject. It has 28 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_FinancialPlanDates I_FinancialPlanDates left_outer
I_MasterProject MPList from

Parameters (1)

NameTypeDefault
P_Language sylangu

Associations (28)

CardinalityTargetAliasCondition
[1..1] I_MstrProjUsrAuthList _MpAuthList $projection.MasterProject = _MpAuthList.MasterProject
[0..1] I_MasterProjectType _MasterProjectType $projection.MasterProjectType = _MasterProjectType.MasterProjectType
[0..1] I_EngagementProjectStage _MasterProjectStage $projection.MasterProjectStage = _MasterProjectStage.EngagementProjectStage
[0..*] I_Mpstagenexttext _MasterProjectStages $projection.masterprojectstageprofile = _MasterProjectStages.MasterProjectStageProfile and $projection.MasterProjectStage = _MasterProjectStages.EngagementProjectStage
[0..1] I_Customer _Customer $projection.Customer = _Customer.Customer
[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
[0..*] 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..*] I_Mpattachment _Attachments $projection.MasterProjectUUID = _Attachments.MasterProjectUUID
[0..1] E_MasterProject _Extension $projection.MasterProjectUUID = _Extension.MasterProjectUUID
[0..1] I_MstrProjManager _Manager $projection.MasterProjectUUID = _Manager.MasterProjectUUID
[0..*] C_MPStatusItemDetails _MasterProjectStatus $projection.MasterProjectUUID = _MasterProjectStatus.MasterProjectUUID
[0..1] I_User _User $projection.CreatedByUser = _User.UserID
[0..1] C_MasterProjectBasicData _BasicData $projection.MasterProject = _BasicData.MasterProject
[0..*] C_MstrProjKeyMember _MstrProjTeamMemberID $projection.MasterProject = _MstrProjTeamMemberID.MasterProject
[0..*] C_MPInvoiceWOSO _CustomerInvoice $projection.MasterProject = _CustomerInvoice.MasterProject
[0..*] I_MPUnbilledRevenu _UnbilledRevnInCtrlArCrcy $projection.MasterProject = _UnbilledRevnInCtrlArCrcy.MasterProject
[1..*] I_MstrProjWBSElement _StructureElements $projection.MasterProject = _StructureElements.MasterProject
[0..1] I_WorkforcePerson _EmployeeInternalID $projection.ProjectManagerName = _EmployeeInternalID.Person
[0..*] C_MasterProjectActivity _ProjectActivity $projection.MasterProjectUUID = _ProjectActivity.MasterProjectUUID

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName CMASTERPROJECT view
AbapCatalog.compiler.compareFilter true view
VDM.viewType #CONSUMPTION view
Search.searchable true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Master Project view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.dataClass #MIXED view
AccessControl.personalData.blocking #REQUIRED view

Fields (68)

KeyFieldSource TableSource FieldDescription
KEY MasterProject I_MasterProject MasterProject
MasterProjectUUID I_MasterProject MasterProjectUUID
ProjectUUID I_MasterProject ProjectUUID
MasterProjectName I_MasterProject MasterProjectName
MasterProjectType I_MasterProject MasterProjectType
MasterProjectTypeName
MasterProjectStage I_MasterProject MasterProjectStage
MasterProjectStageName
StartDate I_MasterProject StartDate
EndDate I_MasterProject EndDate
Customer I_MasterProject Customer
CustomerName
EmailAddress
MobilePhoneNumber
PhoneNumber
MasterProjectOrganization I_MasterProject MasterProjectOrganization
MasterProjectOrganizationName
MasterProjectIsConfidential I_MasterProject MasterProjectIsConfidential
Country I_MasterProject Country
Region I_MasterProject Region
WorkType I_MasterProject WorkType
Industry I_MasterProject Industry
ProjectRisk I_MasterProject ProjectRisk
FinancialRisk I_MasterProject FinancialRisk
TechnicalRisk I_MasterProject TechnicalRisk
OverallRisk I_MasterProject OverallRisk
InternalInspectionDate I_MasterProject InternalInspectionDate
ExternalInspectionDate I_MasterProject ExternalInspectionDate
CreatedByUser I_MasterProject CreatedByUser
ProjectLastChangedDateTime
ChangedBy I_MasterProject ChangedBy
CreationDateTime I_MasterProject CreationDateTime
CntctPersnIsManuallyCreated
MasterProjectStageProfile _MasterProjectType MasterProjectStageProfile
BusinessPartner
ProjectManagerName I_MasterProject ProjectManager
ProjectManager
MstrProjFinancialPlanUUID I_FinancialPlanDates MstrProjFinancialPlanUUID
FinancialPlanScenario I_FinancialPlanDates FinancialPlanScenario
FinancialPlanStartDate
FinancialPlanEndDate
_Employee I_MasterProject _Employee
_MpAuthList _MpAuthList
_MasterProjectType _MasterProjectType
_MasterProjectStage _MasterProjectStage
_Customer _Customer
_MasterProjectOrganization _MasterProjectOrganization
_Country _Country
_Region _Region
_Industry _Industry
_ProjectRisk _ProjectRisk
_FinancialRisk _FinancialRisk
_TechnicalRisk _TechnicalRisk
_OverallRisk _OverallRisk
_ContactPerson _ContactPerson
_MasterProject _MasterProject
_WorkType _WorkType
_Attachments _Attachments
_Manager _Manager
_MasterProjectStatus _MasterProjectStatus
_MasterProjectStages _MasterProjectStages
_BasicData _BasicData
_MstrProjTeamMemberID _MstrProjTeamMemberID
_CustomerInvoice _CustomerInvoice
_UnbilledRevnInCtrlArCrcy _UnbilledRevnInCtrlArCrcy
_StructureElements _StructureElements
_EmployeeInternalID _EmployeeInternalID
_ProjectActivity _ProjectActivity
@AbapCatalog.sqlViewName: 'CMASTERPROJECT'
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #CONSUMPTION
//@OData.publish: true

@Search.searchable: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Master Project'
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.sizeCategory:#XXL
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.dataClass: #MIXED
@AccessControl.personalData.blocking: #REQUIRED
@AbapCatalog.dbHints: [{dbSystem: #HDB,
                        hint:     'NO_RECOMPILE_WITH_SQL_PARAMETERS'}]
define view C_MasterProject
  with parameters
    @Consumption.hidden : true
    @Environment.systemField : #SYSTEM_LANGUAGE
    P_Language : sylangu
  as select from           I_MasterProject     as MPList
    left outer to one join I_MasterProjectUser as MstrProjUser on MPList.MasterProject = MstrProjUser.MasterProject
    left outer join        I_FinancialPlanDates                on MPList.ProjectUUID = I_FinancialPlanDates.ProjectUUID
  association [1..1] to I_MstrProjUsrAuthList      as _MpAuthList on $projection.MasterProject = _MpAuthList.MasterProject
  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..*] to I_Mpstagenexttext          as _MasterProjectStages       on  $projection.masterprojectstageprofile = _MasterProjectStages.MasterProjectStageProfile
                                                                                 and $projection.MasterProjectStage        = _MasterProjectStages.EngagementProjectStage
  association [0..1] to I_Customer                 as _Customer                  on  $projection.Customer = _Customer.Customer
  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 [0..*] 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..*] to I_Mpattachment             as _Attachments               on  $projection.MasterProjectUUID = _Attachments.MasterProjectUUID

  association [0..1] to E_MasterProject            as _Extension                 on  $projection.MasterProjectUUID = _Extension.MasterProjectUUID

  association [0..1] to I_MstrProjManager          as _Manager                   on  $projection.MasterProjectUUID = _Manager.MasterProjectUUID
  association [0..*] to C_MPStatusItemDetails      as _MasterProjectStatus       on  $projection.MasterProjectUUID = _MasterProjectStatus.MasterProjectUUID
  association [0..1] to I_User                     as _User                      on  $projection.CreatedByUser = _User.UserID
  association [0..1] to C_MasterProjectBasicData   as _BasicData                 on  $projection.MasterProject = _BasicData.MasterProject
  association [0..*] to C_MstrProjKeyMember as _MstrProjTeamMemberID   on $projection.MasterProject = _MstrProjTeamMemberID.MasterProject
  association [0..*] to C_MPInvoiceWOSO as _CustomerInvoice on $projection.MasterProject = _CustomerInvoice.MasterProject
  association [0..*] to I_MPUnbilledRevenu as _UnbilledRevnInCtrlArCrcy on $projection.MasterProject = _UnbilledRevnInCtrlArCrcy.MasterProject
  association [1..*] to I_MstrProjWBSElement as _StructureElements on $projection.MasterProject = _StructureElements.MasterProject
  association [0..1] to I_WorkforcePerson as _EmployeeInternalID on $projection.ProjectManagerName = _EmployeeInternalID.Person // SAP Note 3369365  //HR Decoupling

  association [0..*] to C_MasterProjectActivity          as _ProjectActivity             on  $projection.MasterProjectUUID = _ProjectActivity.MasterProjectUUID
{

      //--[ GENERATED:012:E6ExH29r7kY4i74kMOlQIW

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_MasterProjectStdVH',
                     element: 'MasterProject' }
        }]
      // ]--GENERATED

      @ObjectModel.text.element: 'MasterProjectName'
      @ObjectModel: {foreignKey.association: '_MasterProject'}
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
  key MPList.MasterProject                                                                                                                                                                                               as  MasterProject,
      MPList.MasterProjectUUID,
    //  MPList.MasterProjectUUID_E,

      MPList.ProjectUUID,

      @Semantics.text: true
      @Search.defaultSearchElement: true
      @UI.lineItem
      MPList.MasterProjectName                                                                                                                                                                                           as  MasterProjectName,

      @UI: { selectionField }
      @UI.lineItem
    //  @Search.defaultSearchElement: true

      cast(case when MstrProjUser.UserID <> ''
               then 'X'
               end as  /cpd/cpm_isuser_satatus)                                                                                                                                                                          as  IsUserStatus,

      @ObjectModel: {foreignKey.association: '_MasterProjectType'}
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
      MPList.MasterProjectType,
      cast(_MasterProjectType._Text[1:Language = $parameters.P_Language].MasterProjectTypeName as /cpd/cpm_mp_type_desc)                                                                                                 as  MasterProjectTypeName,

      @ObjectModel: {foreignKey.association: '_MasterProjectStage'}
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
      MPList.MasterProjectStage,
      cast(_MasterProjectStage._Text[1:Language = $parameters.P_Language].EngagementProjectStageText as /cpd/cpm_mpstage_desc)                                                                                           as  MasterProjectStageName,

      @UI: { selectionField }
      @UI.lineItem
      @Semantics.businessDate.from
      MPList.StartDate,

      @UI: { selectionField }
      @UI.lineItem
      @Semantics.businessDate.to
      MPList.EndDate,

      //--[ GENERATED:012:E6ExH29r7kY4i74kMOlQIW

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_Customer_VH',
                     element: 'Customer' }
        }]
      // ]--GENERATED

      @ObjectModel: {foreignKey.association: '_Customer'}
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
      MPList.Customer,
      cast(_Customer.CustomerName as /cpd/cpm_customer)                                                                                                                                                                  as CustomerName,
      @Semantics.eMail.address
      _Customer._StandardAddress._DefaultEmailAddress.EmailAddress,
      @Semantics.telephone.type: [#CELL]
      cast(_Customer._StandardAddress._DefaultMobilePhoneNumber.PhoneNumber as /cpd/cpm_custmobno)                                                                                                                       as  MobilePhoneNumber,
      @Semantics.telephone.type: [#WORK, #PREF]
      cast(_Customer._StandardAddress._DefaultPhoneNumber.PhoneNumber as /cpd/cpm_custcontactno)                                                                                                                         as  PhoneNumber,

      //--[ GENERATED:012:E6ExH29r7kY4i74kMOlQIW

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_EngmntProjSrvcOrgStdVH',
                     element: 'EngagementProjectServiceOrg' }
        }]
      // ]--GENERATED

      @ObjectModel: {foreignKey.association: '_MasterProjectOrganization'}
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
      MPList.MasterProjectOrganization                                                                                                                                                                                   as  MasterProjectOrganization,
      cast(_MasterProjectOrganization._Text[1:Language = $parameters.P_Language].EngmtProjectServiceOrgName as /cpd/cpm_comlprojorgname)                                                                                 as  MasterProjectOrganizationName,
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
      MPList.MasterProjectIsConfidential                                                                                                                                                                                 as  MasterProjectIsConfidential,

      @ObjectModel: {foreignKey.association: '_Country'}
      @UI: { selectionField }
      @UI.lineItem
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: true
      MPList.Country,

      @ObjectModel: {foreignKey.association: '_Region'}
      @UI: { selectionField }
      @UI.lineItem
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: true
      MPList.Region,

      @ObjectModel: {foreignKey.association: '_WorkType'}
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
      MPList.WorkType,

      @ObjectModel: {foreignKey.association: '_Industry'}
      @UI: { selectionField }
      @UI.lineItem
      @Search.defaultSearchElement: true
      MPList.Industry,

      @ObjectModel: {foreignKey.association: '_ProjectRisk'}
      @UI: { selectionField }
      @UI.lineItem
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: true
      MPList.ProjectRisk,

      @ObjectModel: {foreignKey.association: '_FinancialRisk'}
      @UI: { selectionField }
      @UI.lineItem
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: true
      MPList.FinancialRisk,

      @ObjectModel: {foreignKey.association: '_TechnicalRisk'}
      @UI: { selectionField }
      @UI.lineItem
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: true
      MPList.TechnicalRisk,

      @ObjectModel: {foreignKey.association: '_OverallRisk'}
      @UI: { selectionField }
      @UI.lineItem
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: true
      MPList.OverallRisk                                                                                                                                                                                                 as  OverallRisk,

      @UI: { selectionField }
      @UI.lineItem
      MPList.InternalInspectionDate                                                                                                                                                                                      as  InternalInspectionDate,
      @UI: { selectionField }
      @UI.lineItem
      MPList.ExternalInspectionDate                                                                                                                                                                                      as  ExternalInspectionDate,
      @UI: { selectionField }
      @UI.lineItem
      MPList.CreatedByUser,
      //      @UI: { selectionField }

      //      @UI.lineItem

      //      MPList.CreatedBy,

      @UI.lineItem
      cast(MPList.ProjectLastChangedDateTime as abap.dec( 15, 0 ))                                                                                                                                                       as  ProjectLastChangedDateTime,
      //      cast(MPList.ProjectLastChangedDateTime as abap.dec( 15, 0 ))                                                                                                                                                       as  ChangedOn,


      MPList.ChangedBy                                                                                                                                                                                                   as  ChangedBy,
      @UI.hidden: true
      @Consumption.hidden: true
      MPList.CreationDateTime,
      cast(_MasterProjectType.CntctPersnIsManuallyCreated as /cpd/cpm_isuser_satatus)                                                                                                                                    as  CntctPersnIsManuallyCreated,
      _MasterProjectType.MasterProjectStageProfile,

      ltrim(MPList.ProjectManager,'0') as BusinessPartner,

      @UI.hidden: true
      @Consumption.hidden: true
      MPList.ProjectManager as ProjectManagerName, //Not Used in UI


      cast(MPList._ProjectManager.BusinessPartnerFullName as /cpd/cpm_proj_manager) as ProjectManager,
      //      @Consumption.hidden : true

      I_FinancialPlanDates.MstrProjFinancialPlanUUID,
      I_FinancialPlanDates.FinancialPlanScenario,

      @UI: { selectionField }
      @UI.lineItem
      @Semantics.businessDate.from
      cast (I_FinancialPlanDates.FinancialPlanStartDate as /cpd/financial_start_date )                                                                                                                                   as  FinancialPlanStartDate,

      @UI: { selectionField }
      @UI.lineItem
      @Semantics.businessDate.to
      cast (I_FinancialPlanDates.FinancialPlanEndDate as /cpd/financial_end_date )                                                                                                                                       as  FinancialPlanEndDate,

       MPList._Employee,
      _MpAuthList,
      _MasterProjectType,
      _MasterProjectStage,
      _Customer,
      _MasterProjectOrganization,
      _Country,
      _Region,
      _Industry,
      _ProjectRisk,
      _FinancialRisk,
      _TechnicalRisk,
      _OverallRisk,
      _ContactPerson,
      _MasterProject,
      _WorkType,
      _Attachments,
      _Manager,
      _MasterProjectStatus,
      _MasterProjectStages,
      _BasicData,
      _MstrProjTeamMemberID,
      _CustomerInvoice,
      _UnbilledRevnInCtrlArCrcy,
      _StructureElements,
      _EmployeeInternalID,
      _ProjectActivity


}

















/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ADDRESS",
"I_ADDRESSEMAILADDRESS",
"I_ADDRESSPHONENUMBER",
"I_BUSINESSPARTNER",
"I_CUSTOMER",
"I_ENGAGEMENTPROJECTSRVCORG",
"I_ENGAGEMENTPROJECTSRVCORGTEXT",
"I_ENGAGEMENTPROJECTSTAGE",
"I_ENGAGEMENTPROJECTSTAGETEXT",
"I_FINANCIALPLANDATES",
"I_MASTERPROJECT",
"I_MASTERPROJECTTYPE",
"I_MASTERPROJECTTYPETEXT",
"I_MASTERPROJECTUSER"
],
"ASSOCIATED":
[
"C_MASTERPROJECTACTIVITY",
"C_MASTERPROJECTBASICDATA",
"C_MPINVOICEWOSO",
"C_MPSTATUSITEMDETAILS",
"C_MSTRPROJKEYMEMBER",
"E_MASTERPROJECT",
"I_COUNTRY",
"I_CPDFINANCIALRISK",
"I_CPDINDUSTRY",
"I_CPDPROJECTRISK",
"I_CPDTECHNICALRISK",
"I_CPDWORKTYPE",
"I_CUSTOMER",
"I_ENGAGEMENTPROJECTSRVCORG",
"I_ENGAGEMENTPROJECTSTAGE",
"I_MASTERPROJECTTYPE",
"I_MASTERPROJECTVH",
"I_MPATTACHMENT",
"I_MPCONTACTPERSON",
"I_MPSTAGENEXTTEXT",
"I_MPUNBILLEDREVENU",
"I_MSTRPROJMANAGER",
"I_MSTRPROJUSRAUTHLIST",
"I_MSTRPROJWBSELEMENT",
"I_REGION",
"I_USER",
"I_WORKFORCEPERSON"
],
"BASE":
[
"I_MASTERPROJECT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/