1. Добавил в форму \Forms\tutorial_Form_AddControl датасорс InventTable
2. Модифицировал метод \Forms\tutorial_Form_AddControl\Designs\Design\[ButtonGroup:ButtonGroup]\Button:Button\Methods\clicked:
X++:
void clicked()
{
FormBuildDesign formBuilddesign = form.design();
FormBuildGroupControl formBuildGroupControl;
FormStringControl c;
;
c = addGroup.addControl(FormControlType::String,'RunTimeControl');
c.label("New control");
// DSPIC -->
c.dataSource(InventTable_ds.id());
c.dataField(fieldnum(InventTable, ItemId));
c.displayLengthValue(10);
InventTable_ds.executeQuery();
// DSPIC <--
formBuildGroupControl = formBuildDesign.control( addGroup.id() );
}
Данные отображаются, корректно. Длина от EDT действительно не подтягивается, нужно поиграться , посмотреть. Но сходу видно, что c.displayLengthValue(10); оказывает влияние, и накрайняк этим можно воспользоваться.
См. также \Classes\SysTableBrowser