|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.04.2009, 00:41 | #1 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Возможна ли сортировка вычисляемых полей в DBGrid, если используется ADOTable
Можно ли отсортировать вычисляемое поле(по возрастанию или убыванию) при клике на Title в DBGrid, если использовать AdoTable.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
11.04.2009, 10:16 | #2 |
Форумчанин
Регистрация: 29.01.2009
Сообщений: 411
|
|
11.04.2009, 12:54 | #3 | |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Цитата:
Код:
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
|
11.04.2009, 13:00 | #4 | |
Форумчанин
Регистрация: 29.01.2009
Сообщений: 411
|
там говориться
Цитата:
|
|
11.04.2009, 14:07 | #5 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
В том то и проблема что если создаю вычисляемое поле в AdoQuery CalcPath, потом на Title DBGrid прописываю примерно так:
Код:
В целом вопрос такой можно ли как то отсортировать вычисляемое поле?
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
11.04.2009, 14:18 | #6 | |
Форумчанин
Регистрация: 29.01.2009
Сообщений: 411
|
Тогда посмотри это
SQL - сортировка вычисляемого поля Цитата:
'select pole1,pole2, (pole3+pole4) AS CalcPath from InfoFile order by CalcPath ASC' |
|
11.04.2009, 15:11 | #7 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Вроде бы должно сработать, только у меня вычисляемое поле ссылается на другую таблицу, то есть в OnCalcField прописано:
Код:
Код:
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
11.04.2009, 17:56 | #8 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Создал такой запрос, но сортировки не происходит и ошибки не выводит,
возможно дело в том, что вычисление происходит по Memo полю (Path.Path) Код:
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
11.04.2009, 22:52 | #9 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
интересно узнать:
1) какой же расчет происходит по этому полю? ты же его выводишь впрямую - только алиас ему меняешь и все 2) где в этом запросе параметр? 3) а может пересмотреть структуру таблиц и не изобретать велосипеда для хранения чисел в мемо полях? ибо для поиска/сортировки в блобах обычно используют дополнительный функционал в виде пакетов(оракл)/юдф(ибазе/файрберд) |
12.04.2009, 15:38 | #10 | |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Цитата:
Программа - это база данных электронных книг и справок (ссылок на месторасположение) и быстрый поиск необходимой информации. Актуальность создания программы: Во-первых набирается очень много различной информации (будь то эл. книги или справоч. материал) и поиск того где же лежит необходимая тебе литература, занимает иногда даже больше времени чем ее прочтение. Создавать ярлыки???(тогда их будет слишком много, а если делать еще примечание...) Заполнить простой word, excel, или txt документ вручную??? тогда может даже всей жизни не хватить. Поэтому как выход создание автозаполняемой базы данных. Сначала для удобства каждый материал по мере возможности (хотя необязательно) размещается в отдельную папку где в названии автор и название книги. Потом при запуске программы методом Drag&Drop перенос директории из проводника в программу. При этом происходит занесение в базу данных такой информации как: Путь файла, размер, имя файла. Также происходит сверка на существование данных файлов в базе(если есть то отображаются на добавление, но не отмечаются галкой и выделяются другим цветом строки). Просмотрев и отметив какую инфу внести нажимается на добавление. Для сетки есть контекстное меню где можно открыть файл или открыть директорию, отметить данный файл как прочитанный, новый и т.д. Основных таблиц всего три: DateDobav( kod. DateDobav) - дата добавления файла. InfoFile(Caption, NameFile, Realname и т.д.) - в целом уникальная не повторяющаяся информация о файлах. Path (Kod, Path) - существующие пути. Есть также дополнительная таблица Shablon - для хранения расширений файлов которые могут добавляться в базу и т.п. Как мне показалось здесь явно присутствует связь многие ко многим. То есть Дата может быть одинаковой и Путь может быть одинаковым по отношению к таблице InfoFile. Поэтому в InfoFile содержатся поля KodDate и KodPath типа longInt. В которые заносится инфа из Date.Kod и Path.Kod. Делается для того, чтобы избавиться от избыточности. Вычисляемое поле CalcPath, делается для того, чтобы отображать его в сетке и зависит оно от индекса в KodPath. Да, конечно, может в MSSQL или Oracle СУБД реализовать такие отношение полегче, но минус в предварительной установке и размере. Поэтому как вариант Delphi+Access для созданной локальной и не требующей предварительной установки Субд. Как только доделаю программу, выставлю в ветке Обсуждение программ. Для того чтобы было понятнее как примерно выглядит программа выкладываю скриншоты первой черновой рабочей программы, правда многое придется изменить. А пока в меню Файл возможность сохранять параметры Фильтра, а также загружать. В меню Отчет способность выводить информацию о файле в Word или HTML. В конечной программе параметры фильтрации будут расширены. Надеюсь удалось объяснить почему использую вычисляемое поле, для чего оно и почему Access, а также для чего делаю программу... Любым замечаниям и дополнениям, критике буду только рад. Это было очень краткое объяснение принципа создания данной данной программы, многое осталось за кадром.... Memo используется для Path
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ширина полей DBGrid | XATAB | БД в Delphi | 7 | 28.02.2009 10:54 |
Сохранение значений вычисляемых полей | gimbomba | БД в Delphi | 6 | 21.02.2009 19:19 |
Типы полей ADOTable | AnnNet | БД в Delphi | 2 | 21.07.2008 16:40 |
Сортировка после просчета вычисляемых полей | azat | БД в Delphi | 4 | 19.01.2008 21:09 |
Возможна сортировка или нет? | Constellation | БД в Delphi | 44 | 17.11.2007 11:32 |