以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [已解决]ADOXBuilder创建的表的COMPUTE无效 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=60253) |
-- 作者:狐作非为 -- 发布时间:2014/11/21 8:43:00 -- [已解决]ADOXBuilder创建的表的COMPUTE无效 compute 不能按以下用法吗 ,其中要统计的是 以日期 2014-12-1 形式的整数型列, t.Compute("sum(cl.Name)","产品型号=\'" & e.DataRow("产品型号") & "\'") 无效,请问怎么解决
[此贴子已经被作者于2014-11-21 19:57:40编辑过]
|
-- 作者:Bin -- 发布时间:2014/11/21 8:57:00 -- t.Compute("sum(" & cl.Name & ")","产品型号=\'" & e.DataRow("产品型号") & "\'") |
-- 作者:狐作非为 -- 发布时间:2014/11/21 9:23:00 -- 依然无效,上例子求助 |
-- 作者:Bin -- 发布时间:2014/11/21 9:26:00 -- Dim daysum1,daysum2 As Integer Dim TB As WinForm.TextBox = e.Form.Controls("TextBox1") For Each cl As Col In Tables("执行表").Cols If cl.Name.Contains("20") Then daysum1=Tables("执行表").Compute("sum(" & cl.Name & ")","订单号=\'" & Tables("执行表").Current("订单号") & "\'") tb.Value= daysum1 End If Next 没有问题.但是你这样 永远都显示最后一列的统计值
|
-- 作者:狐作非为 -- 发布时间:2014/11/21 9:28:00 -- 哦,我要求是每一列都要求和的,如果统计值大于500就到下一列,麻烦指导 |
-- 作者:Bin -- 发布时间:2014/11/21 9:32:00 -- 所有列加在一起? |
-- 作者:狐作非为 -- 发布时间:2014/11/21 9:34:00 -- 后面会再新增行,如果同订单的某一天如果超过500,就从下一个日期开始,例子中,12-1号a 订单已经有300了,如果我再增加一行,也是a订单,如果是500,新增行的12-1号只能设置200,因为同订单的12-1号已经达到500 ,所以剩余的300要放到12-2号,这样的 |
-- 作者:狐作非为 -- 发布时间:2014/11/21 9:40:00 -- 不是,都是从12-1号开始,12-1前面已经到了500就到12-2 类推,只统计当天的 [此贴子已经被作者于2014-11-21 9:39:52编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/11/21 9:42:00 -- compute不统计,是因为你的列名不规范。
你这种列名要用[]括起来 |
-- 作者:狐作非为 -- 发布时间:2014/11/21 9:48:00 -- 不能实现吗?那怎么变通呢?冰版,甜版 |