Снегопат https://snegopat.ru/forum/ |
|
Как определить текущий объект в дереве метаданных https://snegopat.ru/forum/viewtopic.php?f=3&t=608 |
Страница 1 из 1 |
Автор: | artbear [ 05 май 2014, 14:30 ] |
Заголовок сообщения: | Как определить текущий объект в дереве метаданных |
Народ, как определить, какой объект является текущим в дереве метаданных Конфигуратора ? |
Автор: | sosnae [ 06 май 2014, 10:45 ] |
Заголовок сообщения: | Re: Как определить текущий объект в дереве метаданных |
Смотри https://snegopat.ru/scripts/finfo?name=fileopen.js я при сохранении модуля менеджера так нахожу необходимый объект метаданных. |
Автор: | orefkov [ 08 май 2014, 08:56 ] |
Заголовок сообщения: | Re: Как определить текущий объект в дереве метаданных |
Можно получить текстом путь к текущему выбранному узлу в дереве метаданных. Код: var mdTreeView = null // Получим активное окно var view = windows.getActiveView() if(view) { // Проверим, обрабатывает ли окно команду отключения отбора подсистем var state = stdcommands.Frntend.SelectSubSystem.getState(view) if(state && state.enabled) mdTreeView = view } if(!mdTreeView) { // Активное окно не обрабатывает команду отключения отбора подсистем // Значит, надо активировать окно конфигурации, если она открыта if(stdlib.isConfigOpen()) { stdcommands.Config.Window.send() mdTreeView = windows.getActiveView() } } if(mdTreeView) { var row = mdTreeView.getInternalForm().getControl(0).extInterface.currentRow var fullName = [] while(row) { fullName.unshift(row.getCellAppearance(0).text) row = row.parent } Message(fullName.join('.')) // Вот он этот путь if(view.id != mdTreeView.id) view.activate() } Ну, а там уже найти сам объект метаданных по пути - дело техники. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |