Hi,
Please use the following code in your lookup method(modified your query):
Query query = new Query();
QueryBuildDataSource qbdsJourLine, qbdsBHS;
SysTableLookup sysTableLookup = SysTableLookup::newParameters(tableNum(InventTransferJourLine), _formControl);
qbdsJourLine = query.addDataSource(tableNum(InventTransferJourLine));
qbdsBHS = qbdsJourLine.addDataSource(tableNum(BHS_MaterialUsedForNewProductJournal));
qbdsBHS.addLink(fieldNum(InventTransferJourLine, TransferId), fieldNum(BHS_MaterialUsedForNewProductJournal, TransferNumber));
qbdsJourLine.addRange(fieldNum(InventTransferJourLine,
QtyReceived)).value(strFmt('(%1 > 0)', fieldStr(InventTransferJourLine, QtyReceived)));
SysTableLookup.addLookupfield(fieldNum(InventTransferJourLine, ItemId), true);
SysTableLookup.addLookupfield(fieldNum(InventTransferJourLine, VoucherId));
SysTableLookup.addLookupfield(fieldNum(InventTransferJourLine, BHS_AvaiableQty));
SysTableLookup.parmQuery(query);
SysTableLookup.performFormLookup();
It generates the following query :
SELECT * FROM InventTransferJourLine(InventTransferJourLine_1) WHERE (((QtyReceived > 0)))
JOIN * FROM BHS_MaterialUsedForNewProductJournal(BHS_MaterialUsedForNewProductJournal_1)
ON InventTransferJourLine.TransferId = BHS_MaterialUsedForNewProductJournal.TransferNumber
Hope this helps you.
Thanks,
Chaitanya Golla