以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]窗口表数据源设置为全局数据表问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=142055) |
-- 作者:whoami2012 -- 发布时间:2019/10/17 12:47:00 -- [求助]窗口表数据源设置为全局数据表问题 在全局代码中,定义了全局表 Public _XuanZeBaoJia As DataTable 使用下列代码加载了数据 SqlCmd.CommandText = "S e l e c t * FROM {报价单}" _XuanZeBaoJia = SqlCmd.ExecuteReader 在一个模式窗口中,放置了表控件 Table1,并在AfterLoad事件中,写如下代码 Tables(e.Form.Name & "_Table1").DataSource = _XuanZeBaoJia 第一次打开窗口,窗口表格内容正常显示了报价单中数据。但关闭窗口,再重新打开后,就无法显示任何数据。 这个操作在9月28日前版本一直是正常的,这几天升级后,就出现这个问题
|
-- 作者:有点蓝 -- 发布时间:2019/10/17 13:42:00 -- 不要把全局变量的DataTable表格绑定到任何窗口。窗口关闭后DataTable会被销毁,除非调用SqlCmd.ExecuteReader重新取一次值 |
-- 作者:whoami2012 -- 发布时间:2019/10/17 13:47:00 -- 是想用这个办法,加快数据显示速度,不用每次重新加载。 有什么其它办法实现吗?
|
-- 作者:有点蓝 -- 发布时间:2019/10/17 13:59:00 -- 那使用主表也一样的效果啊,为什么要使用全局变量? |
-- 作者:whoami2012 -- 发布时间:2019/10/17 14:04:00 -- 数据是来自于多个表,大概几万条,所以用了Sql语句。 |
-- 作者:有点蓝 -- 发布时间:2019/10/17 14:06:00 -- 那就使用查询表:http://www.foxtable.com/webhelp/topics/2329.htm |
-- 作者:whoami2012 -- 发布时间:2019/10/17 14:10:00 -- 查询表可以用代码设置Sql语句吗?有时需要按新的条件重新加载数据
|
-- 作者:有点蓝 -- 发布时间:2019/10/17 14:18:00 -- 如果Sql语句不改动,只是加查询条件,查询表和主表的用法是一样的:http://www.foxtable.com/webhelp/topics/1928.htm |
-- 作者:whoami2012 -- 发布时间:2019/10/17 14:25:00 -- 解决了,太感谢了!! 这个问题折腾了好几天了
|