以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  新人求助  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=150855)

--  作者:武圣
--  发布时间:2020/6/9 12:51:00
--  新人求助
我先把oracle外数据表添加进临时表,然后对用代码按时间进行进行汇总,但重新从oracle外数据表添加数据,为啥只显示一条数据。我已经执行过clearsubtotal方法关闭汇总了,也执行了subtotalgroups.clear,都不行。
--  作者:有点蓝
--  发布时间:2020/6/9 13:44:00
--  
贴出具体代码看看,同时截图说明问题



--  作者:武圣
--  发布时间:2020/6/9 22:59:00
--  
Dim t As Table = Tables("换轮信息")
Dim g As Subtotalgroup
t.SubtotalGroups.Clear() 
t.GroupAboveData = False
t.TreeVisible = False
t.SpillNode = True

g = New Subtotalgroup
g.Aggregate = AggregateEnum.Count
g.GroupOn = "日期"
g.TotalOn = "运用车间及站修名称"
g.Caption = "{0}日 记录数"
g.DateGroup = DateGroupEnum.Day
t.SubtotalGroups.Add(g)

t.Subtotal()


\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'
Tables("换轮信息").ClearSubtotal \'关闭分组

执行完就无法添加数据的,不执行就没问题

--  作者:武圣
--  发布时间:2020/6/9 23:01:00
--  
图片点击可在新窗口打开查看
--  作者:有点蓝
--  发布时间:2020/6/9 23:15:00
--  
汇总模式下是无法编辑数据的。取消汇总才可以的。
--  作者:武圣
--  发布时间:2020/6/9 23:38:00
--  
clearsubtotal方法,也执行了subtotalgroups.clear,都不行,只能在系统菜单取消,不能用代码取消吗?
--  作者:有点蓝
--  发布时间:2020/6/10 8:46:00
--  
肯定可以的,我测试没有问题。

如果是窗口表,注意表格名称:Tables("某窗口_table1")

--  作者:武圣
--  发布时间:2020/6/11 6:13:00
--  
还是不行,我退出汇总模式可以正常编辑数据表,就是不能集中添加数据,我执行的是,

DataTables("huanlun").Load
DataTables("换轮信息").deletefor("")
Tables("换轮信息").stopredraw
”For Each r As Row In Tables("huanlun").Rows
   dr = Tables("换轮信息").AddNew()
   Tables("换轮信息").Rows(i)("序号") = x
   Tables("换轮信息").Rows(i)("日期") = Tables ("huanlun").Rows(i)("xcrq")
   。。。。。
   i=i+1
Next
DataTables("换轮信息").DeleteFor("[日期] Is Null")
Tables("换轮信息").resumeredraw

DataTables("huanlun")外数据源是orale,orale数据添加进DataTables("换轮信息"),‘换轮信息’是临时表,不知道有没有关系。
我原来认为我添加数据的代码有问题,但是在系统菜单关闭"汇总模式"执行这代码就没问题,为啥代码关闭就会出问题。

--  作者:有点蓝
--  发布时间:2020/6/11 8:57:00
--  
和汇总没有关系,这个代码本身就莫名其妙的


DataTables("huanlun").Load
DataTables("换轮信息").deletefor("")
Tables("换轮信息").stopredraw
For Each r As Row In Tables("huanlun").Rows
    If r.IsNull("xcrq") = False
        dr = Tables("换轮信息").AddNew()
        dr("序号") = x
        dr("日期") = r("xcrq")
        .....
    End If
Next
Tables("换轮信息").resumeredraw


--  作者:武圣
--  发布时间:2020/6/13 8:14:00
--  
谢谢,明白了,代码改过来了,汇总模式还是不行,感觉代码关闭汇总比系统菜单关闭汇总少执行些东西。有没有重置表状态或刷新之类的命令。