C_ProjectBillingWrkflwApprvr
Project Billing Request Approvers
C_ProjectBillingWrkflwApprvr is a Consumption CDS View that provides data about "Project Billing Request Approvers" in SAP S/4HANA. It reads from 1 data source (P_ProjectBillingWrkflwApprvr) and exposes 7 fields with key fields WorkflowTaskRecipient, WorkflowTaskInternalID. It has 2 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| P_ProjectBillingWrkflwApprvr | ProjectBillingWrkflwApprvr | from |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_UserContactCard | _UserContactCard | $projection.WorkflowTaskRecipient = _UserContactCard.ContactCardID and _UserContactCard.Person <> '' |
| [0..1] | I_WorkflowTaskResultComment | _WorkflowTaskResultComment | $projection.WorkflowTaskInternalID = _WorkflowTaskResultComment.WorkflowTaskInternalID |
Annotations (14)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CPRJBLGWRKFLAPP | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| Search.searchable | true | view | |
| AccessControl.authorizationCheck | #MANDATORY | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| EndUserText.label | Project Billing Request Approvers | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Metadata.allowExtensions | true | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view |
Fields (7)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | WorkflowTaskRecipient | WorkflowTaskRecipient | Approver | |
| KEY | WorkflowTaskInternalID | WorkflowTaskInternalID | Workflow task ID | |
| TechnicalWrkflwObject | TechnicalWrkflwObject | Item ID | ||
| FullName | _UserContactCard | FullName | ||
| WorkflowTaskResult | WorkflowTaskResult | |||
| WorkflowTaskResultComment | _WorkflowTaskResultComment | WorkflowTaskResultComment | Decision Note | |
| _UserContactCard | _UserContactCard |
@AbapCatalog.sqlViewName: 'CPRJBLGWRKFLAPP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@Search.searchable: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.privilegedAssociations: [ '_UserContactCard' ]
@AccessControl.personalData.blocking: #REQUIRED
@EndUserText.label: 'Project Billing Request Approvers'
@ObjectModel.usageType:{
serviceQuality: #C,
sizeCategory: #XL,
dataClass: #TRANSACTIONAL
}
@Metadata: { ignorePropagatedAnnotations: true,
allowExtensions: true }
@VDM.viewType: #CONSUMPTION
@ClientHandling.algorithm: #SESSION_VARIABLE
define view C_ProjectBillingWrkflwApprvr
as select from P_ProjectBillingWrkflwApprvr as ProjectBillingWrkflwApprvr
association [0..1] to I_UserContactCard as _UserContactCard on $projection.WorkflowTaskRecipient = _UserContactCard.ContactCardID
and _UserContactCard.Person <> ''
association [0..1] to I_WorkflowTaskResultComment as _WorkflowTaskResultComment on $projection.WorkflowTaskInternalID = _WorkflowTaskResultComment.WorkflowTaskInternalID
{
@EndUserText.label: 'Approver'
@EndUserText.quickInfo: 'Approver'
@ObjectModel.filter.enabled: true
@Consumption.filter.hidden: false
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.85 }
@UI:{ lineItem: [{ position: 10, type: #AS_CONTACT, value: '_UserContactCard', label: 'Approver', importance: #HIGH,
criticality: 'UICT_ProjBillgReqApprCritlty', criticalityRepresentation: #WITHOUT_ICON } ], selectionField: [{ position: 10 }] }
@ObjectModel.text.element: [ 'FullName' ]
@Consumption.semanticObject: 'User'
key WorkflowTaskRecipient,
@UI.hidden:true
@EndUserText.label: 'Workflow task ID'
@EndUserText.quickInfo: 'Workflow task ID'
key WorkflowTaskInternalID,
@UI.hidden:true
@EndUserText.label: 'Item ID'
@EndUserText.quickInfo: 'Item ID'
TechnicalWrkflwObject,
@UI.hidden:true
_UserContactCard.FullName,
@UI.hidden:true
WorkflowTaskResult,
@EndUserText.label: 'Decision Note'
@EndUserText.quickInfo: 'Decision Note'
@UI: { lineItem: [{ position: 20, importance: #HIGH }], selectionField: [{ position: 20 }] }
_WorkflowTaskResultComment.WorkflowTaskResultComment,
// @EndUserText.label: 'Approved On'
// @EndUserText.quickInfo: 'Approved On'
// @UI: { lineItem: [{ position: 30, importance: #HIGH }], selectionField: [{ position: 30 }] }
// ProjBillgWrkflwTskCreationDate,
@UI.hidden: true
case WorkflowTaskResult
when 'RELEASED' then 3
when 'REJECTED' then 1
when 'PENDING' then 2
else 0
end as UICT_ProjBillgReqApprCritlty,
_UserContactCard
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_USERCONTACTCARD",
"I_WORKFLOWTASKRESULTCOMMENT",
"P_PROJECTBILLINGWRKFLWAPPRVR"
],
"ASSOCIATED":
[
"I_USERCONTACTCARD",
"I_WORKFLOWTASKRESULTCOMMENT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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