Populate charts with a loop in js

283 views
Skip to first unread message

Alexandre Bernard

unread,
Nov 16, 2017, 8:14:38 AM11/16/17
to Google Visualization API
Hi all,


I'm here because, i can't only populate my charts with the latest value of my loop

is anyone can help me with this ?

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>



  <script type="text/javascript">



 


          function PopulateTable()


            {



                var objOutlook = new ActiveXObject("Outlook.Application");


                var session = objOutlook.Session;


                var selecteditem = objOutlook.ActiveExplorer.Selection.Item(1);



               


                                                   


                for(var folderCount = 1;folderCount <= session.Folders.Count; folderCount++)


                {


                    var folder = session.Folders.Item(folderCount);


                                                                               


                                                                               


                     if(folder.Name.indexOf("FBBE --")>=0)


                                                                               


                    {


                        for(var subFolCount = 1; subFolCount <= folder.Folders.Count; subFolCount++)


                        {


                                                                                               


                            var sampleFolder = folder.Folders.Item(subFolCount);


                                                                                                               


                                                                                                               


                            if(sampleFolder.Name.indexOf("Inbox")>=0)


                            {


                                                                                                             


                                for(var itmCount = 1; itmCount < 11; itmCount++)


                                {      



                                    var itm = sampleFolder.Items.Item(itmCount);                                    


                                    var sentDate = itm.SentOn;


                                    var receivedDate = itm.ReceivedTime;


                                    var delay = itm.ReceivedTime - itm.SentOn;



 


                                    google.charts.load('current', { 'packages': ['corechart'] });


                                    google.charts.setOnLoadCallback(drawChart);



                                    function drawChart() {


                                        var data = google.visualization.arrayToDataTable([


          ['test', 'delay'],


          ['test', delay],



        ]);



                                        var options = {


                                            title: 'delay',


                                            vAxis: { title: 'Delay in ms' },


                                            isStacked: true


                                        };



                                        var chart = new google.visualization.SteppedAreaChart(document.getElementById('chart_div'));



                                        chart.draw(data, options);


                                   



                                         


                                   


                                    //alert(delay);



                                       



                                    var tbl = document.getElementById('tblContents');


                                                                                                                                               


                                    if(tbl)


                                    {


                                     var tr = tbl.insertRow(tbl.rows.length);


                                               


                                     if(tbl.rows.length%2 != 0)


                                     tr.className = "alt";



                                     var tdsentDate = tr.insertCell(0);


                                     var tdreceivedDate = tr.insertCell(1);


                                     var tddelay = tr.insertCell(2);


                                     tdsentDate.innerHTML = sentDate;


                                     tdreceivedDate.innerHTML =    receivedDate ;


                                                     tddelay.innerHTML = delay + ' ms';



                                                     


                                                   



 


 


 


                                                 }


                                                 


                                                 }


                                   //itm.UnRead = false;    


                                 }


                                break;    



                            }


                        }


                        break;


                      }


                    }


                return;


            }    



 


 


       


</script>


                   


<!DOCTYPE html>


<html>


<head>


<meta http-equiv="refresh" content="3600" >


</head>


<style>


table, td {


    border: 1px solid black;


}


</style>


<body onload="PopulateTable()">


<button onclick="PopulateTable()">Populate</button>



 


 


 


<table id="tblContents">


<tr>


<td>Sent on</td>              


<td>Receive on</td>


<td>Delay</td>


</tr>


</table>



<div id="chart_div" style="width: 100%; height: 500px;"></div>



 


</body>


</html>


Reply all
Reply to author
Forward
0 new messages