P_RSHWCCapacityPerWorkDay

DDL: P_RSHWCCAPACITYPERWORKDAY SQL: PRSHWCCAPPRWRKD Type: view CONSUMPTION

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

Data Sources (2)

SourceAliasJoin Type
P_RSHWCCapacityPerDay CapacityPerDay from
P_RSHCALWORKDAYS P_RSHCALWORKDAYS inner

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName PRSHWCCAPPRWRKD 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 P_RSHWCCapacityPerDay CapacityInternalID
KEY CalendarDate P_RSHWCCapacityPerDay CalendarDate
KEY CapacityStartTime P_RSHWCCapacityPerDay CapacityStartTime
KEY WeekDay P_RSHWCCapacityPerDay 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: 'PRSHWCCAPPRWRKD'
@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
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:               AN
Unit Test required Y/N:     Yes
Additional comments         None

END OF CONTRACT***************************************************************************************************************
*/
define view P_RSHWCCapacityPerWorkDay
  as select from P_RSHWCCapacityPerDay                           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_RSHWCCAPACITYPERDAY"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/