| |
 19 Кб. |
|
| | Нужно добавить ветки, но что-то не выходит... | |
| |
| |
| |
 31 Кб. |
|
| | На. | |
| |
| |
| |
|
|
| | Привет !!!!
Смотрю...  | |
| |
| |
| |
 36 Кб. |
|
| | Привет . На с украшательством. | |
| |
| |
| |
|
|
| | Я кода открыл...........
..ел, ну не то, что бы кушал..., но офигел - эт точно!!!
И как их туда всовывают???
А то ведь они - лица эти немного не по теме, надо бы что-то вроде Домиков 
iml10 - я заметил, это коллекция видимо лиц.
И если туда на инсетить других иконок, то всё наладиться видимо.... | |
| |
| |
| |
|
|
| | там на форме контрол с рисунками, увидишь.... | |
| |
| |
| |
|
|
| | А как Вы думаете .....
теперь вот с одной таблицей - это будет правильное деревце???  | |
| |
| |
| |
|
|
| | Принцип тот же самый, что и был. Правильное, это когда в таблице 2 столбика. А так ты если захочешь добавить программно в ветку годор ещё улицу, то ничо не выдет. Я ж дал пример правильного... рекурсивным методом оно строится.... | |
| |
| |
| |
|
|
| | Тогда, мне таблицу (структуру) изменить ??? | |
| |
| |
| |
|
|
| | А тебе это надо? хорошо подумай. Будешь в дерево ещё ветки вложенные добавлять или нет? Может и не стоит заморачиваться. Там программный код посложней будет.... | |
| |
| |
| |
|
|
| | А ведь, рости - надо..
Познавать узнавать - универсалить.. | |
| |
| |
| |
|
|
| | Пример есть, там аж 2 принципа построения как по науке, разбирайся. | |
| |
| |
| |
|
|
| | Спасибо  | |
| |
| |
| |
|
|
| | Или , если позволите - такой вопрос
может без запросов можно обойтись - имея такую таблицу как у меня сейчас........ | |
| |
| |
| |
|
|
| | Нужно чтоб значения уникальными были, иначе в дереве одинаковые ветки будут. Можно это попробовать программно просеить, но не стоит, заметно снизится скорость построения дерева. | |
| |
| |
| |
|
|
| | Значит - таблица - фиговая - мягко говоря.
Понятно......  | |
| |
| |
| |
 47 Кб. |
|
| | Посмотри это
У тебя таблица не нормализ.
здесь только 1 таблица без всяких запросов.
Для дерева больше ничего не надо | |
| |
| |
|
|
| |
 10 Кб. |
|
| | Модули приклеились случайно они не нужны
В прицепе немного теории | |
| |
| |
| |
|
|
| | Спасибо!!!
Забегая вперёд....
Можно проследить путь к самому верхнему родителю - это то из за чего весь сыр бор.
Надо находить во вновь создаваемых записях - нет ли уже на эту территорию претендентов.
Такая же террритория, либо территория, куда она входит .
Например если Россия - кому то уже отдана, тогда и тверь никому отдавать низя  | |
| |
| |
| |
|
|
| | Можно.
Почитай теорию, второй вариант.
В принципе вторая таблица даже не нужна её можно получать запрсом, но при болльшом кол-ве записей будет притормаживать | |
| |
| |
| |
|
|
| | Даааааа Виноградов С.А.
я пока - притормаживаю, а не рекурсия...
create table Departments
(
Id int not null identity primary key,
Parent int not null references Departments(Id),
Name varchar(32) not null,
Left int not null,
Right int not null
)
Departments | |
| |
| |
| |
|
|
| | читаем всё кроме раздела Обход дерева | |
| |
| |
| |
|
|
| | Читаем.....читаем  | |
| |
| |
| |
|
|
| | Получается таблицу лучше иметь такую
Id ........Родитель...........Имя............Уровень........Низший\нет
1 ..................0 ..................A1.................1..................0
2 ..................1.................B1.................2 ..................0
3 ..................1 ..................B2 ..................2 ..................0
4 ..................2 ..................С1 ..................3 ..................1
5 ..................3 ..................С2 ..................3 ..................1
6 ..................3 ..................С3 ..................3 ..................1 | |
| |
| |
| |
 23 Кб. |
