Как закомментировать код в 1с
Перейти к содержимому

Как закомментировать код в 1с

  • автор:

Комментирование кода 1С

Производится только с помощью последовательности « // «, при этом комментарием считается все, что находится после.

Пример комментария:

Перем ЭтоНеКомментарий;\\ А это уже комментарий \\Это тоже комментарий

Доступны только однострочные комментарии, синтаксиса для обозначения начала и окончания многострочных комментариев нет.

Возможно использование в подряд идущих комментариев:

//Это первая строка комментария //Это вторая строка комментария //Строка комментария после пустой строки // Перем А;//Эта переменная не объявится

Горячие клавиши

ctrl + / — добавить комментарий в выделенных строках;

ctrl + shift + / — удалить комментарий в выделенных строках

В данном случае комментарий, конечно, не удаляется, а удаляется символы комментирования из каждой строк выделенного блока

Установка и снятие комментария интерактивно по кнопкам:

Выделяется код и нажимаются на панели «Модуль» соответствующие кнопки «Добавить комментарий» и снять «Комментарий»

Снятие комментария

или более длинный путь:

Меню «Текст\Блок\Добавить комментарий» или «Текст\Блок\Удалить комментарий«

Установка комментарие длинный путь

Должен заметить, что текст комментариев — только для программистов, пользователь его не увидит, и служит для:

  • описания сложных участков кода или алгоритма
  • логического отделения блоков непрерывного кода, в данном случае поле «\\» ничего не пишется
  • описания функций и процедур
  • выделения изменений в код типовых конфигураций, при обновлении упростит разбор
  • описания ситуации внесения изменений, даты
  • отметка ошибочного или сомнительного кода, в процесcе code review (анализа качества кода 1С)

Правила комментирования кода действуют и для языка запросов 1С, но важно отметить, что при использовании Конструктора запроса(визуального средства разработки запроса к базе), комментарии удаляются полностью, а не снимается признак «\\».

Среда разработки может автоматически сворачивать комментарии, для удобства восприятия

Настроить это можно в меню «Сервис\Параметры» далее вкладки «Модули\Группировка»

Сворачивание комментариев

Там же на вкладке «Модули\Редактирование» возможно отключить или поменять цвет выделения комментария с зеленого (по умолчанию)

Модули Редактирование

Если вы ранее не программировали и у вас нет определенных привычек к цвету текста, то лучше не менять, т.к. не всегда вы будете работать на своем компьютере и лучше привыкнуть к единому стилю, но тут решать вам.

Вся реклама — это хорошие новости.

— Маршалл Маклюэн

Как закомментировать код в 1с

(8) Совершенно стандартный и часто встречающийся подход, пишешь условие:
Если 1=2 Тогда
Естественно конецЕсли в конце комментария

Надо сохранить код модуля в текстовый файл.
Написать обработку, которая обходит строки и вставляет кусок текста «//» в начале каждой строки.
Запустить обработку.
Полученный текст вставить в модуль вместо прежнего кода

Ctrl+A, затем Del, затем Ctrl+S
(13) отвратительно

+(13) то есть чтобы понять , что этот код — не рабочий я должен все условия просмотреть? кошмар. Я такое заставлял перепиывать

(15) это что?
(18) А ты попробуй, узнаешь.
Желательно — в каком-нибудь общем модуле, или модуле приложения)
(18) Это чтоб наверняка зарэмилось)))

2(17) а заставляешь переписывать код вот такого напрример типа:

СтандартнаяОбработка = Ложь;
Если ТабличноеПоле.ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;

Я просто пишу Возврат в первой строке процедуры
Там в конфигураторе есть кнопочки
//
и
//х

(17) Мда..
А я так делал, а потому что второй(альтернативный) код работал неоднозначно по времени , и чтоб не убивать старый код я так писал для себя! В итоге отладил и стал использовать оба кода, в одно случае первый в другом второй. Скорость работы вырасла.

