Foxtable(狐表)用户栏目专家坐堂 → 窗口内数据消失问题


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

主题:窗口内数据消失问题

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/18 11:36:00 [显示全部帖子]

应该是这2句代码引起的,B窗口关闭后会重新加载数据?

DataTables("计划单").LoadFilter = " 进度 = '待复核' And 单位名称 = '" & User.Group & "'"
DataTables("计划单").Load()

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/18 12:09:00 [显示全部帖子]

还是这2局代码的原因

DataTables("计划明细").LoadFilter = " 进度 = '待分配'and 状态 = 1 and 欠发数量 <> 0 "
DataTables("计划明细").Load()

数据重新加载会影响主表和所有的副本

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/19 8:19:00 [显示全部帖子]

DataTables("计划明细").LoadFilter = " 进度 = '待分配'and 状态 = 1 and 欠发数量 <> 0  and 之前计划单currentchanged的筛选条件"

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/19 13:54:00 [显示全部帖子]

既然"计划明细"表多个窗口都用到,如果互相冲突建议在各个窗口表里使用sqltable、或者SQLcommand加载各自的"计划明细"表数据。

如果大家都可以使用,那么就必须加载所有窗口都能用的数据。各个窗口就使用数据即可,不需要重新加载这个表的数据。

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


加好友 发短信
等级:超级版主 帖子:107783 积分:548260 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/20 9:39:00 [显示全部帖子]

首先搞清楚筛选和加载的区别。

筛选是基于已经加载的数据进行过滤显示,已经加载的数据不会有变化,只是table里面看不到这些数据而已。table.filter就属于筛选用法

加载是重新到数据库获取数据,会影响这个表的主表和所有的副本,同时会导致之前的筛选全部失效。SQLcommand和datatable.load就属于加载用法

然后在根据自己的业务逻辑搞清楚到底应该怎么用

 回到顶部