A few months back, I had to create a date dimension. All of the scripts I could find publicly were missing a lot of the flags and other features I needed (especially around fiscal month handling) -- so I created one myself. This is written in T-SQL, but shouldn't be too hard to port to another dialect of SQL.
This template also provides tables and refresh scripts for a DimFiscalMonth
and a DimCalendarMonth
. These roll up details from DimDate
into a dimension you can use to join pre-aggregated tables together. This can be useful when trying to join fact tables that are at different date granularities or when trying to create a pre-aggregated model in Power BI.
If you're a corporation and want me to translate this to another dialect, send me a message. I'd be happy to do so inexpensively.
One of the few assumptions I made is around table names. I assume your table is called dbo.DimDate
. If it's not, just do a find-and-replace across the whole project for whatever your table name is.
Two tables are also required for the holiday mapping: integration.manual_HolidayTypes
and integration.manual_Holidays
. HolidayTypes
just holds different type definitions for holidays (for example, "Company Holiday", "US Public Holiday", "Canadian Public Holiday"). The template script creates flags for CompanyHoliday
and USPublicHoliday
by default. You can add to or subtract from this by adding or removing columns and logic (see Custom Holidays).
All customizations should be performed before executing the below steps. If you need to customize something, come back to this section after reading through the customization subheaders below. As a general rule, if you want to customize a behavior, I have provided easily-searchable comments in the code. For example, to customize holidays, perform a folder-wide search for "customize-holidays". Sections are delimited with a starting comment of -- customize-holidays START
and an ending comment of --customize-holidays END
. Specific comments are listed in their sections.
- Choose a language. These are represented by the top-level folders. Currently, only T-SQL is supported.
- Start from the top. The folders are ordered. Run all of the scripts from each folder before moving to the next.
- Run the following scriptlet to make sure the refresh procs are working:
EXEC dbo.sp_build_DimDate;
EXEC dbo.sp_build_DimCalendarMonth;
EXEC dbo.sp_build_DimFiscalMonth;
- Set the stored procedures to run daily with your chosen ETL software. The proc for
DimDate
should run prior to the procs forDimFiscalMonth
andDimCalendarMonth
, as they depend uponDimDate
being up-to-date.
See below for instructions around customizing specific behaviors.
Comment name: -- customize-daterange
The date range generated is defined in /{language}/02-initial-build/03-InsertDimDateRecords.sql
. Specifically, you're looking for the following two lines:
SET @FirstDate='2000-01-01';
SET @NumberOfYearsToGenerate=100;
By default, it will start on 2021-01-01 and run through 100 years.
Comment name: -- customize-fiscalperiods
I built this around having a very flexible set of fiscal periods. That being said, there are a few assumptions:
- Your fiscal month runs from a constant numerical day to a numerical day. For example, a fiscal month of the 24th through the 23rd is valid; a fiscal month of "the first Sunday of the calendar month to the first Saturday of the next calendar month" is not.
- Your fiscal month does not start after the 28th. Because February, the shortest month, has 28 days, anything over this causes all sorts of horrifying edge cases.
The fiscal period settings are defined in /{language}/02-initial-build/03-InsertDimDateRecords.sql
. They are also defined in /{language}/03-refresh-procs/01-sp_build_DimDate.sql
. (The first file controls the initial build behavior; the second file controls the daily update behavior.)
There are five available settings:
FiscalMonthStartDay
- This controls the first day of your fiscal month. For example, if your month ran from the 15th through the 14th, you'd set this to 15.FiscalYearStartMonth
- This controls the first month of your fiscal year. For example, if your fiscal year starts in November, you'd set this to 11.FiscalMonthPeriodEndMatchesCalendar
- This controls the behavior of fields likeFiscalMonthName
by allowing you to set which "end" of your fiscal month determines its name. For example, say your fiscal month starts on the 15th and runs through the 14th. For the dates of December 15-January 14, is that the fiscal month of December or January? Setting this flag to 1 indicates that the month presented in the example is called "January" (because the fiscal month end falls in the calendar month of January). Setting it to 0 indicates that it's called "December".FiscalQuarterPeriodEndMatchesCalendar
- Same as above, but for the quarter. If the quarter starts in December and runs through February, is that Q1 or Q4?FiscalQuarterPeriodEndMatchesCalendar = 1
indicates that it's Q1, whereas0
indicates it's Q4.FiscalYearPeriodEndMatchesCalendar
- Same as above, but for year. If your year runs from June 2020 through June 2021, is it the fiscal year of 2020 or 2021?FiscalYearPeriodEndMatchesCalendar = 1
indicates that it's 2021, whereas0
indicates it's 2020.
Be sure to set the variables in both files!
Comment name: -- customize-todayinlocal
One of the variables central to the load scripts is called TodayInLocal
. At runtime, it determines what the date is in your local timezone. By default, it's set to Mountain Standard Time
. You can change this by searching for the comment and adjusting the timezone. Be careful -- timezones may be named different things on different operating systems. Make sure the name you use is correct for your runtime environment!
Comment name: -- customize-businessdays
Business days are based off of company holidays. The logic is pretty simple: If the date is a company holiday or a weekend, the BusinessDayFlag
will be 0. If it's not, it's a 1. I didn't build much specific customization in for this behavior; If you'd like to change it, you can replace the logic (just search for the comment).
Comment name: -- customize-holidays
Holidays are pretty easy to customize as long as you only need US Public Holidays and Company Holidays. If you need to add more categories, you'll have to start adding more columns. I'll cover as many use cases here as possible, but you're going to have to get your hands a little dirty for each of them.
Many companies may want to have their company holiday columns less generically-named. Currently, company holidays are just called "Company Holidays" everywhere. If you want to change this, you can pretty safely do a project-wide find and replace of "Company" to your company's name. (Just make sure whatever you replace "Company" with is a valid SQL identifier.)
The default two holiday types are "Company Holiday" and "US Public Holiday". They're loaded to integration.manual_HolidayTypes
. If you need to change one of these or add another, just adjust or add the record to /{language}/02-initial-build/01-InsertHolidayTypes.sql
.
Holidays are loaded to the integration.manual_Holidays
table. To add or remove, or update holidays at initial load time, adjust the rows in /{language}/02-initial-build/01-InsertHolidays.sql
. Be sure that the keys you provide for HolidayTypes
are present in integration.manual_HolidayTypes
.
If you need to make updates after the initial build, just add, remove, or update the records in integration.manual_Holidays
.
Here's where it gets tricky. There are a few holiday-related columns:
- CompanyHolidayFlag
- USPublicHolidayFlag
- CompanyHolidayName
- USPublicHolidayName
- BusinessDayFlag
- A couple of other derived columns in the month-aggregated tables
Company-holiday-related information is pulled from integration.manual_Holidays
where HolidayTypeKey = 1
. The same is true for US Public Holidays, except that HolidayTypeKey = 2
. If you've added or removed holiday types, or if you need to add more holiday types, you're going to have to perform a few steps.
- Remove the holiday type (see above).
- Remove the holidays (see above).
- Track down the locations where the scripts join into the
integration.manual_Holidays
table. Search for the comment-- customize-holidays JOIN START
. Remove the join you don't want. - Remove columns. I haven't commented where all of these columns are because it's relatively easy to remove references to them. For example, if you don't want US Public Holidays, just search for the US-public-holiday-related column names and remove them.
- Add a new holiday type (see above).
- Add new holidays (see above).
- Track down the locations where the scripts join into the
integration.manual_Holidays
table. Search for the comment-- customize-holidays JOIN START
. Add a join (you can copy an existing one), substituting in yourHolidayTypeKey
. - Add column definitions to all of the tables' definitions.
- Add logic to the scripts to load data to the new columns. You can probably copy one of the existing columns and just sub in a reference to your new join.
A decent level of documentation for each column by table. Note: Datatypes are accurate for T-SQL. For other dialects (if I ever end up adding them), the datatype will be the nearest match.
Column Name | Data Type | Format Example | Description |
---|---|---|---|
DateKey | int | 20210101 | The table key. |
TheDate | date | Locale specific | The unique calendar date for this row. All other columns are based off of this date. |
ISODateName | varchar(10) | 2021-12-31 | The ISO-formatted date as a string. (Ex: 2021-12-31) |
AmericanDateName | varchar(10) | 12/31/2021 | The American-formatted date as a string. (Ex: 12/31/2021) |
DayOfWeekName | varchar(9) | Sunday | The full day name. (Ex: Sunday) |
DayOfWeekAbbrev | varchar(3) | Sun | The abbreviated (three-character) day name. (Ex: Sun) |
MonthName | varchar(9) | December | The full month name. (Ex: December) |
MonthAbbrev | varchar(3) | Dec | The abbreviated (three-character) month name. (Ex: Dec) |
YearWeekName | varchar(8) | 2021W51 | The year-week as a string. (Ex: 2021W51) |
YearMonthName | varchar(7) | 2021-12 | The year-month as a string. (Ex: 2021-12) |
MonthYearName | varchar(8) | Dec 2021 | The abbreviated month name followed by the year. (Ex: Dec 2021) |
YearQuarterName | varchar(6) | 2021Q4 | The year followed by the quarter. (Ex: 2021Q4) |
Year | int | 2021 | The year as a number. (Ex: 2021) |
YearWeek | int | 202151 | The year-week as a number. (Ex: 202152) |
ISOYearWeekCode | int | 202151 | The year-week as a number, with the week calculated according to the ISO standard. (Ex: 202151) |
YearMonth | int | 202101 | The year-month as a number. (Ex: 202112) |
YearQuarter | int | 202101 | The year-quarter as a number. (Ex: 202104) |
DayOfWeekStartingMonday | int | 1 | The same as DayOfWeek, but with Monday=1. |
DayOfWeek | int | 1 | The numerical day of the week. Sunday is 1. |
DayOfMonth | int | 1 | The numerical day of the month. |
DayOfQuarter | int | 1 | The numerical day of the quarter. |
DayOfYear | int | 1 | The numerical day of the year. |
WeekOfQuarter | int | 1 | The numerical week of the quarter. Starts at 1 and counts up. Partial weeks do count. |
WeekOfYear | int | 1 | The numerical week of the year. |
ISOWeekOfYear | int | 1 | The numerical week of the year, calculated according to the ISO standard. |
Month | int | 1 | The numerical month. (Ex. Dec = 12) |
MonthOfQuarter | int | 1 | The numerical month of the quarter. For obvious reasons, 1-3. |
Quarter | int | 1 | The numerical quarter. |
DaysInMonth | int | 31 | The number of days in the month. |
DaysInQuarter | int | 62 | The number of days in the quarter. |
DaysInYear | int | 365 | The number of days in the year. |
DayOffsetFromToday | int | -123 | The number of days the day on this row is offset from the current date. For example, yesterday is -1, and tomorrow is 1. |
MonthOffsetFromToday | int | -12 | The number of months the day on this row is offset from the current date. For example, last month is -1, and next month is 1. |
QuarterOffsetFromToday | int | -12 | The number of quarters the day on this row is offset from the current quarter. For example, last quarter is -1, and next quarter is 1. |
YearOffsetFromToday | int | -1 | The number of years the day on this row is offset from the current date. For example, last year is -1, and next year is 1. |
TodayFlag | bit | 1 | Indicates this row's date is the current date. |
CurrentWeekStartingMondayFlag | bit | 1 | The same as CurrentWeekFlag, but with Monday=1. |
CurrentWeekFlag | bit | 1 | Indicates this row's date falls within the current week. |
PriorWeekFlag | bit | 1 | Indicates this row's date falls within the prior week. |
NextWeekFlag | bit | 1 | Indicates this row's date falls within the next week. |
CurrentMonthFlag | bit | 1 | Indicates this row's date falls within the current month. |
PriorMonthFlag | bit | 1 | Indicates this row's date falls within the prior month. |
NextMonthFlag | bit | 1 | Indicates this row's date falls within the next month. |
CurrentQuarterFlag | bit | 1 | Indicates this row's date falls within the current quarter. |
PriorQuarterFlag | bit | 1 | Indicates this row's date falls within the prior quarter. |
NextQuarterFlag | bit | 1 | Indicates this row's date falls within the next quarter. |
CurrentYearFlag | bit | 1 | Indicates this row's date falls within the current year. |
PriorYearFlag | bit | 1 | Indicates this row's date falls within the prior year. |
NextYearFlag | bit | 1 | Indicates this row's date falls within the next year. |
WeekdayFlag | bit | 1 | Indicates this row's date is a weekday (Monday-Friday). |
BusinessDayFlag | bit | 1 | Indicates this row's date is a business day. (In reality, this means it is both a weekday and not a holiday.) |
CompanyHolidayFlag | bit | 1 | Indicates this row's date is a Company holiday. See CompanyHolidayName for the holiday name. |
USPublicHolidayFlag | bit | 1 | Indicates this row's date is a US public holiday. See USPublicHolidayName for the holiday name. |
FirstDayOfMonthFlag | bit | 1 | Indicates this row's date falls on the first day of the month. |
LastDayOfMonthFlag | bit | 1 | Indicates this row's date falls on the last day of the month. |
FirstDayOfQuarterFlag | bit | 1 | Indicates this row's date falls on the first day of the quarter. |
LastDayOfQuarterFlag | bit | 1 | Indicates this row's date falls on the last day of the quarter. |
FirstDayOfYearFlag | bit | 1 | Indicates this row's date falls on the first day of the year. |
LastDayOfYearFlag | bit | 1 | Indicates this row's date falls on the last day of the year. |
FractionOfWeek | decimal(5,4) | 0.1429 | The decimal fraction of the week that has passed as of this row's date. |
FractionOfMonth | decimal(5,4) | 0.323 | The decimal fraction of the month that has passed as of this row's date. |
FractionOfQuarter | decimal(5,4) | 0.0110 | The decimal fraction of the quarter that has passed as of this row's date. |
FractionOfYear | decimal(5,4) | 0.0027 | The decimal fraction of the year that has passed as of this row's date. |
PriorDay | date | Locale specific. | The date one day before this row's date. |
NextDay | date | Locale specific. | The date one day after this row's date. |
SameDayPriorWeek | date | Locale specific. | The date one week before this row's date. |
SameDayPriorMonth | date | Locale specific. | The date one month before this row's date. If this row's date falls outside of the range of last month's date, this will be the greatest date in the last month. For example, the row for March 31st would show a value of February 28th in non-leap years, and it would show February 29th in leap years. |
SameDayPriorQuarter | date | Locale specific. | The date one quarter before this row's date. Behaves similarly to SameDayPriorMonth for overflow dates. |
SameDayPriorYear | date | Locale specific. | The date one year before this row's date. Behaves similarly to SameDayPriorMonth for overflow dates (which could only occur on the 366th day of a leap year). |
SameDayNextWeek | date | Locale specific. | The date one week after this row's date. |
SameDayNextMonth | date | Locale specific. | The date one month after this row's date. If this row's date falls outside of the range of next month's date, this will be the greatest date in the next month. For example, the row for January 31st would show a value of February 28th in non-leap years, and it would show February 29th in leap years. |
SameDayNextQuarter | date | Locale specific. | The date one quarter after this row's date. Behaves similarly to SameDayNextMonth for overflow dates. |
SameDayNextYear | date | Locale specific. | The date one year after this row's date. Behaves similarly to SameDayNextMonth for overflow dates (which could only occur on the 366th day of a leap year). |
CurrentWeekStart | date | Locale specific. | The date this row's week starts (always a Sunday). |
CurrentWeekEnd | date | Locale specific. | The date this row's week ends (always a Saturday). |
CurrentMonthStart | date | Locale specific. | The date this row's month starts. |
CurrentMonthEnd | date | Locale specific. | The date this row's month ends. |
CurrentQuarterStart | date | Locale specific. | The date this row's quarter starts. |
CurrentQuarterEnd | date | Locale specific. | The date this row's quarter ends. |
CurrentYearStart | date | Locale specific. | The date this row's year starts. |
CurrentYearEnd | date | Locale specific. | The date this row's year ends. |
PriorWeekStart | date | Locale specific. | The date week prior to this row's week starts. |
PriorWeekEnd | date | Locale specific. | The date week prior to this row's week ends. |
PriorMonthStart | date | Locale specific. | The date month prior to this row's month starts. |
PriorMonthEnd | date | Locale specific. | The date month prior to this row's month ends. |
PriorQuarterStart | date | Locale specific. | The date quarter prior to this row's quarter starts. |
PriorQuarterEnd | date | Locale specific. | The date quarter prior to this row's quarter ends. |
PriorYearStart | date | Locale specific. | The date year prior to this row's year starts. |
PriorYearEnd | date | Locale specific. | The date year prior to this row's year ends. |
NextWeekStart | date | Locale specific. | The date week after this row's week starts. |
NextWeekEnd | date | Locale specific. | The date week after this row's week ends. |
NextMonthStart | date | Locale specific. | The date month after this row's month starts. |
NextMonthEnd | date | Locale specific. | The date month after this row's month ends. |
NextQuarterStart | date | Locale specific. | The date quarter after this row's quarter starts. |
NextQuarterEnd | date | Locale specific. | The date quarter after this row's quarter ends. |
NextYearStart | date | Locale specific. | The year quarter after this row's year starts. |
NextYearEnd | date | Locale specific. | The year quarter after this row's year ends. |
WeeklyBurnupStartingMonday | bit | 1 | The same as WeeklyBurnup, but with Monday=1. |
WeeklyBurnup | bit | 1 | Indicates the day of the week of this row's date is equal to or greater to the day of the week today. For example, if today is a Monday and the day on this row is a Tuesday, this would be FALSE. If the day on this row were a Monday or a Sunday, it would be TRUE. Useful for creating weekly burnup charts. |
MonthlyBurnup | bit | 1 | Indicates the day of the month of this row's date is equal to or greater to the day of the month today. For example, if today is the 12th and the day of the month for this row is the 15th, this would be FALSE. If the day of the month on this row were the 12th or lower, it would be TRUE. Useful for creating monthly burnup charts. |
QuarterlyBurnup | bit | 1 | Indicates the day of the quarter of this row's date is equal to or greater to the day of the quarter today. For example, if today is the 42nd day of the quarter and the day of the quarter for this row is the 60th, this would be FALSE. If the day of the quarter on this row were the 42nd or lower, it would be TRUE. Useful for creating quarterly burnup charts. |
YearlyBurnup | bit | 1 | Indicates the day of the year of this row's date is equal to or greater to the day of the year today. For example, if today is the 42nd day of the year and the day of the year for this row is the 60th, this would be FALSE. If the day of the year on this row were the 42nd or lower, it would be TRUE. Useful for creating yearly burnup charts. |
FiscalMonthName | varchar(9) | December | The full fiscal month name. (Ex: December) |
FiscalMonthAbbrev | varchar(3) | Dec | The abbreviated (three-character) fiscal month name. (Ex: Dec) |
FiscalYearWeekName | varchar(8) | 2021W51 | The fiscal year-week as a string. (Ex: 2021W51) |
FiscalYearMonthName | varchar(7) | 2021-12 | The fiscal year-month as a string. (Ex: 2021-12) |
FiscalMonthYearName | varchar(8) | Dec 2021 | The abbreviated fiscal month name followed by the fiscal year. (Ex: Dec 2021) |
FiscalYearQuarterName | varchar(6) | 2021Q4 | The fiscal year followed by the fiscal quarter. (Ex: 2021Q4) |
FiscalYear | int | 2021 | The fiscal year as a number. (Ex: 2021) |
FiscalYearWeek | int | 202152 | The fiscal year-week as a number. (Ex: 202152) |
FiscalYearMonth | int | 202101 | The fiscal year-month as a number. (Ex: 202112) |
FiscalYearQuarter | int | 202101 | The fiscal year-quarter as a number. (Ex: 202104) |
FiscalDayOfMonth | int | 31 | The numerical day of the fiscal month. |
FiscalDayOfQuarter | int | 31 | The numerical day of the fiscal quarter. |
FiscalDayOfYear | int | 31 | The numerical day of the fiscal year. |
FiscalWeekOfQuarter | int | 1 | The numerical week of the fiscal quarter. Starts at 1 and counts up. Partial weeks do count. |
FiscalWeekOfYear | int | 52 | The numerical week of the fiscal year. |
FiscalMonth | int | 10 | The numerical fiscal month. (Ex. Dec = 12) |
FiscalMonthOfQuarter | int | 1 | The numerical fiscal month of the fiscal quarter. For obvious reasons, 1-3. |
FiscalQuarter | int | 1 | The numerical fiscal quarter. |
FiscalDaysInMonth | int | 31 | The number of days in the fiscal month. |
FiscalDaysInQuarter | int | 62 | The number of days in the fiscal quarter. |
FiscalDaysInYear | int | 365 | The number of days in the fiscal year. |
FiscalCurrentMonthFlag | bit | 1 | Indicates this row's date falls within the current fiscal month. |
FiscalPriorMonthFlag | bit | 1 | Indicates this row's date falls within the prior fiscal month. |
FiscalNextMonthFlag | bit | 1 | Indicates this row's date falls within the next fiscal month. |
FiscalCurrentQuarterFlag | bit | 1 | Indicates this row's date falls within the current fiscal quarter. |
FiscalPriorQuarterFlag | bit | 1 | Indicates this row's date falls within the prior fiscal quarter. |
FiscalNextQuarterFlag | bit | 1 | Indicates this row's date falls within the next fiscal quarter. |
FiscalCurrentYearFlag | bit | 1 | Indicates this row's date falls within the current fiscal year. |
FiscalPriorYearFlag | bit | 1 | Indicates this row's date falls within the prior fiscal year. |
FiscalNextYearFlag | bit | 1 | Indicates this row's date falls within the next fiscal year. |
FiscalFirstDayOfMonthFlag | bit | 1 | Indicates this row's date falls on the first day of the fiscal month. |
FiscalLastDayOfMonthFlag | bit | 1 | Indicates this row's date falls on the last day of the fiscal month. |
FiscalFirstDayOfQuarterFlag | bit | 1 | Indicates this row's date falls on the first day of the fiscal quarter. |
FiscalLastDayOfQuarterFlag | bit | 1 | Indicates this row's date falls on the last day of the fiscal quarter. |
FiscalFirstDayOfYearFlag | bit | 1 | Indicates this row's date falls on the first day of the fiscal year. |
FiscalLastDayOfYearFlag | bit | 1 | Indicates this row's date falls on the last day of the fiscal year. |
FiscalFractionOfMonth | decimal(5,4) | 0.2258 | The decimal fraction of the fiscal month that has passed as of this row's date. |
FiscalFractionOfQuarter | decimal(5,4) | 0.0769 | The decimal fraction of the fiscal quarter that has passed as of this row's date. |
FiscalFractionOfYear | decimal(5,4) | 0.0191 | The decimal fraction of the fiscal year that has passed as of this row's date. |
FiscalCurrentMonthStart | date | Locale specific. | The date this row's fiscal month starts. |
FiscalCurrentMonthEnd | date | Locale specific. | The date this row's fiscal month ends. |
FiscalCurrentQuarterStart | date | Locale specific. | The date this row's fiscal quarter starts. |
FiscalCurrentQuarterEnd | date | Locale specific. | The date this row's fiscal quarter ends. |
FiscalCurrentYearStart | date | Locale specific. | The date this row's fiscal year starts. |
FiscalCurrentYearEnd | date | Locale specific. | The date this row's fiscal year ends. |
FiscalPriorMonthStart | date | Locale specific. | The date fiscal month prior to this row's fiscal month starts. |
FiscalPriorMonthEnd | date | Locale specific. | The date fiscal month prior to this row's fiscal month ends. |
FiscalPriorQuarterStart | date | Locale specific. | The date fiscal quarter prior to this row's fiscal quarter starts. |
FiscalPriorQuarterEnd | date | Locale specific. | The date fiscal quarter prior to this row's fiscal quarter ends. |
FiscalPriorYearStart | date | Locale specific. | The date fiscal year prior to this row's fiscal year starts. |
FiscalPriorYearEnd | date | Locale specific. | The date fiscal year prior to this row's fiscal year ends. |
FiscalNextMonthStart | date | Locale specific. | The date fiscal month after this row's fiscal month starts. |
FiscalNextMonthEnd | date | Locale specific. | The date fiscal month after this row's fiscal month ends. |
FiscalNextQuarterStart | date | Locale specific. | The date fiscal quarter after this row's fiscal quarter starts. |
FiscalNextQuarterEnd | date | Locale specific. | The date fiscal quarter after this row's fiscal quarter ends. |
FiscalNextYearStart | date | Locale specific. | The fiscal year fiscal quarter after this row's fiscal year starts. |
FiscalNextYearEnd | date | Locale specific. | The fiscal year fiscal quarter after this row's fiscal year ends. |
FiscalMonthlyBurnup | bit | 1 | Indicates the day of the fiscal month of this row's date is equal to or greater to the day of the fiscal month today. For example, if today is the 12th of the fiscal month and the day of the fiscal month for this row is the 15th, this would be FALSE. If the day of the fiscal month on this row were the 12th or lower, it would be TRUE. Useful for creating fiscal monthly burnup charts. |
FiscalQuarterlyBurnup | bit | 1 | Indicates the day of the fiscal quarter of this row's date is equal to or greater to the day of the fiscal quarter today. For example, if today is the 42nd day of the fiscal quarter and the day of the fiscal quarter for this row is the 60th, this would be FALSE. If the day of the fiscal quarter on this row were the 42nd or lower, it would be TRUE. Useful for creating fiscal quarterly burnup charts. |
FiscalYearlyBurnup | bit | 1 | Indicates the day of the fiscal year of this row's date is equal to or greater to the day of the fiscal year today. For example, if today is the 42nd day of the fiscal year and the day of the fiscal year for this row is the 60th, this would be FALSE. If the day of the fiscal year on this row were the 42nd or lower, it would be TRUE. Useful for creating fiscal yearly burnup charts. |
CompanyHolidayName | varchar(255) | Christmas | The name of the Company holiday, if applicable. |
USPublicHolidayName | varchar(255) | Christmas | The name of the US public holiday, if applicable. |