You are on page 1of 4

<script type="text/javascript" src="http://usloft2480.serverloft.com:11000/sites/ ProjectTracker/Documents/FusionCharts.js"></script> <script type="text/javascript"> var myItems; function getQueryString(sVar) { urlStr = window.location.search.substring(1); sv = urlStr.

split("&"); for (i=0;i< sv.length;i++) { ft = sv [i].split("="); if (ft[0] == sVar) { return ft[1]; } } return null; } var unit_1 = getQueryString('Unit_1'); var unit_2 = getQueryString('Unit_2'); function LoadAllCTRProjectsChart() { alert(LoadAllCTRProjectsChart); var myQueryString =""; if(unit_1 != null) { myQueryString = "<View><Query><Where><Eq><FieldRef Name='Unit_1' /><Valu e Type='Text'>"+unit_1+"</Value></Eq></Where><GroupBy Collapse=\"TRUE\" GroupLim it=\"30\"><FieldRef Name=\"Actual_x0020_Health\"/></GroupBy><OrderBy><FieldRef N ame=\"ID\"/></OrderBy></Query></View>"; } else if(unit_2 != null) { myQueryString = "<View><Query><Where><Eq><FieldRef Name='Unit_2' /><Value Type='Text'>"+unit_2+"</Value></Eq></Where><GroupBy Collapse=\"TRUE\" GroupLimit=\"30\"><FieldRef Name=\"Actual_x0020_Health\"/></GroupBy><OrderBy><Fi eldRef Name=\"ID\"/></OrderBy></Query></View>"; } else myQueryString = "<View><Query><GroupBy Collapse=\"TRUE\" GroupLimit=\"30 \"><FieldRef Name=\"Actual_x0020_Health\"/></GroupBy><OrderBy><FieldRef Name=\"I D\"/></OrderBy></Query></View>"; var myContext = new SP.ClientContext.get_current(); var myWeb = myContext.get_web(); var myList = myWeb.get_lists().getByTitle('CTR Projects'); var myQuery = new SP.CamlQuery(); myQuery.set_viewXml(myQueryString); myItems = myList.getItems(myQuery); myContext.load(myItems,'Include(ID, Actual_x0020_Health)'); myContext.executeQueryAsync(Function.createDelegate(this, LoadAllCTRProjec tsChartSuccess), Function.createDelegate(this, LoadAllCTRProjectsChartFail));

} function LoadAllCTRProjectsChartFail(sender, args) { alert('LoadAllCTRProjectsChart failed:' + args.get_message()); } function LoadAllCTRProjectsChartSuccess(sender, args) { var projectEnumerator = myItems.getEnumerator(); var onWatchCount = 0; var atRiskCount = 0; var onTrackCount = 0; var completedCount = 0; var onHoldCount = 0; var droppedCount = 0; while (projectEnumerator.moveNext()) { // Get current item var currentProject = projectEnumerator.get_current(); var health = currentProject.get_item("Actual_x0020_Health"); switch (health) { case "On track": onTrackCount = onTrackCount + 1; break; case "On Watch": onWatchCount = onWatchCount + 1; break; case "Delayed": atRiskCount = atRiskCount + 1; break; case "Completed": completedCount = completedCount + 1; break; case "Dropped": droppedCount = droppedCount + 1; break; case "On Hold": onHoldCount = onHoldCount + 1; break; default: break; } } // Show details //alert("On Track: " + onTrackCount + ";On Watch: " + onWatchCount + "; At Risk: " + atRiskCount + "; Completed: " + completedCount + "; On Hold: " + on HoldCount + ); //var data = "<graph caption='Project Break-down' baseFont='Calibri' ani mation='0' animate3D='1' baseFontSize='16' baseFontColor='00558d' xAxisName='Pro ject Health' yAxisName='No. of Projects' showNames='1' decimalPrecision='1' show PercentageInLabel='1' formatNumberScale='0' pieYScale='70' pieBorderAlpha='40' p ieFillAlpha='80' pieSliceDepth='15'> "; //data += "<set name='On Watch' value='" + onWatchCount + "' color='#fff f00'/> "; //data += "<set name='On Track' value='" + onTrackCount + "' color='#008 000'/> "; //data += "<set name='At Risk' value='" + atRiskCount + "' color='#ff000

0'/> "; //data 99ff66'/> "; //data 0'/> "; //data 80'/> "; //data += "<set name='Completed' value='" + completedCount + "' color='# += "<set name='On Hold' value='" + onHoldCount + "' color='#C0C0C += "<set name='Dropped' value='" + droppedCount + "' color='#8080 += "</graph>";

//var sObjectData = "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444 553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/s wflash.cab#version=6,0,0,0\" width=\"370\" height=\"300\" id=\"Pie3DChart\"> "; // Setting Parameters //sObjectData += "<param name=\"movie\" value=\"http://wbapps.worldbank. org/units/eMetrics/_layouts/WB.SharePoint.eMetrics/Pie3D.swf?chartWidth=250&char tHeight=300\" /> "; //sObjectData += "<param name=\"FlashVars\" value=\"&dataXML="+ data +"\ " >"; //sObjectData += "<param name=\"quality\" value=\"high\" /> "; //sObjectData += "<param name=\"wmode\" value=\"opaque\" /> "; //sObjectData += "<div>Chart is loading...</div>"; //sObjectData += "<embed src=\"http://wbapps.worldbank.org/units/eMetric s/_layouts/WB.SharePoint.eMetrics/Pie3D.swf\" flashVars=\"&chartWidth=250&chartH eight=300&dataXML=" + data + " quality=\"high\" width=\"370\" height=\"300\" nam e=\"Pie3DChart\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www .macromedia.com/go/getflashplayer\" wmode=\"Opaque\" /> "; //sObjectData += "</object> "; //document.getElementById('chartControlDIV').innerHTML = sObjectData; var xmlData = "<chart caption='Project Break-down' baseFont='Calibri' an imation='0' animate3D='1' baseFontSize='16' baseFontColor='00558d' xAxisName='Pr oject Health' yAxisName='No. of Projects' showNames='1' decimalPrecision='1' sho wPercentageInLabel='1' formatNumberScale='0' pieYScale='70' pieBorderAlpha='40' pieFillAlpha='80' pieSliceDepth='15'> "; xmlData += "<set label='On Watch' value='" + onWatchCount + "' color='#f fff00'/> "; xmlData += "<set label='On Track' value='" + onTrackCount + "' color='#0 08000'/> "; xmlData += "<set label='At Risk' value='" + atRiskCount + "' color='#ff0 000'/> "; xmlData += "<set label='Completed' value='" + completedCount + "' color= '#99ff66'/> "; xmlData += "<set label='On Hold' value='" + onHoldCount + "' color='#C0C 0C0'/> "; xmlData += "<set label='Dropped' value='" + droppedCount + "' color='#80 8080'/> "; xmlData += "</chart>"; FusionCharts.printManager.enabled(true); tRenderer('javascript'); //FusionCharts.setCurren

var myChart = new FusionCharts( "/sites/ProjectTracker/_layouts/WB.Share Point.eMetrics/Pie3D.swf", "myChartId", "370", "300", "0", "1" ); myChart.setXMLData(xmlData); myChart.render("chartControlDIV"); }

ExecuteOrDelayUntilScriptLoaded(LoadAllCTRProjectsChart, "sp.js"); </script> <div id="chartControlDIV" width="500px" height="500px"></div>

You might also like