![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как организовать работу приложения? [D7]
fedorovandrey © (2008-07-09 13:31:00)Добрый день!!!!
У меня такой вопрос.
У меня есть база оборудования, которое поделено на категории и в каждой категории есть подкатегории оборудования. В базе (пока) две таблицы "Категории" и "Подкатегории".
На форме 2 DBLookupComboBox и DBGrid.
Как сделать:
1. При запуске в комбо были "*" и в гриде все записи оборудования;
2. При выборе "Категории" в комбо отбирались только подкатегории принадлежащие к данной категории, а в гриде оборудование данной категории;
3. При выборе подкатегрии выводилось оборудование соответственно данной подкатегории.
Заранее спасибо.
MsGuns (2008-07-10 11:51:00) [1]Тут и думать нечего - деревянный справочник
Sergey13 (2008-07-09 13:58:00) [2]> [6] Ega23 © (09.07.08 13:55)
Да я не спорю с тобой. Мой пост, хоть и ссылался на твои слова, обращен был скорее к автору вопроса в качестве предостережения.
Sergey13 (2008-07-09 13:56:00) [3]> [0] fedorovandrey © (09.07.08 13:31)
> 1. При запуске в комбо были "*" и в гриде все записи оборудования;
Если БД претендует на более-менее промышленные масштабы в будущем, лучше сразу так не делать.
Ega23 (2008-07-09 13:55:00) [4]
> И с заказчика бумагу взять, что это вечно будет так. Аминь.
Не, ну случаи действительно разные бывают. Мы вот с абсолютно жесткой структурой очень долго работали:
Контроллер - Магистраль - Блок - Устройство.
И оно всегда было именно так. Разница - в количестве магистралей и типаз блоков-устройств.
И городить дерево для этого было не очень. На клиенте - да, инфа в виде дерева отображалась. А хранилась - в жёстких 4-х таблицах.
Sergey13 (2008-07-09 13:51:00) [5]> [4] Ega23 © (09.07.08 13:43)
> Если уровень вложенности не более двух
И с заказчика бумагувзять, что это вечно будет так. Аминь.
8-)
Ega23 (2008-07-09 13:43:00) [6]
> а почему категории и под- не объединить в одну таблицу?
> древовидной структуры
Если уровень вложенности не более двух, то возможно лучше на 2 таблицы разбить.
Ega23 (2008-07-09 13:41:00) [7]
Select CatID=0, CatName='Все'
union all
Select CatID, CatName from Categories
Select SubCatID=0, SubCatName='Все'
union all
Select SubCatID, SubCatName from SubCategories
where (:CatID=0 or CatID=:CatID)
Select * from Equipment
where (:CatID=0 or CatID=:CatID) and (:SubCatID=0 or SubCatID=:SubCatID)
clickmaker (2008-07-09 13:41:00) [8]а почему категории и под- не объединить в одну таблицу? древовидной структуры
Поросенок Винни-Пух (2008-07-09 13:38:00) [9]это надо программировать.