Я хочу создать новую папку при отправке формы и сбросить ссылку на папку, в которую отправляется ответ формы в определенном столбце. Я не знаком со скриптом приложения. Вот как выглядит исходный код. Этот код сбрасывает все ответы формы на вкладке «Клиенты», но оставляет только ссылку на папку диска пустой.
//-----------------------------------------------
// *********** 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"); }
}