Hi
The rangeStr does never reach SQL, think the reason is, that the field RouteJobs exists in table ProdTable and qbs is from ProdBOM. Right?
Query query = new Query();
QueryRun queryRun;
QueryBuildDataSource qbsProdTable;
QueryBuildDataSource qbsProdBOM;
str rangeStr;
rangeStr = strFmt('(%1 != "") && (%2 != %3) || (%1 == "")',
fieldStr(ProdBOM, InventRefId),
fieldStr(ProdTable, RouteJobs),
enum2int(NoYes::No));
query.literals(true);
qbsProdTable = query.addDataSource(tablenum(ProdTable));
qbsProdBOM = qbsProdTable.addDataSource(tablenum(ProdBOM));
qbsProdBOM.addLink(fieldnum(ProdTable,ProdId), fieldnum(ProdBOM,ProdId));
qbsProdBOM.addRange(fieldnum(ProdBOM,DataAreaId)).value(rangeStr);
queryRun = new QueryRun(query);
while (queryRun.next())
{
info('stop for debug');
}
I need the InventRefId from ProdBOM, so how the range can be defined?
Thanks for help.
*This post is locked for comments
I have the same question (0)