Цитата:
а потом на основе этих данных строится форма самописная...
В таком случае в дереве АОТ находите форму Dialog. Дублируете ее. Созданный таким образом объект дорабатываете как хотите, пусть это и будет ваша самописная форма. Главное что у нее есть необходимые кнопки и группы чтобы ее можно было подсунуть в методе dialog().
Затем в классе модифицируете метод dialog(). Примерно так:
X++:
protected Object dialog(DialogRunbase _dialog = null, boolean _forceOnClient = false)
{
;
_dialog = Dialog::newFormnameRunbase(, this);
_dialog = super(_dialog, _forceOnClient);
return _dialog;
}