I_PROJECTDATA

CDS View

Project Data

I_PROJECTDATA is a CDS View in S/4HANA. Project Data. It contains 1 fields. 3 CDS views read from this table.

CDS Views using this table (3)

ViewTypeJoinVDMDescription
C_DFS_RelocationProject view_entity from CONSUMPTION Consumption for Relocation Project
C_DFS_RelocationProjectVH view_entity from CONSUMPTION Consumption for Relocation Project
R_ProjectTP view from TRANSACTIONAL TP view for Project for Project API

Fields (1)

KeyField CDS FieldsUsed in Views
ProjectProfileCode ProjectProfileCode 1
@AbapCatalog: {
  sqlViewName: 'IPROJECTDATA',
  compiler.compareFilter: true
}
@Analytics: { dataCategory: #DIMENSION, dataExtraction: {enabled: true, delta.changeDataCapture: {automatic: true}} }
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Project Data'
@VDM.viewType: #BASIC
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey:true
@Metadata.ignorePropagatedAnnotations:true
@Analytics.internalName: #LOCAL
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: 'I_ProjectData_2'

@Metadata.allowExtensions: true

@ObjectModel: {
    compositionRoot: true,
    //Keys

    representativeKey: 'ProjectInternalID',
    semanticKey: [ 'Project' ],

    usageType: {
        serviceQuality: #B,
        sizeCategory : #L,
        dataClass: #MASTER
    },
    
    supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #ANALYTICAL_DIMENSION, #EXTRACTION_DATA_SOURCE ]
}


define view I_ProjectData 
  as select from proj

  association [0..*] to I_WBSElementData             as _WBSElement                 on  $projection.ProjectInternalID = _WBSElement.ProjectInternalID
  association [0..1] to I_CompanyCode                as _CompanyCode                on  $projection.CompanyCode = _CompanyCode.CompanyCode
  association [0..1] to I_ControllingArea            as _ControllingArea            on  $projection.ControllingArea = _ControllingArea.ControllingArea                                                                            
  association [0..*] to I_ProfitCenter               as _ProfitCenter               on  $projection.ControllingArea  =  _ProfitCenter.ControllingArea
                                                                                    and $projection.ProfitCenter     =  _ProfitCenter.ProfitCenter
  association [1..1] to I_BusinessArea               as _BusinessArea               on  $projection.BusinessArea = _BusinessArea.BusinessArea
  association [1..1] to I_Plant                      as _Plant                      on  $projection.Plant = _Plant.Plant
  association [1..1] to I_ProjectProfileCode         as _ProjectProfileCode         on  $projection.ProjectProfileCode = _ProjectProfileCode.ProjectProfileCode
  association [1..1] to I_FunctionalArea             as _FunctionalArea             on  $projection.FunctionalArea = _FunctionalArea.FunctionalArea
  association [0..1] to I_FactoryCalendar            as _FactoryCalendar            on  $projection.FactoryCalendar = _FactoryCalendar.FactoryCalendar  
  // Multilanguage Short text 

  association [0..1] to I_ProjectObjectShortText     as _ProjectShortText          on  _ProjectShortText.Language   = $session.system_language
                                                                                   and _ProjectShortText.ProjectApplicationIdentifier = 'PS'
                                                                                   and _ProjectShortText.ProjectObjectType = 'PD'
                                                                                   and $projection.ProjectObject = _ProjectShortText.ProjectObjectNode
  ---Extension Association
  association [1..1] to E_Project_2 as _Extension on $projection.ProjectInternalID = _Extension.ProjectInternalID                                                                            
{

      //Entity description fields

  key cast ( proj.pspnr as ps_s4_proj_pspnr preserving type )               as ProjectInternalID,
      @ObjectModel.text.element: 'ProjectDescription'
      proj.pspid_edit                                                       as ProjectExternalID,
      cast ( proj.pspid as ps_p_pspid preserving type )                     as Project,
      @Semantics.text: true
      cast ( proj.post1 as ps_s4_proj_post1_v1 preserving type)             as ProjectDescription,
      
      @ObjectModel.foreignKey.association: '_ProjectProfileCode' 
      proj.profl                                                            as ProjectProfileCode,

      //Organizational fields

      @ObjectModel.foreignKey.association: '_CompanyCode'
      cast ( proj.vbukr as bukrs preserving type )                          as CompanyCode,
      @ObjectModel.foreignKey.association: '_ControllingArea'
      cast ( proj.vkokr as kokrs preserving type )                          as ControllingArea,
      @ObjectModel.foreignKey.association: '_FunctionalArea'
      cast ( proj.func_area as fkber preserving type )                      as FunctionalArea,
      @ObjectModel.foreignKey.association: '_ProfitCenter'
      proj.prctr                                                            as ProfitCenter,

      //Dimensions

      proj.objnr                                                            as ProjectObject,

      //Dates

      @Semantics.calendar.dayOfMonth: true
      proj.plfaz                                                            as PlannedStartDate,
      @Semantics.calendar.dayOfMonth: true
      proj.plsez                                                            as PlannedEndDate,
        
      proj.stort                                                            as WorkCenterLocation,
      // Tax Jurisdiction Code

      proj.txjcd                                                            as TaxJurisdiction,
      
      proj.vernr                                                            as ResponsiblePerson,                                                                                                                                                    
      @Semantics.text: true
      cast ( proj.verna as ps_s4_verna )                                    as ResponsiblePersonName,                                                                                                                                   
      cast ( proj.astnr as ps_s4_astnr )                                    as ApplicantCode,                                                                                                                                    
      @Semantics.text: true
      proj.astna                                                            as ApplicantName,
      @Semantics.user.createdBy: true
      proj.ernam                                                            as CreatedByUser, 
      @Semantics.systemDate.createdAt: true      
      proj.erdat                                                            as CreationDate,
      @Semantics.user.lastChangedBy: true       
      proj.aenam                                                            as LastChangedByUser,   
      @Semantics.systemDate.lastChangedAt: true
      cast ( proj.aedat as ps_s4_aedat )                                    as LastChangeDate,    
        
      @Semantics.calendar.dayOfMonth: true
      proj.aedte                                                            as BasicDatesLastScheduledDate,       
      @Semantics.calendar.dayOfMonth: true
      cast ( proj.aedtp as ps_aedtp )                                       as FcstdDatesLastScheduledDate, 
      
      @ObjectModel.foreignKey.association: '_FactoryCalendar'
      cast ( proj.kalid as appca )                                          as FactoryCalendar,
      cast ( proj.zteht as cgpl_duration_unit )                             as SchedulingDurationUnit,
      @Semantics.calendar.dayOfMonth: true
      cast ( proj.sprog as pshlp_forecast_start_de )                        as ForecastedStartDate,
      @Semantics.calendar.dayOfMonth: true
      cast ( proj.eprog as ps_s4_forecast_finish )                          as ForecastedEndDate,
      @ObjectModel.foreignKey.association: '_BusinessArea'
      cast ( proj.vgsbr as gsber )                                          as BusinessArea,
      @ObjectModel.foreignKey.association: '_Plant'
      proj.werks                                                            as Plant,
      cast ( proj.pwhie as ps_pwhie )                                       as Currency,      
      proj.bprof                                                            as BudgetProfile,
      proj.pprof                                                            as PlanningProfile,
      proj.imprf                                                            as InvestmentProfile,
                                            
      cast ( proj.zschm as ps_zschm )                                       as ProjInterestCalcProfile,
      proj.abgsl                                                            as ResultAnalysisInternalID,
      proj.pargr                                                            as PartnerDeterminationProcedure,
      
      cast ( proj.scope as ps_s4_scope_cv )                                 as ControllingObjectClass,
                                            
      proj.vprof                                                            as NetworkProfile,
      cast  ( proj.scprf as ps_s4_schdprf )                                 as WBSSchedulingProfile,     
      
      cast ( proj.vgplf as ps_s4_vgplf preserving type )                    as PlanningMethForProjBasicDate,
      cast  ( proj.ewplf as ps_s4_ewplf preserving type )                   as PlanningMethForProjFcstdDate,
      
      proj.zuord                                                            as NetworkAssignmentType,
      proj.xstat                                                            as WBSIsStatisticalWBSElement,
      proj.plint                                                            as WBSIsMarkedForIntegratedPlng,
      @Semantics.booleanIndicator: true                                                                        
      cast ( proj.besta as psb_stock )                                      as ProjectHasOwnStock,
      proj.kzbws                                                            as InventorySpecialStockValnType,
      proj.grtop                                                            as WBSIsMarkedForAutomReqmtGrpg,
      proj.vkorg                                                            as SalesOrganization,
      proj.vtweg                                                            as DistributionChannel,
      
      @Semantics.language
      proj.txtsp                                                            as Language,
      proj.kimsk                                                            as WBSElementExternalID,   
      proj.spart                                                            as Division,
      proj.dppprof                                                          as DynItemProcessorPrfl,
      proj.stspd                                                            as StatusProfile,  
      proj.stspr                                                            as WBSStatusProfile,
      proj.smprf                                                            as SimulationProfile, 
      proj.schtyp                                                           as SchedulingScenario,  
      proj.pgprf                                                            as DistributionProfile, 
      
      //joint venture fields 

      proj.vname                                                            as JointVenture,
      proj.recid                                                            as JointVentureCostRecoveryCode,
      proj.etype                                                            as JointVentureEquityType,
      proj.otype                                                            as JointVentureObjectType, 
      proj.jibcl                                                            as JntIntrstBillgClass,
      proj.jibsa                                                            as JntIntrstBillgSubClass, 
      
      proj.slwid                                                            as FreeDefinedTableFieldSemantic,
      cast ( proj.usr00 as usr00prps preserving type )                      as FreeDefinedAttribute01,
      cast ( proj.usr01 as usr01prps preserving type )                      as FreeDefinedAttribute02,
      cast ( proj.usr02 as usr02prps preserving type )                      as FreeDefinedAttribute03,
      cast ( proj.usr03 as usr03prps preserving type )                      as FreeDefinedAttribute04,
      @Semantics.quantity.unitOfMeasure:'FreeDefinedQuantity1Unit'
      cast ( proj.usr04 as usr04prps preserving type )                      as FreeDefinedQuantity1,
      cast ( proj.use04 as use04prps preserving type )                      as FreeDefinedQuantity1Unit,
      @Semantics.quantity.unitOfMeasure:'FreeDefinedQuantity2Unit'
      cast ( proj.usr05 as usr05prps preserving type )                      as FreeDefinedQuantity2,
      cast ( proj.use05 as use05prps preserving type )                      as FreeDefinedQuantity2Unit,
      @Semantics.amount.currencyCode: 'FreeDefinedAmount1Currency'
      cast ( proj.usr06 as abap.curr( 10, 2 ) )                             as FreeDefinedAmount1,
      cast ( proj.use06 as use06prps preserving type )                      as FreeDefinedAmount1Currency,
      @Semantics.amount.currencyCode: 'FreeDefinedAmount2Currency'
      cast ( proj.usr07 as abap.curr( 10, 2 ) )                             as FreeDefinedAmount2,
      cast ( proj.use07 as use07prps preserving type )                      as FreeDefinedAmount2Currency,
      cast ( proj.usr08 as usr08prps preserving type )                      as FreeDefinedDate1,
      cast ( proj.usr09 as usr09prps preserving type )                      as FreeDefinedDate2,
      cast ( proj.usr10 as usr10prps preserving type )                      as FreeDefinedIndicator1,
      cast ( proj.usr11 as usr11prps preserving type )                      as FreeDefinedIndicator2,

      //Associations

      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _WBSElement,
      _CompanyCode,
      _ControllingArea,
      _ProfitCenter,
      _BusinessArea,
      _Plant,
      _ProjectProfileCode,
      _FunctionalArea,
      _FactoryCalendar,
      //Multi Language Short text

      _ProjectShortText
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"PROJ"
],
"ASSOCIATED":
[
"E_PROJECT_2",
"I_BUSINESSAREA",
"I_COMPANYCODE",
"I_CONTROLLINGAREA",
"I_FACTORYCALENDAR",
"I_FUNCTIONALAREA",
"I_PLANT",
"I_PROFITCENTER",
"I_PROJECTOBJECTSHORTTEXT",
"I_PROJECTPROFILECODE",
"I_WBSELEMENTDATA"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/