Разработка и Конфигурация · 9 мин
Как перейти к строке в 1С конфигураторе
Как перейти к нужной строке в 1С конфигураторе: Ctrl+G, переход по номеру строки в модуле, настройка отображения номеров строк, ошибки и советы.
При работе с большими модулями в конфигураторе 1С часто нужно быстро попасть в конкретную строку кода — например, туда, где отладчик показал ошибку, или туда, куда указывает сообщение компиляции. Платформа 1С:Предприятие предоставляет для этого несколько способов: горячие клавиши, команды меню и вспомогательные окна навигации.
Основной инструмент — команда «Перейти к строке», вызываемая сочетанием клавиш Ctrl+G. Она работает в редакторе модулей и позволяет мгновенно переместить курсор на строку с заданным номером. Это особенно удобно, когда модуль содержит тысячи строк и прокрутка заняла бы много времени.
Помимо номера строки, разработчику доступны переход по имени процедуры или функции, навигация по закладкам и переход к месту ошибки из окна сообщений. Разберём каждый способ подробно, а также типичные ситуации, когда переход не срабатывает.
Переход к строке по номеру через Ctrl+G
Самый быстрый способ попасть в нужное место модуля — сочетание клавиш Ctrl+G. Откройте модуль (общий модуль, модуль объекта, формы или команды), поставьте фокус в текстовое поле редактора и нажмите Ctrl+G. Появится диалоговое окно с полем ввода номера строки.
Введите номер строки и нажмите Enter или кнопку «Перейти». Курсор переместится в начало указанной строки, а редактор автоматически прокрутит текст так, чтобы строка была видна. Если номер превышает количество строк в модуле, платформа обычно перемещает курсор в конец модуля или сообщает о некорректном значении — поведение зависит от версии платформы.
Та же команда доступна через меню: «Текст» → «Перейти к строке…». Это удобно, если вы работаете мышью или забыли сочетание клавиш. Учтите, что пункт меню активен только когда фокус находится в редакторе кода.
- 1Откройте нужный модуль в конфигураторе
- 2Щёлкните мышью в область текста модуля, чтобы установить фокус
- 3Нажмите Ctrl+G или выберите «Текст» → «Перейти к строке…»
- 4Введите номер строки и нажмите Enter
- 5Проверьте, что курсор оказался в нужном месте и строка подсвечена
Как узнать номер текущей строки
Номер строки, в которой находится курсор, отображается в строке состояния конфигуратора в нижней части окна. Там же показывается номер колонки. Это позволяет сверить фактическое положение курсора с тем, куда вы хотели попасть.
Для визуальной ориентации в коде можно включить отображение номеров строк слева от текста. В конфигураторе откройте «Сервис» → «Параметры», перейдите на вкладку «Модули» и включите соответствующую опцию отображения номеров строк (в зависимости от версии платформы настройка может находиться в разделе редактирования). После этого слева появится колонка с нумерацией, что упрощает навигацию и сопоставление кода с сообщениями об ошибках.
Если номера строк не отображаются, проверьте, что вы редактируете модуль в обычном текстовом режиме, а не просматриваете его в режиме «только чтение» через сравнение конфигураций — там интерфейс отличается.
Переход к процедуре или функции
Часто известен не номер строки, а имя метода. В этом случае эффективнее использовать навигацию по процедурам и функциям. Нажмите Ctrl+O — откроется окно «Процедуры и функции» со списком всех методов текущего модуля. Двойной щелчок по имени перенесёт курсор к объявлению метода.
Альтернатива — выпадающий список методов на панели инструментов над текстом модуля. Раскройте его и выберите нужную процедуру: редактор прокрутится к её началу. В длинных модулях можно начать вводить имя метода в окне Ctrl+O, чтобы отфильтровать список.
Для перехода к определению метода из места его вызова поставьте курсор на имя процедуры в коде и нажмите F12 (или используйте контекстное меню «Перейти к определению»). Это работает и для методов других модулей, если они доступны из текущего контекста.
Сравнение способов навигации
Подходит, когда известен точный номер: из сообщения об ошибке, стека вызовов или заметки. Быстро, но требует знать номер.
Оптимально, когда известно имя процедуры или функции. Не требует знания номеров строк.
Лучший выбор при чтении чужого кода: переход от вызова к реализации, в том числе в другие модули.
Универсальный вариант, если известен фрагмент текста, но не номер строки и не имя метода.
Переход к строке из сообщения об ошибке
Когда при проверке конфигурации или сохранении модуля возникает синтаксическая ошибка, в окне сообщений появляется запись вида «{ОбщийМодуль.Имя.Модуль(123)}: Ошибка…». Число в скобках — это именно номер строки.
Двойной щелчок по сообщению об ошибке автоматически открывает соответствующий модуль и перемещает курсор к указанной строке. Это самый быстрый способ добраться до проблемного места — вручную вводить номер через Ctrl+G не требуется.
Аналогично работает переход из окна трассировки отладчика: при остановке на ошибке платформа показывает стек вызовов, и двойной щелчок по строке стека открывает модуль на нужной строке.
Закладки и дополнительные инструменты навигации
Если вы постоянно возвращаетесь к одним и тем же местам модуля, используйте закладки. Поставьте курсор на нужную строку и нажмите Ctrl+F2 (или «Текст» → «Закладки» → «Установить/снять закладку»). Переход между закладками выполняется клавишей F2, а Shift+F2 возвращает к предыдущей закладке.
Закладки сохраняются в рамках сеанса работы конфигуратора. После перезапуска они могут быть сброшены — не закладывайтесь на них как на постоянное хранилище позиций.
Дополнительно полезны команды «Перейти назад» и «Перейти вперёд» (обычно Ctrl+минус и Ctrl+Shift+минус или кнопки на панели инструментов в зависимости от версии): они возвращают курсор к предыдущим позициям после переходов по F12 или поиска.
Типичные проблемы и их решение
Если Ctrl+G не открывает диалог, проверьте, что фокус находится в редакторе модуля, а не в дереве конфигурации или окне свойств. Щёлкните в текст модуля и повторите. Также убедитесь, что модуль открыт на редактирование, а не в режиме просмотра.
Если после перехода вы оказались не в той строке, которую указывало сообщение об ошибке, возможно, модуль был изменён после проверки: добавленные или удалённые строки сдвигают нумерацию. Повторите синтаксическую проверку и используйте актуальный номер.
В конфигурациях на поддержке с замком часть модулей недоступна для редактирования, но навигация по ним работает в полном объёме — переход к строке, закладки и поиск не ограничиваются режимом «только чтение».
Проверка результата и полезные привычки
После перехода убедитесь по строке состояния, что номер строки совпадает с ожидаемым. Если включено отображение номеров строк, визуально сверьте колонку слева. При переходе по ошибке дополнительно проверьте, что открылся именно тот модуль, который указан в сообщении, — в больших конфигурациях имена модулей могут быть похожи.
Выработайте привычку использовать связку инструментов: Ctrl+O для поиска метода, F12 для перехода к определению, Ctrl+G для точного позиционирования по номеру из сообщения об ошибке. Такая комбинация покрывает практически все сценарии навигации в конфигураторе.
Как проверить результат
Номер строки в строке состояния совпадает с введённым
Курсор в конце модуля или на другой строке — номер был некорректен
Двойной щелчок по сообщению открывает нужный модуль на строке ошибки
Открывается другой модуль или строка не совпадает — модуль менялся после проверки
Слева от текста видна нумерация
Нумерации нет — включите опцию в «Сервис» → «Параметры» → «Модули»
Часто задаваемые вопросы
Как перейти к строке в 1С, если модуль открыт только для чтения?
Навигация работает и в режиме просмотра: Ctrl+G, поиск и переход по закладкам доступны. Ограничение «только чтение» влияет только на возможность изменять текст, но не на перемещение по нему.
Почему Ctrl+G не работает в конфигураторе?
Чаще всего фокус находится не в редакторе модуля — щёлкните в текст кода и повторите. Также проверьте, не перехватывает ли сочетание сторонняя программа (например, менеджер буфера обмена). Команда всегда доступна через меню «Текст» → «Перейти к строке…».
Как быстро найти строку с ошибкой после проверки конфигурации?
Дважды щёлкните по сообщению об ошибке в окне сообщений — конфигуратор сам откроет модуль и установит курсор на нужную строку. Вручную вводить номер через Ctrl+G не требуется.
Можно ли перейти к строке в другом модуле, не открывая его вручную?
Да, если вы переходите по вызову метода: поставьте курсор на имя процедуры и нажмите F12 — платформа откроет нужный модуль на строке определения. Переход по произвольному номеру строки в закрытом модуле невозможен — сначала модуль нужно открыть.
Сохраняются ли закладки после закрытия конфигуратора?
Как правило, закладки привязаны к текущему сеансу работы и после перезапуска конфигуратора сбрасываются. Для постоянных ориентиров используйте комментарии с пометками в коде или структуру областей (#Область).
Чем переход к строке отличается от поиска по тексту?
Ctrl+G перемещает курсор по абсолютному номеру строки, а Ctrl+F ищет фрагмент текста в любом месте модуля. Если известен номер из сообщения об ошибке — используйте переход по номеру; если известен фрагмент кода — поиск.
Что важно запомнить
Переход к строке в конфигураторе 1С выполняется через Ctrl+G или меню «Текст». Для навигации по методам используйте Ctrl+O и F12, а к месту ошибки быстрее всего попасть двойным щелчком по сообщению. Включённая нумерация строк упрощает сверку позиции курсора.