The following file is used by the BHT Calendar Classes for building the Holiday Queue. A TXD of the file is included with the templates and classes to import into your app for adding and changing holidays as required. Do not change the layout of the file or the class will GPF! <g>
See Holiday Types for how the fields are used.
The file is opened by the Class in Shared mode, so you can include a browse/update procedure in your app to allow the end user to modify the Holiday file as needed.
BHF FILE,DRIVER('TOPSPEED'),NAME(BSTCalFile),PRE(BHF),CREATE,BINDABLE
BHF_Pri KEY(BHF:SysId),NOCASE,PRIMARY
BHF_CC_Mo_Day KEY(BHF:CountryCode,BHF:Month,BHF:Day),DUP,NOCASE,OPT
BHF_CC_NAME KEY(BHF:CountryCode,BHF:HolidayName),DUP,NOCASE,OPT
BHF_Name KEY(BHF:HolidayName),DUP,NOCASE,OPT
Record RECORD
SysId LONG
CountryCode STRING(2) ! Country Code For holidays to use
HolidayName CSTRING(100) ! String returned by Method for IsHoliday
HolidayType BYTE ! 1= Fixed, 2 = Floating, 3 = Base on Easter
IsReligious BYTE ! Holiday is Religous Flag "to Include"
NoWkEnds BYTE ! No Week End Flags to return a Friday or Monday.
DoNotUse BYTE ! Do Not Use This Holiday.
Month SHORT ! Month Holiday Occurs in
Day SHORT ! Day of Month Holiday occurs on
WkOfMo BYTE ! Week Number of Month for floating Holiday
DayOfWeek BYTE ! Day of Week for floating Holiday
DaysBasedOnEaster DECIMAL(4) ! Subtract or Add to Easter for Date
END
END