網友問題:
我在做一個採購系統,所有的產品都是由許多零件組成,同時採購時也要把產品的封裝箱一起採購,我建了一個表這個表放的是產品和零件及封裝箱的對應關係,同時也把一個產品所需零件及封裝箱的個數放進去,當有訂單時我根據這張表就能算出需要採購的零件和封裝箱,目前有個問題,如果三個產品需要一個封裝箱,那麼這張表的封裝箱數怎麼寫,因為1是不能被三整=
> 3摹0跋渲皇且桓隼踴褂釁淥浼筒返墓叵狄彩欽庋摹?請問您在ERP系統開發中是否遇到過這個問題,是如何解決的呢。
> 謝謝!
我的回複 如下:
此種狀況在採購系統這裡我是沒遇見過,不過在製造系統裡(BOM)我倒是有遇過類似的基板混裁的case,
也是多個產品混裁用一個原料,產生多個SO,你這裡是產生多個PO,應該是很類似,
我這邊沒有更好的方法,用最原始的方法來解決,若你有更好的方法,請告之,共同學習。
針對你說的這種狀況給出我的建議如下:
一) 假設產品A,產品B,產品C,要生產各1000
二) 需求確認(適用前提):
三個產品若下採購原料時,定是同時下三個產品的原料PO。
三) 解決方案:
2.1) 你建的這張表,類似於BOM,封裝箱用量的小數點位儘可能的多(你可以做測試,這個要根據實際資料才可以判斷), 此處假設為小數點6位,則BOM的用量為:0.333334(最後一位進位/並不是四捨五入/是無條件進位)
2.2) 下三個產品的原料PO,此處省去產生零件的PO(這一塊沒有影響/還是BOM展開就可以)
展開封裝箱用量時,產品A的封裝箱用量:1000*0.333334=333.334
產品B的封裝箱用量:1000*0.333334=333.334
產品C的封裝箱用量:1000*0.333334=333.334
---------------------------------------------------------------
總的封裝箱用量:1000.002
最後的結果小數位無條件捨去 = 1000。
四) 此種混封裝的前提是三個不同產品的需求數量相同
最終的結果是否正確取決於:BOM用量的小數點位元與三個產品的需求數量
此方法是可以推廣至多個產品的混包作業。
PS: 若你有更好的方法,請告之,共同學習。
-------------------------------------------------------------------------------------------------------------------------------------------------------
以上為混包的解決方案,與網友溝通後,他的需求並不是混包,而僅是小數位元的問題,
於是給出以下解決方案
-------------------------------------------------------------------------------------------------------------------------------------------------------
網友需求:
其實我遇到的情況沒有您說得這麼複雜,其實一種產品只使用一種封裝箱,並不是多個產品放到同一封裝箱內,我只不過感覺表內封裝箱的數量是小數,並不能精確表示產品和封裝箱的數量對應關係,我目前是採購時採購數量乘以小數,結果再取整,取整是往大裡取,防止封裝箱不夠。但我總覺得方法不太好,您是專業做ERP的所以想問一下您遇到這種情況是如何處理的。
目前表是這樣的零件編號 貨號 數量
a 46769 3
b 46769 4
k 46769 ?k是封裝箱,?號就是我填的小數紙箱數量=取整(產品訂單數量*?)不過您提到的多個產品放到一個保裝箱的問題我會遇到的。情況是這樣的,產品出廠時要進行拼箱,因此要根據發貨的產品種類和數量,計算出能拼成多少箱,因此還是希望放到您的BLOG上進行討論。感謝您百忙之中對我的回複,其實我現在做的也算一個小型的ERP系統,只不過生產系統換沒有開始做,但BOM已經做出來了,就是這張表,目前這張只用來產生採購合約。
我的回複如下:
若你的前提是:一種產品只使用一種封裝箱
我建議你的做法是:針對封裝箱產生逆向BOM(不應是BOM/或者稱為產品封裝對應關係表)
step1) 產品BOM裡面去掉封裝箱這一項
如:貨號46769的BOM如下
零件編號 貨號 數量
a 46769 3
b 46769 4
step2) 建立封裝箱逆向BOM
如:封裝箱k的逆向BOM(如封裝箱k可以容納3個46769的產品)
零件編號 貨號 數量(封裝箱容納數量)
k 46769 3
PS: 或者稱為產品封裝對應關係表
step3) 在產生PO的地方
封裝箱(紙箱)數量=無條件取整(產品訂單數量/封裝箱容納數量)
假設貨號46769的需求數量為:1000
則封裝箱(紙箱)數量= 1000/3 = 333.333.. = 334(最後一位小數位進位/並不是四捨五入/是無條件進位)
by foreveryday007 20080228
心有多大,宇宙就有多大。
http://blog.csdn.net/foreveryday007