I_DevelopmentProjectRole

DDL: I_DEVELOPMENTPROJECTROLE SQL: DEVPROJROLE Type: view BASIC

PPM Project Role Details

I_DevelopmentProjectRole is a Basic CDS View that provides data about "PPM Project Role Details" in SAP S/4HANA. It reads from 3 data sources (dpr_part, /s4ppm/role, cgpl_task) and exposes 17 fields with key field ProjectRoleUUID.

Data Sources (3)

SourceAliasJoin Type
dpr_part _Part inner
/s4ppm/role _Role from
cgpl_task _Task inner

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName DEVPROJROLE view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #MANDATORY view
ObjectModel.representativeKey ProjectRoleUUID view
EndUserText.label PPM Project Role Details view

Fields (17)

KeyFieldSource TableSource FieldDescription
KEY ProjectRoleUUID /s4ppm/role guid
ProjectUUID /s4ppm/role project_guid
ProjectRoleType /s4ppm/role role_type
ProjectRoleName /s4ppm/role role_name
SortingNumber dpr_part sort_number
PlannedWorkQuantityUnit dpr_part work_unit
PlannedWorkQuantity dpr_part work_effort
IsVacant dpr_part vacant
CostRevenueRateCode dpr_part rate
ManualRevenueRateCurrency dpr_part currency
ManualRevenueRate dpr_part revenue_rate
ActualWorkQuantityUnit dpr_part act_wrk_unit_ext
clientNULLasPlannedStartDate
clientNULLasDevProjRolePlndFinishDate
ProjectRole dpr_part participant_id
DevProjRoleFunctionID dpr_part role_function_id
LocationType dpr_part location
@AbapCatalog.sqlViewName: 'DEVPROJROLE'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@VDM.viewType: #BASIC
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@ObjectModel.usageType: { dataClass: #TRANSACTIONAL, serviceQuality: #C, sizeCategory: #XL }
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #MANDATORY
@ObjectModel.representativeKey: 'ProjectRoleUUID'
@EndUserText.label: 'PPM Project Role Details'

define view I_DevelopmentProjectRole
  as select from /s4ppm/role as _Role
    inner join   dpr_part    as _Part on _Part.guid = _Role.guid
    inner join   cgpl_task   as _Task on  _Task.guid        = _Role.guid
                                      and _Task.object_type = 'MTG'

{
  key _Role.guid                       as ProjectRoleUUID,
      _Role.project_guid               as ProjectUUID,
      _Role.role_type                  as ProjectRoleType,
      _Role.role_name                  as ProjectRoleName,
      _Part.sort_number                as SortingNumber,
      _Part.work_unit                  as PlannedWorkQuantityUnit,
      @Semantics.quantity.unitOfMeasure : 'PlannedWorkQuantityUnit'
      _Part.work_effort                as PlannedWorkQuantity,
      _Part.vacant                     as IsVacant,
      _Part.rate                       as CostRevenueRateCode,
      _Part.currency                   as ManualRevenueRateCurrency,
      @Semantics.amount.currencyCode : 'ManualRevenueRateCurrency'
      _Part.revenue_rate               as ManualRevenueRate,

      @Semantics.quantity.unitOfMeasure : 'ActualWorkQuantityUnit'
      unit_conversion( quantity => _Part.act_work_effort ,
      source_unit =>  _Part.act_work_unit,
      target_unit => _Part.act_wrk_unit_ext,
      error_handling => 'SET_TO_NULL') as DevProjRoleActualWorkQuantity,

      _Part.act_wrk_unit_ext           as ActualWorkQuantityUnit,

      tstmp_to_dats( _Part.beg_tmstmp ,
                 abap_system_timezone( $session.client,'NULL' ),
                 $session.client,
                 'NULL' )              as PlannedStartDate,
      tstmp_to_dats( _Part.end_tmstmp ,
                       abap_system_timezone( $session.client,'NULL' ),
                       $session.client,
                       'NULL' )        as DevProjRolePlndFinishDate,

      _Part.participant_id             as ProjectRole,
      _Part.role_function_id           as DevProjRoleFunctionID,
      _Part.location                   as LocationType

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"/S4PPM/ROLE",
"CGPL_TASK",
"DPR_PART"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/