P_MyProjectBillingElements2

DDL: P_MYPROJECTBILLINGELEMENTS2 Type: view_entity COMPOSITE

Project Billing Elements by UserID (2)

P_MyProjectBillingElements2 is a Composite CDS View that provides data about "Project Billing Elements by UserID (2)" in SAP S/4HANA. It reads from 4 data sources (I_EnterpriseProjectElement, I_SDDocumentCompletePartners, I_SalesOrderItem, I_WorkForcePersonMappings) and exposes 3 fields with key field ProjectBillingElementUUID.

Data Sources (4)

SourceAliasJoin Type
I_EnterpriseProjectElement EntProjElement inner
I_SDDocumentCompletePartners Partners inner
I_SalesOrderItem SalesOrderItem inner
I_WorkForcePersonMappings WorkForcePerson inner

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Project Billing Elements by UserID (2) view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.viewType #COMPOSITE view
VDM.private true view

Fields (3)

KeyFieldSource TableSource FieldDescription
KEY ProjectBillingElementUUID ProjectBillingElement ProjectBillingElementUUID
BillingWBSElementInternalID ProjectBillingElement BillingWBSElementInternalID
UserID
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Project Billing Elements by UserID (2)'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #XL,
  dataClass: #TRANSACTIONAL
}
@VDM.viewType: #COMPOSITE
@VDM.private:true
define view entity P_MyProjectBillingElements2
  as select distinct from I_ProjectBillingElement      as ProjectBillingElement
    --inner join            I_EnterpriseProjectElement   as EntProjElement  on ProjectBillingElement.BillingWBSElementInternalID = EntProjElement.WBSElementInternalID
    inner join            I_SalesOrderItem             as SalesOrderItem  on ProjectBillingElement.BillingWBSElementInternalID = SalesOrderItem.WBSElementInternalID
    inner join            I_SDDocumentCompletePartners as Partners        on SalesOrderItem.SalesOrder    = Partners.SDDocument
                                                                          and(
                                                                            SalesOrderItem.SalesOrderItem = Partners.SDDocumentItem
                                                                            or Partners.SDDocumentItem    is initial
                                                                          )
    inner join            I_WorkForcePersonMappings    as WorkForcePerson on Partners.Personnel = WorkForcePerson.WorkforceAssignment

{
  key ProjectBillingElement.ProjectBillingElementUUID,
      ProjectBillingElement.BillingWBSElementInternalID,
      $session.user as UserID
}
where
       WorkForcePerson.UserID                   = $session.user
/*  and(
       EntProjElement._Project.ProcessingStatus = '10'
    or EntProjElement._Project.ProcessingStatus = '40'
  )
*/