![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сортировка базы [D7, Paradox]
Viktop © (2005-10-06 18:52:00)Как при щелчке в DBGrid (по заголовку столбца) отсортировать этот столбец
Floppy (2005-10-09 17:08:00) [1]> Anatoly Podgoretsky © (09.10.05 13:46) [10]
А причем здесь Сортировка таблицы делается с помощь БДЕ функции dbiSortTableРечь то идет о гриде а не о таблице???
Viktop (2005-10-09 16:38:00) [2]Вроде сделал
procedure TfmMain.dgMainTitleClick(Column: TColumn);
begin
try
Table.IndexFieldNames := Column.FieldName;
except
end;
end;
Anatoly Podgoretsky (2005-10-09 13:46:00) [3]Сортировка таблицы делается с помощь БДЕ функции dbiSortTable - настоятельно не рекомендую не делать этого, еще в начале 80 годов отказались от сортировки, в пользу упорядочивания вывода.
Для Парадокса нормальное упорядочивание сделать нельзя.
Floppy (2005-10-09 11:46:00) [4]А лучше прогуляться сюда:
http://delphiworld.narod.ru/_all_articles_.html
Здесь есть практически все
Floppy (2005-10-09 11:33:00) [5]Идея очень проста:
procedure TForm1.ListView1ColumnClick(Sender: TObject; Column: TListColumn);
begin
CustomNameSortProc(Item1, Item2: TListItem; ParamSort: integer):
end;
function CustomNameSortProc(Item1, Item2: TListItem; ParamSort: integer): integer; stdcall;
begin
result:=0;
if (item1.SubItems[colN])> (item2.SubItems[colN]) then
Result :=1
else
if (item1.SubItems[colN])< (item2.SubItems[colN]) then
Result :=-1;
end;
возможно где-то не корретно, но я объявляю это в глобальных переменных:)
var ColN: Byte;
//colN - номер "колонки" и определяю и назначаю при клике на колонку
Floppy (2005-10-09 11:17:00) [6]Это не есть сортировка базы - это сортировка отображения"
Если подождешь, то пришлю код или ссылку:)
Плохиш (2005-10-09 11:04:00) [7]Удалено модератором
Примечание: Воспитательную работу я сам проведу
Viktop (2005-10-09 09:09:00) [8]Удалено модератором
Примечание: Личная переписка
Viktop (2005-10-07 08:46:00) [9]to Desdechado
А как это сделать?
И ещё вопроспара вопросов:
2. если индекс составной (фамилия+имя), то как происходит сортировка.
3. как преодолеть размер строки (надо, чтобы более 255 символов, примерно 400)
Viktop (2005-10-07 04:39:00) [10]Удалено модератором
Примечание: Личная переписка
Desdechado (2005-10-06 21:50:00) [11]сортируется не "база", а отображаемый набор данных
если это у тебя таблица (TTable), переключаешь на соответствующий индекс
если это TQuery, то можно сделать перезапрос к базе, а можно использовать ClientDataSet, он поддерживает сортировку без переобращения к БД
Weare (2005-10-06 18:56:00) [12]Удалено модератором
Примечание: Личная переписка