Есть ли способ ограничить / уменьшить количество ячеек в столбце Google Sheets одновременно - PullRequest
0 голосов
/ 21 февраля 2020

Я даже не знаю, как произнести мой заголовок. Но в основном в моем GSheets у меня есть столбец, в котором есть скрипт, и я хочу ограничить количество ячеек, которые одновременно исполняют скрипт. Чтобы ограничить выполнение - потому что импортированы 100 строк данных, но маршрут, который вызывает скрипт, не может справиться с большой нагрузкой, поэтому я в итоге получаю кучу! ОШИБКИ и вынужден вручную повторно передать эти данные. Я добавил в сценарий.

function myFunc(value)
{
 var serviceUrl = "myUrl" + value;
 var response;
  try
  {
    response = UrlFetchApp.fetch(serviceUrl);
  }
  catch(err)
  {
    Logger.log(err);
  }
  finally
  {
    Logger.log(response.getContentText());
    response = JSON.parse(response.getContentText());
    var arr = [];
    arr.push(response.myValues);
    return arr; 
  }


}

1 Ответ

0 голосов
/ 27 февраля 2020

Вы, похоже, работаете в пределах квоты API запрашиваемого сайта.

Я бы порекомендовал вам остановить вставку ошибочных данных в лист. Используя пробную ловушку как есть, но адаптируйте ее под свои нужды.

Пример:

function myFunc(value) {
  var serviceUrl = "yourUrl" + value;
  var arr = [];
  var response;
  try {

    // Try something that might throw errors
    response = UrlFetchApp.fetch(serviceUrl);
    Logger.log(response.getContentText());
    response = JSON.parse(response.getContentText());
    arr.push(response.myValues);
  }
  catch(err)  {
    // Catch any errors gracefully and handle them
    Logger.log(err);
  }
  finally {
    // This will always run, so make sure it is something that will not 
    // put erroneus data in your sheet
    if (arr.length > 0){
      Logger.log("Response content is: " + response);
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...