IScheduledTask.CreateInvokeEvent

Синтаксис Fore

CreateInvokeEvent(
                  Current: DateTime;
                  [Options: Integer = 0;]
                  [Second: Double = 0]
                  ): IScheduledInvoke;

Синтаксис Fore.NET

CreateInvokeEvent(
                  Current: System.DateTime;
                  Options: integer;
                  Second: double
                  ): Prognoz.Platform.Interop.KeFore.IScheduledInvoke;

Параметры

Current. Дата и время выполнения задачи;

Options. Параметр не поддерживается;

Second. Параметр не поддерживается.

Описание

Метод CreateInvokeEvent создает новое событие выполнения задачи контейнера запланированных задач.

Комментарии

Для успешного создания события для задачи должно быть установлено разрешение на выполнение и настроено расписание.

Пример Fore

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

Добавьте ссылки на системные сборки: Fore, Metabase.

Sub UserProc;
Var
    MB: IMetabase;
    Cont: IScheduledTasksContainer;
    Tasks: IMetabaseObjectDescriptors;
    Task: IScheduledTask;
    Invoke: IScheduledInvoke;
Begin
    
// Получаем текущий репозиторий
    MB := MetabaseClass.Active;
    
// Получаем первую задачу в контейнере
    Cont := MB.ItemById("SCHEDULEDTASKSCONTAINER").Bind As IScheduledTasksContainer;
    Tasks := Cont.Tasks;
    Task := Tasks.Item(
0).Bind As IScheduledTask;
    
// Создаём событие выполнения задачи
    Invoke := Task.CreateInvokeEvent(DateTime.Now);
    Invoke.Invoke(MB);
End Sub UserProc;

В результате выполнения примера для первой задачи в контейнере будет создано событие выполнения задачи. В историю задачи будет добавлена соответствующая запись

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.KeFore;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Cont: IScheduledTasksContainer;
    Tasks: IMetabaseObjectDescriptors;
    Task: IScheduledTask;
    Invoke: IScheduledInvoke;
Begin
    
// Получаем текущий репозиторий
    MB := Params.Metabase;
    
// Получаем первую задачу в контейнере
    Cont := MB.ItemById["SCHEDULEDTASKSCONTAINER"].Bind() As IScheduledTasksContainer;
    Tasks := Cont.Tasks;
    Task := Tasks.Item[
0].Bind() As IScheduledTask;
    
// Создаём событие выполнения задачи
    Invoke := Task.CreateInvokeEvent(DateTime.Now, 00);
    Invoke.Invoke(MB);
End Sub

См. также:

IScheduledTask