Создание скрипта Google для автоматизации отправки форм Google с использованием значений из листа Google.

Я пытаюсь создать скрипт Google, который помогает мне автоматизировать создание ответов формы Google, используя значения из листа Google.

Вот сценарий, который я использую.

function auto_data() {

  var formURL="https://docs.google.com/forms/d/e/1FAIpQLSfmepj661gmkUgleFCLPrqeB0z9mPyI8DLZ4kTBI0Y3eByOCQ/viewform";

  var wrkBk = SpreadsheetApp.getActiveSpreadsheet();
  var wrkSht = wrkBk.getSheetByName("Data");

  var numb = wrkSht.getRange("G11").getValue();
  var time = wrkSht.getRange("H11").getValue();
  var eaten = wrkSht.getRange("I11").getValue();
  var randnumb = wrkSht.getRange("J11").getValue();

  var datamap={
    "entry.1108902288" :numb,
    "entry.1493000579" :randnumb,
    "entry.1582850009" :time,
    "entry.908606572" :eaten
    };

  var options = {
    "method": "post",
    "payload": datamap
  };

  UrlFetchApp.fetch(formURL, options);

}

К сожалению, я получил эту ошибку:

Exception: Request failed for https://docs.google.com returned code 405. Truncated server response: <!DOCTYPE html><html lang="en"><head><meta name="description" content="Web word processing, presentations and spreadsheets"><meta name="viewport" c... (use muteHttpExceptions option to examine full response). (line 25, file "Code")

Может кто-нибудь мне помочь? Спасибо!


person Ben    schedule 12.05.2020    source источник
comment
Вы можете создать предварительно заполненную форму Google программно, но вы не можете отправить формировать программно. Что именно ты пытаешься сделать?   -  person ziganotschka    schedule 12.05.2020


Ответы (1)


  • 405 означает, что запрос не разрешен

  • Вы не можете просто отправить запрос в форму Google.

  • Что вы можете сделать, так это создать программно URL-адрес предварительно заполненной формы - все, что вам нужно сделать, это открыть эту ссылку в своем браузере и нажать Submit.

  • Для этого передайте ответы на соответствующие записи как e.parameters.

Образец:

function auto_data() {

  var formURL="https://docs.google.com/forms/d/e/1FAIpQLSfmepj661gmkUgleFCLPrqeB0z9mPyI8DLZ4kTBI0Y3eByOCQ/viewform";

  var wrkBk = SpreadsheetApp.getActiveSpreadsheet();
  var wrkSht = wrkBk.getSheetByName("Data");
  var numb = wrkSht.getRange("G11").getValue();
  var time = wrkSht.getRange("H11").getValue();
  var eaten = wrkSht.getRange("I11").getValue();
  var randnumb = wrkSht.getRange("J11").getValue();  

  var datamap=[
    "entry.1108902288=" + numb,
    "entry.1493000579=" + randnumb,
    "entry.1582850009=" + time,
    "entry.908606572=" + eaten
    ];
 var prefillUrl = formURL+"?"+ datamap[0] + "&" + datamap[1] + "&" + datamap[2] + "&" + datamap[3];
  Logger.log(prefillUrl);
}
person ziganotschka    schedule 12.05.2020