首页 > 解决方案 > Google Script Link PDF:异常:参数不能为空:contentType(第 82 行,文件“代码”)

问题描述

我正在尝试编写一个脚本,当您提交谷歌表单时,它会放置一个指向我的谷歌表格的 pdf 链接。但是,似乎存在某种错误。我对 Google 表格完全没有任何经验,所以我只是从一些 YouTube 视频中复制了它并稍微调整了一下

function onOpen(e) {
  SpreadsheetApp.getUi().createMenu('Create PDF').addItem('Create PDF', 'createPDF').addToUi();
  }
//create a PDF File
 function afterFormSubmit(e) {
  const info = e.namedValues;
  const pdfFile = createPDF(info);
  const entryRow = e.range.getRow();
  const ws = SpreadsheetApp.getActiveSpreadsheet.getSheetByName('Electric Forklift Incentive');
   ws.getRange(entryRow, 40).setValue(pdfFile.getUrl());
  }
 function createPDF(info) {

  const pdfFolder = DriveApp.getFolderById("1SKChNFvF0V9YU9eLY9K4dKOSqlz-iQO-");
  const tempFolder = DriveApp.getFolderById("1k4TWoMxCe4lno_dNjIe0kkuqL0qBSi_W");
  const templateDoc = DriveApp.getFileById("10qY2CgDNmMG_GnJGc2MeNvog19Mdnh4Ky68_vHkwScE");
  
  const newTemplateFile = templateDoc.makeCopy(tempFolder);
  
  const openDoc = DocumentApp.openById(newTemplateFile.getId());
  const body= openDoc.getBody();
    try {body.replaceText("{name}", info['ชื่อพนักงานขับรถ'][0]) } catch(e) { };
    try {body.replaceText("{brand}", info['ยี่ห้อ / รุ่น'][0])} catch(e) { };
    try {body.replaceText("{dp}", info['หน่วยงาน'][0])} catch(e) { };
    try {body.replaceText("{num}", info['หมายเลขรถ'][0])} catch(e) { };
    try {body.replaceText("{met}", info['เลขมิเตอร์'][0])} catch(e) { };
    try {body.replaceText("{po1}", info['หัวข้อพิจารณา [ 1. ระดับน้ำกลั่นในเเบตเตอรี่ (ยกเว้น BYD)]'][0])} catch(e) { };
    try {body.replaceText("{po2}", info['หัวข้อพิจารณา [ 2. ระดับน้ำมันไฮดรอลิคและการรั่วซึม]'][0])} catch(e) { };
    try {body.replaceText("{po3}", info['หัวข้อพิจารณา [ 3. ระดับน้ำมันเกียร์]'][0])} catch(e) { };
    try {body.replaceText("{po4}", info['หัวข้อพิจารณา [ 4. ระดับน้ำมันเบรค]'][0])} catch(e) { };
    try {body.replaceText("{po5}", info['หัวข้อพิจารณา [ 5. การทำงานของเบรคมือ]'][0])} catch(e) { };
    try {body.replaceText("{po6}", info['หัวข้อพิจารณา [ 6. การทำงานของเบรค]'][0])} catch(e) { };
    try {body.replaceText("{po7}", info['หัวข้อพิจารณา [ 7. ระบบเสียงสัญญาณแตร]'][0])} catch(e) { };
    try {body.replaceText("{po8}", info['หัวข้อพิจารณา [ 8. ระบบไฟฟ้าแสงสว่างและสัญญาณไฟ]'][0])} catch(e) { };
    try {body.replaceText("{po9}", info['หัวข้อพิจารณา [ 9. สภาพงาเเละการทำงานของงา]'][0])} catch(e) { };
    try {body.replaceText("{po10}", info['หัวข้อพิจารณา [10. ระบบะสัญญาณไฟกระพริบหลังคา]'][0])} catch(e) { };
    try {body.replaceText("{po11}", info['หัวข้อพิจารณา [11. ระบบสัญญาณเสียงขณะถอยรถ]'][0])} catch(e) { };
    try {body.replaceText("{po12}", info['หัวข้อพิจารณา [12. ความสะอาดของตัวรถ]'][0])} catch(e) { };
    try {body.replaceText("{po13}", info['หัวข้อพิจารณา [13. สภาพของตัวรถ]'][0])} catch(e) { };
    try {body.replaceText("{po14}", info['หัวข้อพิจารณา [14. ความสะอาดเครื่องยนต์เเละห้องเครื่อง]'][0])} catch(e) { };
    try {body.replaceText("{po15}", info['หัวข้อพิจารณา [15. สภาพเบาะนั่ง]'][0])} catch(e) { };
    try {body.replaceText("{po16}", info['หัวข้อพิจารณา [16. สภาพของล้อ / น็อตกะทะล้อ]'][0])} catch(e) { };
    try {body.replaceText("{po17}", info['หัวข้อพิจารณา [17. สภาพรอกโซ่และลูกกลิ้งแผงงา]'][0])} catch(e) { };
    try {body.replaceText("{po18}", info['หัวข้อพิจารณา [18. ความเรียบร้อยของป้ายชื่อผู้ขับ]'][0])} catch(e) { };
    try {body.replaceText("{po19}", info['หัวข้อพิจารณา [19. รายงานการตรวจสภาพรถยกประจำวัน]'][0])} catch(e) { };
    try {body.replaceText("{po20}", info['หัวข้อพิจารณา [20. การตรวจสอบถังดับเพลิง]'][0])} catch(e) { };
    try {body.replaceText("{add}", info['หมายเหตุ'][0])} catch(e) { };
    try {body.replaceText("{request}", info['พบข้อเรียกร้อง'][0])} catch(e) { };
    try {body.replaceText("{reqwhere}", info['จากช่องทาง '][0])} catch(e) { };
    try {body.replaceText("{stat}", info['สถิติการมาปฏิบัติงาน'][0])} catch(e) { };
    try {body.replaceText("{acci}", info['สถิติอุบัติเหตุประจำเดือน'][0])} catch(e) { };
    try {body.replaceText("{acdate}", info['วันที่เกิดเหตุ'][0])} catch(e) { };
    try {body.replaceText("{reason}", info['สาเหตุ'][0])}catch(e) { };
    try {body.replaceText("{accip}", info['อุบัติเหตุที่พบ'][0])} catch(e) { };
   
   openDoc.saveAndClose();
  
  
  const blobPDF = newTemplateFile.getAs(MimeType.pdf);
  const pdfFile = pdfFolder.createFile(blobPDF).setName("My PDF"); 
  tempFolder.removeFile(newTemplateFile) ;    
   
   return pdfFile;

  
  }

.

https://www.youtube.com/watch?v=EpZGvKIHmR8

问题说:

Google Script Link PDF 错误:ReferenceError:未定义 Mime(第 82 行,文件“代码”)

有人可以帮我理解这个错误的原因吗?

这是表格链接:https ://docs.google.com/spreadsheets/d/1j6H_qCdrgmxJ88EIOq0Pl-zxVgzt_QgNChTQqmzPey4/edit?usp=sharing

这是工作表:https ://docs.google.com/document/d/10qY2CgDNmMG_GnJGc2MeNvog19Mdnh4Ky68_vHkwScE/edit?usp=sharing

有人可以帮我解决吗?

标签: javascriptgoogle-apps-scriptgoogle-sheets

解决方案


推荐阅读