Тут кроется небольшая ошибочка: InventBatch имеет поиск по двум полям: InventBatchId и ItemId, так что напрямую, в автомате, в DataSource связывать InventBatch и InventDim корректно связать не удасться. Т.е. случае, если несколько номенклатур имеют один номер партии, то запрос будет работать неправильно.
Я сделал View, в котором связываются InventSum и InventDim (надо не забыть проставить во View Relations). А на форму в DataSource положил получившийся View и приджоинил к нему InventBatch, прописав в ините формы Relations между ними:
PHP код:
public void init()
{
QueryBuildDataSource qbdsBatch;
super();
qbdsBatch= inventSumDim_ds.query().dataSourceTable(tablenum(InventBatch));
qbdsBatch.clearLinks();
qbdsBatch.addLink(fieldnum(InventSumDim, InventBatchId), fieldnum(InventBatch, InventBatchId));
qbdsBatch.addLink(fieldnum(InventSumDim, ItemId), fieldnum(InventBatch, ItemId));
}