Форум: "Базы";
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];
ВнизDBISortTable: сортировка по нескольким полям. Найти похожие ветки
← →
deleon (2002-03-12 14:08) [12]Ну это уж слишком...
(пора брать деньги за вопросы по Bde API - буду вторым Билли :))))
(с)deleon
procedure TForm1.Button1Click(Sender: TObject);
const
SortFieldCount = 2;
var
Db: TDatabase;
SaveActive: Boolean;
CurProp: CurProps;
SortFlds: array[0..SortFieldCount-1]of Word;
CaseIns: array[0..SortFieldCount-1]of Bool;
SortOrd: array[0..SortFieldCount-1]of SORTOrder;
RecSort: Integer;
begin
try
SaveActive := Tbl.Active;
Tbl.DisableControls;
Tbl.Active := True;
SortFlds[0] := 1; {номера полей в физ. структуре (1..n)}
SortFlds[1] := 2; {номера полей в физ. структуре (1..n)}
CaseIns[0] := True; {Case insensitive for sort column (True/False)}
CaseIns[1] := True; {Case insensitive for sort column (True/False)}
SortOrd[0] := sortASCEND; { Sort Order (sortASCEND/sortDESCEND)}
SortOrd[1] := sortASCEND; { Sort Order (True/sortDESCEND)}
Check(DbiGetCursorProps(Tbl.Handle, CurProp));
Db := Tbl.Database;
Tbl.Active := False;
Check(DbiSortTable(Db.Handle,
CurProp.szName, CurProp.szTableType,
nil, nil, nil, nil,
SortFieldCount,{ кол-во полей в массиве }
@SortFlds, { массив сортируемых полей }
@CaseIns, { массив CaseIns }
@SortOrd, { массив ордеров }
nil, False, nil, RecSort));
finally
Tbl.Active := SaveActive;
Tbl.EnableControls;
end;
end;
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c