Цели проекта
Назначение неоперативной очереди
Режимы выполнения заданий
Регламентное выполнение заданий по расписанию
3.90M

00-00019225

1.

1C:ERP Управление предприятием
Настройка периода запуска неоперативной
очереди заданий
00-00019225

2. Цели проекта

◼
◼
◼
◼
◼
Объединение принципов работы механизмов оперативной и неоперативной
очередей с возможностью настройки режимов выполнения заданий
Изменение механизма приоритезации выполнения заданий с целью
получения необходимой пользователям актуальной информации в
минимальные сроки
Поддержка требования отражения документов в бюджетировании
Поддержка централизованной регистрации заданий в регистрах очереди при
проведении документов
Поддержка добавления новых операций в неоперативную очереди без
доработки «ядра» механизма
2

3. Назначение неоперативной очереди

Неоперативная очередь заданий – это механизм, предназначенный для
отложенного выполнения длительных или ресурсоемких расчетных операций:
◼
которые можно выполнять отдельно от основного процесса проведения документа
По таким операциям не должны выполняться контроли, приводящие к откату транзакции проведения
◼
◼
расчётной базой которых не являются данные за весь отчётный период (месяц,
квартал, полугодие, год).
результат выполнения которых может использоваться при выполнении других
операций механизма очереди или в этапах закрытия месяца.
Использование неоперативной очереди позволяет сократить время
проведения документов и время выполнения отдельных этапов в операциях
закрытия месяца.
3

4.

Режимы выполнения заданий

5.

Возможность настроить
режим выполнения
заданий
Справочник «Виды неоперативных заданий» (поставляемый)

6. Режимы выполнения заданий

◼
Сразу после проведения (оперативно)
Выполнение заданий с данным режимом начнется сразу после проведения документа.
◼
По расписанию (отложено)
Выполнение заданий будет выполняться по расписанию регламентного задания.
◼
При закрытии месяца
Задания с данным режимом будут выполняться только в этапах механизма закрытия месяца.
6

7.

Основные настройки вида
задания для
администратора
Количество потоков – доступное количество исполняющих потоков при оперативном
выполнении заданий данного вида.
Максимальная порция – максимальное количество рассчитываемых объектов (гранул расчета),
которое может обработать один исполняющий поток.
Оптимальная порция - это такое количество объектов для обработки одним исполняющим
потоком, которое обеспечивает баланс между эффективностью использования ресурсов системы
и скоростью выполнения заданий:
Если (Общее количество объектов расчёта / Количество свободных потоков) <= Оптимальная
порция,то каждый исполняющий поток получает для обработки количество объектов, равное
значению оптимальной порции.
В остальных случаях - каждый исполняющий поток получает максимальную порцию объектов к
обработке.
Режим выполнения заданий: «Сразу после проведения (оперативно)»
7

8.

Настройка количества
исполняющих потоков
неоперативной очереди
Настройка расписания
выполнения заданий
Установка размера
максимальной порции на
один исполняющий поток
В информационной системе задаётся общее количество
исполняющих потоков, выделенных под обработку неоперативных
заданий с режимами выполнения «По расписанию (отложено)»
и «При закрытии месяца».
Режим выполнения заданий: «По расписанию (отложено)»
8

9. Регламентное выполнение заданий по расписанию

Если регламентное задание не включено, то включить его можно в форме
справочника «Виды неоперативных заданий», а также в форме закрытия месяца.
9

10.

Задания с данным режимом будут
выполняться только в этапах
механизма закрытия месяца.
Режим выполнения заданий: «При закрытии месяца»
10

11.

При изменении режима выполнения будет
выполнена проверка, что все виды
заданий, от которых зависит текущее,
имеют не менее оперативный режим.
11

12.

Отражение документов в бюджетировании
с использованием механизма
неоперативной очереди

13.

• В справочник «Виды неоперативных
заданий» добавлен новый вид задания
«Отражение в бюджетировании»
• Добавлен новый этап в закрытии
месяца
13

14.

Информационное
оповещении о том, что
отображаемые в отчете
данные не актуальны.
Из отчета по гиперссылке
можно запустить
выполнение заданий*
По кнопке «Отменить»
можно прервать
выполнение заданий
* Выполнение заданий из отчета может запустить пользователь,
которому установлена роль «Разрешить интерактивное отражение
документов в бюджетировании»
Выполнение заданий по требованию пользователя
14

