R_ProjectBillingRequestTP
Details of Project Billing Request
R_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 31 fields with key field ProjectBillingRequestUUID. It has 6 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_ProjectBillingRequest | ProjectBillingRequest | from |
Associations (6)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_SalesOrder | _SalesOrder | $projection.SalesDocument = _SalesOrder.SalesOrder |
| [1..1] | I_UserContactCard | _UserContactCard | $projection.ProjBillgReqCreatedBy = _UserContactCard.ContactCardID |
| [0..1] | P_MyProjectBillingRequests | _MyProjectBillingRequests | $projection.SalesDocument = _MyProjectBillingRequests.SalesOrder and _MyProjectBillingRequests.UserID = $session.user |
| [1..1] | I_CustomerToBusinessPartner | _CustomerToBusinessPartner | $projection.customeruuid = _CustomerToBusinessPartner.BusinessPartnerUUID |
| [0..*] | R_ProjectBillingRequestItemTP | _ProjectBillingReqItemTP | |
| [0..1] | R_ProjBillgReqObjectLinkTP | _ProjBillgReqObjectLink | |
Annotations (9)
| 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 | #C | view | |
| EndUserText.label | Details of Project Billing Request | view | |
| ObjectModel.sapObjectNodeType.name | ProjectBillingRequest | view | |
| AccessControl.personalData.blocking | #REQUIRED | view |
Fields (31)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ProjectBillingRequestUUID | I_ProjectBillingRequest | ProjectBillingRequestUUID | |
| ProjectBillingRequest | I_ProjectBillingRequest | ProjectBillingRequest | ||
| ProjectInternalID | ProjectInternalID | |||
| ProjectBillingRequestStatus | I_ProjectBillingRequest | ProjectBillingRequestStatus | ||
| ProjBillgReqApprovalStatus | I_ProjectBillingRequest | ProjBillgReqApprovalStatus | ||
| ProjectBillingRequestType | I_ProjectBillingRequest | ProjectBillingRequestType | ||
| SalesDocument | I_ProjectBillingRequest | SalesDocument | ||
| ProjectBillingCategory | I_ProjectBillingRequest | ProjectBillingCategory | ||
| ProjBillgReqLastChgdBy | I_ProjectBillingRequest | ProjBillgReqLastChgdBy | ||
| ProjBillgReqLastChgdAtDteTme | I_ProjectBillingRequest | ProjBillgReqLastChgdAtDteTme | ||
| ProjBillgReqCreatedBy | I_ProjectBillingRequest | ProjBillgReqCreatedBy | ||
| ProjBillgReqCreatedAtDteTme | I_ProjectBillingRequest | ProjBillgReqCreatedAtDteTme | ||
| _ProjectBillingRequestItem | I_ProjectBillingRequest | _ProjectBillingRequestItem | ||
| clientNULLasProjBillgReqCreatedAtDte | ||||
| Project | _EnterpriseProject | Project | ||
| CustomerUUID | _EnterpriseProject | CustomerUUID | ||
| Customer | _SalesOrder | SoldToParty | ||
| UserID | _MyProjectBillingRequests | UserID | ||
| CurrencyasDocumentCurrency | ||||
| ProjectStartDate | _EnterpriseProject | ProjectStartDate | ||
| ProjectEndDate | _EnterpriseProject | ProjectEndDate | ||
| ProfitCenter | _EnterpriseProject | ProfitCenter | ||
| ControllingArea | _EnterpriseProject | ControllingArea | ||
| ProjectDescription | _EnterpriseProject | ProjectDescription | ||
| _SalesOrder | _SalesOrder | |||
| _EnterpriseProject | _EnterpriseProject | |||
| _CustomerToBusinessPartner | _CustomerToBusinessPartner | |||
| _ProjBillgReqObjectLink | _ProjBillgReqObjectLink | |||
| _ProjectBillingRequestStatus | _ProjectBillingRequestStatus | |||
| _ProjBillgReqApprovalStatus | _ProjBillgReqApprovalStatus | |||
| _UserContactCard | _UserContactCard |
//@AbapCatalog.sqlViewName: 'RPROJBILLREQ'
//@ClientHandling.algorithm: #SESSION_VARIABLE
//@AccessControl.privilegedAssociations: ['_SalesBillingPlanDueDate']
//@AbapCatalog.compiler.compareFilter: true
//@AbapCatalog.preserveKey: true
@VDM.viewType: #TRANSACTIONAL
@VDM.lifecycle.contract.type:#SAP_INTERNAL_API
@AccessControl.authorizationCheck: #CHECK
@ObjectModel.usageType: {
sizeCategory: #XL,
dataClass: #TRANSACTIONAL,
serviceQuality: #C //B
}
@EndUserText.label: 'Details of Project Billing Request'
@ObjectModel.sapObjectNodeType.name: 'ProjectBillingRequest'
@AccessControl.privilegedAssociations: [ '_EnterpriseProject', '_SalesOrder', '_ProjectBillingReqItemTP', '_ProjBillgReqObjectLink', '_UserContactCard' ]
@AccessControl.personalData.blocking: #REQUIRED
//@Consumption.dbHints: ['NO_SUBPLAN_SHARING'] -- Performance testing
define root view entity R_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
association [1..1] to I_UserContactCard as _UserContactCard on $projection.ProjBillgReqCreatedBy = _UserContactCard.ContactCardID
association [0..1] to P_MyProjectBillingRequests as _MyProjectBillingRequests on $projection.SalesDocument = _MyProjectBillingRequests.SalesOrder
and _MyProjectBillingRequests.UserID = $session.user
association [1..1] to I_CustomerToBusinessPartner as _CustomerToBusinessPartner on $projection.customeruuid = _CustomerToBusinessPartner.BusinessPartnerUUID
composition [0..*] of R_ProjectBillingRequestItemTP as _ProjectBillingReqItemTP
composition [0..1] of R_ProjBillgReqObjectLinkTP as _ProjBillgReqObjectLink
{
key ProjectBillingRequest.ProjectBillingRequestUUID as ProjectBillingRequestUUID,
ProjectBillingRequest.ProjectBillingRequest as ProjectBillingRequest,
ProjectInternalID,
ProjectBillingRequest.ProjectBillingRequestStatus as ProjectBillingRequestStatus,
ProjectBillingRequest.ProjBillgReqApprovalStatus as ProjBillgReqApprovalStatus,
ProjectBillingRequest.ProjectBillingRequestType as ProjectBillingRequestType,
ProjectBillingRequest.SalesDocument as SalesDocument,
ProjectBillingRequest.ProjectBillingCategory as ProjectBillingCategory,
// 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,
tstmp_to_dats( cast( ProjBillgReqCreatedAtDteTme as timestamp ), abap_system_timezone( $session.client,'NULL' ),
$session.client, 'NULL' ) as ProjBillgReqCreatedAtDte,
_EnterpriseProject.Project as Project,
_EnterpriseProject.CustomerUUID,
_SalesOrder.SoldToParty as Customer,
_MyProjectBillingRequests.UserID,
// ProjectBillingRequestDesc,
------------------------------------- For Performance ATC -------------------------
_EnterpriseProject.Currency as DocumentCurrency,
_EnterpriseProject.ProjectStartDate as ProjectStartDate,
_EnterpriseProject.ProjectEndDate as ProjectEndDate,
_EnterpriseProject.ProfitCenter,
_EnterpriseProject.ControllingArea,
_EnterpriseProject.ProjectDescription,
------------------------------------- For Performance ATC -------------------------
_ProjectBillingReqItemTP,
_SalesOrder,
_EnterpriseProject,
_CustomerToBusinessPartner,
_ProjBillgReqObjectLink,
_ProjectBillingRequestStatus,
_ProjBillgReqApprovalStatus,
_UserContactCard
// ***** 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 ,
// _ProfitCenterText,
// _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