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

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

древовидная структура базы данных [D7]


Дева ©   (2006-11-14 15:56:00) 

Здравствуйте мастера! Подскажите пожалуйста в таком вопросе: есть 2 таблицы: отделы и подчиненная ей - сотрудники. Хочу представить это на форме в виде дерева папок (типа проводника). Каким компонентом надо воспользоваться?


Внук   (2006-11-14 21:45:00) [1]

Эт точно. Как минимум таблица должностей (список тех профессий, коорые пишутся в трудовую книжку), таблица отделов, таблица карточек сотрудников, и на них строится таблица штатного расписания и привязка сотрудников к штату.


MsGuns   (2006-11-14 20:28:00) [2]

>Здравствуйте мастера! Подскажите пожалуйста в таком вопросе: есть 2 таблицы: отделы и подчиненная ей - сотрудники

Изначальная предпосылка неверна. Хотя бы потому, что не выдерживает массы жизненных ситуаций. Например, потерю информации при переходе человека из одного подразделения в другое, а также невозможность "присутствия" одного и того же работника одновременно в двух отделах.

Советую "плясать" от двух ВЗАИМОНЕЗАВИСИМЫХ сущностей: штатного расписания и кадровой карточки работника.


Amoeba   (2006-11-14 17:29:00) [3]

См. статью "DBTreeView своими руками": http://www.delphikingdom.com/asp/viewitem.asp?catalogid=488


Сергей М.   (2006-11-14 16:37:00) [4]


> Дева ©   (14.11.06 16:29) [6]


Во многих случаях, касаемых визуализации деревьев в контексте БД, AddObject() предпочтительней, поскольку позволяет сохранять для каждого узла дерева произвольно указанную тобой индивидуальную для узла инф-цию. Но выбирать в л.с. тебе.


clickmaker   (2006-11-14 16:31:00) [5]

AddObject добавляет к ветке некий указатель, а для чего ты его будешь использовать - твое дело. Добраться к нему потом можно через TTreeNode.Data


Дева   (2006-11-14 16:29:00) [6]

еще вопрос. Если я собираюсь связать "дерево" с таблицами базы данных, то мне надо использовать метод:
function AddObject(Node: TTreeNode; const S: string; Ptr: Pointer): TreeNode;
или
function Add(Node: TTreeNode; const S: string): TTreeNode;


Дева   (2006-11-14 16:08:00) [7]

спасибо


Сергей М.   (2006-11-14 16:08:00) [8]

не стаптывай


Сергей М.   (2006-11-14 16:03:00) [9]

Любым, предлагающим удобные для тебяметоды/св-ва визуализации древовидных структур данных.

Например, TTreeView


Jeer   (2006-11-14 16:03:00) [10]

любым подходящим.
Например, TTreeView.


Jeer   (2006-11-14 16:03:00) [11]

:))))


Наверх

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