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

Материал из GB wiki
Перейти к: навигация, поиск
 
Строка 14: Строка 14:
 
|Пример=IterateDataSet(`Res`, Info(Id)) <--датасет задан по имени<br/>
 
|Пример=IterateDataSet(`Res`, Info(Id)) <--датасет задан по имени<br/>
 
IterateDataSet(dsWorks.GBActions, Info(Id)) <--датасет задан полем<br/>
 
IterateDataSet(dsWorks.GBActions, Info(Id)) <--датасет задан полем<br/>
:varDS:=ds.$data, IterateDataSet(:varDS, Info(Id)) <--датасет задан переменной<br/>
+
<nowiki>:</nowiki>varDS:=ds.$data, IterateDataSet(:varDS, Info(Id)) <--датасет задан переменной<br/>
 
IterateDataSet(Gb_Get(11, 1128, `Goodies`), Info(Id)) <--датасет задан выражением
 
IterateDataSet(Gb_Get(11, 1128, `Goodies`), Info(Id)) <--датасет задан выражением
 
}}
 
}}

Текущая версия на 11:56, 13 апреля 2017

Осуществляет поочередное обращение к строкам датасета. Пробегает по датасету любой структуры и для каждой его строки выполняет указанное выражение.

Синтаксис

ITERATEDATASET (Имя датасета,Выражение)

Аргументы

Имя датасета
строка, определяющая имя датасета. Может сопровождаться постфиксом .CLONE, в этом случае будет обработана копия заданного датасета.
Вместо строки с именем датасета можно задавать поле (или переменную), содержащее датасет, либо выражение, результатом которого является датасет.
Выражение
действие, которое будет выполнено на каждой строке датасета. Обращаться к полям датасета, по которому осуществляется проход, следует без префикса. В примере, приведенном ниже, обращение Res.Id было бы неверным.

Тип результата

Нет

Примеры

IterateDataSet(`Res`, Info(Id)) <--датасет задан по имени
IterateDataSet(dsWorks.GBActions, Info(Id)) <--датасет задан полем
:varDS:=ds.$data, IterateDataSet(:varDS, Info(Id)) <--датасет задан переменной
IterateDataSet(Gb_Get(11, 1128, `Goodies`), Info(Id)) <--датасет задан выражением