К статье
Практический материал

Разработка и Конфигурация · 11 мин

Что такое обработка в 1С и как с ней работать

Что такое обработка в 1С: виды обработок, чем отличаются от отчётов, как запустить внешнюю обработку, типовые сценарии использования и меры безопасности.

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

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

Обработки применяют бухгалтеры, администраторы и разработчики для задач, которые неудобно или невозможно выполнить вручную: групповое изменение реквизитов у сотен элементов справочника, загрузка прайса из Excel, поиск и удаление дублей контрагентов, перенос данных между базами. Понимание того, что такое обработка и как она устроена, помогает безопасно использовать готовые решения и не повредить данные.

Что такое обработка в 1С простыми словами

Обработка — это программный модуль с формой и алгоритмом на встроенном языке 1С. Пользователь открывает форму, задаёт параметры (период, организацию, список документов) и нажимает кнопку выполнения. Дальше алгоритм обращается к базе и выполняет заложенные действия: создаёт записи, корректирует реквизиты, формирует файлы.

Технически обработка состоит из формы (интерфейс для пользователя), модуля объекта (код, который выполняется) и, при необходимости, макетов — шаблонов печатных форм или схем обмена. Внешняя обработка хранится в одном файле .epf, который легко переносить между базами и компьютерами.

Виды обработок и чем они отличаются от отчётов

Встроенные обработки входят в состав конфигурации и доступны через штатное меню. Например, в типовых решениях есть обработки «Групповое изменение реквизитов», «Загрузка данных из файла», «Поиск и удаление дублей». Они обновляются вместе с конфигурацией и гарантированно совместимы с ней.

Внешние обработки — самостоятельные файлы, которые открываются через меню «Файл — Открыть» или подключаются через механизм «Дополнительные отчеты и обработки». Их главные плюсы: не нужно изменять конфигурацию и снимать её с поддержки, можно использовать в разных базах. Минус — внешняя обработка может не учитывать особенности конкретной конфигурации.

Ключевое различие между обработкой и отчётом — назначение. Отчёт предназначен для чтения и представления данных, обработка — для действий с ними. На практике граница размыта: многие обработки показывают результаты в виде таблиц, а некоторые отчёты содержат кнопки сервисных действий. Формально же платформа разделяет эти объекты по составу метаданных.

Встроенная или внешняя обработка

Встроенная в конфигурацию

Подходит для постоянно используемых механизмов; обновляется с конфигурацией, но требует доработки конфигурации и может затрагивать поддержку.

Внешняя (.epf)

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

Подключённая через «Дополнительные отчеты и обработки»

Подходит, когда внешней обработкой пользуются регулярно несколько сотрудников; даёт управление доступом и размещение в разделах интерфейса.

Типовые задачи, которые решают обработки

Самая частая категория — групповые операции со справочниками и документами. Обработка позволяет одной операцией поменять ставку НДС у тысячи номенклатурных позиций, перенумеровать документы, установить или снять пометку удаления у выбранных объектов. Вручную такие операции заняли бы часы.

Вторая большая группа — обмен данными. Обработки загружают и выгружают прайсы, каталоги товаров, выписки, данные для переноса между базами разных конфигураций. Классический пример — «Универсальный обмен данными в формате XML», который входит в поставку библиотеки стандартных подсистем.

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

Много однотипных измененийНужно изменить десятки или тысячи объектов

Подойдёт обработка группового изменения реквизитов

Данные во внешнем файлеПрайс или справочник в Excel, CSV, XML

Нужна обработка загрузки данных из файла

Дубли в справочникахПовторяющиеся контрагенты или товары

Используйте обработку поиска и удаления дублей

Перенос между базамиДанные нужно переместить в другую конфигурацию

Подойдёт обработка обмена данными через XML

Как запустить внешнюю обработку

Простейший способ — открыть файл через меню «Файл — Открыть» и выбрать файл .epf. Обработка запустится в текущем сеансе. Этот способ подходит для разовых операций, но требует права открытия внешних файлов, которое в некоторых базах ограничено настройками профиля безопасности.

Для регулярного использования внешнюю обработку лучше зарегистрировать в справочнике «Дополнительные отчеты и обработки» (раздел «Администрирование» в типовых конфигурациях). При регистрации система определит тип обработки, предложит указать размещение в разделах и назначить права доступа. После этого обработка появится в штатном интерфейсе у выбранных пользователей.

В режиме безопасного исполнения платформа может блокировать открытие внешних файлов. Это штатная защита от вредоносного кода. Не отключайте защитные механизмы ради запуска непроверенного файла — лучше проверьте источник обработки и её код.

Как безопасно запустить внешнюю обработку
  1. 1
    Сделайте резервную копию базы или убедитесь, что свежая копия существует
  2. 2
    Проверьте источник файла .epf: доверенный разработчик, отсутствие подозрительного происхождения
  3. 3
    Откройте обработку через «Файл — Открыть» или зарегистрируйте в «Дополнительных отчетах и обработках»
  4. 4
    Сначала выполните операцию на одном тестовом объекте или в копии базы
  5. 5
    Проверьте результат: откройте изменённые документы и справочники, сверьте данные
  6. 6
    Только после проверки запускайте обработку для всего объёма данных

