电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

如何实现在检验单的上游单据上体现检验过程花费的时长

来源:金蝶云社区作者:金蝶2024-09-238

如何实现在检验单的上游单据上体现检验过程花费的时长

需求描述以来料检验为例,设置了收料单审核自动生成检验单,但是由于质检过程比较长,需要在收料通知单列表可以体现出检验过程花费的时长(即收料单单审核到检验单审核之间的时长)。

解决方案:1、检验单表体增加长日期字段--收料通知单审核日期:

2、收料通知单到检验单单据转换字段映射增加收料单审核日期到该字段的映射:

3、 收料通知单明细表体增加文本字段-检验时长:

4、检验单操作列表的审核操作上的服务插件中注册python插件,实现审核后计算审核日期与收料单审核日期时间差反写回收料通知单的检验时长字段上:

5、示例代码如下:

import clr

clr.AddReference("System")

clr.AddReference('Kingdee.BOS')

clr.AddReference('Kingdee.BOS.Core')

clr.AddReference('Kingdee.BOS.App')


from System import*

from Kingdee.BOS import*

from Kingdee.BOS.Core import *

from Kingdee.BOS.Core.Metadata.EntityElement import*

from Kingdee.BOS.App.Data import*

from System import DateTime


def OnPreparePropertys(e):

    e.FieldKeys.Add("FBillNo")

    e.FieldKeys.Add("FSId")

    e.FieldKeys.Add("FRecieveDatetime")


def AfterExecuteOperationTransaction(e):

    for head  in e.DataEntitys:

        auditDate=head["ApproveDate"]

        entrys=head["Entity"]

        for entry in  entrys:

            receivedate=entry["RecieveDatetime"]

            ss=auditDate-receivedate

            diff1=ss.Days#时间差:天

            diff2=ss.Hours#时间差:小时

            diff=ss.Minutes#时间差:分钟

            linkEntrys=entry["FEntity_Link"]

            for linkentry in  linkEntrys:

                srcId=linkentry["SId"]

                #

如何实现在检验单的上游单据上体现检验过程花费的时长

需求描述:以来料检验为例,设置了收料单审核自动生成检验单,但是由于质检过程比较长,需要在收料通知单列表可以体现出检验过程花费的时长...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信