以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 表达式错误 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=66610) |
-- 作者:majian -- 发布时间:2015/4/10 13:45:00 -- 表达式错误 请教以下代码错误 Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.CommandText = "SELECT 合同对象 Fr om {合同} where 项目名称 = \'" & Vars("xmmc") & "\'" dt = cmd.ExecuteReader() Dim s As String = dt.GetComboListString("合同对象") s = s.Replace("|","\',\'") \'s = s.Replace(" ","") s = "\'" & s & "\'" If e.Table.Current("费用对象") In (s) Forms("待办").Controls("Button14").Visible = True End If 提示编译错误, If e.Table.Current("费用对象") In (s) |
-- 作者:Bin -- 发布时间:2015/4/10 13:52:00 -- http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=66608 |
-- 作者:jiangyong -- 发布时间:2015/4/10 13:52:00 -- Fr om {合同} From {合同}
[此贴子已经被作者于2015/4/10 13:52:45编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2015/4/10 13:55:00 -- 今天居然这么多人问这个问题,你是从哪里学到这样的写法?
|
-- 作者:jiangyong -- 发布时间:2015/4/10 13:59:00 -- s="A|B|C|D" s1= if d in (\'A\',\'B\',\'C\',\'D\') then
|
-- 作者:cyrollin -- 发布时间:2015/4/10 14:01:00 -- 也可能是一个人用不同的 forum ID, 呵呵。。。。。。。。 |
-- 作者:狐狸爸爸 -- 发布时间:2015/4/10 14:02:00 -- 以下是引用jiangyong在2015/4/10 13:59:00的发言:
s="A|B|C|D" s1=
if d in (\'A\',\'B\',\'C\',\'D\') then
这段话出在哪里,是谁教你的?
[此贴子已经被作者于2015/4/10 14:02:40编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2015/4/10 14:08:00 -- 正确的代码:
Dim cmd As New SQLCommand cmd.Connection Name = ""数据源 cmd.CommandText = "SELECT Count([_Identify]) Fro m {合同} where 项目名称 = \'" & Vars("xmmc") & "\' And 合同对象 = \'" & & e.Table.Current("费用对象") & "\'" If cmd.ExecuteScalar > 0 Then Forms("待办").Controls("Button14").Visible = True End If [此贴子已经被作者于2015/4/10 14:08:05编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2015/4/10 14:13:00 -- 还可以参考我在另一个帖子的回复:
dim s as string = "123,124,235" dim vs() as string = s.split(",") for each v as string in vs if v = e.table.current("列名") then 执行代码 exit for end if next
in是表达式和sql语句的用法,不是代码的用法 [此贴子已经被作者于2015/4/10 14:13:26编辑过]
|