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