ICalculateCubeScheduledTask.SourceCube

Синтаксис

SourceCube: ICubeModel;

Описание

Свойство SourceCube определяет вычисляемый куб, либо загрузчик в куб, который будет выполняться при запуске задачи.

Пример

Для выполнения примера предполагается наличие в репозитории вычисляемого куба и контейнера запланированных задач с идентификаторами "Calc_Cube" и "CUBE_TASK" соответственно.

Sub Main;

Var

MB: IMetabase;

Cube: ICubeModel;

MObj, Parent: IMetabaseObject;

CrInfo: IMetabaseObjectCreateInfo;

CalCubeTask: ICalculateCubeScheduledTask;

Per: IScheduledTaskPeriodDaily;

Prop: IScheduledTaskProperties;

d: DateTime;

Begin

Mb := MetabaseClass.Active;

//Контейнер запланированных задач

Parent := MB.ItemById("CUBE_TASK").Bind;

//Куб для вычисления

Cube := Mb.ItemById("Calc_Cube").Bind As ICubeModel;

CrInfo := MB.CreateCreateInfo;

CrInfo.ClassID := MetabaseObjectClass.KE_CLASS_TASK_CALCULATECUBE;

CrInfo.Id := "CalcCubeTask";

CrInfo.Name := "Задача расчета вычисляемого куба";

CrInfo.Parent := Parent;

CrInfo.Permanent := False;

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

//Задача расчета вычисляемого куба

CalCubeTask := MObj As ICalculateCubeScheduledTask;

CalCubeTask.SourceCube := Cube;

//Настройка свойств задачи

Prop := CalCubeTask.Properties;

//Запуск ежедневно с интервалом

Per := Prop.CreatePeriod(ScheduledTaskPeriodType.Daily) As IScheduledTaskPeriodDaily;

d := DateTime.Now;

d := d.Compose(d.Year, d.Month, d.Day, 18, 00, 00, 00);

Per.StartDateTime := d;

Per.EveryDays := 2;

Prop.Period := Per;

MObj.Save;

End Sub Main;

После выполнения примера в контейнер запланированных задач будет добавлена задача расчета вычисляемого куба. Задача будет запускаться ежедневно, начиная с текущего дня, в "18:00" с интервалом в два дня.

См. также:

ICalculateCubeScheduledTask