|
| | На добавление (через конт. меню). | |
| |
| |
| |
|
|
| | Я например не вижу в такой таблице никакого смысла, по-моему 2 поля достаточно. И всё дерево со всеми его функциями полность реализуется. | |
| |
| |
| |
|
|
| | Надо две таблицы
1) Departments
Id .... Parent ...Name
1 .........0 .........A1
2 .........1 .........B1
3 .........1 .........B2
4 .........2 .........С1
5 .........3 .........С2
6 .........3 .........С3
2) DepartmentsAncestors
Department…...Ancestor
2..........................1
3..........................1
4..........................2
4..........................1
5..........................3
5..........................1
6..........................3
6..........................1
Пользуясь двумя такими таблицами, можно легко строить практически любые запросы, характерные для иерархических объектов | |
| |
| |
| |
|
|
| | А Ancestor - это самый первый предок?
A нет тут во второй таблице перечислены все его предки и родиелии..
взять к примеру :6 .........3 .........С3
у него и 3 - предок и 1 - предок
6..........................3
6..........................1 | |
| |
| |
| |
|
|
| | Department это Id департамента
Ancestor это Id всех его предков
например
отдел 2 имеет предка 1
отдел 4 имеет предка 2 и 1
отдел 5 имеет предка 3 и 1
Добавлено
Если Ancestor Id вывести в строку через разделитель, то получим весь путь до главного предка
путь для отдела 5 = 3/1 | |
| |
| |
| |
|
|
| | Да если уже занесено всё во вторую таблицу Вы правы - уже всё понятно - как глубоко детё заброшено, а вот по созданию этой второй таблицы - я правильно понял тут ниже описалово...  | |
| |
| |
| |
|
|
| | Так ...
проясняется..
превую таблицу заполнить - раз плюнуть
id - счётчик
Наимнование - это известно
Кто родитель - это выбрать из списка можно
всё готово.
А как заполнять таблицу номер два....
это надо взять какой то ID и ID его родителя, записать во вторую таблицу ID ребёнка и ID найденого родителя, сходить посмотреть кто у родителя родитель и записать в таблицу ID первого взятого и вновь найденное ID . и так далее
j[htytnm | |
| |
| |
| |
|
|
| | как заполнять таблицу номер два- это уже совсем другой вопрос
в принципе она не нужна потому что её можно получать запросом на основе первой таблицы
посмотри здесь
http://hiprog.com/forum/read.php?id_forum=1&id_theme=3661&page=3 | |
| |
| |
|
|
| |
|
|
| | Вот это Вы меня послали........
Тама стока понаписано, что читать не перечитать 
А как очистить дерево, чтобы заполнить вновь?
видимо
[tree].Nodes.Clear | |
| |
| |
| |
|
|
| | Clear - удаляет из семейства все узлы
Remove - удаляет узел из семейства Nodes | |
| |
| |
| |
 29 Кб. |
|
| | Спасибо!!!
Во что выходит | |
| |
| |
| |
|
|
| | Правильным курсом идёте товарисчь  | |
| |
| |
|
|
| |
|
|
| | А можно ли из дерева выковырнуть код элнмента
напимер выбранное значение -
| |
| |
| |
|
|
|
|
| |
|
|
| | Огромное сасибо - и откуда Вы всё это черпаете!!!???
 | |
| |
| |
| |
|
|
| | А кто нибудь знает ссылочку откуда скачать данные остранах, регионах, округах, обласях городах???? | |
| |
| |
| |
|
|
| | http://hiprog.com/index.php?option=com_content&task=view&id=218&Itemid=38 | |
| |
| |