I_ProjectBillingRequestTP
Details of Project Billing Request
I_ProjectBillingRequestTP is a Transactional CDS View that provides data about "Details of Project Billing Request" in SAP S/4HANA. It reads from 1 data source (I_ProjectBillingRequest) and exposes 16 fields with key field ProjectBillingRequestUUID. It has 3 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ProjectBillingRequest | ProjectBillingRequest | from |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_SalesOrder | _SalesOrder | $projection.SalesDocument = _SalesOrder.SalesOrder |
| [0..*] | I_ProjectBillingRequestItemTP | _ProjectBillingReqItemTP | |
| [0..1] | I_ProjBillgReqObjectLinkTP | _ProjBillgReqObjectLink | |
Annotations (8)
| Name | Value | Level | Field |
|---|---|---|---|
| VDM.viewType | #TRANSACTIONAL | view | |
| VDM.lifecycle.contract.type | #SAP_INTERNAL_API | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #X | view | |
| ObjectModel.sapObjectNodeType.name | ProjectBillingRequest | view | |
| EndUserText.label | Details of Project Billing Request | view |
Fields (16)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ProjectBillingRequestUUID | I_ProjectBillingRequest | ProjectBillingRequestUUID | |
| ProjectBillingRequest | I_ProjectBillingRequest | ProjectBillingRequest | ||
| ProjectInternalID | ProjectInternalID | |||
| ProjectBillingRequestStatus | I_ProjectBillingRequest | ProjectBillingRequestStatus | ||
| ProjectBillingRequestType | I_ProjectBillingRequest | ProjectBillingRequestType | ||
| SalesDocument | I_ProjectBillingRequest | SalesDocument | ||
| ProjBillgReqLastChgdBy | I_ProjectBillingRequest | ProjBillgReqLastChgdBy | ||
| ProjBillgReqLastChgdAtDteTme | I_ProjectBillingRequest | ProjBillgReqLastChgdAtDteTme | ||
| ProjBillgReqCreatedBy | I_ProjectBillingRequest | ProjBillgReqCreatedBy | ||
| ProjBillgReqCreatedAtDteTme | I_ProjectBillingRequest | ProjBillgReqCreatedAtDteTme | ||
| _ProjectBillingRequestItem | I_ProjectBillingRequest | _ProjectBillingRequestItem | ||
| _ProjectBillingReqItemTP | _ProjectBillingReqItemTP | |||
| _SalesOrder | _SalesOrder | |||
| _EnterpriseProject | _EnterpriseProject | |||
| _ProjBillgReqObjectLink | _ProjBillgReqObjectLink | |||
| _ProjectBillingRequestStatus | _ProjectBillingRequestStatus |
//@AbapCatalog.sqlViewName: 'IPROJBILLREQ'
//@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #TRANSACTIONAL
@VDM.lifecycle.contract.type:#SAP_INTERNAL_API
//@AbapCatalog.compiler.compareFilter: true
//@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
//@AccessControl.privilegedAssociations: ['_SalesBillingPlanDueDate']
@ObjectModel.usageType: {
sizeCategory: #XL,
dataClass: #TRANSACTIONAL,
serviceQuality: #X
}
@ObjectModel.sapObjectNodeType.name: 'ProjectBillingRequest'
@EndUserText.label: 'Details of Project Billing Request'
define root view entity I_ProjectBillingRequestTP
as select from I_ProjectBillingRequest as ProjectBillingRequest
// association [1..1] to I_EnterpriseProject as _EnterpriseProject on $projection.ProjectInternalID = _EnterpriseProject.ProjectInternalID
/* association [1..*] to I_ProjectBillgRequestRevnCube as _ProjectBillgRequestRevnCube on ProjectBillingRequest.ProjectBillingRequestUUID = _ProjectBillgRequestRevnCube.ProjectBillingRequestUUID
*/
/* association [0..1] to I_CostCenterText as _CostCenterText on $projection.costcenter = _CostCenterText.CostCenter
and $projection.controllingarea = _CostCenterText.ControllingArea
and $projection.PlannedStartDate <= _CostCenterText.ValidityEndDate
and $projection.PlannedStartDate >= _CostCenterText.ValidityStartDate
and _CostCenterText.Language = $session.system_language
*/
/*removing the association as now Profit center name is exposed as Virtual fields*/
/* association [0..1] to I_ProfitCenterText as _ProfitCenterText on $projection.profitcenter = _ProfitCenterText.ProfitCenter
and $projection.controllingarea = _ProfitCenterText.ControllingArea
and $projection.PlannedStartDate <= _ProfitCenterText.ValidityEndDate
and $projection.PlannedStartDate >= _ProfitCenterText.ValidityStartDate
and _ProfitCenterText.Language = $session.system_language
*/
/* association [0..1] to I_EngagementProjectSrvcOrgText as _EngagementProjectSrvcOrgText on $projection.enterpriseprojectserviceorg = _EngagementProjectSrvcOrgText.EngagementProjectServiceOrg
and _EngagementProjectSrvcOrgText.Language = $session.system_language
*/
association [1..1] to I_SalesOrder as _SalesOrder on $projection.SalesDocument = _SalesOrder.SalesOrder
composition [0..*] of I_ProjectBillingRequestItemTP as _ProjectBillingReqItemTP
composition [0..1] of I_ProjBillgReqObjectLinkTP as _ProjBillgReqObjectLink
{
key ProjectBillingRequest.ProjectBillingRequestUUID as ProjectBillingRequestUUID,
ProjectBillingRequest.ProjectBillingRequest as ProjectBillingRequest,
ProjectInternalID,
ProjectBillingRequest.ProjectBillingRequestStatus as ProjectBillingRequestStatus,
ProjectBillingRequest.ProjectBillingRequestType as ProjectBillingRequestType,
ProjectBillingRequest.SalesDocument as SalesDocument,
// ProjectBillingRequest.SalesDocumentType as SalesDocumentType,
@Semantics.user.lastChangedBy: true
ProjectBillingRequest.ProjBillgReqLastChgdBy as ProjBillgReqLastChgdBy,
@Semantics.systemDateTime.lastChangedAt: true
ProjectBillingRequest.ProjBillgReqLastChgdAtDteTme as ProjBillgReqLastChgdAtDteTme,
@Semantics.user.createdBy: true
ProjectBillingRequest.ProjBillgReqCreatedBy as ProjBillgReqCreatedBy,
@Semantics.systemDateTime.createdAt: true
ProjectBillingRequest.ProjBillgReqCreatedAtDteTme as ProjBillgReqCreatedAtDteTme,
ProjectBillingRequest._ProjectBillingRequestItem,
// _EnterpriseProject.Project,
// ProjectBillingRequestDesc,
// ***** The below three fields are used in I_CostCenterText and hence cannot be moved up
// _EnterpriseProject.PlannedStartDate as PlannedStartDate,
// _EnterpriseProject._ProjectElement.CostCenter,
// _EnterpriseProject.ControllingArea,
// _EnterpriseProject.ProfitCenter,
// _EnterpriseProject.EnterpriseProjectServiceOrg,
// *****
// _SalesOrder.TransactionCurrency as DocumentCurrency,
//_ProjectBillgRequestRevnCube.DocumentCurrency as DocumentCurrency,
// _SalesOrder.SoldToParty as Customer,
// _CostCenterText ,
_ProjectBillingReqItemTP,
_SalesOrder,
// _ProfitCenterText,
_EnterpriseProject,
_ProjBillgReqObjectLink,
_ProjectBillingRequestStatus
// _EngagementProjectSrvcOrgText
}
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