Цитата:
Сообщение от
altap
Вообщем на досуге посидел, надеюсь, что поможет.
В классе SysTableLookup модифицировал метод buildGrid к такому виду:
гут. аккурат то, что требовалось. как-то совсем забыл про возможность добраться до свежесозданного элемента формы через AOT. главное, чтоб не тормозило шибко при работе нескольких пользователей.
чуток переделал код:
в описании переменных добавил:
X++:
//-->
TreeNode gridNode, controlNode, methodsNode;
MemberFunction newMethod;
str source = 'public int sort(SortOrder _sortDirection){; return 0;}';
TreeNodeIterator iterator;
//<--
в конце стандартного метода buildGrid добавил:
...
X++:
//-->
gridNode = _form.AOTfindChild('Designs');
gridNode = gridNode.AOTfindChild('Design');
gridNode = gridNode.AOTfirstChild();
iterator = gridNode.AOTiterator();
controlNode = iterator.next(); //methods of the grid control!
controlNode = iterator.next();
for (i = 1; i <= conlen(lookupItems); i++)
{
methodsNode = controlNode.AOTfindChild('Methods');
newMethod = methodsNode.AOTadd('sort');
newMethod.AOTsetSource(source, false);
newMethod.AOTcompile(1);
controlNode = iterator.next();
}
//<--
return _formBuildGridControl;
}
большое спасибо!