自动下推(autopush)之后,目标单金额字段无法更新

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

自动下推(autopush)之后,目标单金额字段无法更新

1 问题描述

(1)采购申请单审核之后,执行自动下推服务。下推生成采购订单。 自动下推生成的采购订单列表中的【汇总金额】字段没有数据,而打开采购订单详情看到【汇总金额】有数据。

(2)如果采购申请单审核之后,手动执行下推生成采购订单,并在采购订单表单页面上点击保存,这时采购订单表单详情页和列表页面的【汇总金额】字段都有数据。

2 原因分析

 第一步:看目标单据(采购订单)金额字段的值是从哪里赋值上去。排查发现不是通过转换规则携带下来的,是通过单据体里的“汇总至字段”功能,把分录的金额字段的和汇总至【汇总金额】。

第2步:分析为什么不管是自动下推,还是手动下推,表单上都有值;

      平台对单据头【汇总金额】的处理逻辑是kd.bos.form.control.EntryGrid#postLazySummaryAction对单据头的金额汇总字段进行更新,即在页面打开加载时,会遍历单据体的金额字段值并赋值给单据头的【汇总金额】字段。因此不管从哪里下推生成的数据,打开表单时,都会看到【汇总金额】有数据。

第3步:为什么自动下推,列表上看不到【汇总金额】字段的值,而手动点击下推又有值。

     手动下推时,打开表单页面,实际上会执行第2步的逻辑给【汇总金额】字段赋值,但是这时赋值只是给数据模型model赋了值,那么这时用户点击保存时,获取的是当前页面的数据模型model里的数据包进行存库,这就是为什么手动下推之后在列表上能看到汇总金额字段的值。

       自动下推的过程,并不会触发”汇总至字段“这个kd.bos.form.control.EntryGrid#postLazySummaryAction逻辑的赋值,因此自动下推后自动保存的数据,在列表上自然看不到【汇总金额】的值。

3 解决方法

通过转换规则中的业务规则里的合计函数给采购订单单据头的【汇总金额】字段赋值。

自动下推(autopush)之后,目标单金额字段无法更新

1 问题描述(1)采购申请单审核之后,执行自动下推服务。下推生成采购订单。 自动下推生成的采购订单列表中的【汇总金额】字段没有数据,...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息