李罡



由于電纜行業生產過程的特殊性以及生產過程中涉及到的工序和原材料較多,準確計算出原材料的損耗,成為電纜行業成本核算的核心。
本文以電纜產品PTYA23為例來進行分析,PTYA23的工序有裸線、絕緣、攪合、成纜、綜護、裝鎧、外護套七個工序,在PTYA23中,這七個工序呈線性排列,但是在其它產品的工序中,可能存在并發的工序,我們可以把所有產品的工序歸納成一個倒過來的二叉樹結構。為什么是倒過來的二叉樹,因為線纜產品的并發工序只是在前面的工序才有,越往后面越收縮到一條工序上。針對PTYA23的工序,我們可以生成如圖1的二叉樹結構。
通過圖1我們可以看出,根節點是“外護套”,剩下的6個工序都是葉子節點,從邏輯結構上來說,工序順序是從“裸線”節點開始,到“外護套”節點終止,是個倒過來的二叉樹,但是我們在數據庫里記錄的時候,可以將這個倒二叉樹顛倒過來,比如第一道工序“裸線”,從上圖來看,它的下一道工序是“絕緣”,但是我們在數據庫中記錄的時候,記錄成“裸線”的上一道工序是“絕緣”,以此類推,我們可以在數據庫中記錄如表1所示的工藝流程表數據:
這樣做的好處就是數據維護人員,在維護產品的工藝流程時,可以按照邏輯順序輸入,但是系統在記錄到數據庫時,自動把下一道工序變成上一道工序,這樣系統數據庫中記錄的是正常的二叉樹結構。既方便了數據輸入人員,又符合數據庫二叉樹的記錄規則。
PTYA23的材料消耗定額表,如表2所示。
分析表2中的材料消耗,首先是銅桿,可以看出投入銅桿的工序是“裸線”,銅桿在“裸線”工序的消耗為0.1,然后順序往下,銅桿在“絕緣”工序的消耗為3.2,在“絞合”序的消耗為0.3。
再分析第二個材料HDPE絕緣料,投入這個材料的工序是“絕緣”,HDPE絕緣料在“絕緣”工序的損耗是2.5,在“絞合”工序的損耗是0.3。
分析到這里會發現,在“絞合”之前的工序,也就是“裸線”和“絕緣”工序,投入的原材料,在“絞合”這個工序的消耗都是0.3。以此類推,可以得出某道工序,對這道工序之前工序投入的原材料,在這道工序上的消耗都是一樣的。這里有個重點,就是這道工序之前工序投入的原材料。這道工序本身投入的原材料可能不止一個,這幾個當前工序投入的原材料,在當前工序的消耗是不一樣的。比如“綜護”工序,這道工序對之前幾道工序投入的原材料消耗都是0.1,但是這道工序本身投入的原材料有“鋁塑復合帶”、“PE內護料”、“隔氧層料”,這三個材料在“綜護”工序的消耗是不一樣的,分別是1.0、1.5、2.5。
我們把當前工序對當前工序投入原材料的消耗叫做“初次損耗”,把當前工序對之前工序投入的原材料產生的損耗叫做“工序損耗”。以此可以得出,某種原材料的總損耗,應該是在它第一次投入的工序的初次損耗,加上之后所有工序的損耗累加。公式如(1)所示:
p=a+∑b(1)
其中p代表原材料的總損耗,a代表初次損耗,b代表工序損耗。
再結合圖1的二叉樹模型,可以進一步得出:某個原材料的總損耗,應該等于該原材料第一次投入的工序節點的初次損耗,加上該工序節點所有父節點(從邏輯上來說,是一個倒過來的二叉樹,往下尋找節點就是查找父節點)工序損耗的累加。
在計算一個原材料的總損耗時,首先根據BOM表讀取該材料第一次投入的工序和在該工序的初次損耗,根據該工序以及工藝流程表,遍歷出該工序的所有父節點,以及這些父節點的工序消耗,將父節點的工序消耗累加,在加上剛才在BOM表中查詢到的初次消耗,即為該原材料的總消耗。
上面是對成品還原計算方法的分析,下面分析半成品還原的方法。結合圖1的二叉樹模型,我們可以看出,一個半成品的截止工序,一定是在這個半成品起始工序的父節點集合內。而一個半成品的起始工序,也一定在截止工序的子節點集合之內。
如果還原一個半成品,我們繼續以PTYA23為例,給定起始工序是“絕緣”,截止工序是“綜護”。首先,通過工藝流程表,查詢出PTYA23所有工藝流程節點的集合A,然后在A中遍歷出“絕緣”工序的所有父節點集合B,這個集合B包括“絞合”、“成纜”、“綜護”、“裝鎧”、“外護套”,然后在集合B中查找截止工序“綜護”的所有子節點集合C,這時的C中應該包括“絕緣”、“絞合”、“成纜”、“綜護”,也就是節點“絕緣”到節點“綜護”之間所有節點。在集合C中,遍歷每一個節點,讀取該節點的在BOM中的投入材料、投入材料的用量和初次損耗,以及該節點在C集合中的所有父節點的工序損耗累加,就可以計算出集合C中,每個節點投入的原材料的損耗,即還原出該PTYA23半成品的原材料損耗和用量。
這個數學模型的優點就是系統初始化的時候,只維護成品的BOM結構和工藝流程,在進行半成品還原的時候,只要給定起始工序和截止工序,就能計算出半成品的材料用量。避免了在系統初始化時,將每個成品和半成品都賦予編碼,記錄每個編碼的BOM數據,造成數據庫龐大且冗余,大大減少系統初始化的工作量。本文的計算方法是按照二叉樹的模型進行設計的,所以這種方法同樣適用于有并發工序的其它產品。但是這種計算方法也有一定的弊端,就是在計算原材料損耗的時候,每種原材料至少要進行兩次遞歸查詢,對服務器硬件的要求較高。
[責任編輯:王偉平]