工程BOM与工单BOM不一导致的问题。请问各位何高招。

freesky20 2009-09-08 02:42:07
MP61K100
BOMTYPE StockCode Discraption OperationNo1 Component
M 5021-002-09-75 9E53-16B975-AG31T3 010 2022-120-01
M 5021-002-09-75 9E53-16B975-AG31T3 010 4043-845-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 03FD-980-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 04FD-560-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 1140-MTP-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 1711-101-04
M 5021-002-09-75 9E53-16B975-AG31T3 020 1713-080-04
M 5021-002-09-75 9E53-16B975-AG31T3 020 1952-723-02
M 5021-002-09-75 9E53-16B975-AG31T3 020 2811-042-05
M 5021-002-09-75 9E53-16B975-AG31T3 020 4043-620-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 4072-875-02
M 5021-002-09-75 9E53-16B975-AG31T3 020 4072-891-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 5601-371-03
M 4072-891-01 conduit end-fitting 010 BASF-POM-00
M 4072-891-01 conduit end-fitting 010 HSML-002-00
M 4072-875-02 CONDUIT END FITTING 000 BASF-POM-00
M 4072-875-02 CONDUIT END FITTING 000 HSML-002-00
M 4043-620-01A SLUG SPHERICA-BALL 锌接头 010 HSAE-925-00
M 4043-844-01 锌接头 010 0SAE-925-00
M 4043-845-01 锌接头 010 4043-844-01
M 4043-845-01 锌接头 010 HSML-002-00
M 4043-845-01 锌接头 010 PA66-A3Z-00
O 4043-601-01 锌接头 010 4043-601-01A



MP65K100
WorkOrderNo StockCode OperationNo Component ParentItem
0004109583 5021-002-09-75 010 0SAE-925-00 4043-844-01
0004109583 5021-002-09-75 010 HSML-002-00 4043-845-01
0004109583 5021-002-09-75 010 PA66-A3Z-00 4043-845-01
0004109583 5021-002-09-75 010 2022-120-01 5021-002-09-75
0004109583 5021-002-09-75 010 HSAE-925-00 4043-620-01A
0004109583 5021-002-09-75 000 BASF-POM-00 4072-875-02
0004109583 5021-002-09-75 000 HSML-002-00 4072-875-02
0004109583 5021-002-09-75 010 BASF-POM-00 4072-891-01
0004109583 5021-002-09-75 010 HSML-002-00 4072-891-01
0004109583 5021-002-09-75 020 03FD-980-00 5021-002-09-75
0004109583 5021-002-09-75 020 04FD-560-00 5021-002-09-75
0004109583 5021-002-09-75 020 1140-MTP-00 5021-002-09-75
0004109583 5021-002-09-75 020 1711-101-04 5021-002-09-75
0004109583 5021-002-09-75 020 1713-080-04 5021-002-09-75
0004109583 5021-002-09-75 020 1952-723-02 5021-002-09-75
0004109583 5021-002-09-75 020 2811-042-05 5021-002-09-75
0004109583 5021-002-09-75 020 5601-371-03 5021-002-09-75

情况是这样的。MP61K100 是工程BOM。MP65K100是工单BOM,由于应用的原因,两个表的形式不相同,尤其是OperationNo发生了改变。 现在需要做的事情是,跟据MP65K100的 WorkOrderNo ,按MP61K00的 OperationNo 列出其底层物料。

结果如下:

BOMTYPE StockCode OperationNo1 Discraption Component
0004109583 5021-002-09-75 020 HSAE-925-00 4043-620-01A
0004109583 5021-002-09-75 020 BASF-POM-00 4072-875-02
0004109583 5021-002-09-75 020 HSML-002-00 4072-875-02
0004109583 5021-002-09-75 020 BASF-POM-00 4072-891-01
0004109583 5021-002-09-75 020 HSML-002-00 4072-891-01
0004109583 5021-002-09-75 020 03FD-980-00 5021-002-09-75
0004109583 5021-002-09-75 020 04FD-560-00 5021-002-09-75
0004109583 5021-002-09-75 020 1140-MTP-00 5021-002-09-75
0004109583 5021-002-09-75 020 1711-101-04 5021-002-09-75
0004109583 5021-002-09-75 020 1713-080-04 5021-002-09-75
0004109583 5021-002-09-75 020 1952-723-02 5021-002-09-75
0004109583 5021-002-09-75 020 2811-042-05 5021-002-09-75
0004109583 5021-002-09-75 020 5601-371-03 5021-002-09-75


请问如何现实??????????????
...全文
420 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
playwarcraft 2009-09-08
  • 打赏
  • 举报
回复

