Наткнулся на интересную вещь: если в Query указана группировка (OrderMode = GroupBy), то в форме SysQueryForm не получается добавлять/удалять условия.
Мешает вот этот метод класса SysQueryForm
X++:
private void dataSourceLoad(QueryBuildDataSource _queryBuildDataSource)
{
if (_queryBuildDataSource.allowAdd() == QueryAllowAdd::AllFields &&
_queryBuildDataSource.orderMode() == OrderMode::OrderBy
)
{
allTables.clear();
allTables.DataSourceNo = _queryBuildDataSource.uniqueId();
allTables.Table_Id = _queryBuildDataSource.table();
allTables.Tablelabel = this.getDataSourceLabel(_queryBuildDataSource.uniqueId());
allTables.insert();
}
}
Как я понял, это нужно для того, чтобы нельзя было добавлять новые источники, если в запросе есть группировка, но существующие-то зачем при этом запрещать менять? Какой-то уж очень жесткий багфикс, по-моему.
Axapta 3.0 SP3. Интересно, в более поздних версиях такая же логика?