例如,我有以下x ++查询。
Select EcoResproduct
join tableX
where EcoResproduct.RecId == tableX.Product
|| EcoResproduct.RecId == tableX.DistinctProductVariant;
是否可以通过 AOT查询执行相同的操作,而无需使用联合查询或添加两次相同的数据源,也完全不需要使用QueryBuildDataSource对象和X ++。
预先感谢
PS:我的问题更清楚了。
答案 0 :(得分:3)
初始错误答案:
是否可以通过AOT查询执行相同的操作而无需使用联合查询或添加两倍的相同数据源
否。
正确的答案,感谢评论者:
Query q = new Query();
QueryBuildDataSource qbds1 = q.addDataSource(tableNum(EcoResproduct));
QueryBuildDataSource qbds2 = qbds1.addDataSource(tableNum(TableX));
qbds2.addrange(fieldNum(TableX, RecId)).value(strFmt('((%2.Product == %1.RecId) || (%2.DistinctProductVariant == %1.RecId))', qbds1.name(), qbds2.name()));
info(qbds1.toString());