2

我试图弄清楚如何获取涉及电子邮件列的数据库信息,用所有电子邮件创建一个数组,然后使用“按钮”功能填充电子邮件页面的“收件人:”部分。

任何帮助表示赞赏。在这方面非常新,并指出我在哪里获取信息会很棒。谢谢

4

2 回答 2

5

我建议您运行一个服务器脚本来查询包含电子邮件的数据源。该脚本将如下所示:

function getEmails(){

  var query = app.models.<yourmodel>.newQuery();
  var results = query.run();

  var allEmails = [];

  if(results.length > 0){  
    for(var i = 0; i < results.length; i++){    
      var uniqueEmail = results[i].<emailfieldname>;
      allEmails.push(uniqueEmail);      
    }
  }

  return allEmails.join();      

}

然后将脚本添加到按钮小部件“onclick”事件,该事件将运行服务器脚本并操作返回的数据。与此类似的东西:

function poulateToField(response){

  <widget path>.text/value = response;

}

google.script.run.withSuccessHandler(poulateToField).getEmails();

上面的小部件路径将是“To:”小部件的路径,它可以是文本框、文本区域等。在我的例子中,我使用了一个文本区域,路径是这个“ widget.parent.descendants.TextArea1 .值

我希望这有帮助。如果您有更多问题,请告诉我!:)

PD 请不要忘记查看官方文档以获得更好和更详细的解释。

于 2017-01-14T02:18:05.627 回答
2

您还可以使用投影从数据源中获取项目(电子邮件)列表。根据这篇文章https://developers.google.com/appmaker/ui/binding#projections

投影允许您访问数据源项目列表中记录的属性。使用高级绑定向导中的 ..projections.. 选项访问投影,或在绑定路径中使用投影运算符 ..。例如,对于具有 name 属性的员工数据源,@datasources.Employee.items..name 返回所有员工姓名的列表。

您可以查看“呼叫脚本”指南,该指南向您展示如何使用应用制作工具发送电子邮件,该指南可在此处获得https://developers.google.com/appmaker/tutorials/call-scripts/

要使用投影并遵循上述指南,在“创建 UI”下的步骤 #2中:为收件人添加一个文本框:

C。在属性编辑器中,您可以选择绑定并将小部件绑定到遵循以下路径的数据源投影,而不是将“To”值输入到文本框小部件:数据源 > 项目 > ..projections.. > 电子邮件(数据源的名称电子邮件所在的字段)

例如,投影将如下所示:@datasource.items..email

这将自动将数据源中可用的所有电子邮件绑定到文本框小部件。然后您可以完成指南,电子邮件将发送到您数据源中的所有电子邮件地址。希望这可以帮助。

于 2017-01-14T03:01:16.590 回答