Дерево по одному файлу в станд. browse

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Дерево по одному файлу в станд. browse

Сообщение gopstop2007 »

Дерево (рекурсивный или иерархический список) по одному файлу (используя шаблон SingleFileTree), если без дополнительных полей как на рисунке ниже, без проблем. Но как вывести его в стандартный browse, с дополнительными полями?
Надо как картинке ниже. Заранее спасибо.
Вложения
browse_hei.png
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Дерево по одному файлу в станд. browse

Сообщение kreator »

Обязательно SingleFileTree нужен? Походу он так не умеет. UltraTree если только. Либо стандартный броуз/лист с опцией "Tree". Править шаблон SingleFileTree, думаю, не вариант.
Я делал дерево стандартным броузом на основе скульной вьюхи. В этом случае дерево создаётся на сервере.
We are hard at work… for you. :)
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Дерево по одному файлу в станд. browse

Сообщение gopstop2007 »

kreator писал(а): 16 Июль 2019, 22:36Обязательно SingleFileTree нужен?
Нет не нужен, привел как пример что надо.
kreator писал(а): 16 Июль 2019, 22:36...Либо стандартный броуз/лист с опцией "Tree". ...
Я делал дерево стандартным броузом на основе скульной вьюхи. В этом случае дерево создаётся на сервере.
Тоже самое, рекурсивное дерево по одному файлу создается на сервере (нужен только один родитель и все его дети (вложений максимум - 10)), результат бросаю в таблицу IMDD, потом думал вывести в виде дерева в стандартный броуз, так как в обычном Tree не читабельно
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

Дерево по одному файлу в станд. browse

Сообщение Yufil »

Пытался сделать так - выводил самый обычный browse, но после первого поля ( name ) добавил локальную переменную Level. После открытия Browse подправил Prop:Format, чтобы name и level образовали древовидную структуру. Выглядело как дерево, но свёртывание-развёртывание веток пришлось реализовать ручками - явной реализацией фильтра для невидимых веток.
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Дерево по одному файлу в станд. browse

Сообщение kreator »

gopstop2007 писал(а): 17 Июль 2019, 9:52 Тоже самое, рекурсивное дерево по одному файлу создается на сервере (нужен только один родитель и все его дети (вложений максимум - 10)), результат бросаю в таблицу IMDD, потом думал вывести в виде дерева в стандартный броуз, так как в обычном Tree не читабельно
И вот так не получается?
Yufil писал(а): 17 Июль 2019, 10:26 Пытался сделать так - выводил самый обычный browse, но после первого поля ( name ) добавил локальную переменную Level. После открытия Browse подправил Prop:Format, чтобы name и level образовали древовидную структуру. Выглядело как дерево, но свёртывание-развёртывание веток пришлось реализовать ручками - явной реализацией фильтра для невидимых веток.
Когда ставишь на листе для конкретного поля метку "Tree", шаблоны сами генерят переменные "Level". Их только надо правильно заполнять при формировании записи очереди. Свёртывание-развёртывание вроде как тоже без проблем, стандартно отрабатывается. Другое дело - в отличии от SingleFileTree уровни всегда заполнены. Но это может не очень критично. Всё зависит от объёмов данных.
We are hard at work… for you. :)
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Дерево по одному файлу в станд. browse

Сообщение kreator »

Кстати, руками несложно сделать. viewtopic.php?p=29329#p29329.
We are hard at work… for you. :)
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Дерево по одному файлу в станд. browse

Сообщение gopstop2007 »

Спасибо всем, все получилось )
Вложения
brw2.png
Последний раз редактировалось gopstop2007 22 Июль 2019, 15:54, всего редактировалось 1 раз.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Дерево по одному файлу в станд. browse

Сообщение kreator »

gopstop2007 писал(а): 19 Июль 2019, 20:25 Спасибо всем, все получилось )
Руками? Или ещё как?
We are hard at work… for you. :)
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Дерево по одному файлу в станд. browse

Сообщение gopstop2007 »

kreator писал(а): 22 Июль 2019, 11:26 Руками? Или ещё как?
Так как данные в Mysql, через запрос к серверу, полученный результат на клиенте строится дерево с указанием level через рекурсию,
в самом browse ставим галочку на нужной колонке в Tree, далее в SetQueueRecords

Код: Выделить всё

BrowseField__Level = MyFile.Level
и все.
Картинку сверху обновил
C10 ABC
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Дерево по одному файлу в станд. browse

Сообщение kreator »

Ну и правильно. Пусть сервак работает. Мне конечно непонятно (исходя из картинки) зачем там дерево? Вроде просто история прохождения заказа. Плоский список удобнее. Вот если один заказ раскидывается по разным путям...
We are hard at work… for you. :)
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Дерево по одному файлу в станд. browse

Сообщение gopstop2007 »

kreator писал(а): 22 Июль 2019, 16:49 Вот если один заказ раскидывается по разным путям...
Так оно и есть, заказ от покупателя -> заказы на разные склады(поставщики), от них поступают товары по заказам и отправляются покупателю. А если еще несколько поступлений, оплат :)
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4560
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Дерево по одному файлу в станд. browse

Сообщение finsoftrz »

Чем торгуют?
C6/C11, ШВС, tps/btrieve.
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Дерево по одному файлу в станд. browse

Сообщение gopstop2007 »

Всем :) , ассортимент большой, а что не так?
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4560
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Дерево по одному файлу в станд. browse

Сообщение finsoftrz »

Да все так. Просто хотел понять, когда подобная бизнес-логика возникает. Мне за свою практику не приходилось сталкиваться. Всегда удавалось реализовать систему так, чтобы избежать использования цепочек связанных документов.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

Дерево по одному файлу в станд. browse

Сообщение Admin »

finsoftrz писал(а): 23 Июль 2019, 10:32чтобы избежать использования цепочек
Это вряд ли. Просто конечно же смысла большого показывать деревья нет.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Ответить