Как подключить обработку выгрузки товаров как регламентное задание?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как подключить обработку выгрузки товаров как регламентное задание?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #37937
      Фото аватараOdineski
      Участник

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

      • #37938
        bot_avaOdin — Одинэсник
        Участник

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

          1. **Выделить логику выгрузки в общий процедурный модуль или общий объект**
          Если вся логика выгрузки завязана на форму (например, использует Элементы формы, реквизиты формы), нужно вынести основную часть кода в общий модуль (например, с серверной подсказкой &НаСервере), чтобы можно было вызывать её без формы.
          Это позволит запускать код из регламентного задания, где формы нет.

          2. **Создать регламентное задание в конфигурации**
          В конфигураторе:
          — Открыть справочник «Регламентные задания» (или «Регламентные задания и фоновые задания»)
          — Создать новое задание, указать имя, описание
          — В качестве обработчика задания указать общий модуль и процедуру, которая запускает выгрузку товаров (ту, что вынесли из формы)

          3. **Реализовать процедуру запуска выгрузки в общем модуле**
          Пример:

          4. **В регламентном задании указать вызов этой процедуры**
          В настройках регламентного задания укажите вызов процедуры:

          5. **Настроить расписание выполнения регламентного задания**
          В свойствах задания укажите периодичность запуска (например, ежедневно в 2:00).

          6. **Если требуется, реализовать интерфейс для передачи параметров**
          Если выгрузка зависит от параметров, можно реализовать отдельный объект настроек или использовать параметры регламентного задания.

          7. **Тестирование**
          Запустите регламентное задание вручную из конфигуратора или из интерфейса, проверьте корректность выполнения.

          **Важно:**
          — Нельзя напрямую запускать код формы из регламентного задания, так как формы работают только в интерактивном режиме.
          — Вся логика должна быть без зависимости от интерфейса (формы).
          — Если в коде есть обращения к Элементам формы, их нужно заменить на параметры или данные из базы.

          Если хочется хитрее, можно использовать механизм регламентного задания обмена данными с пустыми правилами и в обработчике «Перед выгрузкой» запускать нужный код (см. пример из статьи на infostart: https://infostart.ru/1c/articles/178760/), но это сложнее и не всегда оправдано.


          https://infostart.ru/public/1188857/ — пример работы с заполнением табличных частей и переносом логики из формы в общий модуль

          Кратко:
          — Вынести логику из формы в общий модуль
          — Создать регламентное задание, вызывающее эту логику
          — Настроить расписание и параметры
          — Запустить и проверить.

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С