Выражения языка
Выражение — это математическая, логическая или строковая формула, состоящая из соответствующих операций, по которой вычисляется значение. Математическое и логическое выражение может стоять справа от знака равенства в операторах присваивания, быть параметром процедур или функций. Логическое выражение также может быть условием в управляющих конструкциях Если, Пока, Для. Выражения состоят из констант, переменных и функций, связанных символами логических и/или арифметических операций.
В языке определены следующие виды арифметических операций:
сложение (Оп1 + Оп2)
вычитание (Оп1 - Оп2)
умножение (Оп1 * Оп2)
деление (Оп1 / Оп2)
остаток от деления (Оп1 % Оп2)
унарный минус (-Оп1)
Арифметические операции имеют один или два операнда, в зависимости от типа которых, операция имеет ту или иную семантику. Тот или иной семантический вариант операции определяется по первому операнду. В случае несовпадения типа второго операнда с требуемым, значение преобразуется к требуемому типу в соответствии с правилами преобразования типов. Если тип первого операнда не соответствует ни одному из допустимых типов, то в зависимости от ситуации может производиться преобразование типов или возбуждаться состояние ошибки выполнения.
Сложение определено для следующих типов операндов:
Число+Число Дата+ Число (к дате прибавляется число дней)
Вычитание определено для следующих типов операндов:
Число-Число Дата-Число (от даты отнимается число дней)
Дата-Дата (результатом является число дней между датами)
Умножение:
Число*Число
Деление:
Число/Число
Остаток от деления:
Число%Число
Замечание! При выполнении операции % (остаток отделения) оба операнда операции округляются до целого значения.
Операция конкатенации
Операция конкатенации ("+") используется для того, чтобы присоединить одну строку к другой. Длина результирующей строки равна сумме длин соединяемых строк. В случае несовпадения типа данных второго или последующих операндов со строковым типом, их значение преобразуется к строковому типу в соответствии с правилами преобразования типов.
Пример:
ФИО = Фамилия + " " + Имя + " " + Отчество;
Логические операции
Логическая операция сравнивает операнды и вырабатывает значение типа Булево: Истина или Ложь. Существует два вида логических операций: операции сравнения и булевы операции. В операциях сравнения сравниваются два значения. Булевы операции выполняются над значениями типа Булево, реализуя булеву алгебру. Символы булевых операций могут комбинироваться, образуя составные операции.
Операции сравнения:
В языке определены следующие виды операций сравнения:
больше (Оп1 > Оп2)
больше или равно (Оп1 >= Оп2)
равно (Оп1 = Оп2)
не равно (Оп1 <> Оп2)
меньше (Оп1 < Оп2)
меньше или равно (Оп1 <= Оп2)
Операции сравнения определены для следующих типов операндов:
больше Число>Число Строка>Строка Дата>Дата
больше или равно: Чиcлo>=Чиcлo Строка> = Строка Дата>=Дата
меньше: Число<Число Строка<Строка Дата<Дата
меньше или равно: Число<=Число Строка<= Строка Дата<=Дата
равно: Любой тип=Любой тип
не равно: Любой тип <> Любой тип
Булевы операции:
В языке определены следующие виды булевых операций:
И (AND) конъюнкция (булево И)
ИЛИ (OR) дизъюнкция (булево ИЛИ)
НЕ (NOT) логическое отрицание (булево отрицание НЕ)
Логические выражения вычисляются слева направо. Для того, чтобы избежать неоднозначности и управлять последовательностью операндов, следует применять круглые скобки.
Уровни старшинства логических операций:
Уровень 1 операнды заключенные в скобки
Уровень 2 НЕ
Уровень 3 И
Уровень 4 ИЛИ
Замечание!
При вычислении логического выражения вычисляются только необходимые части выражения. Например, в выражении "(Цена > 0) И ПроверкаСуммы()", если Цена <" 0, то функция ПроверкаСуммы() не вызывается.
«««««««««« | 1С:Предприятие 8.0 | »»»»»»»»»» |