همانطوری که از عنوان این پست پیداست می توان از کدهایJavaScript و Jquery که قادر به استفاده از آنها می باشید در هنگام شماردن تعداد مقادیر متمایز در یک ستون لیست شیرپوینت ، استفاده کنید. منظور از شماردن تعداد مقادیر متمایز این است که مثلا اگر شما در ستون Department دارای مقادیر “IT” و “HR” و “Operations” می باشید ، با اسکریپت زیر خواهید توانست تعداد آیتم هایی را که در ستون Department برابر با هر یک از مقادیر بالاست را بدست آورید. بنابراین نتیجه همانند زیر خواهد بود.
(IT- 4(items
(HR – 3(items
(Operations – 2(items
حال بیایید به روش getDistinctItemsFromList() نگاهی بیاندازیم. شما ابتدا باید Listname را تعیین کرده و سپس ColumnName را در قسمت code تعیین کنید.
function getDistinctItemsFromList(Listname) {
try {
var context = new SP.ClientContext.get_current();
var list = context.get_web().get_lists().getByTitle(Listname);
var items = list.getItems();
context.load(items);
context.executeQueryAsync(
function () {
var itemCount = items.get_count();
var itemsarry = new Array(parseInt(itemCount) – 1);
var ListEnumerator = items.getEnumerator();
//adding values to array
for (i = 0; i < itemCount; i++) {
itemsarry[i] = new Array(0);
itemsarry[i][0] = items.get_item(i).get_item(ColumnName);
}
//gettig count of unique values from array
var uniqueItemsCount = 0;
var uniqueItems = {};
$.each(itemsarry, function () {
var num = this[0];
uniqueItems[num] = uniqueItems[num] + 1 || 1;
uniqueItemsCount++;
});
//uniqueItems is your array with Column value and the associated Count.
//uniqueItemsCount is how many of these distinct values exist which is 3 in our case (IT, HR and Operations)
//Now to extract the values from this array use the snippet below
var j = 0;
$.each(uniqueItems, function (itemValue, noOfItems) {
if (itemValue != ‘undefined’);
{
alert(itemValue);
alert(noOfItems);
j++;
}
});
},
function (sender, args) { alert(“error in inner request: ” + args.get_message()); }
);
}
catch (e) { alert(“Please check the WebPart Properites and the values in the specified list. Error :”+ e); }
}
در نتیجه خواهیم داشت :
IT 4
HR 3
Operations 2
پست مرتبط :
طراحی پرتالهای اینترنت و اینترانت
سامانه مدیریت پروژه سازمانیEPM