класс SalesFormLetter всегда работает на сервере а диалог на клиенте.
X++:
salesEditLines = classFactory.formRunClass(FormLetter::newClientArgs(formStr(SalesEditLines), this));
ключевая фраза
FormLetter::newClientArgs.
И я полностью придерживаюсь этого принципа, это конечно мое личное виденье, да помню были времена и когда то я страдал писал ужасные динамические диалоги, перекрывал у них лукапы и т.д.Но зачем усложнять когда можно все сделать проще и понятней.