![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Код:
select * from Rabota where Data between (:begin) and (:end) ORDER BY :SORT при вызове не работает сортировка Код:
var
n:integer;
begin
Otchet1.Active:=false;
n:=combobox1.ItemIndex;
case n of
0: otchet1.Parameters.ParamByName('sort').Value:='data';
1: otchet1.Parameters.ParamByName('sort').Value:='rasxod';
2: otchet1.Parameters.ParamByName('sort').Value:='prodaja';
3: otchet1.Parameters.ParamByName('sort').Value:='pribol';
4: otchet1.Parameters.ParamByName('sort').Value:='vipolneno';
end;
otchet1.Parameters.ParamByName('begin').Value:=datetostr(date1.Date);
otchet1.Parameters.ParamByName('end').Value:=datetostr(date2.Date);
otchet1.Active:=true;
end;Знаю что то я неправильно делаю - но что? если к примеру использовать прямое обращение то сортировка работает Код:
select * from Rabota where Data between (:begin) and (:end) ORDER BY data |
|
#2
|
|||
|
|||
|
не передавай параметром, а используй
Код:
adoquery1.Sort:='data'; Код:
select * from Rabota where Data between (:begin) and (:end) Код:
var
n:integer;
begin
Otchet1.Active:=false;
otchet1.Parameters.ParamByName('begin').Value:=datetostr(date1.Date);
otchet1.Parameters.ParamByName('end').Value:=datetostr(date2.Date);
otchet1.Active:=true;
n:=combobox1.ItemIndex;
case n of
0: otchet1.Sort:='data';
1: otchet1.Sort:='rasxod';
2: otchet1.Sort:='prodaja';
3: otchet1.Sort:='pribol';
4: otchet1.Sort:='vipolneno';
end;
end; |
|
#3
|
||||
|
||||
|
Спасибо - за помощь! но как теперь сделать чтоб сортировкой можно было управлять - оно теперь сортируется к возрастанию
можно сделать обратное? |
|
#4
|
|||
|
|||
|
Код:
adoquery1.Sort:='data ASC'; Код:
adoquery1.Sort:='data DESC'; если по нескольким полям то: Код:
adoquery1.Sort:='Id , data DESC'; Код:
adoquery1.Sort:='Id ASC,data DESC'; |
|
#5
|
||||
|
||||
|
Спасибо огромное!
|