Skip to main content

SYS.Monitor.Health.Period

Class SYS.Monitor.Health.Period Extends (%Persistent, %XML.Adaptor) [ ClassType = persistent, ProcedureBlock, System = 3 ]

Defines time Periods for evaluation of Health Monitor Sensors. Default is 63 weekly periods, nine Periods for each day of the week.

Properties

Description

Property Description As %String(MAXLEN = 250);

Recurrance: every day at (start/end), every week on day (default) every month on day of month or "last day of month" every 3 months (quarterly) on day of month or "last day of month" every year on month and day of month or "last day of month" Description of the interval

StartTime

Property StartTime As %Integer [ InitialExpression = -1, Required ];

Start time

EndTime

Property EndTime As %Integer [ InitialExpression = -1, Required ];

End time

Recurrence

Property Recurrence As %Integer [ InitialExpression = 1, Required ];

Recurrence - weekly-1, monthly-2, quarterly-3, yearly-4

Day

Property Day As %Integer [ InitialExpression = 0, Required ];

Day. 1-7 for weekly, 1-31 or 99 for others

Month

Property Month As %String [ InitialExpression = 0, Required ];

Month - Quarterly or yearly

Methods

%OnNew

Method %OnNew(rec As %Integer, day As %Integer, month As %Integer, start As %Integer, end As %Integer, desc As %String) As %Status [ Private ]

Set the interval properties

Create

ClassMethod Create(Rec As %Integer, Start As %String, End As %String, Day As %Integer, Desc As %String = "", Month As %Integer = 0) As %Status

Create a Period. Start and End time is 24-hour time format. Recurrence - weekly-1, monthly-2, quarterly-3, yearly-4 Day = day of week (1-7) for weekly recurrence, day of month (1-31 or 99 for "end of month") for all other recurrence.

Modify

ClassMethod Modify(Period As %Integer, Start As %String = "", End As %String = "", Day As %Integer = 0, Rec As %Integer = 0, Desc As %String = "", Month As %Integer = 0) As %Status

Modify a Period.

Validate

ClassMethod Validate(Start As %String, End As %String, Rec As %Integer, Day As %Integer, Month As %Integer, ByRef startsecs As %Integer, ByRef endsecs As %Integer) As %Status

Delete

ClassMethod Delete(PeriodId As %String) As %Status

Delete a Period

TodayPeriodsExecute

ClassMethod TodayPeriodsExecute(ByRef qHandle As %Binary) As %Status

TodayPeriodsClose

ClassMethod TodayPeriodsClose(ByRef qHandle As %Binary) As %Status [ PlaceAfter = TodayPeriodsExecute ]

TodayPeriodsFetch

ClassMethod TodayPeriodsFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) As %Status [ PlaceAfter = TodayPeriodsExecute ]