Вопрос
Получение максимальной даты из выборки на клиенте
24 апреля 2015 13:21
Добрый день уважаемое сообщество!
Прошу подсказать как правильно из выборки EntitySchemaQuery получить максимальную дату, или подсказать в чем ошибка.
Своял такой варик, но приходят все записи:
var date = [];
var select = Ext.create("Terrasoft.EntitySchemaQuery", {rootSchemaName: "Activity" });
select.addColumn("Id");
select.addColumn("Lead");
select.addAggregationSchemaColumn("CreatedOn", Terrasoft.AggregationType.MAX, "Date");
select.filters.addItem(select.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL, "Lead",
this.get("Id")));
select.getEntityCollection(function(response) {
if (response && response.success) {
for (var i = 0; i response.collection.collection.items.length; i++) {
date[i] = response.collection.collection.items[i].values.Date.getMonth();
}
}
}, this);
var select = Ext.create("Terrasoft.EntitySchemaQuery", {rootSchemaName: "Activity" });
select.addColumn("Id");
select.addColumn("Lead");
select.addAggregationSchemaColumn("CreatedOn", Terrasoft.AggregationType.MAX, "Date");
select.filters.addItem(select.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL, "Lead",
this.get("Id")));
select.getEntityCollection(function(response) {
if (response && response.success) {
for (var i = 0; i response.collection.collection.items.length; i++) {
date[i] = response.collection.collection.items[i].values.Date.getMonth();
}
}
}, this);
Нравится
3 комментария
24 апреля 2015 16:26
Александр, Вы неправильно строите запрос. Необходимо убрать все колонки, кроме аггрегирующей из запроса.
https://msdn.microsoft.com/ru-ru/library/ms173454.aspx
27 апреля 2015 17:12
Спасибо, попробую, хотя в Sql Management Studio подобный запрос проходил на ура.
27 апреля 2015 19:03
Какой запрос проходил? Напрмер, если взять тот, что у Вас описан:
select Id, LeadId, max(CreatedOn) from Activity
Результатом будет ошибка:
Msg 8120, Level 16, State 1, Line 1 Column 'Activity.Id' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать