¿Cómo modifico la función de bucle de repetición sin que repita la variable de token en la función rowcount ()?
function rowcount() { var token = getAccessToken(); var module = "sHistory"; var rows = 0; var go = true; var i = 1; var data; while (go) { data = getRecordsByPage(i,200,token,module); if (Number(data.info.count) < 200) { go = false; }; if ((i%10) == 0) { go = false; } rows = Number(rows) + Number(data.info.count); i++; Logger.log(rows) } return rows } function repeatloop() { let counter = 0; for(var i = 1; i <= 93; i++) { { Utilities.sleep(10000); Logger.log(i); counter += rowcount(); Logger.log(counter); } } return rowcount().rows; }Lo que también estoy tratando de hacer es dejar que el conteo continúe porque ahora va en un incremento de 2000, pero necesito que continúe como 200...400...600...800...1000...1200. ..1400...1600...1800...2000...2200. y continúa hasta que el bucle se detiene.
Puede hacer que el token sea una variable global como esta:
var token; function rowcount() { var module = "sHistory"; var rows = 0; var go = true; var i = 1; var data; while (go) { data = getRecordsByPage(i,200,token,module); if (Number(data.info.count) < 200) { go = false; }; if ((i%10) == 0) { go = false; } rows = Number(rows) + Number(data.info.count); i++; Logger.log(rows) } return rows } function repeatloop() { let counter = 0; token = getAccessToken(); for(var i = 1; i <= 93; i++) { { Utilities.sleep(10000); Logger.log(i); counter += rowcount(); Logger.log(counter); } } return rowcount().rows; }¿O te entendí mal?
Pasaría el token como un parámetro opcional , en lugar de usar la variable GLOBAL :
function rowcount(_token = null) { let token; if (_token) {token = _token;} else {token = getAccessToken();} var module = "sHistory"; var rows = 0; var go = true; var i = 1; var data; while (go) { data = getRecordsByPage(i,200,token,module); if (Number(data.info.count) < 200) { go = false; }; if ((i%10) == 0) { go = false; } rows = Number(rows) + Number(data.info.count); i++; Logger.log(rows) } return rows } function repeatloop() { let token = getAccessToken(); let counter = 0; for(var i = 1; i <= 93; i++) { { Utilities.sleep(10000); Logger.log(i); counter += rowcount(token); Logger.log(counter); } } return rowcount(token).rows; }