Платформа 3V/Планировщик/Настройки аутентификации/Примеры работы задач в Планировщике: различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
Строка 1: Строка 1:
 
'''!Страница находится в разработке'''<br>
 
'''!Страница находится в разработке'''<br>
Для демонстрации работы планировщика создадим методику расчета, которая будет записывать дату и время ее запуска (Используем выражение Now()). В методику так же добавим вычислимый параметр Сегодня (используем "defaultValue": "=Today()"). В такой методики каждый день будет изменяться параметр, а соответственно мы сможем посмотреть как по дням будет работать запускаться задача в планировщики и время запуска методики. <br>
+
'''Рассмотрим работу планировщика на примере задачи с запуском методики.''' <br>
 +
Для этого создадим методику расчета, которая будет записывать дату и время её запуска (используем выражение Now()), в методику так же добавим вычислимый параметр Сегодня (используем "defaultValue": "=Today()"). В данной методики каждый день будет изменяться параметр, отображая сегодняшний день, поэтому мы сможем посмотреть как по дням будет работать запуск задачи в планировщики и время запуска каждой задачи. <br>
 +
 
 +
== Однократный запуск методики ==
 +
Для методик с однократным запуском используется период с '''"discriminator": "OnceDto"'''.
 +
Пример 1: Данная задача в планировщике запустит методику с идентификатором 1190 один раз. Несмотря на то, что в days указаны все дни недели, период запуска данной методики указан "discriminator": "OnceDto", поэтому методика запустится 1 раз в ближайший из указанных дней в 11:00.<br>
 +
