@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":""
}
}*/