在 Acumatica 的 BQL 中是否有办法对单个字段执行选择不同的查询?



我想使用BQL从SOLine(连接到BCSyncDetails表/DAC)获取不同的orderNbr值的记录集。我已经尝试使用PXSelectJoinGroupBy方法:

var solines = PXSelectJoinGroupBy<SOLine, 
InnerJoin<BCSyncDetail, 
On<SOLine.noteID, Equal<BCSyncDetail.localID>>>,
Aggregate<GroupBy<SOLine.orderNbr, Max<SOLine.orderNbr>>>>.Select(Base);

本质上是这个SQL查询:

SELECT  
DISTINCT OrderNbr
FROM     SOLine 
INNER JOIN BCSyncDetail
ON SOLine.NoteID = BCSyncDetail.LocalID
AND SOLine.CompanyID = BCSyncDetail.CompanyID
ORDER
BY       OrderNbr

我写错了吗?找不到一个好的例子…

我的建议是重写您的查询如下

var solines = PXSelectJoinGroupBy<BCSyncDetail,On><SOLine。noteID,> () .ToList ();

以便您可以在本地对象上使用LINQ查询。更快,更容易,更强大,一旦你有它在枚举。上面的RowCast命令是关键,使我的工作更轻松。

var distinctSOLines= solines.Select(x=>x. ordernbr).Distinct();

相关内容

  • 没有找到相关文章

最新更新