Foxtable(狐表)用户栏目专家坐堂 → 筛选问题


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

主题:筛选问题

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
筛选问题  发帖心情 Post By:2018/1/21 10:02:00 [显示全部帖子]


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


在开始筛选按钮设如下代码,我想实现基于当前加载树加载后的数据进行筛选,但下列代码筛选时会把所有的后台数据筛选出来。请老师指导

Dim Filter As String
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "支付日期 >= '" & .Value & "'"
    End If
End With
With e.Form.Controls("DateTimePicker2")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "支付日期 <= '" & .Value & "'"
    End If
End With

If e.Form.Controls("RadioButton5").Checked = True ' 如果付款状态选择了"已付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "乡镇审核 = 1"
End If
If e.Form.Controls("RadioButton6").Checked = True ' 如果付款状态选择了"未付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "乡镇审核 = 0 Or 乡镇审核 Is Null"
End If

If e.Form.Controls("RadioButton2").Checked = True ' 如果付款状态选择了"已付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "是否结算 = 1"
End If
If e.Form.Controls("RadioButton3").Checked = True ' 如果付款状态选择了"未付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "是否结算 = 0 Or 是否结算 Is Null"
End If

If Filter > "" Then
    Tables("S征地记录").DataTable.LoadFilter = Filter
    Tables("S征地记录").DataTable.Load


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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/21 20:17:00 [显示全部帖子]

有老师帮解答吗

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/21 21:00:00 [显示全部帖子]

解决了,多谢老师


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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/21 23:16:00 [显示全部帖子]

老师,现在又有一个问题,我筛选完以后,点击加载树下的翻页,又刷新加载回所有的数据,也就相当于撤消筛选。如何能让筛选出的数据象用加载树选择的数据一样,在翻页时,也只显示筛选后的数据?

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/21 23:43:00 [显示全部帖子]

按老师的代码修改后解决了5楼的问题,但又出现了1楼的问题,就是会把其它用户的数据筛选出来.

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/22 8:58:00 [显示全部帖子]

上传了附件,请老师指导。一是征地记录窗口的筛选问题,当对“未公示”或“未结算”筛选的时候,会把其它用户的数据加载进来(老师可用用户名为“白云乡”或“良口乡”测试,开发者和管理者密码不变,其它用户口密码都是8888)。第二个问题是在导出“征地记录表“出错,想实现导出用加载树选择和筛选后当前所有页的数据。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:公路征拆管理系统_201801220849.zip


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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/22 8:59:00 [显示全部帖子]

还有以上筛选代码,撤消筛选按钮不起作用。


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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/22 11:10:00 [显示全部帖子]

老师,使用你修改的代码没有问题,我把代码套用进使用外部数据源的项目,主要改了以下部位:支付日期的#用'替换,逻辑列”乡镇审核“和”是否结算“的Ture和False分别用1和0替换,变成以下代码,但是筛选时还是有其它数据加载进来,而且撤消筛选按钮不可用。我找不到原因

Dim Filter As String
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "支付日期 >= '" & .Value & "'"
    End If
End With
With e.Form.Controls("DateTimePicker2")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "支付日期 <= '" & .Value & "'"
    End If
End With

If e.Form.Controls("RadioButton5").Checked = True ' 如果付款状态选择了"已付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "乡镇审核 = 1"
End If
If e.Form.Controls("RadioButton6").Checked = True ' 如果付款状态选择了"未付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "乡镇审核 = 0 Or 乡镇审核 Is Null"
End If

If e.Form.Controls("RadioButton2").Checked = True ' 如果付款状态选择了"已付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "是否结算 = 1"
End If
If e.Form.Controls("RadioButton3").Checked = True ' 如果付款状态选择了"未付"
    If Filter >"" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "是否结算 = 0 Or 是否结算 Is Null"
End If
If Filter = "" Then filter = "1=1"

Dim f As String = vars("filter")
f = iif(f > "", f & " and " & filter, filter)
Tables("S征地记录").DataTable.LoadFilter = f
Tables("S征地记录").DataTable.Load
e.Form.Controls("TextBox1").Value = 1 & "/" & DataTables("S征地记录").TotalPages

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/22 11:59:00 [显示全部帖子]

老师,可以按要求筛选了,但是撤消筛选的按钮还是不起作用

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/1/22 12:06:00 [显示全部帖子]

在“导出记录表”按老师的代码,增加了外部数据源名称,又只能导出当前页的数据,未显示加载页的数据导不出来。

Dim Book As New XLS.Book(ProjectPath & "Attachments\征地记录表.xls")
Dim fl As String = ProjectPath & "Reports\征地记录表.xls"
book.AddDataTable("征地记录表","zcxt","Select *, (select sum(征地数量*政府征地补偿标准) fro m {S征地明细} b where a.协议书编号=b.协议书编号 and a.第几期结算=b.第几期结算) As [政府补偿金额合计], (select sum(征地数量*业主征地补偿标准*0.85) fro m {S征地明细} b where a.协议书编号=b.协议书编号 and a.第几期结算=b.第几期结算) As [业主补助金额合计] fro m {s征地记录} a " & IIF(DataTables("S征地记录").LoadFilter > ""," where " & DataTables("S征地记录").LoadFilter,""))
Book.Build()
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()

 回到顶部
总数 13 1 2 下一页