二开-Python插件-拼接供应商所有联系人邮箱原创
金蝶云社区-奔放的热干面
奔放的热干面
8人赞赏了该文章 48次浏览 未经作者许可,禁止转载编辑于2024年11月12日 09:11:14
  1. 基础平台提供了发邮件的功能,但是一些业务单据的邮箱只带出了默认联系人一个邮箱,有时候业务场景是要群发邮件,这时候原邮箱字段就不满足了。

  2. 基础平台发送邮件功能选择邮箱字段,可以识别逗号隔开的文本,所以,我们自定义一个邮箱字段,用以下Python脚本来拼接

  3. 注意业务单据中供应商(或客户等基础资料)需要添加联系人的邮箱引用。

  4. 在保存操作注册Python插件,操作完成刷新字段选择该邮箱字段

  5. import clr
    clr.AddReference('System')
    clr.AddReference('Kingdee.BOS')
    clr.AddReference('Kingdee.BOS.Core')
    
    from System import *
    from Kingdee.BOS import *
    from Kingdee.BOS.Core import *
    
    def OnPreparePropertys(e):
        e.FieldKeys.Add("FSupplierId")
    
    def BeginOperationTransaction(e):
        if e.DataEntitys == None:
            return
        for entity in e.DataEntitys:
            supplier = entity["SupplierId"]
            if not supplier is None:
                contract = supplier["SupplierContact"]
                if not contract is None and contract.Count > 0:
                    emails=""
                    for item in contract:
                        if item["ConForbidStatus"] == "A":
                            emails+=item["EMail"]+","
                    if emails.Length > 0:
                        if entity["邮箱字段"] is None or entity["邮箱字段"]=="" or entity["邮箱字段"].isspace():
                            entity["邮箱字段"]=emails.TrimEnd(',')
图标赞 8
8人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!