![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сортировка по вычислимому полю в наборе данных TTable [D7, Paradox]
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]
Стоп теперь подчиненая появилась, про подчиненую забудь, ее сортировка определяется только полем связи и ни чем иным.
Но у тебя не подчиненая, а полностью автономная таблица, отфильтрованая и отсортированая по каким то критерием.
Но пока ты будешь умалчивать про Расчетное выражение трудно о чем либо говорить.