以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  层级项目表里代码排序  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=174017)

--  作者:dengk03
--  发布时间:2021/12/27 13:34:00
--  层级项目表里代码排序
层级项目表里按照代码排序的话会形成
1.1
1.10
1.11
1.2
1.3
如何让其正确排序?

--  作者:有点蓝
--  发布时间:2021/12/27 13:43:00
--  
1.1改为1.01,1.2改为1.02
--  作者:dengk03
--  发布时间:2021/12/27 17:15:00
--  
级码是新功能分级数据里的,是自动生成的,我没办法规定格式
[此贴子已经被作者于2021/12/27 17:16:31编辑过]

--  作者:jialihaha
--  发布时间:2021/12/27 17:16:00
--  
改下生成的代码逻辑,统一编号的长度
--  作者:有点蓝
--  发布时间:2021/12/27 17:23:00
--  
单元格数据都是可以自己编辑的。
--  作者:dengk03
--  发布时间:2021/12/27 17:34:00
--  
能否不修改级码,而是修改排序代码
加零看上去不好看
01.01
01.02
01.02.02.01
万一出现三位数的
001.002.001...
[此贴子已经被作者于2021/12/27 17:36:30编辑过]

--  作者:有点蓝
--  发布时间:2021/12/27 17:40:00
--  
可以增加一个排序列,按排序列排序
--  作者:dengk03
--  发布时间:2021/12/27 17:54:00
--  
是这个意思么?
级码列  排序列
1.1         1
1.2         2
1.2.1      3
1.2.2      4
1.3         5
1.4         6
那代码也不好写吧

比如:我想增加1.2.3

--  作者:jialihaha
--  发布时间:2021/12/27 18:02:00
--  
看你水平了,哈哈
--  作者:有点蓝
--  发布时间:2021/12/27 20:30:00
--  
方法1、、找到1.2.2的序号为4,后面一个序号为5,二个和除以2=4.5就是1.2.3的序号。foxtable的_sortkey就是类似这种方法
2、预估一下每个级码的子级码可能的数量,序号编大一点
级码列  排序列
1.1         1000
1.2         2000
1.2.1      2100
1.2.2      2200
1.3         3000
1.4         4000
3、另外增加一个级码列,存储补齐0 的级码
级码列  级码列2
1.1         01.01
1.2         01.02
1.2.1      01.02.01