![]() |
#8 |
Участник
|
Без создания View можно.
Программно задавать ограничения можно на уровне Query. Пример с SUM отладить не удалось (за пару минут), но Count точно работает. X++: static void HavingJob(Args _args) { Query query; QueryBuildDataSource datasource; QueryHavingFilter havingFilter; QueryRun queryRun; LedgerJournalTable LedgerJournalTable; query = new Query(); datasource = query.addDataSource(tableNum(LedgerJournalTable)); datasource.addSelectionField(fieldNum(LedgerJournalTable, RecId), SelectionField::Count); datasource.addGroupByField(fieldNum(LedgerJournalTable, JournalType)); havingFilter = query.addHavingFilter(datasource, fieldStr(LedgerJournalTable, JournalType), AggregateFunction::Count); havingFilter.value('=1'); queryRun = new QueryRun(query); while (queryRun.next()) { LedgerJournalTable = queryRun.getNo(1); info(strFmt('Group %1: %2', LedgerJournalTable.JournalType, LedgerJournalTable.RecId)); } } |
|