![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Опять Вопрос по EhLib.... ПРО СОРТИРОВКУ ЛОКАЛЬНО!!!! [D5, IB5.x]
BorisUK © (2002-11-21 12:04:00)Уважаемы мастера
Вопрос по EhLib....
Не кидайте комнями за то что и так много про это вопросов задают, а я опять спрашиваю...
Хотя нет, - не вопросов, а ответов дают много типа
"Смотри EhLib..." и ссылка
Ну так вот. Скачал, смотрю, разбираюсь...
Прежде всего интересует как там сортировка на кэшированном наборе данных делается.
Говорили что возможно.
Вот я именно и хочу спросить.... Уважаемые... поподробнее...
Ну как это делать то?
У DBGridEh есть свойство SortLocal : boolean.
Как класно, ставлю его в тру... ну а дальше что делать, не могу додуматься..
В примерах нет (или есть - я не нашел).
Один человек (в ранешных вопросах на эту тему) кинул фразу дескать у DBGridEh нет такого (или не работает) есть у CRDBGrid...
Смотрю... правда есть чтото типа CRDBGrid1.Columns[x].SortOrder
[soAsc, soDesc, soNon]
Но свойства SortLocal : boolean НЕТ.
Такчто не понятно на локальный набор оно действует или нет...
И ваще как.
Я попытался обратится CRDBGrid1.Columns[0].SortOrder:="soAsc" (предворительно колонки не создавал) при компиляции говорит ошибка нельзя к несозданному обращятся.
Создавать колонки на этапе проектирование и присваивать им поля данных для меня неприемлемо. Поэтому пока отподает этот вариант.
Просто скажите могул ли они это делать или нет...
И если да , то где копать?????
ЮЮ (2002-12-03 12:59:00) [1]Создать индекс ClientDataSet.AddIndex(), указав в параметрах обратный порядок, и использовать ClientDataSet.IndexName
Vick (2002-12-03 12:53:00) [2]Ты плохо смотрел, на самом деле можно, я делала...
BorisUK (2002-12-03 12:46:00) [3]Нет, но про это никто не говорит
а я сказал что ИМХО нельзя!
Пока не актуально.
ЮЮ (2002-12-03 12:43:00) [4]>Только единственный минус только по возрастанию получается..
Может можно ли через Индекс фиелд наме делать и по уменьщению? может знает кто, но наврятли можно, хотя это ИМХО...
А с этим тоже разобрался?
BorisUK (2002-12-03 12:27:00) [5]to Andriano ©
Я просто повторил чьито слова что "такого рода сортировка делается
в DBEhGrid" и попросил расказать как...
Вот valnech © ваабще собрался кудато в грид сувать запрос
"ORDER BY "+индекс колонки
Я прошу прошения, но у меня уже все давно работает
и от (02.12.02 10:29) я написал как я это сделал :)
Да DBGridEh там не пригодился!
Но вы все обсуждаете и обсуждаете...
Мне савсем не надо чтоб мои вопросы переносили в конфы "Потрепаться". Поэтому прошу всех обратить внимание на то что проблема уже решена.
Всем спасибо :)
valnech (2002-12-03 12:17:00) [6]DBGridEh умеет сортировать, он для этого к тексту запроса приписывает "ORDER BY "+индекс колонки. на которой щелкнули + тип сортировки (возрастание/убывание), работает не для всех типов результирующего набора, у колонок грида должен быть стиль Button включен (пишу по памяти, извините, если что не так :) )
Andriano (2002-12-03 10:09:00) [7]Пытаться сделать сортировку в DBGridEh, всё равно что искать на мониторе кнопку для включения 16 битного цвета.
Так что причина в соственных руках.
KSergey (2002-12-03 06:41:00) [8]Да, наворотили этот QuantumGrid. Хотя не совсем он уже и грид, если уж разобраться (в борландовском понимании), что, впрочем, не умаляет его достоинств.
roottim (2002-12-02 11:44:00) [9]все вопросы не ко мне
смотрите на http://www.devexpress.comтам есть и описание и можно демки скачать.
VAleksey (2002-12-02 11:42:00) [10]
> KSergey © (02.12.02 11:32)
Именно грид.
Express QuantumGrid его название.
Сортирует как надо. И по возрастанию и по убыванию и мульти сортировка и т.д. и т.п.
Prooksius (2002-12-02 11:39:00) [11]2 roottim (02.12.02 11:25)
Ну, "каждый по-разному с ума сходит", речь шла о стандартных распространенных компонентах, о правилах, а не о исключениях.
BorisUK (2002-12-02 11:34:00) [12]KSergey ©
Не нравится вопрос так не лезь с ответами от которых толку нет...
Тоесть либо по существу либо ничего...
А против какждого попроса диспут разводить типа "Достоен ли сей мил человек ответа и внимания тря ля ля"... Незачем.
Но это опять ИМХО :)
KSergey (2002-12-02 11:32:00) [13]to roottim
Не понял. Это НДих производства сортирует как угодно или это гридих производства сортирует ка надо? Приведите название компонента.
roottim (2002-12-02 11:25:00) [14]Утверждения,что сортируется DataSet не всегда аксиома.
компания DevExpress умудряется отображать датасет c любой локальной сортировкой, не изменяя НД.. видимо используя свои нутренние индексы к НД клиета..
KSergey (2002-12-02 11:03:00) [15]Так и не понятно о чем вопрос.
Вам же уже много раз было отвечено: сортируется не грид, сортируется DataSet. А как он сортируется - зависит от этого самого DataSet"а.
Что вы и увидели в примере. Вопрос: что в ответах было не так?!! Почему вопрос возникал неоднократно?!! Или не в ответах и не в отвечавших дело, а...
BorisUK (2002-12-02 10:29:00) [16]Уже посмотрел..
И ваще очень старый это вопрос. Уже раробрались - спасибо.
Для тех кому интересно делается это
так:
procedure TMain_f.DBGridTitleBtnClick(Sender: TObject; ACol: Integer;
Field: TField);
begin
ClientDdataSet.IndexFieldNames:=Field.FieldName
end;
И всего делов то :)
Только единственный минус только по возрастанию получается..
Может можно ли через Индекс фиелд наме делать и по уменьщению? может знает кто, но наврятли можно, хотя это ИМХО...
Николай В. (2002-12-02 10:11:00) [17]Там демка есть. По ней посмотри, как в этой библиотеке сортировка сделана.
BorisUK (2002-11-21 12:57:00) [18]Сейчас юзаю ODAC
но рашьше хотел и для интербейса сделать...
Значит ответ НЕТ?
Не могут эти EhLib веши делать такие ляли :)
Чтож это тогда за свойства такие многоговорящие?
Что например можно сделать поставив SortLocal : boolean.
в тру.???
Prooksius (2002-11-21 12:22:00) [19]Grid не может сам сортировать данные. Данные сортируются в DataSet. А Grid - только показывает.
Какими компонентами доступа к IB пользуешься?
В FIBPlus есть такая возможность:
Процедуры: Sort, FastSort. Объявлены и чуть-чуть описаны в FIBDataSet.pas
В остальных компонентах - не знаю.
BorisUK (2002-11-21 12:17:00) [20]Не учто все так сложно...
Ну а с примером можно ?
а то если по простому нельзя.. не понять где копать :)