I_ProjectBillingElementTP
Details of Billing Element
I_ProjectBillingElementTP is a Transactional CDS View that provides data about "Details of Billing Element" in SAP S/4HANA. It reads from 2 data sources (I_WBSElementBasicData, I_ProjectBillingElement) and exposes 61 fields with key field ProjectBillingElementUUID. It has 19 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_WBSElementBasicData | _WBSData | inner |
| I_ProjectBillingElement | ProjectBillingElement | from |
Associations (19)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | P_CUSTPROJSLSORDITMBYUSER | _CUSTPROJSLSORDITMBYUSER | _CUSTPROJSLSORDITMBYUSER.WBSElement = ProjectBillingElement.BillingWBSElementInternalID --YD and _CUSTPROJSLSORDITMBYUSER.UserID = $session.user -- |
| [0..1] | I_MyProjectBillingElements | _MyProjectBillingElements | _MyProjectBillingElements.BillingWBSElementInternalID = ProjectBillingElement.BillingWBSElementInternalID -- and _MyProjectBillingElements.UserID = $session.user |
| [0..1] | P_ProjBillgElmntSalesDets | _ProjBillgElmntSalesDets | $projection.BillingWBSElementInternalID = _ProjBillgElmntSalesDets.BillingWBSElementInternalID -- |
| [1..1] | I_EnterpriseProject | _EnterpriseProject | $projection.ProjectInternalID = _EnterpriseProject.ProjectInternalID |
| [1..1] | I_EnterpriseProjectElement | _EnterpriseProjectElement | $projection.BillingWBSElementInternalID = _EnterpriseProjectElement.WBSElementInternalID and _EnterpriseProjectElement.WBSElementIsBillingElement = 'X' -- |
| [1..1] | I_SalesOrderItem | _SalesOrderItem | $projection.BillingWBSElementInternalID = _SalesOrderItem.WBSElementInternalID -- |
| [1..1] | I_SalesOrder | _SalesOrder | $projection.salesorder = _SalesOrder.SalesOrder -- |
| [1..1] | I_SalesDocItemBillingPlan | _SalesDocItemBillPlan | $projection.billingplan = _SalesDocItemBillPlan.BillingPlan |
| [1..*] | I_ProjectBillingDocDetails | _ProjectBillingDocDetails | $projection.BillingWBSElementInternalID = _ProjectBillingDocDetails.WBSElementInternalID |
| [1..1] | I_TmpProjectBillingRequest | _TmpProjectBillingRequest | $projection.ProjectBillingElementUUID = _TmpProjectBillingRequest.ProjectBillingElementUUID and _TmpProjectBillingRequest.ProjectBillingRequestStatus = 'C' |
| [0..*] | I_ProjectBillingRequestItemTP | _ProjectBillingRequestItemTP | $projection.ProjectBillingElementUUID = _ProjectBillingRequestItemTP.ProjectBillingElementUUID |
| [0..1] | I_ProfitCenterText | _ProfitCenterText | $projection.profitcenter = _ProfitCenterText.ProfitCenter and $projection.ControllingArea = _ProfitCenterText.ControllingArea and $projection.projectstartdate <= _ProfitCenterText.ValidityEndDate and $projection.projectstartdate >= _ProfitCenterText.ValidityStartDate and _ProfitCenterText.Language = $session.system_language |
| [0..1] | I_ProfitCenterText | _ProfitCenterName | $projection.WBSElementProfitCenter = _ProfitCenterName.ProfitCenter and $projection.ControllingArea = _ProfitCenterName.ControllingArea and $projection.projectstartdate <= _ProfitCenterName.ValidityEndDate and $projection.projectstartdate >= _ProfitCenterName.ValidityStartDate and _ProfitCenterName.Language = $session.system_language -- |
| [0..1] | I_ProjectBillingElmntDueDate | _ProjBillingDueDate | $projection.BillingWBSElementInternalID = _ProjBillingDueDate.WBSElementInternalID |
| [1..1] | I_Customer | _Customer | $projection.Customer = _Customer.Customer |
| [0..*] | I_PrjBlgElmEntrForPrepayment | _PrjBlgElmEntrForPrepayment | $projection.ProjectBillingElementUUID = _PrjBlgElmEntrForPrepayment.ProjectBillingElementUUID and _PrjBlgElmEntrForPrepayment.PlndPrepaymentAmtInProjCrcy > 0 |
| [0..1] | I_EngagementProjectSrvcOrgText | _ServiceOrganizationText | _ServiceOrganizationText.EngagementProjectServiceOrg = $projection.EngagementProjectServiceOrg and _ServiceOrganizationText.Language = $session.system_language |
| [0..1] | E_ProjectBillingElement | _Extension | $projection.ProjectBillingElementUUID = _Extension.ProjectBillingElementUUID |
| [0..*] | I_ProjectBillingElementEntryTP | _ProjectBillingElementEntry | |
Annotations (9)
| Name | Value | Level | Field |
|---|---|---|---|
| VDM.viewType | #TRANSACTIONAL | view | |
| VDM.lifecycle.contract.type | #SAP_INTERNAL_API | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Details of Billing Element | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.sapObjectNodeType.name | ProjectBillingElement | view |
Fields (61)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ProjectBillingElementUUID | I_ProjectBillingElement | ProjectBillingElementUUID | PBE UUID |
| BillingWBSElementInternalID | I_ProjectBillingElement | BillingWBSElementInternalID | WBS Internal ID | |
| DocumentCurrency | I_ProjectBillingElement | DocumentCurrency | Document Currency | |
| BilledRevenueAmtInDocCrcy | I_ProjectBillingElement | BilledRevenueAmtInDocCrcy | Billed Revenue | |
| WrittenOffRevenueAmtInDocCrcy | I_ProjectBillingElement | WrittenOffRevenueAmtInDocCrcy | Written-off Revenue | |
| ProjBillgElmntCreatedByUser | I_ProjectBillingElement | ProjBillgElmntCreatedByUser | PBE Created By | |
| ProjBillgElmntCreatedAtDteTme | I_ProjectBillingElement | ProjBillgElmntCreatedAtDteTme | PBE Created On | |
| ProjBillgElmntLastChgdByUser | I_ProjectBillingElement | ProjBillgElmntLastChgdByUser | PBE Changed By | |
| ProjBillgElmntLastChgdAtDteTme | I_ProjectBillingElement | ProjBillgElmntLastChgdAtDteTme | PBE Changed On | |
| WBSElementExternalID | WBS Element External ID | |||
| WBSElementExternalID | _WBSElement | WBSElementExternalID | WBS Element External ID | |
| ProjectInternalID | ||||
| ProjectInternalID | ||||
| ProjectObjectasProjectObject | ||||
| BillingPlan | Bill. Plan No. | |||
| BillingPlan | _ProjBillgElmntSalesDets | BillingPlan | Bill. Plan No. | |
| WBSElementProfitCenter | Profit Center | |||
| WBSElementProfitCenter | _WBSElement | ProfitCenter | Profit Center | |
| CappedNetAmount | ||||
| CappedNetAmount | ||||
| ProjectUUID | _EnterpriseProjectElement | ProjectUUID | Project UUID | |
| ControllingArea | ||||
| Project | ||||
| ProfitCenter | ||||
| ProcessingStatus | ||||
| ProjectStartDate | ||||
| ProjectEndDate | ||||
| EngagementProjectServiceOrg | ||||
| ProjectDescription | ||||
| SoldToPartyasCustomer | ||||
| Customer | ||||
| UserID | _ProjBillgElmntSalesDets | UserID | User Name | |
| ProjectBillingRequest | _TmpProjectBillingRequest | ProjectBillingRequest | PBR | |
| ProjectBillingRequestUUID | _TmpProjectBillingRequest | ProjectBillingRequestUUID | Proj Billg Req UUID | |
| ProjectCurrency | ||||
| SalesOrder | SD Document | |||
| BillingBlockStatus | ||||
| BillingBlockStatus | ||||
| TotalBlockStatus | ||||
| TotalBlockStatus | ||||
| _ProjectBillingDocDetails | _ProjectBillingDocDetails | |||
| _ServiceOrganizationText | _ServiceOrganizationText | |||
| _ProfitCenterText | _ProfitCenterText | |||
| _ProfitCenterName | _ProfitCenterName | |||
| BillingPlanBillingDate | ||||
| BillingPlanBillingDate | _ProjBillgElmntSalesDets | DueBillingDate | ||
| _PrjBlgElmEntrForPrepayment | _PrjBlgElmEntrForPrepayment | |||
| _SalesDocItemBillPlan | ||||
| SalesOrder | _ProjBillgElmntSalesDets | SalesOrder | SD Document | |
| SalesOrderItem | _ProjBillgElmntSalesDets | SalesOrderItem | Sales Order Item | |
| _SalesDocItemBillPlan | _ProjBillgElmntSalesDets | _SalesDocItemBillPlan | ||
| _SalesOrderItem | ||||
| _SalesOrderItem | _ProjBillgElmntSalesDets | _SalesOrderItem | ||
| BillingPlanUsageCategory | ||||
| _SalesOrder | ||||
| _ProjectBillingElementEntry | _ProjectBillingElementEntry | |||
| _WBSElement | I_ProjectBillingElement | _WBSElement | ||
| _ProjectBillingRequestItemTP | _ProjectBillingRequestItemTP | |||
| _Customer | _Customer | |||
| _EnterpriseProject | _EnterpriseProjectElement | _Project | ||
| _EnterpriseProjectElement | _EnterpriseProjectElement |
Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.
-- Derived SQL interpretation of CDS view I_ProjectBillingElementTP.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- SQL view name: IPRJBLGELMTP
CREATE VIEW I_ProjectBillingElementTP AS
SELECT
ProjectBillingElement.ProjectBillingElementUUID AS ProjectBillingElementUUID,
ProjectBillingElement.BillingWBSElementInternalID AS BillingWBSElementInternalID,
ProjectBillingElement.DocumentCurrency AS DocumentCurrency,
ProjectBillingElement.BilledRevenueAmtInDocCrcy AS BilledRevenueAmtInDocCrcy,
ProjectBillingElement.WrittenOffRevenueAmtInDocCrcy AS WrittenOffRevenueAmtInDocCrcy,
ProjectBillingElement.ProjBillgElmntCreatedByUser AS ProjBillgElmntCreatedByUser,
ProjectBillingElement.ProjBillgElmntCreatedAtDteTme AS ProjBillgElmntCreatedAtDteTme,
ProjectBillingElement.ProjBillgElmntLastChgdByUser AS ProjBillgElmntLastChgdByUser,
ProjectBillingElement.ProjBillgElmntLastChgdAtDteTme AS ProjBillgElmntLastChgdAtDteTme,
_WBSElement.WBSElementExternalID AS WBSElementExternalID,
_EnterpriseProjectElement._Project.ProjectInternalID AS ProjectInternalID,
_ProjBillgElmntSalesDets.BillingPlan AS BillingPlan,
_WBSElement.ProfitCenter AS WBSElementProfitCenter,
_ProjBillgElmntSalesDets._SalesOrderItem.CappedNetAmount AS CappedNetAmount,
_EnterpriseProjectElement.ProjectUUID AS ProjectUUID,
_EnterpriseProjectElement._Project.ControllingArea AS ControllingArea,
_EnterpriseProjectElement._Project.Project AS Project,
_EnterpriseProjectElement._Project.ProfitCenter AS ProfitCenter,
_EnterpriseProjectElement._Project.ProcessingStatus AS ProcessingStatus,
_EnterpriseProjectElement._Project.ProjectStartDate AS ProjectStartDate,
_EnterpriseProjectElement._Project.ProjectEndDate AS ProjectEndDate,
_EnterpriseProjectElement._Project.EnterpriseProjectServiceOrg AS EngagementProjectServiceOrg,
_ProjBillgElmntSalesDets._SalesOrder.SoldToParty AS Customer,
_ProjBillgElmntSalesDets.UserID AS UserID,
_TmpProjectBillingRequest.ProjectBillingRequest AS ProjectBillingRequest,
_TmpProjectBillingRequest.ProjectBillingRequestUUID AS ProjectBillingRequestUUID,
_ProjBillgElmntSalesDets._SalesOrderItem.BillingBlockStatus AS BillingBlockStatus,
_ProjBillgElmntSalesDets._SalesOrderItem._SalesOrder.TotalBlockStatus AS TotalBlockStatus,
_ProjBillgElmntSalesDets.DueBillingDate AS BillingPlanBillingDate,
_ProjBillgElmntSalesDets.SalesOrder AS SalesOrder,
_ProjBillgElmntSalesDets.SalesOrderItem AS SalesOrderItem,
_ProjBillgElmntSalesDets._SalesDocItemBillPlan AS _SalesDocItemBillPlan,
_ProjBillgElmntSalesDets._SalesOrderItem AS _SalesOrderItem,
_ProjBillgElmntSalesDets._SalesDocItemBillPlan.BillingPlanUsageCategory AS BillingPlanUsageCategory,
ProjectBillingElement._WBSElement AS _WBSElement,
_EnterpriseProjectElement._Project AS _EnterpriseProject
FROM I_ProjectBillingElement AS ProjectBillingElement
INNER JOIN I_WBSElementBasicData AS _WBSData ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN P_CUSTPROJSLSORDITMBYUSER AS _CUSTPROJSLSORDITMBYUSER ON _CUSTPROJSLSORDITMBYUSER.WBSElement = ProjectBillingElement.BillingWBSElementInternalID -- association [0..*]
LEFT OUTER JOIN I_MyProjectBillingElements AS _MyProjectBillingElements ON _MyProjectBillingElements.BillingWBSElementInternalID = ProjectBillingElement.BillingWBSElementInternalID -- association [0..1]
LEFT OUTER JOIN P_ProjBillgElmntSalesDets AS _ProjBillgElmntSalesDets ON BillingWBSElementInternalID = _ProjBillgElmntSalesDets.BillingWBSElementInternalID -- association [0..1]
LEFT OUTER JOIN I_EnterpriseProject AS _EnterpriseProject ON ProjectInternalID = _EnterpriseProject.ProjectInternalID -- association [1..1]
LEFT OUTER JOIN I_EnterpriseProjectElement AS _EnterpriseProjectElement ON BillingWBSElementInternalID = _EnterpriseProjectElement.WBSElementInternalID AND _EnterpriseProjectElement.WBSElementIsBillingElement = 'X' -- association [1..1]
LEFT OUTER JOIN I_SalesOrderItem AS _SalesOrderItem ON BillingWBSElementInternalID = _SalesOrderItem.WBSElementInternalID -- association [1..1]
LEFT OUTER JOIN I_SalesOrder AS _SalesOrder ON salesorder = _SalesOrder.SalesOrder -- association [1..1]
LEFT OUTER JOIN I_SalesDocItemBillingPlan AS _SalesDocItemBillPlan ON billingplan = _SalesDocItemBillPlan.BillingPlan -- association [1..1]
LEFT OUTER JOIN I_ProjectBillingDocDetails AS _ProjectBillingDocDetails ON BillingWBSElementInternalID = _ProjectBillingDocDetails.WBSElementInternalID -- association [1..*]
LEFT OUTER JOIN I_TmpProjectBillingRequest AS _TmpProjectBillingRequest ON ProjectBillingElementUUID = _TmpProjectBillingRequest.ProjectBillingElementUUID AND _TmpProjectBillingRequest.ProjectBillingRequestStatus = 'C' -- association [1..1]
LEFT OUTER JOIN I_ProjectBillingRequestItemTP AS _ProjectBillingRequestItemTP ON ProjectBillingElementUUID = _ProjectBillingRequestItemTP.ProjectBillingElementUUID -- association [0..*]
LEFT OUTER JOIN I_ProfitCenterText AS _ProfitCenterText ON profitcenter = _ProfitCenterText.ProfitCenter AND ControllingArea = _ProfitCenterText.ControllingArea AND projectstartdate <= _ProfitCenterText.ValidityEndDate AND projectstartdate >= _ProfitCenterText.ValidityStartDate AND _ProfitCenterText.Language = $session.system_language -- association [0..1]
LEFT OUTER JOIN I_ProfitCenterText AS _ProfitCenterName ON WBSElementProfitCenter = _ProfitCenterName.ProfitCenter AND ControllingArea = _ProfitCenterName.ControllingArea AND projectstartdate <= _ProfitCenterName.ValidityEndDate AND projectstartdate >= _ProfitCenterName.ValidityStartDate AND _ProfitCenterName.Language = $session.system_language -- association [0..1]
LEFT OUTER JOIN I_ProjectBillingElmntDueDate AS _ProjBillingDueDate ON BillingWBSElementInternalID = _ProjBillingDueDate.WBSElementInternalID -- association [0..1]
LEFT OUTER JOIN I_Customer AS _Customer ON Customer = _Customer.Customer -- association [1..1]
LEFT OUTER JOIN I_PrjBlgElmEntrForPrepayment AS _PrjBlgElmEntrForPrepayment ON ProjectBillingElementUUID = _PrjBlgElmEntrForPrepayment.ProjectBillingElementUUID AND _PrjBlgElmEntrForPrepayment.PlndPrepaymentAmtInProjCrcy > 0 -- association [0..*]
LEFT OUTER JOIN I_EngagementProjectSrvcOrgText AS _ServiceOrganizationText ON _ServiceOrganizationText.EngagementProjectServiceOrg = EngagementProjectServiceOrg AND _ServiceOrganizationText.Language = $session.system_language -- association [0..1]
LEFT OUTER JOIN E_ProjectBillingElement AS _Extension ON ProjectBillingElementUUID = _Extension.ProjectBillingElementUUID -- association [0..1]
LEFT OUTER JOIN I_ProjectBillingElementEntryTP AS _ProjectBillingElementEntry ON /* condition not available in parsed metadata */ -- association [0..*]
;
Learn More
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- CDS View Annotations — A Complete Guide
- What Is a CDS View in SAP S/4HANA?
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- 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
- BSEG to ACDOCA: The Universal Journal Migration
- Business Partner Migration: KNA1/LFA1 to BUT000
- Material Document Migration: MSEG/MKPF to MATDOC
- How to Find the Right CDS View for an SAP Table
- BW Extractor to CDS View Migration Guide
- S/4HANA CDS View Deprecation: What You Need to Know
- ABAP CDS View Tutorial — From Basics to Real-World Examples
- RAP and CDS Views — Building Transactional Apps in SAP S/4HANA
- Sales Document Status Migration: VBUP/VBUK Removal in S/4HANA
- CO Tables in S/4HANA: COEP, COBK, COSS, COSP to ACDOCA