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

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

Соединение строк в DBGrid? [D6]


4x4 ©   (2003-01-28 12:07:00) 

Помогите, please! Как соединить строки в одну для повторяющихся значений в DBGride (merge)??? сли можно код или адресок где такие вещи описываются (только не предлагайте готовых компонентов)! Спасибо заранее!


MsGuns   (2003-01-28 15:58:00) [1]

>AlexSerp (28.01.03 15:35)

Эх, Саня, в наших санях ездят крутые чуваки, которые НД не сканят ;))


AlexSerp   (2003-01-28 15:35:00) [2]

Ребята, проще всего отсортировать по нужному столбцу.
При отрисовке перед перед переходом на след.запись сохраняем предыдущее значение и потом сравниваем его стекущим. При совпадении заполняем ячейку нужным значением.

Саня


MsGuns   (2003-01-28 14:28:00) [3]

>BlackTiger (28.01.03 14:08)
>А каким способом ты узнавал, что значения повторяются?
Возвратом на предыдущую запись?

Ага, чего захотел - ноу-хау 8)))))
Параллельный НД (обычно TQuery), если нужна правка в НД, или в запросе вывожу доп.поле, куда проставляю признак повтора.



BlackTiger   (2003-01-28 14:08:00) [4]

А каким способом ты узнавал, что значения повторяются?
Возвратом на предыдущую запись?

Вообще это красиво делает MSFlexGrid, но как это сделать дельфийскими гридами?


MsGuns   (2003-01-28 12:24:00) [5]

Пардон за слабого 8)) Глюкнул IE и оставил псевдоник от вчерашнего прикола в "Потрепаться"


Слабый и обиженный   (2003-01-28 12:23:00) [6]

А для того, чтобы не выводить повторяющиеся значения полей, просто в OnGetText присваивал Text := ""; Получалось так:

Дата Номер Товар Кол-во Цена Сумма
------------------------------------------------
12.01.03 2 Редис 20 4.50 90.00
Огурцы 10 8.00 80.00
14.01.03 3 Редис 5 4.50 22.50
Морковь 6 3.00 18.00
Бананы 7 4.50 31.50


4x4   (2003-01-28 12:21:00) [7]

>Соловьев
Это все понятно, но при рисовании кол-во ячеек для столбца остаёеся тем же, т.е. собирались в одну клетку как в Excel"e merge команда!


Соловьев   (2003-01-28 12:13:00) [8]

Я в собитии OnDrawColumnCell рисовал сам:
Т.е делал для каждой строки такую высоту = кол-во повторяющихся записей х на стандартную высоту(17 пикселей), а потом TextRect().


Mike_Goblin   (2003-01-28 12:09:00) [9]

Исключить повторяющиеся строки в наборе данных, отображаемом DBGrid. Для SQL - оператор distinct
select distinct .....


Наверх

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