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

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

Как открыть модуль конфигурации 1С

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

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

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

Что нужно перед открытием модуля

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

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

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

Как открыть дерево конфигурации

После запуска конфигуратора откройте дерево объектов: меню «Конфигурация — Открыть конфигурацию» или сочетание клавиш Ctrl+Shift+C. Слева появится иерархическое дерево, где объекты сгруппированы по типам: общие модули, справочники, документы, отчёты, обработки, регистры и так далее.

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

Как открыть модуль конкретного объекта

У большинства объектов конфигурации есть несколько модулей. Щёлкните правой кнопкой по объекту в дереве (например, по документу «Реализация товаров») — в контекстном меню будут доступны пункты открытия модулей. Какие именно — зависит от типа объекта.

Модуль объекта

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

Модуль формы

Модуль формы хранит код, связанный с поведением формы: обработчики нажатий кнопок, события «ПриОткрытии», «ПриСозданииНаСервере». Чтобы открыть его, разверните объект, найдите ветку «Формы», откройте нужную форму двойным щелчком и перейдите на вкладку «Модуль» в нижней части редактора формы. Альтернатива — правой кнопкой по форме и выбор соответствующего пункта меню.

Модуль менеджера и модуль команды

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

Порядок действий
  1. 1
    Запустите базу в режиме «Конфигуратор» под учётной записью с правами на конфигурирование
  2. 2
    Откройте дерево конфигурации: меню «Конфигурация — Открыть конфигурацию» или Ctrl+Shift+C
  3. 3
    Найдите нужный объект (справочник, документ, отчёт) в соответствующей ветке дерева
  4. 4
    Нажмите правой кнопкой по объекту и выберите нужный пункт: «Открыть модуль объекта», «Открыть модуль менеджера» или откройте форму и перейдите на вкладку «Модуль»
  5. 5
    Внесите изменения, проверьте синтаксис (Ctrl+F7) и обновите конфигурацию базы данных клавишей F7

Как открыть общие модули и модули приложения

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

Модули приложения (модуль управляемого приложения, модуль обычного приложения, модуль сеанса, модуль внешнего соединения) находятся в корне дерева конфигурации. Щёлкните правой кнопкой по самому верхнему элементу (корню конфигурации) — в контекстном меню будут пункты «Открыть модуль управляемого приложения», «Открыть модуль сеанса» и другие.

Как найти нужный модуль, если неизвестно, где код

Когда расположение кода неизвестно, используйте глобальный поиск: меню «Правка — Глобальный поиск» или Ctrl+Shift+F. Введите имя процедуры, фрагмент текста или строку сообщения об ошибке, укажите область поиска — вся конфигурация. Результаты покажут все модули, где встречается искомый текст, и двойной щелчок откроет модуль на нужной строке.

Ещё один способ — поиск по ссылкам. Если известна процедура, выделите её имя в коде и нажмите Ctrl+F12 (переход к определению) или используйте контекстное меню «Найти использование». Это быстрый путь понять, из какого модуля вызывается нужная функция.

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

Типичные ошибки
01
Правка модуля формы вместо модуля объекта: код не срабатывает при программной записи документа без открытия формы
02
Изменение серверного общего модуля без учёта контекста: попытка использовать клиентские объекты приводит к ошибке компиляции
03
Забытое обновление конфигурации базы данных (F7): изменения сохранены, но в режиме «Предприятие» не видны
04
Редактирование типового модуля без переноса кода в расширение: при следующем обновлении конфигурации изменения затираются

Как открыть модуль внешней обработки или отчёта

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

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

Безопасное редактирование через расширения

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

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

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

Как выбрать действие

Нужно посмотреть логику проведения документаОткройте модуль объекта документа через контекстное меню в дереве конфигурации
Нужно изменить поведение кнопки или поля на формеОткройте форму объекта и перейдите на вкладку «Модуль»
Нужно доработать типовую конфигурацию, которая обновляетсяСоздайте расширение конфигурации и заимствуйте процедуру, не меняя типовой модуль
Местонахождение кода неизвестноИспользуйте глобальный поиск Ctrl+Shift+F по имени процедуры или тексту ошибки

Проверка результата после открытия и правки модуля

После внесения изменений выполните синтаксическую проверку: клавиша Ctrl+F7 в окне модуля. Ошибки компиляции будут показаны в окне сообщений с указанием строки. Затем обновите конфигурацию базы данных клавишей F7 — без этого изменения не попадут в рабочую базу.

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

Итог

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

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

Частые вопросы

Почему в конфигураторе нет пункта «Открыть конфигурацию»?

Чаще всего конфигурация уже открыта, и пункт меняется на «Закрыть конфигурацию». Если дерево не видно, проверьте, не скрыта ли панель, и права пользователя: без права на конфигурирование доступ к структуре конфигурации ограничен.

Можно ли открыть модуль из режима «Предприятие»?

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

Что делать, если модуль открывается пустым?

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

Как открыть модуль, если конфигурация на поддержке?

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

Почему изменения в модуле не работают в режиме «Предприятие»?

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