7.11(OnSite)
Задача вывести, значение агригирующей функции COUNT.(Т.е тупо - кол-во записей из таблицы) по правильному
Щас делаю по топорному(count++ при переборе коллекции):
var esq = this.Ext.create(Terrasoft.EntitySchemaQuery, {rootSchemaName: "Lead" });
esq.addColumn("Id");
esq.addAggregationSchemaColumn("Id", Terrasoft.AggregationType.COUNT, "ID", Terrasoft.AggregationEvalType.ALL);
var esqFirstFilter = esq.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL, "UsrINN", INN);
esq.filters.add("esqFirstFilter", esqFirstFilter);
// this.showInformationDialog("message");
esq.getEntityCollection(function (result) {
window.console.log("Ответ сервера: "+result);
window.console.log(result);
if (!result.success) {
// обработка/логирование ошибки, например
this.showInformationDialog("Ошибка запроса данных");
return;
}
var count = 0;
result.collection.each(function (item) {
count++;
});
this.showInformationDialog(count);
}, this);
Также работает вот такой способ:
this.showInformationDialog(result.collection.collection.length);
Нравится
2 комментария
14 ноября 2017 15:39
либо
esq.addAggregationSchemaColumn("Id", Terrasoft.AggregationType.COUNT, "CountAll");
и никакие столбцы больше не добавлять.
Вернётся 1 запись, result.collection.collection.items[0].get("CountAll")
либо
result.collection.getCount() в вашем варианте
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать