Как запустить внутреннюю обработку 1С 10.3 через командную строку?

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Торговля и дистрибуция
← На главную

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

Почему нельзя запустить внутреннюю обработку напрямую?

Платформа 1С 8.3 не предоставляет ключа командной строки для прямого вызова объектов метаданных, находящихся внутри конфигурации. Параметр /Execute предназначен исключительно для внешних файлов формата .epf. Поэтому, чтобы выполнить внутреннюю процедуру, нам потребуется создать промежуточный инструмент — внешнюю обработку-обертку.

Шаг 1: Создание внешней обработки-обертки

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

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

Рассмотрим пример кода для модуля формы:


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

Шаг 2: Настройка командной строки

Теперь, когда у нас есть файл Site.epf, мы можем обращаться к нему из командной строки или планировщика задач Windows. Важно правильно передать параметры, чтобы 1С понимала, что сеанс запущен для автоматической операции.

Пример команды для запуска:


"C:\Program Files (x86)\1cv8\8.3.17.1851\bin\1cv8.exe" ENTERPRISE /F"D:\bases\ut1" /N"Obmen" /P"1234" /Execute"D:\bases\ut1\ExtForms\Site\Site.epf" /C"CommandLine"

Разберем ключи подробнее:

Шаг 3: Особенности работы с планировщиком задач

При использовании планировщика Windows часто возникают проблемы с запуском из .bat файлов. Если вы сталкиваетесь с ошибками поиска процесса или отсутствием реакции системы, попробуйте прописать путь к исполняемому файлу напрямую в настройках задачи планировщика:

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

Рекомендация по современному подходу

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

Используйте метод «обработки-обертки» только в тех случаях, когда архитектура базы (например, 1С 10.3) не позволяет легко внедрить регламентные задания или требует запуска строго по внешнему событию из ОС.

← На главную