P_ProjScheduleProjectAttrib

DDL: P_PROJSCHEDULEPROJECTATTRIB SQL: PPROJATTR Type: view COMPOSITE

P_ProjScheduleProjectAttrib is a Composite CDS View in SAP S/4HANA. It reads from 1 data source (I_Project). It has 6 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_Project I_Project from

Associations (6)

CardinalityTargetAliasCondition
[0..1] I_StsObjConcatActiveStsILL _StsObjConcatActiveStsILL _StsObjConcatActiveStsILL.StatusObject = $projection.ProjectObject
[1..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[1..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode
[1..1] I_BusinessArea _BusinessArea $projection.BusinessArea = _BusinessArea.BusinessArea
[1..*] I_CostCenter _CostCenter $projection.CostCenter = _CostCenter.CostCenter and $projection.ControllingArea = _CostCenter.ControllingArea
[1..1] I_ControllingArea _ControllingArea $projection.ControllingArea = _ControllingArea.ControllingArea

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PPROJATTR view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #COMPOSITE view
VDM.private true view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.dataClass #MASTER view
ClientHandling.algorithm #SESSION_VARIABLE view
@AbapCatalog.sqlViewName: 'PPROJATTR'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #COMPOSITE
@VDM.private: true
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory : #M
@ObjectModel.usageType.dataClass: #MASTER
@ClientHandling.algorithm: #SESSION_VARIABLE

define view P_ProjScheduleProjectAttrib
  as select from I_Project
  association [0..1] to I_StsObjConcatActiveStsILL as _StsObjConcatActiveStsILL on _StsObjConcatActiveStsILL.StatusObject = $projection.ProjectObject
  association [1..1] to I_Plant                      as _Plant                     on  $projection.Plant = _Plant.Plant
  association [1..1] to I_CompanyCode                as _CompanyCode               on  $projection.CompanyCode = _CompanyCode.CompanyCode
  association [1..1] to I_BusinessArea               as _BusinessArea              on  $projection.BusinessArea = _BusinessArea.BusinessArea
  association [1..*] to I_CostCenter                 as _CostCenter                on  $projection.CostCenter      = _CostCenter.CostCenter
                                                                                   and $projection.ControllingArea = _CostCenter.ControllingArea
  association [1..1] to I_ControllingArea            as _ControllingArea           on  $projection.ControllingArea = _ControllingArea.ControllingArea
{
  key Project,
  ProjectWithCodingMask,
  ProjectObject,
  case 
  when I_Project._ProjectShortText.LanguageBasedShortText is not initial
  then I_Project._ProjectShortText.LanguageBasedShortText
  else ProjectDescription 
  end as ProjectDescription,
  //ProjectDescription,

  'PD' as ObjectType,
  PlannedStartDate,
  PlannedEndDate,
  ForecastedStartDate,
  ForecastedEndDate,
  FreeDefinedAttribute01,
  FreeDefinedAttribute02,
  FreeDefinedAttribute03,
  FreeDefinedAttribute04,
  FreeDefinedQuantity1,
  FreeDefinedQuantity1Unit,
  FreeDefinedQuantity2,
  FreeDefinedQuantity2Unit,
  FreeDefinedAmount1,
  FreeDefinedAmount1Currency,
  FreeDefinedAmount2,
  FreeDefinedAmount2Currency,
  FreeDefinedDate1,
  FreeDefinedDate2,
  FreeDefinedIndicator1,
  FreeDefinedIndicator2,
  ResponsiblePersonName,
  Currency,
  @ObjectModel.foreignKey.association: '_Plant'
  Plant,
  @ObjectModel.foreignKey.association: '_CompanyCode'
  CompanyCode,
  ApplicantCode,
  CreationDate,
  CreatedByUser,
  LastChangeDate,
  //Remove Status fields

//  case

//  when _StsObjConcatActiveStsILL.ConcatenatedActiveSystStsName is null

//    then ''

//  else 

//    _StsObjConcatActiveStsILL.ConcatenatedActiveSystStsName

//  end as ConcatenatedActiveSystStsName,

//  case

//  when _StsObjConcatActiveStsILL.ConcatenatedActiveUserStsName is null

//    then ''

//  else 

//    _StsObjConcatActiveStsILL.ConcatenatedActiveUserStsName

//  end as ConcatenatedActiveUserStsName,

  //Remove Status fields

  //New Dummy fields

  '' as ConcatenatedActiveSystStsName,
  '' as ConcatenatedActiveUserStsName,
  //New Dummy fields

  ResponsiblePerson,
  @ObjectModel.foreignKey.association: '_CostCenter'
  CostCenter,
  @ObjectModel.foreignKey.association: '_ControllingArea'
  ControllingArea,

  //yellow*

  _ProjectProfileCode.ProjectProfileCode,
  _ProjectProfileCode._Text,
  ////Version

  ////ProjectProfileCodeText,

  //*yellow



  ProfitCenter,
  FactoryCalendar,
  //yellow*

  BudgetProfile,
  @ObjectModel.foreignKey.association: '_BusinessArea'
  BusinessArea,
  //*yellow

  ProjInterestCalcProfile,
  LastChangedByUser,
  _StsObjConcatActiveStsILL,
  _Plant,
  _CompanyCode,
  _BusinessArea,
  _CostCenter,
  _ControllingArea,
  
  @UI.hidden: true
  @Consumption.hidden: true
  _ResponsiblePerson,

  @UI.hidden: true
  @Consumption.hidden: true
  _ProjectApplicant
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PROJECT",
"I_PROJECTOBJECTSHORTTEXT",
"I_PROJECTPROFILECODE"
],
"ASSOCIATED":
[
"I_BUSINESSAREA",
"I_COMPANYCODE",
"I_CONTROLLINGAREA",
"I_COSTCENTER",
"I_PLANT",
"I_PROJECTAPPLICANT",
"I_PROJECTPROFILECODETEXT",
"I_PROJECTRESPONSIBLEPERSON",
"I_STSOBJCONCATACTIVESTSILL"
],
"BASE":
[
"I_PROJECT",
"I_PROJECTPROFILECODE"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/