天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 1588|回复: 5

对子表统计求和问题

[复制链接]
xxychao 发表于 2012-2-14 11:43:12 | 显示全部楼层 |阅读模式
本帖最后由 irene 于 2012-2-20 09:59 编辑

我的主表上的十个字段,是从子表中统计同一字段不同分类的数据和,我的代码如下,不管是新建还是返回、保存,系统都会去计算这几个值,这项工作最影响速度。

var docid = getId();
var dayid = getToday();

var sql="select sum(item_金额) from tlk_子表单 where ITEM_分类 ='费用01'";
sql +="and parent='"+docid+"'";
sql +="and LASTMODIFIED like '" +format(dayid,"yyyy-MM-dd") + "%'";
var value = sumBySQL(sql);
value;

求助,如何做能实现在新建、保存、返回时,不去计算这些值?多谢!或者说怎么样能最大限度的提高这个效率?
我的主表记录有3万、子表4万。点击新建要13.7S,返回要10S,保存要18.9S。
suyisene 发表于 2012-2-14 13:49:08 | 显示全部楼层
本帖最后由 suyisene 于 2012-2-14 13:54 编辑

您好,你的这些脚本是写在哪里的啊?是写在表单的一些字段的值脚本么?值脚本会在打开 保存操作里面 会执行
的哦
 楼主| xxychao 发表于 2012-2-14 14:12:20 | 显示全部楼层
我是写在表单的字段值脚本中,有没有其他思路解决?
purple 发表于 2012-2-14 16:19:37 | 显示全部楼层
您可以加一个判断,打开的时候,拿到当前文档ID,去数据库查询是否存在该记录,存在即执行您的脚本,否则不执行,相对而言,能减少您脚本的执行次数,提高效率。
 楼主| xxychao 发表于 2012-2-14 16:22:47 | 显示全部楼层
能不能在用sumSubDocument("子表单","金额");汇总时直接用SQL再算出那几个值然后对表单中的字段赋值来处理?
purple 发表于 2012-2-14 17:12:29 | 显示全部楼层
不好意思,没太明白您的意思,汇总时直接用SQL再算出那几个值然后对表单中的字段赋值来处理?方便解释下嘛?使用sumSubDocument("子表单","金额");必须保证只是汇总执行列的值,不可以加条件的。

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 20:26

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表