C_EntProjectMassChange
Enterprise Project for Mass Change
C_EntProjectMassChange is a Consumption CDS View that provides data about "Enterprise Project for Mass Change" in SAP S/4HANA. It reads from 1 data source (I_PPM_Project) and exposes 65 fields with key field ProjectUUID. It has 14 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_PPM_Project | I_PPM_Project | from |
Associations (14)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | C_PPM_ProjectMemberContactCard | _Manager | _Manager.BusinessPartnerUUID = $projection.ProjectManagerUUID |
| [0..1] | C_PPM_ProjectProfileVH | _ProjectProfileVH | _ProjectProfileVH.ProjectProfileCode = $projection.ProjectProfileCode |
| [0..1] | I_CostCenterStdVH | _ResponsibleCostCenterVH | _ResponsibleCostCenterVH.CostCenter = $projection.ResponsibleCostCenter and _ResponsibleCostCenterVH.ControllingArea = $projection.ControllingArea and _ResponsibleCostCenterVH.ValidityEndDate > $session.system_date and _ResponsibleCostCenterVH.ValidityStartDate < $session.system_date |
| [0..1] | I_UserContactCard | _CreatedByUser | _CreatedByUser.ContactCardID = $projection.CreatedByUser |
| [1..1] | E_PPM_Project | _ProjectHeaderExtension | $projection.ProjectUUID = _ProjectHeaderExtension.ProjectUUID |
| [0..1] | C_PPM_TeamMemberSearchHelp | _TeamMember | _TeamMember.BusinessPartnerUUID = $projection.ProjectManagerUUID |
| [0..1] | I_FixedAsset | _FixedAsset | _FixedAsset.InvestmentProjectWBSElement = WBSElementInternalID and $projection.WBSElementInternalID <> '00000000' |
| [0..1] | I_ProfitCenterStdVH | _ProfitCenterVH | _ProfitCenterVH.ProfitCenter = $projection.ProfitCenter and _ProfitCenterVH.ControllingArea = $projection.ControllingArea and _ProfitCenterVH.ValidityEndDate > $session.system_date and _ProfitCenterVH.ValidityStartDate < $session.system_date |
| [0..1] | I_InvestmentProfile | _InvestmentProfVH | _InvestmentProfVH.InvestmentProfile = $projection.InvestmentProfile |
| [0..1] | C_FactoryCalendarValueHelp | _FactoryCalendarVH | _FactoryCalendarVH.FactoryCalendar = $projection.FactoryCalendar |
| [0..1] | I_ControllingArea | _ControllingArea | _ControllingArea.ControllingArea = $projection.ControllingArea |
| [0..*] | I_CostingSheetProcedureVH | _CostingSheetProcedureVH | _CostingSheetProcedureVH.CostingSheetProcedure = $projection.CostingSheet |
| [0..1] | C_MM_FunctionalAreaValueHelp | _FunctionalAreaVH | _FunctionalAreaVH.FunctionalArea = $projection.FunctionalArea |
| [0..1] | C_PlantVH | _PlantVH | _PlantVH.Plant = $projection.Plant |
Annotations (14)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CENTPROJMCHG | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| EndUserText.label | Enterprise Project for Mass Change | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.representativeKey | ProjectUUID | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.updateEnabled | true | view | |
| VDM.viewType | #CONSUMPTION | view | |
| Metadata.allowExtensions | true | view |
Fields (65)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ProjectUUID | ProjectUUID | ||
| EntProjMassChangeRequestUUID | ||||
| WBSElementInternalID | WBSElementInternalID | |||
| ProjectSummaryTaskUUID | ProjectSummaryTaskUUID | |||
| Project | Project | |||
| ProjectName | ProjectName | |||
| ProjectProfileCode | ProjectProfileCode | |||
| ProjectProfileCodeText | _ProjectProfileVH | ProjectProfileCodeText | ||
| ProjectManagerUUID | ProjectManagerUUID | |||
| ProcessingStatus | ProcessingStatus | |||
| ResponsibleCostCenter | ResponsibleCostCenter | |||
| ResponsibleCostCenterName | Responsible Cost Center Name | |||
| ProfitCenter | ProfitCenter | |||
| ProfitCenterName | ||||
| ControllingArea | ControllingArea | |||
| ControllingAreaName | _ControllingArea | ControllingAreaName | ||
| CreatedByUser | CreatedByUser | |||
| CreatedByUserName | _CreatedByUser | FullName | ||
| CreationDateTime | CreationDateTime | |||
| LastChangedByUser | LastChangedByUser | Changed By | ||
| LastChangeDateTime | Last Changed On | |||
| Plant | Plant | |||
| PlantName | _PlantVH | PlantName | ||
| PlannedStartDate | ProjectStartDate | |||
| PlannedEndDate | ProjectEndDate | |||
| ActualStartDate | ActualStartDate | |||
| ActualEndDate | ActualEndDate | |||
| InvestmentProfileName | _InvestmentProfVH | InvestmentProfileName | ||
| InvestmentProfile | InvestmentProfile | |||
| CompanyCode | CompanyCode | |||
| CompanyCodeName | _CompanyCode | CompanyCodeName | ||
| CostCenter | CostCenter | Default Cost Center for Postings | ||
| CostingSheet | CostingSheet | |||
| CostingSheetProcedureDesc | _CostingSheetProcedureVH | CostingSheetProcedureDesc | ||
| FactoryCalendar | FactoryCalendar | |||
| FactoryCalendarName | ||||
| FunctionalArea | FunctionalArea | |||
| FunctionalAreaName | _FunctionalAreaVH | FunctionalAreaName | ||
| PriorityCode | PriorityCode | |||
| IsBillingRelevant | IsBillingRelevant | |||
| EnterpriseProjectType | EnterpriseProjectType | Project Type | ||
| ProjectTypeName | ||||
| FixedAssetExternalID | _FixedAsset | FixedAssetExternalID | ||
| _FactoryCalendarVH | _FactoryCalendarVH | |||
| _ControllingArea | _ControllingArea | |||
| _CostingSheetProcedureVH | _CostingSheetProcedureVH | |||
| _FunctionalAreaVH | _FunctionalAreaVH | |||
| _PlantVH | _PlantVH | |||
| _ProjectProfileVH | _ProjectProfileVH | |||
| _EnterpriseProjectType | _EnterpriseProjectType | |||
| _ResponsibleCostCenterVH | _ResponsibleCostCenterVH | |||
| _ProjObjRoot | _ProjObjRoot | |||
| _ProcessingStatus | _ProcessingStatus | |||
| _ProcessingStatusText | _ProcessingStatusText | |||
| _Manager | _Manager | |||
| _CreatedByUser | _CreatedByUser | |||
| _AuthUser | _AuthUser | |||
| _AuthSubst | _AuthSubst | |||
| _AuthRole | _AuthRole | |||
| _AuthGroup | _AuthGroup | |||
| _ProfitCenter | _ProfitCenter | |||
| _TeamMember | _TeamMember | |||
| _Priority | _Priority | |||
| _PriorityText | _PriorityText | |||
| _InvestmentProfVH | _InvestmentProfVH |
@AbapCatalog.sqlViewName: 'CENTPROJMCHG'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@EndUserText.label: 'Enterprise Project for Mass Change'
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #BLOCKED_DATA_EXCLUDED
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel: {
semanticKey: [ 'Project' ],
representativeKey: 'ProjectUUID',
usageType: {
serviceQuality: #D,
dataClass: #MIXED,
sizeCategory: #L
},
updateEnabled: true
}
@VDM.viewType: #CONSUMPTION
@Metadata.allowExtensions: true
define view C_EntProjectMassChange
as select from I_PPM_Project
association [0..1] to C_PPM_ProjectMemberContactCard as _Manager on _Manager.BusinessPartnerUUID = $projection.ProjectManagerUUID
association [0..1] to C_PPM_ProjectProfileVH as _ProjectProfileVH on _ProjectProfileVH.ProjectProfileCode = $projection.ProjectProfileCode
association [0..1] to I_CostCenterStdVH as _ResponsibleCostCenterVH on _ResponsibleCostCenterVH.CostCenter = $projection.ResponsibleCostCenter
and _ResponsibleCostCenterVH.ControllingArea = $projection.ControllingArea
and _ResponsibleCostCenterVH.ValidityEndDate > $session.system_date
and _ResponsibleCostCenterVH.ValidityStartDate < $session.system_date
association [0..1] to I_UserContactCard as _CreatedByUser on _CreatedByUser.ContactCardID = $projection.CreatedByUser
association [1..1] to E_PPM_Project as _ProjectHeaderExtension on $projection.ProjectUUID = _ProjectHeaderExtension.ProjectUUID
association [0..1] to C_PPM_TeamMemberSearchHelp as _TeamMember on _TeamMember.BusinessPartnerUUID = $projection.ProjectManagerUUID
association [0..1] to I_FixedAsset as _FixedAsset on _FixedAsset.InvestmentProjectWBSElement = WBSElementInternalID
and $projection.WBSElementInternalID <> '00000000'
association [0..1] to I_ProfitCenterStdVH as _ProfitCenterVH on _ProfitCenterVH.ProfitCenter = $projection.ProfitCenter
and _ProfitCenterVH.ControllingArea = $projection.ControllingArea
and _ProfitCenterVH.ValidityEndDate > $session.system_date
and _ProfitCenterVH.ValidityStartDate < $session.system_date
association [0..1] to I_InvestmentProfile as _InvestmentProfVH on _InvestmentProfVH.InvestmentProfile = $projection.InvestmentProfile
association [0..1] to C_FactoryCalendarValueHelp as _FactoryCalendarVH on _FactoryCalendarVH.FactoryCalendar = $projection.FactoryCalendar
association [0..1] to I_ControllingArea as _ControllingArea on _ControllingArea.ControllingArea = $projection.ControllingArea
association [0..*] to I_CostingSheetProcedureVH as _CostingSheetProcedureVH on _CostingSheetProcedureVH.CostingSheetProcedure = $projection.CostingSheet
association [0..1] to C_MM_FunctionalAreaValueHelp as _FunctionalAreaVH on _FunctionalAreaVH.FunctionalArea = $projection.FunctionalArea
association [0..1] to C_PlantVH as _PlantVH on _PlantVH.Plant = $projection.Plant
{
@ObjectModel.readOnly: true
key ProjectUUID,
@ObjectModel.virtualElement
@ObjectModel.filter.transformedBy: 'CL_PPM_PRO_MASS_CHANGE_SADL_EX'
@ObjectModel: { readOnly: true }
@UI.hidden: true
hextobin( '00000000000000000000000000000000' ) as EntProjMassChangeRequestUUID,
@ObjectModel.readOnly: true
WBSElementInternalID,
@ObjectModel.readOnly: true
ProjectSummaryTaskUUID,
@Consumption.valueHelpDefinition: [
{ entity: { name: 'C_EnterpriseProjectVH',
element: 'Project' }
}]
@ObjectModel: {
text: {
element: [ 'ProjectName' ]
}
}
Project,
@Consumption.valueHelpDefinition: [
{ entity: { name: 'C_EnterpriseProjectVH',
element: 'Project' }
}]
ProjectName,
@Consumption.valueHelp: '_ProjectProfileVH'
@ObjectModel: {
foreignKey: {
association: '_ProjectProfileVH'
},
text: {
element: [ 'ProjectProfileCodeText' ]
}
}
ProjectProfileCode,
@Consumption.filter.hidden: true
@ObjectModel.readOnly: true
_ProjectProfileVH.ProjectProfileCodeText,
/*@ObjectModel: {
foreignKey.association: '',
text.association: ''
}*/
@UI.hidden: true
ProjectManagerUUID,
@ObjectModel: {
readOnly: true,
text: {
association: [ '_ProcessingStatusText' ]
}
}
ProcessingStatus,
@Consumption.valueHelp: '_ResponsibleCostCenterVH'
@ObjectModel: {
foreignKey: {
association: '_ResponsibleCostCenterVH'
},
text: {
element: [ 'ResponsibleCostCenterName' ]
}
}
ResponsibleCostCenter,
@Consumption.filter.hidden: true
@EndUserText.label: 'Responsible Cost Center Name'
@ObjectModel.readOnly: true
_ResponsibleCostCenterVH._Text[1: Language = $session.system_language].CostCenterName as ResponsibleCostCenterName,
@ObjectModel: {
text: {
element: [ 'ProfitCenterName' ]
}
}
ProfitCenter,
_ProfitCenterVH._Text[1:Language = $session.system_language].ProfitCenterName,
@Consumption.valueHelpDefinition: [{ entity :{
name : 'C_ControllingAreaVH',
element : 'ControllingArea'
}}]
@ObjectModel: {
text: {
element: [ 'ControllingAreaName' ]
}
}
ControllingArea,
@UI.hidden: true
@Consumption.filter.hidden: true
@ObjectModel.readOnly: true
_ControllingArea.ControllingAreaName,
@Consumption.filter.hidden: true
@ObjectModel: {
text: {
element: [ 'CreatedByUserName' ]
},
foreignKey: {
association: '_CreatedByUser'
}
}
CreatedByUser,
@Consumption.filter.hidden: true
@Semantics.text: true
_CreatedByUser.FullName as CreatedByUserName,
@Consumption.filter.hidden: true
CreationDateTime,
@Consumption.filter.hidden: true
@EndUserText.label: 'Changed By'
LastChangedByUser,
@Consumption.filter.hidden: true
@EndUserText.label: 'Last Changed On'
cast(LastChangeDateTime as /s4ppm/tv_changed_on preserving type) as LastChangeDateTime,
@Consumption.valueHelpDefinition: [{ entity :{
name : 'I_PlantStdVH',
element : 'Plant'
}}]
@ObjectModel: {
text: {
element: [ 'PlantName' ]
}
}
Plant,
@UI.hidden: true
@Consumption.filter.hidden: true
@ObjectModel.readOnly: true
_PlantVH.PlantName,
//@Consumption.filter.hidden: true
ProjectStartDate as PlannedStartDate,
//@Consumption.filter.hidden: true
ProjectEndDate as PlannedEndDate,
//CE2011 ACTUAL DATES
//@Consumption.filter.hidden: true
@Consumption.filter: { selectionType: #INTERVAL, multipleSelections: false }
ActualStartDate,
//@Consumption.filter.hidden: true
@Consumption.filter: { selectionType: #INTERVAL, multipleSelections: false }
ActualEndDate,
//CE2011 ACTUAL DATES
@Consumption.filter.hidden: true
@ObjectModel.readOnly: true
_InvestmentProfVH.InvestmentProfileName,
@Consumption: {
valueHelp: '_InvestmentProfVH',
filter.hidden: true
}
@ObjectModel: {
foreignKey: {
association: '_InvestmentProfVH'
},
text: {
element: [ 'InvestmentProfileName' ]
}
}
InvestmentProfile,
@Consumption.filter.hidden: true
@ObjectModel: {
text: {
element: [ 'CompanyCodeName' ]
}
}
CompanyCode,
@UI.hidden: true
_CompanyCode.CompanyCodeName,
@Consumption.filter.hidden: true
@EndUserText.label: 'Default Cost Center for Postings'
CostCenter,
@Consumption.filter.hidden: true
@ObjectModel: {
text: {
element: [ 'CostingSheetProcedureDesc' ]
}
}
CostingSheet,
@UI.hidden: true
@Consumption.filter.hidden: true
@ObjectModel.readOnly: true
_CostingSheetProcedureVH.CostingSheetProcedureDesc as CostingSheetProcedureDesc,
@Consumption.filter.hidden: true
@ObjectModel: {
text: {
element: [ 'FactoryCalendarName' ]
}
}
FactoryCalendar,
@UI.hidden: true
@Consumption.filter.hidden: true
@ObjectModel.readOnly: true
_FactoryCalendarVH._Text[1: Language = $session.system_language].FactoryCalendarName,
@Consumption.filter.hidden: true
@ObjectModel: {
text: {
element: [ 'FunctionalAreaName' ]
}
}
FunctionalArea,
@UI.hidden: true
@Consumption.filter.hidden: true
@ObjectModel.readOnly: true
_FunctionalAreaVH.FunctionalAreaName as FunctionalAreaName,
@Consumption.valueHelp: '_Priority'
@ObjectModel.text.control: #('ASSOCIATED_TEXT_UI_HIDDEN')
PriorityCode,
//@Consumption.filter.hidden: true
IsBillingRelevant,
@ObjectModel: {
text: {
element: [ 'ProjectTypeName' ]
}
}
@UI.textArrangement: #TEXT_ONLY
@EndUserText.label: 'Project Type'
EnterpriseProjectType,
_EnterpriseProjectTypeText[1:Language = $session.system_language].ProjectTypeName as ProjectTypeName,
@EndUserText: {
label: 'Asset Under Construction ID'
}
@ObjectModel.readOnly: true
_FixedAsset.FixedAssetExternalID,
@Consumption.filter.hidden: true
_FactoryCalendarVH,
@Consumption.filter.hidden: true
_ControllingArea,
@Consumption.filter.hidden: true
_CostingSheetProcedureVH,
@Consumption.filter.hidden: true
_FunctionalAreaVH,
@Consumption.filter.hidden: true
_PlantVH,
@Consumption.filter.hidden: true
_ProjectProfileVH,
@Consumption.filter.hidden: true
_EnterpriseProjectType,
@Consumption.filter.hidden: true
_ResponsibleCostCenterVH,
@Consumption.filter.hidden: true
_ProjObjRoot,
@Consumption.filter.hidden: true
_ProcessingStatus,
@Consumption.filter.hidden: true
_ProcessingStatusText,
@Consumption.filter.hidden: true
_Manager,
@Consumption.filter.hidden: true
_CreatedByUser,
@Consumption.filter.hidden: true
_AuthUser,
@Consumption.filter.hidden: true
_AuthSubst,
@Consumption.filter.hidden: true
_AuthRole,
@Consumption.filter.hidden: true
_AuthGroup,
@Consumption.filter.hidden: true
_ProfitCenter,
_TeamMember,
_Priority,
@Consumption.filter.hidden: true
_PriorityText,
@Consumption.filter.hidden: true
_InvestmentProfVH
}
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