Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.11;
Скачать: CL | DM;

Вниз

Сортировка   Найти похожие ветки 

 
Spawn ©   (2003-07-17 19:27) [0]

Можно ли указывать поля по которым нужно сортировать в параметрах? То есть хочется чего то такого:


procedure TForm1.DBGridTitleClick(Column: TColumn);
var
IsActive:Boolean;
begin
with DM.IBDataSet1 do
begin
IsActive:=Active;
Active:=False;
SelectSQL.Clear;
SelectSQL.Add("SELECT * FROM Doc ORDER BY :FIELD");
ParamByName(":FIELD").AsString:=Column.FieldName;
if IsActive then
Active:=True;
end;
end;

Так же возникает такой вопрос - при таком запросе идет обращение к серверу. Можно ли сделать сортировку по уже принятому НД (Может при помощи еще одного DataSource, подключонного к DataSource с существующим НД? Или может метод Prepare убыстрит такие сортировки?).


 
MsGuns ©   (2003-07-17 19:31) [1]

А так что, нельзя ?

SelectSQL.Clear;
SelectSQL.Add("SELECT * FROM Doc ORDER BY "+
Column.FieldName);



 
Spawn ©   (2003-07-17 19:36) [2]

MsGuns © (17.07.03 19:31)
А ведь точно) Сенк.


 
MsGuns ©   (2003-07-17 19:56) [3]

Кстати, а это что за масло масляное c проверкой открытости (манипуляции с перем.IsActive ? Достаточно, ИМХО, банальное

if not Q.Active then exit;
Q.Close;

...

try
Q.Open;
except
ShowMessage("Не сложилось :)");
exit;
end;


или я не прав ?



 
Spawn ©   (2003-07-17 20:13) [4]

Просто в проге есть возможность отключения от базы данных. И я в другом фрагменте кода использовал данную переменную для сохранения этого факта. Этот код я быстренько набросал, забыв об етом. Но уже подправил)))



Страницы: 1 вся ветка

Текущий архив: 2003.08.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
1-33202
Lt
2003-07-29 11:04
2003.08.11
TStrings и TListView


14-33322
Мимо проходил
2003-07-24 14:45
2003.08.11
Брата никто не видел?


1-33218
alexander_ua
2003-07-29 13:44
2003.08.11
---|Ветка была без названия|---


14-33323
GebbelZ
2003-07-24 00:21
2003.08.11
дополнительные кнопки клавиатуры & WinAmp


1-33163
Pauk
2003-07-27 14:14
2003.08.11
Caption