Pouvons-nous compter les éléments de la liste par groupe à l'aide de LISTDATA.SVC à SharePoint 2010?

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

  •  29-09-2020
  •  | 
  •  

Question

Je souhaite afficher un tableau de bord en fonction des éléments de liste SharePoint, pouvons-nous obtenir les éléments compter par groupe à l'aide de LISTDATA.SVC?

pourrait utiliser la requête ci-dessous pour obtenir le compte pour un groupe

... / _ vti_bin / listdata.svc / participants / $ Count? $ filter= (Eventon EQ 'XXXX')

Cependant, nous avons environ 10 de ceux-ci et ne veulent pas appeler la liste de 10 fois.

est-ce possible?Avons-nous quelque chose comme $ groupeby semblable à $ archity?

Était-ce utile?

La solution

Je ne crois pas que vous puissiez obtenir cela avec le service de repos.

Certaines options que je peux penser sont d'utiliser une partie Web du graphique pour agréger les données, créant une partie Web de la vue de données qui émet XML ou JSON qui gère l'agrégation pour vous que vous appelez Ajax appelez ou appelez le point de terminaison de repos et faitesl'agrégation dans le rappel.

Autres conseils

Comme cela peut aider quelqu'un, ci-dessous est l'extrait de code

// 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];

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top