点晴MIS问题教程区 加入收藏
问题搜索
 您的位置:点晴OA办公管理信息系统『 工作流使用交流 』浏览当前教程  
  

  网站搜索
  搜索范围: 搜索方式: 关键词(可用空格分开)  

  作者及文章信息: 本文热度:15097 % 
admin

积分:75256
等级:网站管理员
文数:14405
注册:2004-7-20

 信息   主页   编辑     

楼 顶 

 工作流模板中设置的自动相加合计公式在实际申请使用时不生效,要如何处理?


工作流表单模板中设置的自动合计和相加字段为什么在实际申请使用中不生效,要如何处理?

注意1:
点晴OA工作流中自动合计以及其他计算公式的实现是通过JS实现的,JS中的“+”是连字符,不是数学意义上的数字相加减,JS中的数字相加必须通过“-(-*)”来实现。
例如:JS中的3+5=35,而不会8,要实现等于8,必须用:3-(-5),才会得到8!

注意2:
凡是参与合计预算的数字型字段,默认值都必须设置为0,否则为空的字段会导致合计失效。
上面这个例子中:CS10、CS11、CS12、CS13、CS14的默认值都必须设置为0,否则填写表单时,这几个字段中任何一个字段为空,都会导致合计失效。

注意3:
点晴OA工作流自动合计计算的自定义公式中是不支持变量嵌套的,必须全部使用第一手数据!
例如上面这个:CS16=round(CS15,2),其中的CS15就是通过上一行公式动态得到的,所以按照上面的规则,CS16一定会有问题,申请时会看到不管如何改变上面的值,CS16都会为空而不会自动改动!
CS17=conv_cur(CS16)、CS18=CS16,都存在着同样的问题!
解决办法:
将最开始CS15的计算公式直接写入到下面要引用的公式中即可,例如上面这个CS16、CS17、CS18,应该改为:
CS16=round((CS10-(-CS11)-(-CS12)-(-CS13)-(-CS14)-(-CS9)),2)
CS17=conv_cur(round((CS10-(-CS11)-(-CS12)-(-CS13)-(-CS14)-(-CS9)),2))
CS18=round((CS10-(-CS11)-(-CS12)-(-CS13)-(-CS14)-(-CS9)),2)

注意4:
如果将行输入宏控件某个字段的合计结果显示到其他地方,那么必须勾选“显示合计”,否则将无法取到合计值,从而无法显示合计值到其他地方:



特别说明:
工作流中自动合计等Javascript脚本只在申请节点生效,在审核、知会和归档节点无效。
JS无效的原因是在审核和归档节点上的信息默认不允许更改,当前操作用户没有权限修改的控件字段都会被自动替换为普通文本或者被设置为了隐藏禁止显示,不再有唯一身份识别ID,而JS脚本必须要有相关控件的唯一识别ID才能正常运算,JS的写法有很多种,对于稍微复杂的JS,系统很难判断需要参与JS运算的控件ID是否在审核或归档时存在,所以硬性规定为禁止在审核、知会和归档节点使用自定义JS脚本。

该文章在 2020/11/12 16:04:56 编辑过

  离 线  2016-8-16 18:47:38 

admin

积分:75256
等级:网站管理员
文数:14405
注册:2004-7-20

 信息   主页   编辑  

A9楼 
 


【学酥】情商余额不足 2016-06-22 16:31:48

我这样试了一下。。纹丝不动。。我服了

【学仙】点晴客服 2016-06-22 16:31:58
当然!
因为你CS24后面的那个括号是中文括号!!!
必须用英文括号!!!!!

【学酥】情商余额不足 2016-06-22 16:32:39
我说的是第一个光等于。。
那个也不动呢?

【学仙】点晴客服 2016-06-22 16:32:56
任何一个有错,都会导致JS异常!

【学酥】情商余额不足 2016-06-22 16:36:31
泪流满面,大哥早说要英文字符就没事了。。
可以了

【学仙】点晴客服 2016-06-22 16:36:53
我也是刚刚看到的

该文章在 2016/10/28 17:09:01 编辑过

  离 线  2016-10-28 17:09:01 

admin

积分:75256
等级:网站管理员
文数:14405
注册:2004-7-20

 信息   主页   编辑  

A8楼 
 


【学霸】青春无 2016-10-28 16:17:16
帮我看下,合计怎么不能自动计算呢

金额可以自动计算,总合计不行

【学仙】点晴客服 2016-10-28 16:17:52
公式中不允许有中间变量!

【学霸】青春无 2016-10-28 16:18:06
哪个地方错了

【学仙】点晴客服 2016-10-28 16:18:27


CS10是一个中间变量值,不允许在CS11的公式中出现,将CS11改为直接计算值

【学霸】青春无 2016-10-28 16:23:50
我改成  CS11=conv_cur(round(SUM_SON06,2)) 这样子也不行吗

【学仙】点晴客服 2016-10-28 16:25:32
可以,就应该是这样

【学霸】青春无 2016-10-28 16:33:25

是这个问题,没有点这个合计

【学仙】点晴客服 2016-10-28 16:53:44
当然,你不勾选显示合计的话,页面就根本不会有这个合计值,当然流无法自动计算了。

该文章在 2016/10/28 17:09:33 编辑过

  离 线  2016-10-28 17:09:32 

admin

积分:75256
等级:网站管理员
文数:14405
注册:2004-7-20

 信息   主页   编辑  

A7楼 
 


【学渣】Bill 2016-11-08 10:58:20
请问,这个行输入控件下面不合计是什么原因呢


这个是行输入控件里勾选的显示合计,应该是自动的

【学仙】点晴客服 2016-11-08 10:59:20
金额怎么可能会是文本??
另外:
发生日期为什么不用日期型?单据张数为什么不用数字型?

【学渣】Bill 2016-11-08 10:59:50
太粗心了

该文章在 2016/11/8 11:23:50 编辑过

  离 线  2016-11-8 11:14:41 
  本文章共有 1 页, 3 张回文,每页有 10 张回文 >> [ 1 ]
页码:  

Copyright 2010-2023 ClickSun All Rights Reserved