Разработка и Конфигурация · 7 мин
Каким набором символов обозначается комментарий в 1С
Разбираем, какими символами обозначаются комментарии во встроенном языке 1С: двойной слеш, многострочные комментарии, горячие клавиши и типичные ошибки разработчиков.
Комментарии во встроенном языке 1С (платформа 1С:Предприятие) обозначаются двумя символами косой черты — //. Всё, что написано после двойного слеша до конца строки, интерпретатор игнорирует при выполнении кода. Это единственный способ комментирования в языке 1С: символьных пар для многострочных комментариев вроде / /, привычных по C++ или Java, платформа не поддерживает.
Понимание того, как правильно ставить и снимать комментарии, важно не только для читаемости кода, но и для отладки: временное отключение фрагментов кода — стандартный приём при поиске ошибок в конфигураторе. Ниже разберём синтаксис, горячие клавиши, ограничения и типичные ошибки.
Базовый синтаксис комментария в 1С
Комментарий начинается с двух символов косой черты подряд: //. Их можно ставить как в начале строки, так и после исполняемого кода — в этом случае создаётся пояснение к конкретной строке.
// Это комментарий на всю строку
СуммаДокумента = Количество * Цена; // пояснение к расчёту
Пробел между слешами и текстом не обязателен: конструкции //текст и // текст работают одинаково. Однако по сложившейся практике и стандартам разработки 1С после слешей принято ставить один пробел — так код выглядит аккуратнее и легче читается при ревью.
Важно понимать: комментарий действует только до конца текущей строки. Если пояснение длинное и не помещается в одну строку, каждую следующую строку нужно начинать с новой пары //.
Есть ли многострочные комментарии в 1С
Разработчики, пришедшие из других языков, часто ищут аналог конструкции / ... /. В языке 1С её нет — ни в версии 7.7, ни в платформе 8.x. Попытка использовать символы из других языков приведёт к синтаксической ошибке при проверке модуля.
Для комментирования большого фрагмента кода есть два рабочих способа. Первый — выделить нужные строки и закомментировать их горячими клавишами (об этом ниже). Второй — обернуть код в условие, которое никогда не выполняется, например Если Ложь Тогда ... КонецЕсли;. Второй способ считается плохой практикой: такой код остаётся в модуле, усложняет чтение и может случайно «ожить» при правке условия.
Горячие клавиши для комментирования блока кода
Конфигуратор 1С имеет встроенные команды для массового комментирования. Чтобы закомментировать несколько строк, выделите их и нажмите Ctrl + Num / (клавиша деления на цифровом блоке клавиатуры). К каждой строке выделения в начало добавится пара //.
Чтобы снять комментарий с блока, выделите те же строки и нажмите Ctrl + Shift + Num /. Платформа уберёт слеши только у тех строк, где они стоят в начале, — комментарии в середине строк после кода не затрагиваются.
- 1Выделите мышью или клавишами Shift+стрелки нужные строки в модуле
- 2Нажмите Ctrl + Num / — каждая строка получит // в начале
- 3Проверьте модуль через «Конфигурация — Проверка конфигурации» или F7
- 4Для возврата кода выделите строки и нажмите Ctrl + Shift + Num /
На ноутбуках без цифрового блока клавиш комбинация может не сработать. В этом случае используйте меню «Текст — Блок — Добавить комментарий / Удалить комментарий» в конфигураторе либо подключите внешнюю клавиатуру.
Комментарии в разных типах модулей
Символ // работает одинаково во всех модулях встроенного языка: в модулях объектов, форм, общих модулях, модулях сеанса и внешних соединений. Правила не зависят от того, исполняется код на клиенте или на сервере.
Отдельного внимания заслуживают запросы. Внутри текста запроса на языке запросов 1С комментарии тоже пишутся через //, но только между секциями и конструкциями запроса — не внутри логических выражений, где это может нарушить синтаксис. Комментарий в запросе полезен для пояснения соединений таблиц и условий отбора.
Запрос.Текст =
"ВЫБРАТЬ
| Товары.Ссылка
|ИЗ
| Справочник.Товары КАК Товары
|ГДЕ
| НЕ Товары.ПометкаУдаления"; // исключаем помеченные на удаление
Обратите внимание: комментарий после закрывающей кавычки строки запроса относится уже к коду встроенного языка, а не к тексту запроса. Внутри самого строкового литерала слеши станут просто текстом запроса и будут переданы в консоль запросов как часть строки.
Стандарты оформления комментариев
В типовых конфигурациях и стандартах разработки фирмы «1С» комментарии рекомендуется использовать для пояснения неочевидной логики, а не для дублирования того, что и так видно из кода. Комментарий вида // увеличиваем счётчик на 1 рядом с Счетчик = Счетчик + 1 смысла не несёт.
Полезная практика — заголовочный комментарий процедуры или функции: краткое описание назначения, параметров и возвращаемого значения. Такие описания платформа умеет показывать в подсказке при вызове метода, если они оформлены в стандартном формате с секциями «Описание», «Параметры», «Возвращаемое значение».
Как проверить, что комментарий работает
Признак корректного комментария — подсветка: в конфигураторе текст после // окрашивается в зелёный цвет (при стандартной цветовой схеме). Если текст остался чёрным, слеши попали внутрь строкового литерала или набраны с опечаткой.
Финальная проверка — синтаксический контроль модуля клавишей F7 или через меню «Конфигурация — Проверка конфигурации». Если комментарий вставлен корректно, проверка не выдаст ошибок, связанных с закомментированным фрагментом.
Как проверить результат
Текст подсвечен зелёным
Текст чёрный — слеши внутри строки или с опечаткой
Ошибок нет
Синтаксическая ошибка в месте комментария
Закомментированный фрагмент не исполняется
Код выполняется — комментарий не применился
FAQ
Можно ли в 1С закомментировать часть строки в середине выражения?
Нет. Символы // отключают весь текст до конца строки, поэтому «встроить» комментарий в середину выражения нельзя. Пояснение ставят либо в конце строки, либо отдельной строкой выше.
Почему Ctrl + Num / не работает на ноутбуке?
На многих ноутбуках нет отдельного цифрового блока, а клавиша деления основной клавиатуры не распознаётся как Num /. Используйте команды меню «Текст — Блок» в конфигураторе или внешнюю клавиатуру с цифровым блоком.
Работают ли комментарии в макетах и табличных документах?
Нет. Символы // имеют смысл только в модулях встроенного языка. В макетах, табличных документах и текстовых документах слеши — обычные символы текста.
Можно ли комментировать на английском языке?
Да, язык комментария не ограничен. Однако в командной разработке принято придерживаться одного языка — обычно того, на котором ведётся конфигурация, чтобы код был понятен всем участникам.
Что делать с закомментированным кодом перед обновлением конфигурации?
Рекомендуется удалять неиспользуемые закомментированные фрагменты: они затрудняют сравнение и объединение модулей при обновлении. История изменений при необходимости сохраняется в хранилище конфигурации или системе контроля версий.
Что важно запомнить
Комментарий в 1С — это двойной слеш //, действующий до конца строки. Многострочных комментариев нет: блоки комментируют выделением и клавишами Ctrl + Num /. Корректность проверяют по зелёной подсветке и синтаксическому контролю модуля.