[AX2012]发送广播邮件
AX 2012可以使用MAPI或者SMTP发送邮件,MAPI是客户端方法,需要outlook的协作,而SMTP则是服务器端方法,要求SMTP允许AOS服务器通过它中继。这里要讲的就是如何通过SMTP发送邮件广播。
- 设置SMTP邮件服务器:转到 System administration>Setup>System>E-mail parameters,outgoing mail server 填写SMTP服务器名称或者IP,local computer name可以留空,勾选NTLM不要求输入用户密码,如果是在sever tier上运行就使用AOS服务的账号,如果是在客户端则使用客户端用户的账号。
- 配置EMAIL模板:转到 Organization administration>Setup>E-mail templates,勾选form上的show system e-mail复选框,只有系统邮件才能用于邮件广播。创建一个新的邮件模板,可以为邮件模板创建多个语言版本,邮件的具体内容可以使用HTML或者XSLT两种格式之一,两者内联变量的格式不同。比如使用HTML,HTML code是这样:
<p>Dear %UserName%,</P>
<br/ >
<p>Please .....</p>
<br/ >
这里%username%会自动替换为AX用户名称。email template有个batch group选项,选择一个batch group可以将邮件通过batch job来发送,在发送大量邮件时有助于改善性能。
- 发送广播邮件:转到System administration>Periodic>E-mail processing>E-mail broadcast,选择一个email模板,receiver可以选择所有用户或者在线用户,点击OK后如果不是使用batch(email temlate的batch group留空不等于使用empty batch group,而确实是不使用batch group),邮件会发送给相应用户的邮件地址,用户的邮件地址是在用户的options里面设定的。如果使用batch发送邮件,AX将为每个邮件创建一个batch job,运行SysEmailBatch,由它将邮件发送出去。表面上比较简单,而实际上是系统针对每个用户调用SysEmailSystemTable::sendMail(),SysEmailSystemTable::sendMail有个参数_isTraceable,默认为false,表示直接调用SysEmailBatch来完成发送;如果_isTraceable为true,那么邮件会被添加到表SysOutgoingEmailTable等候发送。SysEmailBatch会检查邮件模板的batch group,如果有设置则把自己添加到batch jobs队列,否则直接运行run()方法发送邮件。有意思的是SysEmailBatch.run()也会检查它的一个类变量isTraceAble,和上面一样,如果为true,邮件会被再一次试图放到表SysOutgoingEmailTable等候发送。看到的情况是类变量isTraceAble被初始化为false,所以SysEmailBatch.run()直接调用SysMailerNet.sendMail()最终发送邮件出去。 那些在SysOutgoingEmailTable表中的邮件我们可以在System administration>Periodic>E-mail processing>E-mail sending status查看,这些邮件又是如何发送出去的呢?这时候我们需要使用System administration>Periodic>E-mail processing>Batch创建一个发送邮件的batch job,由它定期调用SysEmailDistributor来派发邮件,SysEmailDistributor直接使用SysMailerNet将邮件依次派发。
如果发生广播邮件时我们选择对在线用户发送,系统会对每一个用户session安排一封邮件,如果一个用户有很多session(非常常见,管理员可能更多),它将收到N多重复的邮件,让人不得不吐槽。
[AX2012]发送广播邮件的更多相关文章
- CI框架使用PHPmail插件发送QQ邮件:
有助请顶,不好请评.0:33 2016/3/12CI框架使用PHPmail插件发送QQ邮件:发送成功,不过修改了主机参数,还包含了一个phpmail中的一个另外的文件,详见下方:参见:http://c ...
- 如何利用sendmail发送外部邮件?
在写监控脚本时,为了更好的监控服务器性能,如磁盘空间.系统负载等,有必要在系统出现瓶颈时,及时向管理员进行报告.在这里通常采用邮件报警,同时,邮件设置为收到邮件,即向指定手机号码发送短信.这样可以实现 ...
- outlook 2016 for windows 每次刷新发送接收邮件会弹出登陆界面
Q: outlook2016 for windows 每次刷新发送接收邮件会弹出登陆界面,office365 ProPlus 都是正常激活了,Word 和Excel都不存在此类问题 A: 排除用户的o ...
- 使用phpmailer发送smtp邮件时提示 SMTP Error: Could not authenticate 错误
使用phpmailer发送smtp邮件时提示 SMTP Error: Could not authenticate 错误 这个错误是验证出现错误, $mail->Port = 25; //SMT ...
- 关于NK3C使用富文本编辑器(CKEditor)发送HTML邮件的使用说明
目前NK3C发送HTML邮件使用的的编辑器是CKEditor4.6版本,关于CKEditor的使用说明如下: 1.依赖JQuery1.7版本以上,在xxx.vm中<head>< ...
- .Net Mail SMTP 发送网络邮件
刚刚迈入"开发"的行列 一直有一个想法 我什么时候能给我庞大的用户信息数据库给每一位用户邮箱发送推荐信息呢? 刚迈入"编程两个月的时间" 我采用 SMTP 发送 ...
- 【Java EE 学习 21 下】【使用java实现邮件发送、邮件验证】
一.邮件发送 1.邮件发送使用SMTP协议或者IMAP协议,这里使用SMTP协议演示. SMTP协议使用的端口号:25 rfc821详细记载了该协议的相关信息 (1)使用telnet发送邮件(使用12 ...
- WordPress用户注册无法发送密码邮件怎么回事?
wordpress无法发送电子邮件.可能原因:您的主机禁用了 mail() 函数 等等几句话.在网上一搜,很快找到了解决方案:使用wp-mail-smtp插件. 一.插件下载安装.可以在wordpre ...
- 5分钟 wamp下php phpmaile发送qq邮件 2015最新方法说明
13:40 2015/11/20 5分钟 wamp下php phpmaile发送qq邮件 2015最新方法说明 关键点:现在qq邮箱开通smtp服务后会给你一个很长的独立新密码,发邮件配置中的密码需要 ...
随机推荐
- 跟我学STL系列(1)——STL入门介绍
一.引言 最近这段时间一直都在自学C++,所以这里总结下自己这段时间的学习过程,通过这种方式来巩固自己学到的内容和以备后面复习所用,另外,希望这系列文章可以帮助到其他自学C++的朋友们. 由于本人之前 ...
- 实验三 组合逻辑电路的VHDL设计
一.实验目的 熟悉QuartusⅡ的VHDL文本设计过程,学习简单组合逻辑电路的设计.仿真和测试方法. 二.实验内容 1. 基本命题 完成2选1多路选择器的文本编辑输入(mux21a.vhd)和仿真测 ...
- PAAS平台的web应用性能测试与分析
引言 为什么我会写这一篇博客,因为最近很多京东云擎jae的用户反应一个问题就是他们部署在jae上面的应用访问很慢,有极少数应用甚至经常出现504超时现象,当然大家首先想到的是jae性能太差,这也是人之 ...
- JavaScript this 总结(含 ES6)
本文主要总结自<JavaScript 语言精粹>.部分总结自<JavaScript 高级程序设计>以及自己的经验 四种调用模式 在 JavaScript 中,this 的值取决 ...
- 【Android】进入Material Design时代
由于本文引用了大量官方文档.图片资源,以及开源社区的Lib和相关图片资源,因此在转载的时候,务必注明来源,如果使用资源请注明资源的出处,尊重版权,尊重别人的劳动成果,谢谢! Material Desi ...
- Atitit.研发管理--提升效率--软件开发方法DSM总结o99
Atitit.研发管理--提升效率--软件开发方法DSM总结o99 1. 什么是DSM? 1 2. DSM使用的语言DSL 2 3. 模型的优点 2 4. DSM 跟与MDA区别 2 5. MDA的实 ...
- iOS开发---集成百度地图
由于iOS MapKit框架很多情况并不能满足我们的需求,我们可以选择集成百度地图,那该如何操作呢? 申请Key 登录百度API管理中心申请Key http://lbsyun.baidu.com/ap ...
- Eclipse连接到My sql数据库之前操作
Eclipse连接到My sql数据库之前操作 1:首先是安装My sql数据库(为了减少你的麻烦,按照下面的连接,下载即可)百度云链接:http://pan.baidu.com/s/1mitWmbm ...
- Spring之@Configuration配置解析
1.简单的示例: @Configuration @EnableConfigurationProperties({DemoProperties.class}) public class DemoConf ...
- asp.net mvc通过预处理实现数据过滤和数据篡改。
需求特别简单.在 Controller加过滤器.实现在所有的方法上增加id=12312321312.另外将price篡改为price+5. 这样做可以最大的减少代码的改动量,人员变动厉害,业务也模糊了 ...