Foxtable(狐表)用户栏目专家坐堂 → 控件上是字符数组,如何实现筛选加载


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

主题:控件上是字符数组,如何实现筛选加载

美女呀,离线,留言给我吧!
采菊东篱下
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
控件上是字符数组,如何实现筛选加载  发帖心情 Post By:2022/8/12 20:35:00 [显示全部帖子]

无法上传图片,只能手动输入:
ComboBox1控件上的效果是这样的,要实现筛选加载:
月租停车
月租停车-业主月租停车
月租停车-租户月租停车
月租停车-外来月租停车
临时停车
临时停车-亲情临时停车
临时停车-外来临时停车
铺位租金
广告或其他

这样写只实现到一级筛选,无法实现二级筛选:
Dim Filter As String
With e.Form.Controls("ComboBox1")
    If .Value IsNot Nothing Then
        Dim Parts() As String = .Value.Split("-")
        If Parts(0) IsNot Nothing Then
            Filter = "分类 = '" & Parts(0) & "'"
        ElseIf Parts(1) IsNot Nothing Then
            If Filter > "" Then
                Filter = Filter & " Or "
            End If
            Filter = Filter & "明细分类 = '" & Parts(1) & "'"
        End If
    End If
End With
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "Year(日期) = '" & Year(.Value) & "'And Month(日期) = '" & Month(.Value) & "'"
    End If
End With
With e.Form.Controls("DropBox1")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "车牌号码 = '" & .Value & "'"
    End If
End With
With DataTables("安缴费日期查询_Table1")
    If Filter > "" Then
        LockBaseMainForm() '锁定主界面
        .StopRedraw()
        .LoadFilter = Filter
        .LoadOrder = "日期,单号,[_SortKey] DESC"
        For i As Integer = DataTables("缴费情况").DataRows.count - 1 To 0 Step -1
            Dim tr As DataRow = DataTables("缴费情况").DataRows(i)
            If tr.IsNull("日期") Then
                tr.delete
            End If
        Next
        .Load()
        .ResumeRedraw()
        UnLockBaseMainForm() '解锁主界面
    End If
    If .DataRows.Count < 15 Then
        .AddNew(15 - .DataRows.Count)
    End If
End With
[此贴子已经被作者于2022/8/12 20:50:03编辑过]

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 10:09:00 [显示全部帖子]

不行依然只加载到一级筛选数,如果改为如下,则完全没加载数据:
Dim Filter As String
With e.Form.Controls("ComboBox1")
    If .Value IsNot Nothing Then
        Dim Parts() As String = .Value.Split("-")
        Filter = "分类 = '" & Parts(0) & "'"
        If Parts.length > 1 Then
            Filter = "(" & Filter & " And 明细分类 = '" & Parts(1) & "')"
        End If
    End If
End With
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "Year(日期) = '" & Year(.Value) & "'And Month(日期) = '" & Month(.Value) & "'"
    End If
End With
With e.Form.Controls("DropBox1")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "车牌号码 = '" & .Value & "'"
    End If
End With
With DataTables("安缴费日期查询_Table1")
    If Filter > "" Then
        LockBaseMainForm() '锁定主界面
        .StopRedraw()
        .LoadFilter = Filter
        .LoadOrder = "日期,单号,[_SortKey] DESC"
        For i As Integer = DataTables("缴费情况").DataRows.count - 1 To 0 Step -1
            Dim tr As DataRow = DataTables("缴费情况").DataRows(i)
            If tr.IsNull("日期") Then
                tr.delete
            End If
        Next
        .Load()
        .ResumeRedraw()
        UnLockBaseMainForm() '解锁主界面
    End If
    If .DataRows.Count < 15 Then
        .AddNew(15 - .DataRows.Count)
    End If
End With
[此贴子已经被作者于2022/8/13 10:11:18编辑过]

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 11:30:00 [显示全部帖子]

弹出:
(分类= '月租停车' And 明细分类 = '业主月租停车') And Year(日期)='2020' And Month(日期) = '12'
表里一定有当期数据的。

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 12:05:00 [显示全部帖子]

改为这样还是没任何数据显示:
Dim Filter As String
With e.Form.Controls("ComboBox1")
    If .Value IsNot Nothing Then
        Dim Parts() As String = .Value.Split("-")
        Filter = "分类 = '" & Parts(0) & "'"
        If Parts.length > 1 Then
            Filter = Filter & " And 明细分类 = '" & Parts(1) & "'"
        End If
    End If
End With
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "Year(日期) = " & Year(.Value) & " And Month(日期) = " & Month(.Value)
    End If
End With
With e.Form.Controls("DropBox1")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "车牌号码 = '" & .Value & "'"
    End If
End With
msgbox(Filter)
With DataTables("安缴费日期查询_Table1")
    If Filter > "" Then
        LockBaseMainForm() '锁定主界面
        .StopRedraw()
        .LoadFilter = Filter
        .LoadOrder = "日期,单号,[_SortKey] DESC"
        For i As Integer = DataTables("缴费情况").DataRows.count - 1 To 0 Step -1
            Dim tr As DataRow = DataTables("缴费情况").DataRows(i)
            If tr.IsNull("日期") Then
                tr.delete
            End If
        Next
        .Load()
        .ResumeRedraw()
        UnLockBaseMainForm() '解锁主界面
    End If
    If .DataRows.Count < 15 Then
        .AddNew(15 - .DataRows.Count)
    End If
End With

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 14:42:00 [显示全部帖子]

有:
     日期         分类        明细分类     用户性质   序号   巷  号   房   姓名  固定电话   手机号码       车牌号码         前缀           单号              起计时间        止计时间   缴费月数   月租单价   缴费金额       
2020-12-23 月租停车 业主月租停车   业主  8   八巷  5   607  李生  2222222  12345678911  粤JB8888W YZ   YZ-202012-00005   2021-01-01 2021-03 - 31 3 80 240

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 14:44:00 [显示全部帖子]

图片点击可在新窗口打开查看,你们的论坛复制上来的数据全乱了,图片也不让上传!

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 14:46:00 [显示全部帖子]

下面的数据是同一行的,没法编辑!乱!你点编辑看吧,编辑分两行,发出后变成这样!图片点击可在新窗口打开查看

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 15:53:00 [显示全部帖子]

.NET Framework 版本:4.0.30319.18063
Foxtable 版本:2022.7.23.8
错误所在事件:加载[安缴费日期查询_Table1]失败!
详细错误信息:
至少一个参数没有被指定值。
我的软件中测试没这报错的,但导出新建项目就出现上面的错。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.foxdb



 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2022/8/13 16:57:00 [显示全部帖子]

哦,谢谢,哪问题不在这的代码里了,我知道了,已更正,谢谢。

 回到顶部