以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]窗口闪退  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91749)

--  作者:Meiling
--  发布时间:2016/10/18 12:13:00
--  [求助]窗口闪退
老师,您好,在设置筛选查询时,窗口闪了一下全部数据后,内容变为全无,代码如下所示:

以下内容为程序代码:

1 Forms("退款记载结果").Open
2 Dim filter1 As String = ""
3
4 With e.Form.Controls("combobox1")
5 If .Value IsNot Nothing Then
6 filter1 = "[F5319]Like \'*" & .Value & "*\'"
7 End If
8 End With
9 With e.Form.Controls("TextBox1")
10 If .Value IsNot Nothing Then
11 If filter1 > "" Then
12 filter1 = filter1 & " And "
13 End If
14 filter1 = filter1 & "[F4384]Like \'*" & .Value & "*\'"
15 End If
16 End With
17 With e.Form.Controls("TextBox2")
18 If .Value IsNot Nothing Then
19 If filter1 >"" Then
20 filter1 = filter1 & " And "
21 End If
22 filter1 = filter1 & "[F4387] Like \'*" & .Value & "*\'"
23 End If
24 End With
25 With e.Form.Controls("TextBox3")
26 If .Value IsNot Nothing Then
27 If filter1 >"" Then
28 filter1 = filter1 & " And "
29 End If
30 filter1 = filter1 & "[F4419]Like \'*" & .Value & "*\'"
31 End If
32 End With
33
34 Dim cal1 As WinForm.DateTimePicker = e.Form.Controls("datetimepicker1")
35 Dim cal2 As WinForm.DateTimePicker = e.Form.Controls("datetimepicker2")
36 If cal1.value IsNot Nothing And cal2.value IsNot Nothing Then
37 If filter1 > "" Then
38 filter1 = filter1 & " and"
39 End If
40 filter1 = filter1 & "[T246CT] >= \'" & cal1.value & " \' and [T246CT] <= \' " & cal2.value & "\'"
41 End If
42 If filter1 > "" Then
43 filter1 = filter1 & " and"
44 End If
45 Forms("退款记载结果").Controls("Table1").Table.filter = filter1 & " [F4415]>0"
46 Forms("退款记载结果").Controls("label2").Text = Forms("退款记载结果").Controls("Table1").Table.Compute("sum(F4415)")


请问该如何解决呢?

--  作者:有点蓝
--  发布时间:2016/10/18 14:09:00
--  
上例子测试
--  作者:Meiling
--  发布时间:2016/10/18 14:39:00
--  
不好意思哈,早上一直上传不了图片,就是一开始设置了个查询目录,如图所示:

图片点击可在新窗口打开查看此主题相关图片如下:查询目录.jpg
图片点击可在新窗口打开查看

点击查询目录下的退款记载,弹出如下所示对话框:

图片点击可在新窗口打开查看此主题相关图片如下:退款记录查询.jpg
图片点击可在新窗口打开查看

输入相应值,点击确定后,会一闪全部退款结果查询数据,但是最后窗口是没有内容的:

图片点击可在新窗口打开查看此主题相关图片如下:退款结果.jpg
图片点击可在新窗口打开查看



--  作者:Meiling
--  发布时间:2016/10/18 14:41:00
--  
整个文件是:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:用户缴退费兰州.table


--  作者:有点蓝
--  发布时间:2016/10/18 15:31:00
--  
测试数据确实没有符合条件的行啊,[F4415]都是0的

Forms("退款记载结果").Controls("Table1").Table.filter = filter1 & " [F4415]>0"


--  作者:Meiling
--  发布时间:2016/10/18 15:39:00
--  
好的,谢谢老师。
--  作者:Meiling
--  发布时间:2016/10/19 11:15:00
--  
老师,您好,遇到新问题了,就是比如说点击查询目录里的欠收查询,输入相应条件的时候,只能加载到当前分页查询所筛选出来的数据,而不是从所有的后台数据进行筛选的数据?不太懂得怎么样进行修改代码:【求助】

图片点击可在新窗口打开查看此主题相关图片如下:当前分页加载的数据.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:当前筛选出来的数据.jpg
图片点击可在新窗口打开查看





--  作者:有点蓝
--  发布时间:2016/10/19 11:46:00
--  
1、结果窗口表改为sqltable类型,设置数据源

select语句设置为:select * from [T246] where 1=2

2、查询按钮最后一段代码改为

......

If filter1 > "" Then
    filter1 = filter1 & " and"
End If
If filter > "" Then
filter = "( " & filter & " ) "
End If


filter1 = filter1 & filter
Dim t As Table = Forms("欠收结果").Controls("Table1").Table
t.DataTable.LoadFilter = filter1 & " and [F5296]>0"
t.DataTable.load

Forms("欠收结果").Controls("label2").Text = t.Compute("sum(F5296)")


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:用户缴退费兰州.table


[此贴子已经被作者于2016/10/19 11:46:07编辑过]

--  作者:Meiling
--  发布时间:2016/10/19 13:18:00
--  
好的,辛苦老师了,我现在就去看~
--  作者:Meiling
--  发布时间:2016/10/19 14:08:00
--  
老师,您好,好像还是不行,进行了相应数值设置后,但是筛选出来数据就为空了。

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


图片点击可在新窗口打开查看此主题相关图片如下:点击相应年份后的欠费结果显示.jpg
图片点击可在新窗口打开查看