目標:在Google腳本編輯器中編寫一個程序,該程序接受汽車維修店員工填寫的Google表單中的回覆,做一點數學計算,然後將這些值添加到外觀漂亮的模板中,然後保存並將新創建的修復估算髮送到任何地方。嘗試使用Google表單響應中的數據在用戶提交表單時創建Google表格
我有三個文件:
- 谷歌形成了員工
- 谷歌與板材的響應鏈接的所有問題(W /代碼和觸發附後)
- 谷歌頁空白模板保存在谷歌驅動
每當有人提交表單,我希望它:
- 模板的製作複製,重命名它,將它保存爲「服務價值估計。」
- 獲取客戶信息,將其添加到表
- 獲取修理信息,做一些數學,將其添加到表
- 保存/電子郵件/打印新建估計到哪裏
我想我已經得到了部分#1和#部分4想通了,但我似乎無法得到從表單回覆的信息去進入表單。不知道我做錯了什麼。這就像我的第一個程序,如果我的代碼令人噁心,我很抱歉。
現在,我只是想把客戶名字這樣的基本信息放到估算表中。一旦我得到那部分工作,我會擔心得到所有的修理和什麼。下面是我在迴應表格表的腳本編輯器有代碼:
function onFormSubmit(e) {
//Get values from submitted form
var time_stamp = e.values[1];
var username = e.values[2];
var customer_name = e.values[3];
var customer_email = e.values[4];
var veh_year = e.values[5];
var veh_make = e.values[6];
var veh_model = e.values[7];
var veh_mileage = e.values[8];
var estimate_folder = DriveApp.getFolderById('0B5lz3Xz9Jj1ifkRtT25MX0k1STFsQXlSMGk4aWdvTTFyV21RVnhIdTFrMEt2UFZ4WUY4MXM');
var basic_template_ss_id = ('1B3h440kXs1t9UiSpY5vlzoE7tdo8Z3OLernmweOo2ik');
// Get template, make a copy of it, save copy to Estimates folder
var basic_template_ss_copy_id = DocsList.getFileById(basic_template_ss_id).makeCopy('Service Estimate for ' + customer_name + ' ' + time_stamp , estimate_folder).getId();
//Get newly created blank estimate sheet
var basic_template_sheet_copy = SpeadsheetApp.openById(basic_template_ss_copy_id).getSheets()[0];
//Add basic info
var advisor_name_cell = basic_template_sheet_copy.getRange(A5);
var cust_name_cell = basic_template_sheet_copy.getRange(A7);
var year_cell = basic_template_sheet_copy.getRange(D7);
var make_cell = basic_template_sheet_copy.getRange(E7);
var model_cell = basic_template_sheet_copy.getRange(F7);
getValue(username).copyTo(advisor_name_cell);
getValue(customer_name).copyTo(cust_name_cell)
getValue(veh_year).copyTo(year_cell);
getValue(veh_make).copyTo(make_cell)
getValue(veh_model).copyTo(model_cell)
//Copy, Save, Send, Print
copyDoc.saveAndClose();
var advisor_name = getName();
var pdf = DocsList.getFileById(basic_template_ss_copy_id).getAs("application/pdf");
var subject = "Service Estimate for " + customer_name;
var body = "Here's your service estimate from Midway Ford. See attached.";
MailApp.sendEmail(customer_email, subject, body, {htmlBody: body, attachments: pdf});
MailApp.sendEmail(username, subject, body, {htmlBody: body, attachments: pdf});
}