15.

При нажатии на кнопку
«Отменить» появляется окно
подтверждения прерывания
выполнения заданий.
Выполнение заданий по требованию пользователя
15

16.

После завершения отражения
документов в бюджетировании
(задания выполнены) выходит
информационное сообщение о
том, что отчет будет
переформирован
Выполнение заданий по требованию пользователя
16

17.

Изменения объектов метаданных
◼
◼
◼
◼
Удаляется регистр сведений «Задания к отражению в бюджетировании» и связанная с ним
константа «Номер задания отражения документов в бюджетировании»
Удаляются константы «Актуализировать хранимые фактические данные бюджетирования при
проведении документов» и «Актуализировать хранимые фактические данные
бюджетирования при формировании отчетов»
Удаляется регламентное задание «Отражение документов в бюджетировании»
Удаляются подписки на события записи, проведения и отмены проведения документов, а также
записи регистров накопления для отражения в бюджетировании
17

18.

Управляющие потоки неоперативной очереди

19.

Управляющий поток оперативного выполнения заданий
Запуск управляющего
потока
Из транзакции документа
Выбор заданий
из регистров очереди
Задания с режимом выполнения
«Сразу после проведения
(оперативно)»
с учетом зависимости
Формирование порций
гранул расчета
к обработке
Передача порции
гранулы расчета
в исполняющий поток
Сортировка заданий: по
периоду (от старых к новым)
В одну порцию попадают
задания одного вида без
учета периода.
Управляющий поток
запоминает ссылки на
гранулы расчета, которые он
передает в обработку
исполняющим потокам и
повторная передача этих же
объектов в другие
исполняющие потоки не
происходит.
Размер порции зависит от
настроек в виде задания:
«максимум в один поток»
или «равномерно по
потокам»
Завершение работы
управляющего потока
Отсутствие заданий с
режимом выполнения
«Сразу после
проведения
(оперативно)».
19

20.

Управляющий поток обработки заданий по расписанию
Запуск управляющего
потока
Регламентным заданием
«Исполнение неоперативной
очереди заданий»
Выбор заданий
из регистров очереди
Задания с режимом выполнения
«По расписанию (отложено)»
с учетом зависимости
Формирование порций
гранул расчета
к обработке
Передача порции
гранулы расчета
в исполняющий поток
Сортировка заданий: по
периоду (от старых к новым)
в разрезе дня, номеру
очереди.
Управляющий поток
запоминает ссылки на
гранулы расчета, которые он
передает в обработку
исполняющим потокам и
повторная передача этих же
объектов в другие
исполняющие потоки не
происходит.
В одну порцию попадают
задания по одному дню,
одному виду задания
Количество заданий в
порции: распределение по
схеме: «максимум заданий
в один поток»
Завершение работы
управляющего потока
Прекращает свою работу,
если:
- отсутствуют задания
- текущее время находится
вне расписания
регламентного задания
- если запущен
управляющий поток
приоритетной обработки
заданий
20

21.

Управляющий поток приоритетной обработки заданий
Запуск управляющего
потока
При выполнении закрытия
месяца.
По требованию
пользователя (из отчета,
обработки)
Выбор заданий
из регистров очереди
Задания с режимом выполнения
«По расписанию (отложено)»
«При закрытии месяца»
Формирование порций
гранул расчета
к обработке
Передача порции
гранулы расчета
в исполняющий поток
Сортировка заданий: по
периоду (от старых к новым)
Управляющий поток
запоминает ссылки на
гранулы расчета, которые он
передает в обработку
исполняющим потокам и
повторная передача этих же
объектов в другие
исполняющие потоки не
происходит.
В одну порцию попадают
задания одного вида без
учета периода.
Количество заданий в
порции: распределение по
схеме: «максимум заданий
в один поток»
Завершение работы
управляющего потока
Прекращает свою работу,
если:
- задания с указанными
параметрами требования
пользователя выполнены
- завершена обработка
заданий, относящихся к
этапам механизма
закрытия месяца.
21

22.

Как работает исполняющий поток

23.

