В методе init формы пытаюсь добавть DataSource, и поля этого DS положить на грид на форме.
Написал следующее:
PHP код:
public class FormRun extends ObjectRun
{
FormBuildDataSource fbds;
FormControl formControl1;
FormControl formControl2;
}
void init()
{
super();
fbds = form.addDataSource("Table1");
Grid.dataSource(fbds.table()); // Grid.dataSource(fbds.id()); пробовал оба варианта
formControl1 = Grid.addDataField(fbds.id(),fieldnum(Table1,Field1),formControl0);
formControl2 = Grid.addDataField(fbds.id(),fieldnum(Table2,Field2),formControl1);
}
Во-первых, побочный глюк-неудобство - не получается у меня в пустой грид добавить поля из кода, в смысле, при запуске формы грид остаётся пустым.
Так что пришлось положить на грид Control типа StringEdit, под названием formControl0 (EDT, например, Name), а из кода уже после него добавлять остальные, нужные, поля.
Далее, теперь грид формируется правильно (т.е., содержит одно ненужное и два нужных поля), однако не отображает данные из соответствующей таблицы.
Если я такой же набор полей (со сходными свойствами) формирую в гриде вручную, в дизайне, то данные отображаются.
Возможно, некорректно устанавливается свойство DataSource грида..
Объясните пожалуйста, чего не хватает (или что я сделал не так).