C_EntProjProfnlSrvcTeamMbrVH
Professional Service Project Members
C_EntProjProfnlSrvcTeamMbrVH is a Consumption CDS View that provides data about "Professional Service Project Members" in SAP S/4HANA. It reads from 3 data sources (I_BusinessPartner_to_BP_Role, I_BusinessPartner, I_WorkforcePerson_1) and exposes 23 fields with key fields BusinessPartner, ValidTo. Part of development package ODATA_PPM_PRO_CTRL_PROFNL_SRVC.
Data Sources (3)
| Source | Alias | Join Type |
|---|---|---|
| I_BusinessPartner_to_BP_Role | BupaToBPRole | inner |
| I_BusinessPartner | BusinessPartner | inner |
| I_WorkforcePerson_1 | Worker | from |
Annotations (13)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #MANDATORY | view | |
| EndUserText.label | Professional Service Project Members | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.representativeKey | BusinessPartner | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.dataCategory | #VALUE_HELP | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| VDM.viewType | #CONSUMPTION | view | |
| Search.searchable | true | view | |
| Consumption.ranked | true | view | |
| Metadata.allowExtensions | true | view |
Fields (23)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BusinessPartner | I_WorkforcePerson_1 | BusinessPartner | |
| KEY | ValidTo | I_BusinessPartner_to_BP_Role | ValidTo | |
| ValidFrom | I_BusinessPartner_to_BP_Role | ValidFrom | ||
| PersonFullName | I_WorkforcePerson_1 | FullName | ||
| FirstName | I_WorkforcePerson_1 | FirstName | ||
| LastName | I_WorkforcePerson_1 | LastName | ||
| Building | ||||
| RoomNumber | _WorkplaceAddress | RoomNumber | ||
| NormalizedPhoneNumber | _WorkplaceAddress | NormalizedPhoneNumber | ||
| DefaultEmailAddress | _WorkplaceAddress | DefaultEmailAddress | ||
| AuthorizationGroup | I_WorkforcePerson_1 | AuthorizationGroup | ||
| IsBusinessPurposeCompleted | I_WorkforcePerson_1 | IsBusinessPurposeCompleted | ||
| DataControllerSet | I_WorkforcePerson_1 | DataControllerSet | ||
| DataController1 | I_WorkforcePerson_1 | DataController1 | ||
| DataController2 | I_WorkforcePerson_1 | DataController2 | ||
| DataController3 | I_WorkforcePerson_1 | DataController3 | ||
| DataController4 | I_WorkforcePerson_1 | DataController4 | ||
| DataController5 | I_WorkforcePerson_1 | DataController5 | ||
| DataController6 | I_WorkforcePerson_1 | DataController6 | ||
| DataController7 | I_WorkforcePerson_1 | DataController7 | ||
| DataController8 | I_WorkforcePerson_1 | DataController8 | ||
| DataController9 | I_WorkforcePerson_1 | DataController9 | ||
| DataController10 | I_WorkforcePerson_1 | DataController10 |
@AccessControl.authorizationCheck: #MANDATORY
@EndUserText.label: 'Professional Service Project Members'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel: {
semanticKey: [ 'PersonFullName' ],
representativeKey: 'BusinessPartner',
usageType: {
serviceQuality: #C,
dataClass: #TRANSACTIONAL,
sizeCategory: #XL
},
dataCategory: #VALUE_HELP
}
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@VDM.viewType: #CONSUMPTION
@Search.searchable: true
@Consumption.ranked: true
@Metadata.allowExtensions: true
@Consumption.dbHints:[ 'USE_HEX_PLAN' ]
define view entity C_EntProjProfnlSrvcTeamMbrVH
as select from I_WorkforcePerson_1 as Worker
inner join I_BusinessPartner_to_BP_Role as BupaToBPRole on BupaToBPRole.BusinessPartner = Worker.BusinessPartner
and(
BupaToBPRole.BusinessPartnerRole = 'BUP003' // Employee role
or BupaToBPRole.BusinessPartnerRole = 'BBP005' // Contingent Worker
)
inner join I_BusinessPartner as BusinessPartner on Worker.BusinessPartner = BusinessPartner.BusinessPartner
left outer to one join I_WorkplaceAddress as _WorkplaceAddress on BusinessPartner.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID
{
@Search.defaultSearchElement: true
@Search.ranking: #HIGH
@Search.fuzzinessThreshold: 0.8
@ObjectModel.text.element: [ 'PersonFullName' ]
key Worker.BusinessPartner,
key BupaToBPRole.ValidTo,
BupaToBPRole.ValidFrom,
@Search.defaultSearchElement: true
@Search.ranking: #LOW
@Search.fuzzinessThreshold: 0.8
@Semantics: { name: { fullName: true }, text: true }
Worker.FullName as PersonFullName,
@Search.defaultSearchElement: true
@Search.ranking: #LOW
@Search.fuzzinessThreshold: 0.8
Worker.FirstName,
@Search.defaultSearchElement: true
@Search.ranking: #LOW
@Search.fuzzinessThreshold: 0.8
Worker.LastName,
cast (_WorkplaceAddress.Building as ad_bldng ) as Building,
_WorkplaceAddress.RoomNumber,
@Semantics: {telephone : { type: [ #WORK, #PREF ]}}
_WorkplaceAddress.NormalizedPhoneNumber,
@Semantics : {eMail.address: true}
_WorkplaceAddress.DefaultEmailAddress,
@Consumption.hidden: true
Worker.AuthorizationGroup,
@Consumption.hidden: true
@Semantics.booleanIndicator
Worker.IsBusinessPurposeCompleted,
@Consumption.hidden: true
Worker.DataControllerSet,
@Consumption.hidden: true
Worker.DataController1,
@Consumption.hidden: true
Worker.DataController2,
@Consumption.hidden: true
Worker.DataController3,
@Consumption.hidden: true
Worker.DataController4,
@Consumption.hidden: true
Worker.DataController5,
@Consumption.hidden: true
Worker.DataController6,
@Consumption.hidden: true
Worker.DataController7,
@Consumption.hidden: true
Worker.DataController8,
@Consumption.hidden: true
Worker.DataController9,
@Consumption.hidden: true
Worker.DataController10
}
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