Foxtable(狐表)用户栏目专家坐堂 → 窗口中的数据表不能实现实时统计


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

主题:窗口中的数据表不能实现实时统计

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
窗口中的数据表不能实现实时统计  发帖心情 Post By:2017/3/22 18:14:00 [显示全部帖子]

单独数据表里面可以自动实时统计,如果把这个表放到窗口里面,就不能实时统计了。

项目属性的 maintablechanged 也加入了以下语句,也不行:

If MainTable.Name = "表1" Then
    DataTables("表2").dataCols("列名").RaiseDataColChanged()
End If

求解,谢谢!

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/22 18:15:00 [显示全部帖子]

没有设置成副表

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/23 9:55:00 [显示全部帖子]

谢谢,统计列数据的时候,是以当月数据统计的,比如:
列名: "三月_订单“, "三月_客户数", "四月_订单", "四月_客户数",。。。
 (这些列前面还有一月, 二月, 后面还有五月,六月等), 但怎么能统计当前月?

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/23 11:33:00 [显示全部帖子]

以下是引用有点色在2017/3/22 22:58:00的发言:

CurrentTableChanged事件,写代码

 

If CurrentTable.Name = "表1" Then
    DataTables("表2").dataCols("列名").RaiseDataColChanged()
End If


才试了,不起作用


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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/23 15:29:00 [显示全部帖子]

以下是引用有点色在2017/3/22 22:58:00的发言:

CurrentTableChanged事件,写代码

 

If CurrentTable.Name = "表1" Then
    DataTables("表2").dataCols("列名").RaiseDataColChanged()
End If

在此事件加入这个代码,打开和关闭相应窗口变得很慢,是正常的吗?


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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/23 16:39:00 [显示全部帖子]

以下是引用有点色在2017/3/23 9:58:00的发言:

参考

 

http://www.foxtable.com/webhelp/scr/2720.htm

 



恩,采用你的建议,我做了一个按钮,点击后才会重新统计,这样就不会打开和关闭窗口耗时的现象发生了。


但统计当前月数据,我在按钮的CLICK事件加入以下代码,不起作用,没有数据变化:


If CurrentTable.Name = "表1" Then

    

    Dim y As Integer = Date.Today.Year

    Dim m As Integer = Date.Today.Month

    Dim dt1 As New Date(y, m, 1)

    Dim dt2 As New Date(y, m, Date.DaysInMonth(y, m)) '获取本月的最后一天

    Dim Filter As String

    Filter = "日期 >= #" & dt1 & "# And 日期 <= #" & dt2 & "#"

    Tables("表1").Filter = Filter

    

    DataTables("表2").dataCols("列名").RaiseDataColChanged(Filter)


End If


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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/23 17:38:00 [显示全部帖子]

出现这个错误提示:

.NET Framework 版本:2.0.50727.4927
Foxtable 版本:2016.7.29.1
错误所在事件:窗口,XXXXXXXXXXXX,Button2,Click
详细错误信息:
未找到列 [日期]。

表1有 日期 列

[此贴子已经被作者于2017/3/23 17:39:33编辑过]

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/23 18:38:00 [显示全部帖子]

表2的列名是: 三月_订单数量 

目的是想统计 表1 当前月的订单数量 (用 Dim Filter As String = "日期 >= #" & dt1 & "# And 日期 < #" & dt2 & "#"),然后点击按钮重新统计结果,并显示在 表2 的 三月_订单数量 列里。

另外在表2的DataColChanged事件中已经有统计代码,现在只是做这个按钮,刷新统计数据。

表1有 日期 列, 表2无日期列。
[此贴子已经被作者于2017/3/23 18:40:13编辑过]

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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/24 9:52:00 [显示全部帖子]

以下是引用有点色在2017/3/23 18:50:00的发言:

那就不加条件吧,直接写。

 

DataTables("表2").dataCols("列名").RaiseDataColChanged()

这样是可以的,不过是所有历史记录的数据 刷新统计, 但不能按日期段刷新统计。比如上月以前的数据就不需要刷新统计了,只刷新统计本月的,这样用(filter)参数就是找不到日期列。


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


加好友 发短信
等级:四尾狐 帖子:822 积分:5782 威望:0 精华:0 注册:2015/2/3 22:19:00
  发帖心情 Post By:2017/3/31 16:21:00 [显示全部帖子]

以下是引用有点色在2017/3/24 10:02:00的发言:

Dim y As Integer = Date.Today.Year
Dim m As Integer = Date.Today.Month
Dim dt1 As New Date(y, m, 1)
Dim dt2 As Date = dt1.AddMonths(1)
Dim Filter As String = "日期 >= #" & dt1 & "# And 日期 < #" & dt2 & "#"

Tables("表1").DataTable.LoadFilter = Filter

Tables("表1").DataTable.Load    ''''''''''''''这句代码会重新加载数据。
DataTables("表2").dataCols("列名").RaiseDataColChanged()

谢谢,这个代码可以。不过有一个缺点,就是要重新加载数据,跳到数据第一行,不会跳到我之前操作的画面或数据行。


 回到顶部
总数 11 1 2 下一页