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