Foxtable(狐表)用户栏目专家坐堂 → 如何让a表按照b表、c表进行排序呢?


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

主题:如何让a表按照b表、c表进行排序呢?

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


加好友 发短信
等级:幼狐 帖子:137 积分:1046 威望:0 精华:0 注册:2021/1/7 16:45:00
如何让a表按照b表、c表进行排序呢?  发帖心情 Post By:2021/2/19 15:17:00 [只看该作者]

假设a表有员工列、部门列,B表有员工列、排序列,c表有部门列、排序列
如何让a表按照b表、c表进行排序呢?

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/2/19 15:20:00 [只看该作者]

没有办法。

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


加好友 发短信
等级:幼狐 帖子:137 积分:1046 威望:0 精华:0 注册:2021/1/7 16:45:00
  发帖心情 Post By:2021/2/19 15:50:00 [只看该作者]

不是吧 ? 蓝版

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


加好友 发短信
等级:幼狐 帖子:137 积分:1046 威望:0 精华:0 注册:2021/1/7 16:45:00
  发帖心情 Post By:2021/2/19 15:53:00 [只看该作者]

有没有变通办法呢?


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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/2/19 15:55:00 [只看该作者]

排序是本表的事,只能在本表添加排序列,无法借助其它表的顺序

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


加好友 发短信
等级:狐神 帖子:4750 积分:34558 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2021/2/19 16:23:00 [只看该作者]

可能是没表述明白,上实例吧

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


加好友 发短信
等级:幼狐 帖子:137 积分:1046 威望:0 精华:0 注册:2021/1/7 16:45:00
  发帖心情 Post By:2021/2/19 16:33:00 [只看该作者]

先放弃一下

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


加好友 发短信
等级:婴狐 帖子:4 积分:85 威望:0 精华:0 注册:2021/2/19 16:48:00
  发帖心情 Post By:2021/2/19 16:58:00 [只看该作者]

做个查询试试,左表 右表

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


加好友 发短信
等级:幼狐 帖子:137 积分:1046 威望:0 精华:0 注册:2021/1/7 16:45:00
  发帖心情 Post By:2021/2/20 9:24:00 [只看该作者]

篮版,这样变通应该可以:
部门表 DataColChanged 事件:
打算部门表修改值得时候,遍历主表全部替换,现在只会替换当前部门,如何改一下循环每次执行全替换

Select Case  e.DataCol.Name
    Case "单位","部门","排序","代码"
        Dim Filter As String =""
Dim drs As List(Of DataRow)
For Each nr As Row In Tables("部门表").rows
        Filter = "[单位] = '" &e.DataRow("代码")& "'and  [部门] = '" & e.oldvalue & "'"
        drs = DataTables("主表").Select(Filter)
        For Each Nr As String In Nrs

            For Each dr As DataRow In drs
                If dr IsNot Nothing
                    dr("单位")=e.DataRow("代码")
                    dr("部门")=e.newvalue
                    dr("部门排序")=e.DataRow("排序")
                End If
            Next
        Next
End Select
[此贴子已经被作者于2021/2/20 9:51:04编辑过]

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/2/20 10:11:00 [只看该作者]

Select Case  e.DataCol.Name
    Case "部门","排序","代码"
        Dim Filter As String =""
        Dim drs As List(Of DataRow)
        If e.DataCol.Name = "部门"
            Filter = "[单位] = '" & e.DataRow("代码") & "'and  [部门] = '" & e.oldvalue & "'"
        Else
            Filter = "[单位] = '" & e.DataRow("代码") & "'and  [部门] = '" & e.DataRow("部门") & "'"
        End If
        drs = DataTables("主表").Select(Filter)
        For Each dr As DataRow In drs
            dr("单位")=e.DataRow("代码")
            dr("部门")= e.DataRow("部门")
            dr("部门排序")=e.DataRow("排序")
        Next
End Select


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