Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
3-1087045844
Karlson
2004-06-12 17:10
2004.07.11
Фильтрация в union all


3-1087199777
denis24
2004-06-14 11:56
2004.07.11
редактирование рез-татов запроса в гриде


3-1087455401
vic1
2004-06-17 10:56
2004.07.11
Автосумма


1-1087935188
Art
2004-06-23 00:13
2004.07.11
Пацаны выручайте, диплом. Короче, как я понял свойство формы Pixe


6-1084457382
perec
2004-05-13 18:09
2004.07.11
Посылка потоков через сокеты.




   Наверх