Параметры процедур (функций)
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Опускаемые параметры должны быть только в конце списка параметров процедуры или функции.
Следует стремиться к тому, чтобы не допускать разные типы одного параметра.

Следует стремиться к тому, чтобы порядок параметров процедур и функций соответствовал значимости и физическому смыслу параметров в соответствии с лексической конструкцией <Что>, <Какое>, <Что сделать>, <Каким образом>.
Пример

 

Неправильно: Функция ПроверитьДоступностьФормы(ФормаВладелец, РежимОткрытия, Форма) Правильно: Функция ПроверитьДоступностьФормы(Форма, ФормаВладелец, РежимОткрытия)

 



Возвращаемые значения процедур (функций)

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

 


Обработчики событий

У каждого события должен быть свой обработчик. Если одинаковые действия должны выполняться при изменении разных элементов управления или при нажатии нескольких кнопок (например), в этом случае:
• создается отдельная процедура (функция), выполняющая необходимые действия;
• для каждого элемента управления создается отдельный обработчик с именем, назначаемым по умолчанию;
• из каждого обработчика вызывается требуемая процедура (функция).

 




Использование системных наборов значений

Где возможно, следует использовать системные наборы значений. Например, вместо Символ(10) следует использовать Символы.ПС.

 

Использование в условиях Если точного равенства

В тех случаях, когда в условиях Если… проверяется возвращаемое значение функции/метода, следует использовать точное равенство.
Пример

Неправильно: Если Выбран() <> 0 Тогда .... Правильно: Если Выбран() = 1 Тогда

 

Использование "обратных условий"

Запрещается использование вместо вложенных конструкций Если...КонецЕсли конструкций типа Если...ИначеЕсли...ИначеЕсли... с «обратными» условиями, как сложные для анализа, модификации и отладки.
Пример

Конструкция: Если (А=1) Тогда ИначеЕсли (Б=2) Тогда ИначеЕсли (В=3) Тогда С=4; КонецЕсли; должна быть заменена на конструкцию: Если (А<>1) Тогда Если (Б<>2) Тогда Если (В=3) Тогда С=4; КонецЕсли; КонецЕсли; КонецЕсли;

 



Сравнение с логической константой

Результат функции, возвращающей логическое значение, не следует проверять путем сравнения с логической константой.
Пример

Неправильно: Если ЭтоНовый() = Истина Тогда Правильно: Если ЭтоНовый() Тогда

 


Присвоение промежуточных результатов

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

Неправильно: Если Вопрос("Данные физлица еще не записаны! Записать?", РежимДиалогаВопрос.ДаНет,, КодВозвратаДиалога.Да,) = КодВозвратаДиалога.Да Тогда Записать(); Иначе Возврат КонецЕсли; Правильно: Ответ = Вопрос("Данные физлица еще не записаны! Записать?", РежимДиалогаВопрос.ДаНет,, КодВозвратаДиалога.Да,); Если Ответ = КодВозвратаДиалога.Да Тогда Записать(); Иначе Возврат КонецЕсли;

 

 

Требования к реквизитам объектов метаданных и форм

 

 

Имена реквизитов (измерений, ресурсов и т.д.) объектов конфигурации

Не рекомендуется использовать имена реквизитов (измерений, ресурсов и пр.) объектов конфигурации, совпадающие с именами самих объектов.
Поскольку в таких случаях возникает неоднозначность в запросах к данному объекту, требующая применения нестандартных синонимов (синоним должен отличаться от имени объекта).
Что затрудняет использование конструктора запроса и снижает наглядность самого текста запроса.

Например, выполнение приведенного запроса вызывает ошибку:

ВЫБРАТЬ Сведения.Сведения ИЗ РегистрСведений.Сведения КАК Сведения

 



Дата: 2018-11-18, просмотров: 278.