AX 2012 Group by с общей таблицей - PullRequest
       31

AX 2012 Group by с общей таблицей

0 голосов
/ 05 февраля 2019

Как группировать по общей таблице с определенным полем?

Я получаю синтаксическую ошибку на (dt.fieldname2Id('BatchNo'))

Вот мой код:

Common          common;
SysDictTable    dt;

dt        =    SysDictTable::newName('Table1');
common    =    dt.makeRecord();

while select count(RecId) from common
    group by common.(dt.fieldname2Id('BatchNo'))  //syntax Error here
    where common.(dt.fieldname2Id('flag'))==1
{
    info(int642str(Common.Recid));
}

1 Ответ

0 голосов
/ 05 февраля 2019

Вы можете использовать Query вместо:

Common                  common;
SysDictTable            dt;
Query                   query = new Query();
QueryBuildDataSource    qbds; 
QueryRun                queryRun;

dt     = SysDictTable::newName('SalesTable');
common = dt.makeRecord();

qbds = query.addDataSource(common.TableId);
qbds.addGroupByField(dt.fieldname2Id('CustAccount'));

queryRun = new QueryRun(query);

while (queryRun.next())
{
    ...
}
...