Можем ли мы посчитать элементы списка группой, используя listdata.svc в SharePoint 2010?

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/108800

  •  29-09-2020
  •  | 
  •  

Вопрос

Я хочу отобразить панель инструментов на основе элементов списка SharePoint, мы можем получить количество предметов по группе, используя listdata.svc?

может использовать запрос ниже, чтобы получить счет для группы

... / _ vti_bin / listdata.svc / участники / $ count? $ filter= (eventon eq 'xxxx')

Однако у нас есть примерно 10 из них и не хочу вызывать список 10 itime.

Это возможно?У нас есть что-то вроде $ Groupby, похоже на $ orderby?

Это было полезно?

Решение

Я не верю, что вы сможете получить это с помощью службы отдыха.

Некоторые параметры, о которых я могу подумать, вы должны использовать веб-часть диаграммы для объединения данных, создание веб-части данных просмотра данных, которая издает XML или JSON, которая обрабатывает агрегацию для вас, которые вы ajax вызов или вызовите конечную точку отдыха и сделатьагрегация в обратном вызове.

Другие советы

Как это может помочь кому-то, ниже - фрагмент кода

// Group By - Json
function groupByJson(results, attr) {
    var sum = {};

    for (var i = 0 ; i < results.length; i++) {
        var obj = results[i];
        if (typeof sum[obj[attr]] == 'undefined') {
            sum[obj[attr]] = 1;
        }
        else {
            sum[obj[attr]]++;
        }
    }

    //results.forEach(function (obj) {
    //    if (typeof sum[obj[attr]] == 'undefined') {
    //        sum[obj[attr]] = 1;
    //    }
    //    else {
    //        sum[obj[attr]]++;
    //    }
    //});
    return sum;
}

.....
....

var queryString = webUrl + "/_vti_bin/ListData.svc/Participants?$select=EventOn";

            $.getJSON(queryString, function (data) {
                if (data.d.results.length != 0) {
                    var results = groupByJson(data.d.results, "EventOn");
...
results[key];
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top