以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口表加载  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=123123)

--  作者:jamhuton
--  发布时间:2018/8/8 12:55: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 New Date(y, m, Date.DaysInMonth(y, m)) \'获取本月的最后一天
Dim Filter As String
Filter = "统计日期 >= #" & dt1 & "# And 统计日期 <= #" & dt2 & "# and 业务类型=\'天津水运\'"
Tables("水运跟踪_Table1").loadfilter = Filter
Tables("水运跟踪_Table1").load()

副本表,因为我想把不同的类型加载在一个窗口的两个不同的表,table1和table2


[此贴子已经被作者于2018/8/8 12:58:21编辑过]

--  作者:有点甜
--  发布时间:2018/8/8 14:28:00
--  

方法一:用筛选

 

Tables("水运跟踪_Table1").filter = Filter

 

方法二:如果用加载,这种情况,只能用sqlTable表

 

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

 

 


--  作者:jamhuton
--  发布时间:2018/8/8 14:34:00
--  
这样加载后,目录树需要做怎么样的修改呢?

比如目录树中涉及的表名应该如何修改?


--  作者:有点甜
--  发布时间:2018/8/8 14:53:00
--  
以下是引用jamhuton在2018/8/8 14:34:00的发言:
这样加载后,目录树需要做怎么样的修改呢?

比如目录树中涉及的表名应该如何修改?

 

你目录树是怎么做的?写了什么代码?

 

你用哪种方法?做个例子发上来。


--  作者:jamhuton
--  发布时间:2018/8/8 15:07:00
--  
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("国内物流", "年份|月份")
trv.Nodes.Insert("显示所有行",0)

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 & "# and 业务类型=\'天津水运\'"
Tables("水运跟踪_Table1").filter = Filter 

Dim y1 As Integer = Date.Today.Year
Dim m1 As Integer = Date.Today.Month
Dim dt3 As New Date(y1, m1, 1)
Dim dt4 As New Date(y1, m1, Date.DaysInMonth(y1, m1)) \'获取本月的最后一天
Dim Filter1 As String
Filter1 = "统计日期 >= #" & dt3 & "# And 统计日期 <= #" & dt4 & "# and 业务类型=\'荆州水运\'"
Tables("水运跟踪_Table2").filter = Filter1



Dim Filter As String
Dim dr As DataRow = e.Node.DataRow \'获取生成此节点的行
If e.Node.Text <> "显示所有行" Then
    Select Case e.Node.Level
        Case 0
            Filter = "[年份] = \'" & dr("年份") & "\'"
        Case 1
            Filter = "[年份] = \'" & dr("年份") & "\' And [月份] = \'" & dr("月份") & "\'"
    End Select
End If
Tables("国内物流").Filter = Filter


--  作者:有点甜
--  发布时间:2018/8/8 15:23:00
--  

afterLoad事件代码不用改。点击目录树节点的事件你想分别筛选?

 

或者说明你需要的结果是什么?现在的结果有什么差距?


--  作者:jamhuton
--  发布时间:2018/8/8 15:31:00
--  
业务类型=\'天津水运\'"的显示在Tables("水运跟踪_Table1")
业务类型=\'荆州水运\'"的显示在Tables("水运跟踪_Table2")
现在目录树和窗口不对应


--  作者:有点甜
--  发布时间:2018/8/8 15:40:00
--  

比如,细节自己调整

 

Dim Filter As String
Dim dr As DataRow = e.Node.DataRow \'获取生成此节点的行
If e.Node.Text <> "显示所有行" Then
    Select Case e.Node.Level
        Case 0
            Filter = "[年份] = \'" & dr("年份") & "\'"
        Case 1
            Filter = "[年份] = \'" & dr("年份") & "\' And [月份] = \'" & dr("月份") & "\'"
    End Select
End If
Tables("水运跟踪_Table1").Filter = Filter & " and 业务类型=\'天津水运\'"
Tables("水运跟踪_Table2").Filter = Filter & " and 业务类型=\'荆州水运\'\'"

[此贴子已经被作者于2018/8/8 15:43:32编辑过]

--  作者:jamhuton
--  发布时间:2018/8/10 9:15:00
--  
Dim Filter As String
Dim dr As DataRow = e.Node.DataRow \'获取生成此节点的行
If e.Node.Text <> "显示所有行" Then
    Select Case e.Node.Level
        Case 0
            Filter = "[年份] = \'" & dr("年份") & "\'"
        Case 1
            Filter = "[年份] = \'" & dr("年份") & "\' And [月份] = \'" & dr("月份") & "\'"
    End Select
End If
Tables("水运跟踪_Table1").Filter = Filter & " and 业务类型=\'天津水运\'"
Tables("水运跟踪_Table2").Filter = Filter & " and 业务类型=\'荆州水运\'\'"


再请教,如果我不用副本表,代码该如何修改?
发觉用了副本表之后之前做的按钮代码都出现问题,无法使用,而且表达式列会出现只读弹窗。


[此贴子已经被作者于2018/8/10 9:26:20编辑过]

--  作者:有点甜
--  发布时间:2018/8/10 9:18:00
--  
以下是引用jamhuton在2018/8/10 9:15:00的发言:

再请教,如果我不用副本表,代码该如何修改?


 

改成加载

 

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