Как создать собственную обработку

Создание обработки начинается в конфигураторе: через меню «Файл — Новый» выбирается «Внешняя обработка». Платформа создаст заготовку, к которой добавляют форму, реквизиты (параметры, которые задаёт пользователь) и код в модуле формы или объекта. Минимальная обработка может состоять из одной кнопки и процедуры с алгоритмом.

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

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

bsl
&НаКлиенте
Процедура ВыполнитьОбработку(Команда)
	ВыполнитьОбработкуНаСервере();
	ПоказатьПредупреждение(, "Обработка завершена");
КонецПроцедуры

&НаСервере
Процедура ВыполнитьОбработкуНаСервере()
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ Документ.Ссылка ИЗ Документ.РеализацияТоваровУслуг КАК Документ ГДЕ Документ.Дата МЕЖДУ &Начало И &Конец";
	Запрос.УстановитьПараметр("Начало", НачалоПериода);
	Запрос.УстановитьПараметр("Конец", КонецПериода);
	Выборка = Запрос.Выполнить().Выбрать();
	Пока Выборка.Следующий() Цикл
		ДокОбъект = Выборка.Ссылка.ПолучитьОбъект();
		ДокОбъект.Комментарий = "Обработано";
		ДокОбъект.Записать();
	КонецЦикла;
КонецПроцедуры

Риски и меры безопасности при работе с обработками

Главный риск обработки — необратимое изменение данных. Ошибочный алгоритм или неверно заданные параметры могут испортить сотни документов за секунды. Поэтому правило номер один: перед запуском любой обработки, изменяющей данные, убедитесь в наличии актуальной резервной копии базы.

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

Третий риск — блокировки. Массовая запись объектов в многопользовательской базе может заблокировать таблицы и помешать работе коллег. Большие операции выполняйте в нерабочее время или порциями с паузами.

Типичные ошибки
01
Запуск обработки без резервной копии — при ошибке данные восстановить не из чего
02
Запуск сразу на всех данных без проверки на одном объекте — массовая порча документов
03
Использование обработки от другой конфигурации — реквизиты не совпадают, данные записываются некорректно
04
Работа в многопользовательском режиме в разгар дня — блокировки и жалобы пользователей
05
Отключение защиты от опасных действий ради запуска непроверенного файла — риск утечки или порчи данных

Проверка результата и FAQ

После выполнения обработки результат нужно проверить, а не принимать на веру. Минимальный контроль: открыть несколько изменённых объектов и убедиться, что реквизиты заполнены как задумано; сравнить количество обработанных объектов с ожидаемым; проверить, что связанные данные (проводки, движения) не сломались.

Контрольные точки

Как проверить результат

Количество обработанных объектов
Норма

Совпадает с числом отобранных по условию

Тревожный признак

Часть объектов пропущена без сообщений об ошибках

Значения изменённых реквизитов
Норма

У случайных объектов реквизиты заполнены корректно

Тревожный признак

Пустые или неверные значения, задвоенные данные

Проведение документов
Норма

Документы проводятся, движения формируются

Тревожный признак

Ошибки проведения, отсутствующие проводки

Работа других пользователей
Норма

База доступна, жалоб нет

Тревожный признак

Блокировки, ошибки у пользователей

Итог

Что важно запомнить

Обработка в 1С — инструмент действий над данными: встроенный в конфигурацию или внешний файл .epf. Перед запуском делайте резервную копию, проверяйте источник файла, сначала тестируйте на одном объекте, а результат сверяйте по контрольным точкам.

Чем обработка отличается от отчёта в 1С?

Отчёт предназначен для чтения и отображения данных, обработка — для выполнения действий: изменения, загрузки, выгрузки. Технически это разные объекты метаданных, хотя внешне их формы могут выглядеть похоже.

Можно ли запустить внешнюю обработку, не меняя конфигурацию?

Да. Файл .epf открывается через «Файл — Открыть» или регистрируется в справочнике «Дополнительные отчеты и обработки». Конфигурацию изменять не требуется, но нужны соответствующие права.

Опасно ли открывать обработки, скачанные из интернета?

Да, это исполняемый код с доступом ко всем данным базы. Запускайте только файлы из доверенных источников, а непроверенные — сначала в копии базы или после просмотра кода специалистом.

Подойдёт ли обработка от одной конфигурации 1С к другой?

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

Как отменить действия обработки, если результат неверный?

Штатной кнопки «отменить» у обработок нет. Восстановление возможно из резервной копии базы или обратной обработкой, если она предусмотрена. Поэтому резервная копия перед запуском — обязательное условие.

Что нужно, чтобы написать свою обработку?

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