(16) Ну, у меня есть вообще вредная привычка — не терплю куски закомментированного кода, если код закомментирован, я его просто стираю, всегда. По моему комментарии должны использоваться для объяснений, а не для складирования неиспользуемого мусора. Тем не менее вариант (13) много раз видел в коде, написанном другими и совершенно спокойно, в отличие от тебя, к нему отношусь.

Как комментировать в 1С код, отдельные процедуры и запросы

Хочу поделиться своим опытом в вопросе комментирования кода и рассказать о некоторых нюансах. Новичкам должно быть полезно.

  • 1 Комментарий в коде 1С
  • 2 Комментарий новой процедуры
  • 3 Комментарии в запросах

Комментарий в коде 1С

Когда пишем свой код, то вставляем комментарии в начале и в конце своих изменений. Таким образом, можно понять, кто и когда вносил изменения:

Если необходимо изменить чужой код, то внутри своего комментария комментируем чужой код и пишем свой. Таким образом понятно, что было до твоих изменений:

Комментарий новой процедуры

Часто вижу, что некоторые разработчики при создании процедур/функций оставляют комментарии «снаружи» метода:

Есть две причины, почему так не стоит делать. Первая причина: если добавить новую процедуру, то она подставляется внутрь комментария. И затем эти комментарии болтаются в модуле:

Вторая причина: при сравнении модулей в добавляемой процедуре теряется комментарий окончания:

А в нижестоящей процедуре/функции добавляется потерянный комментарий:

Если указать комментарий внутри процедуры, то при сравнении все остается на своих местах. Да, если сразу создаете несколько процедур, то нужно будет в каждой процедуре писать комментарии, но если вы пользуетесь шаблонами, по времени это займет примерно нисколько:

Комментарии в запросах

Самое интересное — комментирование текста запроса. Вариантов куча и не совсем понятно как лучше. Первый очевидный вариант, комментирование внутри текста запроса. Тут есть нюанс, если открыть конструктор запроса и сохранить, то все комментарии удаляются. Как по мне, вариант не очень удачный.

Есть вариант — указывать ниже или выше текста запроса то, что изменил. Немного лучше, т.к. можно открывать конструктор запроса и не затирать комментарии, но это не совсем наглядно. Если будет много изменений, то без бутылки не разберешься.

Есть вариант определения текста запроса отдельной функцией или функциями, в них целиком комментировать текст запроса. Таким образом, сохранены все версии текста запроса, любой из них можно открыть конструктором и посмотреть, также, при необходимости, можно выполнить сравнение текстов. На мой взгляд, это наиболее удачный вариант.

Но если текст запроса большой, то будет не совсем удобно листать. Будет лучше создать несколько функций с разными версиями текста запроса.

Надеюсь эта статья оказалась полезной. Возможно, у вас есть что добавить или поправить.

Горячие клавиши

При написании, просмотре, редактировании кода, навигации по пунктам меню 1С значительно ускорить эти процессы позволяют определенные комбинации нажатия на клавиши, так называемые «Горячие клавиши». Сразу скажу, что перечень будет приведен неполный. Только те, которые я использую в своей работе. Поэтому нелишним будет после прочтения этой статьи обратиться к справке 1С, чтобы расширить этот перечень. Список будет разбит на соответствующие разделы в соответствии с функциональным назначением. В основном будут рассмотрены сочетания, применимые при работе в режиме конфигуратора 1С.

