A_DevProjRoleStaffing

DDL: A_DEVPROJROLESTAFFING Type: view_entity COMPOSITE

Project Staffing Details

A_DevProjRoleStaffing is a Composite CDS View that provides data about "Project Staffing Details" in SAP S/4HANA. It reads from 1 data source (R_DevProjRoleStaffingTP) and exposes 18 fields with key fields ProjectRoleUUID, ProjectUUID, BusinessPartnerUUID. It has 5 associations to related views.

Data Sources (1)

SourceAliasJoin Type
R_DevProjRoleStaffingTP R_DevProjRoleStaffingTP projection

Associations (5)

CardinalityTargetAliasCondition
[0..*] A_DevelopmentProjectElement _ProjectElement $projection.DevProjElmntUUID = _ProjectElement.DevProjElmntUUID
[1..*] A_DevelopmentProjectRole _Role $projection.ProjectRoleUUID = _Role.ProjectRoleUUID
[0..*] A_DevRoleTaskAssignment _TaskRoleAssignment $projection.ProjectRoleUUID = _TaskRoleAssignment.ProjectRoleUUID and $projection.DevProjElmntUUID = _TaskRoleAssignment.DevProjElmntUUID and $projection.DevProjRoleStfngShadowRoleUUID = _TaskRoleAssignment.DevRoleTskAssgmtShadowRoleUUID
[1..1] A_DevProjResponsible _ProjectResponsible $projection.ProjectRoleUUID = _ProjectResponsible.ProjectRoleUUID and $projection.BusinessPartnerUUID = _ProjectResponsible.BusinessPartnerUUID
[1..*] A_DevProjectElementResponsible _ProjectElmntResponsible $projection.BusinessPartnerUUID = _ProjectElmntResponsible.BusinessPartnerUUID and $projection.ProjectRoleUUID = _ProjectElmntResponsible.ProjectRoleUUID and $projection.DevProjElmntUUID = _ProjectElmntResponsible.DevProjElmntUUID

Annotations (9)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Project Staffing Details view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
OData.entityType.name DevProjRoleStaffing_Type view

Fields (18)

KeyFieldSource TableSource FieldDescription
KEY ProjectRoleUUID ProjectRoleUUID
KEY ProjectUUID ProjectUUID
KEY BusinessPartnerUUID BusinessPartnerUUID
DevProjElmntUUID DevProjElmntUUID
DevProjRoleStfngShadowRoleUUID DevProjRoleStfngShadowRoleUUID
StaffingUUID StaffingUUID
DevProjRoleStfngBeginDate DevProjRoleStfngBeginDate
DevProjRoleStfngEndDate DevProjRoleStfngEndDate
PlannedWorkQuantity PlannedWorkQuantity
PlannedWorkQuantityUnit PlannedWorkQuantityUnit
DevProjRoleStfngBookingType DevProjRoleStfngBookingType
PlannedStartDate PlannedStartDate
DevProjRoleStfngPlndFinishDate DevProjRoleStfngPlndFinishDate
_ProjectElement _ProjectElement
_TaskRoleAssignment _TaskRoleAssignment
_Role _Role
_ProjectResponsible _ProjectResponsible
_ProjectElmntResponsible _ProjectElmntResponsible
@AccessControl.authorizationCheck: #MANDATORY
@Metadata.ignorePropagatedAnnotations:true
@EndUserText.label: 'Project Staffing Details'
@ObjectModel: {
    usageType: {
      dataClass:       #TRANSACTIONAL,
      serviceQuality:  #C,
      sizeCategory:    #XL
    }
}
@VDM: {
    viewType: #COMPOSITE,
    lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@OData.entityType.name:'DevProjRoleStaffing_Type'
@VDM.usage.type:[#TRANSACTIONAL_PROCESSING_SERVICE]

define view entity A_DevProjRoleStaffing
  as projection on R_DevProjRoleStaffingTP
  association [0..*] to A_DevelopmentProjectElement    as _ProjectElement          on  $projection.DevProjElmntUUID = _ProjectElement.DevProjElmntUUID
  association [1..*] to A_DevelopmentProjectRole       as _Role                    on  $projection.ProjectRoleUUID = _Role.ProjectRoleUUID
  association [0..*] to A_DevRoleTaskAssignment        as _TaskRoleAssignment      on  $projection.ProjectRoleUUID                = _TaskRoleAssignment.ProjectRoleUUID
                                                                                   and $projection.DevProjElmntUUID = _TaskRoleAssignment.DevProjElmntUUID
                                                                                   and $projection.DevProjRoleStfngShadowRoleUUID = _TaskRoleAssignment.DevRoleTskAssgmtShadowRoleUUID
  association [1..1] to A_DevProjResponsible           as _ProjectResponsible      on  $projection.ProjectRoleUUID     = _ProjectResponsible.ProjectRoleUUID
                                                                                   and $projection.BusinessPartnerUUID = _ProjectResponsible.BusinessPartnerUUID
  association [1..*] to A_DevProjectElementResponsible as _ProjectElmntResponsible on  $projection.BusinessPartnerUUID = _ProjectElmntResponsible.BusinessPartnerUUID
                                                                                   and $projection.ProjectRoleUUID     = _ProjectElmntResponsible.ProjectRoleUUID
                                                                                   and $projection.DevProjElmntUUID = _ProjectElmntResponsible.DevProjElmntUUID
{
  key ProjectRoleUUID,
  key ProjectUUID,
  key BusinessPartnerUUID,
      DevProjElmntUUID,
      DevProjRoleStfngShadowRoleUUID,
      StaffingUUID,
      DevProjRoleStfngBeginDate,
      DevProjRoleStfngEndDate,
      @Semantics.quantity.unitOfMeasure : 'PlannedWorkQuantityUnit'
      PlannedWorkQuantity,
      PlannedWorkQuantityUnit,
      DevProjRoleStfngBookingType,
      PlannedStartDate,
      DevProjRoleStfngPlndFinishDate,
      /* Associations */
      _Project : redirected to parent A_DevelopmentProject,
      _ProjectElement,
      _TaskRoleAssignment,
      _Role,
      _ProjectResponsible,
      _ProjectElmntResponsible
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"R_DEVPROJROLESTAFFINGTP"
],
"ASSOCIATED":
[
"A_DEVELOPMENTPROJECT",
"A_DEVELOPMENTPROJECTELEMENT",
"A_DEVELOPMENTPROJECTROLE",
"A_DEVPROJECTELEMENTRESPONSIBLE",
"A_DEVPROJRESPONSIBLE",
"A_DEVROLETASKASSIGNMENT",
"R_DEVELOPMENTPROJECTTP"
],
"BASE":
[
"R_DEVPROJROLESTAFFINGTP"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/