Главная страница
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.013 c
14-33325
Карелин Артем
2003-07-23 11:53
2003.08.11
Хочу фичу!!


6-33243
alexd1
2003-06-04 20:48
2003.08.11
Пересылка записи(тип record) через Сокет.


14-33364
Empleado
2003-07-25 20:18
2003.08.11
Пятница-с ...


3-33046
victor_ch
2003-07-15 09:29
2003.08.11
Вызов хранимой процедуры в запросе


14-33343
AlexRush
2003-07-24 18:28
2003.08.11
Ставим на работе новую винду, и вдруг она