EVAL — различия между версиями

Материал из GB wiki
Перейти к: навигация, поиск
(Importing text file)
 
 
(не показаны 2 промежуточные версии этого же участника)
Строка 2: Строка 2:
 
|Название=EVAL
 
|Название=EVAL
 
|Описание=Функция позволяет вычислить значение выражения, которое находится в строке. Отличается от EVALUATE_EXPRESSION только тем, что вычисление производится на чистом датасете.
 
|Описание=Функция позволяет вычислить значение выражения, которое находится в строке. Отличается от EVALUATE_EXPRESSION только тем, что вычисление производится на чистом датасете.
|Синтаксис=EVAL ('''Выражение''')
+
|Синтаксис=EVAL ('''Выражение''', '''json''')
 
|Аргументы=
 
|Аргументы=
 
{{Аргумент
 
{{Аргумент
 
  |Название=Выражение
 
  |Название=Выражение
 
  |Пояснение=Строка, в которой содержится вычисляемое выражение.
 
  |Пояснение=Строка, в которой содержится вычисляемое выражение.
 +
}}
 +
{{Аргумент
 +
|Название=json
 +
|Пояснение=Строка, можно задать значение "json" для парсинга JSON (начиная с версии 1.9.0.31)
 
}}
 
}}
 
|Результат=Значение произвольного типа.
 
|Результат=Значение произвольного типа.
|Пример=EVAL (":"+:varname) - получить значение переменной, имя которой находится в другой переменной
+
|Пример=
 +
Получить значение переменной, имя которой находится в другой переменной
 +
Eval(":"+:varname)
 +
 
 +
Добываем данные из JSON
 +
:data:=Eval(:data,`json` ),
 +
Info(
 +
  :data['providerName']
 +
),
 +
IterateList(
 +
  :data[`items`],
 +
  :row,
 +
  Info(
 +
    :row[`code`]
 +
  )
 +
)
 +
 
 
}}
 
}}

Текущая версия на 10:55, 31 октября 2017

Функция позволяет вычислить значение выражения, которое находится в строке. Отличается от 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`]
  )
)