Foxtable(狐表)用户栏目专家坐堂 → 关于排序我想讨论下


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

主题:关于排序我想讨论下

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
关于排序我想讨论下  发帖心情 Post By:2013/10/16 13:34:00 [显示全部帖子]

  以前我用GetUniqueValues  不能排序,一个好的函数不能排序造成了很大的困惑,后来老大终于添加了一个可以排序的不重复函数.

但是最近我又发现一个问题   filler  这个填充的也不能排序 又造成我的一个困惑.填充后的数据不能根据来源数据表的顺序.


另外 所有的统计表的顺序也不是根据呗统计的数据表的顺序.这是第一个不方便的(比如交叉统计表的顺序都不对的),第二个因为统计表没有主键列,所以统计表再处理(比如利用统计表手工填充等等)也不能排序,有啥好办法?

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 14:31:00 [显示全部帖子]

老大 我的意思不想自己编码  有现成的函数不用?  你这个手工编码的速度要比这个函数处理的速度要慢些.


另外:我的意思是先生成统计表  再利用统计表的数据再次进行处理  这个情况怎么处理? (就比如你所说的进行手工填充.)


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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 14:38:00 [显示全部帖子]

以下是引用狐狸爸爸在2013-10-16 14:32:00的发言:

1、速度一样的哦,记得stopdraw就行

2、不明白这个问题是什么意思



  一样? 我怎么前两天测试了下 速度不一样呀!



    第二个问题,简单的说 比如我生成了一个统计表  我想利用这个统计表的数据再进行比如手工填充的工作,想用主键列做排序列 ,统计表是没有主键列 怎么办?


   


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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 14:45:00 [显示全部帖子]

比如这个代码:


Dim b As New GroupTableBuilder("统计表1",DataTables("订单"))
b.Filter = "[客户] = 'CS01'" '仅统计客户为CS01的记录
b.Groups.AddDef("产品") '根据产品分组
b.Groups.AddDef("客户") '根据产品分组
b.Totals.AddDef("数量") '对数量进行统计
b.Build '生成统计表

Dim Cols1() As String = {"产品","客户"}
Dim Cols2() As String = {"产品","客户"}
For Each dr1 As DataRow In DataTables("统计表1").Select("[客户]='CS01'", "排序我想用主键列排序")
    Dim dr2 As DataRow = DataTables("汇总").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
Next


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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 14:48:00 [显示全部帖子]

另外  一个数据表  里面的数据是这样的:

项目列

9300

但是进行交叉统计后变成这样了:

9300列   一列    二列   

  像这样的怎么处理?  我的理解应该是  一列   二列   9300列  这样的呀

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 14:54:00 [显示全部帖子]

   老大 你回答是7楼的问题 还是 8楼的问题  如果是8楼的问题 难道我一直老用代码调节列的顺序? 如果数据一直在不停的添加也这样做?

  那七楼的问题呢?

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 15:12:00 [显示全部帖子]

7楼的代码看不懂?  老大 你是在装糊涂.

12楼说的对

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 15:32:00 [显示全部帖子]

    不好意思  老大 我理解错误.不用主键列排序也是可以的  我一直以为 要跟来源表一模一样的顺序 必须要用主键列呢.其实用其他列也可以的.   我以前一直用主键列排序的. 所以造成我概念错误. 


filler  这么好的函数  应该可以设置可以排序.  

 

那么第二个问题 交叉统计的列顺序用啥代码可以设置列位置?



[此贴子已经被作者于2013-10-16 15:33:44编辑过]

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 15:48:00 [显示全部帖子]

不是我不买账 是用户不买账.

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/10/16 15:57:00 [显示全部帖子]

For Each dr1 As Row In Tables("表A").Select("[金额] > 100")   Table可以用select吗? 应该是  Tables("表A").datatable.Select 吧?


  另外这个的写法 不用排序都可以根据来源表的顺序一样?

 回到顶部
总数 19 1 2 下一页