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() в вашем варианте
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать