Разработка и Конфигурация · 10 мин
Как открыть код в 1С: пошаговая инструкция
Как открыть код в 1С: запуск конфигуратора, просмотр модулей форм и объектов, снятие пароля, открытие внешних обработок и типичные ошибки при работе.
Открыть код в 1С можно несколькими способами — через конфигуратор, прямо из пользовательского режима или из файла внешней обработки. Выбор зависит от того, что именно нужно посмотреть: модуль формы документа, общий модуль конфигурации, код отчёта или защищённый паролем объект.
Базовое условие для работы с кодом — наличие установленной платформы 1С:Предприятие и прав на запуск конфигуратора. В файловых базах обычно достаточно пользователя с полными правами, в клиент-серверных — ещё и доступа к серверу 1С и СУБД.
Перед любыми изменениями в коде рабочей базы сделайте резервную копию: ошибка в модуле может остановить проведение документов, обмены и отчётность для всех пользователей.
Как запустить конфигуратор 1С
Конфигуратор — основной инструмент для просмотра и редактирования кода. Откройте стартовое окно 1С (ярлык «1С:Предприятие»), выделите нужную информационную базу в списке и нажмите кнопку «Конфигуратор» вверху окна. Если база запускается из командной строки, используйте параметр DESIGNER вместо ENTERPRISE.
После ввода логина и пароля откроется окно конфигуратора. Если дерево конфигурации не видно, нажмите «Конфигурация → Открыть конфигурацию» — появится иерархия объектов: справочники, документы, отчёты, обработки, общие модули.
Если кнопка «Конфигуратор» недоступна или при входе появляется ошибка прав, у вашего пользователя нет права «Администрирование» или «Толстый клиент». Попросите администратора выдать роль с полными правами либо работайте через отладку в пользовательском режиме.
Как открыть модуль объекта конфигурации
В дереве конфигурации найдите нужный объект — например, «Документы → РеализацияТоваровУслуг». Щёлкните по нему правой кнопкой мыши: в меню будут пункты «Открыть модуль объекта», «Открыть модуль менеджера», «Открыть модуль набора записей» (для регистров). Выберите нужный — откроется окно редактора кода на встроенном языке 1С.
Модуль формы
Код формы (обработчики кнопок, события открытия, проверки) находится отдельно. Раскройте объект, перейдите в ветку «Формы», откройте нужную форму двойным щелчком и в окне формы нажмите кнопку «Модуль» на закладках внизу либо клавишу F7.
Общие модули
Прикладная логика часто вынесена в ветку «Общие → Общие модули». Там хранятся процедуры и функции, доступные из разных объектов. Если вы встретили в коде вызов вида ОбщегоНазначения.ЗначениеРеквизитаОбъекта(...), искомый код — в общем модуле с именем до точки.
- 1Откройте базу в режиме «Конфигуратор» и авторизуйтесь
- 2Выполните «Конфигурация → Открыть конфигурацию»
- 3Найдите объект в дереве (документ, справочник, отчёт)
- 4Правой кнопкой выберите «Открыть модуль объекта» или откройте форму и перейдите на закладку «Модуль»
- 5Используйте Ctrl+F для поиска нужной процедуры внутри модуля
Как быстро найти нужный код по всей конфигурации
Если вы не знаете, где находится код, используйте глобальный поиск: меню «Правка → Глобальный поиск по текстам» или сочетание Ctrl+Shift+F. Введите фрагмент текста сообщения об ошибке, имя процедуры или строку из интерфейса — конфигуратор покажет все модули, где встречается совпадение.
Для поиска по имени объекта удобно окно «Поиск ссылок в объектах» или горячая клавиша Ctrl+Shift+L в дереве конфигурации. Ещё один приём — поставить точку останова в отладчике и выполнить действие в пользовательском режиме: выполнение остановится именно в том модуле, который обрабатывает операцию.
Как открыть код внешней обработки или отчёта
Внешние обработки и отчёты — это файлы с расширениями .epf и .erf. Чтобы увидеть их код, запустите конфигуратор (можно даже пустую базу), выберите «Файл → Открыть» и укажите файл. Откроется редактор обработки: форма, макеты и модуль доступны так же, как у объектов конфигурации.
Из пользовательского режима внешняя обработка открывается через «Файл → Открыть» в тонком клиенте, но там доступно только выполнение, без просмотра кода. Для анализа кода всегда нужен конфигуратор.
Если файл не открывается с ошибкой формата, возможны две причины: обработка сохранена в новой версии платформы, чем ваша, или это скомпилированный/защищённый модуль без исходного кода. Во втором случае увидеть код штатными средствами нельзя.
Что делать, если модуль закрыт паролем или поставкой
Разработчики могут устанавливать пароль на модуль объекта или формы. При открытии такого модуля конфигуратор запросит пароль — без него текст кода не отобразится. Легальный путь один: запросить пароль у разработчика или поставщика решения.
Часть типовой конфигурации может поставляться «без исходных текстов» — в свойствах конфигурации на закладке поставки видно, какие модули скрыты. Такие модули выполняются, но не отображаются, и это штатное ограничение вендора.
Проверить, защищён ли модуль, можно до попытки открытия: в дереве конфигурации защищённые объекты не дают развернуть текст, а при поставке без исходников пункт «Открыть модуль» отсутствует или неактивен.
Как выбрать действие
Как посмотреть код через отладчик из режима «Предприятие»
Отладка позволяет увидеть исполняемый код, не открывая модули вручную. В конфигураторе включите «Отладка → Начать отладку» — запустится сеанс предприятия. Выполните в нём нужное действие (например, проведите документ), предварительно поставив точку останова F9 в предполагаемом месте кода.
Когда выполнение остановится, вы увидите текущий модуль, значения переменных и стек вызовов. Клавиши F10 и F11 позволяют идти по строкам, заходя внутрь вызываемых процедур — так можно проследить всю цепочку логики.
Если отладка не подключается к серверной базе, проверьте, что на сервере 1С разрешена отладка (параметр -debug у агента сервера), и включён нужный протокол — по HTTP или TCP. Без перезапуска службы с этим параметром отладка на сервере работать не будет.
Как проверить результат
В окне редактора виден текст на встроенном языке с подсветкой синтаксиса
Окно пустое, запрошен пароль или пункт меню неактивен
Выполнение останавливается на точке останова, видны значения переменных
Точка останова не срабатывает, отладчик не подключается
Пользователи работают, документы проводятся без ошибок
После правок появляются ошибки при проведении или обмене
Типичные ошибки при открытии кода
Частая ситуация — пользователь открывает конфигуратор, но не выполняет «Открыть конфигурацию», и видит пустое окно. Дерево объектов появляется только после этой команды, при первом открытии она может занять время на больших конфигурациях.
Вторая ошибка — попытка редактировать конфигурацию базы данных вместо основной конфигурации. Изменения вносятся в основную конфигурацию и применяются только после «Конфигурация → Обновить конфигурацию базы данных» (F7). Пока обновление не выполнено, пользователи работают со старым кодом.
Третья группа проблем — монопольный режим. Обновление конфигурации базы данных требует отсутствия активных сеансов: выгнать пользователей можно через консоль кластера или функцию «Блокировка сеансов» в типовых конфигурациях.
Когда вместо правки кода лучше использовать расширение
Если цель — изменить поведение типовой конфигурации, прямое редактирование модулей не обязательно. Расширения конфигурации («Конфигурация → Расширения конфигурации») позволяют переопределить процедуры, формы и роли, не трогая типовой код. Обновления при этом проходят значительно легче.
Расширение подходит для добавления кнопок на формы, подмены обработчиков, дополнительных проверок. Ограничения: нельзя менять структуру данных произвольно, а заимствованные процедуры с аннотацией «&Вместо» конфликтуют, если типовой код изменится при обновлении.
Правило выбора простое: если задачу можно решить расширением — делайте расширение. Прямую правку конфигурации оставляйте для случаев, когда расширение технически не справляется.
Что важно запомнить
Код открывается в конфигураторе через дерево конфигурации, глобальный поиск или отладчик. Защищённые паролем и поставкой модули открываются только с разрешения разработчика. Перед правками делайте копию базы, а для типовых конфигураций предпочитайте расширения прямому изменению кода.
Частые вопросы
Можно ли открыть код 1С без конфигуратора?
Полноценно — нет. Просмотр и редактирование модулей выполняется только в конфигураторе. Из пользовательского режима доступна лишь отладка (если она разрешена) и команда «Изменить форму», которая позволяет менять состав элементов формы, но не её программный код.
Почему кнопка «Конфигуратор» неактивна в списке баз?
Чаще всего запуск выполняется через веб-клиент или тонкий клиент без установленного толстого клиента. Также проверьте, что у пользователя есть права на работу в конфигураторе и что база не опубликована только как веб-ресурс.
Как открыть код обработки, если нет исходного файла?
Если обработка встроена в конфигурацию — найдите её в ветке «Отчёты» или «Обработки» дерева конфигурации. Если это внешний файл .epf, который утерян, а обработка хранится в справочнике «Дополнительные отчеты и обработки», выгрузите её оттуда в файл и откройте через конфигуратор.
Что делать, если конфигуратор просит пароль при открытии модуля?
Пароль установил разработчик осознанно — обратитесь к нему или к поставщику решения. Средств штатного сброса пароля на модуль в платформе нет. Если разработчик недоступен, логику такого объекта можно изучить только через отладчик, наблюдая выполнение.
Опасно ли просто смотреть код в конфигураторе?
Сам просмотр безопасен и не влияет на работу пользователей. Риск появляется при сохранении изменений и обновлении конфигурации базы данных. Чтобы случайно ничего не изменить, можно открывать модули только для чтения или работать в копии базы.
Как понять, какой модуль выполняется при нажатии кнопки?
Откройте форму в конфигураторе, найдите кнопку в дереве элементов, посмотрите её свойство «ИмяКоманды» и обработчик команды — он укажет на процедуру в модуле формы. Альтернатива — включить отладку и нажать кнопку: выполнение остановится в нужном обработчике.