App Maker 以电子邮件 HTML 格式导出数据库 Table
App Maker Export Database Table in an Email HTML Format
我一直在整个 Internet 上搜索以 HTML 格式通过电子邮件在 google 应用程序制造商中导出数据库 table 的方法。理想情况下,我正在寻找一个简单的解决方案,例如您可以单击并确认的按钮。不一定要好看只需要好用
- 请注意,这将用于库存 table。
最好,
格兰特
您必须自己格式化 HTML table,然后使用 htmlBody
参数使用 MailApp.sendEmail()
函数。
可以编写一些通用函数,它接受记录数组和 header 数组(或模型 object)并生成 HTML table .我没有写过这样的函数,但下面是一个生成 HTML table 并通过电子邮件发送的快速而肮脏的示例。
您最好将一些事件附加到导出按钮,该按钮将 widget.datasource.items
传递给 HTML 格式化函数。
// Array of records to send
var records = [
{name:'Foo', owner:'Bob', date: new Date()},
{name:'Bar', owner:'Max', date: new Date()}
];
// Instantiate table string
var table = '<table cellspacing="0" border="1" cellpadding="15" width="400">';
// Add header
table += '<tr><th>Name</th><th>Owner</th><th>Date</th>';
for(var i in records){
var record = records[i];
table += '<tr><td>' + record.name + '</td><td>' +
record.owner + '</td><td>' +
record.date.toLocaleString() + '</td></tr>';
}
table += '</table>';
// Send via MailApp service
var message = {
to: 'me@gmail.com',
subject: 'Your HTML Table',
htmlBody: table,
body: 'Sorry, your mail client does not support HTML emails.'
};
MailApp.sendEmail(message);
并且输出:
顺便说一句,如果您在数据源上启用了分页功能,您的函数将只包含那么多记录。禁用分页或使用 var records = app.models.myModel.newQuery().run()
加载记录服务器端。您也可以通过普通的查询过滤器来过滤返回的记录。
我一直在整个 Internet 上搜索以 HTML 格式通过电子邮件在 google 应用程序制造商中导出数据库 table 的方法。理想情况下,我正在寻找一个简单的解决方案,例如您可以单击并确认的按钮。不一定要好看只需要好用
- 请注意,这将用于库存 table。
最好, 格兰特
您必须自己格式化 HTML table,然后使用 htmlBody
参数使用 MailApp.sendEmail()
函数。
可以编写一些通用函数,它接受记录数组和 header 数组(或模型 object)并生成 HTML table .我没有写过这样的函数,但下面是一个生成 HTML table 并通过电子邮件发送的快速而肮脏的示例。
您最好将一些事件附加到导出按钮,该按钮将 widget.datasource.items
传递给 HTML 格式化函数。
// Array of records to send
var records = [
{name:'Foo', owner:'Bob', date: new Date()},
{name:'Bar', owner:'Max', date: new Date()}
];
// Instantiate table string
var table = '<table cellspacing="0" border="1" cellpadding="15" width="400">';
// Add header
table += '<tr><th>Name</th><th>Owner</th><th>Date</th>';
for(var i in records){
var record = records[i];
table += '<tr><td>' + record.name + '</td><td>' +
record.owner + '</td><td>' +
record.date.toLocaleString() + '</td></tr>';
}
table += '</table>';
// Send via MailApp service
var message = {
to: 'me@gmail.com',
subject: 'Your HTML Table',
htmlBody: table,
body: 'Sorry, your mail client does not support HTML emails.'
};
MailApp.sendEmail(message);
并且输出:
顺便说一句,如果您在数据源上启用了分页功能,您的函数将只包含那么多记录。禁用分页或使用 var records = app.models.myModel.newQuery().run()
加载记录服务器端。您也可以通过普通的查询过滤器来过滤返回的记录。