Руководство разработчика

Функция SQL_КЛОНИРОВАТЬ

Функция SQL_КЛОНИРОВАТЬ позволяет создать независимую копию другого объекта типа ТИП_SQL. Копия позволяет работать с той же выборкой записей, что и объект-источник. При закрытии, изменении выборки или изменении позиции текущей записи в объекте-копии, объект-источник не затрагивается этими изменениями.

В начальном состоянии у объекта-копии текущая запись совпадает с текущей записью объекта-источника. Для доступа к полям текущей записи через объект-копию надо вызвать метод СЧИТАТЬ.

Если исходная выборка была получена путем вычисления сложного SQL запроса в т.ч. многотабличного, то при создании объекта-копии эти вычисления не выполняются повторно. Поэтому создание объекта-копии предпочтительнее повторному открытию файла или повторному выполняению SQL запроса.

ФУНКЦИЯ ТИП_SQL: SQL_КЛОНИРОВАТЬ(ТИП_SQL: источник)

Параметры

источник
Исходный объект для клонирования.

Возвращаемое значение

Новый объект, независимая копия объекта-источника.

Пример использования

бд1 = SQL_ОТКРЫТЬ("fruits.dbf")
бд1.ПЕРЕЙТИ(4)
ОТЛАДКА(бд1.ПОЛЕ("NAME")) // "Pear" - значение поля для 4-ой записи

бд2 = SQL_КЛОНИРОВАТЬ(бд1)
бд2.СЧИТАТЬ // заполняем буфер текущей записи
ОТЛАДКА(бд2.ПОЛЕ("NAME")) // "Pear" - также 4-ая запись текущая

бд2.ПЕРЕЙТИ(7) // переходим на 7-ю запись
ОТЛАДКА(бд2.ПОЛЕ("NAME")) // "Grapes" - значение поля для 7-ой записи

ОТЛАДКА(бд1.ПОЛЕ("NAME")) // "Pear" - у объекта бд1 по прежнему текущая 4-ая запись

См. также: