以文本方式查看主题

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

--  作者:15666282205
--  发布时间:2025/1/19 10:40:00
--  加载表错误
老师,项目原来用的阿里云SQL数据库,后来改成内部数据表。点击年、月时,筛选代码出现错误提示:
.NET Framework 版本:4.0.30319.18408
Foxtable 版本:2020.5.29.8
错误所在事件:加载[创新活动表]失败!
详细错误信息:
标准表达式中数据类型不匹配。
目录树节点代码如下:
Dim Filter As String = ""
    If e.node.Name <> "所有行" Then \'要用Name属性,不能用Text属性
        Dim d1 As Date
        Dim d2 As Date
        Dim Year As Integer = e.Node.DataRow("年")
        Dim Month As Integer = e.Node.DataRow("月")
        Dim day As Integer = e.Node.DataRow("日")
        Dim Product As String = e.Node.DataRow("呈报单位")
        
        Select Case e.Node.Level
            Case 0
                d1 = New Date(Year,1,1) \'取得该年的第一天
                d2 = new Date(Year,12,31) \'取得该年的最后一天
                Filter = "日期 >= \'" & d1 & "\' And 日期 <= \'" & d2 &  "\'"
                
            Case 1
                d1 = New Date(Year, Month, 1) \'取得该月的第一天
                d2 = new Date(Year, Month, Date.DaysInMonth(Year,Month)) \'取得该月的最后一天
                Filter = "日期 >= \'" & d1 & "\' And 日期 <= \'" & d2 &  "\'"
                
            Case 2
                Filter = "[呈报单位] = \'" & e.Node.DataRow("呈报单位") & "\'and Year(日期) = " & Year & " And Month(日期) = " & Month
            Case 3
                Filter = "[呈报单位] = \'" & e.Node.DataRow("呈报单位") & "\'and Year(日期) = " & Year & " And Month(日期) = " & Month & " And day(日期) = " & day
        End Select
    End If
    DataTables("创新活动表").LoadFilter = Filter
    DataTables("创新活动表").Load()
请您指导
[此贴子已经被作者于2025/1/19 11:07:24编辑过]