按照树形结构显示BOM数据 怎么修改代码?

时间:2023-01-30 11:59:53
ERP中BOM输出存储过程,想要导出的结果就是按照层次展开,对于根目录下的零件,紧跟着此部件最后就可以了,但是现在遇到的问题是根目录下的零件与部件不在一起


现在BOM结构如下
按照树形结构显示BOM数据 怎么修改代码?

现在的存储过程显示结果
按照树形结构显示BOM数据 怎么修改代码?

需要显示结果图
按照树形结构显示BOM数据 怎么修改代码?


存储过程字太多 权限有限 发个链接文件
http://pan.baidu.com/s/1hAw4U

9 个解决方案

#1


按照树形结构显示BOM数据 怎么修改代码?

现在显示图

#2


按照树形结构显示BOM数据 怎么修改代码?

想要结果图

#3


自己写SP去获取有正确顺序的结果喽

#4


存储过程字太多 权限有限 发个链接文件
http://pan.baidu.com/s/1hAw4U

代码写了 但是没有达到要求

引用 3 楼 luckyrandom 的回复:
自己写SP去获取有正确顺序的结果喽

#5


谁来拿积分啊

#6


把BOM表构的定义贴出来

其实思想很简单,在你展开BOM结构时对每个物料赋层次号,将层次号转成字串,如001001004051,最后用层次号进行排列显示

#7


按照层级排序是不是就这样了
A.1
A.2
A.3

A.1-1
A.1-2
A.3-3

结果是要求
A.1
A.1-1
A.1-2
A.2
A.3
A.3-3
引用 6 楼 Bes96261 的回复:
把BOM表构的定义贴出来

其实思想很简单,在你展开BOM结构时对每个物料赋层次号,将层次号转成字串,如001001004051,最后用层次号进行排列显示

#8


这个好复杂的啊,仅仅用SQL server实现的话,估计很困难了。。。各位大神么,有谁可以完成的,代码贴出来,小弟也学习下。

#9


你要查询BOM结构的时候,在展开BOM的同时(用存储过程也好,用前台递归取值也好),在表结构中新增两个字段:
 排序字段、 层级
   00        0    
   01        1
   0101      2
   0102      2
   010201    3
   02        1
   ...
如上面的值,然后在导出Excel或展现时,根据“层级”这个字段的值,显示“+++”之前有几个空格、显示几个“+”之类的

#1


按照树形结构显示BOM数据 怎么修改代码?

现在显示图

#2


按照树形结构显示BOM数据 怎么修改代码?

想要结果图

#3


自己写SP去获取有正确顺序的结果喽

#4


存储过程字太多 权限有限 发个链接文件
http://pan.baidu.com/s/1hAw4U

代码写了 但是没有达到要求

引用 3 楼 luckyrandom 的回复:
自己写SP去获取有正确顺序的结果喽

#5


谁来拿积分啊

#6


把BOM表构的定义贴出来

其实思想很简单,在你展开BOM结构时对每个物料赋层次号,将层次号转成字串,如001001004051,最后用层次号进行排列显示

#7


按照层级排序是不是就这样了
A.1
A.2
A.3

A.1-1
A.1-2
A.3-3

结果是要求
A.1
A.1-1
A.1-2
A.2
A.3
A.3-3
引用 6 楼 Bes96261 的回复:
把BOM表构的定义贴出来

其实思想很简单,在你展开BOM结构时对每个物料赋层次号,将层次号转成字串,如001001004051,最后用层次号进行排列显示

#8


这个好复杂的啊,仅仅用SQL server实现的话,估计很困难了。。。各位大神么,有谁可以完成的,代码贴出来,小弟也学习下。

#9


你要查询BOM结构的时候,在展开BOM的同时(用存储过程也好,用前台递归取值也好),在表结构中新增两个字段:
 排序字段、 层级
   00        0    
   01        1
   0101      2
   0102      2
   010201    3
   02        1
   ...
如上面的值,然后在导出Excel或展现时,根据“层级”这个字段的值,显示“+++”之前有几个空格、显示几个“+”之类的