订单表身TF_PO字段如下
PONO PRDNO MARK QTY PRICE......
PO14001 SPC0001 LOG1 200 20
BOM表头MF_BOM
BOM_ID DEP QTY
SPC0001-> 001 1
XMC0009-> 001 1
XMC0001-> 001 1
BOM表身TF_BOM
BOMID PRDNO PRDNAME QTY MARK
SPC0001-> A001 AAAAAAA 20 LOG1
SPC0001-> A002 BBBBBB 30 LOG1
SPC0009-> A001 AAAAAAA 20 LOG9
SPC0009-> A002 BBBBBB 30 LOG9
现在想在下订单,当表身很多料号COPY取前3位大类第一个BOM表的表身数据,只是MARK值不一样
如下SPC0025料号MARK值是 LOGPL,则表身取SPC0001的BOM表,MARK值取LOGPL
现在如下订单需要产生如下BOM表
PONO PRDNO MARK QTY PRICE......
PO14001 SPC0025 LOGPL 400 20
则需要产生BOM表如下
BOM表头MF_BOM
BOM_ID DEP QTY MARK
SPC0025-> 001 1 LOGPL
BOM表身TF_BOM
BOMID PRDNO PRDNAME QTY MARK
SPC0025-> A001 AAAAAAA 20 LOGPL
SPC0025-> A002 BBBBBB 30 LOGPL
自动产生BOM表好点,主要是表身如何产生,不知怎样关联啊。
------解决思路----------------------
1)只要 FOR INSERT,DELETE 和 UPDATE 没关系
2)先单独判断是否存在,存在就退出;没必要在INSERT 中判断。
3)SUBSTRING(i.prd_no,1,3),前缀是3位吧。