看得头晕。。。。。
能不能简化一下,用简单的A,B这样的料号来代替那么一长串的字串?
freesky20 2009-09-08
  • 打赏
  • 举报
回复
OK 基本可以看清了。
我来详细说明一下,5021-002-09-75 这个产品,由两个工序(Operatrion1)组成,分别是010,020两个工序

M 5021-002-09-75 9E53-16B975-AG31T3 010 2022-120-01
M 5021-002-09-75 9E53-16B975-AG31T3 010 4043-845-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 03FD-980-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 04FD-560-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 1140-MTP-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 1711-101-04
M 5021-002-09-75 9E53-16B975-AG31T3 020 1713-080-04
M 5021-002-09-75 9E53-16B975-AG31T3 020 1952-723-02
M 5021-002-09-75 9E53-16B975-AG31T3 020 2811-042-05
M 5021-002-09-75 9E53-16B975-AG31T3 020 4043-620-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 4072-875-02
M 5021-002-09-75 9E53-16B975-AG31T3 020 4072-891-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 5601-371-03

5601-371-03下面的只是它的次级物料,我们暂时不管它。
而MP65K100 是做5021-002-09-75的一张工单。工单号是0004109583, Component是存储5021-002-09-75所用到的所有底层原材料。

MP65K100
WorkOrderNo StockCode OperationNo Component ParentItem
0004109583 5021-002-09-75 010 0SAE-925-00 4043-844-01
0004109583 5021-002-09-75 010 HSML-002-00 4043-845-01
0004109583 5021-002-09-75 010 PA66-A3Z-00 4043-845-01
0004109583 5021-002-09-75 010 2022-120-01 5021-002-09-75
0004109583 5021-002-09-75 010 HSAE-925-00 4043-620-01A
0004109583 5021-002-09-75 000 BASF-POM-00 4072-875-02
0004109583 5021-002-09-75 000 HSML-002-00 4072-875-02
0004109583 5021-002-09-75 010 BASF-POM-00 4072-891-01
0004109583 5021-002-09-75 010 HSML-002-00 4072-891-01
0004109583 5021-002-09-75 020 03FD-980-00 5021-002-09-75
0004109583 5021-002-09-75 020 04FD-560-00 5021-002-09-75
0004109583 5021-002-09-75 020 1140-MTP-00 5021-002-09-75
0004109583 5021-002-09-75 020 1711-101-04 5021-002-09-75
0004109583 5021-002-09-75 020 1713-080-04 5021-002-09-75
0004109583 5021-002-09-75 020 1952-723-02 5021-002-09-75
0004109583 5021-002-09-75 020 2811-042-05 5021-002-09-75
0004109583 5021-002-09-75 020 5601-371-03 5021-002-09-75


现在我想,根据表MP61K100 的工序,将MP65K100表中5021-002-09-75的底层原材料分类,比如020工序要用到的原材料就是。

WorkOrderNo StockCode OperationNo1 Discraption Component
0004109583 5021-002-09-75 020 HSAE-925-00 4043-620-01A
0004109583 5021-002-09-75 020 BASF-POM-00 4072-875-02
0004109583 5021-002-09-75 020 HSML-002-00 4072-875-02
0004109583 5021-002-09-75 020 BASF-POM-00 4072-891-01
0004109583 5021-002-09-75 020 HSML-002-00 4072-891-01
0004109583 5021-002-09-75 020 03FD-980-00 5021-002-09-75
0004109583 5021-002-09-75 020 04FD-560-00 5021-002-09-75
0004109583 5021-002-09-75 020 1140-MTP-00 5021-002-09-75
0004109583 5021-002-09-75 020 1711-101-04 5021-002-09-75
0004109583 5021-002-09-75 020 1713-080-04 5021-002-09-75
0004109583 5021-002-09-75 020 1952-723-02 5021-002-09-75
0004109583 5021-002-09-75 020 2811-042-05 5021-002-09-75
0004109583 5021-002-09-75 020 5601-371-03 5021-002-09-75

现在要问的是SQL 怎么现实!!!
--小F-- 2009-09-08
  • 打赏
  • 举报
回复
declare @s nvarchar(50)
set @s='0SAE-925-00'
;with f as
(select * from [MP65K100] a
where [Component]=@s
union all
select a.*
from [MP65K100] a, f b
where a.[StockCode]=b.[ParentItem])
select * from f
黄_瓜 2009-09-08
  • 打赏
  • 举报
回复
提醒一下,100分或许有人心动
lihan6415151528 2009-09-08
  • 打赏
  • 举报
回复
freesky20 2009-09-08
  • 打赏
  • 举报
回复

结果如下:

