Страница 1 из 2
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 5:04
Игорь Столяров
Привет всем !
Я сразу скажу, что бы потом не было стыдно - вот вообще не умею работать с деревьями.
А тут Заказчик хочет видеть именно такую структуру справочника.
И у меня два вопроса (см. тестовый рисунок). Можно ли (как и где):
1. Задать отдельную иконку для ПУСТОЙ группы ?
2. Локализовать и проиконить контекстное меню ?
Заранее спасибо за помощь !
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 5:35
Ал
Ручонками или шаблон какой для дерева исп. планируете (и структура бд +-)?
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 5:52
Игорь Столяров
Нам привычней ручоками.
Левые шаблоны давно покинувших нас авторов точно не нужны в проекте.

Два вопроса по TREE
Добавлено: 10 Февраль 2025, 6:43
finsoftrz
В этом плане оно ничем не отличается от обычных browse.
В наш век ИИ и рученками, серьезно?

Два вопроса по TREE
Добавлено: 10 Февраль 2025, 6:58
Игорь Столяров
К сожалению - от BROWSE отличается.
Тут бы понять как оно работает ...
А начинать очередное бла-бла-шоу с ИИ по столь незначительному поводу нет смысла.

Два вопроса по TREE
Добавлено: 10 Февраль 2025, 7:44
finsoftrz
Если это реально экономит кучу времени, то это не бла-бла.
Как оно работает, проще всего разобраться по сгенерированному шаблоном коду. Основная сложность там, если надо организовывать динамическую подкачку уровней. Отдельные вопросы это изменение родительской записи (клавишами или специальными кнопками) и поиск в дереве. В структуре данных должны быть 2 поля, ID самой записи и ID родительской. Первичный ключ по ID записи и ключ, в котором первое поле ID родителя, второе порядок сортировки (наименование, например).
Еще такой момент, после ввода древовидной структуры в справочнике, встанет вопрос о формировании отчетов с подсчетом итогов на каждом уровне. Обычно дерево используется для группировки товаров, там это имеет прямой смысл. Дерево для контрагентов это скорее всего уже чистая хотелка конкретного пользователя, который увидел нечто подобное в 1С. У себя я не стал бы вестись, за этим большой бэкграунд стоит, а реального практического смысла нет, только усложняет работу. Кроме очень специфичных ситуаций.
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:01
Игорь Столяров
finsoftrz писал(а): 10 Февраль 2025, 7:44
за этим большой бэкграунд стоит
Т.е. просто поменять иконку для пустой группы нельзя ?

Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:33
finsoftrz
Что имеется ввиду под пустой группой?
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:33
Игорь Столяров
finsoftrz писал(а): 10 Февраль 2025, 7:44
Если это реально экономит кучу времени, то это не бла-бла
Полностью согласен.
В Канаде есть такой анекдот, что если повесить на дверях две таблички:
1. Бесплатный секс;
2. Поговорить о бесплатном сексе;
то настоящий канадец всегда выберет второе ...

Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:36
Игорь Столяров
finsoftrz писал(а): 10 Февраль 2025, 8:33
Что имеется ввиду под пустой группой?
Группа внутри которой нет вложенных записей.
Например, добавили в дерево новую группу - в ней нет записей.
На моём рисунке в первом посте она подсвечивается всегда как открытая.

Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:37
finsoftrz
Игорь Столяров писал(а): 10 Февраль 2025, 8:33
2. Поговорить о бесплатном сексе;
то настоящий канадец всегда выберет второе ...
И ручками, ручками. Поручик, молчать!

Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:48
Игорь Столяров
finsoftrz писал(а): 10 Февраль 2025, 8:37
И ручками, ручками
Люди знающие уже об этом спросили сразу ...
Но на этом правда у них всё и закончилось.
Хорошо. Пусть будет только группы товаров.
У Вас в контекстном меню на дереве пункты по русски ?
Или только через свою правку шаблонов ?
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:53
finsoftrz
Игорь Столяров писал(а): 10 Февраль 2025, 8:36
finsoftrz писал(а): 10 Февраль 2025, 8:33
Что имеется ввиду под пустой группой?
Группа внутри которой нет вложенных записей.
Например, добавили в дерево новую группу - в ней нет записей.
На моём рисунке в первом посте она подсвечивается всегда как открытая.
Наверно, речь про вторую колонку с иконкой (первая под иконки статуса уровня). Я использую шаблон, который штатно был в ШВС. Там не все нравится, и сделать такое, насколько знаю, не получится. Хотя чисто технически должно работать. Под капотом такая структура со служебными значениями, относящимися к предшествующей колонке. Можно поиграться, взяв за основу.
Код: Выделить всё
TSF55QueueTreeType QUEUE,TYPE ! Browsing Queue
TSF55:Display STRING(200) ! Queue position of scroll thumb
TSF55:NormalFG LONG
TSF55:NormalBG LONG
TSF55:SelectedFG LONG
TSF55:SelectedBG LONG
TSF55:Level LONG ! Номер уровня
TSF55:Loaded BYTE ! 0-уровень свернут,1-уровень раскрыт
TSF55:ID LIKE(TovGr:ID)
TSF55:IDParent LIKE(TovGr:IDParent)
TSF55:Position STRING(512)
TSF55:TovGr:FlagHide LIKE(TovGr:FlagHide)
TSF55:TovGr:IDDirects LIKE(TovGr:IDDirects)
END
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:55
finsoftrz
Игорь Столяров писал(а): 10 Февраль 2025, 8:48
У Вас в контекстном меню на дереве пункты по русски ?
Или только через свою правку шаблонов ?
В ШВС с этим проблем нет. Штатно все на русском. Там обычный popup цепляется.
Два вопроса по TREE
Добавлено: 10 Февраль 2025, 8:56
Игорь Столяров
finsoftrz писал(а): 10 Февраль 2025, 8:55
Там обычный popup цепляется.
Увы ! Но в штатных шаблонах всё намного проще ...