var listData=[];
function loadTable()
{//start loadTable
var val,index,cval,cindex,TypeOne,TypeTwo,Unknown,TypeOneTotal=0,TypeTwoTotal=0,UnknownTotal=0,firstItem=true,rid=0;
$().SPServices({//sart service call
operation: "GetListItems",
async: false,
listName: "List Name",
CAMLViewFields: "<ViewFields Properties='True' />",
CAMLQuery: "<Query><Where><Neq><FieldRef Name='ID' /><Value Type='Conter'>0</Value></Neq></Where></Query>",
CAMLRowLimit: 0,
completefunc: function (xData, Status) {
$(xData.responseXML).SPFilterNode("z:row").each(function() {
if($(this).attr("ows_Item_x0020_Type")==undefined)
{
TypeOne=0; TypeTwo=0; Unknown=1; UnknownTotal++;
}
else if($(this).attr("ows_Item_x0020_Type")=='TypeOne')
{
TypeOne=1; TypeTwo=0; Unknown=0; TypeOneTotal++;
}
else if($(this).attr("ows_Item_x0020_Type")=='TypeTwo')
{
TypeOne=0; TypeTwo=1; Unknown=0; TypeTwoTotal++;
}
//First record
if(firstItem==true)
{
listData.push({
recid: ++rid,
'Column 1': $(this).attr("ows_Column 1"),
'Column 2': '...',
'Unknown' : Unknown,
'TypeOne' : TypeOne,
'TypeTwo' : TypeTwo,
'Total':1,
w2ui: {
children: [
{
recid: ++rid,
'Column 1': '',
'Column 2': $(this).attr("ows_Column 2"),
'Unknown' : Unknown,
'TypeOne' : TypeOne,
'TypeTwo' : TypeTwo,
'Total':1,
}
]
}
});
firstItem=false;
rid++;
}
else
{
//Update Column 1 data
val = $(this).attr("ows_Column 1");
index=-1;
for (var i=0; i<listData.length; i++){
if(listData[i].Column 1==val){
index = i;
break;
}
}
if(index==-1)
{
listData.push({
recid: rid,
'Column 1': $(this).attr("ows_Column 1"),
'Column 2': '...',
'Unknown' : Unknown,
'TypeOne' : TypeOne,
'TypeTwo' : TypeTwo,
'Total':1,
w2ui: {
children: [
{
recid: ++rid,
'Column 1': '',
'Column 2': $(this).attr("ows_Column 2"),
'Unknown' : Unknown,
'TypeOne' : TypeOne,
'TypeTwo' : TypeTwo,
'Total':1,
}
]
}
});
rid++;
}
else
{
listData[index]['Unknown'] += Unknown;
listData[index]['TypeOne'] += TypeOne;
listData[index]['TypeTwo'] += TypeTwo;
listData[index]['Total'] += 1;
//Update Column 2 data
cval = $(this).attr("ows_Column 2");
cindex=-1;
for (var i=0; i<listData[index].w2ui.children.length; i++){
if(listData[index].w2ui.children[i].Column 2==cval){
cindex = i;
break;
}
}
if(cindex==-1)
{
listData[index].w2ui.children.push({
recid: rid,
'Column 1': '',
'Column 2': $(this).attr("ows_Column 2"),
'Unknown' : Unknown,
'TypeOne' : TypeOne,
'TypeTwo' : TypeTwo,
'Total':1,
});
rid++;
}
else
{
listData[index].w2ui.children[cindex]['Unknown'] += Unknown;
listData[index].w2ui.children[cindex]['TypeOne'] += TypeOne;
listData[index].w2ui.children[cindex]['TypeTwo'] += TypeTwo;
listData[index].w2ui.children[cindex]['Total'] += 1;
}
}
}
});
}
});//end service call
//summary row
listData.push({
recid: rid,
'Column 1': 'All',
'Column 2': 'All',
'Unknown' : UnknownTotal,
'TypeOne' : TypeOneTotal,
'TypeTwo' : TypeTwoTotal,
'Total':UnknownTotal+TypeOneTotal+TypeTwoTotal,
w2ui: { summary: true },
});
//someFunction();
}//end loadTable
No comments:
Post a Comment