2012-07-25 146 views
1

另一個奇怪的問題是,是否可以在X ++中的group by子句中指定表達式?基本上,我怎麼能做到以下幾點:X ++中的group by子句

while select InventDim **group by substr(InventDim.inventBatchId,1,3)** 
join InventDimId from InventTrans 
where InventTrans.inventDimId == Inventdim.inventDimId && InventTrans.ItemId == _itemId 
{ 
MyQty += inventTrans.Qty 
} 

感謝您的幫助 問候, 托馬斯

+1

我想在InventDim上使用一個視圖,並在字段列表中使用計算的字段** substr(InventDim.inventBatchId,1,3)**。然後在視圖上執行分組。 – 2012-07-25 14:56:09

回答

1

不,這是不可能的 - 看到Select Statement Syntax明白什麼是允許的,哪些不是。 您必須使用一些解決方法,通常是在不分組的情況下獲取數據,並通過應用程序代碼處理它們。

+0

感謝Martin,我通過做你的建議解決了我的問題 – 2012-09-11 13:41:54

+0

ian_scho的評論要好得多 - AX開發人員需要學習如何使用視圖和分組(並在必要時使用計算視圖列),在代碼中迭代數千個InventTrans記錄每個造成進一步的選擇和更新)是一個性能殺手。 – 2016-10-04 11:23:49