Заполнения массива набором записей

Материал из K3-Macro
Макро | Унифицированная работа с базами данных | Подключение к базе данных | Получение набора данных | Информация о наборе данных | Навигация по набору данных | Получение данных из набора | Модификация данных | Транзакции | Вспомогательные функции | Заполнения массива набором записей

Int FieldToArray(int <IDRset>, int <FieldNum>|string <FieldName>, varname Array <Arr>[, int <Frec>[, int <Lrec>]])

Функция FieldToArray заполняет массив <Arr> содержимым поля <FieldNum> (<FieldName>) набора записей с номером <IDRset>. Функция возвращает количество заполненных элементов массива.

Необязательные параметры <Frec> и <Lrec> задают первую и последнюю запись набора записей, которые будут переданы в массив. Если указано только <Frec>, то значение интерпретируется, как количество записей, начиная с первой, которые попадут в массив <Arr>. Если ни одно из значений <Frec> и <Lrec> не указано, то в массив попадают все записи набора записей.

Параметр <FieldNum> (<FieldName>) задаёт номер поля (с нуля) или имя поля, значения которого записываются в массив.

Если количество записей больше размерности массива, то в массив заносятся значения поля для количества записей, не превышающих размерность массива. В этом случае количество заполненных элементов массива (результат, который возвращает функция) будет равняться размерности массива.

Если по каким-то причинам массив не удается заполнить (нет поля с указанным номером, номер начальной записи больше номера конечной и пр.), то функция возвращает ноль.


Int RecToArray(int <IDRset>, int <RecNum>, varname array <Arr>[, int <Ffield>[, int <Lfield>]])

Функция RecToArray заполняет массив <Arr> содержимым записи <RecNum> набора записей с номером <IDRset>. Функции возвращает количество заполненных элементов массива.

Необязательные параметры <Ffield> и <Lfield> задают первое и последнее поле, которые будут переданы в массив. Если указано только <Ffield>, то значение интерпретируется, как количество полей, начиная с нулевого, которое попадет в массив <Arr>. Если ни одно из значений <Ffield> и <Lfield> не указано, то в массив попадают все поля.

Параметр <RecNum> задаёт номер записи (с единицы), значения полей которой записываются в массив.

Если количество полей больше размерности массива, то в массив заносятся значения записи для количества полей, не превышающих размерность массива. В этом случае количество заполненных элементов массива (результат, который возвращает функция) будет равняться размерности массива.

Если по каким-то причинам массив не удается заполнить (нет записи с указанным номером, номер начального поля больше номера конечного и пр.), то функция возвращает ноль.


Int TableToArray(int <IDRset>, varname array <Arr>, int <Ffield>, int <Lfield>[, int <Frec>[, int <Lrec>]])

Функция TableToArray заполняет массив <Arr> по строкам содержимым набора записей с номером <IDRset>. Функция возвращает количество заполненных элементов массива. Массив должен быть двумерным (описан командой defarr n[<x>,<y>]). При этом первый индекс массива соответствует номеру поля, второй – номеру записи.

Параметры <Ffield> и <Lfield> задают первое и последнее поле набора записей, которые будут переданы в массив. Необязательные параметры <Frec> и <Lrec> задают первую и последнюю запись набора. Если указано только <Frec>, то значение интерпретируется, как количество записей, начиная с первого, которые попадут в массив <Arr>. Если ни одно из значений <Frec> и <Lrec> не указано, то в массив попадают все записи набора.

Если количество полей больше размерности массива, то в массив заносятся значения записи для количества полей и записей, не превышающих размерности массива. В этом случае количество заполненных элементов массива (результат, который возвращает функция) будет равняться произведению размерностей массива.

Если по каким-то причинам массив не удается заполнить (нет записи с указанным номером, номер начального поля больше номера конечного и пр.), то функция возвращает ноль.


Макро | Унифицированная работа с базами данных | Подключение к базе данных | Получение набора данных | Информация о наборе данных | Навигация по набору данных | Получение данных из набора | Модификация данных | Транзакции | Вспомогательные функции | Заполнения массива набором записей