从AppMaker数据库生成电子邮件列表

时间:2017-01-13 23:38:33

标签: google-app-maker

我试图找出如何获取涉及电子邮件列的数据库信息,制作包含所有电子邮件的数组,然后使用“按钮”功能填充电子邮件页面的“收件人:”部分。< / p>

感谢任何帮助。非常新的,并指出我在哪里获取信息将是伟大的。感谢

2 个答案:

答案 0 :(得分:3)

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

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.value

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

Pd积。请不要忘记查看 official documentation 以获得更好,更详细的说明。

答案 1 :(得分:2)

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

  

通过投影,您可以从数据源中的记录访问属性   物品清单。使用..projections ..选项访问投影   高级绑定向导,或使用投影操作符..   绑定路径。例如,对于具有名称的Employees数据源   property,@ datasources.Employee.items..name返回所有的列表   员工&#39;名。

您可以查看&#34;呼叫脚本&#34;指南,向您展示如何使用App Maker发送电子邮件,该电子邮件可在https://developers.google.com/appmaker/tutorials/call-scripts/

中找到

要使用投影并遵循上述指南,请在步骤#2 下的&#34;创建用户界面&#34;:为收件人添加文本框:

℃。在属性编辑器中,而不是输入&#34; To&#34;对于Textbox小部件的值,您可以选择Binding并将小部件绑定到遵循以下路径的Datasource投影: datasource&gt;项目&gt; ..projections ..&gt;电子邮件(电子邮件所在的数据源字段的名称)

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

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