以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  LoadFilter用法  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=165068)

--  作者:huaziqiao1976
--  发布时间:2021/5/10 21:06:00
--  LoadFilter用法

Dim xs As DataTable = DataTables("销售明细")
xs.LoadFilter = "物资名称 = \'" & mc & "\' And 规格型号 = \'" & xh & "\' And 数量 = \'" & sl & "\' And 不含税单价 = \'" & je & "\'"

 

前半段是字符型数据加载没问题,红字部分是高精度小数,总是提示“标准表达式中数据类型不匹配”,求指导

[此贴子已经被作者于2021/5/10 21:07:03编辑过]

--  作者:有点蓝
--  发布时间:2021/5/10 21:15:00
--  
参考:http://www.foxtable.com/webhelp/topics/1284.htm

表达式中的日期用符号#括起来,数值则不需要任何符号括起来,这些和代码中的格式是一样的,唯一不同的是字符串用单引号括起来。

例如:

Tables("订单").Filter = "[产品] = \'PD01\'"  \'字符用单引号括起来
Tables("订单").Filter = "[日期] = #3/17/1999#"  \'日期用#括起来
Tables("订单").Filter = "[折扣] = 0.1"  \'数值直接使用


--  作者:huaziqiao1976
--  发布时间:2021/5/10 23:11:00
--  

http://www.foxtable.com/webhelp/index.htm?page=1284.htm

按照例子来写,还是不行

Dim mc As String = e.Form.Controls("ComboBox3").value
Dim xh As String = e.Form.Controls("ComboBox4").value
Dim sl As Integer = e.Form.Controls("ComboBox5").value
Dim je As Integer = e.Form.Controls("ComboBox6").value
Dim zh1 As DataTable = DataTables("销售明细")
zh1.LoadFilter = "物资名称 = \'" & mc & "\' and 规格型号 = \'" & xh & "\'" \'and 数量 = " & sl & "\'"  \'and [不含税单价] = " & je & "\'"
DataTables("销售明细").Load()

提示:

字符串的语法错误 在查询表达式 \'(物资名称 = \'橡胶制品*油管\' and 规格型号 = \'ZDY-4000LR 4JS076\' and 数量 = 10 And [不含税单价] = 1327\')\' 中。

 

[此贴子已经被作者于2021/5/10 23:11:27编辑过]

--  作者:huaziqiao1976
--  发布时间:2021/5/10 23:31:00
--  

解决了