ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
【说明】 发送邮件功能的配置可以分为两种,一种是使用特定操作中的发送邮件。另外一种是向表中插入数据,后台开启一个应用程序,插入一条数据就发送一条邮件。下面一一进行讲述 【准备工作】 1、[点击下载发送邮件jar包](https://bs-resource.oss-cn-zhangjiakou.aliyuncs.com/bs%E6%96%87%E6%A1%A3/%E5%8F%91%E9%80%81%E9%82%AE%E4%BB%B6.zip) ,解压后目录结构如下: ![](https://img.kancloud.cn/88/81/8881c6d089746a43987d4d7ff6954fbc_771x265.png) 2、执行目录下的sql <br> 【功能配置】 1、添加邮件服务器设置功能:执行完sql后,会生成一个编号为**3000005**的BS表单,如果已经存在这个编号,打开SQL后替换所有的**3000005**为新编号即可。 ![](https://img.kancloud.cn/fc/fa/fcfa649bdc5d10ca8798f12da5cd3387_1877x883.png) 2、在OA模块设计器中添加对应模块的业务,并给业务赋权 ![](https://img.kancloud.cn/9d/85/9d85aa1d36965e4b9a5bc50cbad5ebed_1920x805.png) 3、如果没有**MailSetting** 这个表,下载 **准备工作** 中的jar包,执行sql 4、在对应的邮箱中设置开启 POP3/SMTP服务 ,这里以 QQ 邮箱为例。打开QQ邮箱,**设置 -> 账户 -> 开启 POP3/SMTP 服务**,如图: ![](https://img.kancloud.cn/2e/65/2e654ac28f9dcb8dba10a5a92427c1e3_1157x353.png) 5、开启时会进行验证,验证完成后会给你一个授权码,这个授权码要记住,后面会用到。 ![](https://img.kancloud.cn/de/0c/de0cbe78a4cf31bc5e0028e6741a8f3e_515x322.png) 【配置步骤 - 特定操作发送邮件】 1、打开BS业务,新增一条单据,配置邮箱服务器 **常用服务器地址:** 163邮箱:smtp.qiye.163.com QQ邮箱:smtp.qq.com **如果程序包是部署在阿里云服务器上,将25端口换成465端口** ![](https://img.kancloud.cn/23/b7/23b7e2750a597c8fcb64600b60c4e1ae_1920x767.png) 2、配置按钮,选择**特定操作**,编号选择**1000发送邮件,**配置查询语句,**注意:别名必须是这三个,不能修改别名** **查询语句格式:** ~~~ SELECT '要发送的邮箱号' as EmailStr, '邮件的标题' as EmailTitle, '邮件内容' as EmailContent ~~~ > 后续版本加入了sendUser 字段,可以指定发件人,默认获取的是当前登录用户。要求BS的版本在 1.5.4 以上 > 配置方式: > SELECT '要发送的邮箱号' as EmailStr, '邮件的标题' as EmailTitle, '邮件内容' as EmailContent, '发件人' as sendUser ![](https://img.kancloud.cn/9f/24/9f2451640fab923be00c7607b3894b65_1919x939.png) 3、测试 ![](https://img.kancloud.cn/42/7a/427a81d40bba23f05320474ebea974d8_1658x880.png) ![](https://img.kancloud.cn/aa/7b/aa7b463b5672ae4da220f608c1c7558e_1385x265.png) 【配置步骤 - 向表中插入数据发送邮件】 1、下载 **准备工作** 中的jar包,如果已经下载这一步可以省略。[点击下载发送邮件jar包](https://bs-resource.oss-cn-zhangjiakou.aliyuncs.com/bs%E6%96%87%E6%A1%A3/%E5%8F%91%E9%80%81%E9%82%AE%E4%BB%B6.zip) ,解压后目录结构如下: ![](https://img.kancloud.cn/88/81/8881c6d089746a43987d4d7ff6954fbc_771x265.png) 2、执行目录下的sql,用记事本打开 **jar运行\_内容说明.bat** 文件,修改数据库连接地址 ![](https://img.kancloud.cn/21/7b/217bd4b8aa993c1275b0b6001978cabd_1440x472.png) 3、双击 **.bat **文件运行 jar 包,**注意:jar包所在的目录尽量不要包含中文字符,不然可能有问题** ![](https://img.kancloud.cn/f6/44/f6447ca8f630e989e7d742a42fa35168_993x519.png) 4、打开BS业务,新增一条单据,配置邮箱服务器 **常用服务器地址:** 163邮箱:smtp.qiye.163.com QQ邮箱:smtp.qq.com **如果程序包是部署在阿里云服务器上,将25端口换成465端口** ![](https://img.kancloud.cn/ca/b8/cab80ca410f175c215e6cacdafbfa110_1157x432.png) 5、向表中插入数据,**sendperson** 字段要和上一步设置的 **发件人****用户** 保持一致 字段解释: **touser: 发送的目标邮箱号** **title: 邮件的标题** **content: 邮件的内容** **issend: 发送状态: 0, 未发送、 1, 已发送** **sendperson:发送人,和上一步BS建立的单据中 发送人 保持一致** ![](https://img.kancloud.cn/a0/93/a093ca805ad681ff0fc751eec9c637d2_1191x188.png) ~~~ insert into ba_mailsend (billno,touser,title,content,issend,mkerid,mkerdate,sendperson) values(newid(),'发送邮箱','邮件标题','邮件内容',0,'制单人',getdate(),'发送人') ~~~ 6、测试 ![](https://img.kancloud.cn/d7/64/d764f7dd7cc7997bc73d59bbb384be18_1297x284.png) 7、查询发送记录 ![](https://img.kancloud.cn/fb/09/fb09e8cfa142381b27d616f2ab56556e_1190x496.png) 查询 **mail\_send\_history** 表,可以查询到发送的历史记录 ![](https://img.kancloud.cn/14/66/1466726c3293e6b8550ad9ccbcb19ac0_1316x550.png)