在TEAMCENTER中,BOM配置是一個(gè)比較廣泛的概念,可以理解為“通過(guò)一定的條件得到滿足要求的BOM結(jié)構(gòu)”。因此在TEAMCENTER系統(tǒng),通過(guò)版本規(guī)則和有效性篩選BOM行,和通過(guò)變量驅(qū)動(dòng)獲得實(shí)例BOM都稱為“配置”。
TEAMCENTER系統(tǒng)中通過(guò)變量控制BOM結(jié)構(gòu)有兩種方式:傳統(tǒng)變量(classic variant)和模塊化變量(modular variant)。前者可理解為一種自頂向下的方法,后者可視為一種基于模塊化的,自下向上的方法。
圖1 BOM配置
本文介紹基于變量的BOM配置方法,重點(diǎn)介紹“模塊化變量”方法,“傳統(tǒng)變量”簡(jiǎn)要介紹過(guò)程。
一、傳統(tǒng)變量方法和模塊化變量概述
所有通過(guò)變量控制BOM結(jié)構(gòu)的方法,從變量的角度看實(shí)際都涉及四個(gè)方面的工作:
(1)變量的定義;
(2)變量之間的規(guī)則;
(3)變量與零部件的驅(qū)動(dòng)關(guān)系;
(4)配置的定義及實(shí)例化BOM的生成。
TEAMCENTER中也不例外。傳統(tǒng)變量(classic variant)和模塊化變量(modular variant)的方法都需要做上面的四步工作,而將它們區(qū)分的關(guān)鍵因素是看變量是主要定義在頂層零部件上,還是主要定義在模塊化的子組件上。
對(duì)于傳統(tǒng)變量方法,一般情況下變量(option)一般定義在頂層,然后在下層零部件上進(jìn)行分配,分配的時(shí)候可以跨級(jí),并不是只能分配給直接下級(jí)。如下圖:
圖2 傳統(tǒng)變量方法
在下層零部件上分配完變量(稱為變量條件,variant condition)后,便可以通過(guò)定義具體的配置(configuration),篩選出實(shí)例化的BOM。
圖3 篩選實(shí)例化BOM
在傳統(tǒng)變量方法中,對(duì)變量(option)的控制(定義,維護(hù))主要在頂層零部件,下層結(jié)構(gòu)只管應(yīng)用(當(dāng)然,下層也可以定義變量,并且定義的變量在頂層零件創(chuàng)建配置的時(shí)候會(huì)出現(xiàn)在配置選項(xiàng)中,但變量主要還是定義在頂層零件上),是一種自頂向下的方法。對(duì)于下層結(jié)構(gòu)而言,零部件的使用條件是定義在頂層零部件的環(huán)境下的,若換到另外的頂層零部件上則需要重新定義。這一方面使得零部件的使用條件比較靈活,但是另一方面變量條件的重用率卻比較低。
設(shè)想,在上圖中,對(duì)于子組件“Cylinder Block”,如果其下級(jí)零部件“Long Block”的出現(xiàn)條件永遠(yuǎn)是“ENG=V6L”,“Short Block”的出現(xiàn)條件永遠(yuǎn)是“ENG=V6S”。則在傳統(tǒng)變量中,每一個(gè)用到“Cylinder Block”的頂層零部件都需要定義相同的變量和變量值(ENG=V6L,V6S),并且定義“Long Block”和“Short Block”的變量條件,重復(fù)工作。對(duì)于這種子組件,實(shí)際上它的下級(jí)結(jié)構(gòu)的出現(xiàn)條件已經(jīng)與頂層零部件無(wú)關(guān),是獨(dú)立于設(shè)計(jì)環(huán)境,可以單獨(dú)定義在子組件內(nèi)部的。像這種具有獨(dú)立性的子組件可以在子組件上直接定義變量并分配給下級(jí),然后將在子組件上定義的變量有條件的開放并傳遞到頂層零部件上。這種自下向上的方法在TEAMCENTER中稱為“模塊化變量”的方法(modular variant),其中定義了變量的子組件稱為“模塊”(module)。
下文以上面的結(jié)構(gòu)為例子分別介紹傳統(tǒng)變量和模塊化變量的具體使用方法。
二、傳統(tǒng)變量(classic variant)
在傳統(tǒng)變量方法中,選項(xiàng)(option)和選項(xiàng)規(guī)則(option rule checks)主要定義在頂層零部件上(例子中的Engine Family)。下級(jí)零部件直接使用這些選項(xiàng)(變量條件,variant condition),一般流程如下圖?梢詺w結(jié)為三個(gè)主要過(guò)程:
(1)定義結(jié)構(gòu)和選項(xiàng)(包括默認(rèn)選項(xiàng)值和選項(xiàng)規(guī)則檢查);
(2)定義選項(xiàng)與下級(jí)零部件的對(duì)應(yīng)關(guān)系(變量條件)
(3)配置BOM(定義配置)
圖4 定義結(jié)構(gòu)和選項(xiàng)
(1)定義結(jié)構(gòu)和選項(xiàng)
在“結(jié)構(gòu)管理器”中定義頂層零部件的BOM結(jié)構(gòu),數(shù)據(jù)面板中(點(diǎn)擊工具條上的“顯示/隱藏?cái)?shù)據(jù)面板”)。系統(tǒng)默認(rèn)顯示模塊化變量的面板,需要切換到傳統(tǒng)變量控制面板。如下圖:
圖5 傳統(tǒng)變量控制面板
在頂層零部件(此處為Engine EPL)的“變量”選項(xiàng)卡上,分別定義選項(xiàng),選項(xiàng)的默認(rèn)值,和選項(xiàng)規(guī)則(option rule checks)
圖6 “變量”選項(xiàng)卡
(2)定義選項(xiàng)與下級(jí)零部件的對(duì)應(yīng)關(guān)系
在結(jié)構(gòu)BOM行中選擇要定義選項(xiàng)的BOM行,選擇工具條上的“變量條件”(option condition)進(jìn)行變量條件定義。在頂層零部件上定義的選項(xiàng)可以跨級(jí)使用,并非只能在直接下級(jí)上使用。定義了變量條件的BOM行會(huì)出現(xiàn)“V”字圖標(biāo)
圖7 變量條件定義
(3)定義配置
當(dāng)所有的變量條件定義完成后,可以對(duì)頂層零部件創(chuàng)建配置,篩選出符合配置條件的零部件。(要在BOM行中不顯示未配置的零部件,需要取消勾選:視圖顯示未配置的變量)
圖8 頂層零部件創(chuàng)建配置
三、模塊化變量
在應(yīng)用傳統(tǒng)變量方法時(shí),我們的主要關(guān)注點(diǎn)在頂層零部件上。設(shè)計(jì)是從頂層零部件開始,設(shè)計(jì)方向是自上而下。但在使用模塊化變量方法時(shí)則正好相反,我們的主要關(guān)注點(diǎn)在下級(jí)組件或者說(shuō)模塊上,定義模塊時(shí)可以不關(guān)心它應(yīng)用于哪個(gè)頂層零部件,而是關(guān)心模塊本身的結(jié)構(gòu),選項(xiàng)和下級(jí)零部件的變量條件。因此可以說(shuō)設(shè)計(jì)是從模塊開始的,設(shè)計(jì)方向是自下而上(從模塊到頂層零部件)。在這里,模塊的合理定義成為關(guān)鍵。若模塊結(jié)構(gòu)劃分或選項(xiàng)定義不合理,使得模塊的重用率不高,或根本不能在不同頂層零部件之間借用,則會(huì)喪失模塊化變量方法的優(yōu)勢(shì),這時(shí)應(yīng)該考慮用傳統(tǒng)變量的方法。
模塊化變量方法中,模塊的選項(xiàng)(option)分為“公開”(public)和“私有”(private)兩種。“公開”選項(xiàng)(public option)對(duì)外可見,可以“傳遞”(present)到頂層零部件上使用,也可以接收頂層零部件傳遞來(lái)的變量值(通過(guò)child module constrain進(jìn)行)。而“私有”選項(xiàng)(private option)則對(duì)外不可見,只能在模塊內(nèi)部使用。因此模塊的“公開選項(xiàng)”可以看成是模塊對(duì)外的一個(gè)接口,用于模塊與頂層零部件之間交換變量信息。
在模塊內(nèi)部,選項(xiàng)之間(包括public和private)之間可以通過(guò)內(nèi)部約束(internal module constrain)約束個(gè)選項(xiàng)值之間的關(guān)系。選項(xiàng)驗(yàn)證(error checks)用于檢查各選項(xiàng)之間的容斥關(guān)系。與傳統(tǒng)變量方法一樣,選項(xiàng)通過(guò)變量條件(variant condition)對(duì)應(yīng)到模塊的下級(jí)零部件上。
既然模塊定義了選項(xiàng),并且是可配置的,那么模塊就不是一個(gè)傳統(tǒng)意義上的總成,而是一個(gè)“超級(jí)總成”,可以根據(jù)具體配置產(chǎn)生出多個(gè)總成實(shí)例。在模塊化變量中,用“變量零部件”(Variant Item,簡(jiǎn)稱VI)來(lái)表示具體的總成實(shí)例。在一個(gè)頂層零部件下,針對(duì)某一個(gè)具體的配置,所有的模塊,包括頂層零部件本身都可以生成VI,最終由VI和其他非模塊化零部件構(gòu)成實(shí)例化BOM。在生成VI的過(guò)程中,如果模塊的某一配置已經(jīng)存在對(duì)應(yīng)的VI,則調(diào)用已經(jīng)存在的VI。
圖9 生成VI的過(guò)程
上圖示意了模塊各概念之間的關(guān)系。在這里,模塊可看成是一個(gè)獨(dú)立,封閉的單元,對(duì)外通過(guò)“公開選項(xiàng)”與外界傳遞變量信息。
下面以一個(gè)簡(jiǎn)單例子,描述模塊化變量使用的一般過(guò)程。注意這里只是演示一般過(guò)程,實(shí)際使用情況可能比這里復(fù)雜,但基本過(guò)程大致相同。
圖10 演示一般過(guò)程
【說(shuō)明:上例中,Mainstream Module是一個(gè)模塊,有兩個(gè)公開選項(xiàng):ENG Type和HasFW。選項(xiàng)的使用條件(變量條件)如圖所述。選項(xiàng)ENG Type被傳遞到頂層零部件Engine ELP2,同時(shí)選項(xiàng)HasFW的值受頂層零部件選項(xiàng)TRANS的控制!
基本過(guò)程如下圖所示,可歸結(jié)為四個(gè)主要過(guò)程:
(1)模塊定義
(2)父模塊定義(或頂層零部件定義)
(3)變量對(duì)接
(4)創(chuàng)建配置,生成實(shí)例化BOM
圖11 基本過(guò)程
(1)模塊定義
在“結(jié)構(gòu)管理器”中定義頂層零部件的BOM結(jié)構(gòu),然后點(diǎn)擊“顯示/隱藏?cái)?shù)據(jù)面板”顯示出數(shù)據(jù)面板。系統(tǒng)默認(rèn)的模塊化變量的面板。如下圖
圖12 模塊化變量面板
通過(guò)向?qū)?chuàng)建模塊選項(xiàng)。在創(chuàng)建公開選項(xiàng)前,可以將通用的選項(xiàng)創(chuàng)建為全局選項(xiàng)(Global option),然后在創(chuàng)建模塊選項(xiàng)的時(shí)候借用。
圖13 創(chuàng)建模塊選項(xiàng)
選項(xiàng)創(chuàng)建完成后,在選項(xiàng)列表中,雙擊選項(xiàng),添加選項(xiàng)的值和缺省值:
圖14 添加選項(xiàng)的值和缺省值
所有選項(xiàng)定義完成,可以通過(guò)模塊內(nèi)部約束定義選項(xiàng)值之間的約束關(guān)系;通過(guò)定義變量條件,建立選項(xiàng)與下級(jí)零部件之間的對(duì)應(yīng)關(guān)系。
圖15 定義變量條件
(2)父模塊定義(或頂層零部件定義)
父模塊的定義與模塊定義過(guò)程相同,主要定義選項(xiàng),選項(xiàng)約束。在搭建父模塊結(jié)構(gòu)時(shí),將定義好的模塊插入到父模塊中。父模塊中,一般不需要定義模塊的變量條件。
圖16 父模塊的定義
(3)變量對(duì)接
變量對(duì)接是在父模塊選項(xiàng)與模塊選項(xiàng)之間建立關(guān)系。主要有兩種:傳遞模塊選項(xiàng)、建立子模塊約束
傳遞模塊選項(xiàng)是將模塊的選項(xiàng)傳遞到父模塊上,使其在創(chuàng)建配置時(shí)可用,就像該選項(xiàng)是在父模塊上定義的一樣;
建立子模塊約束是用父模塊的選項(xiàng)值控制子模塊的選項(xiàng)值。
注意:上述操作都是針對(duì)模塊的公開選項(xiàng)(public option)進(jìn)行的,模塊的私有選項(xiàng)(private option)不能進(jìn)行上述操作,體現(xiàn)了公開選項(xiàng)的接口性質(zhì)。
圖17 變量對(duì)接
(4)創(chuàng)建配置,生成實(shí)例化BOM
當(dāng)父模塊(或頂層零部件)結(jié)構(gòu)和與下級(jí)模塊的變量對(duì)接完成后,便可以對(duì)父模塊(或頂層零部件)創(chuàng)建配置(要在BOM行中不顯示未配置的零部件,需要取消勾選:視圖顯示未配置的變量),形成實(shí)例化BOM。上文說(shuō)過(guò),對(duì)于各模塊,可以生產(chǎn)變量零部件(VI),最終由VI構(gòu)成實(shí)例化BOM,進(jìn)行發(fā)布和下游傳遞。
圖18 實(shí)例化BOM
四、兩種方法的比較
當(dāng)然,在傳統(tǒng)變量方法中,上例中選項(xiàng)(ENG=V6L,V6S)也可以直接定義在“Cylinder Block”上,當(dāng)“Cylinder Block”被用到“Engine EPL”上,用戶在創(chuàng)建配置(Configuration)時(shí),選項(xiàng)(ENG=V6L,V6S)也會(huì)出現(xiàn)。但是卻存在以下缺點(diǎn):
(1)“Cylinder Block”上定義的所有選項(xiàng)都會(huì)出現(xiàn)到頂層零部件配置上,無(wú)法對(duì)模塊定義一些內(nèi)部使用的變量;
(2)當(dāng)多個(gè)下級(jí)模塊存在相同的變量時(shí),頂層零部件配置頁(yè)面上會(huì)出現(xiàn)多個(gè)變量;若將相同的變量定義在頂層零部件上,則破壞了模塊的完整性和獨(dú)立性;
(3)頂層零部件上定義的變量無(wú)法影響下層零部件上的變量。
而使用模塊化變量方法,則不會(huì)有上述問題。當(dāng)然這不是說(shuō)模塊化變量方法就比傳統(tǒng)變量方法好。當(dāng)企業(yè)能夠定義出模塊,并希望最大限度的進(jìn)行模塊重用時(shí),模塊化變量方法是最佳選擇。但如果業(yè)務(wù)無(wú)法定義出獨(dú)立的模塊,或定義的模塊通用程度不高,而又希望做BOM配置時(shí),傳統(tǒng)變量方法是最佳選擇。所以,兩種方法各有優(yōu)劣,應(yīng)該根據(jù)企業(yè)的實(shí)際情況選擇。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:Teamcenter基于變量的BOM配置方法
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10820619457.html