Сортировка в дереве

Обсуждение MAV Direct ODBC

Модератор: Andrew™

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion и MAV который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сортировка в дереве

Сообщение OVV »

Приветствую!

Андрей, есть ли возможность произвольно сортировать записи внутри ветки в дереве? Надо чтоб юзер сам мог устанавливать порядок следования записей.
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Re: Сортировка в дереве

Сообщение Andrew™ »

OVV писал(а):Приветствую!

Андрей, есть ли возможность произвольно сортировать записи внутри ветки в дереве? Надо чтоб юзер сам мог устанавливать порядок следования записей.
а оно так и есть, сортировка так и организована по веткам, жми на заголовок и будет пересортировываться та ветка - уровень на котором стоишь
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сортировка в дереве

Сообщение OVV »

Не, мне надо задать свой порядок сортировки. По скрытому полю "Номер по порядку"
Хочется сделать так, чтоб юзер смог сам решить, какая запись должна стоять на первом месте и т.д.
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Re: Сортировка в дереве

Сообщение Andrew™ »

OVV писал(а):Не, мне надо задать свой порядок сортировки. По скрытому полю "Номер по порядку"
Хочется сделать так, чтоб юзер смог сам решить, какая запись должна стоять на первом месте и т.д.
да очень просто, в качестве Tree колонки сделай ту, по которому будешь сортировать (хоть локальная переменная), след колонка текст дерева, у деревянной колонки поставь ширину требуемую, чтобы этого значения видно не было и No Right Border и No Resize, получится то что надо.
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сообщение OVV »

Ммда.. Действительно, не сложно.. Мог бы и сам допереть...
Спасибо!
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сообщение OVV »

Дошли руки попробовать. Не годтися :(

Сколько уровней в дереве заранее не известно; делать запас - хеново смотрится, если запаса не делать, то уровни начинают уезжать под столбец с названиями - еще более хреново смотрится...

Хотелось бы, чтоб можно было иметь доступ к методам сортировки дерева.
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

OVV писал(а):Дошли руки попробовать. Не годтися :(

Сколько уровней в дереве заранее не известно; делать запас - хеново смотрится, если запаса не делать, то уровни начинают уезжать под столбец с названиями - еще более хреново смотрится...

Хотелось бы, чтоб можно было иметь доступ к методам сортировки дерева.
надо подумать как это организовать
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сообщение OVV »

Andrew Myalin писал(а):
надо подумать как это организовать
Приветствую!

Есть ли надежда на решение проблемы в обозримом будущем?

PS: Извиняюсь за назойливость :wink:
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

OVV писал(а):
Andrew Myalin писал(а):
надо подумать как это организовать
Приветствую!

Есть ли надежда на решение проблемы в обозримом будущем?

PS: Извиняюсь за назойливость :wink:
сортировка дерева сейчас произодится по уровням, а вот как дать это наверх, я ж немогу просто тупо дать всё дерево для сортировки наверх, оно поплывёт, тут надо на каждый уровень что то вызывать, а вот что давать на вход , нужна структура уровня - Queue универсальная на разные Browse, пока вот думаю как это сделать красиво.

или может в шаблоне добавить доп поле, по какому Queue Browse field сортировать уровни?
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сообщение OVV »

Andrew Myalin писал(а):сортировка дерева сейчас произодится по уровням, а вот как дать это наверх, я ж немогу просто тупо дать всё дерево для сортировки наверх, оно поплывёт, тут надо на каждый уровень что то вызывать, а вот что давать на вход , нужна структура уровня - Queue универсальная на разные Browse, пока вот думаю как это сделать красиво.
Как я себе представляю - сейчас есть же какой-то метод, отвечающий за сортировку уровня? Его нельзя сделать вируальным? Хотя, тебе виднее...
Andrew Myalin писал(а):или может в шаблоне добавить доп поле, по какому Queue Browse field сортировать уровни?
Я думаю, что это вполне приемлимое решение. Особенно, если оно не сложно в реализации. А красоту можно оставить на потом. Когда-нибудь озарит...
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

Andrew Myalin писал(а):или может в шаблоне добавить доп поле, по какому Queue Browse field сортировать уровни?
Я думаю, что это вполне приемлимое решение. Особенно, если оно не сложно в реализации. А красоту можно оставить на потом. Когда-нибудь озарит...
добавил в класс MAVTree поле .SortField, по default в PARENT.Init оно ссылается на деревянную колонку, при желании, после PARENT.Init можно переопределить его (&=) на любое поле очереди

бросай на мыло запрос на обновление, укажи версию Clarion
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сообщение OVV »

Спасибо. Разобрался.
Сначала не понял, почему я ей подсунул цифровое поле, а она сортирует по нему как по строковому, но поразмыслив решил, что это не проблема. Добавил в очередь строчку и методе .FillQueue форматнул число в нее..

Надеюсь, что это будет полезно не только мне.
Так сказать "... Не пропадет Ваш скорбный труд ... " :wink:

Еще раз спасибо.
Ответить