Google Script変数を "mail_template" HTMLドキュメントに使用したいと思います。なぜ私の変数は、このHTML文書に使用することができない私はGoogleのスクリプト自体にそれらを使用することはできません私は理解していない。Googleスクリプトを使用して変数をHTMLにプッシュ
私は3つの文書があります。
- GoogleのシートにリンクされているGoogleのスクリプト(.GS)(の "X" を呼びましょう)
- 上記の "X"、GoogleのシートにリンクされているHTMLドキュメントを
- そして「X」* Googleのシート自体
この作業の目的は、Googleのシートのデータを使用して設計された電子メールを送信することです。
私は初心者であり、ドキュメントは高度なユーザー向けのようです。 https://developers.google.com/apps-script/guides/html/templates
一部のプラグインは同じ作業をしていますが、私のワークスペースには許可されていません。それは非常に困難です、私は3日以来それを解決しようとしていますが、私はまだできません。
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<? solution1 ?>
</body>
</html>
// This constant is written in column O for rows for which an email
// has been sent successfully.
var EMAIL_SENT = "EMAIL_SENT";
function testSchemas() { {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = sheet.getLastRow();
var numRows = 1;
var dataRange = sheet.getRange(startRow, 1, numRows, 15)
var data = dataRange.getValues();
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var name = row[2];
var surname = row[3];
var salesRepEmail = row[4];
var qualityAnalystEmail = "[email protected]"
var customerEmail = row[5];
var websiteURL = row[6];
var solution1 = row[7];
function doGet() {
return HtmlService
.createTemplateFromFile('mail_template')
.evaluate();
}
var htmlBody = HtmlService.createHtmlOutputFromFile('mail_template').getContent();
var emailSent = row[14]; // Third column
if (emailSent != "EMAIL_SENT") { // Prevents sending duplicates
/*MailApp.sendEmail(customerEmail, subject, message, {
cc: "",
bcc: qualityAnalystEmail + ", " + salesRepEmail
}); */
MailApp.sendEmail({
to: customerEmail,
bcc: qualityAnalystEmail + ", " + salesRepEmail,
subject: 'Résumé De Notre Consultation Du Site Mobile ' + websiteURL,
htmlBody: htmlBody,
});
}
Logger.log(name);
sheet.getRange(startRow + i, 15).setValue(EMAIL_SENT);
// Make sure the cell is updated right away in case the script is interrupted
SpreadsheetApp.flush();
}
}
}
です。おかげさまで、ありがとうございます。それはまだ動作していない、それは私がやった何か愚かかもしれません。 –
申し訳ありません、マーヴィン、それは単なる書式ですが、あなたのコードを見て、別の関数の中でdoGet()関数を実際に呼び出そうとしていますか?あなたのスクリプトは、まずWebアプリケーションとしてデプロイする必要があります。公開されたWebアプリケーションにそのURLを開いてアクセスすると、アプリケーションは着信GET要求を受け取り、doGet()関数を実行します –