標籤:
程式代號: 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
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 備忘 =
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
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=’##########’
[易飛]取消庫位規格書