易飛 取消庫位規格書
程序代號: 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.csdn.net/jiangjunshow
易飛 取消庫位規格書