Разработка и Конфигурация · 10 мин
Что такое обработки в 1С и как их применять
Обработки в 1С: что это, чем отличаются от отчётов, виды внешних и встроенных обработок, как создать и подключить, типовые сценарии и ошибки.
Обработка в 1С — это прикладной объект, который выполняет определённый алгоритм над данными информационной базы: заполняет документы, исправляет ошибки, загружает файлы, пересчитывает итоги или автоматизирует рутинные операции. В отличие от отчёта, который в первую очередь показывает данные, обработка чаще всего их изменяет. Именно поэтому обработки — основной инструмент разработчиков и администраторов 1С для задач, которые не предусмотрены типовым функционалом конфигурации.
Обработки бывают встроенными (входят в состав конфигурации и обновляются вместе с ней) и внешними (отдельные файлы с расширением .epf, которые можно запускать без изменения конфигурации). Внешние обработки особенно ценны: они позволяют решить задачу «здесь и сейчас», не снимая конфигурацию с поддержки и не дожидаясь обновления.
Типичные сценарии использования обработок — групповое изменение реквизитов, загрузка данных из Excel или других баз, поиск и удаление дублей, пакетное проведение документов, перенос остатков при переходе между конфигурациями. Ниже разберём, как устроены обработки, чем они отличаются от смежных объектов и как безопасно с ними работать.
Чем обработка отличается от отчёта и других объектов
Главное отличие — назначение. Отчёт предназначен для анализа: он формирует табличный документ или диаграмму, но не должен менять данные. Обработка, напротив, ориентирована на действие: записать, пересчитать, удалить, загрузить. Формально в обработке тоже можно вывести результат на экран, а в отчёте через код — изменить данные, но так делать не принято: это усложняет поддержку и вводит пользователей в заблуждение.
По структуре обработка состоит из форм, макетов и модулей с кодом на встроенном языке 1С. У неё нет собственных хранимых данных — она работает с данными других объектов: документов, справочников, регистров. Это делает обработку лёгким инструментом: её можно создать, запустить и удалить, не затрагивая структуру базы.
Виды обработок: встроенные, внешние и дополнительные
Встроенные обработки создаются в конфигураторе в ветке «Обработки» дерева конфигурации. Они доступны пользователям через интерфейс программы, обновляются вместе с конфигурацией и подходят для постоянно используемых механизмов — например, обработка закрытия месяца или помощник загрузки данных.
Внешние обработки хранятся отдельными файлами. Их можно открыть через меню «Файл → Открыть» или подключить к справочнику «Дополнительные отчеты и обработки» (механизм БСП — Библиотеки стандартных подсистем). Подключённые через БСП обработки получают кнопку в интерфейсе, расписание выполнения и разграничение прав доступа.
Отдельно стоит упомянуть обработки обмена данными и универсальные инструменты: «Универсальный обмен данными в формате XML», «Групповая обработка справочников и документов», «Поиск и удаление дублей». Многие из них входят в типовые конфигурации или доступны на диске ИТС.
Сравнение вариантов
Подходит для постоянных механизмов; требует изменения конфигурации и обновляется вместе с ней
Подходит для разовых и сервисных задач; не требует изменения конфигурации, но обновляется вручную
Подходит для регулярных задач пользователей; даёт кнопку в интерфейсе, расписание и права доступа, требует наличия БСП в конфигурации
Типовые задачи, которые решают обработки
Чаще всего обработки применяют для массовых операций, которые вручную заняли бы часы: пересчёт цен по списку товаров, установка ответственных в документах за период, исправление ошибочно указанного склада или договора. Второй большой класс задач — загрузка и выгрузка: импорт номенклатуры из Excel, выгрузка заказов на сайт, перенос данных между базами.
Третья группа — сервисные и диагностические обработки: поиск дублей контрагентов, проверка корректности заполнения реквизитов перед сдачей отчётности, очистка устаревших данных, тестирование обменов. Такие обработки не меняют учётную логику, а помогают поддерживать базу в порядке.
Запустите её через «Файл → Открыть», не меняя конфигурацию
Подключите через «Дополнительные отчеты и обработки» или встройте в конфигурацию
Обязательно сделайте резервную копию и проверьте на копии базы
Используйте отчёт или консоль запросов, а не обработку
Как создать простую внешнюю обработку
Создание обработки начинается в конфигураторе: меню «Файл → Новый → Внешняя обработка». Добавьте основную форму, разместите на ней нужные элементы — поля выбора периода, списка документов, кнопку «Выполнить». В модуле формы опишите алгоритм: запрос к данным, цикл обработки, запись изменений.
Для операций, меняющих данные, полезно предусмотреть режим «Тест» — обработка показывает, что будет изменено, но не записывает. Также стоит обернуть запись в транзакцию с обработкой исключений, чтобы при ошибке база не осталась в частично изменённом состоянии.
- 1Создайте новую внешнюю обработку в конфигураторе и добавьте основную форму
- 2Разместите на форме параметры: период, отбор, переключатель режима «Тест»
- 3Напишите код: запрос к данным, цикл, изменение и запись объектов в транзакции
- 4Протестируйте обработку на копии базы в режиме «Тест»
- 5Проверьте результат на реальной базе после резервного копирования
Как подключить и запустить обработку безопасно
Разовый запуск выполняется через «Файл → Открыть» в режиме 1С:Предприятие. Для постоянного использования подключите обработку в разделе «Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки». Там же назначаются права: какие пользователи видят и могут запускать обработку.
Критическое правило: любую обработку, которая пишет в базу, сначала запускайте на копии. Ошибка в алгоритме может изменить тысячи документов за секунды, и откатить это без резервной копии будет крайне сложно. Обработки из непроверенных источников могут содержать вредоносный код — встроенный язык 1С имеет доступ к файловой системе и данным базы.
Ограничения и частые ошибки
Обработка не имеет собственных данных, поэтому при обновлении конфигурации внешние обработки могут перестать работать, если переименованы объекты или реквизиты, к которым они обращаются. Ещё одно ограничение — права: обработка выполняется с правами запустившего её пользователя, и если у него нет доступа к нужным объектам, алгоритм завершится ошибкой.
Веб-клиент и мобильная платформа накладывают дополнительные ограничения: не все методы доступны, работа с файлами требует расширения. При разработке под тонкий и веб-клиент проверяйте директивы компиляции и директивы «&НаКлиенте» / «&НаСервере».
Как проверить результат работы обработки
После выполнения обработки сверьте результат независимым способом: сформируйте стандартный отчёт по затронутым данным, проверьте несколько документов вручную, сравните количество изменённых объектов с ожидаемым. Если обработка вела журнал изменений, изучите его на предмет пропущенных объектов и ошибок записи.
Как проверить результат
Совпадает с ожидаемым отбором
Обработано больше или меньше, чем планировалось
Реквизиты изменены корректно, проведение не нарушено
Ошибки в значениях, снято проведение, пустые поля
Итоги соответствуют ожиданиям
Расхождения в остатках или оборотах
Нет ошибок записи за время работы обработки
Ошибки отказа в доступе или блокировок
FAQ: частые вопросы об обработках в 1С
Можно ли запустить внешнюю обработку без конфигуратора?
Да. В режиме 1С:Предприятие выберите «Файл → Открыть» и укажите файл .epf. Для удобства пользователей обработку лучше подключить через «Дополнительные отчеты и обработки», тогда она появится кнопкой в интерфейсе.
Чем обработка отличается от расширения конфигурации?
Обработка — самостоятельный алгоритм, который запускают вручную или по расписанию. Расширение изменяет поведение самой конфигурации: добавляет кнопки, подписки на события, роли. Для разового действия достаточно обработки; для постоянного изменения логики работы программы нужно расширение или доработка конфигурации.
Опасно ли открывать обработки, скачанные из интернета?
Да, потенциально опасно. Код внутри .epf имеет доступ к данным базы и файловой системе. Открывайте такие файлы только в копии базы и желательно после просмотра кода в конфигураторе.
Почему обработка работает у администратора, но не у пользователя?
Обработка выполняется с правами запустившего её пользователя. Если у пользователя нет прав на чтение или изменение нужных объектов, алгоритм завершится ошибкой. Настройте роли или используйте привилегированный режим там, где это оправдано.
Что делать, если обработка изменила данные с ошибкой?
Немедленно прекратите её использование и восстановите данные из резервной копии, сделанной до запуска. Если копии не было, оцените масштаб изменений по журналу регистрации и исправляйте данные вручную или обратной обработкой — это сложнее и рискованнее.
Можно ли запускать обработку по расписанию?
Да, если обработка подключена через механизм «Дополнительные отчеты и обработки» БСП — там доступна настройка расписания. Либо логику обработки переносят в регламентное задание конфигурации.
Что важно запомнить
Обработка — инструмент выполнения алгоритмов над данными 1С: массовых изменений, загрузок, сервисных операций. Внешние обработки (.epf) запускаются без изменения конфигурации. Всегда тестируйте обработку на копии базы и делайте резервную копию перед запуском на рабочих данных.