Foxtable(狐表)用户栏目专家坐堂 → 用SQL生成窗口中的table能否再增加临时列?(已解决)


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

主题:用SQL生成窗口中的table能否再增加临时列?(已解决)

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/7 12:31:00 [只看该作者]

 换种思路才行。原表加入一列吧。反正都是临时列。

Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")
'用SQL语句从后台表取数形成临时表
Dim cmd As New SQLCommand
Dim dt As DataTable = DataTables("产品编码")
dt.DataCols.Add("选择", Gettype(Boolean))


cmd.CommandText = "SELECT 选择,产品编码,产品类别,产品系列,名称,规格,颜色,计量单位 From {产品编码}"
dt = cmd.ExecuteReader()

Tables(e.Form.name & "_Table1").DataSource = dt

Tables(e.Form.name & "_Table1").AllowEdit = True
Tables(e.Form.name & "_Table1").AutoSizeCols()

tr.BuildTree(dt,"产品类别|产品系列")
tr.Nodes.Insert("显示所有",0) '插入顶端节点

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/1/7 12:38:00 [只看该作者]

这地方存在bug,下次更新搞定。

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


加好友 发短信
等级:四尾狐 帖子:976 积分:8521 威望:0 精华:0 注册:2012/2/9 16:35:00
  发帖心情 Post By:2013/1/7 13:39:00 [只看该作者]

我其实已经搞定了,但增加了一个临时表,不知道这种方式效率怎么样?代码如下:

Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")
'生成临时表再用SQL语句查找需要的字段生成table
Dim temptb As New DataTableBuilder("临时表")
temptb.Build()
Dim dt As DataTable = DataTables("临时表")
dt.Fill("SELECT 产品编码,产品类别,产品系列,名称,规格,颜色,计量单位 From {产品编码}","EI",True)
dt.DataCols.Add("选择", Gettype(Boolean))
Tables(e.Form.name & "_Table1").DataSource = dt
Tables(e.Form.name & "_Table1").AllowEdit = True
Tables(e.Form.name & "_Table1").Cols("选择").Move(0)
Tables(e.Form.name & "_Table1").AutoSizeCols()

tr.BuildTree(dt,"产品类别|产品系列")
tr.Nodes.Insert("显示所有",0) '插入顶端节点


 回到顶部
总数 13 上一页 1 2