對象數(shù)據(jù)元素的選擇性鎖定的制作方法
【專利摘要】一種產(chǎn)品數(shù)據(jù)管理系統(tǒng)、方法及介質(zhì)。一種方法包括接收(205)針對指定類型的數(shù)據(jù)的鎖定請求。該方法包括響應于鎖定請求對該鎖定請求進行處理,所述處理包括響應于鎖定請求(205)來鎖定(210)多個數(shù)據(jù)對象的指定類型的數(shù)據(jù)。該方法包括接收(215)對多個數(shù)據(jù)對象中的至少一個數(shù)據(jù)對象的指定類型的數(shù)據(jù)的至少一個改變。該方法包括根據(jù)所接收的改變通過改變指定類型的數(shù)據(jù)來更新并保存(220)多個對象中的至少一個對象。
【專利說明】對象數(shù)據(jù)元素的選擇性鎖定
[0001]本發(fā)明涉及根據(jù)獨立權(quán)利要求所述的用于對對象數(shù)據(jù)元素進行選擇性鎖定的方法、產(chǎn)品數(shù)據(jù)管理數(shù)據(jù)處理系統(tǒng)以及計算機可讀介質(zhì)。
【技術(shù)領(lǐng)域】
[0002]本公開內(nèi)容總體上涉及計算機輔助設(shè)計、可視化和制造系統(tǒng)(“CAD系統(tǒng)”),產(chǎn)品生命周期管理(“PLM”)系統(tǒng),項目和進度管理系統(tǒng)以及為產(chǎn)品和其他項管理數(shù)據(jù)的系統(tǒng)(單獨地和共同地,產(chǎn)品數(shù)據(jù)管理(“PDM”)系統(tǒng))。
【背景技術(shù)】
[0003]PDM系統(tǒng)可以幫助用戶創(chuàng)建和管理項目進度表,該項目進度表在其他功能之中包括任務的調(diào)度。PDM系統(tǒng)還維持進度表、任務以及有時可以通過不同處理進行編輯的其他數(shù)據(jù)對象。
【發(fā)明內(nèi)容】
[0004]各種公開的實施方式涉及用于在進度表管理功能中,特別是在被配置成執(zhí)行如本文所述的處理的PDM系統(tǒng)中具有特定效用的選擇性數(shù)據(jù)鎖定和編輯的系統(tǒng)及方法。
[0005]各種實施方式包括PDM系統(tǒng)、方法及介質(zhì)。一種方法包括接收針對指定類型的數(shù)據(jù)的鎖定請求。該方法包括響應于鎖定請求對該鎖定請求進行處理,其包括響應于鎖定請求對多個數(shù)據(jù)對象鎖定指定類型的數(shù)據(jù)。該方法包括對多個數(shù)據(jù)對象中的至少一個數(shù)據(jù)對象接收對指定類型的數(shù)據(jù)的至少一個改變。該方法包括根據(jù)所接收的改變通過改變指定類型的數(shù)據(jù)來更新并保存多個對象中的至少一個對象。
[0006]上述內(nèi)容大致概述了本公開內(nèi)容的特征和技術(shù)優(yōu)點,以使得本領(lǐng)域普通技術(shù)人員能夠較好地理解下述【具體實施方式】。在下`文中,將描述本公開內(nèi)容的形成權(quán)利要求的主題的另外的特征及優(yōu)點。本領(lǐng)域普通技術(shù)人員將會理解:他們可以容易地使用所公開的構(gòu)思和【具體實施方式】為基礎(chǔ)來修改或設(shè)計用于實現(xiàn)與本公開內(nèi)容相同目的的其他結(jié)構(gòu)。本領(lǐng)域普通技術(shù)人員也將會認識到:這樣的等同結(jié)構(gòu)不脫離本公開內(nèi)容的最寬泛形式的精神和范圍。
[0007]在進行下面的【具體實施方式】之前,對本專利文件全文中使用的某些詞或短語的定義進行說明是有利的:術(shù)語“包括”(include和comprise)及其派生詞表示沒有限制的包括;術(shù)語“或”是包括性的,表示“和/或”;短語“與……相關(guān)聯(lián)”和“與其關(guān)聯(lián)”及其派生詞
可以表示包括、被包括在......內(nèi)、與......互連、包含、包含在......內(nèi)、連接到或與......連接、
耦接到或與……耦接、與……可通信、與……配合、交錯、并置、接近、縛接到或與……縛接、具有、具有……的屬性等;術(shù)語“控制器”表示控制至少一個操作的任何設(shè)備、系統(tǒng)或其部件,而不管這樣的設(shè)備是以硬件、固件、軟件還是以它們中的至少兩個的某種組合實施的。應注意,與任何特定控制器相關(guān)聯(lián)的功能可以是集中式的或分布式的,無論本地的還是遠程的。在本專利文獻全文中,提供了對某些詞和短語的定義,但本【技術(shù)領(lǐng)域】的普通技術(shù)人員將會理解:在許多(即便不是大部分)情況下,這樣的定義適用于該定義的詞和短語的當前以及將來的應用中。盡管一些術(shù)語可以包括各種各樣的實施方式,但是所附權(quán)利要求可以將這些術(shù)語明確限制到特定實施方式。
【專利附圖】
【附圖說明】
[0008]為了更透徹地理解本公開內(nèi)容及其優(yōu)點,現(xiàn)在參照結(jié)合附圖進行的以下描述,其中相同的附圖標記表示相同的對象,并且在附圖中:
[0009]圖1描繪了根據(jù)所公開的實施方式的實施方式可以在其中實施的數(shù)據(jù)處理系統(tǒng)的框圖;
[0010]圖2至圖5描繪了根據(jù)所公開的實施方式的處理的流程圖;以及
[0011]圖6描繪了根據(jù)所公開的實施方式的并發(fā)更新的示例的簡化框圖。
【具體實施方式】
[0012]在本專利文獻中,下述圖1至圖5和用于描述本公開內(nèi)容的原理的各種實施方式僅是為了說明,而不應當以任何方式被認為限制本公開內(nèi)容的范圍。本領(lǐng)域普通技術(shù)人員將會理解,本公開內(nèi)容的原理可以以任何合適設(shè)置的設(shè)備來實施。將參照示例性的非限制性實施方式來描述本申請的各種創(chuàng)新性教示。
[0013]項目管理系統(tǒng)和其他PDM系統(tǒng)具有高度的相互依賴性。任務依賴于資源的可用性和其他任務的完成。微小的改變可以引起波及到進度表中的多個對象的改變的“波紋”。在協(xié)作系統(tǒng)中,除了其他原因,必須留存這些改變中的每個改變以增強數(shù)據(jù)完整性并且使得允許并行性。由于波紋效應,進行多個微小的改變可以引起相同區(qū)域多次改變,從而引起過多的網(wǎng)絡流量和數(shù)據(jù)庫流量。因為只有最后值是重要的并且不需要任何中間值,所以認為流量是過多的。
[0014]如果鎖定了整個項目,那么系統(tǒng)將不支持并行性。目前還不存在基于某些與物理邊界相對的概念邊界或邏輯邊界來鎖定對象上的區(qū)域、同時允許對同一對象進行并行更新的方法。所公開的實施方式允許進行選擇性鎖定和智能鎖定,而不是功能整體的鎖定。
[0015]為了維護數(shù)據(jù)完整性,對區(qū)域進行鎖定以防止數(shù)據(jù)毀損是重要的。這種方法允許同時訪問一類數(shù)據(jù)并且單個用戶能夠訪問另一類數(shù)據(jù),并且使得能夠減小網(wǎng)絡流量或數(shù)據(jù)庫流量同時維護數(shù)據(jù)完整性和系統(tǒng)并行性。在項目管理系統(tǒng)中,可能只有一個進度表所有者/規(guī)劃者修改計劃,但是潛在的數(shù)百個用戶會需要并行地更新他們的任務狀態(tài)和執(zhí)行數(shù)據(jù)。
[0016]所公開的實施方式包括用于檢查和鎖定各種調(diào)度功能的改進的系統(tǒng)及方法。
[0017]圖1示出了實施方式可以在其中實施的數(shù)據(jù)處理系統(tǒng)的框圖,該數(shù)據(jù)處理系統(tǒng)包括如本文所述具體地被配置成執(zhí)行處理的PDM系統(tǒng)。所述數(shù)據(jù)處理系統(tǒng)包括處理器102,該處理器102連接到二級緩存/橋104,而二級緩存/橋104又連接到局部系統(tǒng)總線106。局部系統(tǒng)總線106可以例如是外圍部件互連(PCI)架構(gòu)總線。在所述示例中連接到局部系統(tǒng)總線的還有主存儲器108和圖形適配器110。圖形適配器110可以連接到顯示器111。
[0018]其他外設(shè),如局域網(wǎng)(LAN)/廣域網(wǎng)/無線(例如WiFi)適配器112,也可以連接到局部系統(tǒng)總線106。擴展總線接口 114將局部系統(tǒng)總線106連接到輸入/輸出(I/O)總線116。I/O總線116連接到鍵盤/鼠標適配器118、磁盤控制器120以及I/O適配器122。磁盤控制器120可以連接到存儲器126,該存儲器126可以是任何合適的機器可用或機器可讀的存儲介質(zhì),其包括但不限于:非易失性硬編碼型介質(zhì)如只讀存儲器(ROM)或可擦除電可編程只讀存儲器(EEPR0M)、磁帶存儲器;以及用戶可記錄型介質(zhì)如軟盤、硬盤驅(qū)動器、只讀光盤存儲器(⑶-ROM)或數(shù)字多功能磁盤(DVD);以及其他已知的光、電或磁存儲設(shè)備。
[0019]在所示的示例中,連接到I/O總線116上的還有音頻適配器124,該音頻適配器124可以連接到揚聲器(未示出)以播放聲音。鍵盤/鼠標適配器118為定點設(shè)備(未示出)如鼠標、軌跡球、軌跡指示器等提供連接。
[0020]本領(lǐng)域普通技術(shù)人員將會理解:圖1示出的硬件可以針對具體的實施而不同。例如,除了所述硬件或代替所述硬件還可以使用其他外圍設(shè)備比如光盤驅(qū)動等。所述示例僅是出于說明的目的而提供的,并非意在表明針對本公開內(nèi)容的架構(gòu)限制。
[0021]根據(jù)本公開內(nèi)容的實施方式的數(shù)據(jù)處理系統(tǒng)包括采用圖形用戶接口的操作系統(tǒng)。該操作系統(tǒng)允許在圖形用戶接口中同時出現(xiàn)多個顯示窗口,其中每個顯示窗口給不同的應用程序或給同一應用程序的不同實例提供接口。用戶可以通過定點設(shè)備來操縱圖形用戶接口中的光標??梢愿淖児鈽说奈恢煤?或產(chǎn)生諸如點擊鼠標按鈕的事件來啟動期望的響應。
[0022]各種商業(yè)操作系統(tǒng)中的一個操作系統(tǒng),如位于華盛頓雷德蒙(Redmond Wash)的Microsoft公司的產(chǎn)品(某一版本的Microsoft Windows?),在適當?shù)男薷闹罂梢员徊捎?。可以根?jù)所描述的本公開內(nèi)容來對操作系統(tǒng)進行修改或創(chuàng)建。
[0023]LAN/WAN/無線適配器112可以連接到網(wǎng)絡130 (其不是數(shù)據(jù)處理系統(tǒng)100的一部分),該網(wǎng)絡130可以是本領(lǐng)域普通技術(shù)人員公知的任何公共或?qū)S脭?shù)據(jù)處理系統(tǒng)網(wǎng)絡或網(wǎng)絡的組合,包括因特網(wǎng)。數(shù)據(jù)處理系統(tǒng)100可以通過網(wǎng)絡130與服務器系統(tǒng)140進行通信,該服務器系統(tǒng)140也不是數(shù)據(jù)處理系統(tǒng)100的一部分,但是該服務器系統(tǒng)140也可以被實施為例如單獨的數(shù)據(jù)處理系統(tǒng)100。
[0024]各種實施方式包括用于檢查和鎖定功能區(qū)域、而不是物理屬性,并且利用這些處理來減小網(wǎng)絡流量和數(shù)據(jù)庫流量的系統(tǒng)及方法。
[0025]更廣泛地講,當PDM系統(tǒng)應用程序上的應用程序試圖對對象(y)的數(shù)據(jù)類型(X)進行更新時,系統(tǒng)將會請求特定于該類型的鎖定,并且在僅在還未針對對象鎖定類型(X)的情況下允許鎖定。例如,這使得不同用戶(Z)能夠?qū)Σ辉谠撏粚ο?X)上的所有類型(X)進行并行更新。
[0026]在各種實施方式中,對象(y)是在PDM系統(tǒng)中實施的進度管理系統(tǒng)中的任務,這些任務包括不同類型(X)的信息。在調(diào)度實施方式中,類型可以包括進度表數(shù)據(jù)、任務調(diào)度數(shù)據(jù)、分配、依賴性、進度表和任務可交付、任務成本信息、任務執(zhí)行信息、進度表成員、通知、日程表或其他。
[0027]通過保持鎖定打開,不需要將中間更新發(fā)送給服務器以增強數(shù)據(jù)完整性。本文所公開的處理可以包括在完成編輯并且解除鎖定之后對服務器上的數(shù)據(jù)進行延遲的更新。
[0028]圖2示出了根據(jù)所公開的實施方式的可以由一個或更多個PDM系統(tǒng)100執(zhí)行來進行具有選擇性鎖定的快速數(shù)據(jù)編輯的處理的流程圖。該處理可以使用基于所公開類型的鎖定以對類型(X)數(shù)據(jù)進行大批量改變。[0029]系統(tǒng)接收針對指定類型的數(shù)據(jù)的鎖定請求(步驟205)。這里使用的“接收”可以包括從存儲加載、從另一系統(tǒng)或處理接收、經(jīng)由與用戶交互而接收以及其他。如本文所述,這可以是顯式鎖定請求或隱式鎖定請求。
[0030]響應于鎖定請求,系統(tǒng)對該鎖定請求進行處理,至少在一些情況下,該處理包括對多個數(shù)據(jù)對象鎖定指定類型的數(shù)據(jù)(步驟210)。
[0031]系統(tǒng)對多個數(shù)據(jù)對象中的至少一個數(shù)據(jù)對象接收對指定類型的數(shù)據(jù)的至少一個改變(步驟215)。當然,在一些情況下,可能不存在改變,并且省略該步驟。
[0032]系統(tǒng)根據(jù)所接收的改變通過改變指定類型的數(shù)據(jù)來更新并保存數(shù)據(jù)對象(步驟220)。在一些情況下,用對指定類型的數(shù)據(jù)的改變來全部更新多個對象;這可以包括但不限于根據(jù)所接收的改變對多個對象進行相同的更新。如果不存在改變,那么不需要更新并保存數(shù)據(jù)對象,并且可以省略該步驟。
[0033]系統(tǒng)可以接收針對指定類型的數(shù)據(jù)的顯式解鎖請求(步驟225)。
[0034]響應于解鎖請求,系統(tǒng)對該鎖定請求進行處理,至少在一些情況下,該處理包括對多個數(shù)據(jù)對象解鎖指定類型的數(shù)據(jù)(步驟230)。
[0035]圖3示出了根據(jù)所公開的實施方式的可以由一個或更多個PDM系統(tǒng)100進行的用于處理顯式鎖定請求的處理的流程圖。
[0036]系統(tǒng)針對指定類型的數(shù)據(jù)接收顯式鎖定請求(步驟305)??梢詮挠脩艚邮赵撜埱蟆榱吮臼纠哪康?,該請求是要對對象(y)中的數(shù)據(jù)類型(X)進行鎖定,并且由用戶(z)做出。
[0037]系統(tǒng)確定是否已經(jīng)針對該對象鎖定了指定類型的數(shù)據(jù)(步驟310)。該步驟還可以包括確定是否已經(jīng)通過用戶做出請求而針對該對象鎖定了指定類型的數(shù)據(jù)。在本示例中,系統(tǒng)確定是否已經(jīng)由用戶(Z)鎖定了對象(y)中的數(shù)據(jù)類型(X)。
[0038]如果已經(jīng)鎖定,處理結(jié)束(步驟315),因為所請求的鎖定已經(jīng)存在。在這種情況下,該步驟可以包括返回類型已經(jīng)通過用戶做出請求而被鎖定的響應,或者在類型已經(jīng)由不同的用戶鎖定的情況下該步驟可以包括返回錯誤。
[0039]系統(tǒng)確定是否允許與請求對應的改變(步驟320)。這可以包括確定是否允許由請求用戶(z)對對象(y)中的類型(X)做出改變。
[0040]如果不允許改變,處理結(jié)束(在步驟325處)。該步驟可以包括返回錯誤。如果允許改變,系統(tǒng)根據(jù)請求對對象(y)中的數(shù)據(jù)類型(X)進行鎖定(步驟330)。在各種實施方式中,不鎖定對象中的其他數(shù)據(jù)類型。
[0041]圖4示出了根據(jù)所公開的實施方式的可以由一個或更多個PDM系統(tǒng)100進行的用于處理顯式解鎖請求的處理的流程圖。
[0042]系統(tǒng)接收針對指定類型的數(shù)據(jù)的顯式解鎖請求(步驟405)??梢詮挠脩艚邮赵撜埱蟆榱吮臼纠哪康?,該請求是要對對象(y)中的數(shù)據(jù)類型(X)進行解鎖,并且由用戶(z)做出。
[0043]系統(tǒng)確定當前是否針對該對象鎖定了特定類型的數(shù)據(jù)(步驟410)。該步驟還可以包括確定是否已經(jīng)通過用戶做出請求而針對該對象鎖定了特定類型的數(shù)據(jù)。在本示例中,系統(tǒng)確定是否已經(jīng)由用戶(z)鎖定了對象(y)中的數(shù)據(jù)類型U)??梢葬槍λ袑ο?y)同時進行該處理。[0044]如果其已經(jīng)被用戶鎖定,系統(tǒng)對對象中的類型進行解鎖(步驟415)。然后該處理結(jié)束(步驟420)。可以針對所有對象(y)同時進行該處理。
[0045]如果還未通過用戶做出請求來針對該對象鎖定特定類型的數(shù)據(jù),處理結(jié)束(步驟425)。該步驟可以包括返回下述錯誤,該錯誤表明不允許用戶針對該對象解鎖該類型。
[0046]圖5示出了根據(jù)所公開的實施方式的可以由一個或更多個PDM系統(tǒng)100進行的用于處理隱式鎖定請求的處理的流程圖。
[0047]系統(tǒng)接收針對對象的指定類型的數(shù)據(jù)進行更新的請求(步驟505)??梢詮挠脩艚邮赵撜埱蟆榱吮臼纠哪康?,該請求是對對象(y)中的類型(X)的數(shù)據(jù)進行更新,并且由用戶(Z)做出。
[0048]系統(tǒng)確定是否已經(jīng)針對該對象鎖定了特定類型的數(shù)據(jù)(步驟510)。該步驟還可以包括確定是否已經(jīng)通過用戶做出請求來針對該對象鎖定了特定類型的數(shù)據(jù)。在本示例中,系統(tǒng)確定是否已經(jīng)由用戶(z)鎖定了對象(y)中的數(shù)據(jù)類型U)??梢葬槍λ袑ο?y)同時進行該處理。
[0049]如果已經(jīng)為該用戶鎖定,系統(tǒng)對所請求的更新進行處理(步驟545)并且該處理結(jié)束(步驟540)。可以針對所有對象(y)同時進行該處理。注意,如果已經(jīng)為該用戶鎖定了數(shù)據(jù)類型,那么在更新之后不會自動解鎖數(shù)據(jù)類型。在這種情況下,可以跳過或省略步驟515至步驟535處所描述的處理。
[0050]系統(tǒng)確定當前是否由不同的用戶鎖定了類型和該對象(步驟515)。如果是,處理結(jié)束(步驟540 )。該步驟可以包括給用戶返回錯誤或其他響應。
[0051]系統(tǒng)確定是否允許所請求的更新(步驟520)。這可以包括確定是否允許由請求用戶(z)對對象(y)中的類型(X)做出改變。
[0052]如果不允許,處理結(jié)束(在步驟540處)。該步驟可以包括返回錯誤。
[0053]如果允許改變,那么系統(tǒng)根據(jù)請求對對象(y)中的數(shù)據(jù)類型(X)進行鎖定(步驟525)。系統(tǒng)對所請求的更新進行處理(步驟530)??梢砸韵嗤姆绞綀?zhí)行步驟530和步驟545,并且這里為了清楚將步驟530和步驟545分開。
[0054]然后,系統(tǒng)可以對對象(y)中的數(shù)據(jù)類型(X)進行解鎖(步驟535),并且該處理結(jié)束(步驟540)??梢葬槍λ袑ο?y)同時進行該處理。
[0055]在各種實施方式中,當將鎖定施加在指定類型的數(shù)據(jù)上時,則僅這些部分被鎖定到用戶并且對于其他用戶被禁止,同時仍然允許對多個對象中的其他數(shù)據(jù)類型進行更新。也就是說,當指定類型的數(shù)據(jù)被鎖定時,可以通過其他處理或用戶更新針對多個對象的不同類型的數(shù)據(jù)。
[0056]本文所使用的各種處理可以用在單個系統(tǒng)上用于快速更新各種數(shù)據(jù),并且可以由多個PDM系統(tǒng)一起使用,尤其是允許多個系統(tǒng)及其用戶同時對當前未被鎖定的任何數(shù)據(jù)類型進行更新。
[0057]在許多應用程序中,不同類型的更新影響了所留存的對象的不同部分。本文所描述的處理使得能夠維護數(shù)據(jù)完整性,同時使得能夠基于邏輯邊界而不是物理邊界對對象的不同區(qū)域進行并行更新。
[0058]圖6示出了在示例性調(diào)度環(huán)境中使用如本文所公開的技術(shù)的并行更新的示例的簡化框圖。[0059]在該圖中,PDM系統(tǒng)600對任務對象610進行維護和存儲。任務對象610包括兩種類型的數(shù)據(jù),即任務調(diào)度數(shù)據(jù)612和任務執(zhí)行數(shù)據(jù)614。任務調(diào)度和執(zhí)行數(shù)據(jù)是非限制性示例,本文所描述的處理也適用于其他類型的數(shù)據(jù)。
[0060]第一處理或第一用戶620諸如進度表的協(xié)調(diào)員可以請求對特定數(shù)據(jù)類型如任務對象610上的任務調(diào)度數(shù)據(jù)612進行鎖定。這使得第一用戶620能夠得到對任務調(diào)度數(shù)據(jù)612的專有權(quán)。
[0061]同時,第二用戶或第二處理630諸如具有較低權(quán)限的分派用戶,被允許在同一任務對象610上對任務執(zhí)行數(shù)據(jù)614進行更新,因為只有任務調(diào)度數(shù)據(jù)612被第一用戶620鎖定。注意,第一用戶620和第二用戶630可以分別在與PDM系統(tǒng)600相比相同的系統(tǒng)或不同的系統(tǒng)上,并且可以分別在PDM系統(tǒng)600的本地或遠程。
[0062]如本文所使用的那樣,“對象”指的是被檢查的數(shù)據(jù)對象。這可以表示物理對象或?qū)ο蟮募先夯蚱渌??!邦愋汀敝傅氖钦M行的更新的類型。單個對象可以具有多個獨立類型的更新?!肮δ苷w的鎖定”指的是施加給整個對象(或?qū)ο蟮募?的鎖定。
[0063]除非另有說明,否則在各種實施方式中可以并發(fā)地、按順序地、以不同的順序執(zhí)行或省略如上所述的各種處理、動作和步驟。
[0064]本領(lǐng)域普通技術(shù)人員將會認識到,為了簡單和清楚起見,適于與本公開內(nèi)容一起使用的所有數(shù)據(jù)處理系統(tǒng)的整個結(jié)構(gòu)和操作將不在此處進行描繪或描述。而是僅描繪和說明為本公開所特有或?qū)斫獗竟_所必需的那樣多的數(shù)據(jù)處理系統(tǒng)內(nèi)容。數(shù)據(jù)處理系統(tǒng)100的其他結(jié)構(gòu)和操作可以遵循本領(lǐng)域已知的各種當前實施和實踐中的任一種。
[0065]重要的是要注意,盡管本公開內(nèi)容包括了在全功能系統(tǒng)情況下的描述,但是本領(lǐng)域普通技術(shù)人員將會理解的是,本公開內(nèi)容的機構(gòu)的至少一部分能夠以各種形式中的任何形式以包含在機器可用、計算機可用或計算機可讀介質(zhì)中的指令的形式進行分布;還要注意的是,本公開內(nèi)容同等地適用,而不管用于實際執(zhí)行該分布的指令或信號承載介質(zhì)或存儲介質(zhì)的特定類型如何。機器可用/可讀或計算機可用/可讀介質(zhì)的例子包括:非易失性硬編碼型介質(zhì),如只讀存儲器(ROM)或可擦除電可編程只讀存儲器(EEPR0M);以及用戶可記錄型介質(zhì),如軟盤、硬盤驅(qū)動器和只讀光盤存儲器(CD-ROM)或數(shù)字多功能盤(DVD)。
[0066]所使用的附圖標記、詞匯的列表
[0067]100數(shù)據(jù)處理系統(tǒng),PDM系統(tǒng)
[0068]102處理器
[0069]104緩存/橋,二級緩存/橋
[0070]106局部系統(tǒng)總線
[0071]108主存儲器
[0072]110圖形適配器
[0073]111顯示器
[0074]112局域網(wǎng)/廣域網(wǎng)/無線適配器
[0075]114擴展總線接口
[0076]116輸入/輸出總線;I/O總線
[0077]118鍵盤/鼠標適配器
[0078]120磁盤控制器[0079]122 I/O 適配器
[0080]124音頻適配器
[0081]126存儲器
[0082]130 網(wǎng)絡
[0083]140服務器系統(tǒng)
[0084]205接收針對指定類型的數(shù)據(jù)的鎖定請求
[0085]210對多個數(shù)據(jù)對象鎖定指定類型的數(shù)據(jù)
[0086]215可選地:接收對指定類型的數(shù)據(jù)的至少一個改變
[0087]220根據(jù)所接收的改變來更新并保存數(shù)據(jù)對象
[0088]225接收針對指定類型的數(shù)據(jù)的顯式解鎖請求
[0089]230響應于解鎖請求對該鎖定請求進行處理,
[0090]305接收針對指定類型的數(shù)據(jù)的鎖定請求
[0091]310確定是否已經(jīng)針對該對象鎖定了特定類型的數(shù)據(jù)
[0092]315如果已經(jīng)鎖定則該處理結(jié)束
[0093]320確定是否允許與請求對應的改變
[0094]325如果不允許則該處理結(jié)束
[0095]330如果允許則根據(jù)請求鎖定對象中的數(shù)據(jù)類型
[0096]405接收針對指定類型的數(shù)據(jù)的顯式解鎖請求
[0097]410確定當前是否鎖定了指定類型的數(shù)據(jù)
[0098]415如果已經(jīng)被用戶鎖定,解鎖對象中的類型
[0099]420處理結(jié)束
[0100]425如果還未通過用戶做出請求來針對該對象鎖定特定類型的數(shù)據(jù),處理結(jié)束
[0101]505接收用于對對象更新指定類型的數(shù)據(jù)的請求
[0102]510確定是否已經(jīng)由同一用戶針對該對象鎖定了特定類型的數(shù)據(jù)
[0103]515確定當前是否由不同的用戶鎖定對象的類型
[0104]520如果步驟515為是,那么確定是否允許所請求的更新
[0105]525如果步驟520為是,那么根據(jù)請求對對象中的數(shù)據(jù)類型進行鎖定
[0106]530對所請求的更新進行處理
[0107]535對對象中的所述數(shù)據(jù)類型進行解鎖
[0108]545如果已經(jīng)為用戶鎖定了指定類型的數(shù)據(jù),那么對所請求的更新進行處理
[0109]600 PDM 系統(tǒng)
[0110]610任務對象
[0111]612任務調(diào)度數(shù)據(jù)
[0112]614任務執(zhí)行數(shù)據(jù)
[0113]620第一用戶,第一處理
[0114]630第二用戶,第二處理
[0115]CAD計算機輔助設(shè)計
[0116]PCI外圍部件互連
[0117]PDM產(chǎn)品數(shù)據(jù)管理[0118]PLM產(chǎn)品生命周期管理
[0119]y 對象
[0120]X對象的類型
[0121]z 用戶
【權(quán)利要求】
1.一種由產(chǎn)品數(shù)據(jù)管理PDM數(shù)據(jù)處理系統(tǒng)執(zhí)行的方法,所述方法包括: 接收針對指定類型(X)的數(shù)據(jù)的鎖定請求(205,305,405); 響應于所述鎖定請求(205,305,405)對所述鎖定請求進行處理, 包括響應于所述鎖定請求(205)來鎖定(210)多個數(shù)據(jù)對象(y)的所述指定類型(x)的數(shù)據(jù); 接收(215)對所述多個數(shù)據(jù)對象(y)中的至少之一的所述指定類型(X)的數(shù)據(jù)的至少一個改變;以及 根據(jù)所接收的改變通過改變所述指定類型(X)的數(shù)據(jù)來更新并保存(220)所述多個對象(y)中的至少之一。
2.根據(jù)權(quán)利要求1所述的方法,其中,對所述鎖定請求(305)進行處理包括確定(310)是否已針對所述多個數(shù)據(jù)對象(y)中的至少之一鎖定所述指定類型(X)的數(shù)據(jù)。
3.根據(jù)權(quán)利要求1或2所述的方法,其中,對所述鎖定請求(305)進行處理包括確定(320)是否允許與所述請求(305)對應的改變。
4.根據(jù)權(quán)利要求1至3中任一項所述的方法,其中,所述PDM數(shù)據(jù)處理系統(tǒng)(600)還接收(505)針對所述指定類型(X)的數(shù)據(jù)的顯式解鎖請求,并且響應于所述解鎖請求對所述解鎖請求進行處理,包括對所述多個數(shù)據(jù)對象(y)的所述指定類型(X)的數(shù)據(jù)進行解鎖(535)。
5.根據(jù)權(quán)利要求4所述的方法,其中,所述解鎖請求(510)對應于用戶(z),并且對所述解鎖請求(510)進行處理包括確定(515)當前是否針對所述對象(y)和所述用戶(z)鎖定了所述指定類型(X)的數(shù)據(jù)。`
6.根據(jù)權(quán)利要求1至5中任一項所述的方法,其中,所述多個對象(y)各自根據(jù)對所述指定類型(X)的數(shù)據(jù)的所述改變來被更新。
7.根據(jù)權(quán)利要求1至3中任一項所述的方法,其中,當所述指定類型的數(shù)據(jù)被鎖定時,能夠通過其他處理(620,630)來更新所述多個對象(y )的不同類型的數(shù)據(jù)。
8.一種產(chǎn)品數(shù)據(jù)管理PDM數(shù)據(jù)處理系統(tǒng)(100,600),包括: 至少一個處理器(102);以及 可訪問存儲器(108,126 ),其中,所述PDM數(shù)據(jù)處理系統(tǒng)(100,600 )被配置成: 接收(205,305,405)針對指定類型(X)的數(shù)據(jù)的鎖定請求; 響應于所述鎖定請求對所述鎖定請求進行處理,包括響應于所述鎖定請求(205)來鎖定(210)多個數(shù)據(jù)對象(y)的所述指定類型(X)的數(shù)據(jù); 接收(215)對所述多個數(shù)據(jù)對象(y)中的至少一個數(shù)據(jù)對象的所述指定類型(X)的數(shù)據(jù)的至少一個改變;以及 根據(jù)所接收的改變通過改變所述指定類型(X)的數(shù)據(jù)來更新并保存(220)所述多個對象(y)中的所述至少一個對象。
9.根據(jù)權(quán)利要求8所述的PDM數(shù)據(jù)處理系統(tǒng),其中,對所述鎖定請求(305)進行處理包括確定是否已針對所述多個數(shù)據(jù)對象(y)中的所述至少一個數(shù)據(jù)對象鎖定了所述指定類型(X)的數(shù)據(jù)。
10.根據(jù)權(quán)利要求8或9所述的PDM數(shù)據(jù)處理系統(tǒng),其中,對所述鎖定請求(305)進行處理包括確定(320)是否允許與所述請求(305)對應的改變。
11.根據(jù)權(quán)利要求8至10中任一項所述的PDM數(shù)據(jù)處理系統(tǒng),其中,所述PDM數(shù)據(jù)處理(600)系統(tǒng)還接收(505)針對所述指定類型(X)的數(shù)據(jù)的顯式解鎖請求,并且響應于所述解鎖請求對所述解鎖請求進行處理,包括對所述多個數(shù)據(jù)對象(y)的所述指定類型(X)的數(shù)據(jù)進行解鎖(535)。
12.根據(jù)權(quán)利要求11所述的PDM數(shù)據(jù)處理系統(tǒng),其中,所述解鎖請求(510)對應于用戶(z),并且對所述解鎖請求(510)進行處理包括確定(515)當前是否針對所述對象和所述用戶(z)鎖定所述指定類型(X)的數(shù)據(jù)。
13.根據(jù)權(quán)利要求8至12中任一項所述的PDM數(shù)據(jù)處理系統(tǒng),其中,所述多個對象(y)各自根據(jù)對所述指定類型(X )的數(shù)據(jù)的所述改變來被更新。
14.根據(jù)權(quán)利要求8至10中任一項所述的PDM數(shù)據(jù)處理系統(tǒng),其中,當所述指定類型(x)的數(shù)據(jù)被鎖定時,能夠通過其他處理(620,630)來更新所述多個對象(y)的不同類型(X)的數(shù)據(jù)。
15.一種編碼有可執(zhí)行指令的非暫態(tài)計算機可讀介質(zhì),當所述指令被執(zhí)行時使得產(chǎn)品數(shù)據(jù)管理(PDM)數(shù)據(jù)處理系統(tǒng)(100,600): 接收(205,305,405)針對指定類型(X)的數(shù)據(jù)的鎖定請求; 響應于所述鎖定請求對所述鎖定請求進行處理,包括響應于所述鎖定請求(205)來鎖定(210)多個數(shù)據(jù)對象(y)的所述指定類型(X)的數(shù)據(jù); 接收(215)對所述多個數(shù)據(jù)對象(y)中的至少一個數(shù)據(jù)對象的所述指定類型(X)的數(shù)據(jù)的至少一個改變;以及 根據(jù)所接收的改變通過改變所述指定類型(X)的數(shù)據(jù)來更新并保存(220)所述多個對象(y)中的所述至少一個對象。
16.根據(jù)權(quán)利要求15所述的計算機可讀介質(zhì),其中,對所述鎖定請求(305)進行處理包括確定(310)是否已經(jīng)針對所述多個數(shù)據(jù)對象(y)中的所述至少一個數(shù)據(jù)對象鎖定了所述指定類型(X)的數(shù)據(jù)。
17.根據(jù)權(quán)利要求15或16所述的計算機可讀介質(zhì),其中,對所述鎖定請求(305)進行處理包括確定(320)是否允許與所述請求對應的改變。
18.根據(jù)權(quán)利要求15至17中任一項所述的計算機可讀介質(zhì),其中,所述PDM數(shù)據(jù)處理系統(tǒng)(600)還接收針對所述指定類型(X)的數(shù)據(jù)的顯式解鎖請求,并且響應于所述解鎖請求對所述解鎖請求進行處理,包括對所述多個數(shù)據(jù)對象(y)的所述指定類型(X)的數(shù)據(jù)進行解鎖(535)。
19.根據(jù)權(quán)利要求18所述的計算機可讀介質(zhì),其中,所述解鎖請求(510)對應于用戶(z),并且對所述解鎖請求(510)進行處理包括確定(515)當前是否針對所述對象和所述用戶鎖定所述指定類型的數(shù)據(jù)。
20.根據(jù)權(quán)利要求15至19中任一項所述的計算機可讀介質(zhì),其中,所述多個對象(y)各自根據(jù)對所述指定類型(X )的數(shù)據(jù)的所述改變來被更新。
21.根據(jù)權(quán)利要求15至17中任一項所述的計算機可讀介質(zhì),其中,當所述指定類型(x)的數(shù)據(jù)被鎖定時,能夠通過其他處理(620,630)來更新所述多個對象(y)的不同類型(X)的數(shù)據(jù)。
【文檔編號】G06F17/24GK103502976SQ201280021060
【公開日】2014年1月8日 申請日期:2012年4月11日 優(yōu)先權(quán)日:2011年4月29日
【發(fā)明者】尼蘭詹·K·耶爾, 馬修·J·英斯科, 羅伯特·海登 申請人:西門子產(chǎn)品生命周期管理軟件公司