При указании сочетаний клавиш будут использоваться латинские символы, хотя при использовании переключать клавиатуру на английский язык конечно же не нужно. Итак приступим.

  • НавигацияF12 — если установить курсор на место вызова процедуры или функции, то с помощью этой клавиши можно перейти непосредственно к процедуре или функции; Ctrl + ] — позволяет из начала логической конструкции перейти в ее конец. Под логическими конструкциями понимаются: Если … КонецЕсли, Для … Цикл … КонецЦикла, Функция … КонецФункции, Процедура … КонецПроцедуры. То есть если курсор у нас спозиционирован на операторе «Если», то после применения данного сочетания, он спозиционируеься на операторе «КонецЕсли». Очень удобно в ситуациях, когда приходится анализировать большие блоки кода; Ctrl + [ — позволяет из конца логической конструкции переместиться в ее начало; Ctrl + T — при редактировании кода эта комбинация клавиш позволяет переместиться в дерево метаданных конфигурации и спозиционироваться на том объекте, чей код вы сейчас редактируете; Alt + F2 — Устанавливает метку на строчке кода (впоследствии можно перемещаться к этой метке). Отображается синим кружком с левой стороны строки. Имя метки не устанавливается. Возможен последовательный обход меток в рамках текущего окна кода; F2 — Переход к следующей метке по направлению «вперед» в текущем окне кода; Shift + F2 — Переход к следующей метке по направлению «назад» в текущем окне кода; Ctrl + F — поиск текста; F3 — найти следующий фрагмент текста; Shift + F3 — найти предыдущий фрагмент текста; Ctrl + Home — переместить курсор в начало текста; Ctrl + End — переместить курсор в конец текста; Home — переместить курсор в начало текущей строки; End — переместить курсор в конец текущей строки; Ctrl + «стрелка вправо» — переместить курсор на одно слово вправо; Ctrl + «стрелка влево» — переместить курсор на одно слово влево;
  • Работа с окнамиAlt + Enter — открыть окно свойств. Информация в окне отображается для того элемента который был выделен до нажатия клавиш. Например, это может быть объект конфигурации, ячейка табличного документа, и т.д.; Alt + Shift + Enter — открыть окно дополнительных свойств. Используется для просмотра дополнительных свойств объектов конфигурации; Shift + Ctrl + Т — открывает окно с шаблонами текста; Shift + Ctrl + Z — закрывает окно служебных сообщений;
  • Редактирование текстаCtrl + / (на цифровой клавиатуре) — закомментировать выделенный блок текста; Shift + Ctrl + / (на цифровой клавиатуре) — раскомментировать выделенный блок текста; Ctrl + C — скопировать выделенный текст в буфер; Ctrl + V — вставить из буфера; Ctrl + C — вырезать выделенный текст в буфер;
  • Выделение текстаCtrl + A — выделить все; Shift + Ctrl + Home — выделить текст начиная с текущей позиции курсора и до начала текста; Shift + Ctrl + End — выделить текст начиная с текущей позиции курсора и до конца текста; Shift + Home — выделить текст начиная с текущей позиции курсора и до начала строки; Shift + End — выделить текст начиная с текущей позиции курсора и до конца строки; Shift + Ctrl + «стрелка вправо» — выделить слово справа от курсора. Удерживая Shift и Ctrl и последовательно нажимая стрелку можно выделять сразу несколько слов; Shift + Ctrl + «стрелка влево» — выделить слово слева от курсора; Shift + «стрелка вниз» — выделить строку со смещением курсора на одну строчку вниз. Удобно использовать при выделении нескольких строк; Shift + «стрелка вверх» — выделить строку со смещением курсора на одну строчку вверх;
  • ОтладкаF7 — обновить конфигурацию; F5 — обновляет конфигурацию, открывает новое окно в режиме предприятия и включает режим отладки открытого окна; Ctrl + F5 — открывает новое окно в режиме предприятия и включает режим отладки открытого окна без обновления конфигурации; F9 — устанавливает точку останова на текущей строке кода в конфигураторе; Alt + F9 — открывает окно со списком всех точек останова конфигурации. Из этого окна можно переместиться к любой из них; Ниже приведены сочетания клавиш, которые используются в процессе отладки после того как отработала точка останова Sift + F9 — открывает окно в котором можно посмотреть значение переменной или результат вычисления какой-либо функции. Переменную или функцию можно предварительно выделить; F11 — пошаговая отладка. При каждом нажатии выполняется одна строка кода; Shift + F11 — текущая процедура или функция выполняется до конца, происходит выход из нее и отладочный курсор устанавливается на строке следующей за той из которой эта процедура (функция) вызывалась; Shift + F10 — код выполняется до текущей позиции курсора;

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *