EVAL — различия между версиями
Материал из GB wiki
Bars (обсуждение | вклад) (Importing text file) |
Alexey (обсуждение | вклад) |
||
(не показано 5 промежуточных версий этого же участника) | |||
Строка 2: | Строка 2: | ||
|Название=EVAL | |Название=EVAL | ||
|Описание=Функция позволяет вычислить значение выражения, которое находится в строке. Отличается от EVALUATE_EXPRESSION только тем, что вычисление производится на чистом датасете. | |Описание=Функция позволяет вычислить значение выражения, которое находится в строке. Отличается от EVALUATE_EXPRESSION только тем, что вычисление производится на чистом датасете. | ||
− | |Синтаксис=EVAL ('''Выражение''') | + | |Синтаксис=EVAL ('''Выражение''', '''json''') |
|Аргументы= | |Аргументы= | ||
{{Аргумент | {{Аргумент | ||
|Название=Выражение | |Название=Выражение | ||
|Пояснение=Строка, в которой содержится вычисляемое выражение. | |Пояснение=Строка, в которой содержится вычисляемое выражение. | ||
+ | }} | ||
+ | {{Аргумент | ||
+ | |Название=json | ||
+ | |Пояснение=Строка, можно задать значение "json" для парсинга JSON (начиная с версии 1.9.0.31) | ||
}} | }} | ||
|Результат=Значение произвольного типа. | |Результат=Значение произвольного типа. | ||
− | |Пример= | + | |Пример= |
+ | Получить значение переменной, имя которой находится в другой переменной: | ||
+ | Eval( `:`+:varname ) | ||
+ | |||
+ | Добываем данные из JSON: | ||
+ | :data:=Eval( :data,`json` ), | ||
+ | Info( | ||
+ | :data[`providerName`] | ||
+ | ), | ||
+ | IterateList( | ||
+ | :data[`items`], | ||
+ | :row, | ||
+ | Info( | ||
+ | :row[`code`] | ||
+ | ) | ||
+ | ) | ||
+ | |||
+ | Преобразовать дату из формата ISO: | ||
+ | :date:=`2024-04-12T15:31:13+07:00`, | ||
+ | :Res:=Eval( `['`+:date+`']`,`json` ), | ||
+ | Info( :Res[0] ) | ||
+ | результат (тип – Date): 12.04.2024 15:31:13 | ||
}} | }} |
Текущая версия на 07:29, 15 июля 2024
Функция позволяет вычислить значение выражения, которое находится в строке. Отличается от EVALUATE_EXPRESSION только тем, что вычисление производится на чистом датасете.
Синтаксис
EVAL (Выражение, json)
Аргументы
- Выражение
- Строка, в которой содержится вычисляемое выражение.
- json
- Строка, можно задать значение "json" для парсинга JSON (начиная с версии 1.9.0.31)
Тип результата
- Значение произвольного типа.
Примеры
Получить значение переменной, имя которой находится в другой переменной:
Eval( `:`+:varname )
Добываем данные из JSON:
:data:=Eval( :data,`json` ), Info( :data[`providerName`] ), IterateList( :data[`items`], :row, Info( :row[`code`] ) )
Преобразовать дату из формата ISO:
:date:=`2024-04-12T15:31:13+07:00`, :Res:=Eval( `['`+:date+`']`,`json` ), Info( :Res[0] )
результат (тип – Date): 12.04.2024 15:31:13