以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请教一个语法问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=127164)

--  作者:wandongliang
--  发布时间:2018/11/7 13:29:00
--  请教一个语法问题
If Forms("零售查询窗口").Controls("DateTimePicker1").value = "" Or Forms("零售查询窗口").Controls("DateTimePicker1").value = "" Then
   Dim s As List(Of String)  = DataTables("零售明细表").SQLGetValues("零售单编号","商品编号 = \'" & Tables("零售查询窗口_table1").current("永久编号") & "\' and 日期 = \'" & Date.today & "\' and 店名 = \'" & vars("默认店名") & "\'")
   
   DataTables("零售总表").LoadFilter = "[店名] = \'" & vars("默认店名") & "\' And [零售单编号] In (" & String.join(",", s.toarray) & ")"
   
   DataTables("零售总表").Load
End If

这段代码报错,请问问题出在哪

--  作者:有点甜
--  发布时间:2018/11/7 14:47:00
--  

改成

 

If Forms("零售查询窗口").Controls("DateTimePicker1").value = nothing Or Forms("零售查询窗口").Controls("DateTimePicker1").value = nothing Then


--  作者:wandongliang
--  发布时间:2018/11/7 14:49:00
--  
但是报错的问题不在这里,而在加载数据的语句
--  作者:有点甜
--  发布时间:2018/11/7 15:09:00
--  

弹出值,看是否正确

 

   Dim s As List(Of String)  = DataTables("零售明细表").SQLGetValues("零售单编号","商品编号 = \'" & Tables("零售查询窗口_table1").current("永久编号") & "\' and 日期 = \'" & Date.today & "\' and 店名 = \'" & vars("默认店名") & "\'")
 
msgbox(s)   
 
   DataTables("零售总表").LoadFilter = "[店名] = \'" & vars("默认店名") & "\' And [零售单编号] In (\'" & String.join("\',\'", s.toarray) & "\')"
 
msgbox(DataTables("零售总表").LoadFilter)
 
   DataTables("零售总表").Load

--  作者:wandongliang
--  发布时间:2018/11/7 15:20:00
--  
弹不出来值,报错 参数“prompt”无法转换为类型“string”
--  作者:有点甜
--  发布时间:2018/11/7 15:29:00
--  

改成这样测试

 

If Forms("零售查询窗口").Controls("DateTimePicker1").value = Nothing Or Forms("零售查询窗口").Controls("DateTimePicker1").value = Nothing Then
    Dim s As List(Of String)  = DataTables("零售明细表").SQLGetValues("零售单编号","商品编号 = \'" & Tables("零售查询窗口_table1").current("永久编号") & "\' and 日期 = \'" & Date.today & "\' and 店名 = \'" & vars("默认店名") & "\'")
    DataTables("零售总表").LoadFilter = "[店名] = \'" & vars("默认店名") & "\' And [零售单编号] In (\'" & String.join("\',\'", s.toarray) & "\')"
   
    msgbox(DataTables("零售总表").LoadFilter)
   
    DataTables("零售总表").Load
End If


--  作者:wandongliang
--  发布时间:2018/11/7 15:37:00
--  
弹出值没有问题
--  作者:wandongliang
--  发布时间:2018/11/7 15:42:00
--  
但是零售单编号的字符串里带有“-”这个特殊字符,有没有影响?
--  作者:有点甜
--  发布时间:2018/11/7 15:44:00
--  
弹出的条件是不是你需要的条件?如果是,那加载有什么问题?
--  作者:wandongliang
--  发布时间:2018/11/7 15:48:00
--  
弹出的是我需要的条件,弹出的报错是  列名‘SSSS’ 无效   但是表里不存在这个列,‘SSSS’是零售单编号的一个前缀