Конструкции встроенного языка



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

Конструкции встроенного языка могут записываться на русском или английском языке, кроме нескольких слов, для которых нет подходящих русских эквивалентов, например, Null.

Операторы встроенного языка должны разделяться точкой с запятой («;»), но после ключевых слов КонецПроцедуры или КонецФункции точка с запятой не ставится, поскольку это не операторы, а операторные скобки.

Ниже описаны основные конструкции встроенного языка 1C:Предприятия 8.0.

 

Условия

Конструкция «Если... Тогда»

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

Примеры:

//1-й примерЕсли Состав.Количество()=0 Тогда Предупреждение("Не указано ни одной строки!");КонецЕсли; //2-й примерEсли Сотр.Категория = Перечисления Категории.Совместитель Тогда //обработаем как совместителяИначе //обычный сотрудникКонецЕсли; //3-й примерЕсли выбор = 1 Тогда Сообщить("Выбран 1-й пункт");ИначеЕсли выбор = 2 или выбор = 3 Тогда Сообщить("Выбран 2-й или 3-й пункт");Иначе Сообщить("Обработка этого пункта не предусмотрена");КонецЕсли;

Ключевые слова ИначеЕсли, Иначе и КонецЕсли желательно записывать с новой строки. Следующий пример показывает нежелательное форматирование оператора Если:

//так делать не рекомендуется!Если Состав. Количество () = 0 Тогда... Иначе... КонецЕсли;

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

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

Если Выборка.Следующий() = Истина Тогда //так не рекомендуетсяЕсли Выборка.Следующий() Тогда //это рекомендуемый вариант

Логический оператор НЕ позволяет инвертировать результат логического выражения и подобным же образом заменить сравнение со значением Ложь. Следующие конструкции делают одно и то же:

Если ВыбФирма.Пустая() = Ложь ТогдаЕсли НЕ ВыбФирма.Пустая() Тогда

Конструкция «?(...,...,...)»

Данная конструкция позволяет записать условный оператор в одну строку и вычислить его как выражение.

Пример:


Дата добавления: 2015-12-20; просмотров: 21; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!