以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]取得drs 集合中的列  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=8301)

--  作者:飞鱼
--  发布时间:2010/9/29 14:11:00
--  [求助]取得drs 集合中的列

有这么一段代码,是希望能把搜索到的多行内容传递给一个临时表,临时表和相关变量已经定义过了,  

.......

   Dim drs AS List(of Datarow)

    drs=Datatables("BPB量产电池").SELECT(filter2)
    For Each dra As Datarow In drs      \'历遍drs
    Dim dc As Datacol=drs("产品名称")      

    Dim Drb As Datarow = Datatables("temp").AddNew()   
        drb("产品名称") = dra(dc.name)                               ‘把drs中的产品名称传递给临时表的产品名称
    Next

 

运行后,其中提示Dim dc As Datacol=drs("产品名称")   错误,如何取得drs集合中的这一列呢?

 



图片点击可在新窗口打开查看此主题相关图片如下:未命名3.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2010-9-29 14:13:24编辑过]

--  作者:mr725
--  发布时间:2010/9/29 14:16:00
--  

   Dim drs AS List(of Datarow)

    drs=Datatables("BPB量产电池").SELECT(filter2)
    For Each dra As Datarow In drs      \'历遍drs
    \'Dim dc As Datacol=drs("产品名称")      

    Dim Drb As Datarow = Datatables("temp").AddNew()   
        drb("产品名称") = dra("产品名称")          ‘这样试一试···
    Next

 

   Dim drs AS List(of Datarow)

    drs=Datatables("BPB量产电池").SELECT(filter2)
    For Each dra As Datarow In drs      \'历遍drs
    Dim dc As string = drs("产品名称")      

    Dim Drb As Datarow = Datatables("temp").AddNew()   
        drb("产品名称") = dc          ‘这样试一试···
    Next

[此贴子已经被作者于2010-9-29 14:17:23编辑过]

--  作者:飞鱼
--  发布时间:2010/9/29 14:31:00
--  

试了一下,不行

 

一般取得列的定义方式是Dim dc As DataCol = DataTables("订单").DataCols("日期"),直接从表中的列取,而我是希望从drs集合中取.定义dc为string也运行不了.

 


--  作者:kylin
--  发布时间:2010/9/29 14:46:00
--  

1、“直接从表中的列取,而我是希望从drs集合中取”

其实都一样的,因为drs集合是从表中取得,集合中的这些列和表的列都完全一样,所以 Dim dc As Datacol=Datatables("BPB量产电池").Datacols("产品名称")  就是你所需要的。 

 

2、drb("产品名称") = dra(dc.name)      

从上下文看,完全不需要这个定义和写法,其实可以按照mr725的:

     For Each dra As Datarow In drs      \'历遍drs
    \'Dim dc As Datacol=drs("产品名称")      

    Dim Drb As Datarow = Datatables("temp").AddNew()   
        drb("产品名称") = dra("产品名称")          ‘这样试一试···
    Next


--  作者:飞鱼
--  发布时间:2010/9/29 14:52:00
--  
可是运行提示错误是出在Dim dc As Datacol=drs("产品名称") ,而不是后面的那些行啊!
--  作者:飞鱼
--  发布时间:2010/9/29 15:05:00
--  
狐爸在我的另一个帖子中,把我的问题解决了,其实何必如此复杂呢
--  作者:czy
--  发布时间:2010/9/29 15:08:00
--  
以下是引用飞鱼在2010-9-29 14:52:00的发言:
可是运行提示错误是出在Dim dc As Datacol=drs("产品名称") ,而不是后面的那些行啊!

 

应该说你错到哪去都不知道了,drs是个集合哎.

 

 

提问要养成良好的习惯,尽量上传示例文件。

[此贴子已经被作者于2010-9-29 15:08:42编辑过]