Foxtable(狐表)用户栏目专家坐堂 → [求助]关于SQLCompute


  共有1923人关注过本帖树形打印复制链接

主题:[求助]关于SQLCompute

帅哥哟,离线,有人找我吗?
81538475
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1287 积分:10368 威望:0 精华:1 注册:2018/1/20 12:40:00
[求助]关于SQLCompute  发帖心情 Post By:2018/8/23 23:06:00 [只看该作者]

现在遇到了一个矛盾的事情。
目的是让父表的 “剩余” 列。= “APC”列 - 所有子表的 “当月人天” 列
如果使用SQLcompute ,如果修改的值没有保存,是不对的。
如果使用compute,会导致有些没有加载的数据没有加入计算。
这里还不能用表达式,因为后面要引用这个计算出来的值

下面是在 datacolchanged 里面的代码
        Dim sum2 As Double
        For Each dr As DataRow In DataTables("xmzb").DataRows
            sum2 = DataTables("XMFP").SQLCompute("Sum(当月人天)","BH =  '" & dr("BH") & "' ")
            dr("剩余") = dr("apc") - sum2
            dr("总") = dr("apc") - dr("剩余")
        Next

[此贴子已经被作者于2018/8/23 23:06:50编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107671 积分:547676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/23 23:10:00 [只看该作者]

1、先保存再计算
2、compute计算已经加载的,然后SQLcompute 计算排除掉已经加载的,排除条件可以参考:http://www.foxtable.com/webhelp/scr/2228.htm。这种比较麻烦,控制不好也容易出错。建议还是先保存吧

 回到顶部
帅哥哟,离线,有人找我吗?
wyz20130512
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1247 积分:9428 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2018/8/23 23:13:00 [只看该作者]

给个截图看看

 回到顶部
帅哥哟,离线,有人找我吗?
81538475
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1287 积分:10368 威望:0 精华:1 注册:2018/1/20 12:40:00
  发帖心情 Post By:2018/8/23 23:40:00 [只看该作者]

以下是引用有点蓝在2018/8/23 23:10:00的发言:
1、先保存再计算
2、compute计算已经加载的,然后SQLcompute 计算排除掉已经加载的,排除条件可以参考:http://www.foxtable.com/webhelp/scr/2228.htm。这种比较麻烦,控制不好也容易出错。建议还是先保存吧

我看看第二种方法把。不能改一个数字就保存下呀,这样的话,没办法撤销了

 回到顶部