Заменить текст заполнителя в Документах на блок текста в ячейке листа в виде маркированного списка - PullRequest
2 голосов
/ 06 августа 2020

Я создал шаблон Google Do c с данными, которые необходимо заменить реальными данными из Google Sheet. В большинстве случаев все работает, но в некоторых случаях я хочу иметь возможность иметь блок текста из ячейки на листе для форматирования в виде маркированного списка в do c.

Поскольку заменяемый текст, например "{whatYouDoResponsabilities}", форматируется как маркированный список в шаблоне do c, он просто заканчивается как один маркер со всем содержимым ячейки, вместо того, чтобы быть несколькими маркированными точками.

Итак, если содержимое ячейки, которую я хочу заменить "{whatYouDoResponsilities}", выглядит так:

Blablabla Blablabla Blablabla

В do c:

  • Blablabla Blablabla Блаблабла

Вместо этого, как я хочу:

  • Блаблабла
  • Блаблабла
  • Блаблабла

Есть ли способ решить эту проблему?

Заранее благодарим за помощь!

Вот код:

function createBulkDocs() {

  const docFile = DriveApp.getFileById("");
  const tempFolder = DriveApp.getFolderById("");
  const currentSheet = SpreadsheetApp.getActive().getSheetByName("Job Ad Generator");
  
  var file_iterator = tempFolder.getFiles();
  
  while (file_iterator.hasNext()) {
    var file = file_iterator.next();
    Logger.log('Deleting file "%s"',
                 file.getName());
 
    Drive.Files.remove(file.getId())
  }

  const data = currentSheet.getRange(2, 1,currentSheet.getLastRow()-1,14).getDisplayValues();
  
  let errors =[];
  
  data.forEach(row => {
      
  var gradeStatus = row[13];             
        if(gradeStatus == ""){ }
  else {
    createDocs(row[3], row[4], row[4], row[7], row[8],row[9] + row[8], row[3] + " " + "Grade" + " " + row[6], row[11], row[12], docFile, tempFolder, row[13]); 
  }
  
  });
  
}

function createDocs(jobTitle, craftNameUpp, craftName, whoYouWorkWith, whatYouDoSummary,whatYouDoResponsibilities, docName, whoYouAreSummary,whoYouAreSpecifics, docFile, tempFolder, seniority) {
  
  const tempFile = docFile.makeCopy(tempFolder);
  const tempDocFile = DocumentApp.openById(tempFile.getId())
  const body = tempDocFile.getBody();

  body.replaceText("{JOBTITLE}", jobTitle);
  body.replaceText("{CRAFTNAME}", craftNameUpp);
  body.replaceText("{craftname}", craftName);
  body.replaceText("{whoYouWorkWith}", whoYouWorkWith);
  body.replaceText("{whatYouDoSummary}", whatYouDoSummary);
  body.replaceText("{whatYouDoResponsibilities}", whatYouDoResponsibilities);
  body.replaceText("{whoYouAreSummary}", whoYouAreSummary);
  body.replaceText("{whoYouAreSpecifics}", whoYouAreSpecifics);
  body.replaceText("{seniority}", seniority);
  
  tempDocFile.setName(docName);
  tempDocFile.saveAndClose();
 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...