P_RSHWCCapPerWorkDayForPeriod

DDL: P_RSHWCCAPPERWORKDAYFORPERIOD SQL: PRSHWCCAPWRKDPER Type: view CONSUMPTION

P_RSHWCCapPerWorkDayForPeriod is a Consumption CDS View in SAP S/4HANA. It reads from 2 data sources (P_RSHCALWORKDAYS, P_RSHWCCapacityPerDayForPeriod) and exposes 20 fields with key fields CapacityInternalID, CalendarDate, CapacityStartTime, WeekDay, WorkCenterInternalID.

Data Sources (2)

SourceAliasJoin Type
P_RSHCALWORKDAYS P_RSHCALWORKDAYS inner
P_RSHWCCapacityPerDayForPeriod P_RSHWCCapacityPerDayForPeriod from

Parameters (2)

NameTypeDefault
P_StartDate datum
P_EndDate datum

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName PRSHWCCAPWRKDPER view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.private true view
VDM.viewType #CONSUMPTION view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #L view

Fields (20)

KeyFieldSource TableSource FieldDescription
KEY CapacityInternalID CapacityPerDay CapacityInternalID
KEY CalendarDate CapacityPerDay CalendarDate
KEY CapacityStartTime CapacityPerDay CapacityStartTime
KEY WeekDay CapacityPerDay WeekDay
KEY WorkCenterInternalID
WorkCenter WorkCenter
WorkCenterCategoryCode WorkCenterCategoryCode
WorkCenterTypeCode WorkCenterTypeCode
Plant Plant
AvailableCapacityShift AvailableCapacityShift
NightSplitDate NightSplitDate
AvailableCapacityIntervalDurn AvailableCapacityIntervalDurn
WorkDayRule WorkDayRule
CapacityBreakDuration CapacityBreakDuration
WorkDays WorkDays
CapacityEndTime CapacityEndTime
CapacityNumberOfCapacities CapacityNumberOfCapacities
CapacityPlanUtilizationPercent CapacityPlanUtilizationPercent
FactoryCalendar FactoryCalendar
YearWeek YearWeek
@AbapCatalog.sqlViewName: 'PRSHWCCAPWRKDPER'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.private: true
@VDM.viewType: #CONSUMPTION
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.serviceQuality: #X
@ObjectModel.usageType.sizeCategory: #L

/*
CONTRACT**********************************************************************************************************************

Name:                       Capacity Per Day with Input Period
Specification:              This view checks whether each day is working and returns capacity accordingly. 
Requires:                   NA
Ensures:                    Aggregated capacity per calendar days is returned.
Owners:                     PRP
Contributors:               
Unit Test required Y/N:     Yes
Additional comments         The view is similar to P_RSHWCCapacityPerWorkDay. But the difference is that the current view takes   
                            an input period. Based on this input period, the interval/shift details are filtered at lower level

END OF CONTRACT***************************************************************************************************************
*/
define view P_RSHWCCapPerWorkDayForPeriod
  with parameters
    P_StartDate : datum,
    P_EndDate   : datum

  as select from P_RSHWCCapacityPerDayForPeriod(P_StartDate : $parameters.P_StartDate, P_EndDate : $parameters.P_EndDate) as CapacityPerDay

    inner join   P_RSHCALWORKDAYS(P_SAPClient : $session.client) as WorkDays on  WorkDays.CapacityInternalID = CapacityPerDay.CapacityInternalID
                                                                             and WorkDays.CalendarDate       = CapacityPerDay.FactoryCalendarDate

{

  key CapacityPerDay.CapacityInternalID,

  key CapacityPerDay.CalendarDate,
  key CapacityPerDay.CapacityStartTime                             as CapacityStartTime,
  key CapacityPerDay.WeekDay                                       as WeekDay,
  key CapacityPerDay.
      WorkCenterInternalID,
      WorkCenter,
      WorkCenterCategoryCode,
      WorkCenterTypeCode,
      Plant,


      AvailableCapacityShift,
      NightSplitDate,
      AvailableCapacityIntervalDurn,
      WorkDayRule,
      CapacityBreakDuration,
      WorkDays,
      CapacityEndTime,
      CapacityNumberOfCapacities,
      CapacityPlanUtilizationPercent,
      FactoryCalendar,
      YearWeek,

      case
          when WorkDays.WorkDays = 0 and CapacityPerDay.WorkDayRule = '' or
               CapacityPerDay.WorkDayRule = '0' or
               CapacityPerDay.CapacityEndTime = CapacityPerDay.CapacityStartTime or
               CapacityPerDay.OperatingDurationInSeconds = 0
          then 0
          else
           CapacityPerDay.OperatingDurationInSeconds
          end
                                                                   as OperatingDurationInSeconds,

      case
      when WorkDays.WorkDays = 0 and CapacityPerDay.WorkDayRule = '' or
              CapacityPerDay.WorkDayRule = '0' or
              CapacityPerDay.CapacityEndTime = CapacityPerDay.CapacityStartTime or
              CapacityPerDay.OperatingDurationInSeconds = 0
         then 0
         else
       CapacityPerDay.TotOperatingDurationInSeconds
      end                                                          as TotOperatingDurationInSeconds

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"P_RSHWCCAPACITYPERDAYFORPERIOD"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/