2011年10月16日 星期日

@Tools 透過原物料,探訪找出MCST製令有用到該原物料的舊料號


先這樣

===============================
    Dim tblMCSTGoods As New DataTable
    '\stru\HFGOODS.DBF   1 2 3

@有三個檔案,有重複資料,
合併,去重複

    Dim tblMCSTComp As New DataTable
    '\stru\COMPOUND.DBF    1 a
@COMPOUND比較多,但看起來還是有多少
目前還是以COMPOUND著手

    Dim tblMCSTGoodsm As New DataTable
    '\stru\GOODSM.DBF


========================================================
'或許改成範圍搜尋
某個MCST檔案範圍
不去作全部的比對

@感覺目前抓的產品內容HFGOOD.DBF是做出來的
應該事先走別的部分,透過舊料號抓到某些代號以後才去走 HFGOOD
這要再問看看
目前先走HFGOOD

@透過 taigoods.dbf 去撈出 HFGOOD 要走的產品料號

@再來應該是缺少商標,
該怎麼知道八馬應該帶入哪個商標
透過舊料號的末三碼
去找 customer 資料夾
去找該檔案下的商標編碼 Labes

'都是走製成料號去抓
先比對製成料號下,所抓的調和編碼是不是一樣


@看起來 ERP 調和內容 M 開頭
都已經拿掉地區編碼
所以舊料號應該可以放心拿掉最後一碼(為字母時)

'ERP所有製令料號
select a.pdtcode, b.partrule, a.pdtkey, a.pdtversion from tblbompdt a
join tblstock b on a.pdtcode = b.partcode
where a.pdtcode like '%XF' and not a.aprvdate is null and a.isnotvalid = 0
order by a.pdtcode



======================================================
'有太多不一致了
要再想一想

'見鬼,ERP找的到調和
SQL找不到 (尚未核准)

幹~可能要走第七碼

以MCST檔案為主, 切兩個 View
@調和內容單純對調和內容

只需要走調和內容比對
@Good只需抓使用數比對


檔案在 Server端
直接存取
Server.MapPath("路徑") 去做 CnS

上傳Excel檔案時發生錯誤,訊息為不是一個有效的路徑
http://www.blueshop.com.tw/board/show.asp?subcde=BRD200710091155432EO


OleDbConnection cn = new OleDbConnection ();
//設定連線字串
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("../Upload_Excel/") + FileName + ";Extended Properties=" + "Excel 8.0;";

這好像是 .NET才寫的
winForm不能用
還是下載來操作吧


=======================================
抓產品名, 去對MCST所有產品


'舊料號 比對 找新料號 XF
select * from tblstock
where partrule like '15]' and partcode like '%XF'

'找到該產品應該走的 Proc  (PdtKey, PdtVersion)

select * from tblbomPdt
where pdtcode like '000215B----XF'
==============================================
@抓 MCST 所有 產品檔案 去跟BOMProc 調和名稱對
然後一一比對 調和使用數


'該調和使用數 (ProcNum/CardNum)

select * from tblBomProc
where proccode like 'BS033'

@
procNum = Botmgw1 + Botmgw2 + Botmgw3
XD = Glassn1~3, Fibern, Qn1, Qn2

==============================================
MCST調和檔案 (Compound)
不包含該調和使用數 (使用數紀錄在產品檔案中)

@所以抓MCST所有調和 去跟 BOM表 調和名稱對
然後一一比對內容

'該調和製程內容 (PartCode, PartNum / CardNum )
'並且換成舊料號(PartRule)
'找最新PdtVersion


select a.partcode, b.partrule, a.partnum, a.cardnum, max(a.pdtversion)from tblbompart a
join tblStock b on a.partcode = b.partcode
where a.proccode like 'BO007-7'
group by a.partcode, b.partrule, a.partnum, a.cardnum



@
ProcCode = Dispense
Partcode = Mgn1~4, Mfn1~4, Nln, Npn,
@Mgn M開頭原料,最後一碼為字母者,去掉最後一碼  (舊碼 地區編碼)
@M料號 在 Mgn之間應該是不會重複(不同地區編碼,也不會出現)
PartNum = Mgw1~4, MfW1~4, Nlw, Npw,
CardNum = Ttw * 1000
--------------------------------------------------------------------------
反過來,透過ERP調和製程,去比對MCST

'所有調和製程


select distinct(a.proccode), b.partrule from tblbompart a
join tblstock b on a.proccode = b.partcode
where len(proccode) <> 13





=============================================
因為核對舊系統與新系統物料有點麻煩的關係
需要寫一個可以找出某段期間內的製令下
透過篩選的原物料號,
就可以排除其他不相干製令

在核對新舊系統資料上,可以少一些功夫

然後透過製令製造書的假檔案
做出要讓舊系統列印的資料
在跟MCST印出的資料作比對

==============================================

或是說 直接透過舊DBF資料,比對ERP BOM表資料

找出調和內容不一致的料號

\\Win2ksv01\tai-dos\make 之下
HFGOODS 物料 有哪些製成,
COMPOUND 調和內容 有哪些原物料

ao002紅  -> ao002R
ao003新  -> 沒有

可以做~需不需要做~要問看看老大

沒有留言:

張貼留言