Разработка и Конфигурация · 9 мин
Как написать комментарий в 1С: в коде и в документах
Как поставить комментарий в 1С: символы // в коде, многострочные комментарии, поле «Комментарий» в документах и справочниках, горячие клавиши и типичные ошибки.
Слово «комментарий» в 1С имеет два разных смысла. Первый — комментарий во встроенном языке программирования: пояснение в тексте модуля, которое платформа игнорирует при выполнении. Второй — поле «Комментарий» в документах, справочниках и других объектах, куда пользователь вписывает служебную заметку. Оба сценария используются постоянно, и важно не путать их между собой.
Комментарий в коде начинается с двух косых черт // — всё, что стоит после них до конца строки, не выполняется. Поле «Комментарий» в документах — это обычный реквизит, значение которого хранится в базе данных и доступно для поиска и вывода в списках. Ниже разобраны оба варианта с конкретными действиями.
Как поставить комментарий в коде 1С
Стандартный способ — поставить два символа косой черты // в начале комментария. Комментарий действует до конца текущей строки. Его можно разместить на отдельной строке или после исполняемого кода:
// Рассчитываем сумму скидки по дисконтной карте
СуммаСкидки = СуммаДокумента * ПроцентСкидки / 100; // скидка в процентах
Признак корректного комментария — подсветка: в конфигураторе текст после // окрашивается в другой цвет (по умолчанию зелёный). Если цвет не изменился, проверьте, нет ли между слешами пробела или не использована ли кириллическая буква вместо символа.
Важное ограничение: комментарий нельзя поставить внутри строкового литерала. Если двойной слеш оказался внутри кавычек, это уже часть строки, а не комментарий:
Адрес = "http://server/base"; // здесь // внутри кавычек — часть строки
Как закомментировать несколько строк сразу
Для блока строк не нужно ставить слеши вручную. В конфигураторе есть штатная команда: выделите нужные строки и нажмите Ctrl + Num / (слеш на цифровой клавиатуре) либо используйте пункт меню «Текст → Блок → Добавить комментарий». Платформа поставит // в начале каждой выделенной строки.
Обратная операция — снятие комментария: выделите строки и нажмите Ctrl + Shift + Num / (или «Текст → Блок → Убрать комментарий»). В редакторе кода управляемых форм и в 1C:EDT сочетание обычно Ctrl + /.
- 1Выделите мышью или клавишами Shift+стрелки нужные строки модуля
- 2Нажмите Ctrl+Num/ или выберите Текст → Блок → Добавить комментарий
- 3Убедитесь, что каждая строка начинается с // и подсвечена зелёным
- 4Сохраните модуль и проверьте синтаксис (Ctrl+F7) — ошибок быть не должно
Специального синтаксиса многострочных комментариев вида / ... /, как в C или SQL, во встроенном языке 1С нет. Каждая строка комментируется отдельно своими слешами. Это частая ошибка разработчиков, пришедших из других языков: конструкция / / вызовет синтаксическую ошибку.
Комментарии в запросах
Внутри текста запроса комментарии тоже поддерживаются, но правила зависят от того, где вы пишете. В консоли запросов и в тексте запроса в модуле можно использовать двойной слеш // — он работает так же, как в коде:
Запрос.Текст =
"ВЫБРАТЬ
| Товары.Номенклатура, // основной товар
| Товары.Количество
|ИЗ
| Документ.Реализация.Товары КАК Товары";
Ограничение: комментарий в запросе нельзя ставить между ключевыми словами в середине предложения так, чтобы он разрывал конструкцию — проверяйте запрос консолью после правки. Если запрос перестал выполняться после добавления пояснений, первым делом удалите комментарии и проверьте снова.
Как оформлять комментарии, чтобы они были полезны
Хороший комментарий объясняет «почему», а не «что». Строка Сумма = Сумма + НДС; // прибавляем НДС бесполезна — это видно из кода. Полезно указать причину: // НДС добавляем отдельно, т.к. для экспорта ставка 0%. Такие пояснения экономят время при доработках через месяцы.
Принятые в практике правила: писать по-русски без сокращений, указывать дату и инициалы при временном отключении кода, помечать участки под доработку словом-маркером (часто используют // TODO или // ДОРАБОТАТЬ), чтобы потом найти их поиском по модулю.
Поле «Комментарий» в документах и справочниках
Почти в каждом документе типовой конфигурации (Управление торговлей, Бухгалтерия, ERP и других) есть поле «Комментарий». Обычно оно расположено в нижней части формы документа. Введённый текст сохраняется вместе с документом и виден всем пользователям, у которых есть права на просмотр этого объекта.
Чтобы комментарий было удобно использовать, его можно вывести в список документов: в журнале нажмите «Ещё → Изменить форму» (или «Настройка списка») и добавьте колонку «Комментарий». После этого заметки видны без открытия каждого документа, что удобно для пояснений вроде «счёт выставлен повторно» или «ожидает подписи».
Если поля «Комментарий» в форме нет — его могли скрыть при настройке формы или не предусмотреть в конфигурации. Проверьте «Ещё → Изменить форму»: если реквизит есть в объекте, его можно вернуть на форму галочкой. Если реквизита нет вовсе, его добавляет разработчик через конфигуратор.
Комментарий в коде и в документе
Виден только разработчику в конфигураторе, не сохраняется в данных, не влияет на выполнение программы
Хранится в базе, виден пользователям с правами на объект, участвует в поиске и может выводиться в списки и печатные формы
Как найти и проверить комментарии
Поиск по комментариям в коде выполняется стандартным поиском конфигуратора: «Правка → Глобальная замена/поиск» (Ctrl+Shift+F) по всем модулям. Чтобы найти все временные отключения кода, ищите по маркеру, который принят в вашей команде, например по слову «TODO» или «временно».
Поиск по комментариям документов в пользовательском режиме зависит от конфигурации: во многих типовых решениях работает полнотекстовый поиск (пиктограмма лупы в панели) или отбор в списке по полю «Комментарий» через «Ещё → Настроить список» с условием «Содержит».
Как проверить результат
Текст после // подсвечен зелёным, синтаксическая проверка (Ctrl+F7) проходит без ошибок
Ошибка компиляции или текст не подсвечен — проверьте символы и кавычки
После записи документа текст сохранился и виден при повторном открытии
Текст пропал — нет прав на запись или поле не сохраняется в данной конфигурации
Код не выполняется, поведение программы изменилось ожидаемо
Программа ведёт себя по-старому — закомментирован не тот фрагмент или кэш не обновлён
Риски и ограничения
Закомментированный код — частый источник скрытых ошибок. Если вы отключаете фрагмент для проверки, обязательно верните его или удалите осознанно: забытый комментарий может отключить проверку остатков, расчёт налогов или заполнение обязательных реквизитов. Перед обновлением конфигурации прогоняйте синтаксическую проверку модулей целиком.
Комментарии в документах не имеют истории изменений по умолчанию: если один пользователь перезапишет заметку другого, старый текст не восстановить без включённого версионирования объектов. В конфигурациях, где это критично, администратор может включить хранение истории изменений.
Что важно запомнить
В коде 1С комментарий — это // в начале строки, блок комментируется через Ctrl+Num/. Многострочного синтаксиса /<em> </em>/ нет. В документах заметки пишутся в поле «Комментарий» и хранятся в базе. Комментируйте осмысленно, помечайте временные отключения и делайте копию перед правкой кода.
Частые вопросы
Как быстро закомментировать строку одной клавишей?
Единой комбинации «одной клавишей» нет, но стандартное сочетание — Ctrl+Num/ для добавления и Ctrl+Shift+Num/ для снятия комментария. В 1C:EDT используется Ctrl+/. Работает и для одной строки, и для выделенного блока.
Почему после // код всё равно выполняется?
Чаще всего двойной слеш стоит внутри строкового литерала в кавычках — там он не считается комментарием. Также проверьте, что вы изменили именно тот модуль, который выполняется (например, модуль формы клиентского вызова, а не серверного), и обновили конфигурацию базы данных.
Можно ли вывести комментарий документа в печатную форму?
Да, если макет печатной формы это поддерживает или его доработал разработчик. В типовых конфигурациях комментарий чаще всего не выводится по умолчанию — потребуется добавить параметр в макет и процедуру формирования печатной формы.
Видят ли комментарий в документе другие пользователи?
Да, все пользователи с правами просмотра этого документа видят содержимое поля «Комментарий». Не пишите туда конфиденциальные данные, если документ доступен широкому кругу сотрудников.
Как найти все закомментированные участки кода в конфигурации?
Используйте глобальный поиск (Ctrl+Shift+F) по модулям с шаблоном «//» — выдача будет большой, поэтому эффективнее искать по принятым маркерам: TODO, «временно», «отключено». Договоритесь в команде о едином маркере для временного отключения кода.
Удаляются ли комментарии при обновлении конфигурации?
Комментарии в коде сохраняются, если модуль не заменяется полностью при обновлении типовой конфигурации — при объединении ваши правки, включая комментарии, могут быть утеряны. Комментарии в документах обновление не затрагивает, так как это данные базы, а не конфигурация.