以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  loadfilter  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=153453)

--  作者:yetle
--  发布时间:2020/8/11 13:27:00
--  loadfilter
菜单按钮设置:
If DataTables.Contains("物料颜色") = False Then \'如果表C没有加载
    DataTables.Load("物料颜色") \'加载表C
    DataTables("物料颜色").loadfilter = "[_Identify] Is Null"
    DataTables("物料颜色").load
Else If DataTables.Contains("物料颜色") = True Then
    DataTables("物料颜色").loadfilter = "[_Identify] Is Null"
    DataTables("物料颜色").load
End If
打开窗口后:
Dim pd As WinForm.ComboBox = Forms("大货用量表").Controls("ComboBox1")
Dim pdID As WinForm.ComboBox = Forms("大货用量表").Controls("ComboBox2")

Dim tid As Integer = val(pdID.text)
DataTables("物料颜色").loadfilter = "[款号] = \'" & pd.text & "\'and [款号ID] = \'" & tid & "\'"
DataTables("物料颜色").load

提示:

图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20200811132626.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/8/11 13:54:11编辑过]

--  作者:有点蓝
--  发布时间:2020/8/11 14:07:00
--  
http://www.foxtable.com/webhelp/topics/2755.htm

重要提示:

如果两个或多个表之间建立了关联,那么这些表必须在同一个Load方法中同时加载,不可以分别加载。


--  作者:yetle
--  发布时间:2020/8/11 14:27:00
--  
If DataTables.Contains("产品") = False Then
    DataTables.
Load("产品|订单|订单明细")
End If

这种同时加载的方式,怎么设置加载条件

--  作者:有点蓝
--  发布时间:2020/8/11 14:32:00
--  
如果是外部表。初始不加载数据,到BeforeLoadOuterTable事件处理即可:http://www.foxtable.com/webhelp/topics/2757.htm

Select Case e.DataTableName
    
Case 
"产品","订单","订单明细"
        
e.SelectString = "Select * From {" & e.DataTableName & "} Where [_Identify] Is Null"
End Select



--  作者:yetle
--  发布时间:2020/8/12 9:36:00
--  
通过BeforeLoadOuterTable事件加了这个代码,

Select Case e.DataTableName
    
Case 
"产品","订单","订单明细"
        
e.SelectString = "Select * From {" & e.DataTableName & "} Where [_Identify] Is Null"
End Select

这段代码不是只加载表结构,不加载表数据吗,为什么打开窗口仍然提示找不到"产品","订单","订单明细"这几个表呢?

--  作者:有点蓝
--  发布时间:2020/8/12 9:39:00
--  
这个4楼是控制加载表格的时候,加载数据的条件的,设置为初始不加载数据。

找不到表说明没有加载这几个表,没有调用3楼的代码

--  作者:yetle
--  发布时间:2020/8/12 9:43:00
--  
那这么说,是关联表的情况,打开窗口的时候要提前加载表结构和表数据才能用
[此贴子已经被作者于2020/8/12 9:43:08编辑过]

--  作者:有点蓝
--  发布时间:2020/8/12 9:47:00
--  
如果窗口使用到这些表,肯定要在窗口打开前先加载
--  作者:yetle
--  发布时间:2020/8/12 9:52:00
--  
我是想打开窗口的时候只加载表结构,保证打开窗口不会报错,通过按钮在加载需要的表数据

--  作者:有点蓝
--  发布时间:2020/8/12 10:01:00
--  
4楼代码就是在使用【DataTables.Load("产品|订单|订单明细")】的时候保证只加载表结构,不加载任何数据