How can I resolve "TypeError: Cannot read properties of undefined (reading 'makeCopy')"?

23 views Asked by At

I followed a tutoring video on YouTube and everyone said the codes worked out fine, but when I tried it, I received the notification above. I don't know what I have done wrong in this code, please help me. Thank you in advance! Here is the video that I watched: https://www.youtube.com/watch?v=r9uU_KwGgzQ&


function createBulkPDFs() {
  
  const docFile = DriveApp.getFileById("1GGwW0ynSY29EN4OWd2GHZBM5uKdNGIF_X3xkz8phBN8");
  const tempfolder = DriveApp.getFolderById("141FLMbtNcVldoGLFIzAk7bnrk_XUlCWI");
  const pdffolder = DriveApp.getFolderById("1kC9sUJURgkIWmf90FGp2kmH57NKdKv0d");
  const currentsheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("MRT");
  const data = currentsheet.getRange(2,1,currentsheet.getlastrow()-1,31).getDisplayValues();
  data.forEach(row => {
    try{
    createPDF(row[0],row[1],row[2],row[3],row[4],row[5],row[6],row[7],row[8],row[9],row[10],row[11],row[12],row[13],row[14],row[15],row[16],row[17],row[18],row[19],row[20],row[21],row[22],row[23],row[24],row[25],row[26],row[27],row[28],row[29],row[30], row[0] + "Report",pdfName,docFile,tempfolder,pdffolder);
    errors.push("");
  } catch(err) {
    errors.push("Failed");
  }
}); // close foreach
currentsheet.getRange(2,32,currentsheet.getlastrow()-1,1).setValues(errors);
}

function createPDF(Name,TestDates,Listening,Reading,Writing,Speaking,CEFR,Overall,LP1,LP2,LP3,LP4,LRaw,RP1,RP2,RP3,RRaw,TA1,CC1,LR1,GRA1,TR2,CC2,LR2,GRA2,WRaw,FC3,LR3,GRA3,P3,SRaw,pdfName,docFile,tempfolder,pdffolder) {

  const tempfile = docFile.makeCopy(tempfolder);
  const tempdocfile = DocumentApp.openById(tempfile.getId());
  const body = tempdocfile.getBody();
  tempdocfile.saveAndClose;
const pdfContentBlob = tempfile.getAs(MimeType.PDF);
pdffolder.createFile(pdfContentBlob).setName(pdfName);
tempfolder.removeFile(tempfile);
}

0

There are 0 answers