Foxtable(狐表)用户栏目专家坐堂 → 奇怪的程序假死问题


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

主题:奇怪的程序假死问题

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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2013/8/4 19:06:00 [显示全部帖子]

没看懂了,

 If DataTables(tbn).DataRows.Count = 0 AndAlso DataTables(tbn1).DataRows.Count = 0 Then
        MessageBox.show("没有查找到相关数据!","提示")
        Return Nothing
    Else
        Dim ids As String
        For Each dr As DataRow In DataTables(tbn).DataRows
            ids = ids & ",'" & dr(keys) & "'"
            ids= ids.Trim(",")
            DataTables(tbn1).LoadFilter = keys & "In (" & ids & ")"
        Next
        Dim vds As String
        For Each dr As DataRow In DataTables(tbn1).DataRows
            vds = vds & ",'" & dr(keys) & "'"
            vds= vds.Trim(",")
            DataTables(tbn).LoadFilter = keys & "In (" & vds & ")"
        Next
    End If
这两段代码干什么的?这个和

    DataTables(tbn).LoadFilter = key & " Like '%" & cx & "%' or " & key1 & " Like '%" & cx & "%'"
    DataTables(tbn).Load()
    DataTables(tbn1).LoadFilter = key2 & " Like '%" & cx & "%'"
    DataTables(tbn1).Load()
有什么本质区别吗?

 

加载照成死循环,跟着段代码应该没有关系,而是你本身其他代码引起了最后一句加载的卡死

 

你这个函数的参数过多了,函数参数超过4个以上使用就不方便了。


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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2013/8/4 19:27:00 [显示全部帖子]

还是上例子吧,也许可以找到其他方法帮你解决。


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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2013/8/4 20:40:00 [显示全部帖子]

以下是引用晕了快扶我在2013-8-4 20:18:00的发言:

测试了真不行的,因为我需要遍历所有主表和子表关联列..

负担到没关系,循环几万次也才差零点几秒。

 

我一直有个问题要问楼主,感觉论坛很多狐友都这么做,子表加载父表所有条件相关的行,这种多对多关系的加载,是做什么用处?


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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2013/8/4 21:38:00 [显示全部帖子]

以下是引用晕了快扶我在2013-8-4 21:26:00的发言:

动态加载啊,父表如果一次加载100行,相应的子表要加载进来才能保证信息的完整啊

然后那?子表几百行放在那里?主表点击一行然后子表在筛选?

 


 回到顶部