Foxtable(狐表)用户栏目专家坐堂 → 专业报表排序问题


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

主题:专业报表排序问题

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


加好友 发短信
等级:四尾狐 帖子:824 积分:6294 威望:0 精华:0 注册:2012/3/1 3:17:00
专业报表排序问题  发帖心情 Post By:2014/2/23 20:31:00 [只看该作者]

在专业报表中,用For r As Integer = 0 To Rows.Count -1  循环表中的行时,生成的内容是根据什么条件作为排序的?在表中用Sort重新排序后有什么办法能让生成的内容排序按照当前表排序的样式生成?请教下老师

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/2/23 22:06:00 [只看该作者]

 你可以这样得到当前表的行。select方法是可以排序的。

 for each dr as datarow in datatables("表A").select(Tables("表A").Filter, "第一列")  '根据第一列排列

 next

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


加好友 发短信
等级:四尾狐 帖子:824 积分:6294 威望:0 精华:0 注册:2012/3/1 3:17:00
  发帖心情 Post By:2014/2/23 22:24:00 [只看该作者]

Dim tbl As Table = Tables("窗口1_Table1")

For Each Region() As String In tbl.DataTable.GetUniqueValues("","类别","配比","材料颜色")

        Rows = tbl.DataTable.Select("[类别] = '" & Region(0) & "'")      
        For r As Integer = 0 To Rows.Count -1
            rt.Cells(r + 1, 0).Text = rows(r)("规格") & "cm"
            rt.Cells(r + 1, 1).Text = rows(r)("厚度") & "C"
            rt.Cells(r + 1, 2).Text = rows(r)("重量") & "公斤"
            If rows(r)("备注") = "" Then
                rt.Cells(r + 1, 3).Text = ".............."
            Else
                rt.Cells(r + 1, 3).Text = rows(r)("备注")
            End If
        Next

Next

那上面的代码该怎么修改?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/2/23 23:09:00 [只看该作者]

Dim tbl As Table = Tables("窗口1_Table1")

For Each Region() As String In tbl.DataTable.GetUniqueValues("","类别","配比","材料颜色")

        Rows = tbl.DataTable.Select("[类别] = '" & Region(0) & "'", tbl.Sort)      
        For r As Integer = 0 To Rows.Count -1
            rt.Cells(r + 1, 0).Text = rows(r)("规格") & "cm"
            rt.Cells(r + 1, 1).Text = rows(r)("厚度") & "C"
            rt.Cells(r + 1, 2).Text = rows(r)("重量") & "公斤"
            If rows(r)("备注") = "" Then
                rt.Cells(r + 1, 3).Text = ".............."
            Else
                rt.Cells(r + 1, 3).Text = rows(r)("备注")
            End If
        Next

Next


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


加好友 发短信
等级:四尾狐 帖子:824 积分:6294 威望:0 精华:0 注册:2012/3/1 3:17:00
  发帖心情 Post By:2014/2/24 12:08:00 [只看该作者]

原来是这样,感谢老师的指导

 回到顶部