Под полем "Имя" расположена строка с набором доступных инструментов — операторов и функций. Отображаемый на ней набор инструментов зависит от выбранного атрибута и текущего редактируемого выражения.
Если вы знакомы с Entity SQL, есть возможность подставлять некоторые операторы этого языка для формирования нужной строки условий отбора (полный список операторов Entity SQL, доступен по адресу: Справочник по Entity SQL).
Операторы
•в списке – оператор, проверяющий входит ли значение атрибута в список значений {a,b,c};
•не в списке – оператор, проверяющий исключение значений атрибута из списка значений {a,b,c};
Функции
Строки
Строковые константы должны заключаться в одинарные кавычки, например:
|
---|
Функция |
Описание |
Атрибуты |
Возвращаемое значение |
---|---|---|---|
Подстроки |
|||
БезПробеловСЛВ |
Возвращает строку без начальных пробелов слева |
Строка |
Строка |
БезПробеловСПР |
Возвращает строку без конечных пробелов справа |
Строка |
Строка |
БезПробелов |
Возвращает строку без начальных и конечных пробелов |
Строка |
Строка |
ВернутьСлева |
Возвращает первые N символов строки |
Строка Целое число (количество символов, N) |
Строка |
ВернутьСправа |
Возвращает последние N символов строки |
Строка Целое число (количество символов, N) |
Строка |
ИндексПодстроки |
Возвращает позицию подстроки в строке |
Подстрока Строка |
Целое число |
Подстрока |
Возвращает N символов строки начиная с позиции M |
Строка Целое число (начальная позиция, M) Число (количество символов, N) |
Строка |
Преобразовать |
|||
DateConvert |
Преобразование даты в строку по указанному формату (см. форматы) |
Строка Число |
Строка |
ВВерхРегистр |
Преобразование всех символов строки в верхний регистр |
Строка |
Строка |
ВНижРегистр |
Преобразование всех символов строки в нижний регистр |
Строка |
Строка |
ЗаменитьВСтроке |
Замена всех вхождений подстроки1 на подстроку2 |
Строка (где менять) Подстрока1 (что менять) Подстрока2 (на что менять) |
Строка |
НачинаетсяС |
Проверяет, начинается ли строка с подстроки |
Строка Подстрока |
Логическое значение |
ОбратитьСтроку |
Переставляет все символы в строке в обратном порядке ("задом наперед") |
Строка |
Строка |
+ |
Соединение строк. Например: Категория.Описание = Категория.Название + '123' |
Строка |
|
IsNullString |
Проверяет, является ли строка1 пустой. Если не является, то возвращает строку1; если является, то возвращает строку2 |
Строка 1 (проверяемая строка) Строка 2 (возвращается, если строка1 пустая) |
Строка |
ВДробноеЧисло |
Преобразует строку в десятичную дробь. Разделителем должна быть точка. Если строка не может быть преобразована, возвращает ошибку |
Строка |
Десятичная дробь |
ВЦелоеЧисло |
Преобразует строку в целое число. Если строка не может быть преобразована, возвращает ошибку |
Строка |
Целое число |
ДлинаСтроки |
Возвращает длину строки |
Строка |
Целое число |
ЗаканчиваетсяНа |
Проверяет, заканчивается ли строка подстрокой |
Строка Подстрока |
Логическое значение |
Конкатенация |
Соединяет две строки |
Строка 1 Строка 2 |
Строка |
Перенос строки |
Вставляет символ переноса строки |
— |
Строка |
ПовторитьСтроку |
Повторяет строку N раз |
Строка Целое число |
Строка |
ПоискВСтроке |
Возвращает позицию первого вхождения подстроки в строке и 0 если вхождение не найдено. Даже если поиск осуществляется не с первой позиции, функция все равно возвращает позицию вхождения относительно начала строки. |
Подстрока (что искать) Строка (где искать) Целое число (номер позиции, начиная с которой осуществляется поиск. Отсчет позиций начинается с 1. Если параметр равен 0, то поиск также ведется с начала строки)
|
Целое число |
ПоискПоШаблону |
Возвращает позицию первого вхождения шаблона в строке и 0 если вхождение не найдено. Шаблон — это последовательность символов, которая может включать символы-шаблоны '%' и '_'. '%' обозначает любое количество символов (в том числе и отсутствие символов), а '_' заменяет один любой символ. Как правило, шаблон ограничивается символами "%" слева и справа (за исключением случаев, когда необходимо найти только первые или только последние символы). |
Строка (шаблон) Строка
|
Целое число |
ПробелыВASCII |
Генерирует строку из N пробелов |
Целое число |
Строка |
СтрокаНеПуста |
Проверяет, есть ли в строке хотя бы один символ |
Строка |
Логическое значение |
СтрокаПуста |
Проверяет, является ли строка пустой |
Строка |
Логическое значение |
СтрокаСодержит |
Проверяет, содержит ли строка подстроку |
Строка Подстрока (что содержит) |
Логическое значение |
Числа
Функция |
Описание |
Атрибуты |
Возвращаемое значение |
---|---|---|---|
- * / + < <= > >= |
Числовые операторы |
||
IsNullDecimal |
Проверяет, является ли число1 пустым значением. Если не является, то возвращает число1; если является, то возвращает число2. |
Число1 (проверяемое число), Число2 (возвращается, если число1 пустое). |
Число в формате десятичной дроби с двумя знаками после запятой. |
ВСтроку |
Преобразует число в строку. Если число содержит десятичную дробную часть, должна быть точка. Если число не может быть преобразовано, возвращает ошибку. |
Число |
Строка |
Дата и время
Функция |
Описание |
Атрибуты |
Возвращаемое значение |
|
---|---|---|---|---|
Добавить |
||||
ДобавитьДней |
Добавляет к дате указанное количество дней. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
ДобавитьЛет |
Добавляет к дате указанное количество лет. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
ДобавитьМесяцев |
Добавляет к дате указанное количество месяцев. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
ДобавитьМинут |
Добавляет к дате указанное количество минут. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
ДобавитьРабочихДней |
Добавляет к дате указанное количество рабочих дней. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
ДобавитьРабочихЛет |
Добавляет к дате указанное количество рабочих лет. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
ДобавитьРабочихМесяцев |
Добавляет к дате указанное количество рабочих месяцев. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
ДобавитьРабочихМинут |
Добавляет к дате указанное количество рабочих минут. Количество может быть положительным и отрицательным.
|
Дата и время, Целое число |
Дата и время
|
|
ДобавитьРабочихЧасов |
Добавляет к дате указанное количество рабочих часов. Количество может быть положительным и отрицательным.
|
Дата и время, Целое число |
Дата и время |
|
ДобавитьЧасов |
Добавляет к дате указанное количество часов. Количество может быть положительным и отрицательным |
Дата и время, Целое число |
Дата и время |
|
Разница |
||||
РазницаДней |
Возвращает число целых дней между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
РазницаЛет |
Возвращает число целых лет между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
РазницаМесяцев |
Возвращает число целых месяцев между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
РазницаМинут |
Возвращает число целых минут между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
РазницаРабочихДней |
Возвращает число целых рабочих дней между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
РазницаРабочихМинут |
Возвращает число целых рабочих минут между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
РазницаРабочихЧасов |
Возвращает число целых рабочих часов между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
РазницаЧасов |
Возвращает число целых часов между двумя датами. Если первая дата больше второй, то разница отрицательная |
Дата и время 1, Дата и время 2 |
Целое число |
|
Округлить |
||||
УсечьВремя |
Возвращает указанную дату со временем 0 часов 00 минут |
Дата и время |
Дата и время |
|
ОкруглитьНачалоНедели |
Возвращает первый день недели, содержащей указанную дату, со временем 0 часов 00 минут |
Дата и время |
Дата и время |
|
ОкруглитьНачалоМесяца |
Возвращает первый день месяца, содержащего указанную дату, со временем 0 часов 00 минут |
Дата и время |
Дата и время |
|
ОкруглитьНачалоКвартала |
Возвращает первый день квартала, содержащего указанную дату, со временем 0 часов 00 минут |
Дата и время |
Дата и время |
|
ОкруглитьНачалоГода |
Возвращает первый день года, содержащего указанную дату, со временем 0 часов 00 минут |
Дата и время |
Дата и время |
|
ОкруглитьКонецДня |
Возвращает указанную дату со временем 23 часа 59 минут |
Дата и время |
Дата и время |
|
ОкруглитьКонецНедели |
Возвращает последний день недели, содержащей указанную дату, со временем 23 часа 59 минут |
Дата и время |
Дата и время |
|
ОкруглитьКонецМесяца |
Возвращает последний день месяца, содержащего указанную дату, со временем 23 часа 59 минут |
Дата и время |
Дата и время |
|
ОкруглитьКонецКвартала |
Возвращает последний день квартала, содержащего указанную дату, со временем 23 часа 59 минут |
Дата и время |
Дата и время |
|
ОкруглитьКонецГода |
Возвращает последний день года, содержащего указанную дату, со временем 23 часа 59 минут |
Дата и время |
Дата и время |
|
|
||||
Год |
Возвращает год для указанной даты |
Дата и время |
Целое число |
|
День |
Возвращает день для указанной даты |
Дата и время |
Целое число |
|
ДеньГода |
Возвращает порядковый день в году для указанной даты |
Дата и время |
Целое число |
|
Месяц |
Возвращает месяц для указанной даты |
Дата и время |
Целое число |
|
Минута |
Возвращает минуты для указанной даты |
Дата и время |
Целое число |
|
НерабочийДень |
Возвращает признак, является ли указанная дата нерабочим днем |
Дата и время |
Логическое значение |
|
НовыеДатаВремя |
Возвращает дату, сформированную из указанных параметров |
Целое число (год), Целое число (месяц), Целое число (день), Целое число (час), Целое число (минуты), Число формата double (секунды) |
Дата и время |
|
ОтформатироватьДату |
Возвращает дату, отформатированную по указанному формату. Формат — строка вида 'dd.MM.yyyy HH:mi' |
Дата и время, Строка (формат) |
||
ПеревестиВЧасовуюЗонуПользователя |
Возвращает указанную дату и время, преобразованную в часовую зону пользователя с указанным ID |
Дата и время, Целое число (ID пользователя) |
Дата и время |
|
ТекущиеДатаВремя |
Возвращает текущую дату и время |
– |
Дата и время |
|
Час |
Возвращает час для указанной даты |
Дата и время |
Целое число |
|
ДеньНедели |
Возвращает название дня недели для указанной даты |
Дата и время |
Строка |
Логические
Функция |
Описание |
Атрибуты |
Возвращаемое значение |
---|---|---|---|
есть значение |
Возвращает "истина" (1) если в предыдущем атрибуте в поле смарт-выражения есть значение; возвращает "ложь" (0) если значения нет (пустое, null). Пример: |
– |
– |
есть ложь |
Возвращает "истина" (1) если значение предыдущего атрибута в поле смарт-выражения равно "ложь" (0); возвращает "ложь" (0) если оно равно "истина" (1). Пример: |
– |
– |
И |
Операция логического умножения. |
– |
– |
ИЛИ |
Операция логического сложения. |
– |
– |
нет значения |
Возвращает "истина" (1) если в предыдущем атрибуте в поле смарт-выражения нет значения (пустое, null); возвращает "ложь" (0) если значение есть. Пример: |
– |
– |
Если ... то ... иначе ... |
|||
Вставить шаблон |
Вставляет в поле смарт-выражения шаблон: При обработке смарт-выражения шаблон преобразуется в SQL-конструкцию case when... then... else... end |
– |
– |
В случае если иначе конец то |
Вставляет в поле смарт-выражения одну (выбранную) часть шаблона: case when else end then |
– |
– |
Агрегатные
Агрегатные функции выполняют операции над множеством и возвращают результирующее значение.
Функция |
Описание |
Атрибуты |
Возвращаемое значение |
---|---|---|---|
Максимум |
Возвращает максимальный из элементов массива. Пример: |
Массив чисел, строк или дат. |
Соответствует типу элементов в массиве |
Минимум |
Возвращает минимальный из элементов массива. Пример: |
Массив чисел, строк или дат. |
Соответствует типу элементов в массиве |
СконкатенироватьВСтроку |
Преобразует коллекцию атрибутов в строку. Чтобы сформировать XML выборки данных, надо "обернуть" подвыражение в макрос EVALXML. Важно, чтобы описание атрибута XML точно соответствовало названию колонки в таблице БД (в т.ч. с учетом регистра). Пример: |
Строка1 (XML выборки данных), Строка2 (атрибут XML, который надо сконкатенировать), Строка3 (символ-разделитель конкатенации). |
Строка |
Среднее |
Возвращает среднее арифметическое значений элементов массива. |
Массив чисел |
Число |
Сумма |
Возвращает сумму значений элементов массива. |
Массив чисел |
Число |
Математические
Функция |
Описание |
Атрибуты |
Возвращаемое значение |
---|---|---|---|
ПоМодулю |
Возвращает абсолютное значение числа (модуль). |
Число |
Число |
МинЦелоеНеМеньше |
Возвращает ближайшее целое число, не меньшее указанного. Например, МинЦелоеНеМеньше(12.3) = 13 |
Число |
Целое число |
МаксЦелоеНеБольше |
Возвращает ближайшее целое число, не большее указанного. Например, МаксЦелоеНеБольше(12.3) = 12 |
Число |
Целое число |
Степень |
Возвращает число N, возведенное в степень M. |
Число (основание степени, N), Число (показатель степени, M). |
Число |
Округлить |
Возвращает округленное число (дробная часть < 0.5 отбрасывается, >= 0.5 округляется в большую строну). |
Число |
Число |
УрезатьДоЗнаков |
Возвращает указанное число с количеством знаков после запятой, не большим максимального заданного; остальные знаки отбрасываются. Например, УрезатьДоЗнаков(123.456, 2) = 123.45 УрезатьДоЗнаков(123, 2) = 123 |
Число (урезаемое число), Число (максимальное количество знаков после запятой). |
|
СлучЗнач |
Возвращает случайное десятичное значение от 0 до 1, подсчитанное на основе указанного числа. |
Число |
Число |
ЗнакЧисла |
Возвращает 1 для положительных значений, -1 для отрицательных, 0 для нуля. |
Число |
Целое число |
Корень |
Возвращает квадратный корень из указанного числа. |
Число |
Число |