以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]用代码固定排序列问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=132913)

--  作者:hanzhang98
--  发布时间:2019/4/2 10:37:00
--  [求助]用代码固定排序列问题
各位教师好!请教教师:

        1、用代码来指定并固定排序列如何实现(不想要“”直接操作表的排序”)。比如:“员工表”永远想按“部门工种编号”列来排序,在人员调动时,只要变更其“部门工种编号”,该员工能马上按新的“部门工种编号”排序到新的工作部门并显示。

        2、用“数据填充器”复制“员工表”数据到“工资表”时,“工资表”的数据也要能按照“部门工种编号”列来排序,现在复制过来的数据是杂乱无章的。

谢谢。
     

--  作者:有点甜
--  发布时间:2019/4/2 11:03:00
--  

1、beforeSort 事件

 

e.cancel = true

 

你编写代码排序

 

systemready = False
Tables("表A").sort = "第一列"
systemready = True

 

2、复制过来以后,执行排序代码

 

Tables("表A").sort = "第一列"


--  作者:hanzhang98
--  发布时间:2019/4/2 15:10:00
--  

老师好。

     按您的代码,将这句“e.cancel = true”写在了表事件BeforeSort中,

    然后在窗口中加入一个“按钮”,将您的如下代码写入Click事件中

    systemready = False
    Tables("员工表").sort = "工种职务编号"
    systemready = True


点击“按钮”,是能对指定表按指定列排序,但退出系统再进入时,就又恢复原样了,固定不住。


我是想让系统一启动就自动永远按指定的列排序,无需再手工干预。


是不是我还没有理解您的意思,把代码用的不正确。还请老师费心指导。谢谢。



[此贴子已经被作者于2019/4/2 15:10:31编辑过]

--  作者:有点甜
--  发布时间:2019/4/2 15:12:00
--  
afterOpenProject事件,写排序sort的代码,即可。
--  作者:hanzhang98
--  发布时间:2019/4/2 16:19:00
--  
老师好。“副本表”的排序代码又该写在那里。请老师指导,谢谢。
--  作者:有点甜
--  发布时间:2019/4/2 16:42:00
--  
以下是引用hanzhang98在2019/4/2 16:19:00的发言:
老师好。“副本表”的排序代码又该写在那里。请老师指导,谢谢。

 

写在窗口的afterLoad事件,即可。


--  作者:hanzhang98
--  发布时间:2019/4/2 16:53:00
--  
老师好。将副本表排序的如下代码写入窗口的“AfterLoad”事件,出现系统提示:序字符串包含一个不在 IBindingList 中的属性。”

systemready = False
Tables("系统_Table1").sort = "工种编号"
Tables("系统_Table2").sort = "工种编号"
Tables("系统_Table3").sort = "工种编号"
Tables("系统_Table4").sort = "工种编号"
systemready = True

请老师帮助指导。谢谢!
[此贴子已经被作者于2019/4/2 17:36:07编辑过]

--  作者:hanzhang98
--  发布时间:2019/4/2 17:39:00
--  
老师好。将这两句代码“systemready = False”、“systemready = True”去掉试了试,还是系统提示:序字符串包含一个不在 IBindingList 中的属性。”

请老师费心指正。谢谢!

--  作者:有点甜
--  发布时间:2019/4/2 17:54:00
--  

 

贴出你写的完整代码。贴出的代码没问题。

 

 


--  作者:hanzhang98
--  发布时间:2019/4/2 18:20:00
--  
老师好。窗口的“AfterLoad”事件的全部代码如下:


[此贴子已经被作者于2019/4/2 23:55:46编辑过]