物料清單(BOM)是ERP系統中的核心內容之一。其設計的好壞直接關系到ERP系統運用的好壞。筆者認為在ERP系統設計時,需要兼顧實用性與準確性。在這篇文章中,筆者就跟大家談談BOM物料清單設計過程中的註意點。 

      1. 輸入界面的設計 

      在物料清單的設計過程中,筆者一向強調輸入界面與查詢界面的分離。輸入界面強調的是輸入的準確性;而查詢界面則關註的是物料清單的實用性。簡單的說,在輸入界面中,相關的內容要盡量的少。如此的話,才能夠提高其準確性。如一個簡單的物料清單,用戶只需要輸入零件編號與用量即可。如下圖所示。而不需要關註更多的內容。如價格或者供應商等信息。 

      在物料清單輸入界面設計時,主要需要註意如下內容。 

      一是輸入內容合法性的驗證。如在輸入用量的時候,只能夠輸入大於0的數字。如果用戶輸入的是字符或者小於0的數據,則系統就會自動報錯。通過這種方式,就可以提高系統數據的準確性。 

      二是對於默認值要謹慎使用。有些開發人員在開發物料清單模塊時,喜歡在用量這裏使用一個默認值,如默認情況下用量為1。他們這麽設計,本意是好的。因為如果用量確實為1的話,就可以減少用戶輸入的工作量,從而提高用戶輸入的效率。但是這裏存在著一種安全隱患。如上圖所示,一共有三個材料的用量是1。那麽我們就會有疑問,這個1的數量是否準確呢?是用戶忘記輸了這個用量還是其用量確實為1呢?其實根據筆者的經驗,如果設置了默認值的話,用戶很容易在這裏出錯誤,如忘記輸了,而系統自動采用了默認值。故筆者建議,除非企業絕大部分材料的用量都是1,否則的話,最好不要在這個物料清單的用量上設置默認值。如果不設置默認值,而用戶又沒有輸入數據的話,則在保存時系統會提示錯誤信息。這也是提高物料清單準確性很重要的一個手段。 

      三是物料清單的審核。物料清單一般輸入完畢後或者更改後都需要進行審核。也就是說,只有審核後的物料清單才能夠被其他用戶使用。在實際開發中,有不少開發人員會忽視這一點。如現在物料清單中某個零件的用量發生了變化或者新增加了一個零件之後,物料清單的狀態沒有自動變為不可用。這也會帶來一定的安全隱患。如現在上面100520這個零件,其用量變為了50。不過更改後這個數據還沒有經過確認。在采購計劃中就根據這個新的數據生成了采購計劃。而以後如果更改者發現這是自己的筆誤,再將數據改回去。那麽後面一系列的數據都會出現錯誤。為此,筆者在設計物料清單時,都會在這裏設置一個開關。只要用戶在物料清單中更改了數據(包括數量的變化與零件的變化),就會亮“紅燈”。在其他模塊中暫時不能夠利用這個物料清單。只有用戶重新審核後,才會亮“綠燈”。即用戶可以重新使用這個物料清單。這麽設計,可以在最大程度上降低用戶的誤操作。 

      2. 查詢界面的設計 

      上面這個截圖是一個輸入界面的設計,簡單明了,有利於用戶的輸入。但是對於其他用戶來說,實際的價值並不是很大。如對於財務部門來說,他們可能希望看到某個零件到價格;對於采購部門來說,他們希望看到供應商的相關信息;對於倉庫來說,他們希望知道這裏原材料的類別,如哪些是零件、包裝材料、輔助材料等等。這些信息在物料清單的輸入界面中都沒有反應出來。用戶如果需要了解這些信息,必須回到產品界面去查詢具體的信息。顯然這不利於企業員工的工作。總之光有輸入界面,對於用戶的實際價值並不是很大。為此筆者在ERP系統設計時,專門為物料清單設計出了一個查詢的界面。其示意圖如下: 

      在設計這個物料清單時,主要註意如下內容。 

      一是用量的顯示。這裏的用量筆者並不是以數量的形式顯示,而是以分數的形式顯示。這主要是為了便於用戶的閱讀。如對於包裝材料,如一個紙箱。在一個紙箱裏可能會裝有三個產品,那麽其用量就是0.33333。這不便於用戶的閱讀。他們更習慣與用1/3來表示這個用量。而且這還有一個好處,就是在運算的時候,不會出現誤差。如現在總共有30個產品,那麽需要多少數量的紙箱呢?如果按照0.3333來計算的話,那麽就需要9.9999個紙箱。這中間就會有誤差,需要用戶盡心手工修改。相反,如果使用1/3的話,那麽計算出來的數量就是10個。不過這裏需要提醒各位讀者的是,現在大部分數據庫中都是不支持分數的表示的。為此在這裏可能需要采用一個折中的方式,即需要使用兩個字段來代表分子與分母。 

      二是供應商字段的設計。有可能一個零件有多個供應商。此時在這裏該如何顯示呢?是顯示全部供應商的信息還是顯示一個特定供應商的信息呢?這是需要考慮的一個問題。如果顯示多個供應商,又有兩種具體的方式。一是一個供應商一行。這有一個不好的地方。如果一個零件有5個供應商,那麽在這裏就會顯示5行。如此可能就會引起用戶的誤解,因為這個產品中有5個相同的零件。所以這種方法就被哢嚓掉了。還有一種方式就是列倒轉的方式。就是將多個供應商的信息顯示在一行中。這種方式在技術上是可行的。但是在實際工作中也沒有多大的意義。筆者這裏推薦的方式是,根據某個特定的規則來顯示供應商。如一個零件雖然可能有多個供應商,但是企業往往會指定一個為當前的供應商。在後續采購或者計算材料成本的時候,默認采用的都是這個供應商的相關信息。那麽在這個物料清單中,就可以顯示這個當前供應商的信息,而不用顯示所有供應商的內容。筆者認為這可能更加的合理。 

      三是價格的問題。在物料清單查詢中,還會帶出價格與單項成本等內容。現在的問題是,如果一個產品中有多個零件構成,而他們采購的幣種不同,又該如何處理呢?這裏也有兩種處理方式。一是在帶出價格的同時也帶出其采購的幣種。這可以讓用戶一目了然的看到其采購使用的是什麽幣種。不過這有一個缺陷,即如果員工需要統計材料成本的話,還需要手工轉換為本位幣進行核算。還有一種方式就是在查詢時就根據特定的匯率來進行折算。也就是說在這個界面中顯示的單項成本都是用本位幣來計量的。這麽操作也有一個缺陷,就是折算率如何來確定。是根據當前的即時匯率折算還是根據期初匯率折算呢?一般情況下,這可以根據系統的設置中得到這個信息。 

      四是原材料的種類問題。大部分生產企業,都會將原材料分為零件、包裝材料、輔助材料等等。然後根據材料的種類不同,分別將其放置在不同的倉庫。為了便於用戶的查詢,在這個界面中最好將原材料的類別也顯示出來。另外,在計算材料成本的時候,有可能也需要統計包裝材料的成本、零件的成本以及各自在成本中所占的比率等等。此時也需要用到這個界面。 

網友評論

查看所有評論