2014-03-07 28 views
2

我在AOT中進行了查詢。我的目標是使用「CustGroup」組的「Group」打印信息,並通過CustTable表的「count(RecId)」desc打印信息。小組通過正常工作,但順序不是。我不明白爲什麼...使用AOT中的查詢進行排序

這是我的查詢看起來是這樣的:

enter image description here

這是代碼,我用:

Static void Query(Args _args) 
{ 
    QueryRun qr; 
    CustTable myCustTable; 
; 
    qr = new QueryRun(queryStr(MyQuery)); 
while(qr.next()) 
{ 
    myCustTable = qr.get(tableNum(CustTable)); 
    info(strFmt("Group %1 Num %2", myCustTable.Custgroup, myCustTable.RecId)); 
} 
} 

其結果是:

enter image description here

回答

2

AX不排序Count(RecId)而是由分組。

您可以通過拖動查詢到一個新的視圖,然後對視圖的計數字段進行排序來解決您的問題。您也可以定義沒有查詢的視圖。

+0

你好1月, 感謝您的幫助。 我有一個關於RecIds的問題。當我創建視圖像我想要的,我注意到在視圖中的所有RecId是相同的'1010'。你能告訴我他們爲什麼不像桌子一樣獨特嗎? – AYETY

+1

如果您執行了「計數(RecId)」(或其他聚合),它將具有該值。在沒有聚合的視圖中,它將具有來自第一個表的「RecId」值。否則,它將有一個任意的非零值,如1010.唯一性不是問題,因爲您無法更新視圖或通過'RecId'正確選擇聚合。 –

相關問題