Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.044 c
9-1084131683
kas-t
2004-05-09 23:41
2004.08.29
3dsmax to md2


3-1091708708
natasha
2004-08-05 16:25
2004.08.29
Unicode в Delphi


1-1092298016
Cobalt
2004-08-12 12:06
2004.08.29
Приведение левой части к типу


3-1091605000
Oksana
2004-08-04 11:36
2004.08.29
Сохранение результата запроса в Recordset


14-1091902628
Maxim
2004-08-07 22:17
2004.08.29
Дополнения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский