Hi Ivan Kashperuk
This is my whole code which I use in a lookup
public void lookup()
{
//super();
Query query = new Query();
QueryBuildDataSource qbdsInventSum, qbdsInventDim, qbdsInventTable;
QueryBuildRange qbrModuleType;
SysMultiTableLookup sysTableLookup;
SysTableLookup sysTableLookup1;
;
qbdsInventSum = query.addDataSource(tableNum(InventSum));
qbdsInventDim = qbdsInventSum.addDataSource(tableNum(InventDim));
qbdsInventDim.relations(true);
qbdsInventDim.addLink(fieldNum(InventSum, InventDimId), fieldNum(InventDim, InventDimId));
qbdsInventDim.joinMode(joinMode::InnerJoin);
qbdsInventTable = qbdsInventSum.addDataSource(tableNum(InventTable));
qbdsInventTable.relations(true);
qbdsInventTable.addLink(fieldNum(InventSum, ItemId), fieldNum(InventTable, ItemId));
qbdsInventTable.joinMode(joinMode::InnerJoin);
sysTableLookup = SysMultiTableLookup::newParameters(this, query);
sysTableLookup1 = SysTableLookup::newParameters(tableNum(InventTable),this);
sysTableLookup.addLookupfield(fieldnum(InventSum, ItemId), 1);
sysTableLookup.addLookupfield(fieldnum(InventTable, ItemName), 3);
sysTableLookup.addLookupfield(fieldnum(InventDim, ConfigId), 2);
sysTableLookup.addLookupfield(fieldnum(InventDim, InventSiteId), 2);
sysTableLookup.addLookupfield(fieldnum(InventDim, InventLocationId), 2);
sysTableLookup.addLookupfield(fieldnum(InventDim, InventSerialId), 2);
SysTableLookup.addLookupMethod(tableMethodStr(InventSum, netWeightOnHand),1,"Net weight");
sysTableLookup.addLookupfield(fieldnum(InventSum, ReservPhysical), 1);
SysTableLookup.addLookupMethod(tableMethodStr(InventSum, PhysicalInvent),1,"Physical Inventory");
SysTableLookup.addLookupMethod(tableMethodStr(InventSum, AvailPhysical),1,"Available physica");
sysTableLookup.addLookupMethod(tableMethodStr(InventSum, orderedSum), 1, "Ordered in total");
sysTableLookup.addLookupMethod(tablemethodstr(InventSum, AvailOrdered), 1,"Ordered in total");
sysTableLookup.addLookupfield(fieldnum(InventSum, OnOrder), 1);
sysTableLookup.performFormLookup();
}
Thank you