Платформа 3V/Планировщик/Настройки аутентификации/Примеры работы задач в Планировщике: различия между версиями
Строка 125: | Строка 125: | ||
'''Пример 2:'''Добавим в планировщик задачу с '''"discriminator": "ManyTimesDto"''', указанием "timeSpan": "23:00:00" и количеством запусков '''"times": 5'''. Данная задача будет 5 раз запускать методику с идентификатором 1195 каждые 23 часа. Первый раз запуск методики произойдет в ближайший из указанных в задаче рабочих дней в 13:00.<br> | '''Пример 2:'''Добавим в планировщик задачу с '''"discriminator": "ManyTimesDto"''', указанием "timeSpan": "23:00:00" и количеством запусков '''"times": 5'''. Данная задача будет 5 раз запускать методику с идентификатором 1195 каждые 23 часа. Первый раз запуск методики произойдет в ближайший из указанных в задаче рабочих дней в 13:00.<br> | ||
Задача была создана ''18 января 2022'' (вторник) до ''13:00'', значит ее ближайший запуск должен быть ''18 января 2022'' в ''13:00''.<br> | Задача была создана ''18 января 2022'' (вторник) до ''13:00'', значит ее ближайший запуск должен быть ''18 января 2022'' в ''13:00''.<br> | ||
+ | |||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;"> | ||
+ | <div style="font-weight:bold;line-height:1.6;"> Пример описания задачи в формате JSON </div> | ||
+ | <div class="mw-collapsible-content mw-collapsed-content"> | ||
+ | <syntaxhighlight lang="JSON" line> | ||
+ | { | ||
+ | "runUrl": { | ||
+ | "parameters": [], | ||
+ | "type": "Post", | ||
+ | "url": "http://engine/api/Calculation/1248", | ||
+ | "headers": [], | ||
+ | "discriminator": "CalcWithParamsTaskUrlDto" | ||
+ | }, | ||
+ | "checkStateUrl": null, | ||
+ | "schedule": { | ||
+ | "timeSpan": "23:00:00", | ||
+ | "period": { | ||
+ | "times": 5, | ||
+ | "discriminator": "ManyTimesDto" | ||
+ | }, | ||
+ | "runTime": { | ||
+ | "hours": 12, | ||
+ | "minutes": 0 | ||
+ | }, | ||
+ | "discriminator": "DaysScheduleDto" | ||
+ | }, | ||
+ | "isEnable": true, | ||
+ | "authenticationSettingsId": 1, | ||
+ | "id": 43, | ||
+ | "name": "5 раз каждые 23 часа", | ||
+ | "discriminator": "CalcScheduledTaskDto" | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | </div></div> | ||
== Записываем каждый день по дням == | == Записываем каждый день по дням == |
Версия 07:09, 18 января 2022
!Страница находится в разработке
Рассмотрим работу планировщика на примере задачи с запуском методики.
Для этого добавим методику расчета, которая будет записывать дату и время её запуска (используем выражение Now()), в методику так же добавим вычислимый параметр Сегодня (используем "defaultValue": "=Today()"). В данной методики каждый день будет изменяться параметр, отображая сегодняшний день, поэтому мы сможем посмотреть как по дням будет работать запуск задачи в планировщики и время запуска каждой задачи.
Содержание
Однократный запуск методики
Для методик с однократным запуском используется период с "discriminator": "OnceDto".
Пример 1: Добавим в планировщик задачу с "discriminator": "OnceDto". Данная задача запустит методику с идентификатором 1206 один раз в 09:01.
Дата создания задачи 18 января 2022 до 09:01, значит методика должна запуститься 18 января 2022 в 09:01.
Пример 2: Добавим в планировщик задачу с "discriminator": "OnceDto" и указанием "days": [ ] четверг и суббота. Данная задача запустит методику с идентификатором 1190 один раз. Несмотря на то, что в "days": [ ] указаны все дни, период запуска данной методики указан как "discriminator": "OnceDto", поэтому методика запустится 1 раз в ближайший из указанных дней в 11:00.
Задача была создана 18 января 2022 (вторник), значит ее запуск должен быть 20 января 2022 в 11:00. Результат работы задачи.
!Изменить скрин по новой задачи
Запуск методики ограниченный количеством раз
Пример 1: Добавим в планировщик задачу с "discriminator": "ManyTimesDto", указанием "days": [ ] рабочие дни (кроме субботы и воскресенья) и количеством запусков "times": 10. Данная задача будет 10 раз запускать методику с идентификатором 1195 в рабочие дни. Первый раз запуск методики произойдет в ближайший из указанных в задаче рабочих дней в 13:00.
Задача была создана 18 января 2022 (вторник) до 13:00, значит ее ближайший запуск должен быть 18 января 2022 в 13:00.
Результат работы задачи.
Пример 2:Добавим в планировщик задачу с "discriminator": "ManyTimesDto", указанием "timeSpan": "23:00:00" и количеством запусков "times": 5. Данная задача будет 5 раз запускать методику с идентификатором 1195 каждые 23 часа. Первый раз запуск методики произойдет в ближайший из указанных в задаче рабочих дней в 13:00.
Задача была создана 18 января 2022 (вторник) до 13:00, значит ее ближайший запуск должен быть 18 января 2022 в 13:00.