Задача была создана 14 января 2022 года после 11:00, значит ее ближайший запуск должен быть 15 января 2022 в 11:00. [https://study.3v-cloud.com/navigator/#/home?parentId=1188 Результат работы задачи].<br>
  
1. Записываем 1 раз. [https://study.3v-cloud.com/navigator/#/home?parentId=1188 Результат работы задачи].<br>
 
Данная задача в планировщике запустит методику с идентификатором 1190 один раз. Несмотря на то что в days указаны все дни недели, период запуска данной методики указан "discriminator": "OnceDto", поэтому методика запустится 1 раз в ближайший из указанных дней в 11:00.<br>
 
Задача была создана 14 января 2022 года после 11:00, значит ее ближайший запуск должен быть 15 января 2022 в 11:00.
 
 
[[Файл:запуск методики 1 раз.png|700px|слева]]<br clear="both" /><br>
 
[[Файл:запуск методики 1 раз.png|700px|слева]]<br clear="both" /><br>
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
Строка 46: Строка 49:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</div></div>
 
</div></div>
2. Записываем 20 раз. [https://study.3v-cloud.com/navigator/#/home?parentId=1194 Результат работы задачи]. <br>
+
== Записываем 20 раз. ==
 +
[https://study.3v-cloud.com/navigator/#/home?parentId=1194 Результат работы задачи]. <br>
 
Данная задача в планировщике запустит методику с идентификатором 1195 20 раз, так как в периоду указан "discriminator": "ManyTimesDto", а количество запусков равно 20 ("times": 20).  Первый раз запуск методики произойдет в ближайший из указанных дней в 13:00.<br>
 
Данная задача в планировщике запустит методику с идентификатором 1195 20 раз, так как в периоду указан "discriminator": "ManyTimesDto", а количество запусков равно 20 ("times": 20).  Первый раз запуск методики произойдет в ближайший из указанных дней в 13:00.<br>
 
Задача была создана 17 января 2022 года до 13:00, значит ее ближайший запуск должен быть 17 января 2022 в 13:00.<br>
 
Задача была создана 17 января 2022 года до 13:00, значит ее ближайший запуск должен быть 17 января 2022 в 13:00.<br>
Строка 93: Строка 97:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</div></div>
 
</div></div>
3. Записываем каждый день по дням. [https://study.3v-cloud.com/navigator/#/home?parentId=1191 Результат работы задачи].  
+
== Записываем каждый день по дням ==
 +
[https://study.3v-cloud.com/navigator/#/home?parentId=1191 Результат работы задачи].  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
 
<div style="font-weight:bold;line-height:1.6;"> Пример описания задачи в формате JSON </div>
 
<div style="font-weight:bold;line-height:1.6;"> Пример описания задачи в формате JSON </div>
Строка 134: Строка 139:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</div></div>
 
</div></div>
4. Записываем с промежутком 23 часа. [https://study.3v-cloud.com/navigator/#/home?parentId=1187 Результат работы задачи].  
+
== Записываем с промежутком 23 часа ==
 +
[https://study.3v-cloud.com/navigator/#/home?parentId=1187 Результат работы задачи].  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
 
<div style="font-weight:bold;line-height:1.6;"> Пример описания задачи в формате JSON </div>
 
<div style="font-weight:bold;line-height:1.6;"> Пример описания задачи в формате JSON </div>
Строка 167: Строка 173:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</div></div>
 
</div></div>
5. Записываем дату с 15.01-16.02 [https://study.3v-cloud.com/navigator/#/home?parentId=1197 Результат работы задачи].  
+
== Записываем дату с 15.01-16.02 ==
 +
[https://study.3v-cloud.com/navigator/#/home?parentId=1197 Результат работы задачи].  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;">
 
<div style="font-weight:bold;line-height:1.6;"> Пример описания задачи в формате JSON </div>
 
<div style="font-weight:bold;line-height:1.6;"> Пример описания задачи в формате JSON </div>

Версия 13:23, 17 января 2022

!Страница находится в разработке
Рассмотрим работу планировщика на примере задачи с запуском методики.
Для этого создадим методику расчета, которая будет записывать дату и время её запуска (используем выражение Now()), в методику так же добавим вычислимый параметр Сегодня (используем "defaultValue": "=Today()"). В данной методики каждый день будет изменяться параметр, отображая сегодняшний день, поэтому мы сможем посмотреть как по дням будет работать запуск задачи в планировщики и время запуска каждой задачи.

Однократный запуск методики

Для методик с однократным запуском используется период с "discriminator": "OnceDto". Пример 1: Данная задача в планировщике запустит методику с идентификатором 1190 один раз. Несмотря на то, что в days указаны все дни недели, период запуска данной методики указан "discriminator": "OnceDto", поэтому методика запустится 1 раз в ближайший из указанных дней в 11:00.
Задача была создана 14 января 2022 года после 11:00, значит ее ближайший запуск должен быть 15 января 2022 в 11:00. Результат работы задачи.

запуск методики 1 раз.png



Пример описания задачи в формате JSON
 1 {
 2     "runUrl": {
 3       "parameters": [],
 4       "type": "Post",
 5       "url": "http://engine/api/Calculation/1190",
 6       "headers": [],
 7       "discriminator": "CalcWithParamsTaskUrlDto"
 8     },
 9     "checkStateUrl": null,
10     "schedule": {
11       "days": [
12         "Tuesday",
13         "Wednesday",
14         "Thursday",
15         "Friday",
16         "Saturday",
17         "Monday",
18         "Sunday"
19       ],
20       "period": {
21         "discriminator": "OnceDto"
22       },
23       "runTime": {
24         "hours": 11,
25         "minutes": 0
26       },
27       "discriminator": "DaysScheduleDto"
28     },
29     "isEnable": true,
30     "authenticationSettingsId": 1,
31     "id": 5,
32     "name": "Запуск один раз",
33     "discriminator": "CalcScheduledTaskDto"
34   }

Записываем 20 раз.

Результат работы задачи.
Данная задача в планировщике запустит методику с идентификатором 1195 20 раз, так как в периоду указан "discriminator": "ManyTimesDto", а количество запусков равно 20 ("times": 20). Первый раз запуск методики произойдет в ближайший из указанных дней в 13:00.
Задача была создана 17 января 2022 года до 13:00, значит ее ближайший запуск должен быть 17 января 2022 в 13:00.

Вставить скрин после 20 запусков!

Пример описания задачи в формате JSON
 1 {
 2     "runUrl": {
 3       "parameters": [],
 4       "type": "Post",
 5       "url": "http://engine/api/Calculation/1195",
 6       "headers": [],
 7       "discriminator": "CalcWithParamsTaskUrlDto"
 8     },
 9     "checkStateUrl": null,
10     "schedule": {
11       "days": [
12         "Tuesday",
13         "Wednesday",
14         "Thursday",
15         "Friday",
16         "Saturday",
17         "Monday",
18         "Sunday"
19       ],
20       "period": {
21         "times": 20,
22         "discriminator": "ManyTimesDto"
23       },
24       "runTime": {
25         "hours": 13,
26         "minutes": 0
27       },
28       "discriminator": "DaysScheduleDto"
29     },
30     "isEnable": true,
31     "authenticationSettingsId": 1,
32     "id": 7,
33     "name": "Каждые ДЕНЬ",
34     "discriminator": "CalcScheduledTaskDto"
35   }

Записываем каждый день по дням

Результат работы задачи.

Пример описания задачи в формате JSON
 1 {
 2     "runUrl": {
 3       "parameters": [],
 4       "type": "Post",
 5       "url": "http://engine/api/Calculation/1192",
 6       "headers": [],
 7       "discriminator": "CalcWithParamsTaskUrlDto"
 8     },
 9     "checkStateUrl": null,
10     "schedule": {
11       "days": [
12         "Tuesday",
13         "Wednesday",
14         "Thursday",
15         "Friday",
16         "Saturday",
17         "Monday",
18         "Sunday"
19       ],
20       "period": {
21         "discriminator": "InfiniteTimesDto"
22       },
23       "runTime": {
24         "hours": 12,
25         "minutes": 0
26       },
27       "discriminator": "DaysScheduleDto"
28     },
29     "isEnable": true,
30     "authenticationSettingsId": 1,
31     "id": 6,
32     "name": "Каждые ДЕНЬ",
33     "discriminator": "CalcScheduledTaskDto"
34   }

Записываем с промежутком 23 часа

Результат работы задачи.

Пример описания задачи в формате JSON
 1 {
 2     "runUrl": {
 3       "parameters": [],
 4       "type": "Post",
 5       "url": "http://engine/api/Calculation/1185",
 6       "headers": [],
 7       "discriminator": "CalcWithParamsTaskUrlDto"
 8     },
 9     "checkStateUrl": null,
10     "schedule": {
11       "timeSpan": "23:00:00",
12       "period": {
13         "discriminator": "InfiniteTimesDto"
14       },
15       "runTime": {
16         "hours": 10,
17         "minutes": 0
18       },
19       "discriminator": "TimerScheduleDto"
20     },
21     "isEnable": true,
22     "authenticationSettingsId": 1,
23     "id": 4,
24     "name": "Каждые 23 часа",
25     "discriminator": "CalcScheduledTaskDto"
26   }

Записываем дату с 15.01-16.02

Результат работы задачи.

Пример описания задачи в формате JSON
 1 {
 2     "runUrl": {
 3       "parameters": [],
 4       "type": "Post",
 5       "url": "http://engine/api/Calculation/1198",
 6       "headers": [],
 7       "discriminator": "CalcWithParamsTaskUrlDto"
 8     },
 9     "checkStateUrl": null,
10     "schedule": {
11       "days": [
12         "Tuesday",
13         "Wednesday",
14         "Thursday",
15         "Friday",
16         "Saturday",
17         "Monday",
18         "Sunday"
19       ],
20       "period": {
21         "startDate": "2022-01-15T00:00:00Z",
22         "endDate": "2022-02-16T00:00:00Z",
23         "discriminator": "DatePeriodDto"
24       },
25       "runTime": {
26         "hours": 13,
27         "minutes": 0
28       },
29       "discriminator": "DaysScheduleDto"
30     },
31     "isEnable": true,
32     "authenticationSettingsId": 1,
33     "id": 8,
34     "name": "Каждые ДЕНЬ",
35     "discriminator": "CalcScheduledTaskDto"
36   }