scripts - javascript google apps script
Google App Script: no se puede encontrar el método getRange(número, número) (1)
Se cambió el nombre de la variable a rowRequest en lugar de a la fila.
function getFromSheet(rowRequest){
if(typeof rowRequest != "number"){
rowRequest = Number(rowRequest);
Logger.log("converting");
}
ss = SpreadsheetApp.openById(''12r0gHSgvBg8s_RJIuWJl-3aZCAGOpW0PfGb0SVGNu4Q'');
sheet = ss.getSheets()[0];
result = sheet.getRange(rowRequest, 2).getValue();
return result;
}
Intento escribir una simple API de servicio de contenido con Google App Script. My doGet () simplemente toma un solo param ''row'' y devuelve el valor en esa fila de col 2. Aquí está:
function doGet(req){
try{
reqRow = req.queryString.split(''='')[1];
rowNum = parseInt(reqRow);
}
catch(err){
throw "Error: "+ err + " -- Here''s what we got: " + req + "Did you include a row parameter?";
}
resultValue = getFromSheet(rowNum);
if(resultValue != ""){
result = {
"Result":"Success",
"Row": reqRow,
"Value" : resultValue
}
}
else{
result = {
"Result":"Failure",
"Row": reqRow,
"Value" : "No value found at row"
}
}
return ContentService.createTextOutput(JSON.stringify(result)).setMimeType(ContentService.MimeType.JSON);
}
Y aquí está nuestra función simple getFromSheet:
function getFromSheet(row){
if(typeof row != "number"){
row = Number(row);
Logger.log("converting");
}
sheetid = 111111111;
ss = SpreadsheetApp.openById(sheetid);
sheet = ss.getSheets()[0];
return ss.getRange(row, 2).getValue();
}
Cuando publico algo en él, a través de una url similar a
"https://script.google.com/macros/s/111111111/exec?row=3"
Obtuve el siguiente error:
Cannot find method getRange(number,number).
Nota: ¿Por qué no utilicé req.parameters.row en nuestro método doGet ()? Porque estaba recibiendo el siguiente error:
Cannot find method getRange((class),number).
¿No es getRange (número, número) la principal forma de llamar a este método?
Aquí está la guía de referencia de la clase de hoja: https://developers.google.com/apps-script/reference/spreadsheet/sheet
¡Gracias a todos!