Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как упорядочить значения в DBGridEh? ...по двум типам (DateTime и CheckBox) 
:(
    Опции темы
RGirichev
Дата 10.8.2006, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 22.6.2006
Где: Белоруссия

Репутация: нет
Всего: нет



Добрый день!
Начал осваивать BD вопрос: как упорядочить значения в DBGridEh по двум типам?

т.есть:

у которых активный CheckBox, они между собой сортируются по дате
    
    [ x ] имя          05.01.2003 00:00:00
    [ x ] имя          04.01.2003 00:00:00
    [ x ] имя          03.01.2003 00:00:00
    [ x ] имя          02.01.2003 00:00:00
    [ x ] имя          01.01.2003 00:00:00

в итоге

    [    ] имя          05.01.2003 00:00:00
    [    ] имя          04.01.2003 00:00:00
    [    ] имя          03.01.2003 00:00:00
    [    ] имя          02.01.2003 00:00:00
    [    ] имя          01.01.2003 00:00:00
    [ x ] имя          05.01.2003 00:00:00
    [ x ] имя          04.01.2003 00:00:00
    [ x ] имя          03.01.2003 00:00:00
    [ x ] имя          02.01.2003 00:00:00
    [ x ] имя          01.01.2003 00:00:00



и ещё:
     
    как изменить цвет шрифта строки с активным CheckBox'ом?
PM WWW ICQ YIM MSN   Вверх
Fedia
Дата 11.8.2006, 02:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата(RGirichev @  10.8.2006,  14:19 Найти цитируемый пост)
как упорядочить значения в DBGridEh по двум типам?

Непосредственно средствами DBGridEh такую сортировку если и можно реализовать, то довольно проблематично. Поэтому сортировку лучше осуществить либо средствами SQL:
Код

select * from table order by bool_field, datetime_field desc.
, где table - имя таблицы, bool_field - логическое поле (то, что с CheckBox-ми), datetime_field - поле даты со временем.
Либо средствами компонента, осуществляющего доступ к данным. Например:
Код

ADOTable1.Sort := 'bool_field, datetime_field DESC';



--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Frees
Дата 11.8.2006, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Fedia @  11.8.2006,  02:51 Найти цитируемый пост)
Непосредственно средствами DBGridEh такую сортировку если и можно реализовать, то довольно проблематично

насколько я знаю чтоб реализовать сортировку в DBGridEh даже не нужно писать код там все визуально делается 

RGirichev, в описании по EHLib все подробно описано


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Fedia
Дата 11.8.2006, 09:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата(Frees @  11.8.2006,  09:02 Найти цитируемый пост)
насколько я знаю чтоб реализовать сортировку в DBGridEh даже не нужно писать код там все визуально делается 

Да, это так. Просто попробуй DBGridEh сделать например сортировку по умолчанию, так, чтобы она сортировала НД сразу после старта программы. Так с ходу у меня не получилось к сожалению.


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
RGirichev
Дата 11.8.2006, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 22.6.2006
Где: Белоруссия

Репутация: нет
Всего: нет



Цитата(Fedia @ 11.8.2006,  08:09)
Да, это так. Просто попробуй DBGridEh сделать например сортировку по умолчанию, так, чтобы она сортировала НД сразу после старта программы. Так с ходу у меня не получилось к сожалению.

но, как сделать сортировку по двум элементам?

 smile 
PM WWW ICQ YIM MSN   Вверх
Fedia
Дата 12.8.2006, 06:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата(RGirichev @  11.8.2006,  15:43 Найти цитируемый пост)
но, как сделать сортировку по двум элементам?

В каталоге Ehlib посмотри проект DEMO1. На первой закладке главной формы проекта в runtime режиме используй комбинацию Ctrl + Mouse, при кликах на заголовке таблицы. Сортируешь по одному столбцу, затем при помощи Ctrl + Mouse по второму и получишь сортировку по двум полям.



--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Ner-zul
Дата 13.9.2006, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 232
Регистрация: 24.1.2004
Где: Москва

Репутация: нет
Всего: нет



Народ, а где скачать это Ehlib c таким замечательным DBGridehom???
Подскажите пожалуйста????
Очень нужно!
--------------------
 Ner-zul   
PM MAIL ICQ   Вверх
Fedia
Дата 14.9.2006, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Скачать EhLib 3.6 можно здесь.

Пароль: ФЕВРАЛЬФЕВРАЛЬ


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Akella
Дата 22.9.2006, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



какая БД?

я использую FireBird
в uses просто добавляю pFIBDataSet или FIBDataSet не помню точно
у EhLib посмотри папку "..\DataService" и "...\DataDrivers\"

Добавлено @ 18:17 
да, и ещё, в свойствах колонки грида ставлю Title->Title Button := true
в свойствах грида AutoSortMarking и MultiSortMarking тоже в True

вот и все

Добавлено @ 18:19 
теже толедвижения нужны и для ADO, например, только замени pFIBDataDriverEh на модуль для ADO
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0502 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.