powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / DynaTree
4 сообщений из 4, страница 1 из 1
DynaTree
    #35628388
savit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!!!
Подскажите, пожалуйста, как, используя Zen компонент DynaTree, построить дерево, основываясь на данных из таблицы.
Спасибо!
...
Рейтинг: 0 / 0
DynaTree
    #35634025
trop3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
никто не разу не использовал dynaTree?
...
Рейтинг: 0 / 0
DynaTree
    #35634231
VadimF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрите в SAMPLES на пример класс ZENTest.DynaTreeTest.
Там правда не из таблицы данные, но можно адаптировать, наверное.

Вадим
...
Рейтинг: 0 / 0
DynaTree
    #35634683
trop3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VadimFПосмотрите в SAMPLES на пример класс ZENTest.DynaTreeTest.
Там правда не из таблицы данные, но можно адаптировать, наверное.

Вадим

Вот собственно этот метод из примера пытался его адаптировать, ничего не вышло :).

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
Method GetNodeInfo2(Output tSC As %Status, ByRef pParams As %String, pLevel As %Integer, ByRef pHandle As %String, pNodeInfo As %ZEN.Auxiliary.NodeInfo) As %Boolean
{
	#; pHandle is current subscript
	#; pLevel is current piece of subscript

	If ((pHandle = "")&&('$D(pHandle("done")))) {
		#; first call
		Set pHandle = $O(^rINDEXCLASS(""))
	}

	If (pHandle = "") {
		#; no data
		Quit 0
	}

	#; get number of pieces at the current level
	Set tDepth = $L(pHandle,".")

	If (pLevel < tDepth) {
		#; descend
		#; remember data at this level
		Set pHandle(pLevel) = $P(pHandle,".",pLevel)
		
		#; get info about this node
		Set tClass = $LG(^rINDEXCLASS(pHandle),2)
		Set pNodeInfo.hasChildren = 1
		Set pNodeInfo.text = $P(tClass,".",pLevel) // piece of subscript
		Set pNodeInfo.value = $P(tClass,".",1,pLevel) // pkg
		Set ret = 1
	}
	Else {
		#; are we a leaf of the current parent?
		Set ret = 1
		For n=1:1:pLevel-1 {
			If (pHandle(n) '= $P(pHandle,".",n)) {
				Set ret =  0 
				Quit
			}
		}
		
		If (ret) {
			Set tClass = $LG(^rINDEXCLASS(pHandle), 2 )
			Set pNodeInfo.hasChildren =  0 
			Set pNodeInfo.text = $P(tClass,".",pLevel) // piece of subscript
			Set pNodeInfo.value = tClass // class

		}
		#; advance to next node
		Set pHandle = $O(^rINDEXCLASS(pHandle))
		If (pHandle="") {
			#; no more data; set done flag
			Set pHandle("done") =  1 
		}
	}

	Quit ret
}
думал может уже кто сталкивался с этой проблемой и сможет помочь.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / DynaTree
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]