BOMTYPE StockCode OperationNo1 Discraption Component
0004109583 5021-002-09-75 020 HSAE-925-00 4043-620-01A
0004109583 5021-002-09-75 020 BASF-POM-00 4072-875-02
0004109583 5021-002-09-75 020 HSML-002-00 4072-875-02
0004109583 5021-002-09-75 020 BASF-POM-00 4072-891-01
0004109583 5021-002-09-75 020 HSML-002-00 4072-891-01
0004109583 5021-002-09-75 020 03FD-980-00 5021-002-09-75
0004109583 5021-002-09-75 020 04FD-560-00 5021-002-09-75
0004109583 5021-002-09-75 020 1140-MTP-00 5021-002-09-75
0004109583 5021-002-09-75 020 1711-101-04 5021-002-09-75
0004109583 5021-002-09-75 020 1713-080-04 5021-002-09-75
0004109583 5021-002-09-75 020 1952-723-02 5021-002-09-75
0004109583 5021-002-09-75 020 2811-042-05 5021-002-09-75
0004109583 5021-002-09-75 020 5601-371-03 5021-002-09-75
freesky20 2009-09-08
  • 打赏
  • 举报
回复

MP65K100
WorkOrderNo StockCode OperationNo Component ParentItem
0004109583 5021-002-09-75 010 0SAE-925-00 4043-844-01
0004109583 5021-002-09-75 010 HSML-002-00 4043-845-01
0004109583 5021-002-09-75 010 PA66-A3Z-00 4043-845-01
0004109583 5021-002-09-75 010 2022-120-01 5021-002-09-75
0004109583 5021-002-09-75 010 HSAE-925-00 4043-620-01A
0004109583 5021-002-09-75 000 BASF-POM-00 4072-875-02
0004109583 5021-002-09-75 000 HSML-002-00 4072-875-02
0004109583 5021-002-09-75 010 BASF-POM-00 4072-891-01
0004109583 5021-002-09-75 010 HSML-002-00 4072-891-01
0004109583 5021-002-09-75 020 03FD-980-00 5021-002-09-75
0004109583 5021-002-09-75 020 04FD-560-00 5021-002-09-75
0004109583 5021-002-09-75 020 1140-MTP-00 5021-002-09-75
0004109583 5021-002-09-75 020 1711-101-04 5021-002-09-75
0004109583 5021-002-09-75 020 1713-080-04 5021-002-09-75
0004109583 5021-002-09-75 020 1952-723-02 5021-002-09-75
0004109583 5021-002-09-75 020 2811-042-05 5021-002-09-75
0004109583 5021-002-09-75 020 5601-371-03 5021-002-09-75
freesky20 2009-09-08
  • 打赏
  • 举报
回复
CSdn 这个破论坛程序,好不容易编好的内容又被搞乱了。

MP61K100
BOMTYPE StockCode Discraption OperationNo1 Component
M 5021-002-09-75 9E53-16B975-AG31T3 010 2022-120-01
M 5021-002-09-75 9E53-16B975-AG31T3 010 4043-845-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 03FD-980-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 04FD-560-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 1140-MTP-00
M 5021-002-09-75 9E53-16B975-AG31T3 020 1711-101-04
M 5021-002-09-75 9E53-16B975-AG31T3 020 1713-080-04
M 5021-002-09-75 9E53-16B975-AG31T3 020 1952-723-02
M 5021-002-09-75 9E53-16B975-AG31T3 020 2811-042-05
M 5021-002-09-75 9E53-16B975-AG31T3 020 4043-620-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 4072-875-02
M 5021-002-09-75 9E53-16B975-AG31T3 020 4072-891-01
M 5021-002-09-75 9E53-16B975-AG31T3 020 5601-371-03
M 4072-891-01 conduit end-fitting 010 BASF-POM-00
M 4072-891-01 conduit end-fitting 010 HSML-002-00
M 4072-875-02 CONDUIT END FITTING 000 BASF-POM-00
M 4072-875-02 CONDUIT END FITTING 000 HSML-002-00
M 4043-620-01A SLUG SPHERICA-BALL 锌接头 010 HSAE-925-00
M 4043-844-01 锌接头 010 0SAE-925-00
M 4043-845-01 锌接头 010 4043-844-01
M 4043-845-01 锌接头 010 HSML-002-00
M 4043-845-01 锌接头 010 PA66-A3Z-00
O 4043-601-01 锌接头 010 4043-601-01A

黄_瓜 2009-09-08
  • 打赏
  • 举报
回复
我不会
--小F-- 2009-09-08
  • 打赏
  • 举报
回复
有点晕 可以直接用CTE递归实现
soft_wsx 2009-09-08
  • 打赏
  • 举报
回复
加到100,楼下继续

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