Foxtable(狐表)用户栏目专家坐堂 → [求助]计算代码转换过程中出现问题!


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

主题:[求助]计算代码转换过程中出现问题!

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/12/10 10:51:00 [显示全部帖子]

没有明白你的意思。
其实没有什么特别的,只需将DatacolChanged改为:

Select Case e.DataCol.Name
    Case "A","B"
        原计算代码1
    Case "D","E"
        原计算代码2
End Select

[此贴子已经被作者于2008-12-10 10:51:43编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/12/10 11:58:00 [显示全部帖子]

呵呵,老兄你应该看一下帮助才开始改啊。
错误提示,出现死循环,你直接将计算代码移到DataColChanged事件中,任何一列的变化都会触发此事件,然后此事件又导致其他列发生变化,如此循环,自然出错。
最好这样改一下:

If e.DataCol.Name = "日期" Orlse e.DataCol.Name = "矿点" Then

    Select Case vars("HZ")

        Case 1 '按日期汇总按扭

            e.DataRow("一车间_车数") = DataTables("明细表").Compute("sum(车数)", "[日期] = '" & e.Datarow("日期") & "' and [车间] = '一车间'")

            e.DataRow("一车间_毛重") = DataTables("明细表").Compute("sum(毛重)", "[日期] = '" & e.Datarow("日期") & "' and [车间] = '一车间'")

            e.DataRow("一车间_净重") = DataTables("明细表").Compute("sum(扣杂)", "[日期] = '" & e.Datarow("日期") & "' and [车间] = '一车间'")

 

        Case 2  '按全部矿点分日期汇总按扭

            e.DataRow("一车间_车数") = DataTables("明细表").Compute("sum(车数)", "[矿点] = '" & e.Datarow("矿点") & "' and [车间] = '一车间'and  [日期] >= '" & vars("date0") & "' and [日期] <= '"& vars("date1") & "' ")

            e.DataRow("一车间_毛重") = DataTables("明细表").Compute("sum(毛重)", "[矿点] = '" & e.Datarow("矿点") & "' and [车间] = '一车间'  and  [日期] >= '" & vars("date0") & "' and [日期] <= '"& vars("date1") & "' ")

            e.DataRow("一车间_净重") = DataTables("明细表").Compute("sum(扣杂)", "[矿点] = '" & e.Datarow("矿点") & "' and [车间] = '一车间' and  [日期] >= '" & vars("date0") & "' and [日期] <= '"& vars("date1") & "' ")

    End Select

End If




[此贴子已经被作者于2008-12-10 12:00:24编辑过]

 回到顶部