Показать сообщение отдельно
Старый 27.11.2018, 11:42   #7  
syl is offline
syl
Участник
Аватар для syl
 
236 / 21 (1) +++
Регистрация: 10.06.2015
Адрес: Киев
Вопрос решен, может кому пригодится:

Реализовано с помощью 2х форм:
Первая форма - диалог со списком таблиц
Вторая принимает в аргументе имя таблицы, имеет один Datasource типа Common, и Grid привязанный к этому источнику.

В init() формы, до вызова super() меняем таблицу Datasource на выбранную в диалоге:
X++:
this.form().dataSource(1).table(tableName2id(this.args().parm()));
Затем заполняем Grid полями этой таблицы
X++:
...super();

FormDataSource fds = this.dataSource(1);        
DictTable dt = new SysDictTable(fds.table());
FieldId fieldId = dt.fieldNext(0);
DictField dictField;

fieldId = dt.fieldNext(0);
while (fieldId)
{
    ParametersGrid.addDataField(fds.id(), fieldId);
    fieldId = dt.fieldNext(fieldId);
}