Tab.Copy

From SunFlurry wiki
Jump to: navigation, search
  Copy (Копия таблицы)
Объект:Таблица
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Визуальность:Нет

Функция создает новый объект таблицы и заполняет ее столбцами, строками и значениями из текущей таблицы. Для больших таблиц, подобная операция может занять продолжительное время. Функция может использоваться, когда, к примеру, исходную таблицу необходимо сохранить, однако, требуется также получение группировок таблицы, либо в подобных ситуациях.

Синтаксис

Tab.Copy():<Новая таблица (TAB)>

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

Возвращается таблица, полностью соответствующая текущей, однако, являющаяся новым объектом.

Примеры

//Создается и заполняется таблица значений
aTab:=Tab.Create("b1,b2,b3,b4");

aTab.AddLine("b1,b2,b3,b4",1,2,3,4);
aTab.AddLine("b1,b2,b3,b4",2,2,3,33);
aTab.AddLine("b1,b2,b3,b4",3,5,5,4);
aTab.AddLine("b1,b2,b3,b4",4,2,3,4);
aTab.AddLine("b1,b2,b3,b4",4,2,3,77);
aTab.AddLine("b1,b2,b3,b4",5,2,3,4);

//Создается копия таблицы, новый объект.
bTab:=aTab.Copy();
//Таблица bTab группируется по столбцам b2 и b3, оригинальная таблица aTab не изменяется
bTab.Group("b2,b3","b1,b4");

Message("Таблица aTab:");
aTab.Select();
While aTab.Next() Do
  Message(""+aTab.b1+"; "+aTab.b2+"; "+aTab.b3+"; "+aTab.b4);
EndDo;

Message("Таблица bTab:");
bTab.Select();
While bTab.Next() Do
  Message(""+bTab.b1+"; "+bTab.b2+"; "+bTab.b3+"; "+bTab.b4);
EndDo;

//Будет выведено последовательно:
//"Таблица aTab:"
//"1; 2; 3; 4"
//"2; 2; 3; 33"
//"3; 5; 5; 4"
//"4; 2; 3; 4"
//"4; 2; 3; 77"
//"5; 2; 3; 4"
//"Таблица bTab:"
//"16; 2; 3; 122"
//"3; 5; 5; 4"