发送邮件.二开案例.设置不同菜单绑定不同的套打模板
【场景】设置不同菜单的发送邮件绑定不同的套打模板
【说明】
使用此功能的单据,默认邮件模板不要设置默认发送PDF和默认发送EXCEL;
避免同时生成多个文件,导致发送邮件的时候使用错误的文件发送
【二开方案】
(0)发送邮件表单 BOS_SendMail增加二开插件,支持获取父界面的自定义参数设置PDF模板
![image.webp](/download/0100755339f5341b45feb53d900a54518efd.webp)
```python
import clr
clr.AddReference("mscorlib")
clr.AddReference("System.Data")
#本次引用
clr.AddReference("Kingdee.BOS.Core")
from System import *
from System.Collections.Generic import *
from System.Data import *
##本次引用
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from System.Threading import Thread;
def AfterBindData(e):
if this.View.ParentFormView == None or this.View.ParentFormView.Session == None:
return;
paraKey = "Custom_MailSend_DefaultPDFTemp";
if not this.View.ParentFormView.Session.ContainsKey(paraKey):
return;
##使用此功能的单据,邮件模板不要设置默认套打模板
##避免多个文件同时生成,导致发送邮件最终使用的默认套打模板的文件
##将父视图的模板id设置到模板字段
templateId = this.View.ParentFormView.Session[paraKey];
##设置模板值
this.View.Model.SetValue("FCmbPDFTemp", templateId);
this.View.UpdateView("FCmbPDFTemp");
##设置勾选发送PDF
this.Model.EndIniti();
this.View.Model.SetValue("FCbPdf", True);
this.View.UpdateView("FCbPdf");
this.Model.BeginIniti();
this.View.ParentFormView.Session.Remove(paraKey);
```
(1)设置不同菜单绑定不同的PDF模板
![image.webp](/download/01006cea5600499e47c09d29c8b91e0a3c7b.webp)
![image.webp](/download/010012a8d2a87ad84b6890421797a78ee89a.webp)
```python
import clr
clr.AddReference("mscorlib")
clr.AddReference("System.Data")
#本次引用
clr.AddReference("Kingdee.BOS.Core")
from System import *
from System.Collections.Generic import *
from System.Data import *
##本次引用
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
def BarItemClick(e):
paraKey = "Custom_MailSend_DefaultPDFTemp";
##点击菜单A使用模板A
if (e.BarItemKey.Equals("tb_SendMailA", StringComparison.OrdinalIgnoreCase)):
this.View.Session[paraKey] = "29841879-bba8-4f7c-8988-7393511f130b";##套打模板A的模板标识
return;
##点击菜单B使用模板B
if (e.BarItemKey.Equals("tb_SendMailB", StringComparison.OrdinalIgnoreCase)):
this.View.Session[paraKey] = "3113b824-db91-4c70-b8c6-251ffb08ec2f";##套打模板B的模板标识
return;
```
【演示效果】
![20240206 2007.webp](/download/0100fd161d5015874e518777ff50426bb49a.webp)
发送邮件.二开案例.设置不同菜单绑定不同的套打模板
【场景】设置不同菜单的发送邮件绑定不同的套打模板【说明】使用此功能的单据,默认邮件模板不要设置默认发送PDF和默认发送EXCEL;避免同时...
点击下载文档
本文2024-09-16 18:11:32发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-20535.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章