<vData> CLIP(<sFuncName>, [<Param1>, ..., <ParamN>) TRUE || FALSE COMPILEFILE(<sFileName>, <sFlags>, <@sError>) <CodeBlock> COMPILESTRING(<sString>, <@sError>) bCurrentErrorHandlerERRORBLOCK([<bErrorHandler>]) LastBlockValue EVAL(<bBlock>, [<BlockArg list>]) bFieldBlock FIELDBLOCK(<cFieldName>) bFieldWBlock FIELDWBLOCK(<cFieldName>, <nWorkArea>) <CodeBlock> LOAD(<sFileName>) <CodeBlock> LOADBLOCK(<sFileName>) bMemvarBlock MEMVARBLOCK(<cMemvarName>) <nTaskID> START(<vTask>, [<vPar1>,,, <vParN>])
CLIP(<sFuncName>, [<Param1>, ..., <ParamN>) --> <vData>
CLIP() выполняет функцию с именем <sFuncName> и возвращает результат выполнения.
EVAL(<блок кода>,[<список аргументов>]) --> значение последнего выражения
EVAL() является функцией обработки блока кода. Это наиболее мощное средство в системе xClipper для выполнения блоков кода. Блок кода является особым значением данных, которое относится к части компилированного кода программы. Для получения дополнительной информации по блокам кода читайте главу "Основные концепции".
Для выполнения блока кода нужно вызвать функцию EVAL(), передав ей блок кода и набор параметров. Параметры передаются блоку перед его выполнением. Блоки кода могут представлять собой последовательность выражений, разделенных запятыми. Когда блок кода выполняется, возвращаемым значением является значение последнего выражения в блоке.
Блок кода обычно компилируется при компиляции xClipper-программы. Однако бывают случаи, когда во время выполнения программы возникает необходимость компилировать блок кода из символьной строки. (Например, при использовании оператора (&)).
EVAL() часто используется для создания функций - итераторов. Это такие функции, которые применяют блок к каждому элементу структуры данных. AEVAL(), ASORT(), ASCAN() и DBEVAL() являются функциями - итераторами. AEVAL(), например, выполняет блок для каждого элемента в массиве.
<блок кода> | является выполняемым блоком кода. |
<список аргументов> | является списком аргументов, которые посылаются в блок кода перед его выполнением. |
Returns : | EVAL() возвращает значение последнего выражения в блоке. Блок кода может возвращать значение любого типа. |
See also : | AEVAL() ASCAN() ASORT() DBEVAL() |
FIELDBLOCK(<поле базы>) --> блок кода
FIELDBLOCK() - функция баз данных, создающая блок кода, при выполнении которого функцией EVAL() с аргументом, значение аргумента присваивается <поле базы>. При выполнении без аргумента кодовый блок возвращает текущее значение <поле базы>.
Существование <поле базы> не требуется при создании блока кода, но необходима его доступность в текущей либо указанной алиасом рабочей области при вызове функции EVAL() для выполнения блока кода.
<поле базы> | - имя поля базы данных. |
Returns : | FIELDBLOCK() возвращает блок кода, предназначенный для либо присваивания нового значения, либо считывания текущего значение данного поля. |
See also : | FIELDWBLOCK() MEMVARBLOCK() |
FIELDWBLOCK(<имя поля>,<номер рабочей области>) --> блок кода
FIELDWBLOCK() - функция баз данных, создающая блок кода, при выполнении которого функцией EVAL(), сначала выбирается рабочая область - <номер рабочей области>. Если аргумент блока кода был передан функцией EVAL(), то блок кода присваивает <поле базы> значение аргумента. При выполнении без аргумента, кодовый блок возвращает текущее значение <поле базы>.
Существование <поле базы> не требуется при создании блока кода, но необходима его доступность в указанной рабочей области при вызове функции EVAL() для выполнения блока кода.
<имя поля> | - имя поля базы данных, заданное как символьная строка. |
<номер рабочей области> | - номер рабочей области, где находится поле, заданное как числовое значение. |
Returns : | FIELDWBLOCK() возвращает блок кода, предназначенный либо для присваивания нового значения, либо для считывания текущего значения данного поля. |
See also : | FIELDBLOCK() MEMVARBLOCK() |
MEMVARBLOCK(<имя переменной памяти>) --> блок кода
Блок кода, созданный функцией MEMVARBLOCK(), имеет два действия, зависящих от того, был ли передан аргумент блоку кода при его вычислении. Если блок кода вычислялся с аргументом, то он присваивает значение аргумента <имя переменной памяти>. Если вычислялся без аргумента, то кодовый блок возвращает значение <имя переменной памяти>.
<имя переменной памяти> | - имя переменной, с которой будет связан блок кода, задается как символьная строка. |
Returns : | MEMVARBLOCK() возвращает блок кода, предназначенный либо для присваивания нового значения, либо для считывания текущего значения переменной памяти. Если <имя переменной памяти> не существует, то MEMVARBLOCK() возвращает NIL. |
See also : | FIELDBLOCK() FIELDWBLOCK() |
Пред. | Начало | След. |
TASK | Уровень выше | VIDEO |