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

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

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

Разбираем различия обработки и отчета в 1С: назначение, изменение данных, механизмы формирования, типовые сценарии использования и критерии выбора инструмента.

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

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

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

Назначение объектов: главное различие

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

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

Есть и промежуточные случаи. Например, «универсальный отчет» или консоль отчетов технически могут быть реализованы как обработка, но по сути выполняют отчетную функцию. Обратная ситуация тоже встречается: отчет с кнопкой, которая по результатам анализа что-то записывает в базу. Такие гибриды работают, но усложняют сопровождение: по названию объекта уже нельзя понять, безопасен ли его запуск.

Что происходит с данными при запуске

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

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

Из этого различия следуют и требования к правам. Для запуска отчета пользователю достаточно права «Просмотр» на соответствующие данные. Для обработки, которая что-то записывает, нужны права на изменение конкретных объектов. Если сотруднику дали обработку для «мелкой правки», а у него широкие права — ошибка в обработке может затронуть гораздо больше данных, чем планировалось.

Механизмы формирования: СКД против произвольного кода

Отчеты в 1С тесно связаны с системой компоновки данных (СКД). Разработчик описывает запрос и настройки, а пользователь получает готовый интерфейс: отборы, группировки, период, варианты отчета — всё это работает «из коробки» без программирования. Пользователь сам может перестроить отчет: поменять группировку, добавить отбор, сохранить свой вариант.

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

Сравнение механизмов

Отчет на СКД

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

Обработка с произвольным кодом

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

Отчет с программным формированием

Компромисс: код формирует табличный документ вручную. Применяется для нестандартных макетов, но теряются преимущества СКД.

Практическое следствие: если пользователь просит «отчет, где можно менять колонки и отборы самому» — это однозначно отчет на СКД. Если просит «кнопку, которая загрузит файл и создаст документы» — это обработка, и никакая настройка СКД здесь не поможет.

Типовые сценарии: когда нужен отчет, а когда обработка

Отчет нужен, когда задача сводится к вопросу «что происходит в данных»: сколько продали, какие долги, какие документы не проведены, какая номенклатура залежалась на складе. Результат — таблица или диаграмма, которую пользователь смотрит, печатает или сохраняет в Excel.

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

Маршрут решения

Как выбрать инструмент

Нужно посмотреть или распечатать данные за периодИспользуйте отчет — типовой или доработанный на СКД
Нужно загрузить данные из Excel, CSV, DBF в базуНужна обработка загрузки с проверкой данных перед записью
Нужно массово изменить реквизиты или перепровести документыОбработка с обязательным тестом на копии базы
Нужно и проанализировать, и по кнопке исправить найденноеРазделите на два объекта: отчет для анализа и обработка для исправления
Нужна регулярная аналитика с настраиваемыми отборамиОтчет на СКД с сохраненными вариантами для пользователей

Пограничный случай: печатные формы

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

Внешние отчеты и обработки: подключение и риски

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

Различие снова в рисках. Внешний отчет, даже «кривой», максимум покажет неверные цифры или завершится ошибкой. Внешняя обработка способна необратимо испортить учетные данные. Поэтому политика безопасности должна быть разной: отчеты можно подключать относительно свободно, обработки — только после проверки на тестовой базе.

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

Безопасный режим

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

Как проверить, что инструмент работает правильно

Для отчета проверка сводится к сверке цифр с источником: сравните итоги отчета с данными карточки счета, оборотами по регистру или контрольным документом. Если отчет на СКД показывает не те данные, чаще всего проблема в отборах, периоде или в правах на данные, а не в самом отчете.

Для обработки проверка двухэтапная: сначала на копии базы смотрят, что именно изменилось (какие документы созданы, какие реквизиты перезаписаны), затем на рабочей базе — контрольную сверку после запуска. Хорошая обработка сама выводит протокол: сколько объектов обработано, сколько изменено, какие пропущены с указанием причины.

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

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

Итоги отчета против независимого источника
Норма

Суммы совпадают с карточкой счета или оборотами регистра

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

Расхождения — проверяйте отборы, период и права на данные

Протокол выполнения обработки
Норма

Указано число обработанных и измененных объектов, ошибки расписаны

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

Протокола нет или число измененных объектов не сходится с ожиданием

Состояние базы после обработки
Норма

Структура данных целая, последовательности и итоги актуальны

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

Появились битые ссылки, непроведенные регламентные документы

Повторный запуск обработки
Норма

Повторный запуск не создает дубли (реализован контроль)

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

Каждый запуск плодит новые элементы или документы

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

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

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

Для пользователя, который просто ищет нужный инструмент в меню типовой конфигурации, ориентир такой: отчеты лежат в разделах учета и в общем списке «Отчеты», обработки — в разделах «Сервис», «Администрирование» или «Покупки/Продажи» под названиями вроде «Загрузка данных», «Групповое изменение», «Обмен с...».

Итог

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

Отчет читает данные и показывает результат, обработка выполняет действия и может изменять базу. Отчет строится на СКД и дает гибкие настройки, обработка содержит произвольный код. Запуск отчета безопасен, запуск обработки требует резервной копии и теста на копии базы.

Часто задаваемые вопросы

Может ли отчет изменять данные в базе?

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

Чем файлы .epf и .erf отличаются друг от друга?

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

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

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

Как понять, что делает незнакомая обработка, перед запуском?

Откройте её в конфигураторе или попросите разработчика показать код модуля: ищите вызовы методов записи (Записать(), УстановитьПометкуУдаления, ПровестиДокумент) и обращения к файловой системе. Если навыков чтения кода нет, запустите обработку только на копии базы и сравните данные до и после. Никогда не проверяйте такие вещи на рабочей базе.

Что выбрать для регулярной выгрузки данных в Excel для руководства?

Если нужно просто показать данные в удобном виде — сделайте отчет на СКД: пользователь сам выберет период, сохранит вариант и выгрузит табличный документ в Excel кнопкой сохранения. Обработка понадобится только если требуется особый формат файла, автоматическая отправка по расписанию или выгрузка в несколько файлов сразу.

Можно ли запускать обработку по расписанию автоматически?

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