P_RSHWCUtilization
P_RSHWCUtilization is a Consumption CDS View in SAP S/4HANA. It reads from 4 data sources (I_CalendarDate, I_CalendarDate, P_RSHWCCapacityPerWorkDay, P_RSHOperationWorkPerDay) and exposes 58 fields with key fields YearMonth, YearWeek, CalendarDate, MaintenanceOrder, MaintenancePlan.
Data Sources (4)
| Source | Alias | Join Type |
|---|---|---|
| I_CalendarDate | CalendarDate | inner |
| I_CalendarDate | Calendardate | inner |
| P_RSHWCCapacityPerWorkDay | Capacity | from |
| P_RSHOperationWorkPerDay | P_RSHOperationWorkPerDay | union_all |
Parameters (2)
| Name | Type | Default |
|---|---|---|
| P_StartDate | datum | |
| P_EndDate | datum |
Annotations (5)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | PRSHWCUTIL | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| VDM.private | true | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view |
Fields (58)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | YearMonth | I_CalendarDate | YearMonth | |
| KEY | YearWeek | I_CalendarDate | YearWeek | |
| KEY | CalendarDate | P_RSHWCCapacityPerWorkDay | CalendarDate | |
| KEY | MaintenanceOrder | |||
| KEY | MaintenancePlan | |||
| KEY | MaintenanceOrderOperation | |||
| KEY | MaintenanceOrderSubOperation | |||
| KEY | CapacityStartTime | P_RSHWCCapacityPerWorkDay | CapacityStartTime | |
| KEY | AvailableCapacityShift | P_RSHWCCapacityPerWorkDay | AvailableCapacityShift | |
| CapacityEndTime | P_RSHWCCapacityPerWorkDay | CapacityEndTime | ||
| CapacityInternalID | P_RSHWCCapacityPerWorkDay | CapacityInternalID | ||
| WorkCenterInternalID | P_RSHWCCapacityPerWorkDay | WorkCenterInternalID | ||
| WorkCenter | P_RSHWCCapacityPerWorkDay | WorkCenter | ||
| Plant | P_RSHWCCapacityPerWorkDay | Plant | ||
| WorkCenterTypeCode | P_RSHWCCapacityPerWorkDay | WorkCenterTypeCode | ||
| WorkCenterCategoryCode | P_RSHWCCapacityPerWorkDay | WorkCenterCategoryCode | ||
| OperationControlKey | ||||
| OrderType | ||||
| MaintenanceActivityType | ||||
| MaintPriority | ||||
| MaintPriorityType | ||||
| ProcessingStatus | 0 | |||
| OperationPersonResponsible | ||||
| CalendarWeek | I_CalendarDate | CalendarWeek | ||
| CalendarMonth | I_CalendarDate | CalendarMonth | ||
| TotalCapacity | P_RSHWCCapacityPerWorkDay | TotOperatingDurationInSeconds | ||
| OperatingDurationInSeconds | P_RSHWCCapacityPerWorkDay | OperatingDurationInSeconds | ||
| UsedCapacity | ||||
| P_StartDate | ||||
| YearMonthasYearMonth | ||||
| KEY | YearWeek | I_CalendarDate | YearWeek | |
| KEY | CalendarDate | I_CalendarDate | CalendarDate | |
| KEY | MaintenanceOrder | Consumption | MaintenanceOrder | |
| KEY | MaintenancePlan | Consumption | MaintenancePlan | |
| KEY | MaintenanceOrderOperation | Consumption | MaintenanceOrderOperation | |
| KEY | MaintenanceOrderSubOperation | Consumption | MaintenanceOrderSubOperation | |
| KEY | CapacityStartTime | Consumption | CapacityStartTime | |
| KEY | AvailableCapacityShift | Consumption | AvailableCapacityShift | |
| CapacityEndTime | Consumption | CapacityEndTime | ||
| CapacityInternalID | Consumption | CapacityInternalID | ||
| WorkCenterInternalID | Consumption | WorkCenterInternalID | ||
| WorkCenter | Consumption | WorkCenter | ||
| Plant | Consumption | Plant | ||
| WorkCenterTypeCode | Consumption | WorkCenterTypeCode | ||
| WorkCenterCategoryCode | Consumption | WorkCenterCategoryCode | ||
| OperationControlKey | Consumption | OperationControlKey | ||
| OrderType | Consumption | OrderType | ||
| MaintenanceActivityType | Consumption | MaintenanceActivityType | ||
| MaintPriority | Consumption | MaintPriority | ||
| MaintPriorityType | Consumption | MaintPriorityType | ||
| ProcessingStatus | Consumption | ProcessingStatus | ||
| OperationPersonResponsible | Consumption | OperationPersonResponsible | ||
| CalendarWeek | I_CalendarDate | CalendarWeek | ||
| CalendarMonth | I_CalendarDate | CalendarMonth | ||
| TotalCapacity | 0 | |||
| OperatingDurationInSeconds | ||||
| UsedCapacity | Consumption | WorkPerDay | ||
| TotalWorkCenterCapacity |
@AbapCatalog.sqlViewName: 'PRSHWCUTIL'
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.private: true
@VDM.viewType: #CONSUMPTION
@ClientHandling.algorithm: #SESSION_VARIABLE
/*
CONTRACT**********************************************************************************************************************
Name: Work Center Utilization
Specification: This View combines the work center consumption and work center capacity on a daily basis
Requires: NA
Ensures: Attributes required for filtering/ grouping and DCL exist (e.g. Work Center, Order Type etc.)
Owners: PRP
Contributors: AN
Unit Test required Y/N: Yes
Additional comments Work Center Utilization is calculated in ABAP Gateway Class.
OrderID, OperationID and SubOperationID could be used to determine the consumption of subsets/ selections.
END OF CONTRACT***************************************************************************************************************
*/
define view P_RSHWCUtilization
with parameters
P_StartDate : datum,
P_EndDate : datum
as select from P_RSHWCCapacityPerWorkDay as Capacity
inner join I_CalendarDate as CalendarDate on CalendarDate.CalendarDate = Capacity.CalendarDate
{
key CalendarDate.YearMonth,
key CalendarDate.YearWeek as YearWeek,
key Capacity.CalendarDate as CalendarDate,
key cast(' ' as aufnr ) as MaintenanceOrder,
key cast (' ' as warpl ) as MaintenancePlan,
key cast(' ' as vornr ) as MaintenanceOrderOperation,
key cast(' ' as vornr ) as MaintenanceOrderSubOperation,
key Capacity.CapacityStartTime as CapacityStartTime,
key Capacity.AvailableCapacityShift as AvailableCapacityShift,
Capacity.CapacityEndTime as CapacityEndTime,
Capacity.CapacityInternalID as CapacityInternalID,
Capacity.WorkCenterInternalID as WorkCenterInternalID,
Capacity.WorkCenter as WorkCenter,
Capacity.Plant as Plant,
Capacity.WorkCenterTypeCode as WorkCenterTypeCode,
Capacity.WorkCenterCategoryCode as WorkCenterCategoryCode,
cast(' ' as steus ) as OperationControlKey,
cast(' ' as aufart ) as OrderType,
cast(' ' as ila ) as MaintenanceActivityType,
cast(' ' as priok ) as MaintPriority,
cast ( ' ' as artpr ) as MaintPriorityType,
0 as ProcessingStatus,
'00000000' as OperationPersonResponsible,
CalendarDate.CalendarWeek as CalendarWeek,
CalendarDate.CalendarMonth,
Capacity.TotOperatingDurationInSeconds as TotalCapacity,
Capacity.OperatingDurationInSeconds as OperatingDurationInSeconds,
cast( 0 as abap.fltp ) as UsedCapacity,
cast( 0 as abap.fltp ) as TotalWorkCenterCapacity
}
where
Capacity.CalendarDate between $parameters.P_StartDate and $parameters.P_EndDate
union all
select from P_RSHOperationWorkPerDay (P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate) as Consumption
inner join I_CalendarDate as Calendardate on Consumption.CalendarDate = Calendardate.CalendarDate
and Calendardate.CalendarDate between $parameters.P_StartDate and $parameters.P_EndDate
{
key Calendardate.YearMonth as YearMonth,
key Calendardate.YearWeek as YearWeek,
key Calendardate.CalendarDate as CalendarDate,
key Consumption.MaintenanceOrder as MaintenanceOrder,
key Consumption.MaintenancePlan as MaintenancePlan,
key Consumption.MaintenanceOrderOperation as MaintenanceOrderOperation,
key Consumption.MaintenanceOrderSubOperation as MaintenanceOrderSubOperation,
key Consumption.CapacityStartTime as CapacityStartTime,
key Consumption.AvailableCapacityShift as AvailableCapacityShift,
Consumption.CapacityEndTime as CapacityEndTime,
Consumption.CapacityInternalID as CapacityInternalID,
Consumption.WorkCenterInternalID as WorkCenterInternalID,
Consumption.WorkCenter as WorkCenter,
Consumption.Plant as Plant,
Consumption.WorkCenterTypeCode as WorkCenterTypeCode,
Consumption.WorkCenterCategoryCode as WorkCenterCategoryCode,
Consumption.OperationControlKey as OperationControlKey,
Consumption.OrderType as OrderType,
Consumption.MaintenanceActivityType as MaintenanceActivityType,
Consumption.MaintPriority as MaintPriority,
Consumption.MaintPriorityType as MaintPriorityType,
Consumption.ProcessingStatus as ProcessingStatus,
Consumption.OperationPersonResponsible as OperationPersonResponsible,
Calendardate.CalendarWeek as CalendarWeek,
Calendardate.CalendarMonth,
0 as TotalCapacity,
cast ( 0 as abap.fltp ) as OperatingDurationInSeconds,
Consumption.WorkPerDay as UsedCapacity,
cast( 0 as abap.fltp ) as TotalWorkCenterCapacity
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CALENDARDATE",
"P_RSHOPERATIONWORKPERDAY",
"P_RSHWCCAPACITYPERWORKDAY"
],
"ASSOCIATED":
[],
"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