powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Отображение модификации метаданнных в студии
7 сообщений из 7, страница 1 из 1
Отображение модификации метаданнных в студии
    #38321361
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Суть в следующем - у меня часть матаданных модифицируется через глобалы, например:
Код: python
1.
$$$defMemberKeySet($This,$$$cCLASSmethod,methodName,$$$cMETHdescription,methodDescription)


Все ок, в описании класса(%CompiledClass) содержится новое значение, в портале управления - тоже, но вот в *.cls файлах открываемых в студии - нифига ))) И при следующей компиляции изменения соответсвенно затираются.

Вопрос - как дать понять студии, что ей нужно принудительно обновить описание класса из глобали?
...
Рейтинг: 0 / 0
Отображение модификации метаданнных в студии
    #38321373
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неожиданная денормализация)) Даже в том случае, если эта "Студия" не является продуктом IS.
...
Рейтинг: 0 / 0
Отображение модификации метаданнных в студии
    #38321404
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
БредятинаНеожиданная денормализация)) Даже в том случае, если эта "Студия" не является продуктом IS.
Бредятина
Ну перестройка кубов DeepSee из портала управления дает же немедленный эффет на студию, значит механизмы существуют, просто прежде чем рыть исходные коды DeepSee я предпочту спросить, авось кто знает и мне не придется терять N часов на поиски.
...
Рейтинг: 0 / 0
Отображение модификации метаданнных в студии
    #38321446
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sigmov ,
Например, так:set name="Имя класса"
set methodName="Имя метода"
set methodDescription="Описание метода"

$$$defMemberKeySet(name,$$$cCLASSmethod,methodName,$$$cMETHdescription,methodDescription)
Do UpdClsDef^%occLibrary(name)Но я бы предпочёл всё же документированный способ изменения метаданных, а не через чёрный ход.
...
Рейтинг: 0 / 0
Отображение модификации метаданнных в студии
    #38321460
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
set m=##class(%Dictionary.MethodDefinition).%OpenId(name_"||"_methodName)
set m.Description=methodDescription
do m.%Save()
...
Рейтинг: 0 / 0
Отображение модификации метаданнных в студии
    #38323541
sigmov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servitset m=##class(%Dictionary.MethodDefinition).%OpenId(name_"||"_methodName)
set m.Description=methodDescription
do m.%Save()

Спасибо большое. Помогло.
Я и сам пытался сделать через %Library.MethodDefinition но %Save() выдавал ошибку.
...
Рейтинг: 0 / 0
Отображение модификации метаданнных в студии
    #38324896
D_De1mos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно в каше есть для (например) метода два класса:
%Dictionary.MethodDefinition и %Dictionary.CompiledMethod
Первый отвечает за cls и содержит информацию, которую вы видите в студии, а второй - уже скомпилированный код. В случае методов вроде не получится поменять имплементацию в CompiledMethod, а вот в MethodDefinition - пожалуйста (только скомпилировать потом надо). После сохранения MethodDefinition код, открытый в студии автоматически обновляется.
Вы же в первом макросе (никогда им не пользовался) видимо используете метаинформацию аналогично CompiledMethod, т.к. этот CompiledMethod никак не влияет на MethodDefinition
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Отображение модификации метаданнных в студии
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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