4 rungrabAccounts : function(id)
9 var frameload = function()
16 console.log("document.location" + document.location);
18 if (!(window.location + '').match(/netsuite/)) {
20 window.location = "https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=" + id;
24 // we really just want to send a series of download requests..
25 //https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=403
29 var chk = document.getElementById('lines');
30 console.log("lines element?");
32 console.log('checking form values');
35 if (chk.value !='T') {
36 console.log('SETTING VALUES:chk');
38 console.log('SETTING VALUES:daterange');
39 document.forms[0].daterange.value = 'CUSTOM';
40 console.log('SETTING VALUES:date1');
41 document.getElementById('date1').value = '1/1/2008';
42 console.log('SETTING VALUES:date2');
43 document.getElementById('date2').value = '1/1/2013';
44 console.log('SUBMIT');
45 document.forms[0].submit();
50 console.log('form values - ok - checking if empty');
52 if ( reportTable.oContentProvider.bRequestPending
53 || !reportTable.isInLoadedState()) {
54 console.log('report not ready?');
57 console.log('SENDING EMTPY..?');
61 method: 'nsdownloadpage',
62 filename : NS.id + '.csv',
72 window.setTimeout( function() { NS.rungrab(id); } ,1000);
77 console.log('no empty - trying download');
79 var ar = document.forms[0].elements;
81 for(var i =0; i < ar.length; i++) {
83 data[e.name] = e.value;
85 console.log(JSON.stringify(data));
86 console.log(reportTable.getTotalRowCount());
88 'https://system.netsuite.com/app/reporting/reportrunner.nl',
91 reportaction: 'exportcsv',
93 visibleranges: '0,' + reportTable.getTotalRowCount()
104 var ifr = document.createElement('iframe');
106 ifr.setAttribute('src','https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=' + id);
107 ifr.setAttribute('width','900');
108 ifr.setAttribute('height','700');
109 ifr.addEventListener('load', frameload);
110 document.body.innerHTML = '';
112 document.body.appendChild(ifr);
115 var ifd = ifr.contentWindow.document;
116 ifd.getElementById('lines_chkbox').
118 var ar = ifd.getElementById('footerform').elements;
119 for(var i =0; i < ar.length; i++) {
121 data[e.name] = e.value;
125 data.lines_chkbox = 'T';
126 data.reportaction = 'exportcsv'
127 //data.visibleranges =
128 data.apptype = 'html';
130 'https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=403',
137 rungrab : function (id) {
138 //NS.rungrabInventory(id);
139 NS.rungrabAccounts(id);
141 rungrabInventory : function(id)
146 var frameload = function()
153 console.log("document.location" + document.location);
155 if (!(window.location + '').match(/netsuite/)) {
157 window.location = "https://system.netsuite.com/app/reporting/reportrunner.nl?cr=425&customized=T&whence=";
161 // we really just want to send a series of download requests..
162 //https://system.netsuite.com/app/reporting/reportrunner.nl?reporttype=REGISTER&acctid=403
164 document.getElementById('filt1').style = '';
167 crit_4_displayField : '',
169 crit_2_from : '1/1/2007',
170 crit_2_to: '1/1/2014',
171 hddn_crit_32 :getDropdown(document.getElementById('inpt_crit_32')).valueArray[id],
172 inpt_crit_32 :getDropdown(document.getElementById('inpt_crit_32')).valueArray[id],
178 if (!NS.varscheck ) {
181 if (k == 'inpt_crit_32') {
182 continue; // this gets abbreivated..
186 var cur = document.getElementById(k).value;
188 console.log("Can not find " + k);
191 console.log("CUR : " + k + '=' + cur + ' ?= ' + set[k]);
193 console.log("DOE NOT MATCH?");
195 //document.forms.main_form.elements[k].value = set[k];
196 document.getElementById(k).value = set[k];
206 console.log('SUBMIT');
207 document.forms.main_form.submit();
212 console.log('form values - ok - checking if empty');
214 if ( reportTable.oContentProvider.bRequestPending
215 || !reportTable.isInLoadedState()) {
216 console.log('report not ready?');
218 if (NS.timeout < 0) {
219 console.log('SENDING EMTPY..?');
223 method: 'nsdownloadpage',
224 filename : NS.id + '.csv',
234 window.setTimeout( function() { NS.rungrab(id); } ,1000);
239 console.log('no empty - trying download');
243 console.log(reportTable.getTotalRowCount());
245 'https://system.netsuite.com/app/reporting/reportrunner.nl',
247 id: document.forms.main_form.elements.id.value,
248 reportaction: 'exportcsv',
250 visibleranges: '0,' + reportTable.getTotalRowCount()
264 downloaddata : function (url,data) {
267 var xmlhttp = new XMLHttpRequest();
269 xmlhttp.open("POST", url,true);
270 xmlhttp.responseType = 'arraybuffer';
271 xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
274 kv.push(i +'=' + encodeURIComponent( data[i]));
278 xmlhttp.onload=function() {
282 var r = new Uint8Array(xmlhttp.response);
283 for (i=0;i<r.byteLength;i++) {
287 // location name for location download.
289 if (document.getElementById('hddn_crit_32')) {
291 pref = document.getElementById('hddn_crit_32').value ;
294 document.getElementsByClassName('pt_title')[0].innerText.replace(/\s+$/,'');
300 method: 'nsdownloadpage',
301 filename : pref+ '-' + NS.id + '.csv',
302 headers : xmlhttp.getAllResponseHeaders(),
303 contentType:xmlhttp.getResponseHeader("Content-Type"),
309 xmlhttp.send(kv.join('&'));
312 login : function(u,p,id)
316 document.forms[0].email.value = u;
317 document.forms[0].password.value = p;
321 document.forms[0].elements['jsenabled'].value = 'T';
322 setLoginCookie(document.forms[0].elements['rememberme'].checked);
324 document.forms[0].submit();