IScheduledTaskPeriodMonthly.Day

Syntax

Day: Integer;

Description

The Day property determines the day of the month when the calculation is executed. It is actual if the DayOfWeek property is set to the CalendarDayOfWeek.LocaleDefault value.

Example

Executing the example requires that the repository contains a scheduled tasks container with the TASK_CONTAINTER identifier and a unit with the Module_1 identifier. The unit contains the Main procedure.

Sub Main;

Var

MB: IMetabase;

CrInfo: IMetabaseObjectCreateInfo;

MObj: IMetabaseObject;

Exe: IExecuteSubScheduledTask;

Per: IScheduledTaskPeriodMonthly;

Prop: IScheduledTaskProperties;

i: Integer;

Begin

MB := MetabaseClass.Active;

CrInfo := MB.CreateCreateInfo;

CrInfo.ClassID := MetabaseObjectClass.KE_CLASS_TASK_EXECUTESUB;

CrInfo.Id := "MODULE_EXECUTOR";

CrInfo.Name := "Unit execution";

CrInfo.Parent := MB.ItemById("TASK_CONTAINTER");

MObj := MB.CreateObject(CrInfo).Edit;

Exe := MObj As IExecuteSubScheduledTask;

Exe.Assembly := (MB.ItemById("Module_1").Bind As IModule).Assembly;

Exe.SubName := "Main";

Prop := Exe.Properties;

Per := Prop.CreatePeriod(ScheduledTaskPeriodType.Monthly) As IScheduledTaskPeriodMonthly;

Per.DayOfWeek := CalendarDayOfWeek.LocaleDefault;

Per.Day := 1;

For i := 1 To 12 Do

Per.Months(i As CalendarMonth) := True;

End For;

Per.StartTime := DateTime.ComposeTimeOfDay(12, 0, 0, 0);

Prop.Period := Per;

MObj.Save;

End Sub Main;

After executing the example a new task of unit execution is created in the scheduled tasks container. The unit will be running on the first day of each month at 12:00.

See also:

IScheduledTaskPeriodMonthly