以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=102691)

--  作者:起个好名
--  发布时间:2017/6/23 22:43:00
--  [求助]
求助  在类别组合框下拉选择类别,在另一个文本框控件输入相应类别,然后查询,但是出现

.NET Framework 版本:2.0.50727.8745
Foxtable 版本:2017.3.18.1
错误所在事件:加载[人员信息表]失败!
详细错误信息:
语法错误 (操作符丢失) 在查询表达式 \'(编号 = \'姓名\'and姓名 = \'张\')\' 中。



Dim nms() As String={"Comxiangmu","Texneirong"}
Dim sps() As String={"\'","\'"}
Dim BJF() As String={" = ", " = "}
Dim fds() As String = {"编号","姓名","职务","学历","性别"}
Dim Filter As String
For i As Integer = 0 To nms.length - 1
  If e.Form.controls(nms(i)).value IsNot Nothing Then
     If filter >"" Then
         filter=filter & "and"
     End If
     filter= filter & fds(i) & bjf(i) & sps(i) & e.Form.controls(nms(i)).value & sps(i)
   End If
Next
DataTables("人员信息表").loadfilter = filter
DataTables("人员信息表").load()

--  作者:wyz20130512
--  发布时间:2017/6/23 22:48:00
--  
传实例
--  作者:有点蓝
--  发布时间:2017/6/23 23:06:00
--  
加上必要的空格,不要全部挤到一起

filter=filter & "  and  "

--  作者:起个好名
--  发布时间:2017/6/23 23:07:00
--  
这就是实例,但是图片上传不了。实例就是   
   有一个人员信息表,设置查询功能,先选择查询类别,如,姓名,学历等,然后在输入具体的姓氏或学历,代码如上,有错,但不知道咋改

--  作者:有点蓝
--  发布时间:2017/6/23 23:10:00
--  
看3楼
--  作者:起个好名
--  发布时间:2017/6/23 23:33:00
--  
提示错误信息 人员信息表加载失败,是代码有错吗?
--  作者:有点蓝
--  发布时间:2017/6/24 8:44:00
--  
改之后的代码和错误提示重新发上来
--  作者:起个好名
--  发布时间:2017/6/24 10:31:00
--  
.NET Framework 版本:2.0.50727.8745
Foxtable 版本:2017.3.18.1
错误所在事件:加载[人员信息表]失败!
详细错误信息:
至少一个参数没有被指定值。


Dim nms() As String={"Comxiangmu","Texneirong"}
Dim sps() As String={"\'","\'"}
Dim BJF() As String={" = ", " = "}
Dim fds() As String = {"编号","姓名","职务","学历","性别"}
Dim Filter As String
For i As Integer = 0 To nms.length - 1
  If e.Form.controls(nms(i)).value IsNot Nothing Then
     If filter >"" Then
         filter=filter & "and "
     End If
     filter= filter & fds(i) & bjf(i) & sps(i) & e.Form.controls(nms(i)).value & sps(i)
   End If
Next
DataTables("人员信息表").loadfilter = filter
DataTables("人员信息表").load()

--  作者:有点蓝
--  发布时间:2017/6/24 10:45:00
--  
前后都加上空格啊

filter=filter & "          and              "

msgbox(filter)弹出完整筛选条件看看