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

Вниз

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

 
freeman82   (2004-06-17 12:15) [0]

Можно ли в DBGridEh организовать сортировку(не локальную),если НД получаем при помощи ADOStoredProcedure?


 
Artem03   (2004-06-17 12:26) [1]

Можно, но при этом я использую не ADOStoredProcedure, а обычный TADOQuery, где пишу ADOQuery.SQL.Text:="EXEC <SP name>";. Необходимое условие - КАЖДОЕ поле в твоей SP должно иметь имя, (например SUM(...) AS <fieldname>), в противном случае при попытке сортировке при помощи DBGridEh последний ругнется.


 
freeman82   (2004-06-17 12:49) [2]

>Artem03
Так тоже не идет.
Вот пример SP
CREATE PROCEDURE proc1
@param VARCHAR(4)
AS
SELECT     *
FROM table  
WHERE table.field=@param

В программе
dm1.ADOQuery1.SQL.Text :="EXEC proc1 @param="+edit1.Text;


 
sniknik ©   (2004-06-17 13:00) [3]

VARCHAR(4)?  
уверен что такое маленькое поле после задаеш?

тогда уж для гарантии
В программе
dm1.ADOQuery1.SQL.Text :="EXEC proc1 @param="+Copy(edit1.Text,1,1);

а вообще желательно озвучивать кто и куда не идет, а то может не там ловиш.


 
freeman82   (2004-06-17 13:28) [4]

>sniknik
Запрос отрабатывает на OK,но при нажатии на заголовке столбца DBGRidEh,чтобы отсортировать вылетает ошибка.


 
sniknik ©   (2004-06-17 13:44) [5]

а DBGRidEh, ну это не по моей части, могу только попытатся догадатся.
> сортировку(не локальную)
т.е. курсор у тебя серверный. а на это скорее всего ограничение есть. попробуй к примеру с "другого конца" ADOQuery1.Sort:= "[Field Name]"; посмотри что скажет, наверняка будет более полная инфа чем посто "ошибка". кстати, куда она вылетает? и каким рейсом?
DBGRidEh должен пользоватся похожим механизмом сортировки, т.е. иметь данные для нее на локале. что будет если fetchall сделать?


 
freeman82   (2004-06-17 13:56) [6]

>sniknik
На сколько я понял DBGRidEh просто добавляет в конец SQL запроса
ORDER BY.Еще у него есть свойтво SortLocal:boolean,если true то сортировка происходит в сетке DBGRidEh без повторного запроса к серверу, но в этом случае не происходит перемещения по НД.т.е. нет связи TStoredProcedure->TDataSourse->TDBGrid



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
3-1087281540
AlexXn
2004-06-15 10:39
2004.07.11
Картинки в БД


14-1088150665
AlexG
2004-06-25 12:04
2004.07.11
Переводчики с иностранного..


14-1087942309
Феликс
2004-06-23 02:11
2004.07.11
Георгий Ярцев: "Мы успешно съездили на Евро-2004"


14-1088091866
FX
2004-06-24 19:44
2004.07.11
Preview


14-1087920563
Art_Z
2004-06-22 20:09
2004.07.11
Конкурс на самую интересную идею!