Как создать новую таблицу на диске с текстом и вкладкой для отправки формы - PullRequest
1 голос
/ 03 февраля 2020

Я хочу создать новую папку при отправке формы и сбросить ссылку на папку, в которую отправляется ответ формы в определенном столбце. Я не знаком со скриптом приложения. Вот как выглядит исходный код. Этот код сбрасывает все ответы формы на вкладке «Клиенты», но оставляет только ссылку на папку диска пустой.

//-----------------------------------------------
// *********** CONSTANTS ***********
var ARCHIVE_FOLDER = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("settings").getRange(8, 9).getValue();
var ARCHIVE_FOLDER_DOCS = ARCHIVE_FOLDER;

var SS = SpreadsheetApp.getActiveSpreadsheet();
//---------------------------

function installTrigger(){
  var sheetID = SS.getId();

  var folder = getParentFolder(sheetID);
  SS.getSheetByName("settings").getRange(2, 9).setValue(sheetID);
  SS.getSheetByName("settings").getRange(8, 9).setValue(folder);  

}

function getParentFolder(sheetID){

  var file = DriveApp.getFileById(sheetID);
  var folders = file.getParents();
  while (folders.hasNext()){
    var folder = folders.next().getId();
  }

  return folder;
}

А вот еще один сценарий, в котором отправка формы выводит данные, которые я на самом деле хотите, чтобы URL новой папки был дампом в Col6

function logResponseClientSheet(e) {
    if (e) {

       Logger.log(e);

       var response = {  
          timestamp: Utilities.formatDate(new Date(), 'GMT-6', 'MM/dd/YYYY HH:mm'),
          owner: e.name,
          client_domain: e.domain,
          client_homepage: e.homepage,
          client_goal: e.kpi,
          client_start_date: e.start_date,
          client_end_date: e.end_date,
          client_poc_name: e.poc_name,
          client_description: e.description,
          client_poc_email: e.poc_email
        }
        var sheets = SS.getSheetByName("Clients");

      Logger.log(response);

        sheets.getRange(sheets.getLastRow() + 1, 1, 1, 11)
            .setValues([
                ["Active", response.owner, response.client_domain, response.client_homepage, response.client_goal, '', 
                 response.client_start_date, response.client_end_date, response.client_description, response.client_poc_name, response.client_poc_email ]
            ]);
            Logger.log("exit logResponseClientSheet");    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...