Я новичок в этом, поэтому я надеюсь, что все правильно.
Я не совсем новичок в написании DXL, но в настоящее время у меня есть проблема с производительностью при вызове getProperties из столбца Layout dxl, который долженотображать исходящие ссылки в зависимости от значения атрибута модуля типа Enum связанного модуля.Код в основном работает, но занимает очень много времени.Комментирование вызова getProperties делает его настолько быстрым, насколько это возможно.Да, вызов записывается точно так, как показано в справочном руководстве DXL.
Вызов атрибута напрямую, с использованием объекта модуля и оператора точки, также не работает, поскольку он всегда возвращает значение по умолчанию перечисления, но не фактическое.
Любые идеи приветствуются ...
ИЗМЕНИТЬ добавленный пример кода ниже
// couple of declarations snipped
string cond = "Enum selection here" // this is modified from actual code, to show the idea
string linkModName = "*"
ModuleProperties mp
for l in all(o->linkModName) do
{
otherVersion = targetVersion l
otherMod = module(otherVersion)
if (null otherMod || isDeleted otherMod) continue
othero = target l
if (null othero)
{
load(otherVersion,false)
}
getProperties(otherVersion, mp)
sTemp = mp.myAttr
if (sTemp == cond) continue
// further code snipped
}