I_PPM_BUSINESSPARTNERFOROBJECT
Responsible or assigned BusinessPartners for objects
I_PPM_BUSINESSPARTNERFOROBJECT is a CDS View in S/4HANA. Responsible or assigned BusinessPartners for objects. It contains 2 fields. 4 CDS views read from this table.
CDS Views using this table (4)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| I_DevProjResponsible | view | from | COMPOSITE | Responsible Details |
| I_PPM_MyChecklistItem | view | from | COMPOSITE | Returns My Checklist Items |
| P_PPM_ResponsibleSummaryForObj | view | from | COMPOSITE | |
| P_PPM_RespSummaryForObjInRange | view | from | COMPOSITE |
Fields (2)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | BusinessPartnerUUID | BusinessPartnerUUID | 1 |
| ProjectRoleUUID | ProjectRoleUUID | 2 |
@EndUserText.label: 'Responsible or assigned BusinessPartners for objects'
@VDM.viewType: #BASIC
@AbapCatalog: {
sqlViewName: 'IPPMBPFOROBJ',
compiler.compareFilter: true,
preserveKey:true
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@ObjectModel: {
representativeKey: 'BusinessPartnerUUID',
usageType: {
serviceQuality: #C,
dataClass: #MIXED,
sizeCategory: #XL
}
}
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
define view I_PPM_BusinessPartnerForObject
// Return all objects including information which Business Partner is either responsible or task assigned
//return Entities and Business Partners with concrete linkage
as select from dpr_entity_link as elink
join dpr_bupa_link as blink on blink.participant_guid = elink.participant_guid
join cgpl_hierarchy as cgplhier on cgplhier.guid = elink.participant_guid
association [0..1] to I_BusinessUserBasic as _BusinessUser
on $projection.BusinessPartnerUUID = _BusinessUser.BusinessPartnerUUID
association [0..1] to I_PPM_Text as _ProjectRoleName
on ( $projection.ProjectRoleUUID = _ProjectRoleName.ReferencedObjectUUID )
and ( _ProjectRoleName.LanguageCode = $session.system_language )
{
key elink.entity_guid as ReferencedObjectUUID,
key blink.bupa_guid as BusinessPartnerUUID,
cast(cgplhier.up as /s4ppm/tv_entity_guid preserving type ) as ProjectRoleUUID,
elink.responsible as IsBusinessPartnerResponsible,
cast( case when elink.beg_tmstmp = 0 then
case when blink.beg_tmstmp = 0 then
blink.planstart
else
blink.beg_tmstmp end
else elink.beg_tmstmp end as timestamp ) as StaffingPeriodStartDateTime,
cast( case when elink.end_tmstmp = 0 then
case when blink.end_tmstmp = 0 then
blink.planfinish
else
blink.end_tmstmp end
else elink.end_tmstmp end as timestamp ) as StaffingPeriodFinishDateTime,
_BusinessUser,
_ProjectRoleName
}
union
//return Entities and Business Partners with abstract linkage
select from dpr_entity_link as elink
join cgpl_hierarchy as cgplhier on cgplhier.up = elink.participant_guid
join dpr_bupa_link as blink on blink.participant_guid = cgplhier.guid
association [0..1] to I_BusinessUserBasic as _BusinessUser
on $projection.BusinessPartnerUUID = _BusinessUser.BusinessPartnerUUID
association [0..1] to I_PPM_Text as _ProjectRoleName
on ( $projection.ProjectRoleUUID = _ProjectRoleName.ReferencedObjectUUID )
and ( _ProjectRoleName.LanguageCode = $session.system_language )
{
key elink.entity_guid as ReferencedObjectUUID,
key blink.bupa_guid as BusinessPartnerUUID,
cgplhier.up as ProjectRoleUUID,
elink.responsible as IsBusinessPartnerResponsible,
cast( case when elink.beg_tmstmp = 0 then
case when blink.beg_tmstmp = 0 then
blink.planstart
else
blink.beg_tmstmp end
else elink.beg_tmstmp end as timestamp ) as StaffingPeriodStartDateTime,
cast( case when elink.end_tmstmp = 0 then
case when blink.end_tmstmp = 0 then
blink.planfinish
else
blink.end_tmstmp end
else elink.end_tmstmp end as timestamp ) as StaffingPeriodFinishDateTime,
_BusinessUser,
//_BusinessPartner, // obsolete, will be removed
_ProjectRoleName
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"CGPL_HIERARCHY",
"DPR_BUPA_LINK",
"DPR_ENTITY_LINK"
],
"ASSOCIATED":
[
"I_BUSINESSUSERBASIC",
"I_PPM_TEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/