Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сортировка по клику на заголовке [D7, XP]


Milashka ©   (2006-07-20 08:15:00) 

Уважаемые Мастера!

Сортировку по клику на заголовке таблицы осуществляю так:

procedure TFPerehod.DBGridEhPrihodTitleBtnClick(Sender: TObject;
 ACol: Integer; Column: TColumnEh);
begin
 if  column.Title.SortMarker=smDownEh
then
 column.Title.SortMarker:=smUpEh
else
  column.Title.SortMarker:=smDownEh;

 Perehods.MakeOrder(Column.FieldName,column.Title.SortMarker);

end;


procedure TMy_DataSets.MakeOrder(FieldName:string;SortMarker:TSortMArkerEh);
begin
OrderSQL.Text:=' order by '+FieldName;
 if SortMarker=smUpEh
  then
    OrderSQL.Text:=OrderSQL.Text+' desc ';

ActivateDataSet();

end;


проблема в том, что в запросе датасета используются псевдонимы для
столюбцов таблиц, а сортировку по ним делать не получается (InterBase).
т.е. в запросе например:
select
  perehod.idperehod, perehod_status.naimenovan  as statname,
....
 
надо написать

order by perehod_status.naimenovan ,
но в таблице FieldName идет statname.

Подскажите пожалуйста, как выйти из данной ситуации.
Может в DBGridEh в столбце хранить полное имя поля (perehod_status.naimenovan), вот только где???


ORMADA   (2006-07-20 12:11:00) [1]

кстати в Ehlib 4.x это делается с помощью встроенной мемори таблы автоматом при наличии DataService
под ИБ там есть....
кстати многи чего ещё нового по сравнению с 3.х


clickmaker   (2006-07-20 11:54:00) [2]

TField.Origin


Наверх

Титульная страница Поиск, карта сайта Написать письмо