Manage your Warehouse and Get your Manufacturing done翻譯連載
-
修改版-續4
20.8 排程
主生產計畫,有時也叫MPS(Master Production Schedule主生產排程),用來對收到及發出物料產生預測.
注:MPS,供應與生產
OPENERP區分生產,採購與供應.
生產是指製造,採購是指從另一方取得貨物,而供應則包括以上兩者.因此最好是將MPS叫做Master Procurement Schedule主供應排程,OPENERP就是這樣做的.
提示:產品交易
也稱生產計畫.此工具對大生產性交易產品也非常有用.也可以用它進行採購和生產相關的庫存管理.
要使用生產計畫功能,必須安裝 庫存_計畫模塊
20.8.1 銷售預測
要進行生產計畫,首先要定義庫存管理的周期,有些公司作日計畫,有些則是周或月計畫.
提示:庫存管理間隔
在生產計畫中管理庫存的間隔時間之選擇取決于需多長時間完成一個生產循環.一般會有日,周,月等情況.如果需要幾天時間組裝產品,極有可能定義一個周計畫.如果一次製造循環要花幾個月,那么就可以定一個月計畫.
進到菜單 銷售->配置->庫存與銷售期間->庫存與銷售期間.接下來會跳出一個窗口允許自動定義用於庫存管理的下個期間.
圖20.26:定義庫存管理期間
上述定義之後銷售人員可以使用菜單 銷售->銷售預測->銷售預測 按產品與期間錄入銷售預測數據.預測可以是數量也可以是金額.對於金額預測OPENERP會基於預計金額自動計算出相應的數量.當然在保存之前可以根據需要對數量進行手工調整.
圖20.27:維護銷售預測以幫助創建主生產計畫
20.8.2 生產計畫
接下來物流經理要計畫每期的收貨(製造與或採購)與出庫(消耗或出貨). 菜單路徑為 倉庫->庫存計畫->主供應排程
OPENERP會為每個期間之產品提供以下信息
.預估期末存貨. 計算邏輯為上期末存貨(譯者注)-預計出庫+預計入庫
.已結案記錄: 來自生產與已確認採購
.本期預計入庫:計算公式:計畫入庫-截止存貨
.計畫入庫: 由物流經理手工錄入
.已結案出庫. 包括製造耗用以及出貨給客戶
.出庫預測.計算公式:計畫出庫- 截止存貨
.計畫出庫: 由物流經理手工錄入
.銷售預測: 代表銷售人員所作銷售預測的匯總
圖20.28:主生產排程
物流經理可以基於生產計畫中的入庫及出庫預測來分析其相關產品未來庫存的影響.生產計畫檢查并確保特定產品的庫存不會低于設定的庫存水平.
也可以開啟以前期間的生產計畫.這種情況下OPENERP是在預估報表中按期間顯示實際庫存移動明細.
如果尚未為產品定義自動供應規則,可以在任意時間基於生產計畫中的預測啟動供應. 與此相關的操作方法是在主供應排程畫面點擊 未達入庫供應. OPENERP按預測的金額對供應進行計畫.
20.9 管理批次與可追溯性
OPENERP的複式記帳使可以作很高級的追溯性分析.所有的操作都被以庫存移動的形式記錄下來了,因此可以很容易地找出庫存移動中產生偏差的原因.
注:向上及向下追溯
向上追溯是指由從供應商處接收的原材料循移動鏈直至產成品出貨給客戶.(請注意此處的名稱有點易混淆-有時這種情況也被認為是向下追溯. 可以將此理解為什麽地地方使用了它- 被使用了)
向下追溯以另外一個方向跟蹤產品,是從客戶到各個不同的原材料供應商.( 請注意此處的名稱有點易混淆-有時這種情況也被認為是向上追溯. 可以將此理解為什麽地地方供應了它)
20.9.1 庫存移動
使用菜單 倉庫->追溯->庫存移動 可以追蹤一個產品或特定庫位的過去的庫存交易.可以使用各種欄位進行過濾以找出產品相關的訂單,生產活動或源庫位及目標庫位.
圖20.29:庫存移動歷史
每次庫存移動均有特定的狀態,各種可能的狀態如下
.草稿:此類移動在系統內還未有實際作用.此交易尚未被確認
.已確認:移動即將完成,因此它會被計算到預期存貨里,因為已為移動相關產品作了預留,你不知道它是否會被正常處理完成.(譯者注,此處有點繞)
.已驗證:此移動即將完成且此交易必須的原物料也已被預留.
.已完成:庫存移動已完成且被作為實際存貨的一部份
.等待:在來自訂單的情況下,此狀態意味著庫存移動因等待其它移動的結束被暫停.
.已取消:庫存移動沒有執行,因此實際庫存與預期庫存都不會考慮它.
出貨單,產品收貨及內部分揀清單都只是對有相類似屬性庫存移動進行分組的單據,也可以使用菜單 倉庫->追溯->包裝 來看看這些單據的歷史記錄.
20.9.2 批號
OPENERP也可以管理批號,有以下兩類批號
.生產批次(批號)適用于離開相同生產區域的獨特產品或由相同產品組裝而成的組裝件.它們通常由貼在產品上的條形碼進行標識,批號可以是供應商號碼或公司號碼.
.追蹤號:是邏輯批次用以識別包含一組產品的容器.相關的實際應用案例,如放有許多不同產品的棧板上的棧板號.
這些批號可用於所有庫存移動,特別是貨運入庫,內部移動以及出貨.
圖20.30:輸入產品收貨行
在操作中輸入批號時,要么使用現有批號或創建一個新批號.生產批號(批號)用於單個產品.追蹤號可以不同產品上使用多次,因此可以在一個棧板上或盒子里混合不同的產品.
注:簡化視圖
在簡化視圖模式下,看不到追蹤號:該欄位被隱藏了.要使用擴展視圖模式,請將 可用性-擴展視圖 用戶組分派給當前用戶.
也可以在產品表單上指定哪些操作中批號是必輸的.這樣就可以強制用戶為製造操作,收貨以及出貨包裝輸入批號了.
不需要為一組不同的產品一個一個地編唯一的批號.只需要選定包含許多新產品的移動單,然後點擊產品批號拆分按鈕.接下來給定一個前綴(如果需要),OPENERP會啟動一個嚮導在前綴基礎上添加一個序列號生成一個完整的批號.此序列號可能就對應于一組預先打印好已貼在每個產品上的條形碼.
圖20.31:批號拆分
20.9.3 追溯
如果如上所述為庫存移動輸入了批號,就可以針對特定的批號作追溯了. 相關菜單為 倉庫->追溯->生產批號,或 倉庫->追溯->包裝
提示:產品捷徑
從產品表單,右邊的工具條提供了以下有用信息
. 最小庫存規則
. 各庫位存貨
. 產品銷售
. 物料清單
可以使用批號,日期或產品等過濾條件搜尋一個特定的批號.一旦看到此批號的表單, 在表單上可執行以下動作
. 向上追溯:從供應商直至客戶
. 向下追溯:從客戶到供應商
. 在所有物理及虛擬庫位中的存貨
圖20.32:面向訂單生產之向上追溯
圖20.33:面向庫存生產之向下追溯
20.10 按憑證簿管理
可以像按憑證簿管理會計一樣通過憑證簿來管理庫存.此方式最大的優勢是可以用不同的方式定義憑證簿以滿足公司的需求.
例如,一個大公司可能希望按部門或倉庫組織其出貨.那麼可以為每個部門創建一個憑證簿和分派一名經理.對應于其在公司內的職務不同的用戶可以使用相應的憑證簿.這種方式可以更好地組織信息.
有大量運輸業務的公司可以按運貨車輛組織其憑證簿.那麼不同的運輸訂單就可以被分派給代表運貨車輛的憑證簿.當車輛離開公司時,就可以將此憑證簿中所有的運單一并進行確認.
20.10.1 各種憑證簿
激活銷售管理的發票憑證簿重配置選項或安裝銷售_憑證簿模塊就可以使用各種不同的憑證簿了.在OPENERP中有3個與此有關的新概念
.發票憑證簿
.訂單憑證簿
.出貨憑證簿
發票憑證簿(銷售->配置->銷售->發票類別)用於分派採購訂單和/或出貨訂單給指定的發票憑證簿.可以對憑證簿中的任何事項進行一次性開票并且可以按憑證簿控制開票金額.例如可以創建如下憑證簿:每日發票,周末發票和每月發票.也可以在夥伴表單中默認顯示發票憑證簿. 根據需求,可以設定開票方式為集中開票(一客戶一發票)或單獨開票(單獨發票).
訂單憑證簿看起來像訂單,它會自動將記錄于其中的內容自動地轉換到對應的訂單中.這種功能讓可以按各種方式對訂單進行分類,比如按部門,按銷售員或者按類別.一個銷售員可以使用自己的憑證簿從所有她負責的訂單中篩選出該憑證簿中的訂單以輕鬆了解對應訂單需要進行的工作.
提示:默認值
要在其自己的憑證簿中錄入所有的訂單,銷售人員可以使用創建訂單時設定的欄位默認值.
最后的出貨憑證簿.用於將每個項次過帳到一個出貨憑證簿.例如可以按出貨日期創建相應憑證簿(如星期一出貨,下午出貨)或這些憑證簿代表出貨車輛(如卡車1,卡車2)一天的出貨.
20.10.2 使用憑證簿
接下來會講解如何在實際工作中使用憑證簿來進行庫存管理工作.安裝銷售_憑證簿模塊后,請先看看夥伴清單.在每個夥伴的銷售與採購子頁面里有個特別的開票方式欄位
圖20.34:夥伴表單中的開票方式
可以在此為一個夥伴創建一個新的發票憑證簿.可以決定在憑證簿中生成發票之後是單獨開票還是合并一起開票.創建第二個發票憑證簿 月底發票 ,可將其分派給另一個夥伴.
圖20.35:定義一個發票憑證簿
請再為此兩個夥伴的一些訂單輸入一些數據.輸入完訂單數據后,夥伴表單中的開票方式欄位內容會自動帶到訂單中來.
請再來看看銷售訂單 歷史 子頁面中已創建的裝箱清單. .系統已自動顯示開票方式信息.請確認此清單中各個不同的訂單.
在每天下班前,主管開票的人可以按憑證簿顯示一份清單. 進到菜單 銷售->發票->發票行. 選擇發票憑證簿,這時系統會將所有待開票訂單在一個清單中顯示出來.可以點擊 生成發票按鈕(畫面上齒輪狀圖標)以自動執行開票動作.
提示:確認發票
默認情況下,生成的發票只是草稿狀態,以便在將發票發送給客戶前可以進行修改.當然也可以從清單中選擇所有發票并選擇 確認草稿發票 進行一次性確認.
在月底發票管理做的是同樣的工作,只不過是在月底發票憑證簿中罷了.
也可以錄入憑證簿以一次性確認或取消所有訂單.同樣也可以進行多個報價并將它們分派給一個憑證簿,再一次性確認或取消它們.
圖20.36 訂單憑證簿視圖
20.11 庫存管理的高級元素
在此部份我們講解以下庫存管理與控制細節
20.11.1 需求計算/排程
需求計算是指計算引擎根據為產品定義的規則對產品進行計畫,排定優先級以及啟動自動供應.
注:需求計算
需求計算常常被叫做排程
需求計算默認每天自動執行一次,也可以通過菜單 製造->排程->計算排程手動執行它. 需求計算利用在產品,供應商以及公司中定義的參數決定各種不同的產品訂單,出貨以及採購的優先順序.
20.11.2 及時生產
排程默認每天自動執行一次.應該將此執行安排在晚上很少有人使用系統的時候以避免排程運算影響系統的性能.可以通過菜單 管理->配置->排程->排程動作 設定排程的開始時間.選擇被稱作 運行MRP排程 的規則并修改其下次執行的日期與時間.有些公司希望不斷地對錄入的訂單進行計畫而不是等到下一天產生供應訂單.模塊MRP_及時生產就是做這個工作的.安裝好此模塊后,在每個需求(會產生生產或採購訂單)被確認后系統就會進行實時的計畫.
如果錄入了一個面向訂單生產產品的銷售訂單后,系統會立即產生一個對供應商的報價請求.
提示:自供應商出貨
Sale_supplier_direct_delivery(基於供應商直接出貨的銷售,有的系統也稱此為第三方交貨)模塊允許供應商直接交產品交給客戶.在撰寫本文時此模塊尚在addons_extra(外掛模塊:其它)中.產品遵循為其單獨配置的邏輯且只影響被標記為面向訂單生產的產品.
此模式不是任何時候都有實際意義.每個訂單會在被確認之時立即得以處理.因此如果一個訂單將在3個月后出貨,排程會在訂單被確認后為其在存貨中進行預留.這種情況下使相關產品對其它訂單可用應該更為合理.
如果一個採購訂單的發票控制被配置為 來自訂單,排程會立即創建對應的供應商詢價請求.考慮到提前期你可能更傾向于延後幾周以合并未來的訂單進行統一採購.
總結以上,我們可以看出及時生產模塊的一些副作用是
.訂單間的優先級管理得不好
.產生多餘的存貨(譯者注:此處不好理解, 根據上文,提前產生了需求?).
20.11.3 計畫
大部分的OPENERP單據可以在計畫視圖中進行變更.對出貨與收貨也一樣.在任何時候都可以將它們放到日曆視圖中以對出貨與收貨進行計畫.
圖20.37 計畫客戶產品出貨
裝箱單上的計畫日期被定義在每個庫存移動行上,如果有一個裝箱單包含許多不一定在同一天出貨的產品.裝箱單中最大與最小日期就對應于裝箱單的庫存移動行之最早與最晚日期
如果在日曆視圖上移動一個裝箱單,庫存移動單行中的計畫日期也會自動變更(移動).
20.11.4 管理部份交貨
部份交貨,有時也稱欠交訂單是由OPENERP自動產生的.當確認一個對客戶的出貨或來自供應商的收貨時,OPENERP會要求確認出貨或收貨數量.
如果不修改建議的數量,OPENERP會確認并完成出貨或收貨有關的訂單.如果修改數量,OPENERP會自動以剩下的數量生成第二張出貨或收貨單.第一張單會被確認,而第二張會處於等待出貨(或收貨)狀態.
圖20.38 出貨數量確認屏幕
在打開當前出貨清單中有個欠交訂單欄位,裏面記錄的是已出貨給客戶的前一張出貨單號, 每天都可以據此快速找出那些部份交貨訂單以便優先處理它們.
20.11.5 供應商產品收貨
OPENERP支持3種方式控制自供應商收貨之數據錄入
. 手工錄入
. 使用系統預先生成的收貨單
. 獨立于收貨單從所有待收產品進行選擇,
在”推動你的採購”章節有更細節的關於採購訂單配置如何影響收貨的內容.
20.11.6 收貨之手工數據錄入
請選擇菜單 倉庫->倉庫管理->進口貨物 點擊新增按鈕 就可以手工錄入收貨信息.
圖20.39:產品收貨之手工數據錄入
20.11.7 確認預生成收貨單
如果使用OPENERP中的採購訂單,在採購訂單確認時系統就會自動生成產品收貨單.而不再需要輸入任何資料,只要確認已訂數量與收貨數量是否一致即可.
通過菜單 倉庫->倉庫管理->進口貨運 會看到OPENERP生成的所有待收貨產品清單,使用恰當的過濾條件,利用按狀態分組等功能就可以找到在特定狀態下的各種待收貨單據.
圖20.40:待收貨清單
接下來可以使用供應商名稱或參考訂單號來定位具體的收貨單.選擇收貨單并確認數量.如果顯示的數量與控制表單中的不一樣,OPENERP會以剩餘數量自動生成另一張待處理的收貨.可暫時不用理會這張生成的收貨,或者如果知道供應商再也不會將短少的數量送貨了,就可以取消生成的收貨單.
20.11.8 通過選待收產品進行確認
上述方式對於收貨與原始訂單相符的情況特別適用.然而,如果供應商送貨時并不必然與訂單一致時,通過選擇產品而不是訂單來進行收貨顯然就容易多了.可通過菜單 倉庫->產品移動 ->接收產品 來手工創建一個新產品收貨.OPENERP會打開供應商的所有待收與已收產品清單,可以自動地添加部份或者全部的產品到收貨單中.可以基於狀態對待收產品進行過濾并進行確認.這種數據錄入方式特別適用于在同一時間針對多個訂單進行收貨.
20.11.9 產品路由
如果希望實現依據產品本身決定自供應商或公司倉庫至客戶的產品路由,應該安裝庫存_庫位模塊.
圖20.41:在產品表單中管理自一個庫位到另一個庫位的移動路徑
產品路由允許為每個產品單獨配置物流規則.比如,當一個特定的產品到達倉庫時,可以自動將其送至待驗(庫位).要實現此功能,必須在產品表單上配置相應規則,規則由以下欄位構成
.源庫位: 產品來自此庫位
.目標庫位: 產品被送達此庫位
.移動類別:自動,手動,自動但無附加步驟
.移動提前期
.操作名稱:一個用於由OPENERP自動生成移動單中自由定義的文本.
有以下兩種主要的物料流
.推式流
.拉式流
推式流特別適用于產品到達特定庫位后一定會立即或隔幾天后移動到另一個庫位的情況.標準的倉庫管理模塊已經支持在庫位上定義推式流,但不能為單個產品定義推式流.
與推式流不同,拉式流不處理產品移動,它處理的是供應訂單.被拉動的是一個需求,不是直接的產品.
以下將要講解的是在這些庫位間為產品定義的物料流
.一個租賃產品
.一個從中國採購,接下來通過港到港海運的產品
.一個進入為庫房前必須先待驗的產品
案例 1:一個租賃產品
一個租賃產品是指交貨給客戶后,一段時間之後需歸還的產品.當租賃產品出貨給客戶時,OPENERP會以租賃到期日為預計收貨日的一張新收貨單.因此當租賃到期時,只需要對系統內已產生待收產品清單進行確認即可.請按以下方式為產品配置一個規則
表20.11:租賃產品案例
欄位 值
源庫位
目標庫位
移動類別
提前期
操作 客戶
存貨
手動
15天
產品退回
將該產品出貨給客戶時,OPENERP會為產品歸還自動生成的個草稿狀態的收貨單. 此收貨單之到期日是15天之後.基於此系統可以實時地顯示預計存貨以及存貨趨勢圖.
案例 2: 管理海運進口
要管理產品通過海運,再經過海關環節的複雜物流,請為各個步驟建立對應的’供應商’庫位,然後創建庫位間移動規則以對應實際物流過程.
讓我們來拿一個從中國採購并最終進入在比利時布魯塞爾店鋪的案例來看.海運進口需大約7周,期間必須經歷以下步驟
.從供應商出貨至上海港: 2天
.從上海海運至安特卫普港:1個月
.安特卫普港海關:2周
.從安特卫普港通過卡車運至店鋪:3天
應該在每次產品移動時錄入相關單據以便及時知曉在某一時刻該產品處在什麽位置,以及預計什麽時候會到店鋪.要做到這些,請為這些中間步驟創建以下庫位
. 上海港
. 安特卫普港
. 安特卫普海關
最后,請在產品表單中創建以下規則,規則的意思是當採購產品時,產品不會直接進入店鋪,而是先到上海港.在此案例中我們將店鋪配置為可以接收所有產品稱為來料的庫位
表20.12 將產品自動移動到上海港的規則
欄位 值
源庫位
目標庫位
移動類別
提前期
操作 來料
上海港
自動且無附加步驟
2天
送至上海港
基於上述規則,OPENERP會將本來的普通收貨(收貨至來料庫位)變更為由供應商運送至外部港口,因為如果人工進行此步操作,工作量會太大,所以此處將該移動設定為自動進行的.
接下來,還要在產品表單上創建規則以便將其從一個庫位移到另一個庫位
表20.13 將產品手動從上海港移動到安特卫普港
欄位 值
源庫位
目標庫位
移動類別
提前期
操作 上海港
安特衛普港
手動
30天
海運至安特衛普港
表20.14 將產品手動從安特衛普港移至安特衛普海關
欄位 值
源庫位
目標庫位
移動類別
提前期
操作 安特衛普港
安特衛普海關
手動
15天
安特衛普海關
表20.15手動將產品從安特衛普海關移動至存貨
欄位 值
源庫位
目標庫位
移動類別
提前期
操作 安特衛普海關
存貨
手動
3天
卡車運送至庫房
上述規則配置好后,OPENERP就會自動為產品從一個庫位移動至另一個庫位生成所有必要的單據.系統會根據規則里定義的順序將這些單據先后關聯起來.當公司收到產品抵達某個港口或海關的通知時,就可以確認相關的產品移動.這樣就可以用每個庫位來跟蹤如下的產品存貨信息了
.特定產品已到哪兒了,
.待清關的產品數量,
.產品到店鋪還需多長時間,
.在各庫位之存貨價值
案例 2: 待驗
可以配置系統以便在產品到達公司時將產品自動送達待檢區. 要實現此功能,只需為產品配置一個從供應商接收產品時將產品送至待驗而不是來料庫位的規則.
表20.16 手動將產品由來料庫位移動至待驗庫位的規則
欄位 值
源庫位
目標庫位
移動類別
提前期
操作 來料
待驗
手動
0天
待驗
當收到此產品時,OPENERP會自動產生一張待手工確認的由來料庫位到待驗庫位的內部移動單.
(庫存管理 部份 完) -
兄弟牛在持续更新,不断改进,赞一个
目前发现以下问题,供参考
[quote]庫位 產品
物理庫位->OPENERP->存貨 -20 輛自行車
夥伴庫位->客戶->歐洲客戶 +20 輛自行車 [/quote]
配合上下文应该是2辆
[quote]定義一個新產品時,以下三個欄位是庫存管理中是很重要的
產品類別
供應方式
供應方式[/quote]
在界面翻译中我们将Supply Method翻译成“供应方式”,"Procurement Method"翻译成"获取方式“,虽然不是很准确,但至少能区分
另外,Stock Location翻译成“库位”,会引起歧义,因为Stock Location并不一与仓库有关,个人觉得“存货地点”会比较好一点 -
Procurement 在某些情况下理解为“补货”是可以的,但不总是这样的情况。事实上,看一下代码就会知道,每一个销售订单的每一条订单行都会生成生成对应的"Procurement Order", 无论是有货,没货。Procurement Order再经过mrp 运算才会生成生成相应的,采购订单,生产单,或任务单等。
我个人建议将Procurement Order翻译成“需求单”, 在Open ERP 还叫 Tiny ERP的时候,我就是这么翻译的 ; ) -
[quote author=若水 link=topic=2648.msg25728#msg25728 date=1386552486]
很详细,很受用
[/quote]
竟然被你翻出来了,我也要参考参考。。 -
jeff 给的简体链接都失效了,虽然是6.1的 文档,不过看看还是不错的(虽然我看着看着就有了睡意),
我顺手把文章弄成简体中文了。
方便大家查阅
修订版1 重大修订说明
1. 劳尔马克思->化学家拉瓦锡名言
2. 尽量去掉了多余的“你”,”你的“
3. 统一了专门的术语“supplier order"=》采购订单,customer order=》销售订单,goods=>产品,quality control->待验,procurement->供应(本意为获取,换个角度就是供应,或许还可以叫做购置)
4. 采用了一些目前界面上的翻译得比较好的术语,日记帐->凭证簿,乘数->倍数(最小库存规则里面)
5.修正了一些不恰当的翻译,如为简化起见->举个简单的例子
6.还有一些与目前界面上的不太一样,位置->库位,积压订单->欠交订单,未来库存->预期库存。
管理仓库, 搞定制造
本书此部份著重关注实际物料-库存处理以及透过组装及制造对物料进行转换.
这里的存货是指产品规格的实体表现形式,而不仅仅是产品数据清单.存货需要被存储,在各库位之间移动,会被以套或个的方式进行追踪.它们有尺寸,重量以及成本属性.Open ERP 使用了一种有效且独特的方式进行存货管理.
制造是指将物料以及组件,可能还有一些可计量的资源转换成其它产品和服务,为公司增加价值.
仓库
Open ERP的存货管理看似非常简单,实则很灵活且功能全面. 它基于带给会计革命性变化的复式记帐原理.系统的特性可引用著名化学家拉瓦锡的名言” 什么也没有失去,一切都改变了”, 或者”一切皆为移动” 来阐释 .在Open ERP中不会谈论突然不见,产品消耗或遗失:而是说库存从一个地方移动到了另一个地方.
正如会计记帐,OPENERP同时管理主要业务活动及其对 应相关方,如从供应商处收货,发货给客户,来自存货的收益与损失以及原物料的消耗.库存移动始终是指库存由一个库位移动到另一个库位.为了确保每次库存移 动都有一个对应相关方,软件支持以下不同类别的库存位置(库位)
物理存货库位
伙伴库位
虚拟库位如生产及盘点
物理库位代表仓库及其层次结构.实际上就是指通常由传统库存管理系统管理的库位.
伙伴库位代表客户和供应商的存货.在与这些伙伴们进行对帐时,这些库位就扮演了第三方科目的角色.从供应商收货在系统内就被表示为商品由伙伴库位移动到了公司的物理库位. 所以会看到供应商库位通常都会显示负库存而客户库位通常显示为正库存(数量).
与生产对应的虚拟库位通常使用在制造流程中.制造的特性是消耗原材料,产出成品.虚拟库位就用作上述两个移动的对应相关方.
盘点库位是公司对存货进行收益与损失相关操作(译者注:如盘点,存货价值重估)的对应相关方.
下图是系统初始安装后的库位层次结构图
图20.1 OPENERP 安装后的初始库位结构
注:结构化库位
在OPENERP中,库位是结构化的.可以将库位作成基于父子关係的树状结构.这样的组织方式可以对仓库各种库存移动及仓库组织架构进行各种明细层级的分析.
技巧:库位与仓库
在OPENERP中仓库代表物理存货的实际地理位置,可以将仓库组织成由多层级库位组成.库位是用来管理各种类别的存货地点,比如说客户和生产库位.
本章需要一个全新安装且带演示数据的数据库,并选装了仓库管理及其依赖模块,不需要配置特别的科目表.
20.1 理解复式记帐的存货管理
为了讲解存货管理的这个概念,我们先来看看以下业务会产生什么样的库存移动,
从供应商处接收产品
出货给客户
材料遗失存货处理
制造
库位结构基于系统初始安装后的库位层次结构图,假定还没有任何存货,也没有尚在进行中或计划了的库存相关操作.
如果从供应商那裡定购了30辆自行车,在接收了产品后,OPENERP会做以下操作
表20.1 自供应商处收货后的库存移动操作
库位 产品
伙伴库位 >供应商 -30 自行车
物理库位->OPENERP>存货 +30 自行车
如果将2辆自行车出货给欧洲的客户,对应出货将有以下交易资料
表20.2 出货给欧洲客户的库存移动
库位 产品
物理库位->OPENERP->存货 -2 辆自行车
伙伴库位->客户->欧洲客户 +2 辆自行车
当以上两个作业完成后,可以在每个库位看到以下库存数
表20.3 存货状态
库位 产品
伙伴库位->供应商 -30 自行车
物理库位->OPENERP->存货 +28自行车
伙伴库位->客户->欧洲客户 +2 自行车
至此,可以看到一个产品在所有库位中的总库存始终为0. 相当于会计帐中的所有借方与所有贷方相等(译者注:会计记帐原则有借必有货,借贷必相等).
伙 伴库位(客户和供应商)并不归属于公司库位层级结构中,因此在此类库位中的存货也就不是公司自有存货的一部份.因此如果只看公司内部的物理库位,那两辆自 行车就不再属于公司了.虽然它们已经不是公司物理存货,而是存在于客户库位里,这样的信息对于进行详细的库存管理分析是十分有用的.
提示: 对于寄售库存,需要定义对应的客户或供应商寄售库位,这些库位属于自有存货的一部份
注:科目
在管理存货时,往往很难避免在软件中的存货数量与仓库中实际的存货数量之间不出现偏差.库存管理使用復式记帐法使得发现差错的机会增加了一倍.比如说如果忘记了在某库位中的两个物料,此种差错会容易地在该库位相关的对方库位中反映出来.
在 会计帐中,从一个科目及其相关对方科目的异常现象中可以很容易找出错帐,比方说如果银行户头(科目)钱少了很可能就是有人忘了将客户付款事项入帐到银行科 目了. 与此类似, 不论是会计帐还是OPENERP的库存管理都遵循所有借方与所有贷方相等(译者注:有借必有货,借贷必相等)的原则.
在会计 帐中,所有凭证都会产生会计分录,这些分录就是会计管理的基础.如果创建发票或对帐单,这些业务活动的结果就是产生对相关科目的会计分录.在 OPENERP中的库存管理也类似.所有库存业务活动均作为简单的库存移动进行记录.不管是对物料进行包装,或制造,抑或是进行库存盘点,每次都是在进行 库存移动.
前文中已经看到了一个相对简单的产品收货与出货的案例,但是有些库存业务并不那么显而易见-比如说存货盘点.存货盘点实质上就是比较系 统内记录的存货数量与实物存货真实数量差异的业务活动.在OPENERP中,基于其復式记帐原则,可以使用库存移动来记录此类存货盘点业务.这样的记帐方 式有助管理库存可追溯性.假设实物存货有26辆自行车,但是在OPENERP系统内记录的是28辆,那么需要将系统内的存货数量减少为26,这个被减少的 2辆将被视为产品减损损失,对系统数据的更正动作会产生以下系统记录
表20.4 调整存货的库存操作
库位 产品
物理库位->OPENERP->存货 - 2 自行车
虚拟库位->存货损失 +2 自行车
与此相关的产品库存变更以下
表20.5 业务完成后的实际及相关方存货
库位 产品
伙伴库位->供应商 -30 自行车
物理库位->OPENERP->存货 +26 自行车
伙伴库位->客户->欧洲客户 +2 自行车
虚拟库位->存货损失 +2 自行车
此案例展示了复式记帐库存管理模式在绩效分析方面的巨大优势.几个月以后,可以对库位 虚拟库位->存货损失 作一次存货估价以了解在特定的期间内公司总的存货损失情况.
现 在让我们来看看以下制造业务在OPENERP中是如何组织的.要生产1辆自行车,需要两个轮子与一个车架.这也意味著有两个轮子与一个车架会从实际存货中 被消耗掉,一辆自行车会被增加到存货中.消耗与生产以产品移入移出物理库位的形式在系统内体现.与此相关的存货业务如下:
表20.6 制造后库存状态
库位 产品 步骤
虚拟库位->生产 +2轮子 原材料消耗
物理库位->OPENERP->存货 -2 轮子 原材料消耗
虚拟库位->生产 +1 车架 原材料消耗
物理库位->OPENERP->存货 -1 车架 原材料消耗
虚拟库位->生产 -1 自行车 成品生产
物理库位->OPENERP->存货 +1 自行车 成品生产
至此已得到从消耗原材料到生产出成品的结果.
注:评估已创造价值
或许我们已注意到复式记帐的另一个效用:如果对虚拟库位->生产 进行一次存货估价,可以得到公司的已创造价值(是一个负数).对任一指定库位进行存货评估的计算公式:在库产品数量成本.在本案例中原材料价值要从成品价值中扣减.
20.2 从供应商到客户
接下来,我们将通过一个比较务实的案例来更进一步讲解库存管理操作.主要包括如何:
定义一个新产品
设置初始存货
从供应商收货
出货给客户
分析存货状态
20.2.1 定义一个新产品
首先,让我们来定义以下产品
表 20.7 产品定义
栏位 值
名称 中央供热类型1
编码 CCT1
产品类型 库存产品
供应方式 购买
使用菜单 仓库->产品->产品, 然后点击新增 来定义一个新产品
图 20.2:定义一个新产品
定义一个新产品时,以下三个栏位是库存管理中是很重要的
产品类别
供应方式
供应方式
20.2 产品类别
产品类别用以表明产品是否需要作库存管理以及OPENERP是否管理如何供应它. 三种产品类别如下
库存产品:此类产品需做存货管理,并且其补货或多或少是依据定义的规则由系统自动完成的.如:自行车,电脑或者中央供热系统
消耗品:这种产品需要进行库存处理,可以对其进行收货,出货甚至生产.然而其存货水平(量)不是由系统管理的.OPENERP假定在任何时候都有此种产品足够的存货,因此它不需要自动补货.如螺钉.
服务:它不会出现在各种库存操作中.如諮询服务.
供应类别-面向库存生产和面向订单生产
供应类别决定了产品如何补货
面向库存生产:从可用库存中供货给客户.在存货数量太低时补充一定数量的产品(根据最小库存规则).如:传统的分销商
面向订单生产:当销售订单确认后,通过采购或制造此订单需要的产品.从一段时间来看,因为只是完全依订单需求量补充存货(译者注:后续订单会将补充的存货出货给客户),销售订单”面向订单生产”不会变更库存量.如按需组装的电脑
在大多数行业里面,对各种不同的最终产品及中间半成品是混合在使用以上两种模式.产品表单上显示的供应类别只是提供给订单一个默认值,销售人员可以依据实际状况为订单产品选择合适的供应类别.
图 面向库存生产产品之库存变化 和 面向订单生产产品之库存变化 分别展示了一个面向库存生产和一个面向订单生产产品之库存变化情况.这两个图截取自OPENERP 产品表单中可的存货水平预测报表.
图20.3: 面向库存生产产品之库存变化
图20.4: 面向订单生产产品之库存变化
注:物流方式
面向库存生产通常适用于大量且需求是季节性的或者很容易预测.面向订单生产则适用于产品是单独计量或非常昂贵或只需要很短时间就可以补货.
20.2.4 供应方式
OPENERP支持以下两种供应方式
生产: 产品是由内部资源制造或服务是由内部资源提供的
购买: 产品是由供应商处习来的
这些都只是系统进行自动补货时使用的默认设定.同一个产品既可以内部制造或可以从供应商处购买.
这三个栏位(供应方式,供应方式,产品类别)决定了产品需求处理过程中系统的行为.基于此三个栏位的设定系统会自动生成不同的单据来满足一个订单,要么是向供应商发出一份询价单或开出一张制造工单.
OPENERP可以同时管理库存产品和服务.对于在面向订单方式中自供应商处购买的服务,系统会生成一个对该供应商的外包订单.
图 基于产品设定的自动供应工作流 说明了自动供应的各种不同情况.
图 20.5基于产品设定的自动供应工作流
下表展示了基于产品设定的自动供应工作流各种可能的情况
表20.8 面向库存生产(MTS)与面向订单生产(MTO)之供应方式对比
供应方式 生产 购买
MTS 等待直到库存不够 等待直到库存不够
MTO 生产工单 采购订单
表20.9 供应方式对使用服务的影响
供应方式 生产 购习
MTS / /
MTO 创建任务 外包订单
在本章中你将进一步学习到更多与供应有关的自动化管理流程.
20.2.5 计量单位
OPENERP支持很多计量单位.同一产品的数量可用很多不同的计量单位表示.例如可以用顿为单位购买粮食,而以公斤为单位进行出售.只是要确保所有这些单位均属于相同的单位类别.
注:单位类别
相同类别的所有单位之间可以相互转换.
下表列出了一些计量单位及其所属类别.只要属于同一单位类别,不同计量单位之间使用系数进行转换.
表20.10 单位的例子
单位 类别 比率 单位类型
Kg
克
顿
小时
天
半天
项
100项 重量
重量
重量
工作时间
工作时间
工作时间
单位
单位 1
1000
1000
8
1
4
1
0.01 参考
小
大
小
参考
小
基于上表,可以得出 1公斤 = 1000克 = 0.001 顿. 以重量为单位类别的产品可以用公斤,顿或克表示,但不可以用小时或个表示.
使用菜单 仓库->设定->产品->计量单位->计量单位 来定义一个新的计量单位
在计量单位的定义中,可以定义圆整精度系数,此系数定义金额如何在转换后被取整. 圆整系数1表示圆整到1个单位,0.01表示圆整到1%.
注:第二单位
OPENERP支持双单位.使用此功能后,整个库存管理系统使用双单位记帐,两个单位之间没有实质的关联.
此功能在农产-食品行业特别有用,比如,用个出售汉堡,用公斤来开票收款.当然在开票给客户之前需要称重.
要啟用双单位管理,请将用户组 可用性/产品UoS视图 分派给用户.
在此情况下,同一产品可以同时使用分属不同单位类别的单位表示,这样就可以区分存货计量单位(个)和发票或销售计量单位(公斤).
在产品表单上可以为销售与库存管理设定一个计量单位,为采购设定另一个计量单位.
这些单位都被赋予给定的标题.对产品的每个操作中可以使用其它已定义在相同单位类别里的计量单位,如果选择其它计量单位,OPENERP会自动进行价格与数量换算.
因此如果有430公斤胡萝卜,每公司5.3欧元,当以顿为单位出售时,OPENERP会自动将换算为0.43顿,5300欧元每顿.如果设定的圆整系数是0.1顿,那么OPENERP会显示只剩下0.4顿了.
20.3 存货
修改版续-2
--待验
--售后服务
--供应商退货
.通过为租赁产品自动生成退货移动以协助租赁管理.
此模块安装后,会在产品表单上出现一个额外的物料流子页面.在此可以添加推式与拉式流规格(规则).
20.5.1 推式流
推式流特别适用于当特定产品到达一个指定库位后接下来一定会移动到另一个库位,可能有几天的延后.
注:核心的仓库模块功能已支持库位级的推式流,但不能在产品层级定义推式流.
推式流定义哪个库位与另一个库位关联以及相关参数.一旦特定数量的产品移动到源库位,就会根据流的定义(目标库位,延迟,移动类别,凭证簿等)自动触发一个预期的库位移动.取决于相关参数,新的移动可能被自动处理,或者需人工确认.
假定当产品CPU3进入存货库位,它首先要被称动到待验库位进行品质检查.
让我们在系统内通过菜单 仓库->产品->产品 来看看CPU3 这个产品
要让OPENERP完成上述业务,配置推式流如下
.操作:收货到待验(库位)
.源库位:存货
.目标库位:待验
.自动移动:自动但无附加步骤
.延后(天):1
.货运类别:取得商品
图20.19:产品CPU3的推式流定义(规格)
推式流关係到如何生成库存移动以增加或减少存货.
20.5.2 拉式流
拉式流与推式流有些不同,拉式流不是处理产品的移动,而是处理供应订单.被拉动的是需求而不是产品.
便利店的产品由其每公司负责供应就是一个经典的拉式流的案例.
[客户]<-A-[便利店]<-B-[母公司]-C-[供应商]
当 一个新的供应订单(A, 比如说来自于对一个销售订单的确认)到达便利店,它将其转换为另一个向其母公司的供应(B, 通过一个’移动’类别的推式流),当母公司处理供应订单B时,如果已无存货,就会再转换成对供应商的采购订单(C,‘采购类别的推式流).最终的结果是供 应订单,需求,从客户一路被推动到了供应商.
从技术上来讲,拉式流在处理供应订单时可以因为同时考虑考虑产品以及库位拥有该产品需求的库位而有所不同(供应订单的目标库位)
要讲解产品CPU1的拉式流之前,我们先来通过菜单仓库->自动供应->最小库存规则 为CPU1配置最小库存规则,
对于公司 OPENERP
.最小数量:10
.最大数量:50
对于公司商店1:
.最小数量:10
.最大数量:20
为了配置拉式流, 我们通过菜单 仓库->产品->产品 来看看产品CPU1,
图20.20:产品CPU1的拉式流规格
产品CPU1有两个拉式流规格
规格1:
.名称:自仓库收货
.目标库位:商店1
.供应类别:移动
.公司:商店1
源库位:内部运输
伙伴地址:OPENERP
货运类别:取得商品
供应类别:面向订单生产
规格2:
.名称:出货商店
.目标库位:内部运输
.供应类别:移动
.公司:OPENERP
.源库位:存货
.伙伴地址:Fabien
.货运类别:发送商品
.供应类别:面向库存生产
现在我们来从商店1出售1 个CPU1,再来使用菜单仓库-排程序器->计算排程 运行排程,最后使用菜单 仓库->追溯->库存移动 来查看产品CPU1的库存移动.
图20.21:与拉式流相关的产品CPU1的库存移动
这些移动可被解读为
[客户]<-[商店1]-<-内部货运<-存货<-[OPENERP]
当商店1卖了1 个CPU1给客户,其存货降至10个,根据最小库存规则,系统自动生成一个需要21个CPU1的供应订单,根据源库位与目标库位的内部配置将会有21个CPU1会从公司OPENERP移动到商店1.
拉式流关係到如何运行供应流程以找到产品来增加或减少存货.
20.6 进口与出口
有时管理外国公司的进出口会很复杂.在出口港与目的地公司之间,产品可能在海上,在无数转运阶段及海关停留几个星期,有效地管理此类出货的以下方面至关重要.
.知道产品在哪儿
.知道产品何时会到达其目的地
.知道在途价值
.跟进不同阶段的状态
OPENERP中的库链让可以很优雅地对此进行管理,可以使用如下的库位结构
.供应商:
-欧洲供应商
-中国供应商
.在途
-上海港
-太平洋
-旧金山港
-旧金山海关
20.6.1 存货
在途库位之间利用手工确认进行彼此间关联,内部库存移动是在到达每个港口与海关时被确认的.OPENERP会自动准备好所有这些关联的移动
注:Intrastat
进行进出口业务的公司需要安装 report_intrastat模块,此模块可以提供一些必须的产品出口申报报表
可以使用不同库位间的提前期来比较真正的延迟. OPENERP会基于提前期与存货预测进行计算以估计产品的到达时间.因此可以做到尽可能精准地响应客户的需求.
也可以基于选定库位的配置对在途产品进行存货估价.
20.6.2 租赁库位
在OPENERP中可以使用基于库位的系统很轻松地管理租赁库位.使用存货_库位模块,可以为租赁物品设定一个租期到期后的归还日期,
系统会实时地维护每天的实际与预期存货.OPENERP会在特定日期之后自动建议
修改版-续3
不同的操作,比如收货与出货,这极大地简化了数据录入的工作量.
可以在客户库位与存货库位中看到对应的产品清单.这些待收货清单是由OPENERP基于库链自动生成.
如果希望将产品(PC3)出租给客户(axelor)30天.需要两次库存移动来管理此业务.
1. 产品从存货库位(公司的库位)发出,到 axelor-租赁库位(客户库位)
2. 30天后产品将自axelor-租赁库位(客户库位)归还到存货库位(公司库位)
要通过库链管理租赁产品,请通过菜单 仓库-配置-仓库管理-库位 如下图一样配置一个租赁库位(axelor-租赁库位)
图20.22 配置一个租赁库位 axelor-租赁库位
使用菜单 仓库->追溯->库存移动,可以创建一个租赁产品(PC3)从存货(库位)到客户库位(axelor-租赁库位)的库存移动记录.
图20.23:将产品PC3送至客户库位的库存移动记录
在之前的移动单上通过点击 立即处理 按钮确认后, OPENERP会在适当的计划日期之后自动生成从客户库位移动至存货库位移动单.
特定的产品之内部存货自动移动到待验库位也是相同的逻辑.
20.6.3 寄售产品
库链原理也适用于管理寄售产品.可以指定特定产品在出货给客户多少天之后需退回来.
产品出货后,OPENERP会自动为该寄售产品产生收货单(退回来).很明显指定的日期只是大概估计的,但是使用它能够对产品退回进行预测.
20.7 仓库
仓库是指可以由此向客户出货以及接收原物料的物理库位.当向供应商购买产品时,需要考虑此采购活动需要使用的仓库.最终用户可以选择实际的仓库而不是从一个库位清单中进行选择.
使用菜单 仓库->配置->仓库管理->仓库,然后点击新增来配置一个新仓库
定义一个仓库时,可设定3个关联库位
.存货库位栏位是指从此处有可用库存,可以直接向客户出货,可用的库存对应该库位以及其子库位.
.收货库位是指从供应商处接收的产品收到此处.此库位可与存货库位相同,比如,希望接收的原材料都要待验
.出货库位:此库位作为一个缓冲区存放所有已被分拣但尚未发运给客户的物品强烈建议不要将此库位放在存货库位结构之下,相反要将其置于一个较高层级或同一级.
图20.24:仓库参数
可以为仓库设定一个地址.理想的情况下此地址就是公司的地址.仓库被定义好以后,它就可以用于
.最小库存规则
.采购订单
.销售订单(销售点会关联一个仓库)
20.7.1 自动供应
OPENERP可以进行多种方式的产品自动供应
.针对面向订单生产产品的工作流
.针对面向库存生产产品之最小库存规则
.针对面向库存生产产品之主生产计划排程
以下详细说明最后两种方式
20.7.2 最小库存规则
可以使用最小库存规则实现自动补货建议,为此,请使用菜单 仓库->自动供应->最小库存规则.
规则如下:如果指定库位的预期存货低于规则中设定的最小存货量,系统就自动建议一个供应单以增加预期存货至规则中设定的最大存货量.
图20.25:最小库存规则清单
提示:冲突处理
系 统中会有些看似不需要的草稿状态的生产或供应订单.如果系统设置得很糟糕就会出现此类情况(比如说,忘了为一个产品设定供应商).要检查这种异常,请使用 菜单 仓库->排程->供应异常 看看处于异常状态的供应清单.在制造章节有有关于处理此类异常的更详细的说明.
在此我们强调的是规则是基于预期存货而不仅是实际数量.它考虑了对未来订单与收货的计算.
来看看以下案例:
.在库产品:15
.已订未出(货)产品:5
.在制(造)产品:2
规则为:
.最小库存:13
.最大库存:25
一旦恰当地配置好了上述规则,采购经理只需要使用菜单 采购->采购管理->请求报价 看看订单清单以与供应商进行确认.
注:请注意供应并不意味著一定要从供应商处采购,如果一个产品的供应方式是生产,则排程将生成一个制造订单而不采购订单.
也可以在最小库存规则中设定倍数,如果设置的倍数是3,系统会建议供应15(53)个而不是实际需要的13(25-[15+2-5])个.在此情况下,系统会自动将数量圆整到了上一个整数.
在最小库存规则里,可以为一个仓库指定一个系统默认的库位,可以在排程结束后可以按库位而不是仓库修改此默认库位.
修改版-续4
20.8 排程
主生产计划,有时也叫MPS(Master Production Schedule主生产排程),用来对收到及发出物料产生预测.
注:MPS,供应与生产
OPENERP区分生产,采购与供应.
生产是指制造,采购是指从另一方取得货物,而供应则包括以上两者.因此最好是将MPS叫做Master Procurement Schedule主供应排程,OPENERP就是这样做的.
提示:产品交易
也称生产计划.此工具对大生产性交易产品也非常有用.也可以用它进行采购和生产相关的库存管理.
要使用生产计划功能,必须安装 库存_计划模块
20.8.1 销售预测
要进行生产计划,首先要定义库存管理的周期,有些公司作日计划,有些则是周或月计划.
提示:库存管理间隔
在生产计划中管理库存的间隔时间之选择取决于需多长时间完成一个生产循环.一般会有日,周,月等情况.如果需要几天时间组装产品,极有可能定义一个周计划.如果一次制造循环要花几个月,那么就可以定一个月计划.
进到菜单 销售->配置->库存与销售期间->库存与销售期间.接下来会跳出一个窗口允许自动定义用于库存管理的下个期间.
图20.26:定义库存管理期间
上述定义之后销售人员可以使用菜单 销售->销售预测->销售预测 按产品与期间录入销售预测数据.预测可以是数量也可以是金额.对于金额预测OPENERP会基于预计金额自动计算出相应的数量.当然在保存之前可以根据需要对数量进行手工调整.
图20.27:维护销售预测以帮助创建主生产计划
20.8.2 生产计划
接下来物流经理要计划每期的收货(制造与或采购)与出库(消耗或出货). 菜单路径为 仓库->库存计划->主供应排程
OPENERP会为每个期间之产品提供以下信息
.预估期末存货. 计算逻辑为上期末存货(译者注)-预计出库+预计入库
.已结案记录: 来自生产与已确认采购
.本期预计入库:计算公式:计划入库-截止存货
.计划入库: 由物流经理手工录入
.已结案出库. 包括制造耗用以及出货给客户
.出库预测.计算公式:计划出库- 截止存货
.计划出库: 由物流经理手工录入
.销售预测: 代表销售人员所作销售预测的汇总
图20.28:主生产排程
物流经理可以基于生产计划中的入库及出库预测来分析其相关产品未来库存的影响.生产计划检查并确保特定产品的库存不会低于设定的库存水平.
也可以开啟以前期间的生产计划.这种情况下OPENERP是在预估报表中按期间显示实际库存移动明细.
如果尚未为产品定义自动供应规则,可以在任意时间基于生产计划中的预测啟动供应. 与此相关的操作方法是在主供应排程画面点击 未达入库供应. OPENERP按预测的金额对供应进行计划.
20.9 管理批次与可追溯性
OPENERP的复式记帐使可以作很高级的追溯性分析.所有的操作都被以库存移动的形式记录下来了,因此可以很容易地找出库存移动中产生偏差的原因.
注:向上及向下追溯
向上追溯是指由从供应商处接收的原材料循移动链直至产成品出货给客户.(请注意此处的名称有点易混淆-有时这种情况也被认为是向下追溯. 可以将此理解为什么地地方使用了它- 被使用了)
向下追溯以另外一个方向跟踪产品,是从客户到各个不同的原材料供应商.( 请注意此处的名称有点易混淆-有时这种情况也被认为是向上追溯. 可以将此理解为什么地地方供应了它)
20.9.1 库存移动
使用菜单 仓库->追溯->库存移动 可以追踪一个产品或特定库位的过去的库存交易.可以使用各种栏位进行过滤以找出产品相关的订单,生产活动或源库位及目标库位.
图20.29:库存移动历史
每次库存移动均有特定的状态,各种可能的状态如下
.草稿:此类移动在系统内还未有实际作用.此交易尚未被确认
.已确认:移动即将完成,因此它会被计算到预期存货里,因为已为移动相关产品作了预留,你不知道它是否会被正常处理完成.(译者注,此处有点绕)
.已验证:此移动即将完成且此交易必须的原物料也已被预留.
.已完成:库存移动已完成且被作为实际存货的一部份
.等待:在来自订单的情况下,此状态意味著库存移动因等待其它移动的结束被暂停.
.已取消:库存移动没有执行,因此实际库存与预期库存都不会考虑它.
出货单,产品收货及内部分拣清单都只是对有相类似属性库存移动进行分组的单据,也可以使用菜单 仓库->追溯->包装 来看看这些单据的历史记录.
20.9.2 批号
OPENERP也可以管理批号,有以下两类批号
.生产批次(批号)适用于离开相同生产区域的独特产品或由相同产品组装而成的组装件.它们通常由贴在产品上的条形码进行标识,批号可以是供应商号码或公司号码.
.追踪号:是逻辑批次用以识别包含一组产品的容器.相关的实际应用案例,如放有许多不同产品的栈板上的栈板号.
这些批号可用于所有库存移动,特别是货运入库,内部移动以及出货.
图20.30:输入产品收货行
在操作中输入批号时,要么使用现有批号或创建一个新批号.生产批号(批号)用于单个产品.追踪号可以不同产品上使用多次,因此可以在一个栈板上或盒子里混合不同的产品.
注:简化视图
在简化视图模式下,看不到追踪号:该栏位被隐藏了.要使用扩展视图模式,请将 可用性-扩展视图 用户组分派给当前用户.
也可以在产品表单上指定哪些操作中批号是必输的.这样就可以强制用户为制造操作,收货以及出货包装输入批号了.
不 需要为一组不同的产品一个一个地编唯一的批号.只需要选定包含许多新产品的移动单,然后点击产品批号拆分按钮.接下来给定一个前缀(如果需 要),OPENERP会啟动一个嚮导在前缀基础上添加一个序列号生成一个完整的批号.此序列号可能就对应于一组预先打印好已贴在每个产品上的条形码.
图20.31:批号拆分
20.9.3 追溯
如果如上所述为库存移动输入了批号,就可以针对特定的批号作追溯了. 相关菜单为 仓库->追溯->生产批号,或 仓库->追溯->包装
提示:产品捷径
从产品表单,右边的工具条提供了以下有用信息
. 最小库存规则
. 各库位存货
. 产品销售
. 物料清单
可以使用批号,日期或产品等过滤条件搜寻一个特定的批号.一旦看到此批号的表单, 在表单上可执行以下动作
. 向上追溯:从供应商直至客户
. 向下追溯:从客户到供应商
. 在所有物理及虚拟库位中的存货
图20.32:面向订单生产之向上追溯
图20.33:面向库存生产之向下追溯
20.10 按凭证簿管理
可以像按凭证簿管理会计一样通过凭证簿来管理库存.此方式最大的优势是可以用不同的方式定义凭证簿以满足公司的需求.
例如,一个大公司可能希望按部门或仓库组织其出货.那么可以为每个部门创建一个凭证簿和分派一名经理.对应于其在公司内的职务不同的用户可以使用相应的凭证簿.这种方式可以更好地组织信息.
有大量运输业务的公司可以按运货车辆组织其凭证簿.那么不同的运输订单就可以被分派给代表运货车辆的凭证簿.当车辆离开公司时,就可以将此凭证簿中所有的运单一并进行确认.
20.10.1 各种凭证簿
激活销售管理的发票凭证簿重配置选项或安装销售_凭证簿模块就可以使用各种不同的凭证簿了.在OPENERP中有3个与此有关的新概念
.发票凭证簿
.订单凭证簿
.出货凭证簿
发 票凭证簿(销售->配置->销售->发票类别)用于分派采购订单和/或出货订单给指定的发票凭证簿.可以对凭证簿中的任何事项进行一次 性开票并且可以按凭证簿控制开票金额.例如可以创建如下凭证簿:每日发票,周末发票和每月发票.也可以在伙伴表单中默认显示发票凭证簿. 根据需求,可以设定开票方式为集中开票(一客户一发票)或单独开票(单独发票).
订单凭证簿看起来像订单,它会自动将记录于其中的内容自动地转换到对应的订单中.这种功能让可以按各种方式对订单进行分类,比如按部门,按销售员或者按类别.一个销售员可以使用自己的凭证簿从所有她负责的订单中筛选出该凭证簿中的订单以轻松了解对应订单需要进行的工作.
提示:默认值
要在其自己的凭证簿中录入所有的订单,销售人员可以使用创建订单时设定的栏位默认值.
最后的出货凭证簿.用于将每个项次过帐到一个出货凭证簿.例如可以按出货日期创建相应凭证簿(如星期一出货,下午出货)或这些凭证簿代表出货车辆(如卡车1,卡车2)一天的出货.
20.10.2 使用凭证簿
接下来会讲解如何在实际工作中使用凭证簿来进行库存管理工作.安装销售_凭证簿模块后,请先看看伙伴清单.在每个伙伴的销售与采购子页面里有个特别的开票方式栏位
图20.34:伙伴表单中的开票方式
可以在此为一个伙伴创建一个新的发票凭证簿.可以决定在凭证簿中生成发票之后是单独开票还是合并一起开票.创建第二个发票凭证簿 月底发票 ,可将其分派给另一个伙伴.
图20.35:定义一个发票凭证簿
请再为此两个伙伴的一些订单输入一些数据.输入完订单数据后,伙伴表单中的开票方式栏位内容会自动带到订单中来.
请再来看看销售订单 历史 子页面中已创建的装箱清单. .系统已自动显示开票方式信息.请确认此清单中各个不同的订单.
在每天下班前,主管开票的人可以按凭证簿显示一份清单. 进到菜单 销售->发票->发票行. 选择发票凭证簿,这时系统会将所有待开票订单在一个清单中显示出来.可以点击 生成发票按钮(画面上齿轮状图标)以自动执行开票动作.
提示:确认发票
默认情况下,生成的发票只是草稿状态,以便在将发票发送给客户前可以进行修改.当然也可以从清单中选择所有发票并选择 确认草稿发票 进行一次性确认.
在月底发票管理做的是同样的工作,只不过是在月底发票凭证簿中罢了.
也可以录入凭证簿以一次性确认或取消所有订单.同样也可以进行多个报价并将它们分派给一个凭证簿,再一次性确认或取消它们.
图20.36 订单凭证簿视图
20.11 库存管理的高级元素
在此部份我们讲解以下库存管理与控制细节
20.11.1 需求计算/排程
需求计算是指计算引擎根据为产品定义的规则对产品进行计划,排定优先级以及啟动自动供应.
注:需求计算
需求计算常常被叫做排程
需求计算默认每天自动执行一次,也可以通过菜单 制造->排程->计算排程手动执行它. 需求计算利用在产品,供应商以及公司中定义的参数决定各种不同的产品订单,出货以及采购的优先顺序.
20.11.2 及时生产
排 程默认每天自动执行一次.应该将此执行安排在晚上很少有人使用系统的时候以避免排程运算影响系统的性能.可以通过菜单 管理->配置->排程->排程动作 设定排程的开始时间.选择被称作 运行MRP排程 的规则并修改其下次执行的日期与时间.有些公司希望不断地对录入的订单进行计划而不是等到下一天产生供应订单.模块MRP_及时生产就是做这个工作的.安 装好此模块后,在每个需求(会产生生产或采购订单)被确认后系统就会进行实时的计划.
如果录入了一个面向订单生产产品的销售订单后,系统会立即产生一个对供应商的报价请求.
提示:自供应商出货
Sale_supplier_direct_delivery(基 于供应商直接出货的销售,有的系统也称此为第三方交货)模块允许供应商直接交产品交给客户.在撰写本文时此模块尚在addons_extra(外掛模块: 其它)中.产品遵循为其单独配置的逻辑且只影响被标记为面向订单生产的产品.
此模式不是任何时候都有实际意义.每个订单会在被确认之时立即得以处理.因此如果一个订单将在3个月后出货,排程会在订单被确认后为其在存货中进行预留.这种情况下使相关产品对其它订单可用应该更为合理.
如果一个采购订单的发票控制被配置为 来自订单,排程会立即创建对应的供应商询价请求.考虑到提前期你可能更倾向于延后几周以合并未来的订单进行统一采购.
总结以上,我们可以看出及时生产模块的一些副作用是
.订单间的优先级管理得不好
.产生多餘的存货(译者注:此处不好理解, 根据上文,提前产生了需求?).
20.11.3 计划
大部分的OPENERP单据可以在计划视图中进行变更.对出货与收货也一样.在任何时候都可以将它们放到日历视图中以对出货与收货进行计划.
图20.37 计划客户产品出货
装箱单上的计划日期被定义在每个库存移动行上,如果有一个装箱单包含许多不一定在同一天出货的产品.装箱单中最大与最小日期就对应于装箱单的库存移动行之最早与最晚日期
如果在日历视图上移动一个装箱单,库存移动单行中的计划日期也会自动变更(移动).
20.11.4 管理部份交货
部份交货,有时也称欠交订单是由OPENERP自动产生的.当确认一个对客户的出货或来自供应商的收货时,OPENERP会要求确认出货或收货数量.
如果不修改建议的数量,OPENERP会确认并完成出货或收货有关的订单.如果修改数量,OPENERP会自动以剩下的数量生成第二张出货或收货单.第一张单会被确认,而第二张会处于等待出货(或收货)状态.
图20.38 出货数量确认屏幕
在打开当前出货清单中有个欠交订单栏位,里面记录的是已出货给客户的前一张出货单号, 每天都可以据此快速找出那些部份交货订单以便优先处理它们.
20.11.5 供应商产品收货
OPENERP支持3种方式控制自供应商收货之数据录入
. 手工录入
. 使用系统预先生成的收货单
. 独立于收货单从所有待收产品进行选择,
在”推动你的采购”章节有更细节的关于采购订单配置如何影响收货的内容.
20.11.6 收货之手工数据录入
请选择菜单 仓库->仓库管理->进口货物 点击新增按钮 就可以手工录入收货信息.
图20.39:产品收货之手工数据录入
20.11.7 确认预生成收货单
如果使用OPENERP中的采购订单,在采购订单确认时系统就会自动生成产品收货单.而不再需要输入任何资料,只要确认已订数量与收货数量是否一致即可.
通过菜单 仓库->仓库管理->进口货运 会看到OPENERP生成的所有待收货产品清单,使用恰当的过滤条件,利用按状态分组等功能就可以找到在特定状态下的各种待收货单据.
图20.40:待收货清单
接 下来可以使用供应商名称或参考订单号来定位具体的收货单.选择收货单并确认数量.如果显示的数量与控制表单中的不一样,OPENERP会以剩餘数量自动生 成另一张待处理的收货.可暂时不用理会这张生成的收货,或者如果知道供应商再也不会将短少的数量送货了,就可以取消生成的收货单.
20.11.8 通过选待收产品进行确认
上 述方式对于收货与原始订单相符的情况特别适用.然而,如果供应商送货时并不必然与订单一致时,通过选择产品而不是订单来进行收货显然就容易多了.可通过菜 单 仓库->产品移动 ->接收产品 来手工创建一个新产品收货.OPENERP会打开供应商的所有待收与已收产品清单,可以自动地添加部份或者全部的产品到收货单中.可以基于状态对待收产品 进行过滤并进行确认.这种数据录入方式特别适用于在同一时间针对多个订单进行收货.
20.11.9 产品路由
如果希望实现依据产品本身决定自供应商或公司仓库至客户的产品路由,应该安装库存_库位模块.
图20.41:在产品表单中管理自一个库位到另一个库位的移动路径
产品路由允许为每个产品单独配置物流规则.比如,当一个特定的产品到达仓库时,可以自动将其送至待验(库位).要实现此功能,必须在产品表单上配置相应规则,规则由以下栏位构成
.源库位: 产品来自此库位
.目标库位: 产品被送达此库位
.移动类别:自动,手动,自动但无附加步骤
.移动提前期
.操作名称:一个用于由OPENERP自动生成移动单中自由定义的文本.
有以下两种主要的物料流
.推式流
.拉式流
推式流特别适用于产品到达特定库位后一定会立即或隔几天后移动到另一个库位的情况.标准的仓库管理模块已经支持在库位上定义推式流,但不能为单个产品定义推式流.
与推式流不同,拉式流不处理产品移动,它处理的是供应订单.被拉动的是一个需求,不是直接的产品.
以下将要讲解的是在这些库位间为产品定义的物料流
.一个租赁产品
.一个从中国采购,接下来通过港到港海运的产品
.一个进入为库房前必须先待验的产品
案例 1:一个租赁产品
一个租赁产品是指交货给客户后,一段时间之后需归还的产品.当租赁产品出货给客户时,OPENERP会以租赁到期日为预计收货日的一张新收货单.因此当租赁到期时,只需要对系统内已产生待收产品清单进行确认即可.请按以下方式为产品配置一个规则
表20.11:租赁产品案例
栏位 值
源库位
目标库位
移动类别
提前期
操作 客户
存货
手动
15天
产品退回
将该产品出货给客户时,OPENERP会为产品归还自动生成的个草稿状态的收货单. 此收货单之到期日是15天之后.基于此系统可以实时地显示预计存货以及存货趋势图.
案例 2: 管理海运进口
要管理产品通过海运,再经过海关环节的复杂物流,请为各个步骤建立对应的’供应商’库位,然后创建库位间移动规则以对应实际物流过程.
让我们来拿一个从中国采购并最终进入在比利时布鲁塞尔店铺的案例来看.海运进口需大约7周,期间必须经历以下步骤
.从供应商出货至上海港: 2天
.从上海海运至安特卫普港:1个月
.安特卫普港海关:2周
.从安特卫普港通过卡车运至店铺:3天
应该在每次产品移动时录入相关单据以便及时知晓在某一时刻该产品处在什么位置,以及预计什么时候会到店铺.要做到这些,请为这些中间步骤创建以下库位
. 上海港
. 安特卫普港
. 安特卫普海关
最后,请在产品表单中创建以下规则,规则的意思是当采购产品时,产品不会直接进入店铺,而是先到上海港.在此案例中我们将店铺配置为可以接收所有产品称为来料的库位
表20.12 将产品自动移动到上海港的规则
栏位 值
源库位
目标库位
移动类别
提前期
操作 来料
上海港
自动且无附加步骤
2天
送至上海港
基于上述规则,OPENERP会将本来的普通收货(收货至来料库位)变更为由供应商运送至外部港口,因为如果人工进行此步操作,工作量会太大,所以此处将该移动设定为自动进行的.
接下来,还要在产品表单上创建规则以便将其从一个库位移到另一个库位
表20.13 将产品手动从上海港移动到安特卫普港
栏位 值
源库位
目标库位
移动类别
提前期
操作 上海港
安特卫普港
手动
30天
海运至安特卫普港
表20.14 将产品手动从安特卫普港移至安特卫普海关
栏位 值
源库位
目标库位
移动类别
提前期
操作 安特卫普港
安特卫普海关
手动
15天
安特卫普海关
表20.15手动将产品从安特卫普海关移动至存货
栏位 值
源库位
目标库位
移动类别
提前期
操作 安特卫普海关
存货
手动
3天
卡车运送至库房
上述规则配置好后,OPENERP就会自动为产品从一个库位移动至另一个库位生成所有必要的单据.系统会根据规则里定义的顺序将这些单据先后关联起来.当公司收到产品抵达某个港口或海关的通知时,就可以确认相关的产品移动.这样就可以用每个库位来跟踪如下的产品存货信息了
.特定产品已到哪儿了,
.待清关的产品数量,
.产品到店铺还需多长时间,
.在各库位之存货价值
案例 2: 待验
可以配置系统以便在产品到达公司时将产品自动送达待检区. 要实现此功能,只需为产品配置一个从供应商接收产品时将产品送至待验而不是来料库位的规则.
表20.16 手动将产品由来料库位移动至待验库位的规则
栏位 值
源库位
目标库位
移动类别
提前期
操作 来料
待验
手动
0天
待验
当收到此产品时,OPENERP会自动产生一张待手工确认的由来料库位到待验库位的内部移动单.
(库存管理 部份 完)