Данная страница представляет собой подробное руководство по функциям системы Sigla Vision, предназначенным для выполнения вычислений. Для каждой функции приведены синтаксис, описание, параметры, примеры использования и, при необходимости, дополнительные примечания.
1 Общие функции#
1.1 ABS#
Синтаксис : ABS(число) Описание : Возвращает абсолютное значение числа (модуль). Параметры : • число — любое действительное число. Примеры : • ABS(-1.5) → 1.5 • ABS(0) → 0 • ABS(2.5) → 2.5
1.2 IF#
Синтаксис : IF(условие1, результат1, [условие2, результат2, ... ], иначе) Описание : Условная функция, возвращает результат в зависимости от выполнения условий. Если условие1 истинно, возвращается результат1; если условие2 истинно (и условие1 ложно), возвращается результат2; в противном случае возвращается значение "иначе". Параметры : • условие — логическое выражение (true или false). • результат — возвращаемое значение, если условие истинно. • иначе — значение по умолчанию, если ни одно из условий не выполнено. Примеры : • IF(true, 2, 8) → 2 • IF(цена < 400, "Тип А", цена < 8000, "Тип Б", "Тип В") → Возвращает "Тип А", если цена < 400; "Тип Б", если 400 ≤ цена < 8000; иначе "Тип В". Примечания : Все результаты должны быть одного типа.
1.3 INT#
Синтаксис : INT(число) Описание : Округляет число вниз до ближайшего целого. Параметры : • число — действительное число. Примеры : • INT(4.8) → 4 • INT(-4.8) → -5
1.4 ROUND#
Синтаксис : ROUND(число, количество_цифр) Описание : Округляет число до указанного количества знаков после запятой. Параметры : • число — число для округления. • количество_цифр — количество знаков после запятой (может быть отрицательным для округления до десятков, сотен и т.д.). Примеры : • ROUND(2.15, 1) → 2.2 • ROUND(-1.475, 2) → -1.48 • ROUND(21.5, -1) → 20
2 Числовые функции#
2.1 ACOS#
Синтаксис : ACOS(число) Описание : Возвращает арккосинус числа (в радианах). Параметры : • число — косинус угла, значение от -1 до 1. Примеры : • ACOS(1) → 0 • ACOS(0.5)*180/PI() → 60 Примечания : Для преобразования результата в градусы используйте умножение на 180/PI().
2.2 ASIN#
Синтаксис : ASIN(число) Описание : Возвращает арксинус числа (в радианах). Параметры : • число — синус угла, значение от -1 до 1. Примеры : • ASIN(0.5) → 0.523598776 • ASIN(0.5)*180/PI() → 30
2.3 ATAN#
Синтаксис : ATAN(число) Описание : Возвращает арктангенс числа (в радианах). Параметры : • число — тангенс угла. Примеры : • ATAN(-1) → -0.785398163 • ATAN(2)*180/PI() → 63.43494882
2.4 ATAN2#
Синтаксис : ATAN2(x, y) Описание : Возвращает арктангенс координат x и y (в радианах). Параметры : • x — координата x. • y — координата y. Примеры : • ATAN2(-2, 2) → 2.356194490192345 • ATAN2(-2, 2)*180/PI() → 135
2.5 CEILING#
Синтаксис : CEILING(число) Описание : Округляет число вверх от нуля до ближайшего целого. Параметры : • число — значение для округления. Примеры : • CEILING(-2.5) → -3 • CEILING(0.5) → 1
2.6 COS#
Синтаксис : COS(число) Описание : Возвращает косинус угла. Параметры : • число — угол в радианах. Примеры : • COS(0.5) → 0.877582562 • COS(30*PI()/180) → 0.866025404
2.7 DEGREES#
Синтаксис : DEGREES(угол) Описание : Преобразует радианы в градусы. Параметры : • угол — угол в радианах. Примеры : • DEGREES(PI()/2) → 90 • DEGREES(3.1415926) → 179.9999969
2.8 EXP#
Синтаксис : EXP(число) Описание : Возвращает e в степени числа. Параметры : • число — любое действительное число. Примеры : • EXP(0) → 1 • EXP(3) → 20.09
2.9 FACT#
Синтаксис : FACT(число) Описание : Возвращает факториал числа. Параметры : • число — неотрицательное целое число. Примеры : • FACT(5) → 120 • FACT(0) → 1 Примечания : Если число отрицательное, возвращается NULL.
2.10 FLOOR#
Синтаксис : FLOOR(число) Описание : Округляет число вниз к нулю до ближайшего целого. Параметры : • число — значение для округления. Примеры : • FLOOR(-2.5) → -2 • FLOOR(2.5) → 2
2.11 LN#
Синтаксис : LN(число) Описание : Возвращает натуральный логарифм числа. Параметры : • число — положительное действительное число. Примеры : • LN(86) → 4.45437 • LN(2.7182818) → 1 Примечания : Если число < 0, возвращается NULL.
2.12 LOG#
Синтаксис : LOG(число, [основание]) Описание : Возвращает логарифм числа по указанному основанию. Параметры : • число — положительное число. • основание — основание логарифма (по умолчанию 10). Примеры : • LOG(16, 2) → 4 • LOG(10) → 1
2.13 LOG10#
Синтаксис : LOG10(число) Описание : Возвращает десятичный логарифм числа. Параметры : • число — положительное действительное число. Примеры : • LOG10(86) → 1.93 • LOG10(10) → 1
2.14 MAX#
Синтаксис : MAX(число1, число2, ...) Описание : Возвращает наибольшее значение из набора чисел. Параметры : • число1, число2, ... — числа для сравнения (до 30). Примеры : • MAX(1, 2, 3, 4, 5) → 5
2.15 MIN#
Синтаксис : MIN(число1, число2, ...) Описание : Возвращает наименьшее значение из набора чисел. Параметры : • число1, число2, ... — числа для сравнения (до 30). Примеры : • MIN(1, 2, 3, 4, 5) → 1
2.16 MOD#
Синтаксис : MOD(число, делитель) Описание : Возвращает остаток от деления числа на делитель. Параметры : • число — делимое. • делитель — делитель. Примеры : • MOD(3, 2) → 1 • MOD(-3, 2) → 1 Примечания : Если делитель равен 0, возвращается ∞.
2.17 PI#
Синтаксис : PI([число]) Описание : Возвращает значение числа π, умноженное на указанное число (если задано). Параметры : • число — множитель для π (необязательно). Примеры : • PI() → 3.14 • PI(3) → 9.42
2.18 POWER#
Синтаксис : POWER(число, степень) Описание : Возвращает число, возведенное в указанную степень. Параметры : • число — основание степени. • степень — показатель степени. Примеры : • POWER(6, 2) → 36 • POWER(4, 2/3) → 2.52
2.19 PROMOTION#
Синтаксис : PROMOTION(значение1, значение2) Описание : Возвращает коэффициент изменения между двумя значениями (значение2 - значение1) / значение1. Параметры : • значение1 — базовое значение. • значение2 — новое значение. Примеры : • PROMOTION(12, 14) → 0.166666666 (16.67%) • PROMOTION(14, 0) → -1
2.20 RADIANS#
Синтаксис : RADIANS(угол) Описание : Преобразует градусы в радианы. Параметры : • угол — угол в градусах. Примеры : • RADIANS(90) → 1.570796327
2.21 RAND#
Синтаксис : RAND() Описание : Возвращает случайное число от 0 до 1. Параметры : Нет. Примеры : • RAND()*60 → Случайное число от 0 до 60. • RAND()*19 → Случайное число от 0 до 19.
2.22 RANDBETWEEN#
Синтаксис : RANDBETWEEN(число1, число2) Описание : Возвращает случайное целое число в заданном диапазоне. Параметры : • число1 — нижняя граница. • число2 — верхняя граница. Примеры : • RANDBETWEEN(12.333, 13.233) → 13 • RANDBETWEEN(11.2, 13.3) → 12 или 13
2.23 SIGN#
Синтаксис : SIGN(число) Описание : Возвращает знак числа: 1 (положительное), 0 (ноль) или -1 (отрицательное). Параметры : • число — любое действительное число. Примеры : • SIGN(10) → 1 • SIGN(0) → 0 • SIGN(-0.00001) → -1
2.24 SIN#
Синтаксис : SIN(число) Описание : Вычисляет синус угла. Параметры : • число — угол в радианах. Примеры : • SIN(10) → -0.54 • SIN(45*PI()/180) → 0.71
2.25 SQRT#
Синтаксис : SQRT(число) Описание : Возвращает квадратный корень числа. Параметры : • число — неотрицательное число. Примеры : • SQRT(64) → 8 • SQRT(-64) → NULL Примечания : Если число отрицательное, возвращается NULL.
2.26 TAN#
Синтаксис : TAN(число) Описание : Возвращает тангенс угла. Параметры : • число — угол в радианах. Примеры : • TAN(0.8) → 1.029638557 • TAN(45*PI()/180) → 1
2.27 TRUNC#
Синтаксис : TRUNC(число, [символы]) Описание : Обрезает дробную часть числа до указанного количества знаков (по умолчанию до целого). Параметры : • число — число для обрезания. • символы — количество знаков после запятой (по умолчанию 0). Примеры : • TRUNC(8.9) → 8 • TRUNC(-8.98, 1) → -8.9
3 Функции дат#
3.1 DATE#
Синтаксис : DATE(год, месяц, день) Описание : Возвращает дату в виде порядкового номера на основе указанных года, месяца и дня. Параметры : • год — значение года (от 1 до 4 цифр). • месяц — число месяца (1–12). Если >12, добавляется к году. • день — число дня. Если превышает дни в месяце, увеличивает месяц. Примеры : • DATE(1978, 9, 19) → 1978-09-19 • DATE(2000, 13, 05) → 2001-01-05 • DATE(2000, 3, 35) → 2000-04-04
3.2 DATEDELTA#
Синтаксис : DATEDELTA(дата, дельта-дни) Описание : Возвращает дату после добавления указанного количества дней. Параметры : • дата — дата в формате текста или типа дата. • дельта-дни — количество дней (положительное, отрицательное или 0). Примеры : • DATEDELTA("2008-08-08", -10) → 2008-07-29 • DATEDELTA("2008-08-08", 10) → 2008-08-18
3.3 DATEDIF#
Синтаксис : DATEDIF(start_date, end_date, unit) Описание : Вычисляет разницу между двумя датами в заданной единице измерения (годы, месяцы или дни). Параметры : • start_date — начальная дата периода, поддерживает форматы текста и даты. • end_date — конечная дата периода, поддерживает форматы текста и даты. • unit — единица измерения результата. Допустимые значения: – "Y" или "y" — разница в полных годах. – "M" или "m" — разница в полных месяцах. – "D" или "d" — разница в полных днях. – "MD" или "md" — разница в днях, игнорируя годы и месяцы. – "YM" или "ym" — разница в месяцах, игнорируя годы и дни. – "YD" или "yd" — разница в днях, игнорируя годы. Примеры : • DATEDIF("2001/2/28", "2004/3/20", "Y") → 3 (3 полных года между 28 февраля 2001 и 20 марта 2004). • DATEDIF("2001/2/28", "2004/3/20", "M") → 37 (37 полных месяцев между 28 февраля 2001 и 20 марта 2004). • DATEDIF("2001/2/28", "2004/3/20", "D") → 1116 (1116 полных дней между 28 февраля 2001 и 20 марта 2004).
3.4 DATESUBDATE#
Синтаксис : DATESUBDATE(дата1, дата2, единица) Описание : Возвращает разницу между двумя датами в указанных единицах времени. Параметры : • дата1, дата2 — даты в формате текста или типа дата. • единица — единица времени: "s" (секунды), "m" (минуты), "h" (часы), "d" (дни), "w" (недели). Примеры : • DATESUBDATE("2008-08-08", "2008-06-06", "h") → 1512 • DATESUBDATE("2008-06-06", "2008-08-08", "h") → -1512
3.5 DATETONUMBER#
Синтаксис : DATETONUMBER(дата) Описание : Возвращает количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по Гринвичу. Параметры : • дата — дата в формате текста или типа дата. Примеры : • DATETONUMBER("2008-08-08") → 1218124800000
3.6 DAY#
Синтаксис : DAY(серийный_номер, [формат]) Описание : Возвращает день месяца (1–31) для указанной даты. Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — дата в формате текста или типа дата. • формат — формат даты (необязательно). Примеры : • DAY() → 23 (при серверном времени 2020-10-23 15:36:25) • DAY("2000/1/1") → 1 • DAY("1997-04-20", "yyyy-MM-dd") → 20
3.7 DAYS360#
Синтаксис : DAYS360(start_date, end_date, [method]) Описание : Возвращает количество дней между двумя датами по методу 360-дневного года (12 месяцев по 30 дней). Используется в бухгалтерских расчетах. Параметры : • start_date, end_date — начальная и конечная даты. • method — метод расчета: FALSE (или опущено) — американский (NASD); TRUE — европейский. Примеры : • DAYS360("1998/1/30", "1998/2/1") → 1 Примечания : Не поддерживается в прямом подключении.
3.8 DAYSOFMONTH#
Синтаксис : DAYSOFMONTH(дата) Описание : Возвращает количество дней в месяце указанного года (с 1900). Параметры : • дата — дата в формате текста или типа дата. Примеры : • DAYSOFMONTH("1900-02-01") → 28
3.9 DAYSOFQUARTER#
Синтаксис : DAYSOFQUARTER(дата) Описание : Возвращает количество дней в квартале указанного года (с 1900). Параметры : • дата — дата в формате текста или типа дата. Примеры : • DAYSOFQUARTER("2009-02-01") → 90
3.10 DAYSOFYEAR#
Синтаксис : DAYSOFYEAR(дата) Описание : Возвращает количество дней в указанном году (с 1900). Параметры : • дата — дата в формате текста или типа дата. Примеры : • DAYSOFYEAR("2008-01-01") → 366
3.11 DAYVALUE#
Синтаксис : DAYVALUE(дата) Описание : Возвращает количество дней с 1 января 1900 года до указанной даты. Параметры : • дата — дата в формате текста или типа дата. Примеры : • DAYVALUE("2008/08/08") → 39667
3.12 HOUR#
Синтаксис : HOUR(серийный_номер) Описание : Возвращает часы (0–23) из указанного времени. Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — время в формате текста или типа дата. Примеры : • HOUR(TIME(11,32,40)) → 11 • HOUR() → 15 (при серверном времени 2020-10-23 15:36:25)
3.13 LUNAR#
Синтаксис : LUNAR(year, month, day) Описание : Возвращает дату по лунному календарю, соответствующую указанной дате на китайском языке. Параметры : • year, month, day — год, месяц и день. Примеры : • LUNAR(2011, 7, 21) → двадцать первый день шестого месяца, год Синьмао • LUNAR(2001, 7, 21) → первый день шестого месяца, год Синьси Примечания : Поддерживает период 1900–2100. Не поддерживается в прямом подключении.
3.14 MINUTE#
Синтаксис : MINUTE(серийный_номер, [формат]) Описание : Возвращает минуты (0–59) из указанного времени. Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — время в формате текста или типа дата. • формат — формат времени (необязательно). Примеры : • MINUTE("15:36:25") → 36 • MINUTE("15:36:25", "HH:mm:ss") → 36
3.15 MONTH#
Синтаксис : MONTH(серийный_номер, [формат]) Описание : Возвращает месяц (1–12) из указанной даты. Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — дата в формате текста или типа дата. • формат — формат даты (необязательно). Примеры : • MONTH() → 10 (при серверном времени 2020-10-23 15:36:25) • MONTH("2000/1/1") → 1 • MONTH("1997-04-20", "yyyy-MM-dd") → 4
3.16 MONTHDELTA#
Синтаксис : MONTHDELTA(дата, дельта) Описание : Возвращает дату, смещенную на указанное количество месяцев. Параметры : • дата — дата в формате текста или типа дата. • дельта — количество месяцев (положительное или отрицательное). Примеры : • MONTHDELTA("2008-08-08", 4) → 2008-12-08
3.17 NOW#
Синтаксис : NOW() Описание: Возвращает текущую дату и время на основе системного времени. Параметры : Нет. Примеры : • NOW() → 15:18:38 12 мая 2012 года (при соответствующем системном времени)
3.18 QUARTER#
Синтаксис : QUARTER(серийный_номер, [формат]) Описание : Возвращает квартал (1–4) для указанной даты. Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — дата в формате текста или типа дата. • формат — формат даты (необязательно). Примеры : • QUARTER() → 4 (при серверном времени 2020-10-23 15:36:25) • QUARTER("2000/1/1") → 1 • QUARTER("1997-04-20", "yyyy-MM-dd") → 2
3.19 SECOND#
Синтаксис : SECOND(серийный_номер) Описание : Возвращает секунды (0–59) из указанного времени. Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — время в формате текста или типа дата. Примеры : • SECOND(TIME(11,32,40)) → 40 • SECOND() → 25 (при серверном времени 2010-01-01 15:36:25)
3.20 TIME#
Синтаксис : TIME(часы, минуты, секунды) Описание : Возвращает указанное время. Параметры : • часы — значение от 0 до 23. • минуты, секунды — значения от 0 до 59. Примеры : • TIME(14,40,0) → 14:40:00 • TIME(19,43,24) → 19:43:24
3.21 TODATE#
Синтаксис : TODATE(параметр1, [параметр2, параметр3]) Описание : Преобразует входные данные в дату в зависимости от формата параметров. Параметры : • параметр1 — дата, миллисекунды с 1 января 1970 года или текст в формате даты. • параметр2 — формат даты для анализа текста (необязательно). • параметр3 — язык анализа (например, "ru" для русского, необязательно). Примеры : • TODATE(DATE(2007,12,12)) → 2007-12-12 • TODATE(1023542354746) → 2002-06-08 • TODATE("2007/10/15") → 2007-10-15 • TODATE("1/15/07", "MM/dd/yy") → 2007-01-15
3.22 TODAY#
Синтаксис : TODAY() Описание : Возвращает текущую дату на основе системного времени. Параметры : Нет. Примеры : • TODAY() → 2005-09-10 (при соответствующем системном времени)
3.23 WEEK#
Синтаксис : WEEK(серийный_номер) Описание : Возвращает номер недели указанной даты. Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — дата в формате текста или типа дата. Примеры : • WEEK("2010-01-01") → 52 • WEEK("2010-01-06") → 1 • WEEK() → 52 (при серверном времени 2010-01-01 15:36:25)
3.24 WEEKDATE#
Синтаксис : WEEKDATE(год, месяц, неделя_месяца, день_недели) Описание : Возвращает дату для указанной недели и дня недели в месяце. Параметры : • год — год. • месяц — месяц. • неделя_месяца — номер недели в месяце. • день_недели — день недели (1–7, где -1 обозначает последний день недели). Примеры : • WEEKDATE(2009, 10, 2, 1) → 2009-10-05 • WEEKDATE(2009, 12, 1, -1) → 2009-12-06
3.25 WEEKDAY#
Синтаксис : WEEKDAY(серийный_номер) Описание : Возвращает номер дня недели (0–6, где 0 — воскресенье, 6 — суббота). Параметры : • серийный_номер — дата в формате текста или типа дата. Примеры : • WEEKDAY("2005/9/10") → 6 (суббота) • WEEKDAY("2005/9/11") → 0 (воскресенье)
3.26 YEAR#
Синтаксис : YEAR(серийный_номер) Описание : Возвращает год указанной даты (1900–9999). Если параметр пуст, используется текущее серверное время. Параметры : • серийный_номер — дата в формате текста или типа дата. Примеры : • YEAR("2000-01-01") → 2000 • YEAR() → 2020 (при серверном времени 2020-10-23 15:36:25)
3.27 YEARDELTA#
Синтаксис : YEARDELTA(дата, дельта) Описание : Возвращает дату, смещенную на указанное количество лет. Параметры : • дата — дата в формате текста или типа дата. • дельта — количество лет (положительное или отрицательное). Примеры : • YEARDELTA("2008-10-10", 10) → 2018-10-10
4 Текстовые функции#
4.1 CHAR#
Синтаксис : CHAR(число) Описание : Возвращает символ, соответствующий указанному числовому коду. Параметры : • число — числовой код символа. Примеры : • CHAR(88) → X • CHAR(45) → -
4.2 CODE#
Синтаксис : CODE(текст) Описание : Возвращает числовой код первого символа в текстовой строке. Параметры : • текст — текстовая строка. Примеры : • CODE("S") → 83 • CODE("Spreadsheet") → 83
4.3 CONCATENATE#
Синтаксис : CONCATENATE(текст1, текст2, ...) Описание : Объединяет несколько текстовых строк в одну. Параметры : • текст1, текст2, ... — текстовые элементы (до 30). Примеры : • CONCATENATE("Средняя ", "Цена") → Средняя Цена • CONCATENATE("1", "2") → 12
4.4 ENDWITH#
Синтаксис: ENDWITH(строка1, строка2) Описание : Проверяет, заканчивается ли строка1 на строку2. Возвращает true или false. Параметры : • строка1 — текст для проверки. • строка2 — подстрока для поиска. Примеры : • ENDWITH("SiglaBI", "BI") → 1 • ENDWITH("SiglaBI", "Sigla") → 0 • ENDWITH("SiglaBI", "bi") → 0 Примечания : Чувствительна к регистру.
4.5 EXACT#
Синтаксис : EXACT(текст1, текст2) Описание : Проверяет, идентичны ли две текстовые строки. Возвращает true или false. Параметры : • текст1, текст2 — строки для сравнения. Примеры : • EXACT("Spreadsheet", "Spreadsheet") → 1 • EXACT("Spreadsheet", "S preadsheet") → 0 • EXACT("Spreadsheet", "spreadsheet") → 0 Примечания : Чувствительна к регистру, игнорирует различия в формате.
4.6 FIND#
Синтаксис : FIND(find_text, within_text, [start_num]) Описание : Возвращает индекс первого вхождения подстроки find_text в строке within_text, начиная с указанной позиции. Параметры : • find_text — текст для поиска. • within_text — текст, в котором выполняется поиск. • start_num — начальная позиция поиска (по умолчанию 1). Примеры : • FIND("I", "information") → 0 • FIND("I", "Information") → 1 • FIND("O", "information", 2) → 0 • FIND("o", "information", 6) → 10 Примечания : Индекс начинается с 1. Если подстрока не найдена, возвращается 0.
4.7 FORMAT#
Синтаксис : FORMAT(объект, формат) Описание : Форматирует объект (строка, число, дата) в соответствии с указанным шаблоном. Параметры : • объект — объект для форматирования. • формат — шаблон формата. Примеры : • FORMAT(DATE(2007,1,13), "MM/dd/yyyy") → 01/13/2007 • FORMAT(DATE(2007,1,13), "M-d-yy") → 1-13-07
4.8 INDEXOF#
Синтаксис : INDEXOF(строка, индекс) Описание : Возвращает символ по указанному индексу в строке. Параметры : • строка — текстовая строка. • индекс — позиция символа (начинается с 0). Примеры : • INDEXOF("SiglaBI", 0) → S • INDEXOF("SiglaBI", 2) → g • INDEXOF("SiglaBI", 5) → B
4.9 LEFT#
Синтаксис : LEFT(текст, ном_символа) Описание : Возвращает указанное количество символов слева от текстовой строки. Параметры : • текст — текстовая строка. • ном_символа — количество символов (по умолчанию 1). Примеры : • LEFT("Findsoftware", 8) → Findsoft • LEFT("Findsoftware") → F Примечания : Если ном_символа больше длины текста, возвращается весь текст. Если < 0, возвращается NULL.
4.10 LEN#
Синтаксис : LEN(аргумент) Описание : Возвращает количество символов в строке или длину массива. Пробелы учитываются. Параметры : • аргумент — текст или массив. Примеры : • LEN("Evermoresoftware") → 16 • LEN("Evermore software") → 17 • LEN(["a", "b"]) → 2
4.11 LOWER#
Синтаксис : LOWER(текст) Описание : Преобразует все буквы в строке в нижний регистр. Параметры : • текст — текстовая строка. Примеры : • LOWER("A.M.10:30") → a.m.10:30 • LOWER("Россия") → россия Примечания : Не изменяет небуквенные символы.
4.12 MID#
Синтаксис : MID(текст, start_num, num_chars) Описание : Возвращает указанное количество символов из строки, начиная с заданной позиции. Параметры : • текст — текстовая строка. • start_num — начальная позиция (начинается с 1). • num_chars — количество извлекаемых символов. Примеры : • MID("Siglamoresoftware", 9, 8) → esoftwar • MID("Siglamoresoftware", 30, 5) → "" Примечания : Если start_num < 1 или num_chars < 0, возвращается NULL
4.13 NUMTO#
Синтаксис : NUMTO(число, [булево]) Описание : Преобразует число в текстовое представление на китайском языке. Параметры : • число — число для преобразования. • булево — формат представления (true — последовательное, false — числовое; по умолчанию false). Примеры : • NUMTO(2345, true) → два три четыре пять • NUMTO(2345, false) → две тысячи триста сорок пять • NUMTO(2345) → две тысячи триста сорок пять Примечания : Не поддерживается в прямом подключении.
4.14 PROPER#
Синтаксис : PROPER(текст) Описание : Преобразует первую букву слова и первую букву после небуквенных символов в заглавные, остальные — в строчные. Параметры : • текст — текстовая строка. Примеры : • PROPER("Siglamore Integrated Office") → Siglamore Integrated Office • PROPER("100 percent") → 100 Percent • PROPER("SpreaDSheEt") → Spreadsheet Примечания : Не поддерживается в прямом подключении.
4.15 REGEXP#
Синтаксис : REGEXP(строка, шаблон, [режим]) Описание : Проверяет, соответствует ли строка указанному регулярному выражению. Параметры : • строка — текст для проверки. • шаблон — регулярное выражение. • режим — режим обработки (например, 1 — UNIX_LINES, 2 — CASE_INSENSITIVE, 3 — UNIX_LINES + CASE_INSENSITIVE и т.д.). Примеры : • REGEXP("aaaaac", "ac") → 1 • REGEXP("abc", "a+c") → 0 • REGEXP("Aaaaabbbbbc", "abc", 3) → 1 • REGEXP("Aaaaabbbbbc", "ab*c", 1) → 0 Примечания : Поддерживает различные режимы обработки регулярных выражений.
4.16 REPEAT#
Синтаксис : REPEAT(текст, количество_повторений) Описание : Повторяет текст указанное количество раз. Параметры : • текст — текстовая строка. • количество_повторений — число повторений. Примеры : • REPEAT("$", 4) → $$$$ • REPEAT("Привет", 3) → ПриветПриветПривет
4.17 REPLACE#
Синтаксис : 1. REPLACE(текст, текст_для_замены, новый_текст) 2. REPLACE(текст, start_num, num_chars, новый_текст) Описание : Заменяет часть текста на новую строку или заменяет указанное количество символов с заданной позиции. Параметры : • текст — исходная строка. • текст_для_замены — строка для поиска (в первом варианте). • новый_текст — строка для замены. • start_num — начальная позиция (во втором варианте). • num_chars — количество заменяемых символов (во втором варианте). Примеры : • REPLACE("abcd", "a", "re") → rebcd • REPLACE("a**d", "*d", "rose") → arose • REPLACE("0123456789", 5, 4, "") → 0123*89 • REPLACE("1980", 3, 2, "99") → 1999
4.18 RIGHT#
Синтаксис : RIGHT(текст, количество_символов) Описание : Возвращает указанное количество символов справа от текстовой строки. Параметры : • текст — текстовая строка. • количество_символов — количество символов (по умолчанию 1). Примеры : • RIGHT("Itisinteresting", 6) → esting • RIGHT("Shareholder") → r • RIGHT("Hugesale", 4) → sale Примечания : Если количество_символов < 0, возвращается NULL.
4.19 SPLIT#
Синтаксис : SPLIT(строка1, разделитель) Описание: Разделяет строку на массив подстрок по указанному разделителю. Параметры : • строка1 — текстовая строка. • разделитель — символ или строка для разделения. Примеры : • SPLIT("hello,world,yes", ",") → ["hello", "world", "yes"] • SPLIT("this is very good", " ") → ["this", "is", "very", "good"] • SPLIT("thisisverygood", "") → ["t", "h", "i", "s", "i", "s", "v", "e", "r", "y", "g", "o", "o", "d"] Примечания : Не поддерживается в прямом подключении.
4.20 STARTWITH#
Синтаксис : STARTWITH(строка1, строка2) Описание : Проверяет, начинается ли строка1 с строки2. Возвращает true или false. Параметры : • строка1 — текст для проверки. • строка2 — подстрока для поиска. Примеры : • STARTWITH("SiglaBI", "Sigla") → 1 • STARTWITH("SiglaBI", "BI") → 0 • STARTWITH("SiglaBI", "sigla") → 0 Примечания : Чувствительна к регистру.
4.21 SUBSTITUTE#
Синтаксис : SUBSTITUTE(текст, старый_текст, новый_текст, [номер_вхождения]) Описание : Заменяет указанный текст в строке на новый. Если указан номер вхождения, заменяет только это вхождение. Параметры : • текст — исходная строка. • старый_текст — текст для замены. • новый_текст — новый текст. • номер_вхождения — номер вхождения для замены (необязательно). Примеры : • SUBSTITUTE("data base", "base", "model") → data model • SUBSTITUTE("July 28, 2000", "2", "1", 1) → July 18, 2000 • SUBSTITUTE("July 28, 2000", "2", "1") → July 18, 1000 • SUBSTITUTE("July 28, 2000", "2", "1", 2) → July 28, 1000 Примечания : Не поддерживается в прямом подключении.
4.22 TODOUBLE#
Синтаксис : TODOUBLE(текст) Описание : Преобразует текст в число типа double. Параметры : • текст — текст, представляющий число. Примеры : • TODOUBLE("213.21") → 213.21
4.23 TOINTEGER#
Синтаксис : TOINTEGER(параметр) Описание : Преобразует параметр в целое число. Параметры : • параметр — текст или число. Примеры : • TOINTEGER("123") → 123
4.24 TRIM#
Синтаксис : TRIM(текст) Описание : Удаляет пробелы в начале и конце строки. Параметры : • текст — текстовая строка. Примеры : • TRIM(" Месячный отчет ") → Месячный отчет
4.25 UPPER#
Синтаксис : UPPER(текст) Описание : Преобразует все буквы в строке в верхний регистр. Параметры : • текст — текстовая строка. Примеры : • UPPER("notes") → NOTES
5 Логические функции#
5.1 AND#
Синтаксис : AND(выражение1, выражение2, ...) Описание : Возвращает 1, если все выражения истинны; иначе 0. Параметры : • выражение1, выражение2, ... — логические выражения (true или false). Примеры : • AND(1+7=8, 5+7=12) → 1 • AND(1+7=8, 5+7=11) → 0
5.2 IN#
Синтаксис : IN(выражение, параметр1, параметр2, ...) Описание : Проверяет, содержится ли результат выражения в указанных параметрах. Возвращает 1 (true) или 0 (false). Параметры : • выражение — произвольное выражение (не NULL). • параметр1, параметр2, ... — значения для проверки (должны быть одного типа). Примеры : • IN(1, 1, 2, 3) → 1 • IN(город, "Москва", "Омск", "Тула") → 1 для указанных городов, иначе 0 • DEF(SUM(продажи), [], [IN(город, $параметр_компонента)]) → Суммирует продажи для выбранных городов.
5.3 NOT#
Синтаксис : NOT(условное_выражение) Описание : Выполняет логическое отрицание выражения. Параметры : • условное_выражение — логическое или числовое выражение. Примеры : • NOT(1-2>0) → 1 • NOT(IN(город, "Москва", "Омск")) → 1 для городов, не входящих в список.
5.4 OR#
Синтаксис : OR(выражение1, выражение2, ...) Описание : Возвращает 1, если хотя бы одно выражение истинно; иначе 0. Параметры : • выражение1, выражение2, ... — логические выражения. Примеры : • OR(1+7=8, 5+7=11) → 1 • OR(1+7=9, 5+7=11) → 0
5.5 SWITCH#
Синтаксис : SWITCH(выражение, значение1, результат1, значение2, результат2, ..., другие_результаты) Описание : Возвращает результат, соответствующий значению выражения, или значение по умолчанию. Параметры : • выражение — значение для сравнения. • значение1, значение2, ... — возможные значения. • результат1, результат2, ... — результаты для соответствующих значений. • другие_результаты — значение по умолчанию. Примеры : • SWITCH(5, 3, "Сегодня среда", 4, "Сегодня четверг", "Пятница") → Пятница
6 Функции агрегации#
6.1 AVG_AGG#
Синтаксис : AVG_AGG(массив) Описание : Возвращает совокупное среднее значение поля индикатора в соответствии с текущим измерением. Результат — столбец данных с количеством строк, соответствующим текущему аналитическому измерению. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Примеры : • AVG_AGG(продажи) с измерением "день" → среднесуточные продажи. • AVG_AGG(продажи) с измерением "месяц" → среднемесячные продажи.
6.2 COUNT_AGG#
Синтаксис : COUNT_AGG(массив) Описание : Возвращает количество полей на основе текущего измерения. Результат — столбец данных с количеством строк, соответствующим текущему измерению. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Примеры : • COUNT_AGG(продажи) с измерением "день" → количество ежедневных продаж. • COUNT_AGG(продажи) с измерением "месяц" → количество продаж в месяц.
6.3 COUNTD_AGG#
Синтаксис : COUNTD_AGG(массив) Описание : Возвращает дедуплицированное количество полей в соответствии с текущим измерением. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Примеры : • COUNTD_AGG(продажи) с измерением "день" → дедуплицированное количество ежедневных продаж. • COUNTD_AGG(продажи) с измерением "месяц" → дедуплицированное количество продаж в месяц.
6.4 MAX_AGG#
Синтаксис : MAX_AGG(массив) Описание : Возвращает максимальное значение поля в соответствии с текущим измерением. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Нечисловые поля допустимы только в функции DEF. Примеры : • MAX_AGG(продажи) с измерением "день" → максимальный объем продаж за день. • MAX_AGG(продажи) с измерением "месяц" → максимальный объем продаж за месяц.
6.5 MEDIAN_AGG#
Синтаксис : MEDIAN_AGG(массив) Описание : Возвращает медиану поля индикатора в соответствии с текущим измерением. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Примеры : • MEDIAN_AGG(продажи) с измерением "день" → медианный объем продаж за день. • MEDIAN_AGG(продажи) с измерением "месяц" → медианный объем продаж за месяц.
6.6 MIN_AGG#
Синтаксис : MIN_AGG(массив) Описание : Возвращает минимальное значение поля в соответствии с текущим измерением. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Нечисловые поля допустимы только в функции DEF. Примеры : • MIN_AGG(продажи) с измерением "день" → минимальный объем продаж за день. • MIN_AGG(продажи) с измерением "месяц" → минимальный объем продаж за месяц.
6.7 PERCENTILE_AGG#
Синтаксис : PERCENTILE_AGG(массив, процентиль) Описание : Возвращает значение в указанном процентиле на основе выражения в соответствии с текущим измерением. Процентиль — числовая константа от 0 до 1. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Тексты или даты не поддерживаются. • процентиль — числовая константа от 0 до 1 (например, 0.95). Примеры : • PERCENTILE_AGG(продажи, 0.95) с измерением "день" → продажи на 95-м процентиле за день. • PERCENTILE_AGG(продажи, 0.95) с измерением "месяц" → продажи на 95-м процентиле за месяц. Примечание : Функция появляется в Sigla Vision 1.1+
6.8 STDEV_AGG#
Синтаксис : STDEV_AGG(массив) Описание : Возвращает стандартное отклонение поля индикатора в соответствии с текущим измерением. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Примеры : • STDEV_AGG(продажи) с измерением "день" → стандартное отклонение ежедневных продаж. • STDEV_AGG(продажи) с измерением "месяц" → стандартное отклонение месячных продаж.
6.9 SUM_AGG#
Синтаксис : SUM_AGG(массив) Описание : Возвращает итоговое значение суммирования поля индикатора в соответствии с текущим измерением. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Примеры : • SUM_AGG(продажи) с измерением "день" → ежедневный сводный объем продаж. • SUM_AGG(продажи) с измерением "месяц" → месячный сводный объем продаж.
6.10 VAR_AGG#
Синтаксис : VAR_AGG(массив) Описание : Возвращает дисперсию поля индикатора в соответствии с текущим измерением. Параметры : • массив — результат неагрегатной функции, вычисляющей поле индикатора, измерения или их комбинацию с общей формулой. Примеры : • VAR_AGG(продажи) с измерением "день" → суточная дисперсия продаж. • VAR_AGG(продажи) с измерением "месяц" → месячная дисперсия продаж.
7 Функции быстрых вычислений#
7.1 ACC_SUM#
Синтаксис : ACC_SUM(аг_фун(массив), диапазон) Описание : Суммирует измерения по строкам в соответствии с полями, добавленными вдоль горизонтальной и вертикальной осей, или мерами строк и колонок. Параметры : • аг_фун(массив) — агрегирующая функция или индикатор для суммирования. • диапазон — 0 для суммирования всех данных, 1 для суммирования только в группе. Примеры : • ACC_SUM(SUM_AGG(продажи), 0) с измерением "дата (по годам)" → накопленный объем продаж по годам.
7.2 PREVIOUS_PERIOD#
Синтаксис : PREVIOUS_PERIOD(x_agg(массив)) Описание : Вычисляет значение предыдущего периода на основе поля даты, полученного из измерений строк и колонок. Параметры : • x_agg(массив) — агрегирующая функция или индикатор. Поле будет подсвечено красным, если измерения не соответствуют требованиям. Примеры : • PREVIOUS_PERIOD(SUM_AGG(сумма)) с измерением "дата (по годам, месяцам, дням)" → объем продаж за предыдущий день.
7.3 PERIOD_ANLS#
Синтаксис : PERIOD_ANLS(x_agg(массив), datepart) Описание : Вычисляет значение на конец предыдущего периода на основе поля даты, полученного из измерений строк и колонок. Параметры : • x_agg(массив) — агрегирующая функция или индикатор. • datepart — конец периода ("Y" для года, "M" для месяца). Примеры : • PERIOD_ANLS(SUM_AGG(сумма), "Y") с измерением "дата (по годам, месяцам, дням)" → объем продаж на конец прошлого года. • PERIOD_ANLS(SUM_AGG(сумма), "M") → объем продаж на конец прошлого месяца.
7.4 RANK_ANLS#
Синтаксис : RANK_ANLS(агг_функция(массив), диапазон, порядок) Описание : Вычисляет ранжирование показателей в соответствии с измерениями строк и колонок. Параметры : • агг_функция(массив) — агрегирующая функция или индикатор. • диапазон — 0 для всех данных, 1 для группы. • порядок — "asc" для возрастания, "desc" для убывания. Примеры : • RANK_ANLS(SUM_AGG(сумма), 0, "asc") с измерением "провинция" → рейтинг провинций по объему продаж по возрастанию.
7.5 SAME_PERIOD#
Синтаксис : SAME_PERIOD(x_agg(массив), datepart) Описание : Вычисляет значение для того же периода на основе поля даты, полученного из измерений строк и колонок. Параметры : • x_agg(массив) — агрегирующая функция или индикатор. • datepart — период ("Y" для года, "M" для месяца). Примеры : • SAME_PERIOD(SUM_AGG(сумма), "Y") с измерением "дата (по годам, месяцам, дням)" → объем продаж за тот же день прошлого года. • SAME_PERIOD(SUM_AGG(сумма), "M") → объем продаж за тот же день прошлого месяца.
7.6 TOTAL#
Синтаксис : TOTAL(аг_фун(массив), диапазон, агрегация) Описание : Суммирует показатели по строкам в соответствии с измерениями строк и колонок. Параметры : • аг_фун(массив) — агрегирующая функция или индикатор. • диапазон — 0 для всех данных, 1 для группы. • агрегация — "sum", "avg", "max", "min". Примеры : • TOTAL(SUM_AGG(массив), 0, "avg") с измерением "провинция" → средний объем продаж по провинциям.
8 Аналитические функции#
8.1 CLEAN#
Синтаксис : CLEAN(поле1, поле2, ...)/CLEAN("ALL") Описание : Игнорирует фильтрующие эффекты указанных полей в текущих расчетах аналитической функции. Используется только в DEF, DEF_ADD, DEF_SUB. Параметры : • поле1, поле2, ... — поля измерения/условия, включая вычислительные условия. • "ALL" — игнорирует все фильтрующие эффекты. Примеры : • DEF(SUM(), [провинция, город], [CLEAN(город)]) → игнорирует фильтры по городу. • DEF_ADD(SUM(), [], [CLEAN("ALL")]) → игнорирует все фильтры. Примечание : Функция появляется в Sigla Vision 1.1+
8.2 CLEAN_WIDGET#
Синтаксис : CLEAN_WIDGET(поле1, поле2, ...)/CLEAN_WIDGET("ALL") Описание : Игнорирует фильтрующие эффекты указанных полей в компоненте при расчетах аналитической функции. Используется только в DEF, DEF_ADD, DEF_SUB. Параметры : • поле1, поле2, ... — поля измерения/условия, включая вычислительные условия. • "ALL" — игнорирует все фильтрующие эффекты в компоненте. Примеры : • DEF(SUM(), [провинция, город], [CLEAN_WIDGET(город)]) → игнорирует фильтры по городу в компоненте. • DEF_ADD(SUM(), [], [CLEAN_WIDGET("ALL")]) → игнорирует все фильтры в компоненте. Примечание : Функция появляется в Sigla Vision 1.1+
8.3 DEF#
Синтаксис : DEF(указатель, [размерность1, размерность2, ...], [условие_фильтрации1, условие_фильтрации2, ...]) Описание : Определяет статические указатели, агрегируя данные, удовлетворяющие условиям фильтрации, по указанным измерениям. Параметры : • указатель — агрегирующая функция или индикатор. • размерность1, размерность2, ... — поля измерений (опционально). • условие_фильтрации1, условие_фильтрации2, ... — условия фильтрации (опционально). Примеры : • DEF(SUM_AGG(количество покупок), [продукт], [является участником = "да"]) → количество покупок участников по продуктам.
8.4 DEF_ADD#
Синтаксис : DEF_ADD(указатель, [размерность 1, размерность 2, ...], [условие фильтрации 1, условие фильтрации 2, ...]) Описание : Определяет динамические указатели для агрегации данных. Данные, соответствующие заданным условиям фильтрации, агрегируются по указателю с учетом размерностей области анализа, дополненных указанными размерностями. Параметры размерностей и условий фильтрации являются необязательными. Параметры : • указатель — агрегатная функция (например, SUM_AGG), определяющая значение для агрегации. • [размерность 1, размерность 2, ...] — необязательный список размерностей для дополнительной группировки данных. • [условие фильтрации 1, условие фильтрации 2, ...] — необязательный список условий для фильтрации данных. Примеры : • DEF_ADD(SUM_AGG(количество покупок), [продукт], [является участником = "да"]) с областью анализа "год, месяц" → сумма покупок участников, сгруппированная по продуктам, году и месяцу покупки.
8.5 DEF_SUB#
Синтаксис : DEF_SUB(указатель, [размерность 1, размерность 2, ...], [условие фильтрации 1, условие фильтрации 2, ...]) Описание : Определяет динамические указатели для агрегации данных. Данные, соответствующие заданным условиям фильтрации, агрегируются по указателю, исключая указанные размерности из размерностей области анализа. Параметры размерностей и условий фильтрации являются необязательными. Параметры : • указатель — агрегатная функция (например, SUM_AGG), определяющая значение для агрегации. • [размерность 1, размерность 2, ...] — необязательный список размерностей, исключаемых из группировки. • [условие фильтрации 1, условие фильтрации 2, ...] — необязательный список условий для фильтрации данных. Примеры : • DEF_SUB(SUM_AGG(количество покупок), [продукт], [является участником = "да"]) с областью анализа "год, месяц, продукт" → сумма покупок участников, сгруппированная по году и месяцу покупки.
8.6 EARLIER#
Синтаксис : EARLIER(поле) Описание : Возвращает значение поля для предыдущего вида.Используется только в DEF, DEF_ADD, DEF_SUB для фильтрации между строками. Параметры : • поле — одно поле, константы не поддерживаются. Примеры : • DEF(COUNT_AGG(количество покупок)+1, [количество покупок], [количество покупок < EARLIER(количество покупок)]) → рейтинг по количеству покупок. • DEF(SUM_AGG(количество покупок), [серийный номер], [серийный номер <= EARLIER(серийный номер)]) → сумма покупок по серийному номеру.
8.7 RANK_AGG#
Синтаксис : RANK_AGG([размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], метод_ранжирования) Описание : Ранжирует данные по заданному правилу. Параметры : • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • метод_ранжирования — COMMON, DENSE, UNIQUE, PERCENTILE. Примеры : • RANK_AGG([провинция], [сумма, "desc"], "DENSE") → плотное ранжирование провинций по убыванию суммы. Примечание : Функция появляется в Sigla Vision 1.1+
8.8 WINDOW_AVG#
Синтаксис : WINDOW_AVG(указатель, [размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], [диапазон_окна(начало, конец)]) Описание : Возвращает среднее значение выражения окна. Параметры : • указатель — агрегирующая функция (обязательно). • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • диапазон_окна — диапазон (first, last, 0, -N, N). Примеры : • WINDOW_AVG(SUM_AGG(продажи), [провинция], [дата, "asc"], [first, 0]) → среднее продаж в окне до текущей строки. Примечание : Функция появляется в Sigla Vision 1.1+
8.9 WINDOW_MAX#
Синтаксис : WINDOW_MAX(указатель, [размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], [диапазон_окна(начало, конец)]) Описание : Возвращает максимальное значение выражения окна. Параметры : • указатель — агрегирующая функция (обязательно). • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • диапазон_окна — диапазон (first, last, 0, -N, N). Примеры : • WINDOW_MAX(SUM_AGG(продажи), [провинция], [дата, "asc"], [first, 0]) → максимум продаж в окне до текущей строки. Примечание : Функция появляется в Sigla Vision 1.1+
8.10 WINDOW_MEDIAN#
Синтаксис : WINDOW_MEDIAN(указатель, [размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], [диапазон_окна(начало, конец)]) Описание : Возвращает медиану выражения окна. Параметры : • указатель — агрегирующая функция (обязательно). • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • диапазон_окна — диапазон (first, last, 0, -N, N). Примеры : • WINDOW_MEDIAN(SUM_AGG(продажи), [провинция], [дата, "asc"], [first, 0]) → медиана продаж в окне до текущей строки. Примечание : Функция появляется в Sigla Vision 1.1+
8.11 WINDOW_MIN#
Синтаксис : WINDOW_MIN(указатель, [размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], [диапазон_окна(начало, конец)]) Описание : Возвращает минимальное значение выражения окна. Параметры : • указатель — агрегирующая функция (обязательно). • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • диапазон_окна — диапазон (first, last, 0, -N, N). Примеры : • WINDOW_MIN(SUM_AGG(продажи), [провинция], [дата, "asc"], [first, 0]) → минимум продаж в окне до текущей строки. Примечание : Функция появляется в Sigla Vision 1.1+
8.12 WINDOW_STDEV#
Синтаксис : WINDOW_STDEV(указатель, [размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], [диапазон_окна(начало, конец)]) Описание : Возвращает стандартное отклонение выражения окна. Параметры : • указатель — агрегирующая функция (обязательно). • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • диапазон_окна — диапазон (first, last, 0, -N, N). Примеры : • WINDOW_STDEV(SUM_AGG(продажи), [провинция], [дата, "asc"], [first, 0]) → стандартное отклонение продаж в окне до текущей строки. Примечание : Функция появляется в Sigla Vision 1.1+
8.13 WINDOW_SUM#
Синтаксис : WINDOW_SUM(указатель, [размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], [диапазон_окна(начало, конец)]) Описание : Возвращает сводное значение выражения окна. Параметры : • указатель — агрегирующая функция (обязательно). • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • диапазон_окна — диапазон (first, last, 0, -N, N). Примеры : • WINDOW_SUM(SUM_AGG(продажи), [провинция], [дата, "asc"], [first, 0]) → сумма продаж в окне до текущей строки. Примечание : Функция появляется в Sigla Vision 1.1+
8.14 WINDOW_VAR#
Синтаксис : WINDOW_VAR(указатель, [размерность1, размерность2], [поле_порядка1, порядок, поле_порядка2, порядок], [диапазон_окна(начало, конец)]) Описание : Возвращает дисперсию выражения окна. Параметры : • указатель — агрегирующая функция (обязательно). • размерность1, размерность2 — поля для группировки (опционально). • поле_порядка1, поле_порядка2 — поля для сортировки, с указанием asc/desc (опционально). • диапазон_окна — диапазон (first, last, 0, -N, N). Примеры : • WINDOW_VAR(SUM_AGG(продажи), [провинция], [дата, "asc"], [first, 0]) → дисперсия продаж в окне до текущей строки. Примечание : Функция появляется в Sigla Vision 1.1+
9 Функции цитирования#
9.1 ADD_DIM#
Синтаксис : ADD_DIM (поле измерения 1, поле измерения 2...) Описание : Возвращает все поля измерения в указанные представления и описания. Определение указанного представления: - если ADD_DIM используется, как DEF параметр измерения, то указано внешнее представление. - если ADD_DIM используется в других сценариях, то указывается текущее представление. Вы можете ввести несколько измерений, разделяя их запятой (,). Эту функцию нужно использовать вместе с DEF/WINDOW/FIELD_IN. Параметры : Параметр может быть пустым. Если параметр пуст, то будут выведены все измерения в указанном представленнии. Примеры : • IF(FIELD_IN(ADD_DIM(),[Individual]),Individual Cost,Company Cost) → если пользователь перетащит вычислние в область анализа, то в функции будет использован Individual Cost. В ином случае, будет использован Company Cost.
9.1 FIELD_IN#
Синтаксис : FIELD_IN(Поле_1,Поле_2) Описание : Проверяет, полностью ли в массив Поле_1 входит массив Поле_2 (сортировка игнорируется). Параметры : Необходимо определить два параметра и записать их, как поле массива, например, [$Province,$City]. Примеры : • IF(FIELD_IN(ADD_DIM(),[Individual]),Individual Cost,Company Cost) → если перетащить Individual в область анализа, то в функции будет использован Individual Cost. В ином случае, будет использован Сompany Cost.
9.3 SUB_DIM#
Синтаксис : SUB_DIM (поле измерения 1, поле измерения 2...) Описание : возвращает другие измерения в указанные поля представления и описания Указанное представление: - если SUB_DIM используется, как DEF параметр измерения, то указано внешнее представление. - если SUB_DIM используется в других сценариях, то указывается текущее представление. Вы можете ввести несколько измерения, разделяя их запятой (,). Эту функцию нужно использовать вместе с DEF/WINDOW/FIELD_IN. Параметры : Параметр может быть пустым. Если параметр пуст, то будут выведены все измерения в указанном представлении. Примеры : • DEF_ADD(SUM_AGG(Sales),[Date],[EARLIER(SUB_DIM(Date))=SUB_DIM(Date),Date<=EARLIER(Date)]) для вычисления кумулятивного значения в группе по дате.
10 Другие функции#
10.1 GetUserAdDomain#
Синтаксис : GetUserAdDomain() Описание : Возвращает домен Active Directory текущего пользователя. Параметры : Отсутствуют. Примеры : • GetUserAdDomain() → домен пользователя. Примечание : Функция появляется в Sigla Vision 1.1+
10.2 IFERROR#
Синтаксис : IFERROR(значение1, значение2) Описание : Возвращает значение2, если значение1 не определено (например, бесконечность). Иначе возвращает значение1. Параметры : • значение1, значение2 — выражения одного типа. Неопределённые значения: ∞, −∞, ∞/∞. NULL не считается неопределённым. Примеры : • IFERROR(1, 2) → 1 • IFERROR(100/0, 1) → 1 • IFERROR(NULL, 1) → NULL
10.3 ISNULL#
Синтаксис : ISNULL(объект) Описание : Возвращает 1, если объект — NULL или пустая строка; иначе 0. Параметры : • объект — любое выражение. Примеры : • ISNULL(NULL) → 1 • ISNULL("") → 1 • ISNULL(5) → 0
10.4 NVL#
Синтаксис : NVL(значение1, значение2, значение3, ...) Описание : Возвращает первое ненулевое значение среди параметров. Пустая строка считается NULL. Параметры : • значение1, значение2, значение3, ... — числа или NULL. Примеры : • NVL(12, 20) → 12 • NVL(NULL, 12) → 12 • NVL(NULL, NULL, 10) → 10 • NVL(NULL, NULL) → NULL