Foxtable(狐表)用户栏目专家坐堂 → 建议:Filler能否加个排序的参数?


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

主题:建议:Filler能否加个排序的参数?

美女呀,离线,留言给我吧!
yangming
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
建议:Filler能否加个排序的参数?  发帖心情 Post By:2009/5/17 9:08:00 [只看该作者]

在使用Filler的过程中,发现填充过去的数据并没有按原有的行顺序排序,建议加个排序参数,默认是原顺序.请贺老师考虑一下.

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2009/5/17 15:40:00 [只看该作者]

支持!~


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


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

这是多余的,表本来就是Sort属性,过去之后,你想怎么排序都行。
如果你喜欢的话,可以不用Filler,自己写一段简单的代码:

Dim Name1 As New String{"来源列1","来源列2"}
Dim Name2 As New String{"接收列1","接收列2"}
For Each dr1 As DataRow = DataTables("来源表").Select(条件表达式,排序)
    Dim dr2 = DataTables("接收表").AddNew()
    For i As integer = 0 To Names.Length - 1

       dr2(Names2(i)) = dr1(Names1(i))
    Next

Next

[此贴子已经被作者于2009-5-18 7:44:22编辑过]

 回到顶部
美女呀,离线,留言给我吧!
yangming
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/5/18 9:20:00 [只看该作者]

哦?我昨天是用Filler在本表中填充时发现这个排序的问题的,比如,我想将本表的第一列数据填充到第三列时,发现填充过去的数据顺序和第一列不同,呵呵这样就无法自己再排序了

 回到顶部
美女呀,离线,留言给我吧!
yangming
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/5/18 13:20:00 [只看该作者]

三楼的代码出错了

 回到顶部
美女呀,离线,留言给我吧!
yangming
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/5/18 13:42:00 [只看该作者]

这样才对,只是,如果我不想在表B中新增行,又如何做呢?


Dim Name1() As String ={"第一列","第二列"}
Dim Name2() As String ={"第三列","第四列"}
For Each dr1 As DataRow In DataTables("表A").Select("[第一列]> 0","_Identify")
    Dim dr2 As DataRow = DataTables("表B").AddNew()
    For i As integer = 0 To Name1.Length - 1
       dr2(Name2(i)) = dr1(Name1(i))
    Next

Next

[此贴子已经被作者于2009-5-18 13:52:17编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/5/18 15:30:00 [只看该作者]

Dim Name1() As String ={"第一列","第二列"}
Dim Name2() As String ={"第三列","第四列"}
Dim n As integer
For Each dr1 As DataRow In DataTables("表A").Select("[第一列]> 0","_Identify")
    Dim dr2 As DataRow = DataTables("表B").DataRows(n)
    For i As integer = 0 To Name1.Length - 1
       dr2(Name2(i)) = dr1(Name1(i))
    Next
    n = n +1

Next


 回到顶部
美女呀,离线,留言给我吧!
yangming
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/5/18 15:38:00 [只看该作者]

谢谢贺老师,这样我就可以同表中填充列了,呵呵,只要改个接收表就可以了

Dim Name1() As String ={"第一列","第二列"}
Dim Name2() As String ={"第三列","第四列"}
Dim n As integer
For Each dr1 As DataRow In DataTables("表A").Select("[第一列]> 0","_Identify")
    Dim dr2 As DataRow = DataTables("表A").DataRows(n)
    For i As integer = 0 To Name1.Length - 1
       dr2(Name2(i)) = dr1(Name1(i))
    Next
    n = n +1

Next

[此贴子已经被作者于2009-5-18 15:38:48编辑过]

 回到顶部