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

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

Как изменить обработку 1С: практическое руководство

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

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

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

Как определить тип обработки и подготовиться к изменению

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

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

Как открыть внешнюю обработку в конфигураторе

Запустите конфигуратор той информационной базы, для которой предназначена обработка — это важно, потому что модуль обработки обращается к объектам конкретной конфигурации (документам, справочникам, регистрам). Если открыть обработку в конфигураторе пустой или другой базы, проверка модуля покажет ошибки на отсутствующие объекты.

Далее выполните: меню Файл → Открыть → укажите файл обработки с расширением .epf. Откроется окно структуры обработки с формами, макетами и модулем объекта. Если файл не открывается, проверьте, что он не повреждён и создан для совместимой версии платформы — обработки, сохранённые в более новой версии платформы, в старой не открываются.

Порядок открытия и правки внешней обработки
  1. 1
    Сделайте копию файла .epf в отдельную папку
  2. 2
    Запустите конфигуратор нужной базы
  3. 3
    Откройте файл через Файл → Открыть
  4. 4
    Внесите правки в форму, модуль или макет
  5. 5
    Сохраните файл (Ctrl+S) под тем же или новым именем
  6. 6
    Проверьте работу на тестовой копии базы

Как изменить форму обработки

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

Чтобы привязать к элементу данные, добавьте реквизит формы: окно реквизитов обычно находится рядом с деревом элементов. Создайте реквизит нужного типа (строка, число, ссылка на справочник) и перетащите его в дерево элементов формы — платформа автоматически создаст связанное поле ввода. Для кнопки создайте команду формы и назначьте ей обработчик действия.

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

Как изменить программный код модуля

Основная логика обработки находится в модулях: модуле объекта (доступен из дерева обработки через «Модуль объекта») и модулях форм (кнопка «Модуль» в редакторе формы). Код пишется на встроенном языке 1С. Для изменения поведения найдите нужную процедуру через поиск (Ctrl+F) или список процедур и функций (Ctrl+Alt+P в ряде версий платформы).

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

После правок выполните синтаксическую проверку модуля: меню Текст → Проверка синтаксиса (или соответствующая кнопка панели инструментов). Ошибки и предупреждения появятся в окне сообщений с указанием строки. Устраните все ошибки до сохранения — обработка с синтаксическими ошибками не запустится в режиме предприятия.

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

Как изменить макет и печатную форму

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

Добавляя новое поле в макет, не забудьте дополнить код: в модуле должна быть строка вида Область.Параметры.ИмяПараметра = Значение;. Если параметр есть в макете, но не заполняется в коде, на печать выйдет пустое значение. Если параметр заполняется в коде, но отсутствует в макете, при выводе области возникнет ошибка.

Как изменить обработку, встроенную в конфигурацию

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

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

Сравнение вариантов доработки

Правка внешнего .epf-файла

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

Доработка через расширение конфигурации

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

Изменение встроенной обработки

Даёт полный доступ к коду, но снимает объект с поддержки и усложняет обновления. Оправдано только для собственных или давно переписанных конфигураций.

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

Сохраните внешнюю обработку через Файл → Сохранить (Ctrl+S). Если обработка подключена в справочнике «Дополнительные отчеты и обработки», обновите её там: откройте элемент справочника и загрузите новую версию файла, иначе пользователи продолжат запускать старый вариант. Для встроенной обработки выполните обновление конфигурации базы данных (F7 в конфигураторе).

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

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

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

Синтаксис модуля
Норма

Проверка завершается без ошибок в окне сообщений

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

Ошибки компиляции, ссылки на несуществующие процедуры

Запуск обработки
Норма

Форма открывается, команды выполняются без исключений

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

Ошибка при открытии формы или в момент выполнения

Результат в данных
Норма

Документы и записи изменены так, как задумано

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

Пропущенные записи, неверные суммы, дубли

Типичные ошибки при изменении обработок

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

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

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

Ответы на частые вопросы

Можно ли изменить обработку без конфигуратора?

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

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

В справочнике «Дополнительные отчеты и обработки» откройте нужный элемент и используйте команду сохранения/выгрузки файла на диск. Полученный .epf-файл откройте в конфигураторе. Если команда выгрузки недоступна, проверьте свои права.

Обработка не открывается в конфигураторе — в чём причина?

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

Изменится ли обработка у всех пользователей после моей правки?

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

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

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

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

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

Итог

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

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