EVAL — различия между версиями
Материал из GB wiki
Alexey (обсуждение | вклад) |
Alexey (обсуждение | вклад) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 13: | Строка 13: | ||
}} | }} | ||
|Результат=Значение произвольного типа. | |Результат=Значение произвольного типа. | ||
− | |Пример= | + | |Пример= |
+ | Получить значение переменной, имя которой находится в другой переменной: | ||
+ | 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