The %SYS.Date.SlidingWindow class supports methods for
setting, modifying and inspecting the system-wide or
process-specific sliding window definitions. With the
exception of Get(), all the other class methods return a
%Status to indicate success or failure. Any modified
system-wide definition will be active until the system
is restarted. If necessary, users can add the new
settings to ^ZSTU or ^%ZSTART in order to make them
survive across reboots.
In most cases, the first parameter indicates whether
the call is system or process-specific:
Scope = 0: system (default)
Scope = 1: process
Depending of the method, start and end dates can be specified
in 3 different ways:
- Absolute Dates, represented in $H format
- Absolute Years, represented by 4-digit numbers relative to the
start of the Common Era (0 C.E.)
- Relative Years, represented by numbers relative the current year
When relative years are used to define a sliding window, the first
or only relative year is interpreted as the start year, expressed
as the number of years PRIOR to the current year. The second relative
year, if any, is interpreted as the end year, expressed as one more
than the number of years AFTER the current year.
classmethod Get(Scope As %Integer = 0)
Get current default definition in the format:
classmethod NoWindow(Scope As %Integer = 0)
Where OldStartDate and OldEndDate are absolute dates
in $H format representing the start and end, respectively,
of the current sliding window.
Set default to be an "empty" window, so that all
years display using 4 digits.
classmethod SetAbsolute(Scope As %Integer = 0, StartYear As %Integer, EndYear As %Integer)
Set date window to begin on the absolute year StarYear
and to end on the absolute year EndYear.
classmethod SetDate(Scope As %Integer = 0, StartDate As %Integer, EndDate As %Integer)
Set date window to begin on the absolute date StartDate
and to end on the absolute date EndDate.
classmethod SetRelative(Scope As %Integer = 0, StartYear As %Integer, EndYear As %Integer)
Set date window to begin on the relative year StartYear
and to end on the relative year EndYear.
classmethod Twentieth(Scope As %Integer = 0)
Example: If issued in 2008, the following command would
establish a process-specific sliding window definition
which would result in this process displaying two-digit
years for any dates in the range 01/01/1918 through
Remove current default so that a 20th century
fixed window is used by default.
Set process window to be the same as the current system default.