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

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

📌 1. Создание новой внешней обработки (.epf)

  1. Откройте Конфигуратор.

  2. Выберите пункт меню Файл → Новая внешняя обработка.

  3. Сохраните файл с расширением .epf в нужную директорию.

  4. В открывшемся окне обработки в дереве конфигурации появится узел Обработка1 (или имя, которое вы дали).

📌 2. Добавление команд в обработку

Шаг 1: Добавление формы

  1. В дереве конфигурации обработки раскройте узел Формы.

  2. Создайте новую форму, например ОсновнаяФорма.

Шаг 2: Добавление реквизита формы (необязательно)

  1. В форме нажмите правой кнопкой по узлу РеквизитыДобавить.

  2. Назовите, например, Таблица.

  3. Установите тип — ТаблицаЗначений.

Шаг 3: Добавление команды

  1. Перейдите в Модуль формы.

  2. В правом списке найдите узел Команды формыДобавить команду.

  3. Укажите имя команды, например ВыполнитьРаспределение.

  4. Вы можете задать:

    • Заголовок (отображается на кнопке).

    • Подсказку.

    • Горячую клавишу.

  5. Вставьте код, например:

Процедура ВыполнитьРаспределение(Команда)
Сообщить("Команда выполнена.");
КонецПроцедуры

📌 3. Добавление кнопки на форму

  1. Перейдите в Редактор формы.

  2. Перетащите созданную команду на форму (в область панели команд, или в нужное место формы).

  3. Убедитесь, что у кнопки привязана ваша команда.

📌 4. Настройка отображения формы

  1. Выделите созданную форму.

  2. Нажмите правой кнопкой → Свойства формы.

  3. Установите Имя = ОсновнаяФорма, если не сделали этого раньше.

  4. Установите Основная = Истина (если форма одна и должна открываться по умолчанию).

📌 5. Написание серверной логики (при необходимости)

Если вам нужно, чтобы логика работала на сервере:

  1. Перейдите в Общий модуль обработки (узел Модули).

  2. В модуле напишите процедуру с директивой &НаСервере:

&НаСервере
Процедура РаспределитьСумму()
// Ваша логика
КонецПроцедуры
  1. Из клиентской процедуры вызовите её:
Процедура ВыполнитьРаспределение(Команда)
РаспределитьСумму();
Сообщить("Распределение завершено.");
КонецПроцедуры

📌 6. Проверка и тестирование

  1. Сохраните обработку.

  2. Запустите 1С в режиме Предприятие.

  3. Откройте обработку через Файл → Открыть.

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

📌 7. Работа с параметрами и таблицами (при необходимости)

Если вы хотите в обработке задать ввод параметров или таблицу для редактирования:

  1. Добавьте на форму элемент типа Поле ввода, Флажок, Таблица и т. д.

  2. Привяжите их к реквизитам формы.

  3. В модуле формы обрабатывайте ввод и данные из этих реквизитов.

📌 8. Сохранение и использование внешней обработки

  1. По завершении разработки сохраните файл .epf.

  2. Обработку можно передавать, подключать через:

    • Файл → Открыть (ручной запуск).

    • Панель функций → Внешние обработки.

    • Обработки из справочника "Дополнительные обработки" (если в типовой конфигурации).

📌 9. Примеры

Пример простой команды:

Процедура ВывестиСообщение(Команда)
Сообщить("Привет из внешней обработки!");
КонецПроцедуры

Пример с вводом суммы:

Реквизит СуммаКРаспределению (Число);
Процедура ВыполнитьРаспределение(Команда)
Сообщить("Сумма: " + СуммаКРаспределению);
КонецПроцедуры

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