專利名稱:生成生產(chǎn)訂單備料分錄的方法及裝置的制作方法
技術(shù)領域:
本發(fā)明涉及數(shù)據(jù)庫技術(shù)領域,特別是涉及生成生產(chǎn)訂單備料分錄的方法及 裝置。
背景技術(shù):
隨著計算機技術(shù)的不斷發(fā)展,數(shù)據(jù)庫中的數(shù)據(jù)表可以自動生成,其中,某 些數(shù)據(jù)表是依據(jù)一些特定的基礎數(shù)據(jù)表生成的。例如,生產(chǎn)訂單
(Manufacture Oder )的備料分錄就是以物料清單(Bill of Material, BOM) 為基礎數(shù)據(jù)表而自動生成的。
其中,所述生產(chǎn)訂單是指用來傳達某個部件或產(chǎn)品的生產(chǎn)任務,并指定數(shù) 量的文件或排程。通過該生成訂單來指定物料、工作中心、工序、班組、組件、 資源和工具、排程、工藝路線、數(shù)量等,以此指示出生產(chǎn)何種產(chǎn)品,在何處由 什么人、用什么、在什么時間生產(chǎn),以及為什么要這樣做、做多少以及訂單成 本如何-故計算等信息。因此生產(chǎn)訂單主要用于計劃和控制工廠中的生產(chǎn)活動, 并且作為成本會計的成本控制依據(jù)。而生產(chǎn)訂單備料分錄中包括的是就是物料 相關信息,包括組件物料編碼,物料名稱,型號規(guī)格,需求數(shù)量,單位用量等 信息。
物料清單是指產(chǎn)品所需零部件明細表及其結(jié)構(gòu)。具體而言,物料清單是構(gòu) 成父項裝配件的所有子裝配件、零件和原材料的清單,也是制造一個裝配件所 需要每種零部件的數(shù)量的清單。物料清單表明了產(chǎn)品—部件—組件—零件—原 材料之間的結(jié)構(gòu)關系,以及每個裝配件包含的下屬部件(或零件)的數(shù)量和提 前期(Lead Time)。其中,"物料" 一詞有著廣泛的含義,它是所有產(chǎn)品、半 成品、在制品、原材料、毛坯、配套件等與生產(chǎn)有關的物料的統(tǒng)稱。在某些工 業(yè)領域,可能稱為"配方"、"要素表"或其它名稱。
通常,由于物料清單中既包括原材料,又包括半成品,而半成品又是由多 個原材料組成的,因此,物料清單的結(jié)構(gòu)通常為多層結(jié)構(gòu)。其中,成品的階層 碼為0,依次向下為1、 2、 3……如圖1 (a)所示,々ii殳生產(chǎn)產(chǎn)品A可以選擇使用的物料清單為B0M1,在該圖1 (a)中,G層位BOMl,其中,第一層為原 材料M1和半成品B0M2;第二層為原材料M2和M3,第二層的這兩個原材料是 用于組成半成品B0M2的。
現(xiàn)有技術(shù)在基于物料清單生成某產(chǎn)品的生產(chǎn)訂單備料分錄時,通常是根據(jù) 要生產(chǎn)的產(chǎn)品選擇的不同B0M編碼,然后直接對BOM展開,向下展開第一層物 料并復制給生產(chǎn)訂單備料分錄。
例如,當需要生成產(chǎn)品A時,選擇了 B0M1,則直接將該B0M1的第一層物 料復制給生產(chǎn)訂單備料分錄。因此,最終生產(chǎn)訂單備料分錄中記錄的物料是 MI及B0M2。 一般企業(yè)生產(chǎn)一個成品,可能已經(jīng)不存在某個半成品庫存,例如, 在上迷例子中,生產(chǎn)訂單中記錄的是半成品B0M2的數(shù)量等信息,但是如果庫 存中沒有B0M2,則會導致無法正常完成產(chǎn)品的生產(chǎn)。如果要實現(xiàn)正常的生產(chǎn), 則需要再為目前沒有庫存的半成品生成生產(chǎn)訂單,以標識出該半成品是由哪些 原材料組成的。因此,可能會需要為同一產(chǎn)品生成多個生產(chǎn)訂單備料分錄,這 才羊會造成資源浪費,并且影響系統(tǒng)的響應效率。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供生成生產(chǎn)訂單備料分錄的方法及裝置, 能夠在半成品沒有庫存的情況下,節(jié)約資源,提高系統(tǒng)的響應效率。 為實現(xiàn)上述目的,本發(fā)明提供了如下方案 一種生成生產(chǎn)訂單備料分錄的方法,包括
獲取生產(chǎn)訂單信息;所述生產(chǎn)訂單信息至少包括成品編碼、生產(chǎn)數(shù)量及物 料清單展開階數(shù);
確定所需的物料清單,根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單,獲取各 層中的物料信息,并逐階計算各物料對應的需求數(shù)量;所述物料信息至少包括 物料編碼及物料名稱;
將所述物料信息及對應的需求數(shù)量復制到生產(chǎn)訂單,生成生產(chǎn)訂單備料分錄。
優(yōu)選的,所述生產(chǎn)訂單信息還包括物料清單編碼,所述確定所需的物料清
6單包括
獲^^指定的物料清單并確定為所述所需的物料清單。
優(yōu)選的,所述確定所需的物料清單包括
將所述成品編碼對應的物料清單中默認的主物料清單確定為所述所需的 物料清單。
優(yōu)選的,所述根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單,獲取各層中的物
料信息,并逐階計算各物料對應的需求數(shù)量,包括
如果當前展開層次小于等于用戶指定的展開階數(shù),并且當前展開的物料為 原材料,則直接獲取該原材料的物料相關信息,并計算該原材料的需求數(shù)量;
如果當前展開的物料為半成品,并且當前展開層次小于用戶指定的展開階 數(shù),則繼續(xù)向下層展開,直到展開層次等于用戶指定的展開階數(shù);并逐階計算 各物料對應的需求數(shù)量;
如果當前展開的物料為虛擬件,則將該虛擬件逐層展開,直到展開的物料 為非虛擬件,并計算各非虛擬件的需求數(shù)量。
優(yōu)選的,所述根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單之前還包括
當生成訂單事務類型為標準生產(chǎn)訂單時,根據(jù)所迷生產(chǎn)訂單信息逐階展開 物料清單。
優(yōu)選的,所述逐階計算各物料對應的需求數(shù)量之前還包括 當生產(chǎn)訂單的計劃開始時間在物料的生效日期和失效日期之間時,計算該 物料的需求數(shù)量。 優(yōu)選的,還包括
根據(jù)產(chǎn)品的成品率修訂產(chǎn)品的生產(chǎn)數(shù)量; 所述逐階計算各物料對應的需求數(shù)量包括
根據(jù)各層物料的單位用量信息及所述修訂后的生產(chǎn)數(shù)量,逐階計算各物料 對應的需求數(shù)量。
優(yōu)選的,所述逐階計算各物料對應的需求數(shù)量包括
根據(jù)物料清單中記錄的各物料的單位用量、物料損耗率、產(chǎn)品的成品率及 產(chǎn)品的生產(chǎn)數(shù)量,逐階計算各物料對應的需求數(shù)量。
一種生成生產(chǎn)訂單備料分錄的裝置,包括接口單元,用于獲取生產(chǎn)訂單信息;所述生產(chǎn)訂單信息至少包括成品編碼、 生產(chǎn)數(shù)量及物料清單展開階數(shù);
信息獲取單元,用于確定所需的物料清單,根據(jù)所述生產(chǎn)訂單信息逐階展
開物料清單,獲取各層中的物料信息,并逐階計算各物料對應的需求數(shù)量;所
述物料信息至少包括物料編碼及物料名稱;
信息復制單元,用于將所述物料信息及對應的需求數(shù)量復制到生產(chǎn)訂單,
生成生產(chǎn)訂單備料分錄。
優(yōu)選的,所述生產(chǎn)訂單信息還包括物料清單編碼,所述信息獲取單元包括 第一清單確定子單元,用于獲取指定的物料清單并確定為所述所需的物料清單。
優(yōu)選的,所述信息獲取單元包括
第二清單確定子單元,用于將所述成品編碼對應的物料清單中默i人的主物
料清單確定為所述所需的物料清單。 優(yōu)選的,所述信息獲取單元包括
第一獲取子單元,用于如果當前展開層次小于等于用戶指定的展開階數(shù), 并且展開的物料為原材料,則直接獲取該原材料的物料相關信息,并計算該原 材料的需求數(shù)量;
第二獲取子單元,用于如果當前展開的物料為半成品,并且展開層次小于 用戶指定的展開階數(shù),則繼續(xù)向下層展開,直到展開層次等于用戶指定的展開 階數(shù);并逐階計算各物料對應的需求數(shù)量;
第三獲取子單元,用于如果當前展開的物料為虛擬件,則將該虛擬件逐層 展開,直到展開的物料為非虛擬件,并計算各非虛擬件的需求數(shù)量。
優(yōu)選的,還包括
展開校驗單元,用于當生成訂單事務類型為標準生產(chǎn)訂單時,根據(jù)所述生 產(chǎn)訂單信息逐階展開物料清單。 優(yōu)選的,還包括
計算4交驗單元,用于當生產(chǎn)訂單的計劃開始時間在物料的生效日期和失效 曰期之間時,計算該物料的需求數(shù)量。 優(yōu)選的,還包括生產(chǎn)數(shù)量修訂單元,用于根據(jù)產(chǎn)品的成品率修訂產(chǎn)品的生產(chǎn)數(shù)量; 所述信息獲取單元包括
第一計算子單元,用于根據(jù)各層物料的單位用量信息及所述修訂后的生產(chǎn) 數(shù)量,逐階計算各物料對應的需求數(shù)量。
優(yōu)選的,所述信息獲取單元包括
第二計算子單元,用于根據(jù)物料清單中記錄的各物料的單位用量、物料損 耗率、產(chǎn)品的成品率及產(chǎn)品的生產(chǎn)數(shù)量,逐階計算各物料對應的需求數(shù)量。
根據(jù)本發(fā)明提供的具體實施例,本發(fā)明公開了以下技術(shù)效果 本發(fā)明能夠根據(jù)用戶指定的展開階數(shù)進行物料清單的多層展開,并計算各 層中物料的需求數(shù)量,這樣,當半成品沒有庫存時,就可以指定展開到該半成 品的下一層,并且能夠在生成的生產(chǎn)訂單中將該半成品的下階物料包括進來, 而不用再另外開立該半成品的生產(chǎn)訂單,因此,在出現(xiàn)某半成品沒有庫存的情 況時,可以減少開立生產(chǎn)訂單的數(shù)量,節(jié)約資源,并且可以提高系統(tǒng)對用戶需 求及生產(chǎn)計劃的響應效率。
圖1 (a)是物料清單結(jié)構(gòu)示意圖1 (b)是另一物料清單結(jié)構(gòu)示意圖2是本發(fā)明實施例提供的方法的流程圖3是本發(fā)明實施例提供的另一方法的流程圖4是本發(fā)明實施例^是供的裝置的示意圖。
具體實施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進一步詳細的說明。
參見圖2,本發(fā)明實施例提供的生成生產(chǎn)訂單備料分錄的方法包括以下步
驟S201:獲取生產(chǎn)訂單信息;所述生產(chǎn)訂單信息至少包括成品編碼、生產(chǎn)數(shù) 量及物料清單展開階數(shù);
用戶在需要生產(chǎn)某產(chǎn)品時,就需要首先生成該產(chǎn)品的生產(chǎn)訂單,因此,該 步驟中獲取的生產(chǎn)訂單信息可以是用戶輸入的。。在本發(fā)明實施例中,用戶需 要首先錄入相關的生產(chǎn)訂單信息,包括成品編碼、生產(chǎn)數(shù)量及物料清單展開階 數(shù)。其中,通過成品編碼,系統(tǒng)可以知道需要為哪種產(chǎn)品生成生產(chǎn)訂單;通過 生產(chǎn)數(shù)量,系統(tǒng)可以確定在生產(chǎn)這種產(chǎn)品時,每種物料的需求數(shù)量;通過展開 階數(shù),系統(tǒng)可以知道需要將物料清單展開到第幾層。用戶在設置展開階數(shù)時, 可以首先查看庫存清單,根據(jù)半成品的庫存等情況,來設置展開階數(shù)。例如, 發(fā)現(xiàn)第一層的某個半成品沒有庫存,則應該將展開階數(shù)至少設置為2,這樣, 系統(tǒng)至少會展開到第二層,將該半成品的下階物料包括進來。如果第二層物料 中還包括沒有庫存的半成品,則需要將展開階數(shù)至少設置為3,以此類推。
S202:確定所需的物料清單,根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單, 獲取各層中的物料信息,并逐階計算各物料對應的需求數(shù)量;所述物并+信息至 少包括物料編碼及物料名稱;
其中,由于一種成品通??梢詫鄠€物料清單,因此,在展開物料清單 之前要首先確定一個需要的物料清單。由于初始狀態(tài)下存在一個系統(tǒng)默認的主 物料清單,因此,系統(tǒng)可以直接將所述默認的主物料清單確定為所述所需的物 料清單。即,在用戶輸入成品編碼后,系統(tǒng)可以根據(jù)該成品編碼找到該成品對 應的各物料清單,并選擇當前的主物料清單作為本次所需的物料清單。
當然,還可以由用戶指定本次生成生產(chǎn)訂單所需的物料清單。用戶選擇的 物料清單信息可以包括在步驟S201輸入的生產(chǎn)訂單信息中,即用戶可以在輸 入成品編碼、生產(chǎn)數(shù)量及物料清單展開階數(shù)的同時,指定物料清單。具體實現(xiàn) 時,用戶可以將所述指定的物料清單設置為主清單,這樣,系統(tǒng)在確定所需的 物料清單時,依然可以選擇當前的主物料清單,當然,該主物料清單可能已經(jīng) 不再是默認狀態(tài)下的主物料清單。
在確定好所需的物料清單后,就可以根據(jù)所述生產(chǎn)訂單信息逐階展開物料 清單,獲取各階中的物料信息,并逐階計算各物料對應的需求數(shù)量。由于用戶指定了展開階數(shù),因此在展開所述所需的物料清單時,會依據(jù)用戶指定的展開 階數(shù)進行展開。其中,所述物料信息至少包括物料編碼及物料名稱,在實際應 用中還可以包括型號規(guī)格等,這些信息都記錄在物料清單中,可以通過讀取相 應字段的屬性信息來獲取所述物料信息;這些物料信息就可以唯一標識出物 料,即生產(chǎn)人員根據(jù)這些物料信息就可以知曉需要使用何種物料。
具體進行逐層展開時,針對不同的物料類型,需要做相應的判斷處理。其 中,所述物料類型包括原材料、半成品及虛擬件。例如,由于原材料已經(jīng)是最 小組成單位,因此,在逐層展開時,如果當前展開層中包括原材料,并且當前 展開層次小于用戶設置的展開階數(shù),則直接將該原材料的相關物料信息復制到 生產(chǎn)訂單中即可。由于半成品是由多個下階物料組成的,因此,如果當前層中
包括半成品,則證明該半成品還可以繼續(xù)展開;但是此時需要首先判斷當前展
開層次是否小于用戶指定的展開階數(shù),如果小于則繼續(xù)展開,直到當前展開層 數(shù)等于用戶設定的展開階數(shù)為止。即,如果當前展開層數(shù)等于用戶指定的展開 階數(shù),則即使該層中還包括半成品,也不會再繼續(xù)展開,不需要獲取該半成品 的下階物料。此時,會將該半成品的物料相關信息復制到生產(chǎn)訂單中。
但是,在實際應用中,物料清單結(jié)構(gòu)中除了包括原材料及半成品之外,還 可能包括虛擬件。下面簡要介紹虛擬件的含義。如果有一組原材料在幾個產(chǎn)品 或同一產(chǎn)品的幾個物料清單中都要用到,那么,就可以把這一組原材料設為一
個虛擬的半成品,這個半成品就定義為虛擬件,其B0M設置為虛擬B0M。這樣, 要使用這些原材料時就不用指向具體的每一種原材料,直接指向這個虛擬的 B0M即可,如要修改某個原材料,就只需修改這個虛擬B0M,而不用修改每個產(chǎn) 品的B0M了。
參見圖l(a)與圖l(b),圖l(a)中的B0M1、 B0M2與圖1 (b)中的 B0M1、 B0M2是等價的。但是,虛擬BOM的作用只是為了方便管理BOM結(jié)構(gòu)。 比如對虛擬BOMQ進行修改,添加一個原材料M8,那么B0M1和B0M2都會自動 修改。而如果是圖1 ( b )這樣,就要在B0M1和B0M2中分別添加M8。如果BOM 4艮復雜,而M5,M6,M7的組合經(jīng)常出現(xiàn)在B0M里,那么建立虛擬BOM就非常的 方便了。但是需要說明的是,虛擬BOM0并不計入庫存,在看庫存報表時是沒 有虛擬BOM0這一項的。因此,當物料清單中包括虛擬件時,則需要繼續(xù)向下展開,直到展開的物 料為非虛擬件為止,不管當前展開層數(shù)是否小于等于用戶指定的展開階數(shù)。
可見,在本發(fā)明實施例中,在逐層展開物料清單時,還需要首先判斷各層 中的物料類型,并根據(jù)物料的類型進行相應的展開。其中,由于物料清單中標 記了物料類型這一屬性,因此,可以首先讀取物料清單中的物料類型屬性,判 斷出物料類型,然后針對具體的物料類型進行展開即可。
在計算各物料對應的需求數(shù)量時,根據(jù)用戶指定的生產(chǎn)數(shù)量,及各物料的 單位用量就可以計算出各物料的需求數(shù)量。
其中,所述物料的單位用量是指生產(chǎn)單位l個成品,所需要的下階物料
的數(shù)量。例如生產(chǎn)成品A 2個,需要下階物料B 4個,C l個,那么物料B的 單位用量就是2,物料C的單位用量就是O. 5個。物料清單中記錄了各物料的 單位用量,因此,在展開第一層時,從物料清單中讀取各物料的單位用量,然 后乘以用戶指定的生產(chǎn)數(shù)量就可以計算出第一層物料的需求數(shù)量,然后在向下 階進行展開時,也將物料的需求數(shù)量向下階傳遞,再結(jié)合下階物料的單位用量, 計算出下階物料的需求數(shù)量。
例如,在圖1 (a)所示的物料清單結(jié)構(gòu)中,對于產(chǎn)品A選擇的物料清單 為BOMl,用戶指定的展開階數(shù)為2。則首先展開B0M1的第一層,假設針對產(chǎn) 品A,物料M1、 B0M3的單位用量均為1,用戶指定的生產(chǎn)數(shù)量為100,則系統(tǒng) 需要從物料清單中提取單位用量信息,然后計算出物料M1及B0M3的需求用量 為100。然后展開第二層,并將B0M3的需求用量傳遞到第二層。假設針對半 成品B0M2,物料M31的單位用量為2,物料M32的單位用量為3,則計算出物 料M31的需求用量為200,物料M32的需求用量為300,以此類推。
S203:將所述物料信息及對應的需求^t量復制到生產(chǎn)訂單,生成生產(chǎn)訂單 備料分錄。
在獲取到各層物料的物料信息及對應的需求數(shù)量之后,就可以將所述物料 信息及相應的需求數(shù)量復制到生產(chǎn)訂單中,從而生成生產(chǎn)訂單備料分錄。當然, 為了生產(chǎn)完整的生產(chǎn)訂單,還需要生成工藝等其他信息,本發(fā)明實施例對此不 做介紹。可見,本發(fā)明實施例能夠根據(jù)用戶指定的展開階數(shù)進行物料清單的多層展 開,并計算各層中物料的需求數(shù)量,這樣,當半成品沒有庫存時,就可以指定 展開到該半成品的下一層,這樣就能夠在生成的生產(chǎn)訂單中將該半成品的下階 物料包括進來,而不用再另外開立該半成品的生產(chǎn)訂單,因此,在出現(xiàn)某半成 品沒有庫存的情況時,可以減少開立生產(chǎn)訂單的數(shù)量,節(jié)約資源,并且可以提 高系統(tǒng)對用戶需求及生產(chǎn)計劃的響應效率。
在實際應用中,由于生產(chǎn)訂單包括標準生產(chǎn)訂單、返工生產(chǎn)訂單、委外生 產(chǎn)訂單等多種事務類型,本發(fā)明通常僅考慮生成標準生產(chǎn)訂單。因此,在沖艮據(jù) 所述生產(chǎn)訂單信息逐階展開物料清單之前,還可以首先判斷生成訂單事務類型 是否為標準生產(chǎn)訂單,如果是,在執(zhí)行根據(jù)所述生產(chǎn)訂單信息逐階展開物料清 單及其后續(xù)步驟。在展開過程中,還可以對展開的物料類型進行過濾,例如, 由于物料清單中的各物料通常分為"主產(chǎn)品"、"聯(lián)產(chǎn)品"、"副產(chǎn)品"及"其他"; 在本發(fā)明實施例中,可以僅將"主產(chǎn)品"及"其他"這兩類物料復制到生產(chǎn)訂 單中。因此,還可以包括判斷物料的產(chǎn)品標識的步驟,如果根據(jù)產(chǎn)品標識判斷
出事"主產(chǎn)品,,或"其他",則進行獲取物料信息及其后續(xù)步驟;否則,不對
獲取該物料的物料信息,也無須計算其需求用量。
另外,由于子項物料通常會具有有效期,因此在計算各物料的需求數(shù)量之 前,還需要考慮子項物料的有效期因素。其中,所述子項是相對于父項而言的,
例如在圖1 (a)所示的B0M結(jié)構(gòu)中,Ml、 B0M3為B0M1的子項,相應的,B0M1 為M1、 B0M3的父項;同時,BOM3為M31、 M32的父項,相應的,M31、 M32為 B0M3的子項。
在實際應用中,某子項物料可能需要從某時間開始生效(例如,要到該時 間才到貨等),到另一時間失效(例如該物料在該時間會用完或被其他物料代 替等),因此,具體實現(xiàn)時,判斷生產(chǎn)訂單的計劃開始時間是否在子項物料的 生效日期和失效日期之間,如果是,執(zhí)行計算該子項物料的需求數(shù)量的步驟。 其中,所述生產(chǎn)訂單的計劃開始時間可以由用戶預先指定;子項物料的生效日 期及失效日期同樣可以從物料清單中獲取。例如,假設某子項物料的生效時間 是2009年8月1日,失效日期是2009年9月1日;則如果生產(chǎn)訂單的計劃開 始時間在2009年8月1曰與2009年9月1日之間,如2009年8月15曰,則可以按照步驟S202的方法進行。當然,所述生產(chǎn)訂單的計劃開始時間可能還 具有子項偏置時間,此時,也可以將該偏置時間考慮進來,例如可以將以下公
式作為校驗條件進行判斷
子項物料生效日期《生產(chǎn)訂單計劃開始日期+子項偏置時間<子項物料失 效曰期
如前文所述,在具體計算物料的需求數(shù)量時,可以根據(jù)物料清單中記錄的 物料單位用量及用戶指定的生產(chǎn)數(shù)量,逐層進行計算。在實際計算時,還需要 考慮計算數(shù)據(jù)精度處理,以減少計算過程中的精度損失。例如,由于物料清單 中記錄子項物料的單位用量的方式可能不同,例如,在"消耗類型,,字段記錄 的是單位用量信息,其中,由于子項物料的消耗類型包括定額消耗和比例消耗,
定額消耗就是標明該成品中用到的該子項物料的數(shù)量;比例消耗就是表明父項 物料與子項物料的用量比例,因此,實際計算時,可以按照以下方法進行
如果子項物料的消耗類型為定額消耗,貝'J:
該子項物料的需 求數(shù)量=(消耗定額/BOM父項數(shù)量)*父項物料需求數(shù)量 如果子項物料的項消耗類型為比例消耗,則, 該子項物料的需求數(shù)量=父項物料需求數(shù)量*比例
由于計算時是一層一層地計算,對于每一子項物料而言,其父項物料需求 數(shù)量都是已知的,因此,只要再已知以何種消耗類型記錄子項物料的單位用量 信息,選擇相應的公式,就可以計算出子項物料的需求數(shù)量。
當然,在實際應用中,產(chǎn)品的成品率可能做不到百分之百,同時,各物料 也會有一定的損耗,因此,為了更加符合實際應用情況,在計算物料的需求用 量時,還可以考慮成品率及損耗率。其中,所述成品率是相對于要生產(chǎn)的產(chǎn)品 而言的,及根據(jù)經(jīng)驗獲得的該產(chǎn)品的成品率是多少,例如,計劃生產(chǎn)100件產(chǎn) 品A,但最終只得到成品80件,則該產(chǎn)品的成品率為80%,因此,如果想要生 產(chǎn)100件產(chǎn)品A,則計劃的生產(chǎn)數(shù)量應該高于IOO件,以保證最終能夠得到至 少100件成品。
所述損耗率是相對于產(chǎn)品的子項物料而言的,例如,有些物料本身的質(zhì)量問題,或在生產(chǎn)過程中某物料可能會損壞,造成無法再用來完成產(chǎn)品的生產(chǎn),此時,如果僅按照物料的單位用量進行計算物料的需求用量,則一旦出現(xiàn)質(zhì)量不合格的物料或者在生產(chǎn)過程中損壞了一定數(shù)量的該物料,都可能會造成生產(chǎn)
無法正常進行。
因此,在本發(fā)明實施例中,還需要將所述成品率及損耗率都考慮進來,根據(jù)物料清單中記錄的各物料的單位用量、物料損耗率、成品率及用戶指定的生產(chǎn)數(shù)量,逐階計算各物料對應的需求數(shù)量。相當于需要利用成品率對用戶指定
的生產(chǎn)數(shù)量進行修訂,還需要根據(jù)損耗率對子項物料的需求數(shù)量進行修訂;其中,根據(jù)損耗率修訂物料的需求數(shù)量時,可以按照以下公式進行
原始需求數(shù)量/ (1-損耗率%);或者,原始需求數(shù)量* (1+損耗率°/。)
可以按照實際需要任意選擇一個公式進行。其中,所述原始需求數(shù)量就是指僅才艮據(jù)物料的單位用量及產(chǎn)品的生產(chǎn)數(shù)量計算出來的需求用量,在該需求用量J^出上乘以(或除以) 一個系數(shù)即可。損耗率同樣是從物料清單中獲得的,該值通常是根據(jù)經(jīng)驗統(tǒng)計出來的經(jīng)驗值,如果不需要該參數(shù),或者沒有統(tǒng)計,則物料清單中會默認為0,及該物料沒有損耗。
例如,產(chǎn)品A的下階物料為B和C,其中B為虛擬件,B的下階D和E,如果產(chǎn)品A實際需求90個,現(xiàn)在計算過程中會才艮據(jù)產(chǎn)品A的成品率對該產(chǎn)品的生產(chǎn)訂單數(shù)量進行放大,如產(chǎn)品A的成品率為90%,則A的生產(chǎn)訂單數(shù)量則放大為100;如果子項虛擬件B與產(chǎn)品A的單位用量是1: 1, A的BOM上的子項物料B的損耗率是15%,則產(chǎn)品A的生產(chǎn)訂單上其子項物料B的凈需求數(shù)量可以為
(100/0.85 ),子項物料B的生產(chǎn)數(shù)量及對下階物料的凈需求數(shù)量為
(100/0. 85 ) /0. 7。
按照上述方法完成物料清單的展開劑計算之后,就可以將獲取到的各物料
的物料編碼、物料名稱、型號規(guī)格、需求數(shù)量等信息復制到生產(chǎn)訂單中,生成生產(chǎn)訂單備料分錄。
為了更好地理解本發(fā)明實施例提供的方法,下面通過一個具體的例子進行更加詳細地描述
參見圖3,本發(fā)明實施例提供的方法中獲取到用戶的輸入信息并確定物料清單之后可以包括以下步驟
S301:從階層碼為0開始展開物料清單;
S302:根據(jù)用戶指定的生產(chǎn)數(shù)量及物料清單中記錄的物料單位用量信息,計算物料在第n層的凈需求數(shù)量;
S303:在考慮成品率及物料損耗率的情況下,計算第n層物料的毛需求數(shù)
量;
S304:保存第n層所有物料的物料信息,包括物料編碼、物料名稱及型號規(guī)格及需求數(shù)量等;
S305:判斷所述第n層中是否涉及虛擬件;如果是,進入步驟S306;否則,進入步驟S307;
S306:將虛擬件繼續(xù)向下一層展開,當展開到底N層時,如果還包括虛擬件,則仍繼續(xù)展開,并用N+1代替N,直到不再涉及虛擬件;其中N為用戶指定的展開階數(shù);
S307:將第n層的物料繼續(xù)向下一層展開,直到n=N,其中,N為用戶指定的展開階數(shù)。
與本發(fā)明實施例提供的生成生產(chǎn)訂單備料分錄的方法相對應,本發(fā)明實施例還提供了一種生成生產(chǎn)訂單備料分錄的裝置,參見圖4,該裝置包括
接口單元U401,用于獲取生產(chǎn)訂單信息;所述生產(chǎn)訂單信息至少包括成品編碼、生產(chǎn)數(shù)量及物料清單展開階數(shù);
信息獲取單元U402,用于確定所需的物料清單,糧據(jù)所述生產(chǎn)訂單信息逐階展開物料清單,獲取各階中的物料信息,并逐階計算各物料對應的需求數(shù)量;所述物料信息至少包括物料編碼及物料名稱;
信息復制單元U403,用于將所述物料信息及對應的需求數(shù)量復制到生產(chǎn)訂單,生成生產(chǎn)訂單備料分錄。
通過本發(fā)明實施例提供的裝置,能夠根據(jù)用戶指定的展開階數(shù)進行物料清單的多層展開,并計算各層中物料的需求數(shù)量,這樣,當半成品沒有庫存時,就可以指定展開到該半成品的下一層,這樣就能夠在生成的生產(chǎn)訂單中將該半成品的下階物料包括進來,而不用再另外開立該半成品的生產(chǎn)訂單,因此,在出現(xiàn)某半成品沒有庫存的情況時,可以減少開立生產(chǎn)訂單的數(shù)量,節(jié)約資源,并且可以提高系統(tǒng)對用戶需求及生產(chǎn)計劃的響應效率。
其中,使用哪個物料清單可以是由用戶指定的,此時,生產(chǎn)訂單信息還包
括物料清單編碼,信息獲取單元U402包括
第一清單確定子單元,用于獲取指定的物料清單并確定為所述所需的物料清單。
或者,也可以由系統(tǒng)自動進行確定,此時,信息獲取單元U402包括第二清單確定子單元,用于將所述成品編碼對應的物料清單中默認的主物料清單確定為所述所需的物料清單。
具體的,信息獲取單元LM02可以包括
第一獲取子單元,用于如果當前展開層次小于等于用戶指定的展開階數(shù),并且展開的物料為原材料,則直接獲取該原材料的物料相關信息,并計算該原材料的需求數(shù)量;
第二獲取子單元,用于如果當前展開的物料為半成品,并且展開層次小于用戶指定的展開階數(shù),則繼續(xù)向下層展開,直到展開層次等于用戶指定的展開階數(shù);并逐階計算各物料對應的需求數(shù)量;
第三獲取子單元,用于如果當前展開的物料為虛擬件,則將該虛擬件逐層展開,直到展開的物料為非虛擬件,并計算各非虛擬件的需求數(shù)量。
在實際應用中,'該裝置還可以包括
展開校驗單元,用于當生成訂單事務類型是否為標準生產(chǎn)訂單時,根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單。
計算校驗單元,用于當生產(chǎn)訂單的計劃開始時間在子項物料的生效日期和失效日期之間時,計算該子項物料的需求數(shù)量。
為了更加接近實際應用中的情況,該裝置還包括
生產(chǎn)數(shù)量修訂單元,用于根據(jù)產(chǎn)品的成品率修訂產(chǎn)品的生產(chǎn)數(shù)量;此時,信息獲取單元U402可以包括
第一計算子單元,用于根據(jù)各層子項物料的單位用量信息及所述修訂后的生產(chǎn)數(shù)量,逐階計算各物料對應的需求數(shù)量。
為了將物料的損耗情況也考慮進來,信息獲取單元U402還可以包括笫二計算子單元,用于根據(jù)物料清單中記錄的各物料的單位用量、物料損耗率、產(chǎn)品的成品率及產(chǎn)品的生產(chǎn)數(shù)量,逐階計算各物料對應的需求數(shù)量。
以上對本發(fā)明所提供的生成生產(chǎn)訂單備料分錄的方法及裝置,進行了詳細
施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應用范圍上均會有改變之處。綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。
權(quán)利要求
1、一種生成生產(chǎn)訂單備料分錄的方法,其特征在于,包括獲取生產(chǎn)訂單信息;所述生產(chǎn)訂單信息至少包括成品編碼、生產(chǎn)數(shù)量及物料清單展開階數(shù);確定所需的物料清單,根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單,獲取各層中的物料信息,并逐階計算各物料對應的需求數(shù)量;所述物料信息至少包括物料編碼及物料名稱;將所述物料信息及對應的需求數(shù)量復制到生產(chǎn)訂單,生成生產(chǎn)訂單備料分錄。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述生產(chǎn)訂單信息還包括 物料清單編碼,所述確定所需的物料清單包括獲取指定的物料清單并確定為所述所需的物料清單。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述確定所需的物料清單 包括將所述成品編碼對應的物料清單中默認的主物料清單確定為所述所需的 物料清單。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述生產(chǎn)訂單信 息逐階展開物料清單,獲取各層中的物料信息,并逐階計算各物料對應的需求 數(shù)量,包括如果當前展開層次小于等于用戶指定的展開階數(shù),并且當前展開的物料為 原材料,則直接獲取該原材料的物料相關信息,并計算該原材料的需求數(shù)量;如果當前展開的物料為半成品,并且當前展開層次小于用戶指定的展開階 數(shù),則繼續(xù)向下層展開,直到展開層次等于用戶指定的展開階數(shù);并逐階計算 各物料對應的需求數(shù)量;如果當前展開的物料為虛擬件,則將該虛擬件逐層展開,直到展開的物料 為非虛擬件,并計算各非虛擬件的需求數(shù)量。
5、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述生產(chǎn)訂單信 息逐階展開物料清單之前還包括當生成訂單事務類型為標準生產(chǎn)訂單時,根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單。
6、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述逐階計算各物料對應的需求數(shù)量之前還包括當生產(chǎn)訂單的計劃開始時間在物料的生效日期和失效日期之間時,計算該 物料的需求數(shù)量。
7、 根據(jù)權(quán)利要求l所述的方法,其特征在于,還包括 根據(jù)產(chǎn)品的成品率修訂產(chǎn)品的生產(chǎn)數(shù)量; 所述逐階計算各物料對應的需求數(shù)量包括根據(jù)各層物料的單位用量信息及所述修訂后的生產(chǎn)數(shù)量,逐階計算各物料 對應的需求數(shù)量。
8、 根據(jù)權(quán)利要求1或7所述的方法,其特征在于,所述逐階計算各物料 對應的需求數(shù)量包括根據(jù)物料清單中記錄的各物料的單位用量、物料損耗率、產(chǎn)品的成品率及 產(chǎn)品的生產(chǎn)數(shù)量,逐階計算各物料對應的需求數(shù)量。
9、 一種生成生產(chǎn)訂單備料分錄的裝置,其特征在于,包括 接口單元,用于獲取生產(chǎn)訂單信息;所述生產(chǎn)訂單信息至少包括成品編碼、生產(chǎn)數(shù)量及物料清單展開階數(shù);信息獲取單元,用于確定所需的物料清單,根據(jù)所述生產(chǎn)訂單信息逐階展 開物料清單,獲取各層中的物料信息,并逐階計算各物料對應的需求數(shù)量;所 述物料信息至少包括物料編碼及物料名稱;信息復制單元,用于將所述物料信息及對應的需求數(shù)量復制到生產(chǎn)訂單, 生成生產(chǎn)訂單備料分錄。 '
10、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述生產(chǎn)訂單信息還包括物料清單編碼,所述信息獲取單元包括第一清單確定子單元,用于獲取指定的物料清單并確定為所述所需的物料清單。
11、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述信息獲取單元包括 第二清單確定子單元,用于將所述成品編碼對應的物料清單中默認的主物料清單確定為所述所需的物料清單。
12、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述信息獲取單元包括第一獲取子單元,用于如果當前展開層次小于等于用戶指定的展開階數(shù), 并且展開的物料為原材料,則直接獲取該原材料的物料相關信息,并計算該原材料的需求數(shù)量;第二獲取子單元,用于如果當前展開的物料為半成品,并且展開層次小于 用戶指定的展開階數(shù),則繼續(xù)向下層展開,直到展開層次等于用戶指定的展開 階數(shù);并逐階計算各物料對應的需求數(shù)量;第三獲取子單元,用于如果當前展開的物料為虛擬件,則將該虛擬件逐層 展開,直到展開的物料為非虛擬件,并計算各非虛擬件的需求數(shù)量。
13、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,還包括 展開校驗單元,用于當生成訂單事務類型為標準生產(chǎn)訂單時,根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單。
14、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,還包括 計算沖L驗單元,用于當生產(chǎn)訂單的計劃開始時間在物料的生效日期和失效曰期之間時,計算該物料的需求數(shù)量。
15、 根據(jù)權(quán)利要求9所述的裝置,其特征在于,還包括 生產(chǎn)數(shù)量修訂單元,用于根據(jù)產(chǎn)品的成品率修訂產(chǎn)品的生產(chǎn)數(shù)量; 所述信息獲取單元包括第一計算子單元,用于根據(jù)各層物料的單位用量信息及所述修訂后的生產(chǎn) 數(shù)量,逐階計算各物料對應的需求數(shù)量。
16、 根據(jù)權(quán)利要求9或15所述的裝置,其特征在于,所述信息獲取單元包括 '第二計算子單元,用于根據(jù)物料清單中記錄的各物料的單位用量、物料損耗率、產(chǎn)品的成品率及產(chǎn)品的生產(chǎn)數(shù)量,逐階計算各物料對應的需求數(shù)量。
全文摘要
本發(fā)明公開了生成生產(chǎn)訂單備料分錄的方法及裝置,其中,所述方法包括獲取生產(chǎn)訂單信息;所述生產(chǎn)訂單信息至少包括成品編碼、生產(chǎn)數(shù)量及物料清單展開階數(shù);確定所需的物料清單,根據(jù)所述生產(chǎn)訂單信息逐階展開物料清單,獲取各層中的物料信息,并逐階計算各物料對應的需求數(shù)量;所述物料信息至少包括物料編碼及物料名稱;將所述物料信息及對應的需求數(shù)量復制到生產(chǎn)訂單,生成生產(chǎn)訂單備料分錄。通過本發(fā)明,在出現(xiàn)某半成品沒有庫存的情況時,可以減少開立生產(chǎn)訂單的數(shù)量,節(jié)約資源,并且可以提高系統(tǒng)對用戶需求及生產(chǎn)計劃的響應效率。
文檔編號G06Q10/00GK101673373SQ20091017343
公開日2010年3月17日 申請日期2009年9月16日 優(yōu)先權(quán)日2009年9月16日
發(fā)明者吳永毅 申請人:金蝶軟件(中國)有限公司