Foxtable(狐表)用户栏目专家坐堂 → CheckedComboBox 多选项的加载


  共有3119人关注过本帖树形打印复制链接

主题:CheckedComboBox 多选项的加载

帅哥哟,离线,有人找我吗?
阿福
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1357 威望:0 精华:0 注册:2015/3/25 16:42:00
CheckedComboBox 多选项的加载  发帖心情 Post By:2015/8/14 21:19:00 [只看该作者]


Dim ks As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker1")
Dim js As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker2")
Dim gzh As WinForm.CheckedComboBox = e.Form.Controls("CheckedComboBox1")
Dim ksv As Date = ks.Value
Dim jsv As Date = js.Value
Dim gzh1 As String = gzh.Text
Dim V() As String
V = gzh1.split(",")
Dim f As String 
Dim fs As String
For i As Integer = 0 To V.Length - 1
f = "[公猪编号] = '" & v(i) & "'"
fs = fs & "and" & f
Next
Dim filter As String = "[日期] >= '" & ksv & "' and [日期]< ='" & jsv & "' and [sys_user] = '" & user.Name & "'"  & fs
DataTables("采精").LoadOrder = "日期"
DataTables("采精").LoadTop = "14"
DataTables("采精").LoadPage = "0"
DataTables("采精").LoadFilter = filter
DataTables("采精").Load()


请问老师,我想把所有日期符合,[公猪编号] = v(i)都加载下来,可以上面代码,只能加载任何一个v(i),该怎么改?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/14 21:27:00 [只看该作者]

试一下替换成下面的代码
Dim fs as String = "1=2"
for i as integer = 0 to v.length -2
  f="[公猪编号]='" & v(i) & "'"
  fs = fs & " Or " & f
next
Dim filter As String = "[日期] >= '" & ksv & "' and [日期]< ='" & jsv & "' and [sys_user] = '" & user.Name & "'"  & " And  (" & fs & ")"
[此贴子已经被作者于2015/8/14 21:28:49编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
阿福
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1357 威望:0 精华:0 注册:2015/3/25 16:42:00
  发帖心情 Post By:2015/8/14 21:35:00 [只看该作者]

谢谢“有点蓝”,但还是不行



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/14 21:36:00 [只看该作者]

你看看输出的filter 是什么

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/14 21:36:00 [只看该作者]

把所有方括号去掉试一下

 回到顶部
帅哥哟,离线,有人找我吗?
阿福
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1357 威望:0 精华:0 注册:2015/3/25 16:42:00
  发帖心情 Post By:2015/8/14 21:37:00 [只看该作者]

可以了
for i as integer = 0 to v.length -2
改成
for i as integer = 0 to v.length -1


 回到顶部
帅哥哟,离线,有人找我吗?
阿福
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1357 威望:0 精华:0 注册:2015/3/25 16:42:00
  发帖心情 Post By:2015/8/14 21:50:00 [只看该作者]

请问老师,

filter = [日期] >= ' 2015-01-01' and [日期]< ='2015-07-01' and [sys_user] = '张三'   And  (1 = 2 or [公猪编号]=k2 or [公猪编号]=k2 or [公猪编号]=k3)

这里的1 = 2 是什么意思?


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/14 21:55:00 [只看该作者]

就是false的意思,因为后面要加 "or" 过滤的时候条件不能直接用 “Or” 开头,免判断的一种方法

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2015/8/14 21:57:00 [只看该作者]

你的fs如果是空的,那你看看filter结果就知道怎么回事了

 回到顶部
帅哥哟,离线,有人找我吗?
阿福
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:196 积分:1357 威望:0 精华:0 注册:2015/3/25 16:42:00
  发帖心情 Post By:2015/8/14 22:11:00 [只看该作者]

谢谢蓝老师,我懂了

 回到顶部