Foxtable(狐表)用户栏目专家坐堂 → 想在Cols("车牌号").Combolist 里显示车牌号和客户


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

主题:想在Cols("车牌号").Combolist 里显示车牌号和客户

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


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/5/30 15:47:00 [显示全部帖子]

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.Connection Name = "数据源名称"
cmd.CommandText = "SELECT Distinct 车牌号 From {客户表} "
dt = cmd.ExecuteReader
Tables("销售清单").Cols("车牌号").Combolist = dt.GetComboListString("车牌号")

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


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/5/30 16:22:00 [显示全部帖子]

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.Connection Name = "数据源名称"
cmd.CommandText = "SELECT distinct 车牌号,客户 From {客户表} "
dt = cmd.ExecuteReader
Dim v as string

For Each dr As DataRow in dt.DataRows

     v = v & dr("车牌号") & " " & dr("客户") & “|”

Next

Tables("销售清单").Cols("车牌号").Combolist = v


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


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/5/31 8:23:00 [显示全部帖子]

用5秒是肯定的,从后台取3000行数据,还好组合成列表框。
 
用下面的代码可能会快一点:
 
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.Connection Name = "数据源名称"
cmd.CommandText = "SELECT distinct 车牌号,客户 From {客户表} "
dt = cmd.ExecuteReader
Dim v As New StringBuilder
For Each dr As DataRow in dt.DataRows
    v.Append(dr("车牌号"))
    v.Append(" ")
    v.Append(dr("客户"))
    v.Append("|")
Next
Tables("销售清单").Cols("车牌号").Combolist = v.Tostring
 

原理参考:

http://help.foxtable.com/topics/2097.htm


 
不过3000个列表项目,似乎没有实际的意义,会不会太多了?

 

 


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


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/5/31 13:45:00 [显示全部帖子]

改用7楼方法,现在是几秒钟?

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


加好友 发短信
等级:管理员 帖子:47480 积分:251289 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/5/31 15:29:00 [显示全部帖子]

你可以在DataColChanging事件中设置代码,判断输入的内容是否包括空格,如果有空格,取空格之前的字符,就是车牌号了。

 回到顶部