1С Предприятие 8.0. Описание встроенного языка

         

Выражения языка


Выражение — это математическая, логическая или строковая формула, состоящая из соответствующих операций, по которой вычисляется значение. Математическое и логическое выражение может стоять справа от знака равенства в операторах присваивания, быть параметром процедур или функций. Логическое выражение также может быть условием в управляющих конструкциях Если, Пока, Для. Выражения состоят из констант, переменных и функций, связанных символами логических и/или арифметических операций.

Арифметические операции

В языке определены следующие виды арифметических операций:

сложение              (Оп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 »»»»»»»»»»

Содержание раздела