Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сортировка по вычислимому полю в наборе данных TTable [D7, Paradox]


Страницы:   1 2 3

dj-amigo ©   (2003-11-28 19:48:00) 

У меня такая проблема:
Я хочу отсортировать набор TTable по вычислимому полю, но не знаю как это сделать! Я использую таблицы формата Paradox!
Обычно сортировку я проводил, создав индекс для набора полей, по которым и надо производить сортировку, а по вычислимому полю, по сути, индекс задать невозможно, так как такое поле отсутствует в физической таблице и вычисляется на этапе выполнения...
Помогите плиз!


dj-amigo   (2003-12-02 18:59:00) [1]

Vlad, мне нужно готовое отработанное решение, а не геморой искать на свою задницу, кстати похоже на то, что я его уже почти нашел и без вас! Но все равно спасибо за массу реальных предложений, а профессию менять я не собираюсь :-)


Плохиш_   (2003-12-02 18:55:00) [2]

>dj-amigo © (02.12.03 18:52) [45]

> Плохиш_, Надо ведь людей чем-нибудь занять! Ты-то сам чего
> предложишь?

Тебе предлагать не вижу смысла, да и без тебя занятий хватает


Vlad   (2003-12-02 18:53:00) [3]

Ты что, вобще пацанов слушать не хочешь ?
Хорошо. Предложу еще вариант.
Делай своего наследника TDataSet с возможностью сортировки по вычисляемому полю. Если хочешь гемморой на свою задницу.

P.S. Ди-джей тоже неплохая профессия. Может стоит задуматься ?


dj-amigo   (2003-12-02 18:52:00) [4]

Плохиш_, Надо ведь людей чем-нибудь занять! Ты-то сам чего предложишь?


Плохиш_   (2003-12-02 18:45:00) [5]

>dj-amigo © (02.12.03 18:32) [43]

Уже 43 сообщение! Какой ужас при такой-то задаче.
Тебе уже и TQuery, и TClientDataSet предложили.
Может тебе профессию сменить?


dj-amigo   (2003-12-02 18:32:00) [6]

Люди, помогите кто в силах, эту проблему надо решать!


Black King   (2003-12-01 21:54:00) [7]

>Зачем же я проводил нормализацию данных на этапе
>проектирования реляционной модели?
zachem?

jest" TQuery, v kotorom mozhno skazat" volshevnije slova : ORDER BY ...

eto tol"ko v pervij raz strashno... potom budesh plevaca na etot TTable..i ne toka :o)


Vlad   (2003-12-01 21:51:00) [8]


> dj-amigo © (01.12.03 21:47) [40]

Вот и мне непонятно, зачем ты проводил нормализацию, если все равно потом делаешь вычисляемое поле, и упорно не хочешь пользоваться SQL


dj-amigo   (2003-12-01 21:47:00) [9]

Этот вариант нарушит всю нормализацию реляционной базы и возникнет куча разных аномалий... Зачем же я проводил нормализацию данных на этапе проектирования реляционной модели?
Тем более, чтобы распихать значения поля всех записей одной таблицы по полям соответствующих записей второй (подчиненной)таблицы понадобится куча времени(особенно когда много записей и втой и вдругой), слишком расточительно плучится...
А когда поле вычисляется по ходу без всяких дополнительных физических полей все стает на свои места!


Vlad   (2003-12-01 21:46:00) [10]


> Black King (01.12.03 21:43) [38]

Это не наш метод :)


Black King   (2003-12-01 21:43:00) [11]

Kac predlagajet sdaca :o)


Anatoly Podgoretsky   (2003-12-01 21:31:00) [12]

Лучший вариант перейти на SQL или включить эти поля во вторую таблицу и посторить по ним индекс


dj-amigo   (2003-12-01 21:05:00) [13]

Anatoly Podgoretsky, Расчетное выражение у меня такое
DataSet.FieldByName("VC_ActorName").AsString
:=TblActorsPrjmir.FieldByName("A_LastName").AsString + " " + TblActorsPrjmir.FieldByName("A_FirstName").AsString + " " + TblActorsPrjmir.FieldByName("A_Patronymic").AsString;


dj-amigo   (2003-12-01 21:00:00) [14]

Vlad, может быть более продвинутые Grid"ы использовать?


Vlad   (2003-12-01 20:50:00) [15]


> dj-amigo © (01.12.03 20:38) [32]

Тогда увы...
TQuery ты использовать не хочешь. Религия не позволяет.
TClientDataSet тоже.
Больше разумных вариантов не вижу.


Anatoly Podgoretsky   (2003-12-01 20:49:00) [16]

Допрос партизана в гестапо не дал результатов, партизан молчал как рыба.


dj-amigo   (2003-12-01 20:38:00) [17]

Vlad, Если я отсортирую "по тем трём полям", то у меня отсортируется только главная таблица, а вычислимое поле, по которому мне надо сортировать другую, подчиненную таблицу,и значение которого формируется из тех трех, останется не тронутым, а мне ведь надо отсортировать именно подчиненную таблицу и именно по этому вычислимому полю!


Vlad   (2003-12-01 20:11:00) [18]

Ну так сортируй по тем трем полям, а вычисляемое не трогай


dj-amigo   (2003-12-01 20:06:00) [19]

Хм, расчетное выражение! Поле у меня, во-первых, текстовое и слагается путем конкатенации других трех полей главной таблицы.
Во-вторых, по этому полю подчиненная таблица должна ещё и группироваться по критерию отношения к записям главной таблицы


Anatoly Podgoretsky   (2003-12-01 19:51:00) [20]

Стоп теперь подчиненая появилась, про подчиненую забудь, ее сортировка определяется только полем связи и ни чем иным.
Но у тебя не подчиненая, а полностью автономная таблица, отфильтрованая и отсортированая по каким то критерием.

Но пока ты будешь умалчивать про Расчетное выражение трудно о чем либо говорить.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо