Цитата:
Сообщение от
Sada
X++:
public Query query()
{// TODO 03 - прописываем запрос, на основании которого будет строиться отчет.
Query ret;
QueryBuildDatasource qbds;
QueryBuildRange qbr;
;
ret = new Query();
// датасорс с пользователями
qbds = ret.addDataSource(tablenum(Dimensions));
//qbds.addRange(fieldnum(Dimensions, DimensionCode));
qbr = qbds.addRange(fieldnum(Dimensions, DimensionCode));
qbr.status(1); // locked
qbr.value(SysQuery::value(SysDimension::Center));
qbds.addSortField(fieldnum(Dimensions, Num));
//info(qbds.toString());
return ret;
}
кверя не моя, за оформление не ругайте

очень похоже на то, правда могу ошибаться, что query() уже есть и в нем уже сидит датасорс Dimensions, а строчкой
X++:
ret = new Query();
qbds = ret.addDataSource(tablenum(Dimensions));
добавляется еще один query() и датасорс, условно назовем его Dimensions2 и соответственно на него ложится условие. Попробуйте вместо этой строчки написать (не знаю специфики, но как- то так)
qbds = this.query().dataSourceTable(tablenum(Dimensions));
или
qbds = this.query().dataSourceName('Dimensions_1'); // как он там называется
или
qbds = this.query().dataSourceNo(1); // какой он там по счету.
(аналогично , qbds = this.queryRun().query()..........(если это в классе)).
Потому что сэмулировав это на Репорте, на котором уже настроен qbds, именно так и происходит. Если query() нет и он один только раз инициализируется в этом методе, то у меня все нормально работает