1. В QueryRun всё в порядке.
2. Query у меня пока никак не сохраняется этими методами, не дошёл до этого.
Пункты 3. и 4.:
Изменил немного код и всё пошло как надо:
X++:
void initQuery()
{
query query1 = new query();
QueryBuildDataSource qbds1, qbds2;
;
qbds1= query1.addDataSource(tableNum(Table1));
qbds1.firstfast(false);
qbds2= qbds1.addDataSource(tablenum(Table2));
qbds2.firstFast(false);
//Убрал объединение
//qbds2.addLink(fieldnum(Table1, DepartmentId), fieldnum(Table2, DepartmentId))
// Явное указание полей, которые будут отображены в форме диалога
qbds1.addRange(fieldnum(Table1, Field1));
qbds2.addRange(fieldnum(Table2, Field1));
queryrun1 = new queryRun(query1);
}
Спасибо огромное. (: