rxMemDataset + rxDBGrid - сортировка
Модераторы: alexs, Модераторы
rxMemDataset + rxDBGrid - сортировка
А как в самом гриде работает сортировка из встроенной формы? Попробовал - вылетает AV. Полез смотреть, а сортировки там как раз и нет. Тело процедуры пустое. Пришлось переписать на kbMemTable.
TRxMemoryData
SortOnFields(FieldName);
SortOnFields(FieldName, TRUE, TRUE);
SortOnFields(FieldName);
SortOnFields(FieldName, TRUE, TRUE);
Да про это я в курсе. Не совсем удобно, но можно. Хотелось бы заюзать механизм самого грида.
так грид это и будет делать под капотом
Так вот не делает же. AV вылезает.
Эх, ладно. Хотел малой кровью обойтись, чтоб не придумывать для юзверей сложности.
Эх, ладно. Хотел малой кровью обойтись, чтоб не придумывать для юзверей сложности.
это для тебя пользователи - юзвери, а ты обычный дилетант
Хамить-то зачем? Или у тебя такой стиль общения?MaratIsk писал(а):это для тебя пользователи - юзвери, а ты обычный дилетант
и это плохоalexs писал(а):Грид не сортирует данные.
- alexs
- долгожитель
- Сообщения: 4066
- Зарегистрирован: 15.05.2005 23:17:07
- Откуда: г.Ставрополь
- Контактная информация:
Не надо путать компонеты отображения данных и компоненты, содержащие данные.
Грид - это просто визуальное отображение произвольных данных. А сами данные находятся в датасете - и он может быть любым.
Грид - это просто визуальное отображение произвольных данных. А сами данные находятся в датасете - и он может быть любым.
Да пусть где хотят находятся, им ничто не мешает отображаться в нужной последовательности. VirtualStringTree же может считывать память перед отрисовкой и при этом сортирует как угодно.
да за счет хранения копии данных в памяти, а это неправильно, так как данных может быть больше чем памяти а абстрактный датасет это курсор и на клиенте только часть данных.Sharfik писал(а):Да пусть где хотят находятся, им ничто не мешает отображаться в нужной последовательности. VirtualStringTree же может считывать память перед отрисовкой и при этом сортирует как угодно.
хотите копию данный создавайте еще датасет и копируйте туда данные в нужном порядке
Да запросто. Берем грид, включаем у него Sort Form в свойствах. Собственно, открываем в гриде сию форму, добавляем поля, по которым хотим сортировать. И получаем AV. Собственно, датасет тут вообще не при чем. Он совершенно любой может быть. В данный момент я использую kbmMemTablePro, он мне больше нравится, да и возможностей у него сильно больше.
Добавлено спустя 1 минуту 54 секунды:
Забыл картинку приложить.
Добавлено спустя 1 минуту 54 секунды:
Забыл картинку приложить.
- alexs
- долгожитель
- Сообщения: 4066
- Зарегистрирован: 15.05.2005 23:17:07
- Откуда: г.Ставрополь
- Контактная информация:
Спасибо за конкретный пример.
Я понял в чём проблема.
Сортирощик работает если есть драйвер сортировки для соотвествующего набора данных. для kbmMemTablePro я не делал такой - не пользуюсь им.
То что появляется ошибка - поправлю.
kbmMemTablePro - где взять этот пакет?
Добавлено спустя 13 минут 53 секунды:
Ошибку поправил в 9413 ревизии.
А вот сортировщик - нужно посмотреть на пакет
Я понял в чём проблема.
Сортирощик работает если есть драйвер сортировки для соотвествующего набора данных. для kbmMemTablePro я не делал такой - не пользуюсь им.
То что появляется ошибка - поправлю.
kbmMemTablePro - где взять этот пакет?
Добавлено спустя 13 минут 53 секунды:
Ошибку поправил в 9413 ревизии.
А вот сортировщик - нужно посмотреть на пакет
