Область применения: управляемое приложение, мобильное приложение, обычное приложение.
1. При длине строки более 120 символов следует использовать переносы. Строки длиннее 120 символов делать не рекомендуется, за исключением тех случаев, когда перенос невозможен.
2. Длинные арифметические выражения переносятся следующим образом:
Пример:
СуммаДокумента = СуммаБезСкидки
+ СуммаРучнойСкидки
+ СуммаАвтоматическойСкидки;
или
СуммаДокумента = СуммаБезСкидки
+ СуммаРучнойСкидки
+ СуммаАвтоматическойСкидки;
3.1 Длинные строковые константы рекомендуется переносить с помощью специального символа перевода на новую строку, например:
ТекстЗапроса =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ЗаметкиПоПредмету.КоличествоЗаметок КАК КоличествоЗаметок
|ИЗ
| РегистрСведений.ЗаметкиПоПредмету КАК ЗаметкиПоПредмету
|ГДЕ
| ЗаметкиПоПредмету.Предмет = &Предмет";
или
ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru = 'Обновление адресного классификатора не требуется.
|В программе уже загружены актуальные адресные сведения от %1.'"),
Формат(ДатаПоследнегоОбновленияКЛАДР, "ДЛФ=D"));
ПоказатьПредупреждение(,ТекстПредупреждения);
При этом не следует переносить строки, содержащие текст сообщения пользователю (объект СообщениеПользователю).
3.2. В общем случае при конкатенации строк знак "+" рекомендуется писать в начале строки, так же как и при переносе арифметических выражений (см. п.2), например:
ПоляОтбора = "Номенклатура,Характеристика,Склад"
+ ДополнительныеПоляОтбора;
3.3. При конкатенации длинных строк знак "+" можно писать в конце строки, чтобы не ломать общее форматирование текста. Например,
ТекстЗапроса = ТекстЗапроса +
"ВЫБРАТЬ
| Номенклатура.Ссылка КАК Ссылка
|ИЗ
| Справочник. Номенклатура КАК Номенклатура";
4. При необходимости параметры процедур, функций и методов следует переносить следующим образом:
Пример:
ИменаДокументов = Новый СписокЗначений;
ИменаДокументов.Добавить(Метаданные.Документы.СтрокаВыпискиРасход.Имя,
Метаданные.Документы.СтрокаВыпискиРасход.Синоним);
ИменаДокументов.Добавить(Метаданные.Документы.РасходныйКассовыйОрдер.Имя,
Метаданные.Документы.РасходныйКассовыйОрдер.Синоним);
или
ИменаДокументов = Новый СписокЗначений;
ИменаДокументов.Добавить(Метаданные.Документы.СтрокаВыпискиРасход.Имя,
Метаданные.Документы.СтрокаВыпискиРасход.Синоним);
ИменаДокументов.Добавить(Метаданные.Документы.РасходныйКассовыйОрдер.Имя,
Метаданные.Документы.РасходныйКассовыйОрдер.Синоним);
5. Сложные логические условия в Если…ИначеЕсли…КонецЕсли следует переносить следующим образом:
Примеры:
Если (ВидОперации = Перечисления.ВидыОперацийПоступлениеМПЗ.ПоступлениеРозница)
ИЛИ (ВидОперации = Перечисления.ВидыОперацийПоступлениеМПЗ.ПоступлениеРозницаКомиссия) Тогда
Возврат Истина;
КонецЕсли;
Если ((СтруктураМодуля[Индекс].Блок = Перечисления.ТипыБлоковМодулей.ЗаголовокПроцедуры)
ИЛИ(СтруктураМодуля[Индекс].Блок = Перечисления.ТипыБлоковМодулей.ЗаголовокФункции))
И(Найти(ВРЕГ(СтруктураМодуля[Индекс].Текст), КлючБлока)> 0) Тогда
6. Для выполнения перечисленных выше рекомендаций, кроме автоматического форматирования текста программного модуля, в процессе ввода можно также отформатировать уже введенный текст. Для этого необходимо выделить блок текста, который требуется отформатировать, и выбрать пункт меню Текст — Блок — Форматировать. При этом текстовый редактор проанализирует текст модуля и выполнит его форматирование, при котором содержимое каждой синтаксической конструкции будет сдвинуто вправо на величину табуляции независимо от первоначального расположения строк (лидирующих пробелов). В пустые строки устанавливаются знаки табуляции в соответствии с синтаксической конструкцией.
Для автоматической расстановки переносов строк можно воспользоваться приложенной обработкой.