Форум: "Базы";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];
ВнизСортировка в TClientDataSet Найти похожие ветки
← →
serg128 (2004-08-03 09:49) [0]Народ, подскажите, как можно сделать сортировку данных в TClientDataSet (без участия SQL)? Если можно - кусок кода. Пасиба.
← →
Nikolay M. © (2004-08-03 10:03) [1]F1 по TClientDataSet.IndexDefs, например.
← →
Romkin © (2004-08-03 10:20) [2]Какой код?! IndexFieldNames - через ; без пробелов вписать имена полей. и все.
← →
Nikolay M. © (2004-08-03 10:55) [3]
> Romkin © (03.08.04 10:20) [2]
> Какой код?!
Он хочет по клику на Title DBGrid-a DataSet сортировать, имхо :)
Так что ему это программно нужно :)
← →
Romkin © (2004-08-03 10:59) [4]Nikolay M. © (03.08.04 10:55) [3] Телепат, да?
http://rsdn.ru/article/db/midas.xml
Если мне память не изменяет, то в клиенте для этой статьи я сделал сортировку при нажатии на заголовок...
← →
serg128 (2004-08-03 11:14) [5]> Romkin
там нету сортировки
← →
serg128 (2004-08-03 11:17) [6]У меня есть такой код (по щелчку на заголовке), но он иногда работает не корректно (появляются левые записи). Подскажите, где ошибка.
if((ioCur!=smNone) && (dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->IndexName != ""))
dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->DeleteIndex(dynamic_cast<TClientDataSet*>(DBG->DataSource->Data Set)->IndexName);
switch (ioCur)
{
case smUp:
dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->AddIndex(Field->FullName, Field->FullName, TIndexOptions()<<ixDescending, "", "", 0);
dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->IndexName = Field->FullName;
SortStr = Field->FullName;
ioCur = smDown;
break;
case smDown:
if(ioCur!=smNone && dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->IndexName!="")
dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->DeleteIndex(dynamic_cast<TClientDataSet*>(DBG->DataSource->Data Set)->IndexName);
dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->IndexName="";
SortStr = Field->FullName;
ioCur = smNone;
break;
case smNone:
dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->AddIndex(Field->FullName, Field->FullName, TIndexOptions(), "", "", 0);
dynamic_cast<TClientDataSet*>(DBG->DataSource->DataSet)->IndexName = Field->FullName;
SortStr = Field->FullName;
ioCur = smUp;
break;
}
← →
serg128 (2004-08-03 17:03) [7]Ну помогите ж блин!!!!
← →
Nikolay M. © (2004-08-03 17:21) [8]
> Romkin © (03.08.04 10:59) [4]
> Nikolay M. © (03.08.04 10:55) [3] Телепат, да?
Ага :)
> Если мне память не изменяет
Изменяет :(
> есть такой код (по щелчку на заголовке), но он иногда работает
> не корректно (появляются левые записи).
На первый взгляд все правильно. Может, DBGrid остается неперерисованным? Проскролль его вверх-вниз.
← →
serg128 (2004-08-03 17:35) [9]Проскролил -> непомогает :(
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.031 c