Исполняющие потоки
◼
◼
Получает на вход порцию гранул для расчета
По ним выбираются все уникальные идентификаторы заданий для последующей
отметки выполнения (если один документ меняли два раза – будет два
идентификатора)
◼
В транзакции для каждой гранулы расчета исполняет задания
◼
Отмечает успешно обработанные задания (удаляет их из регистра очереди)
◼
Если во время обработки заданий возникли ошибки, они пишутся в служебный
регистр сведений «Ошибки очередей заданий»
23

24.

Поддержка централизованной регистрации
заданий при проведении документов

25.

Регистрация заданий
Новый подход к регистрации заданий в неоперативной очереди заключается в
поддержке двух режимов:
◼
«Централизованная» регистрация заданий из механизма проведения документа
Задания формируются «пакетно» после записи всех движений документа на основании данных таблиц изменений каждого из
регистров.
◼
«Децентрализованная» регистрация заданий при изменении движений регистра,
не связанная с механизмом проведения документа
Задания формируются в момент записи данных в регистр на основании сформированной таблицы изменений.
25

26.

Централизованная регистрация заданий из механизма
проведения документов
26

27.

Децентрализованная регистрация заданий вне механизма
проведения документов
27

28.

Добавление новых операций
в неоперативную очередь

29.

Добавление новых операций
◼
◼
Добавить новый предопределенный элемент в справочник «Виды неоперативных
заданий» и описать для него свойства первоначального заполнения
Определить регистр, в котором будут храниться задания:
- использовать имеющийся универсальный регистр очереди «Задания
неоперативного допроведения документов»
- разработать новый регистр очереди
◼
Описать алгоритм обработки гранулы расчета
29

30.

Регистр очереди «Задания неоперативного
допроведения документов»
Регистр очереди «Задания неоперативного допроведения документов» можно использовать, если:
◼
◼
гранулой обработки выступает документ информационной базы
существуют операции, которые выполняются при проведении документа, но их можно вынести из
транзакции проведения в отложенное фоновое выполнение, при условии:
- результат их выполнения не используется в контролях, которые могут приводить к откату транзакции проведения.
- базой для их расчета не являются данные, которые охватывают весь отчетный период (месяц, квартал, полугодие,
год).
◼
не требуется доработка структуры регистра (добавление новых служебных полей и т.д.).
Для описания алгоритма обработки документов по виду задания следует добавить следующий программный код в
процедуру ВыполнитьОбработкуДокументовПоВидуЗадания общего модуля ДопроведениеДокументовПереопределяемый :
30

31.

Добавление нового регистра очереди
◼
Должен иметь определенную структуру
Обязательные поля представлены на скрине.
◼
В модуле менеджера регистра сведений должны быть размещены
методы:
- описания параметров очереди
- регистрации заданий
- формирования порций гранул расчета
- обработки порции данных
Подробное описание методов можно посмотреть в регистрах очереди:
- «Задания к распределению взаиморасчетов»
- «Задания неоперативного допроведения документов»
31

32.

Особенности выполнения заданий

33.

Особенности выполнения заданий в файловой ИБ
В файловой информационной базе у видов заданий отличаются режимы выполнения заданий.
Сопоставление режимов запуска выполнения заданий в клиент-серверной и файловых информационных базах
показаны в таблице:
Клиент – серверная ИБ
Файловая ИБ
Комментарий
Сразу после проведения (оперативно)
При проведении
Задания будут выполняться в транзакции проведения
документов
По расписанию (отложено)
Вручную
Запускается по кнопке из формы списка справочника «Виды
неоперативных заданий»
При закрытии месяца
При закрытии месяца
Без изменений
Ручной запуск выполнения
заданий в файловой
информационной базе
33

34.

Особенности регистрации и выполнения заданий в
распределенных информационных базах
◼
Задания регистрируются в главном и периферийном узлах.
Примечание: Ранее регистрация выполнялась только в главном узле
◼
◼
◼
Автономная настройка режимов запуска в главном и периферийном узлах
Отсутствие в периферийном узле режима выполнения заданий «При закрытии
месяца»
операция закрытия месяца выполняется только в центральной информационной базе.
В периферийном узле доступен режим выполнения заданий «Никогда».
При его установке задания с таким видом не регистрируются и не выполняются.
34
English     Русский Правила