6 var frameload = function()
8 var ifd = ifr.contentWindow.document;
9 var chk = ifd.getElementById('lines');
11 if (!ifd.getElementById('rptdataarea') || !ifr.contentWindow.reportTable
12 || ifr.contentWindow.reportTable.oContentProvider.bRequestPending
13 || !ifr.contentWindow.reportTable.isInLoadedState()) {
14 console.log('report not ready?');
15 window.setTimeout(frameload,1000);
19 console.log('report ready?');
21 if (chk.value !='T') {
23 ifd.getElementById('footerform').submit();
26 console.log("TRY downloading!");
28 var ar = ifd.getElementById('footerform').elements;
30 for(var i =0; i < ar.length; i++) {
32 data[e.name] = e.value;
35 console.log(ifr.contentWindow.reportTable.getTotalRowCount());
37 'https://system.netsuite.com/app/reporting/reportrunner.nl',
40 reportaction: 'exportcsv',
42 visibleranges: '0,' + ifr.contentWindow.reportTable.getTotalRowCount()
50 // we really just want to send a series of download requests..
51 //https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=403
53 var ifr = document.createElement('iframe');
55 ifr.setAttribute('src','https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=403');
56 ifr.setAttribute('width','900');
57 ifr.setAttribute('height','700');
58 ifr.addEventListener('load', frameload);
59 document.body.innerHTML = '';
61 document.body.appendChild(ifr);
64 var ifd = ifr.contentWindow.document;
65 ifd.getElementById('lines_chkbox').
67 var ar = ifd.getElementById('footerform').elements;
68 for(var i =0; i < ar.length; i++) {
70 data[e.name] = e.value;
74 data.lines_chkbox = 'T';
75 data.reportaction = 'exportcsv'
76 //data.visibleranges =
77 data.apptype = 'html';
79 'https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=403',
86 downloaddata : function (url,data) {
89 var xmlhttp = new XMLHttpRequest();
91 xmlhttp.open("POST", url,true);
92 xmlhttp.responseType = 'arraybuffer';
93 xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
96 kv.push(i +'=' + encodeURIComponent( data[i]));
100 xmlhttp.onload=function() {
104 var r = new Uint8Array(xmlhttp.response);
105 for (i=0;i<r.byteLength;i++) {
112 method: 'nsdownloadpage',
113 headers : xmlhttp.getAllResponseHeaders(),
114 contentType:xmlhttp.getResponseHeader("Content-Type"),
120 xmlhttp.send(kv.join('&'));