AOT查询关系或大小写

时间:2018-10-26 10:05:19

标签: axapta x++ dynamics-ax-2012

例如,我有以下x ++查询。

Select EcoResproduct
   join tableX
       where EcoResproduct.RecId == tableX.Product
          || EcoResproduct.RecId == tableX.DistinctProductVariant;

是否可以通过 AOT查询执行相同的操作,而无需使用联合查询或添加两次相同的数据源,也完全不需要使用QueryBuildDataSource对象和X ++。

预先感谢

PS:我的问题更清楚了。

1 个答案:

答案 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());