Sunteți pe pagina 1din 1

MinMaxDates:

LOAD
MIN('2017-01-01', RecNo())-0 AS MinDate,
// MonthEnd(AddMonths(Today()-1,-1)) as MaxDate, //May need to bring back in
yearend (Today()) as MaxDate,

MAX(FieldValue('DEPARTDATE', RecNo()))-0 AS MaxDEPARTDATE


AUTOGENERATE FieldValueCount('DEPARTDATE');

LET vMinD = FieldValue('MinDate', 1);


LET vMaxD = FieldValue('MaxDate', 1);
LET vMaxD2 = FieldValue('MaxDEPARTDATE', 1);
LET NumOfDays = vMaxD2 - vMinD + 1;

DROP TABLE MinMaxDates;

CalendarTemp:
LOAD $(vMinD) + rowno() - 1 AS [DEPARTDATE]
AUTOGENERATE NumOfDays;

Calendar:
LOAD DISTINCT
[DEPARTDATE],
NUM(month([DEPARTDATE])) + YEAR([DEPARTDATE]) * 12 as CalMonthBase,
DUAL(DATE([DEPARTDATE]),
NUM(DATE([DEPARTDATE]))) as CalDate,
Floor(DUAL(DATE([DEPARTDATE]),
NUM(DATE([DEPARTDATE])))) as CalDateNum,
day([DEPARTDATE]) as CalDay,
Week([DEPARTDATE]) as CalWeek,
DUAL(month([DEPARTDATE]),
NUM(month([DEPARTDATE]), '00')) as CalMonth,
Floor(DUAL(month([DEPARTDATE]),
NUM(month([DEPARTDATE]), '00'))) as CalMonthNum,
YEAR([DEPARTDATE]) as CalYear,
WeekDay([DEPARTDATE]) as CalWeekday,
Date(WeekEnd([DEPARTDATE])) as [Week Ending],
if(match(weekday([DEPARTDATE]),'Sat','Sun'), 'Weekend', 'Weekday') as
Weekend,
Text(Day([DEPARTDATE])) & ' ' & Text(Month([DEPARTDATE])) as DayOfMonth,
Date(MakeDate(Year([DEPARTDATE]), Month([DEPARTDATE])),'MMM-YY') as YearMonth

RESIDENT CalendarTemp;

DROP TABLE CalendarTemp;

S-ar putea să vă placă și