Как создать внешнюю обработку 1С
Внешняя обработка — файл .epf с формой и кодом, который открывается в базе без изменения её конфигурации. Создаётся в конфигураторе любой базы:
- Меню Файл → Новый… → Внешняя обработка. Задайте имя, например
ПроверкаДокументов. - На закладке Формы добавьте форму и в конструкторе формы нажмите Готово.
- В редакторе формы на закладке Команды добавьте команду, например
Посчитать. - В свойстве команды Действие нажмите кнопку с лупой и выберите создание обработчика на клиенте.
- Перетащите команду в элементы формы — появится кнопка.
- Напишите код и сохраните: Файл → Сохранить, файл
ProverkaDokumentov.epf.
Типичный код модуля формы — обработчик кнопки на клиенте и серверная процедура для работы с данными:
&НаСервереБезКонтекста
Функция ЧислоДокументов()
Запрос = Новый Запрос(
"ВЫБРАТЬ
| КОЛИЧЕСТВО(*) КАК Всего
|ИЗ
| Документ.ПриходТовара КАК ПриходТовара");
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
Возврат Выборка.Всего;
КонецФункции
&НаКлиенте
Процедура Посчитать(Команда)
Сообщить("Документов прихода: " + ЧислоДокументов());
КонецПроцедурыЭтот пример — для учебной конфигурации «Склад» из курса: в другой базе документа ПриходТовара нет, и запрос выдаст ошибку. Внешняя обработка видит объекты той конфигурации, в которой её открыли.
Как открыть в базе
В режиме 1С:Предприятие: главное меню → Файл → Открыть… → выберите файл .epf. Откроется форма обработки.
После правки в конфигураторе сохраните файл, закройте форму обработки в 1С:Предприятии и откройте файл заново — иначе работает старая версия.
Для отладки откройте обработку в 1С:Предприятии, запущенном из конфигуратора клавишей F5, и поставьте точки останова (F9) в модуле обработки — выполнение остановится на них.
Если обработка не открывается
- Нет права открывать внешние обработки. В типовых конфигурациях обычным пользователям оно не дано. Тогда обработку подключает администратор в список дополнительных отчётов и обработок (раздел «Администрирование» или похожий), и пользователи запускают её оттуда.
- Предупреждение безопасности. Платформа может спросить, доверяете ли вы файлу: внешняя обработка выполняет код с вашими правами. Разрешайте только для файлов из надёжного источника.
- Обработка сделана в новой версии платформы. Файл
.epf, сохранённый в новой платформе, старая может не открыть — обновите платформу или пересохраните обработку в нужной версии. - Ошибки при работе вроде «Поле объекта не обнаружено» — обработка написана для другой конфигурации (разбор ошибки).
Не запускайте чужие обработки из интернета в рабочей базе. Обработка может удалить или незаметно изменить данные, отправить их наружу. Сначала проверьте её на копии базы — и лучше покажите код программисту.
Обработка, отчёт или расширение
- Внешняя обработка (
.epf) — действие над данными: загрузка, исправление, заполнение. - Внешний отчёт (
.erf) — то же, но для отчётов: Файл → Новый… → Внешний отчет. - Расширение конфигурации — если нужно изменить саму программу: добавить реквизит, поменять форму документа. Внешняя обработка этого не умеет.