Универсальное регламентное задание

18.04.13

База данных - Инструменты администратора БД

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

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Конфигурация
.zip 221,76Kb
121 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Создаем регламентное задание

Создадим регламентное задание «Выполнение обработки».

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

Назначим процедуру, которая будет срабатывать при запуске регламентного задания: МодульРегламентныхЗаданий.РегламентноеЗаданиеВыполнениеОбработки.

Сама процедура имеет вид:

Процедура РегламентноеЗаданиеВыполнениеОбработки(Ключ) Экспорт
    ПараметрыРегламентныхЗаданий.ВыполнитьОбработкуСПараметрами(Ключ);
КонецПроцедуры

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

Наше регламентное задание может порождать множество фоновых процессов – по одному на каждую обработку. У каждого задания в платформе 1С8 есть ключ. Но метод регламентного задания не знает ключ фонового задания, поэтому нужно использовать параметры фонового задания. В результате мы можем видеть фоновое задание в консоли заданий, но не можем вручную из этой консоли создать фоновое задание, т.к. задания с параметрами вручную не создаются.

Справочник «Параметры регламентных заданий»:

Реквизиты:

  • КодПередЗапуском – неограниченная строка – код на языке 1С, который нужно выполнить перед запуском.
  • ОбработкаИзКонфигурации – строка (100)  - идентификатор обработки из конфигурации
  • ОбработкаИзСправочника – строка (100)  - ссылка на элемент справочника «Внешние обработки», если такой имеется в конфигурации
  • ВыполнятьЧерезПриложение 1С – булево - будет создано отдельное приложение 1С и в нем будет запущено регламентное задание. Создано для 8.1, где не все методы приложения доступны на сервере, где работает регламентное задание.
  • КодЗапуска - – неограниченная строка – код на языке 1С, который будет выполняться при запуске регламентного задания.

Создадим форму элемента:

По нажатию на кнопку «Создать регл. задание» программно создается регламентное задание с ключом-кодом:

Процедура ОсновныеДействияФормыСоздатьРеглЗадание(Кнопка)
    
    Перем Задание;
    
    Ключ = СокрЛП(Код);
    Задание = РегламентныеЗадания.СоздатьРегламентноеЗадание("ВыполнениеОбработки");
    Задание.Наименование = Ключ;
    Задание.Ключ = Ключ;
    
    Параметры = Новый Массив();
    Параметры.Добавить(Ключ);
    Задание.Параметры = Параметры;
    Задание.Записать();
    
КонецПроцедуры

 

Запуск регламентного задания

Каждое созданное нами регламентное задание имеет ключ:

Этот ключ соответствует коду справочника «Параметры регламентных заданий», по нему осуществляется поиск при старте задания. Если элемент справочника не найдено, задание не выполняется.

Далее, если задан код КодПередЗапуском то будет выполнен этот код. Далее, если переменная Выполнять примет значение ложь, то задание не будет выполнено. При анализе доступна переменная Параметры, где хранится ссылка на найденный элемент справочника «Параметры регламентных заданий».

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

Для 1С81 предусмотрено выполнение в новом приложении – чтобы можно было использовать код, доступный только на клиенте, в том числе и использование внешних обработок. Для этого нужно установить галочку «Выполнять через приложение 1С». Иначе регламентное задание будет выполняться на сервере.

Рекомендую устанавливать пользователя в поле «Пользователь» у вновь созданного регламентного задания, чтобы задание выполнялось под определенными правами. Рекомендую такому пользователю давать полные права. У меня используется пользователь «robot».

Расписание регламентного задания создается по гиперссылке «Расписание» из формы регламентного задания. Можно использовать обработку «Консоль регламентных заданий».

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    55942    300    148    

276

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    22679    82    42    

97

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 1С 8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 17.06.2025, версия 1.3

20400 руб.

06.12.2023    20106    72    10    

104

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

12000 руб.

29.04.2020    41651    126    152    

86

Инструменты администратора БД Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия Платные (руб)

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

12000 руб.

06.02.2017    34913    148    18    

53

Архивирование (backup) Инструменты администратора БД 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!

5000 руб.

06.11.2012    77745    633    45    

92
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. пользователь 18.04.13 20:20
Сообщение было скрыто модератором.
...
4. fixin 4323 18.04.13 23:49 Сейчас в теме
(1) прости, а где эти ВО должны лежать? Или ты про типовые?
2. MaxS 3084 18.04.13 21:51 Сейчас в теме
Конфигурации на основе БСП позволяют использовать внешние обработки, которым можно задать расписание выполнения.
3. fixin 4323 18.04.13 23:49 Сейчас в теме
(2) я выделил минимальный контур для тех, кто живет не в БСП, ;-)
и у меня можно юзать не ВО, а просто код на 1с.
5. DrAku1a 1785 15.11.13 04:54 Сейчас в теме
Жесть!
Конфа для 8.1 с кучей лишних справочников и напрочь отсутствующим регламентным заданием и модулем с процедурой его выполнения...
ПараметрыРегламентныхЗаданий.ВыполнитьОбработкуСПараметрами(Ключ);

Вот где реализация этого?
6. fixin 4323 15.11.13 11:00 Сейчас в теме
(5)вы не нашли этого в конфе, в общих модулях?
На всякий случай прилагаю файл тут.

А насчет конфы - это же конфигурация-носитель. Поищите на инфостарте описание, что это такое.
Прикрепленные файлы:
Общий модуль Параметры Регламентных Заданий.txt
7. DrAku1a 1785 15.11.13 13:35 Сейчас в теме
Да. Наверное при преобразовании на 8.2 этот модуль как-то "потерялся"... Собственно, 1С-ка ругалась, что несохраненные изменения в конфигурации будут потеряны.
8. Jonovich 25 15.01.14 14:12 Сейчас в теме

Зачем в параметрах метода использовать ключ регламентного задания?? Подумайте что будет если код справочника будет не уникальным!! Правильно будет передавать ссылку в метод.

Для этого есть свойство задания: - Регламентное задание.Параметры




РегламентноеЗадание (ScheduledJob)
Параметры (Parameters)
Использование:

Чтение и запись.
Описание:

Тип: Массив.
Массив параметров регламентного задания. Количество и состав параметров должны соответствовать параметрам метода регламентного задания.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

Если последние параметры метода имеют значения по-умолчанию, то их можно не задавать в массиве.
Возможность чтения и записи доступны только для администратора.

9. fixin 4323 15.01.14 14:34 Сейчас в теме
(8) возможно, возможно. Писалось в спешке. Таки вменяемые админы одинаковые коды не ставят, но для идеального случая согласен.
10. Jonovich 25 15.01.14 14:50 Сейчас в теме
Хороший пример есть в конфигурации Документооборт КОРП - механизм рассылки отчетов
Сейчас пишу как раз подобное для обычного интерфейса УПП. Как закончу, думаю опубликую.
11. BOBrent 04.03.15 21:54 Сейчас в теме
Весьма познавательно для начинающих - спасибо (всё равно)
Для отправки сообщения требуется регистрация/авторизация