1с фоновые задания файловая база

В технологической платформе «1С:Предприятие» версии 8.3 реализовали возможность выполнять фоновые задания в файловой базе в едином сеансе.
В клиент-серверном варианте, выполнение регламентных операций можно отключить через консоль администрирования кластера 1С, а для файловой базы, необходимо воспользоваться ключом запуска

Очень полезно, когда необходимо выполнять монопольные операции с базой данных в файловом режиме работы.

Реализовано в версии 8.3.3.641.

Мы значительно упростили работу с фоновыми и регламентными заданиями в файловом варианте.

Раньше для автоматического выполнения заданий требовалось запускать отдельный, дополнительный сеанс 1С:Предприятия, используемый в качестве планировщика заданий. И в этом сеансе нужно было периодически выполнять метод встроенного языка ВыполнитьОбработкуЗаданий(). Такой подход был довольно громоздким, неудобным и сильно ограничивал использование фоновых и регламентных заданий в файловом варианте работы.

Теперь всё стало гораздо проще. Если стартует тонкий или толстый клиент, а также если у веб-сервера есть клиентские соединения, то в каждом из этих приложений автоматически запускается еще один поток с подключением к базе данных. Эти потоки занимаются тем, что выполняют фоновые и регламентные задания.

Каждое из перечисленных приложений выполняет собственные фоновые задания. Если приложение инициировало несколько фоновых заданий, то выполняются они последовательно, в порядке поступления.

А регламентные задания выполняет только одно из запущенных приложений. Выполняет оно их после того, как выполнит собственные фоновые задания. При этом автоматическая обработка очереди регламентных заданий проводится раз в минуту.

Чтобы платформа могла определить, какое из запущенных приложений будет исполнять регламентные задания, мы добавили новый параметр командной строки — AllowExecuteScheduledJobs. С помощью этого параметра также можно принудительно переназначить функцию исполнения регламентных заданий другому приложению.

1. Что такое регламентные и фоновые задания 1С 8.3

Для начала давайте разберемся, что собой представляют фоновые и регламентные задания в 1С 8.3. Регламентные задания в 1С 8.3 – это механизм (объект метаданных 1С) созданный для выполнения задач по расписанию.

Фоновое задание в 1С 8.3 – это процесс, созданный путем запуска регламентного задания, который выполняет описанный в нем алгоритм.

Говоря простым языком, эти два объекта не могут существовать один без другого. Регламентное задание в 1С 8.3 является триггером (условием) запуска фоновых заданий. Также регламентные задания в 1С 8.3 можно сравнить с планировщиком заданий Windows, только триггером в данном случае является время.

Рассмотрим структуру регламентного задания в 1С 8.3:

Рисунок 1. Окно конфигурации

Регламентные задания находятся в разделе Общие, основного дерева конфигурации 1С. Для добавления нового регламентного задания нужно воспользоваться кнопкой «Добавить» в группе регламентных заданий.

Для примера возьмем регламентное задание «Выполнение задач по почте» конфигурации «Документооборот» 2.1.

Рисунок 2. Окно настроек регламентного задания

Имя – имя регламентного задания для конфигуратора.

Синоним – наименование для пользователя, которое пользователь видит в обработке «Регламентные и фоновые задания» 1С 8.3

Имя метода – путь к Процедуре, которая будет выполняться по расписанию. Следует отметить несколько нюансов при создании такой функции:

1) Процедура обязательно должна находиться в общем модуле 1С

2) Общий модуль 1Сдолжен быть с директивой «Сервер».

3) Процедура обязательно должна быть экспортной процедурой

Ключ – свойство, которое позволяет формально группировать несколько регламентных заданий 1С 8.3, а также позволяет разграничить однотипные задания. Если есть несколько заданий с одинаковым ключом, они будут выполняться последовательно. В результате в разрезе группы в один промежуток времени может выполняться одно задание из каждой группы. Следует учитывать, что если Ключ не заполнен, он не учитывается.

Расписание – это настройка, которая позволяет настроить периоды выполнения задания по времени.

Рисунок 3. Окно настроек расписания

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

Использование – признак того, будет ли выполняться данное регламентное задание.

Повтор при аварийном завершении – повторный запуск регламентного задания. Сбой может произойти, если в результате выполнения регламентного задания сработало исключение, либо когда происходит перезапуск сервера.

2. Управление регламентными заданиями в 1С 8.3

Для управления регламентными заданиями в типовых конфигурациях, использующих библиотеку стандартных подсистем, присутствует обработка «Регламентные и фоновые задания»:

Рисунок 4. Окно обработки «Регламентные и фоновые задания»

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

Наименование – синоним регламентного задания 1С 8.3 из конфигуратора.

Состояние — задача выполнена, выполняется, выполнена с ошибками. В данном случае выводится ошибка из журнала регистрации.

Дата окончания — дата фактически оконченного задания. Показывает даты только тех заданий, которые были выполнены в прошлом.

При двойном клике на регламентном задании в 1С 8.3 мы можем открыть его свойства.

Рисунок 5. Окно настроек регламентного задания

В свойствах мы можем поменять его расписание. В данном случае эта настройка будет считаться актуальнее той, которая задана в конфигураторе. А также указать пользователя, под которым выполняется регламентное задание (это целесообразно для файлового варианта базы, об этом мы поговорим далее). В большинстве случаев этот пользователь должен иметь права администратора, чтобы процедура, выполняемая в фоновом задании, не имела ограничений.

3. Особенности работы в файловой и клиент-серверной базах

Следует также отметить особенности работы регламентных задний в файловой и клиент-серверной базах.

1С 8.3 Файловая база — база находится в папке на сервере. Регламентные задания работают, пока есть хотя бы один работающий сеанс. Если все пользователи выходят из 1С – регламентные задания прекращают свою работу. В данном случае есть несколько вариантов решения данной проблемы. Использовать планировщик операционной системы, чтобы он запускал обработку, которая актуализирует работу фоновых заданий. В обработке нужно при открытии указать выполнение функции «ВыполнитьОбработкуЗаданий();».

Клиент-серверная база – в данном варианте для выполнения фоновых заданий существует отдельный пользователь. Поскольку серверная база работает постоянно, то и регламентные задания работают независимо от количества человек в базе. Регламентные задания выполняются под учетной записью пользователя Windows, который запустил сервер 1С.

В данной статье мы рассмотрели регламентные и фоновые задания, как их создавать, настраивать, контролировать, а также особенности их работы в разных архитектурах 1С.

Оцените статью
Все о Windows 10
Добавить комментарий

Adblock
detector