分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.youkuaiyun.com/jiangjunshow
程序代号: CMSB07
程序名称: 取消库位管理
Parent Class:
系统分析代号:
信息文件:BOMTD (R/W) 组合单单头
BOMTE (R/W) 组合单单身
BOMTF (R/W) 拆解单单头
BOMTG (R/W) 拆解单单身
CMSMA (R/W) 公用参数档
CMSNI (R/W) 仓库库位档
COPTH (R/W) 销货单单身信息档
COPTJ (R/W) 销退单单身信息档
COPTO (R/W) 出货通知单身档
CUSTN (R/W) 交易单据单身档
DHQTE (R/W) 调拨出库单身档
DHQTG (R/W) 调拨出库到达单身档
DHQTM (R/W) 调拨退库到达单身档
EPSTB (R/W) 出货通知单身
EPSTC (R/W) 包装明细信息档
GMPTH (R/W) 留样单信息档
GMPTI (R/W) 留样检验单头信息档
GMPTL (R/W) 养护检验单头信息档
INVMC (R/W) 品号仓库档
INVML (R/W) 品号仓库库位批号档
INVTB (R/W) 交易单据单身档
INVTC (R/W) 盘点底稿信息档单身
INVTD (R/W) 盘点信息汇总档
INVTG (R/W) 借出入调拨单身档
INVTI (R/W) 借出入归还单身档
INVTK (R/W) 成本开账/调整单身档
INVTM (R/W) 报废单单身档
INVTO (R/W) 销毁单单身档
INVLA (R/W) 交易明细信息档
INVLE (R/W) 品号月档子单身
KBSMM (R/W) 看板序号维护单身档
KBSTF (R/W) 刷读产生生产入库单单身档
KBSTI (R/W) 刷读产生调拨单单身档
KBSTK (R/W) 刷读产生销货单单身档
MOCTE (R/W) 领/退料单身档
MOCTG (R/W) 生产入库单身档
MOCTI (R/W) 委外进货单身档
MOCTL (R/W) 委外退货单身档
PURTH (R/W) 进货单单身信息档
PURTJ (R/W) 退货单单身信息档
QMSTA (R/W) 进货检验单单头档
QMSTD (R/W) 委外进货检验单单头档
QMSTG (R/W) 生产入库检验单单头档
QMSTJ (R/W) 转移检验单单头档
RMATD (R/W) 维修单单身档
SFCTC (R/W) 转移单单身档
屏幕格式:
* 运行本作业将取消库位管理,在进行取消之前,请做好数据的备份工作,防止因误取消而带来工作不便*
信息处理:
0.开启程序时,做判断
IF 启用库位管理(CMS.MA093)<>’Y’ THEN
SHOW MSG E+200483:”共用参数中未启用库位管理,不可运行该作业!”,不开启该程序
ENDIF
按「直接处理」或「后台处理」后SHOW WARNING MSG
MSG CODE:W+200253,”运行本作业将取消库位管理,在进行取消之前,请做好数据的备份工作,防止因误取消而带来工作不便!确定开始取消?”
1.BOM系统
1.1 BOMTD(组合单单头)
UPDATE BOMTD SET TD022=’##########’
1.2 BOMTE(组合单单身)
UPDATE BOMTE SET TE015=’##########’
1.3 BOMTF(拆解单单头)
UPDATE BOMTF SET TF021=’##########’
1.4 BOMTG(拆解单单身)
UPDATE BOMTG SET TG015=’##########’
2.CMS系统
2.1 CMSMA(公用参数档)
UPDATE CMSMA SET MA093=’N’,MA096=’Y’
2.2 CMSNI(仓库库位档)
DELETE CMSNI 关联 仓库信息档(CMSMC) 得到QureyA 逐笔INSERT WHILE NOT QueryA.EOF DO INSERT CMSNI NI001 仓库编号 = QueryA.MC001 NI002 库位编号 = '##########' NI003 库位说明 = '' NI004 有效码 = QueryA.MC018 NI005 备注 = '' NI006 传送码 = 'N' NI007 传送日期 = '' QueryA.NEXT END
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
3.COP系统
3.1 COPTH(销货单单身信息档)
UPDATE COPTH SET TH056=’##########’
3.2 COPTJ(销退单单身信息档)
UPDATE COPTJ SET TJ057=’##########’
3.3 COPTO(出货通知单身档)
UPDATE COPTO SET TO039=’##########’
4.CUS系统
4.1 CUSTN(交易单据单身档)
UPDATE CUSTN SET TN013=’##########’
5.DHQ系统
5.1 DHQTE(调拨出库单身档)
UPDATE DHQTE SET TE032=’##########’
5.2 DHQTG(调拨出库到达单身档)
UPDATE DHQTG SET TG029=’##########’
5.3 DHQTM(调拨退库到达单身档)
UPDATE DHQTM SET TM024=’##########’
6.EPS系统
6.1 EPSTB(出货通知单身)
UPDATE EPSTB SET TB041=’##########’
6.2 EPSTC(包装明细信息档)
UPDATE EPSTC SET TC037=’##########’
7.GMP系统
7.1 GMPTH(留样单信息档)
UPDATE GMPTH SET TH027=’##########’
7.2 GMPTI(留样检验单头信息档)
UPDATE GMPTI SET TI038=’##########’
7.3 GMPTL(养护检验单头信息档)
UPDATE GMPTL SET TL038=’##########’
8.INV系统
8.1 INVMC(品号仓库档)
UPDATE INVMC SET MC015=’##########’
8.2 INVML(品号仓库库位批号档)
IF 数量表达方式(CMS.MA024)='1'单单位 OR '3'制造双单位 THEN 关联:品号仓库库位档.品号+仓库(INV.ML001+ML002) *= 品号仓库档.品号+仓库(INV.MC001+MC002) 品号仓库库位档.品号+批号(INV.ML001+ML004) *= 品号批号档.品号+批号(INV.ME001+ME002) GROUP BY 品号(ML001)+仓库(ML002)+批号(ML004) 排序:品号(ML001)+仓库(ML002)+批号(ML004) Qty = SUM(INV.ML005) QtyPack = SUM(INV.ML006) ELSE 关联:品号仓库库位档.品号+仓库(INV.ML001+ML002) *= 品号仓库档.品号+仓库(INV.MC001+MC002) 品号仓库库位档.品号+批号(INV.ML001+ML004) *= 品号批号档.品号+批号(INV.ME001+ME002) 品号仓库库位档.品号(INV.ML001) *= 品号基本信息档.品号(INV.MB001) 品号基本信息档.品号+小单位(INV.MB001+MB072) *= 品号换算单位档.品号+换算单位(INV.MD001+MD002) GROUP BY 品号(ML001)+仓库(ML002)+批号(ML004) 排序:品号(ML001)+仓库(ML002)+批号(ML004) IF 换算率分子(MD003) is null OR 换算率分子(MD003)=0 OR 换算率分母(MD004)=0 Qty = SUM(INV.ML005) ELSE SIGN(INV.ML005)*FLOOR(ABS(INV.ML005)) AS ML005A 库存数量整数位 INV.ML005-(SIGN(INV.ML005)*FLOOR(ABS(INV.ML005))) AS ML005B 库存数量小数位 INVML_库存量 = SUM((ML005A*MD003/MD004)+(ML005B*1000)) 加总换算成小单位数量 INVML_库存量/MD003*MD004 ,取整数 AS ML005_A,取余数 AS ML005_B 换算成大单位数量 Qty = ML005_A+(ML005_B/1000,取小数三位) ENDIF QtyPack = 0 ENDIF 得到 QueryA 关联 QueryA.品号+仓库+批号(ML001+ML002+ML004) *= 品号仓库库位档.品号+仓库+批号(INV.ML001+ML002+ML004) ORDER BY 品号(ML001)+仓库(ML002)+批号(ML004) GET MAX(ML008) AS ML008A, MAX(ML009) AS ML009A, MAX(ML010) AS ML010A 得到 QueryB DELETE INVML 逐笔 INSERT 品号仓库库位批号档(INVML) ML001 品号 = QueryB.ML001 ML002 仓库 = QueryB.ML002 ML003 库位 = '##########' ML004 批号 = QueryB.ML004 ML005 库存数量 = QueryB.Qty ML006 库存包装数量 = QueryB.QtyPack ML007 预留字段 = ML008 上次盘点日 = QueryB.ML008A ML009 最近入库日 = QueryB.ML009A ML010 最近出库日 = QueryB.ML010A ML011 备注 =
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
8.3 INVTB(交易单据单身档)
UPDATE INVTB SET TB029=’##########’
UPDATE INVTB SET TB030=’##########’ WHERE TB013<>”
8.4 INVTC(盘点底稿信息档单身)
UPDATE INVTC SET TC014=’##########’
8.5 INVTD(盘点信息汇总档)
UPDATE INVTD SET TD017=’##########’
8.6 INVTG(借出入调拨单身档)
UPDATE INVTG SET TG033=’##########’,TG034=’##########’
8.7 INVTI(借出入归还单身档)
UPDATE INVTI SET TI026=’##########’,TI027=’##########’
8.8 INVTK(成本开账/调整单身档)
UPDATE INVTK SET TK026=’##########’
8.9 INVTM(报废单单身档)
UPDATE INVTM SET TM026=’##########’ WHERE TM014<>”
UPDATE INVTM SET TM027=’##########’
8.10 INVTO(销毁单单身档)
UPDATE INVTO SET TO016=’##########’
8.11 INVLA(交易明细信息档)
UPDATE INVLA SET LA023=’##########’
8.12 INVLE(品号月档子单身)
IF 数量表达方式(CMS.MA024)=’1’单单位 OR ‘3’制造双单位 THEN
关联:品号月档子单身.品号+库存年月+仓库+批号(INV.LE001+LE002+LE003+LE005) 条件:库存年月(LE002)<=库存现行年月(CMS.MA011) GROUP BY 品号(LE001)+库存年月(LE002)+仓库(LE003)+批号(LE005) ORDER BY 品号(LE001)+库存年月(LE002)+仓库(LE003)+批号(LE005) Q006 = SUM(INV.LE006) Q008 = SUM(INV.LE008) Q010 = SUM(INV.LE010) Q012 = SUM(INV.LE012) Q014 = SUM(INV.LE014) Q016 = SUM(INV.LE016) Q018 = SUM(INV.LE018) Q020 = SUM(INV.LE020) Q022 = SUM(INV.LE022) Q024 = SUM(INV.LE024) Q026 = SUM(INV.LE026) Q032 = SUM(INV.LE032) Q033 = SUM(INV.LE033) Q034 = SUM(INV.LE034) Q035 = SUM(INV.LE035) Q036 = SUM(INV.LE036) Q037 = SUM(INV.LE037) Q038 = SUM(INV.LE038) Q039 = SUM(INV.LE039) Q040 = SUM(INV.LE040) Q041 = SUM(INV.LE041) Q042 = SUM(INV.LE042) ELSE 关联:品号月档子单身.品号(INV.LE001) *= 品号基本信息档.品号(INV.MB001) 品号基本信息档.品号+小单位(INV.MB001+MB072) *= 品号换算单位档.品号+换算单位(INV.MD001+MD002) 条件:库存年月(LE002)<=库存现行年月(CMS.MA011) GROUP BY 品号(LE001)+库存年月(LE002)+仓库(LE003)+批号(LE005) ORDER BY 品号(LE001)+库存年月(LE002)+仓库(LE003)+批号(LE005) IF 换算率分子(MD003) is null OR 换算率分子(MD003)=0 OR 换算率分母(MD004)=0 Q006 = SUM(INV.LE006) Q008 = SUM(INV.LE008) Q010 = SUM(INV.LE010) Q012 = SUM(INV.LE012) Q014 = SUM(INV.LE014) Q016 = SUM(INV.LE016) Q018 = SUM(INV.LE018) Q020 = SUM(INV.LE020) Q022 = SUM(INV.LE022) Q024 = SUM(INV.LE024) Q026 = SUM(INV.LE026) ELSE SIGN(INV.LE006)*FLOOR(ABS(INV.LE006)) AS LE006A 库存数量整数位 INV.LE006-(SIGN(INV.LE006)*FLOOR(ABS(INV.LE006))) AS LE006B 库存数量小数位 INVLE_LE006 = SUM((LE006A*MD003/MD004)+(LE006B*1000)) 加总换算成小单位数量 INVLE_LE006/MD003*MD004 ,取整数 AS LE006_A,取余数 AS LE006_B 换算成大单位数量 Q006 = LE006_A+(LE006_B/1000,取小数三位) Q008 ,Q010 ,Q012 ,Q014 ,Q016 ,Q018 ,Q020 ,Q022 ,Q024 ,Q026分别对应于 LE008,LE010,LE012,LE014,LE016,LE018,LE020,LE022,LE024,LE026同上处理 ENDIF Q032 = 0 Q033 = 0 Q034 = 0 Q035 = 0 Q036 = 0 Q037 = 0 Q038 = 0 Q039 = 0 Q040 = 0 Q041 = 0 Q042 = 0 ENDIF 得到 QueryA DELETE INVLE WHILE NOT QueryA.EOF DO LE001 品号 = QueryA.LE001 LE002 库存年月 = QueryA.LE002 LE003 仓库 = QueryA.LE003 LE004 库位 = '##########' LE005 批号 = QueryA.LE005 LE006 月初数量 = QueryA.Q006 LE007 预留字段 = LE008 本月入库数量 = QueryA.Q008 LE009 预留字段 = LE010 本月销货数量 = QueryA.Q010 LE011 预留字段 = LE012 本月领料数量 = QueryA.Q012 LE013 预留字段 = LE014 本月调拨(入)数量 = QueryA.Q014 LE015 预留字段 = LE016 本月调整(入)数量 = QueryA.Q016 LE017 预留字段 = LE018 本月出库数量 = QueryA.Q018 LE019 预留字段 = LE020 本月销退数量 = QueryA.Q020 LE021 预留字段 = LE022 本月退料数量 = QueryA.Q022 LE023 预留字段 = LE024 本月调拨(出)数量 = QueryA.Q024 LE025 预留字段 = LE026 本月调整(出)数量 = QueryA.Q026 LE027 预留字段 = LE028 预留字段 = LE029 预留字段 = LE030 预留字段 = LE031 预留字段 = LE032 月初包装数量 = QueryA.Q032 LE033 本月入库包装数量 = QueryA.Q033 LE034 本月销货包装数量 = QueryA.Q034 LE035 本月领料包装数量 = QueryA.Q035 LE036 本月调拨(入)包装数量 = QueryA.Q036 LE037 本月调整(入)包装数量 = QueryA.Q037 LE038 本月出库包装数量 = QueryA.Q038 LE039 本月销退包装数量 = QueryA.Q039 LE040 本月退料包装数量 = QueryA.Q040 LE041 本月调拨(出)包装数量 = QueryA.Q041 LE042 本月调整(出)包装数量 = QueryA.Q042 LE043 预留字段 = LE044 预留字段 = LE045 预留字段 = LE046 预留字段 = LE047 预留字段 = LE048 预留字段 = QueryA.NEXT ENDDO
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
9.KBS系统
9.1 KBSMM(看板序号维护单身档)
UPDATE KBSMM SET MM014=’##########’
9.2 KBSTF(刷读产生生产入库单单身档)
UPDATE KBSTF SET TF014=’##########’
9.3 KBSTI(刷读产生调拨单单身档)
UPDATE KBSTI SET TI015=’##########’,TI019=’##########’
9.4 KBSTK(刷读产生销货单单身档)
UPDATE KBSTK SET TK015=’##########’
10.MOC系统
10.1 MOCTE(领/退料单身档)
UPDATE MOCTE SET TE025=’##########’
10.2 MOCTG(生产入库单身档)
UPDATE MOCTG SET TG036=’##########’
10.3 MOCTI(委外进货单身档)
UPDATE MOCTI SET TI060=’##########’
10.4 MOCTL(委外退货单身档)
UPDATE MOCTL SET TL040=’##########’
11.PUR系统
11.1 PURTH(进货单单身信息档)
UPDATE PURTH SET TH072=’##########’
11.2 PURTJ(退货单单身信息档)
UPDATE PURTJ SET TJ046=’##########’
12.QMS系统
12.1 QMSTA(进货检验单单头档)
UPDATE QMSTA SET TA037=’##########’ WHERE TA036<>”
12.2 QMSTD(委外进货检验单单头档)
UPDATE QMSTD SET TD037=’##########’ WHERE TD036<>”
12.3 QMSTG(生产入库检验单单头档)
UPDATE QMSTG SET TG037=’##########’ WHERE TG036<>”
12.4 QMSTJ(转移检验单单头档)
UPDATE QMSTJ SET TJ037=’##########’ WHERE TJ036<>”
13.RMA系统
13.1 RMATD(维修单单身档)
UPDATE RMATD SET TD019=’##########’
14.SFC系统
14.1 SFCTC(转移单单身档)
UPDATE SFCTC SET TC056=’##########’
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.youkuaiyun.com/jiangjunshow