Где в 1С находятся модули и как их открыть
Содержание
Модуль приложения в 1С открывают в Конфигураторе. Откройте конфигурацию, выделите самый верхний узел дерева (он назван по имени вашей конфигурации) и в его контекстном меню выберите Открыть модуль управляемого приложения или Открыть модуль обычного приложения. В режиме «1С:Предприятие» исходный код модулей не редактируют — там он только исполняется.
«Модуль приложения» — это общее название. На современной платформе 8.3 он разделён на два: модуль управляемого приложения (работает для тонкого и веб-клиента) и модуль обычного приложения (для толстого клиента в обычном режиме). Ниже разберём, как добраться до каждого модуля, что делать, если строки нельзя править, и чем отличаются версии платформы.
Если вы искали не модуль всего приложения, а модуль конкретного справочника, документа или формы — это тоже Конфигуратор, но другой узел дерева. Разложим по порядку.
Где в 1С лежат модули и какой из них нужен именно вам
Код в конфигурации 1С хранится не в одном месте, а в десятках модулей разного назначения. Прежде чем открывать, определитесь, какой из них вам нужен — иначе легко потратить время, разглядывая не тот участок. Название «модуль приложения» на практике относят сразу к нескольким модулям уровня всей конфигурации, и именно из-за этого возникает путаница.
Коротко о главных типах:
- 🗂️ Модуль управляемого приложения — выполняется на клиенте при старте сеанса для тонкого и веб-клиента. Здесь обработчики вроде
ПередНачаломРаботыСистемыиПриНачалеРаботыСистемы. - 🗂️ Модуль обычного приложения — то же самое, но для толстого клиента в режиме обычного приложения.
- 🗂️ Модуль сеанса — выполняется на сервере при установке параметров сеанса (
УстановкаПараметровСеанса). - 🗂️ Модуль внешнего соединения — работает при подключении через COM-соединение.
- 🗂️ Общие модули — процедуры и функции, доступные из любой точки конфигурации.
- 🗂️ Модуль объекта и модуль менеджера — код конкретного справочника, документа, регистра.
- 🗂️ Модуль формы — обработчики событий конкретной формы.
Если вы хотите поправить что-то в поведении всей базы при запуске — вам нужен модуль управляемого приложения. Если логику проведения документа — модуль объекта этого документа.
Все эти модули открываются в Конфигураторе. Разница только в том, какой узел дерева вы выделяете.
Как открыть модуль приложения в Конфигураторе 1С
Это основной сценарий. Порядок действий:
- Запустите 1С. В окне запуска выберите нужную базу и нажмите кнопку
Конфигуратор(а не «1С:Предприятие»). - В Конфигураторе откройте дерево конфигурации: меню
Конфигурация → Открыть конфигурацию. Появится окно «Конфигурация» с деревом объектов. - Выделите самый верхний узел дерева. Он назван по имени конфигурации — например, «БухгалтерияПредприятия» или «ЗарплатаиУправлениеПерсоналом».
- Щёлкните по этому узлу правой кнопкой мыши. В контекстном меню будут пункты открытия модулей.
- Выберите нужный:
Открыть модуль управляемого приложения,Открыть модуль обычного приложения,Открыть модуль сеансаилиОткрыть модуль внешнего соединения.
Модуль откроется в отдельном окне редактора текста. Это и есть точка, где лежит код старта приложения.
Правка модуля сохраняется в конфигурацию, а значит меняет поведение всей базы. Вносите изменения только если понимаете, что делаете, и сначала сделайте резервную копию.
Если контекстное меню корневого узла не показывает пункты с модулями — почти всегда причина в том, что выделен не самый верхний узел, а один из разделов внутри (например, «Справочники» или «Документы»). Вернитесь к вершине дерева.
Модули объекта, формы и общие модули: где их найти
Код приложения — лишь часть. Чаще разработчику нужен модуль конкретного объекта или формы. Пути разные.
Модуль объекта и модуль менеджера. Найдите объект в дереве (например, Справочники → Контрагенты), щёлкните по нему правой кнопкой и выберите Открыть модуль объекта или Открыть модуль менеджера. Те же команды есть в окне редактирования объекта: откройте объект двойным щелчком и перейдите по ссылке к нужному модулю.
- Модуль объекта хранит логику экземпляра: обработчики
ПередЗаписью,ОбработкаПроведенияи подобные. Например, чтобы поправить проведение документа «Реализация», откройте модуль объекта этого документа и найдите процедуруОбработкаПроведения. - Модуль менеджера — методы, относящиеся ко всему типу объекта, а не к одному конкретному элементу.
Модуль формы. Откройте форму двойным щелчком (например, форму списка или форму элемента). В нижней части редактора формы есть закладки — переключитесь на закладку Модуль. Там обработчики событий именно этой формы.
Модуль команды. У команд объекта и у общих команд тоже есть свой модуль с процедурой ОбработкаКоманды. Он открывается двойным щелчком по команде в дереве конфигурации.
Общие модули. Они собраны в ветке Общие → Общие модули. Разверните её и откройте нужный модуль двойным щелчком. Здесь лежат универсальные процедуры, вызываемые из разных мест конфигурации.
Не помните точное имя модуля объекта? Воспользуйтесь глобальным поиском по конфигурации (меню Правка → Глобальный поиск) — он находит текст по всем модулям сразу.
Что делать после того, как модуль открыт
Открыть — половина дела. Если вы правите код, пригодятся ещё три инструмента Конфигуратора.
- 🔍 Синтакс-помощник (
Справка → Синтакс-помощник) — описание всех методов и свойств встроенного языка. Поставьте курсор на незнакомый метод и загляните в описание, прежде чем менять строку. - ✅ Синтаксический контроль — проверка модуля на ошибки. Запустите её из командной панели редактора модуля: платформа подчеркнёт проблемные строки и выведет список в окно сообщений. Делайте проверку перед сохранением.
- 💾 Обновление конфигурации
базы данных (
Конфигурация → Обновить конфигурацию базы данных, клавишаF7) — применяет внесённые изменения к рабочей базе.
Если вы меняли только код модулей и не трогали структуру данных, обновление часто проходит динамически — без монопольного доступа, пользователи продолжают работать. Монополия нужна лишь при изменении структуры объектов, загрузке .dt, тестировании и исправлении базы.
Прежде чем менять что-то в модулях рабочей базы, соблюдайте несколько правил безопасности:
- 🛡️ Сделайте выгрузку базы в файл
.dtили резервную копию средствами СУБД. Откат к копии — самый надёжный способ вернуть всё как было. - 🛡️ Отлаживайте правки сначала на копии базы, а не на рабочей. Ошибка в модуле приложения способна помешать запуску базы у всех пользователей.
- 🛡️ Не правьте модули поставщика без необходимости: чем больше отличий от типовой конфигурации, тем дольше и сложнее каждое следующее обновление.
Можно ли открыть модуль в режиме «1С:Предприятие»
Короткий ответ — исходный код конфигурации в режиме «1С:Предприятие» не редактируется. Этот режим исполняет код, но не даёт открыть его на правку. Для работы с текстом модулей нужен Конфигуратор или среда разработки EDT.
Есть нюансы, из-за которых и возникает путаница:
- Отладка. Если запустить отладку из Конфигуратора и подключиться к сеансу «1С:Предприятия», вы будете видеть исполняемый код в окне отладчика, ставить точки останова и смотреть значения переменных. Но и здесь редактор — это Конфигуратор, а не само приложение; править текст прямо во время исполнения нельзя.
- Внешние обработки и отчёты. Файл внешней обработки (
.epf) или отчёта (.erf) запускают в «1С:Предприятии» черезФайл → Открыть. Но чтобы увидеть и поправить её модуль, этот же файл открывают уже в Конфигураторе — снова черезФайл → Открыть, после чего появляется доступ к модулю объекта обработки и модулям её форм.
Вывод: если вам нужно именно открыть и изменить код модуля, закройте мысль про «1С:Предприятие» и переходите в Конфигуратор.
Как открыть модуль, если он заблокирован на поддержке
Частая ситуация: модуль открылся, но строки серые и правятся только для чтения, рядом — значок замка. Это не ошибка. Конфигурация стоит на поддержке поставщика, и редактирование по умолчанию закрыто.
Чтобы снять замок:
- Откройте
Конфигурация → Поддержка → Настройка поддержки. - В окне настройки поддержки нажмите
Включить возможность изменения. - Подтвердите действие в появившемся запросе. При необходимости настройте правила поддержки для объектов.
После этого замки сменятся, и модули станут доступны для правки.
Включение возможности изменения снимает конфигурацию с полной поддержки. Автоматическое обновление типовой конфигурации после этого усложняется: обновления придётся принимать через сравнение-объединение. Делайте это осознанно и только если доработка действительно нужна.
Если замок стоит на отдельном объекте (а не на всей конфигурации) — проверьте правила поддержки именно этого объекта в том же окне настройки поддержки. У поставщика для некоторых объектов правка может быть запрещена по умолчанию.
Отличия по версиям платформы: 8.1, 8.2, 8.3 и EDT
Название и состав «модуля приложения» зависят от версии платформы.
| Версия | Как называется и где |
|---|---|
| 8.1 и ранее | Единый «Модуль приложения» в контекстном меню корневого узла |
| 8.2 | Разделён на модуль управляемого и модуль обычного приложения (появились управляемые формы) |
| 8.3 | То же, что в 8.2; интерфейс Конфигуратора прежний |
| EDT | Модули — отдельные файлы в дереве проекта, открываются двойным щелчком |
Пояснения к таблице:
- В платформе 8.1 существовал один модуль приложения. Поэтому старые инструкции и видео показывают именно его — не удивляйтесь, что у вас в 8.3 вместо него два пункта.
- В 8.2 с приходом управляемых форм модуль приложения разделили: клиентский код тонкого и веб-клиента ушёл в модуль управляемого приложения, код толстого клиента остался в модуле обычного приложения.
- В 8.3 подход тот же. Работайте с интерфейсом «Такси» в самом приложении; окно Конфигуратора при этом почти не менялось от версии к версии.
- В EDT (1C:Enterprise Development Tools) модель другая: конфигурация разложена на файлы, модули имеют расширение
.bslи открываются из навигатора проекта двойным щелчком, а не через контекстное меню дерева. Привычные для Конфигуратора пункты меню там отсутствуют, зато работает полнотекстовый поиск по файлам.
Если тексты инструкции не совпадают с тем, что видите на экране, первым делом посмотрите номер версии платформы: Справка → О программе. Разница между 8.1 и 8.3 здесь принципиальна.
Типичные проблемы при открытии модулей
Собрали частые симптомы и быстрые причины. Это не повтор шагов выше — только то, что сбивает с толку на практике.
Частые вопросы
Чем модуль управляемого приложения отличается от модуля обычного приложения?
Нужен ли монопольный доступ, чтобы открыть модуль?
.dt, тестирования и исправления.Можно ли открыть модуль без Конфигуратора?
Почему строки модуля нельзя изменить?
Где в модуле приложения код, который срабатывает при запуске базы?
ПередНачаломРаботыСистемы и ПриНачалеРаботыСистемы.