欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種使用應(yīng)用程序的各個版本進(jìn)行數(shù)據(jù)處理的方法

文檔序號:6425041閱讀:199來源:國知局
專利名稱:一種使用應(yīng)用程序的各個版本進(jìn)行數(shù)據(jù)處理的方法
技術(shù)領(lǐng)域
本發(fā)明屬于計算機(jī)技術(shù)領(lǐng)域,特別涉及一種數(shù)據(jù)對象導(dǎo)向的儲存系統(tǒng),其在各種不同的環(huán)境中可包括各種應(yīng)用的不同組合與實(shí)施。
背景技術(shù)
眾所周知,目前即便是使用非常有限的軟件組合來進(jìn)行信息處理也會產(chǎn)生很多問題,且無法利用現(xiàn)有的應(yīng)用軟件技術(shù)得到滿意解決。這些問題包括辦公應(yīng)用的集成、數(shù)據(jù)庫應(yīng)用與辦公應(yīng)用之間的集成、辦公應(yīng)用與互聯(lián)網(wǎng)網(wǎng)頁中海量信息間的集成、數(shù)據(jù)庫應(yīng)用與互聯(lián)網(wǎng)應(yīng)用間的集成、以及辦公應(yīng)用間多層與多維的合并及其無縫集成。
這些問題的癥結(jié)之一涉及電子表格應(yīng)用程序內(nèi)數(shù)據(jù)的組織。在傳統(tǒng)的電子表格中,有四種類型的數(shù)據(jù)對象,即數(shù)字,日期,文本和公式。雖然某些電子表格含有其它類型的數(shù)據(jù)對象,如圖表與圖片,它們都要以特別針對的方式處理,每一個這種類型的數(shù)據(jù)對象需要以電子表格程序來特別處理。結(jié)果,電子表格應(yīng)用與其它應(yīng)用間的集成潛力被大大的限制。
現(xiàn)有技術(shù)的另一癥結(jié)是,每一個應(yīng)用支持其本身的數(shù)據(jù)文件格式,且多應(yīng)用需要多套的文件格式來儲存工作成果。即便可能,此情形仍造成交叉應(yīng)用集成的困難。例如,電路設(shè)計圖可被計算機(jī)輔助設(shè)計(CAD)應(yīng)用儲存在特別格式的數(shù)據(jù)文件中,且這種圖可含有像印刷電路板尺寸及某些電子性能之類的屬性,以供文字處理應(yīng)用在準(zhǔn)備設(shè)計文檔時使用,或者供其它機(jī)械設(shè)計應(yīng)用進(jìn)一步設(shè)計而使用。然而,因為每一種應(yīng)用有自己的唯一文件格式,所以沒有統(tǒng)一的方式來取得所需信息。而另一個例子是,在許多情形下,例如準(zhǔn)備預(yù)算或商業(yè)計劃,經(jīng)常需要綜合各種不同的信息,此類信息至今仍由不同的應(yīng)用所處理,并儲存在格式不同且不兼容的數(shù)據(jù)文件中。甚至對于同一廠商所提供的應(yīng)用,綜合的實(shí)現(xiàn)也是十分困難的。此外,交換文件需要小心準(zhǔn)備交換文件間的鏈接,以避免數(shù)據(jù)完整性的問題,像超鏈接指示器錯誤或鏈接到錯誤數(shù)據(jù)或文件。
因此,系統(tǒng)有需要提供統(tǒng)一的用戶接口來操作含有不同廠商所提供的傳統(tǒng)和多層的數(shù)據(jù)庫應(yīng)用的辦公應(yīng)用,且每個應(yīng)用可方便存取互聯(lián)網(wǎng)數(shù)據(jù),系統(tǒng)保持多應(yīng)用類型間數(shù)據(jù)的完整性,促進(jìn)生產(chǎn)率,亦可與各種不同的操作環(huán)境兼容。

發(fā)明內(nèi)容
本發(fā)明可解決這些問題,其方法是提供數(shù)據(jù)對象導(dǎo)向儲存系統(tǒng)及相關(guān)獨(dú)創(chuàng)的計算機(jī)環(huán)境的強(qiáng)化。本發(fā)明是有關(guān)于辦公軟件應(yīng)用程序的操作,其在各種不同的環(huán)境中可包括下列工具的不同組合與實(shí)施電子表格,文字處理,桌面排版,商業(yè)圖表,簡報圖表,網(wǎng)頁合成與發(fā)布,數(shù)據(jù)庫,電子郵件,個人信息管理,工作計劃表,表單與報表生成器,應(yīng)用生成器,在線業(yè)務(wù)處理(OLTP),多維決策支持系統(tǒng)(DSS),及在線分析處理(OLAP)應(yīng)用等。
本發(fā)明特點(diǎn)為,提供了一種使用各版本應(yīng)用程序進(jìn)行數(shù)據(jù)處理的方法。其中,較后版本應(yīng)用程序產(chǎn)生和儲存的數(shù)據(jù)文件可被較早版本的應(yīng)用程序處理和再儲存為部分處理文件,包括a)在第一版本應(yīng)用程序中,產(chǎn)生含有數(shù)組數(shù)據(jù)對象的數(shù)據(jù)文件,其中,各對象包括對象類型碼及對象數(shù)據(jù),使用對象類型和對象數(shù)據(jù)始端與末端的標(biāo)準(zhǔn)標(biāo)識符;b)在第一版的應(yīng)用程序中,儲存該數(shù)據(jù)文件;c)在第二版本的應(yīng)用程序中,較早版本的應(yīng)用程序具有與之相關(guān)的標(biāo)準(zhǔn)標(biāo)識符子集,獲取并處理該數(shù)據(jù)文件,包括i. 確認(rèn)識別各對象的對象類型;ii. 處理每一個已識別對象;及iii.獲取但不處理各不可識別的對象;d)在第二版本應(yīng)用程序中,標(biāo)識不可識別的對象;及e)在第二版本應(yīng)用程序中,將數(shù)據(jù)文件儲存為部分處理過的數(shù)據(jù)文件,包括儲存未經(jīng)修改的不可識別的對象。這樣,這些不可識別對象可由第一版的應(yīng)用程序在獲取該部分處理過的文件后處理。
該方法也可包括在第一版本應(yīng)用程序中獲取并進(jìn)一步處理該部分處理過的數(shù)據(jù)文件。而且,該方法可包括在第二版本的應(yīng)用程序中保留各數(shù)據(jù)文件的修改痕跡,其包括記錄不可識別對象及對其尚待進(jìn)行的處理,儲存關(guān)聯(lián)數(shù)據(jù)文件的修改痕跡,也在第二版本的應(yīng)用程序中及在第一版本的應(yīng)用程序中,從修改痕跡來認(rèn)定并執(zhí)行先前所記錄的對數(shù)據(jù)對象尚待進(jìn)行的處理。產(chǎn)生還可包括使用屬性標(biāo)準(zhǔn)標(biāo)識符為每一個數(shù)據(jù)對象生成屬性碼,獲取包括確認(rèn)識別各對象的屬性,處理各已標(biāo)識的屬性,及獲取但不處理的不可識別的屬性。
以下結(jié)合附圖和實(shí)施例進(jìn)一步描述本發(fā)明,這將有助于更好地理解本發(fā)明的各個方面、特色以及優(yōu)勢。


圖1是采用根據(jù)本發(fā)明設(shè)計的集成數(shù)據(jù)處理系統(tǒng)的計算機(jī)處理環(huán)境圖。
圖2是顯示程序架構(gòu)、多應(yīng)用程序和圖1所示數(shù)據(jù)對象導(dǎo)向存儲系統(tǒng)的數(shù)據(jù)文件之間的功能關(guān)系的圖。
圖3是圖2所示程序架構(gòu)的舉例應(yīng)用切換條的屏幕顯示圖,切換條上有一套應(yīng)用圖標(biāo)。
圖4是圖2所示程序架構(gòu)的屬性對話框的屏幕顯示圖。
圖5是圖2所示程序架構(gòu)的標(biāo)準(zhǔn)用戶界面的屏幕顯示圖,顯示三個應(yīng)用同時運(yùn)行。
圖6是圖2所示程序架構(gòu)用于打開舊版本文件的對話框的屏幕顯示圖。
圖7是顯示互聯(lián)網(wǎng)上的數(shù)據(jù)如何與圖2所示儲藏庫(repository)交迭的維恩圖。
圖8是顯示互聯(lián)網(wǎng)上的數(shù)據(jù)如何與圖2所示儲藏庫、數(shù)據(jù)庫交迭的維恩圖。
圖中,10為集成數(shù)據(jù)處理系統(tǒng),12為計算機(jī)處理環(huán)境,14為處理器,16為工作內(nèi)存,18為非易失性存儲器,20為用戶接口,22為顯示器,24為鍵盤,26為指示組件,28為網(wǎng)絡(luò)接口,30為通信網(wǎng)絡(luò),31為本地端口,32為遠(yuǎn)程端口,34為數(shù)據(jù)對象儲藏庫(DOOR),35為數(shù)據(jù)文件,36為標(biāo)題,37為數(shù)據(jù)單元格,38為數(shù)據(jù)對象,40為程序架構(gòu),42為應(yīng)用程序,42A、42A’為文字處理程序,42B、42B’為電子表格程序,42C為排版程序,42D、42D’為數(shù)據(jù)庫程序,42E為電子郵件程序,42F為表單程序,42G、42G’為圖形程序,44為應(yīng)用切換條,46為應(yīng)用程序圖標(biāo),47為“第三方”應(yīng)用程序圖標(biāo),50為邊框?qū)υ捒颍?0為應(yīng)用用戶接口,62為共用菜單,64為狀態(tài)欄,66為文字處理程序,67為簡報制作程序,68為電子表格程序,70為逐步打開對話框。
具體實(shí)施例方式
本發(fā)明涉及一套系統(tǒng)及方法,用來幫助在辦公應(yīng)用計算機(jī)程序的各種組合與實(shí)施中進(jìn)行集成數(shù)據(jù)處理。請參考圖1,集成數(shù)據(jù)處理系統(tǒng)10在計算機(jī)處理環(huán)境12中進(jìn)行操作,該系統(tǒng)10包括處理器14(含有工作內(nèi)存16和非易失性存儲器18)、用戶接口20(含有顯示器22、鍵盤24、指示組件26)、以及網(wǎng)絡(luò)接口28(用來連通通信網(wǎng)絡(luò)30)。通信網(wǎng)絡(luò)30可包括一個用來與本地裝置連接的本地端口31,和/或一個用來通過像互聯(lián)網(wǎng)進(jìn)行遠(yuǎn)程通信的遠(yuǎn)程端口32。應(yīng)當(dāng)理解,非易失性存儲器18可包括常規(guī)軟驅(qū)、硬盤驅(qū)動器、大容量存儲器以及非易失性半導(dǎo)體存儲器。而系統(tǒng)10亦可包括諸如打印機(jī)、掃描儀、及揚(yáng)聲器等其它組件(未顯示在圖中)。而且系統(tǒng)10可包括多個處理器14、內(nèi)存16及18、用戶接口20、本地和/或遠(yuǎn)程網(wǎng)絡(luò)接口28。用戶接口除了指稱顯示器22、鍵盤24、指示組件26(以及用戶在操作系統(tǒng)10時可互動的其它任何物理組件)之外,還指在操作特殊應(yīng)用程序時的特征,或有時表現(xiàn)為計算機(jī)程序的外觀。
集成應(yīng)用的數(shù)據(jù)儲存庫如圖2所示,本發(fā)明使用通用電子表格當(dāng)做數(shù)據(jù)儲存庫,稱為數(shù)據(jù)對象導(dǎo)向儲藏庫(DOOR)34,其包括一個或多個數(shù)據(jù)文件35,每一個數(shù)據(jù)文件含有一個標(biāo)題36和多個數(shù)據(jù)單元格37,每個單元格可儲存一個且僅存有一個數(shù)據(jù)對象38,該數(shù)據(jù)對象不僅限于上述四種類型,即數(shù)字、日期、文本、公式。從而,本發(fā)明將圖形、聲音、網(wǎng)頁、計算機(jī)程序等均作為數(shù)據(jù)對象。因為所有類型的數(shù)據(jù)對象均被統(tǒng)一處理,所以新的類型和新的應(yīng)用都可容易被加進(jìn)來擴(kuò)展本發(fā)明的范圍。而且,本發(fā)明提供一個通用平臺來集成各種不同的桌面應(yīng)用以及集成數(shù)據(jù)庫數(shù)據(jù)和互聯(lián)網(wǎng)數(shù)據(jù)。
數(shù)據(jù)對象導(dǎo)向的儲存系統(tǒng)(DOORS)如圖2所示,DOOR 34通常是數(shù)據(jù)處理系統(tǒng)10的一部分,因此后者也被稱為數(shù)據(jù)對象導(dǎo)向的儲存系統(tǒng)(DOORS)10。DOORS的實(shí)施最好包括一個程序架構(gòu)40,用來操作多個應(yīng)用程序42以實(shí)現(xiàn)集成訪問DOOR 34,而用戶接口20有一致的外觀特色。應(yīng)用程序42可包括多種類型的程序,如(但不限于)文字處理程序42A、電子表格程序42B、桌面排版程序42C,電子郵件程序42E、表單程序42F、及圖形程序42G。而且,還包括相同類型的不同應(yīng)用程序,如圖2所示的替代的文字處理器42A’、替代的電子表格程序42B’、替代的數(shù)據(jù)庫程序42D’、及替代的圖形程序42G’,這些不同的應(yīng)用程序42至少具有不兼容的數(shù)據(jù)文件格式。
基于一個或多個DOORs 34的數(shù)據(jù)處理系統(tǒng)有時也被指稱為DOORS系統(tǒng),一個DOORS系統(tǒng)包括多個數(shù)據(jù)文件中的大量數(shù)據(jù)對象及一套可應(yīng)用于數(shù)據(jù)對象的操作方法,這些數(shù)據(jù)文件按照多維數(shù)組方式組織。如上所述,數(shù)組中每一個位置被稱為單元格,可以存有一個數(shù)據(jù)對象38,或者是空的。此外,系統(tǒng)中可有而且一般均有鏈接,鏈接中含有系統(tǒng)中數(shù)據(jù)對象的唯一標(biāo)識符,作為對數(shù)據(jù)對象的參考,下面會有進(jìn)一步的說明。每個標(biāo)識符用于指定含有數(shù)據(jù)對象的數(shù)據(jù)文件和數(shù)據(jù)文件中數(shù)組維度的一系列下標(biāo)值(標(biāo)識存有該數(shù)據(jù)對象的單元格)。
DOORS系統(tǒng)的操作不限于算術(shù)運(yùn)算(如乘法與加法)、邏輯運(yùn)算(如邏輯與、異或)、字符串運(yùn)算(如并置、獲取子串)等,也可以是其它一些操作如按比例縮小圖片30%;從第Y秒開始剪除視頻文件中X秒內(nèi)容,X和Y為指定時間參數(shù),以及其它受熟練用戶歡迎的有用操作。
總之,一個或多個用戶可與系統(tǒng)10互動,而且每個用戶都可打開許多數(shù)據(jù)文件35以便處理,這些文件被稱為激活的數(shù)據(jù)文件。
DOORS數(shù)據(jù)對象DOORS數(shù)據(jù)對象分成三大類基本數(shù)據(jù)對象、組合數(shù)據(jù)對象、復(fù)合數(shù)據(jù)對象。每一個數(shù)據(jù)對象含有一個數(shù)據(jù)對象的類型碼、值、零個或多個屬性。
基本數(shù)據(jù)對象這些數(shù)據(jù)對象是系統(tǒng)中數(shù)據(jù)的基本單位,它們的內(nèi)容的完全取決于自身而與任何其它數(shù)據(jù)對象沒有關(guān)聯(lián),它們可含有表示各種內(nèi)容特性的屬性,例如數(shù)字、日期、文本、圖片或照片、圖標(biāo)、音頻音軌、視頻剪輯、URL地址等等。
組合數(shù)據(jù)對象這些數(shù)據(jù)對象包括鏈接、屬性、操作信息以及這些操作如何被應(yīng)用于有關(guān)的數(shù)據(jù)對象以得到這些數(shù)據(jù)對象的各值或內(nèi)容的信息。雖然組合數(shù)據(jù)對象不包含任何完全內(nèi)定值,但它可包含屬性值這樣的原始數(shù)據(jù)。組合數(shù)據(jù)對象舉例商業(yè)圖表(含有與將要被制表的數(shù)據(jù)序列和圖表類型定義的鏈接),桌面排版頁(含有與頁面將要包含的內(nèi)容以及編輯頁格式要求的鏈接),多幀網(wǎng)頁(含有與頁標(biāo)題、網(wǎng)頁以及網(wǎng)頁位置的鏈接),以及幻燈片(含有與各個組件及有關(guān)組件如何組合的信息的鏈接)。數(shù)據(jù)對象屬性舉例在水平及垂直方向要不要以及按多少比例進(jìn)行縮放、文本的字體及大小等。
復(fù)合數(shù)據(jù)對象這些數(shù)據(jù)對象包含所有組合數(shù)據(jù)對象的成份,而且也包含基本數(shù)據(jù)對象值。例如,文檔段落中的文本為基本數(shù)據(jù)值,同時還含有與系統(tǒng)中電子表格(或者一個數(shù)據(jù)對象)的范圍的鏈接和與存儲在系統(tǒng)中其他位置的圖片數(shù)據(jù)對象的鏈接。
在本發(fā)明的一個實(shí)施例中,以電子表格為例,DOORS電子表格單元格可包含基本數(shù)據(jù)對象,該數(shù)據(jù)對象的值標(biāo)識了一個通過圖標(biāo)和字幕播放的大型音視頻文件。此例中的數(shù)據(jù)對象包含文件標(biāo)識符(或不同實(shí)施例中的文件本身),以及關(guān)于如何處理文件的額外信息(在此例中為播放)。而且,被標(biāo)識的文件本身不需要被存入工作內(nèi)存16中,除非用戶要求播放它。DOORS電子表格的用戶界面可定義,通過雙擊“動作圖標(biāo)”(如在此例中播放音視頻文件的圖標(biāo))使標(biāo)識的對象由數(shù)據(jù)對象類型決定的預(yù)設(shè)程序來執(zhí)行。這樣,應(yīng)用程序42的用戶接口在程序架構(gòu)40下操作,可統(tǒng)一大量不同類型的數(shù)據(jù)對象。終端用戶在經(jīng)過基本訓(xùn)練后即可運(yùn)用自如。
為說明DOORS方法的優(yōu)點(diǎn),在本發(fā)明另一實(shí)施例中,DOORS應(yīng)用的某些數(shù)據(jù)對象雖然存儲于電子表格的數(shù)組中,卻能夠顯示在屏幕上,且當(dāng)它遮蓋了其它需要顯示的信息時可被用戶輕易地移走。假設(shè)該應(yīng)用是文字處理,則浮動的數(shù)據(jù)對象可能為插在正文中的說明。通過簡單鏈接,同樣的說明可用到文檔其它部分甚至另外一個文件,如DOORS簡報制作應(yīng)用。如果以后該說明被修改了,所有有關(guān)的鏈接可方便、一致、可靠地進(jìn)行反映其修改。這種鏈接在所有支持此類數(shù)據(jù)對象的DOORS應(yīng)用中統(tǒng)一使用,通過一套支持所有應(yīng)用的程序執(zhí)行。
數(shù)據(jù)對象類型示例為說明DOORS數(shù)據(jù)對象的廣泛性,下面表1列出一些較普通的數(shù)據(jù)對象類型,以及DOORS系統(tǒng)支持應(yīng)用的例子。請注意任何被支持的數(shù)據(jù)對象均可使用于任何的DOORS應(yīng)用中,一些廣泛使用的數(shù)據(jù)對象可在框架中獲得系統(tǒng)級支持并成為DOORS系統(tǒng)的一部分。
表1 數(shù)據(jù)對象類型及其使用實(shí)例


強(qiáng)大且可擴(kuò)展的多應(yīng)用系統(tǒng)根據(jù)本發(fā)明,用來訪問具有統(tǒng)一格式(下面會有進(jìn)一步的說明)的數(shù)據(jù)文件的程序架構(gòu)40,有利于合并DOORS10以外的其它應(yīng)用程序。對于新的應(yīng)用,所有由DOORS架構(gòu)40所支持的現(xiàn)有數(shù)據(jù)對象均自動地被獲取并處理,從而節(jié)省了開發(fā)工作。為新應(yīng)用所需,應(yīng)用設(shè)計者可集中于發(fā)展新的數(shù)據(jù)對象類型、修改或增強(qiáng)現(xiàn)有數(shù)據(jù)對象類型。當(dāng)DOORS系統(tǒng)10中現(xiàn)有數(shù)據(jù)對象類型都合適時,增加新應(yīng)用可以不增加新數(shù)據(jù)類型。
因此,第三方開發(fā)商只需或無需添加新的數(shù)據(jù)類型,就有可能方便地在DOORS系統(tǒng)中增加新的應(yīng)用。參見圖3,注冊系統(tǒng)需要維護(hù)以支持各應(yīng)用程序及相關(guān)應(yīng)用圖標(biāo),并在程序框架40的應(yīng)用切換條上為相關(guān)應(yīng)用圖標(biāo)預(yù)留位置。如圖3所示,示例切換條44包括“一”字排列的應(yīng)用程序圖標(biāo)46,它們用來啟動各自相關(guān)的應(yīng)用程序42。此類圖標(biāo)中可能有“第三方”應(yīng)用程序圖標(biāo)47,用于執(zhí)行程序架構(gòu)40中的新增程序。
在本發(fā)明的一個實(shí)施例中,DOORS系統(tǒng)支持的每種數(shù)據(jù)對象都有數(shù)據(jù)對象類型碼(DOT)。這種編碼系統(tǒng)如果為每個數(shù)據(jù)對象分配四個字節(jié),用于保存DOT碼,則該系統(tǒng)可存在40億種不同的數(shù)據(jù)對象類型。
對于每種數(shù)據(jù)對象類型的數(shù)據(jù)對象,其外觀和外部操作都可定義,并可執(zhí)行一套相關(guān)的操作。例如,含有一個音頻視頻剪輯的數(shù)據(jù)對象可以以展現(xiàn)該剪輯的初始圖象的圖標(biāo)的形式顯示,雙擊圖標(biāo)可開始播放剪輯。此類操作在所有DOORS應(yīng)用中最好統(tǒng)一,從而可以大大減輕用戶學(xué)習(xí)使用數(shù)據(jù)對象的負(fù)擔(dān)。
在另一實(shí)例中,DOORS系統(tǒng)可支持多媒體數(shù)據(jù)對象,如聲音、視頻、圖片、動畫等,只要顯示相應(yīng)的圖標(biāo)即可啟動。根據(jù)用戶需要,這些多媒體數(shù)據(jù)對象激活的同時,用戶可在其它應(yīng)用中處理數(shù)字、文本、圖表等。多媒體數(shù)據(jù)對象可以一致的方式插入到電子表格、文字處理、計算機(jī)輔助教育控制程序、網(wǎng)頁編輯器、網(wǎng)頁瀏覽器以及其它任何DOORS應(yīng)用,既利于程序開發(fā)又便于用戶學(xué)習(xí)使用。
如上所述,一旦特定的數(shù)據(jù)對象類型被支持運(yùn)用在DOORS10中,所有由程序架構(gòu)40所支持的現(xiàn)有應(yīng)用及未來應(yīng)用均受益開發(fā)者不需要多余的開發(fā)工作,終端用戶僅需最少的學(xué)習(xí)。
當(dāng)現(xiàn)存的DOORS系統(tǒng)執(zhí)行某一標(biāo)準(zhǔn)程序接口時,第三方開發(fā)商可發(fā)展并融入專門化的數(shù)據(jù)對象類型以促進(jìn)DOORS應(yīng)用開發(fā)商發(fā)展的新應(yīng)用。這種數(shù)據(jù)對象組裝開發(fā)商在將上述定義的注冊系統(tǒng)中保留特殊的數(shù)據(jù)對象類型碼,這就為DOORS應(yīng)用開發(fā)提供了一個DOORS應(yīng)用開發(fā)平臺。此平臺提供一套豐富的數(shù)據(jù)對象類型,用于構(gòu)建一組應(yīng)用,同時方便地為編程工具提供一個應(yīng)用程序接口標(biāo)準(zhǔn)。
作為數(shù)據(jù)對象的應(yīng)用程序DOORS10中一種特別有用的數(shù)據(jù)對象是應(yīng)用程序數(shù)據(jù)對象。例如,用戶可選擇存儲一個完整的應(yīng)用程序或在僅在DOORS單元格37中引用一應(yīng)用程序。如果用戶希望多次執(zhí)行一個含有不同數(shù)據(jù)的應(yīng)用程序,所需數(shù)據(jù)可在別處準(zhǔn)備并存儲在不同的單元格中。在程序每次執(zhí)行時,用戶在另一個單元格中插入一個引用應(yīng)用程序和所需數(shù)據(jù)的執(zhí)行命令。而且,如果用戶希望保存執(zhí)行動作的輸出結(jié)果,則可在執(zhí)行命令中指定一個或多個目標(biāo)單元格。
另舉一例,一個單元格中有一張從建筑公司購得的房屋工程設(shè)計圖;另一單元格中可能有一個用于編輯設(shè)計圖的軟件程序;第三個單元格中含有另一個可分析設(shè)計圖的程序,生成房屋的三維虛擬圖文件和包含成本預(yù)算的材料清單;第四個單元格中也有一個程序,可基于第三單元格中程序生成的文件模擬展示房屋。整個組合可作為商業(yè)產(chǎn)品銷售。再如,程序的各個版本可存儲在DOORS電子表格中,用戶測試程序時,可使用功能強(qiáng)大的電子表格工具構(gòu)建系統(tǒng)數(shù)據(jù)用于程序測試。因此,DOORS10特別適用于批處理及交互處理。
多應(yīng)用標(biāo)準(zhǔn)用戶接口根據(jù)需要,所有應(yīng)用程序可以共享用戶界面,包括菜單命令樹、對話框等,這是本發(fā)明的一個重要體現(xiàn)。應(yīng)用設(shè)計師不再需要設(shè)計、開發(fā)不同的程序來處理不同的數(shù)據(jù)類,然后再痛苦地嘗試集成它們。例如,文字處理、電子表格、簡報制作和HTML文件編輯程序有相似的用戶界面。所有應(yīng)用的用戶界面組合并精簡成一個唯一、通用以及標(biāo)準(zhǔn)的用戶界面,而不再是每個應(yīng)用各有不同的用戶界面。這就意味不但在線幫助系統(tǒng)操作,而且鍵盤和定位設(shè)備的使用和外觀都被統(tǒng)一。其中即便有特殊的命令或用戶自訂界面功能,也很少。如此不僅開發(fā)簡化了,而且對于用戶來說,也是易學(xué)易用。
多應(yīng)用公共用戶界面的另一優(yōu)點(diǎn)在于當(dāng)用戶需要同時使用多個應(yīng)用窗口時,提高屏幕利用率,正如在瀏覽電子表格中數(shù)據(jù)的同時,可鏈接到文字處理。由于兩個應(yīng)用共用同一套菜單,就減少了屏幕的占用。如果各應(yīng)用使用各自的界面,多套菜單占用了更多屏幕區(qū)域,那么用于顯示用戶數(shù)據(jù)區(qū)域就縮小了。相同或者類似的界面使得操作也相同或者類似,更易于用戶學(xué)習(xí),用戶會發(fā)現(xiàn)這些操作容易學(xué)習(xí),容易記憶。所有應(yīng)用可以共用大多數(shù)對話框、工具欄、狀態(tài)欄,以及幫助系統(tǒng),。例如,如圖4所示,邊框?qū)υ捒?0可用于多個應(yīng)用。圖5說明本發(fā)明使屏幕區(qū)域得以有效利用,圖中顯示了一個共用的應(yīng)用用戶接口60,同時打開三個應(yīng)用,即電子表格、文字處理和幻燈片簡報。圖中包括共用菜單62、應(yīng)用切換條44、狀態(tài)欄64、工具欄65、文字處理程序66、幻燈片簡報制作程序67、電子表格程序68。
單一文件和單一文件格式本發(fā)明的另一重要方面,通過在一個文件中存儲多個應(yīng)用的所有數(shù)據(jù)、使用單一文件格式,可以避免現(xiàn)有技術(shù)中因數(shù)據(jù)共享引起的許多問題,大大方便了數(shù)據(jù)集成。例如,單個文件可以含有電子表格、文字處理文檔、簡報幻燈片、網(wǎng)頁和多媒體數(shù)據(jù)。在DOORS10中的數(shù)據(jù)文件35使用單一文件格式,確保了鏈接數(shù)據(jù)的集成。如通過適當(dāng)?shù)臄?shù)據(jù)對象38配置,機(jī)械設(shè)計應(yīng)用可從電子電路設(shè)計圖表中提取并使用所需信息。同樣的,DOORS10中運(yùn)行的所有應(yīng)用都可提取并使用此信息。
如上所述,理論上每個數(shù)據(jù)對象都可作為數(shù)組元素存儲在一個文件中,并通過其單元格地址被其它數(shù)據(jù)對象引用,正如現(xiàn)有技術(shù)的電子表格程序方式,而又無太多限制。例如,單元格地址形式為<工作表號,行號,列號>,索引三維數(shù)組下標(biāo)表示地址。單元格還可包括特定數(shù)據(jù)和其它屬性以充分描繪數(shù)據(jù)對象,所有單元格存儲在文件中。這種結(jié)構(gòu)對于所有應(yīng)用和所有數(shù)據(jù)對象類型都是一致的,數(shù)據(jù)對象類型包括數(shù)字、公式、日期、文本、段落、商業(yè)圖表、聲音、圖片、網(wǎng)頁、視頻剪輯等。因此所有類型的數(shù)據(jù)對象都可混合和存儲在一個單一文件中。
作為說明舉例,文件格式可以為對象二進(jìn)制文件格式(OBFF),其基本情況見下文所述。
符合OBFF的文件含有一系列各種類型的數(shù)據(jù)對象。每個數(shù)據(jù)對象(見表2)包含1個單字節(jié)二進(jìn)制碼表示數(shù)據(jù)對象類型、1個2字節(jié)整數(shù)以字節(jié)表示數(shù)據(jù)對象大小、1個單字節(jié)整數(shù)表示屬性數(shù)目,以及可變數(shù)據(jù)量(每種數(shù)據(jù)對象類型使用一個預(yù)設(shè)格式)表示數(shù)據(jù)對象的數(shù)據(jù)內(nèi)容,后跟數(shù)據(jù)對象的屬性。所以,一個OBFF數(shù)據(jù)對象最小為4字節(jié),包括對象類型碼(1字節(jié))、對象大小(2字節(jié))和屬性數(shù)目(1字節(jié)),無對象內(nèi)容和屬性。
表2 OBFF數(shù)據(jù)對象格式

數(shù)據(jù)對象中每個屬性含有1個單字節(jié)屬性類型碼及1個2字節(jié)屬性值,見表3。
表3 OBFF對象屬性格式

數(shù)據(jù)對象類型之一為OBFF文件標(biāo)題對象(FHO),包含了與文件有關(guān)的固定數(shù)量的信息。為了更好地說明,表4中列舉了OBFF文件標(biāo)題對象中數(shù)據(jù)項示例。此例中,對象類型碼的十六進(jìn)制值為0Ah,其它數(shù)據(jù)項是預(yù)定的,并隨OBFF文件標(biāo)題對象而變化。這里沒有給出所有的數(shù)據(jù)項,在此也不做討論。
表4 OBFF文件標(biāo)題對象中數(shù)據(jù)項示例

表5中列舉了顯示在文件中數(shù)據(jù)對象類型的示例,另附備注以說明每種數(shù)據(jù)對象類型的用途。
表5 OBFF文件中數(shù)據(jù)對象類型示例

用戶單元格對象用于闡述電子表格單元格中的數(shù)據(jù)對象。此類數(shù)據(jù)對象含有單元格地址,加上其中的數(shù)據(jù)對象和相關(guān)單元格屬性。單元格地址由工作表號、行號和列號組成。用戶單元格對象中包含的數(shù)據(jù)對象也使用如表2中描述的普通數(shù)據(jù)對象格式。以下在表6中列舉了用戶單元格對象的數(shù)據(jù)項,應(yīng)當(dāng)理解還包括其它單元格類型,在此不做細(xì)述。
表6 用戶單元格對象中的數(shù)據(jù)項

表7中列舉出上述數(shù)據(jù)對象類型和其它數(shù)據(jù)對象類型的特定碼值。每種數(shù)據(jù)對象類型的數(shù)據(jù)內(nèi)容格式?jīng)]有給出。
表7數(shù)據(jù)對象類型碼示例

表8列舉了屬性類型碼值示例,用于表示一個數(shù)據(jù)對象的不同屬性。
表8 屬性類型碼示例



以某個特定文件為例,新建一個數(shù)據(jù)文件并修改,單元格A1中有字符串“Test one”,單元格A2中有字符串“Test two”,單元格A3中有字符串“Test three”。在所有字符串作為數(shù)據(jù)對象存儲在單元格中的情況下,表9中列舉了OBFF文件標(biāo)題對象的內(nèi)容,文件其它內(nèi)容列舉在表10中。表10中的空行用于區(qū)分?jǐn)?shù)據(jù)對象。一些未列舉的數(shù)據(jù)項內(nèi)容以N1,T2等形式顯示。
表9 示例文件中部分OBFF文件標(biāo)題對象內(nèi)容


表10 文件內(nèi)容示例


可以很容易地看出,電子表格中可包括所有符合OBFF格式的數(shù)據(jù)對象。特別是,用戶單元格對象(UCO)可包含應(yīng)用數(shù)據(jù),如格式化的段落和多媒體文件。
此外,一些在對話框中定義的信息,如系統(tǒng)選項,皆可在隱藏的電子表格中定義并存儲。為實(shí)現(xiàn)此種方式,本發(fā)明設(shè)計了系統(tǒng)工作表對象(SSO)作為特殊的工作表來存儲這些信息和其它系統(tǒng)信息。
宏操作處理定義一連串操作(稱為宏操作)用于執(zhí)行DOORS10中的數(shù)據(jù)對象38是有益的。例如,操作一個數(shù)據(jù)文件35時,以下步驟都可定義為宏操作在單元格中輸入數(shù)據(jù);清空單元格內(nèi)容;插入復(fù)制的單元格行;在單元格區(qū)域中插入數(shù)列等。
宏操作可用于undo/redo。就是說,當(dāng)進(jìn)行完一個操作后,用戶可選擇清除所有操作結(jié)果。好像該操作從未進(jìn)行過,此為undo。同時用戶可選擇通過給系統(tǒng)發(fā)出一個命令進(jìn)行同樣的操作,而無需重復(fù)進(jìn)行前一操作,此為redo。宏操作對于記錄用戶操作以支持undo/redo功能尤其有用。
此外,由于支持宏操作,本發(fā)明的DOORS10可結(jié)合下文描述的其它想要的功能。
在DOOR34中,一個宏操作的說明可作為一個數(shù)據(jù)對象,即宏操作對象(MOO)。延續(xù)上文中的OBFF示例,表11中列舉了OBFF中MOO的格式示例。
表11 OBFF中MOO格式示例


表12中列舉了一些用于電子表格操作的宏操作碼。
表12 電子表格中宏操作代碼示例

使用記錄的宏操作自動恢復(fù)由于意外發(fā)生的情況經(jīng)常導(dǎo)致工作丟失,自動恢復(fù)功能顯得非常重要。例如,應(yīng)用會出現(xiàn)故障和異常中斷、操作系統(tǒng)會異常中斷,或者可能出現(xiàn)突然斷電。為了減少意外情況下的工作丟失,現(xiàn)有技術(shù)要求用戶頻繁地保存工作,或系統(tǒng)支持定期自動保存。用戶要選擇哪一個工作,如字處理文檔,需要定期保存。選擇保存的工作越多、頻率越高,使用的系統(tǒng)資源也就越多,導(dǎo)致工作進(jìn)展減慢甚至?xí)簳r性中斷,降低了系統(tǒng)的利用率。
支持宏操作處理,執(zhí)行自動恢復(fù)功能以盡量避免影響用戶操作和系統(tǒng)資源使用,這是本發(fā)明的重要體現(xiàn)。此方式在用戶進(jìn)行系統(tǒng)操作時,記錄宏操作對象。為得到可靠的恢復(fù)功能,此方式確保MOO以合理的時間、次數(shù)保存在外部存儲器,如用戶一按回車鍵后,或當(dāng)用戶離開電子表格單元格時。如此,用戶可從頻繁的保存工作中完全解脫出來。
例如,宏操作記錄可從正被處理的文件處于一個良好狀態(tài)時開始,如從外部存儲器中獲取數(shù)據(jù)后立即開始。宏操作記錄在系統(tǒng)中通過程序架構(gòu)40執(zhí)行,獨(dú)立于所有應(yīng)用,并為所有應(yīng)用共享。該操作技術(shù)簡單、有效、可靠,如同在執(zhí)行數(shù)據(jù)庫管理系統(tǒng)的審核追蹤中使用的技術(shù)。某些情況下,也可通過簡單地打開文件、附加記錄至文件末端、關(guān)閉文件來實(shí)現(xiàn)。
延續(xù)前例,記錄的宏操作以記錄順序進(jìn)行工作中斷以前的處理,如同redo操作,從而恢復(fù)中斷部分的工作。在此情況下,用戶可隨時斷開計算機(jī)電源,絲毫不影響完成的工作。
單一文件中保存多個版本工作本發(fā)明的一個重要體現(xiàn)是,支持宏操作記錄,可在一個單一文件中保存多個版本的工作。從一個良好狀態(tài)的文件開始,如新文件或以前保存的文件,系統(tǒng)可持續(xù)記錄對話期中生成的宏操作,在對話期結(jié)束或根據(jù)用戶要求保存這些操作,并將其標(biāo)記為一個新的版本,而非在對話期中所有操作進(jìn)行完后才保存全部工作。根據(jù)這種方式,工作的多個版本可有效地保存在一個單一文件中,因為通過重新執(zhí)行保存的宏操作,任何以前的版本都可恢復(fù)。通過記錄宏操作來保存多版本工作通常比保存完整版本工作需要的存儲空間要少得多。
除了恢復(fù)前期版本的工作外,上述系統(tǒng)還支持逐步重現(xiàn)功能,在恢復(fù)過程中顯示每步操作的結(jié)果。這可用作如銷售簡報或培訓(xùn)教程等。當(dāng)打開一個多版本文件時,系統(tǒng)還支持不同的動作,如同用戶根據(jù)文件創(chuàng)建目的進(jìn)行現(xiàn)場指導(dǎo)一般。系統(tǒng)可以(1)顯示第一版本,(2)迅速重新執(zhí)行所有宏操作以顯示最新版本,(3)更為常見地,顯示第一版本并啟動宏操作的逐步重現(xiàn)功能,(4)根據(jù)特定腳本重新執(zhí)行宏操作。
逐步打開的另一種實(shí)現(xiàn)方式如下文所述。當(dāng)文件以逐步模式打開時,用戶可修改數(shù)據(jù)內(nèi)容。圖6示出了一個為實(shí)現(xiàn)該目的增設(shè)的打開對話框70,表13中列舉了用戶選擇。
表13 多版本文件逐步打開中的選擇示例

為了控制使用的存儲消耗,系統(tǒng)允許用戶選擇保存在文件中的版本數(shù)量,同時允許用戶在一個較新的版本中選擇一個新的起始點(diǎn),并刪除此點(diǎn)之前所有的數(shù)據(jù)。例如,用戶可以將保存在文件中的版本數(shù)限制為5個,當(dāng)附加第六版本時,刪除第一版本,原來的第二版本成為第一版本。延續(xù)此例,用戶后來可選擇僅保存最新版本,刪除所有前期版本,或僅保存第三版本,刪除所有其它版本。
本發(fā)明還有其它應(yīng)用,例如多個宏操作記錄可進(jìn)行修改、接合、合并、編輯以創(chuàng)建一個新的宏處理。老師可審閱學(xué)生執(zhí)行的操作,并提出建議以提高學(xué)生使用某一個應(yīng)用的能力。修改一份重要財務(wù)記錄或關(guān)鍵文件的宏操作可作為追究某個操作者責(zé)任的追蹤記錄。
集成數(shù)據(jù)庫表格在現(xiàn)有技術(shù)中,通過一次或預(yù)設(shè)的詢問,或通過復(fù)制——粘貼過程,數(shù)據(jù)庫表格中的記錄可導(dǎo)入電子表格或其它辦公應(yīng)用中。各個記錄的組成部分與電子表格單元格之間無任何鏈接,為保證復(fù)制數(shù)據(jù)與數(shù)據(jù)庫的同步,必須執(zhí)行另一個查詢。由于數(shù)據(jù)間的差異,經(jīng)常會產(chǎn)生一些問題。例如,用戶一段時間以前將某一股票價格數(shù)據(jù)導(dǎo)入到電子表格,當(dāng)用戶根據(jù)這些數(shù)據(jù)作出決策時,股票價格可能已發(fā)生改變。
本發(fā)明在數(shù)據(jù)庫表格與系統(tǒng)任何應(yīng)用中的二維數(shù)組之間建立了雙向鏈接。也就是說,根據(jù)特定的機(jī)制,數(shù)據(jù)庫中的數(shù)據(jù)修改可反應(yīng)在相應(yīng)的DOORS數(shù)組中。根據(jù)另一種或同樣的機(jī)制,DOORS數(shù)組中的數(shù)據(jù)修改也可寫回數(shù)據(jù)庫。這種特征稱為數(shù)據(jù)庫集成。
數(shù)據(jù)庫集成的實(shí)現(xiàn),首先要識別部分?jǐn)?shù)據(jù)庫表格(一個二維數(shù)組),稱為A,然后從DOORS系統(tǒng)中選擇某些數(shù)據(jù)對象形成另一個同樣大小的二維數(shù)組,稱為B。通過系統(tǒng)在數(shù)組A和數(shù)組B的每個組成部分間建立對應(yīng)關(guān)系,從數(shù)組A中獲取的數(shù)據(jù)填入數(shù)組B。在本發(fā)明一個實(shí)施例中,數(shù)組B的組成部分顯示為行和列,行對應(yīng)數(shù)據(jù)庫中的數(shù)據(jù)記錄,列對應(yīng)數(shù)據(jù)庫中的字段。數(shù)組B的組成部分可含有對應(yīng)關(guān)系以外的其它數(shù)據(jù)對象。
一旦對應(yīng)關(guān)系確立,用戶可修改數(shù)組B中的數(shù)據(jù),數(shù)組B也會從數(shù)組A中獲取數(shù)據(jù)后改變,系統(tǒng)將時時保持兩份數(shù)據(jù)的一致性。在前例中,由于對應(yīng)關(guān)系已經(jīng)確立以及成功的同步操作,為了方便用戶的工作,每一行都有一個特殊的標(biāo)記,以顯示DOORS數(shù)據(jù)的狀況(1)對應(yīng)關(guān)系以外的行,(2)未改變的行,(3)已改變的行,(4)已刪除的行,(5)插入到對應(yīng)關(guān)系中的行。表14中列舉了此類標(biāo)記的一個實(shí)例。
表14 標(biāo)識數(shù)據(jù)庫表格對應(yīng)關(guān)系中行狀況的標(biāo)記示例

本發(fā)明提供一種方法用于同步更新數(shù)據(jù)庫數(shù)據(jù)和DOORS數(shù)據(jù),包括1)從數(shù)據(jù)庫表格中獲取選擇的數(shù)據(jù)。
2)確認(rèn)數(shù)據(jù)庫中的變化,并與DOORS數(shù)據(jù)的變化相比較。
3)對應(yīng)關(guān)系中每個組成部分,如果對應(yīng)關(guān)系中的一方發(fā)生改變,則更新另一方相應(yīng)的數(shù)據(jù)。
4)如果一組成部分的兩方都改變了,則通過預(yù)設(shè)方式確定主要方。如,假設(shè)某一方總是主要方,或者如果可以確定變更次數(shù),則將最近變更較多的一方作為主要方。
可觸發(fā)同步更新的條件舉例●建立對應(yīng)關(guān)系之后;●含有選定數(shù)據(jù)對象的數(shù)據(jù)文件打開之后;●含有選定數(shù)據(jù)對象的數(shù)據(jù)文件關(guān)閉之前;●以一定時間為周期;●DOORS中對應(yīng)關(guān)系的數(shù)據(jù)有任何改變時;●根據(jù)用戶要求;●DOORS應(yīng)用執(zhí)行中檢測到其它一些標(biāo)準(zhǔn)時。
上述數(shù)據(jù)庫集成特色可能的擴(kuò)展包括●行、列如上述進(jìn)行標(biāo)記,允許在數(shù)據(jù)庫表格中添加或刪除字段;●對應(yīng)關(guān)系中顯示的行、列可以倒置,行對應(yīng)數(shù)據(jù)庫表格中的字段,列對應(yīng)數(shù)據(jù)庫表格中的記錄;●對應(yīng)關(guān)系的顯示可采用“數(shù)據(jù)表單”的形式,一次顯示數(shù)據(jù)庫中一個記錄。該數(shù)據(jù)表單從數(shù)據(jù)庫模式信息中自動生成,數(shù)據(jù)表單中的字段可包括DOORS系統(tǒng)中各種確認(rèn)規(guī)則。
數(shù)據(jù)庫集成的優(yōu)點(diǎn)●通過使用電子表格和其它熟悉的應(yīng)用查詢、更新數(shù)據(jù)庫記錄,而無需復(fù)雜的程序和裝置;●通過相關(guān)的數(shù)據(jù)庫模式和現(xiàn)有的技術(shù),如ODBC(開放式數(shù)據(jù)庫連接)和JDBC(基于Java的數(shù)據(jù)庫連接),用戶可以使用電子表格和其它能夠處理二維數(shù)組的應(yīng)用集成各種來源的數(shù)據(jù),而無需編程技能;●有了行狀態(tài)標(biāo)識,同步更新進(jìn)程可隨時中斷,絲毫不影響數(shù)據(jù)集成;●在DOORS系統(tǒng)中一個二維數(shù)組和多層、多維決策支持系統(tǒng)中的數(shù)據(jù)間建立對應(yīng)關(guān)系,形成雙向鏈接,用戶可使用功能強(qiáng)大的分析應(yīng)用來充分利用決策支持系統(tǒng)提供的信息;
●一般情形,數(shù)據(jù)庫可訪問的任何數(shù)據(jù)都可儲存于DOORS單元格中,并保持鏈接。因此,這些數(shù)據(jù)可作為DOORS系統(tǒng)中的其它本地數(shù)據(jù)一樣使用。這就實(shí)現(xiàn)了數(shù)據(jù)庫數(shù)據(jù)到DOORS系統(tǒng)中的無縫集成。
集成互聯(lián)網(wǎng)數(shù)據(jù)DOORS系統(tǒng)中,互聯(lián)網(wǎng)數(shù)據(jù)以網(wǎng)頁形式存在,或取自于URL和類似機(jī)制,這些數(shù)據(jù)可由DOORS系統(tǒng)存取并可有效地與DOORS系統(tǒng)中其它數(shù)據(jù)集成。同時,DOORS系統(tǒng)中的應(yīng)用也可將數(shù)據(jù)以網(wǎng)頁或URL和類似機(jī)制可訪問的數(shù)據(jù)形式發(fā)布。
在下列一種或多種情況下,DOORS應(yīng)用可檢測并同步更新引用的互聯(lián)網(wǎng)數(shù)據(jù)●以一定時間為周期;●引用互聯(lián)網(wǎng)數(shù)據(jù)的數(shù)據(jù)文件打開之后;●引用互聯(lián)網(wǎng)數(shù)據(jù)的數(shù)據(jù)文件關(guān)閉之前;●根據(jù)用戶要求;●DOORS應(yīng)用執(zhí)行中檢測到其它一些標(biāo)準(zhǔn)時。
當(dāng)DOORS應(yīng)用將數(shù)據(jù)發(fā)布到互聯(lián)網(wǎng)時,發(fā)布的數(shù)據(jù)在下列情況下自動更新以反映在最后一次發(fā)布后的變化●以一定時間為周期;●含有發(fā)布數(shù)據(jù)的數(shù)據(jù)文件打開之后;●含有發(fā)布數(shù)據(jù)的數(shù)據(jù)文件關(guān)閉之前;●根據(jù)用戶要求;●DOORS應(yīng)用執(zhí)行中檢測到其它一些標(biāo)準(zhǔn)時。
互聯(lián)網(wǎng)集成特色的一些應(yīng)用包括●股票證券管理系統(tǒng)從各種網(wǎng)站監(jiān)控股票數(shù)據(jù)和公司信息,向用戶推薦某種股票并采取合適的舉動;●從各種網(wǎng)站上獲取有關(guān)某一影星的數(shù)據(jù),加以整理和分析,可供新聞記者報道;●體育新聞組成員觀看球賽時,各人記錄各種有關(guān)比賽的不同數(shù)據(jù),如每個隊員的撞人、失誤、得分,同時DOORS應(yīng)用即時向互聯(lián)網(wǎng)發(fā)布整理后的數(shù)據(jù);●一般,任何來自互聯(lián)網(wǎng)的數(shù)據(jù)可儲存在DOORS單元格中,并保存鏈接。因此,這些數(shù)據(jù)可作為DOORS系統(tǒng)中的其它本地數(shù)據(jù)一樣使用。這就實(shí)現(xiàn)了互聯(lián)網(wǎng)數(shù)據(jù)到DOORS系統(tǒng)中的無縫集成。
根據(jù)本發(fā)明,所有這些機(jī)制結(jié)合起來,從互聯(lián)網(wǎng)上獲取的全部信息將在DOORS環(huán)境中自動快速地循環(huán)。一旦DOORS中有任何數(shù)據(jù)對象發(fā)生改變,網(wǎng)頁也立即改變,通過網(wǎng)頁重發(fā)布軟件,網(wǎng)頁訪問者可下載最新信息。數(shù)據(jù)下載到DOORS后,將拆分成可以處理的數(shù)據(jù)對象存入單元格中。用戶可利用這些拆解的數(shù)據(jù)對象進(jìn)行分析和制定決策,可能導(dǎo)致另一修改網(wǎng)頁發(fā)布到互聯(lián)網(wǎng)等。這個過程可持續(xù)進(jìn)行,使得發(fā)布的網(wǎng)頁始終圍繞DOORS進(jìn)行,使DOORS成為互聯(lián)網(wǎng)世界的中心。
這種功能在許多應(yīng)用中特別有用,尤其是事情沒有最后結(jié)束,用戶希望不斷更新數(shù)據(jù),如奧運(yùn)會獎牌統(tǒng)計、總統(tǒng)選舉結(jié)果、股市價格。例如,股票報價應(yīng)用,用戶可以訂購在線股票報價服務(wù),如道瓊斯指數(shù)。股票信息每隔10秒鐘導(dǎo)入到用戶工作表中,用戶可自行創(chuàng)建規(guī)則來決定股票交易數(shù)量,以及在何種價格賣出某一股票。買賣決策形成另一張網(wǎng)頁發(fā)送至證券交易所,實(shí)現(xiàn)買賣操作。所有這些都可通過本發(fā)明的DOORS來完成,無需編寫復(fù)雜的程序和撰寫HTML腳本。
加上多個用戶可以協(xié)作編輯同一個DOORS文檔,再復(fù)雜的互聯(lián)網(wǎng)應(yīng)用都無需編程和撰寫HTML腳本。例如,網(wǎng)上直播職業(yè)籃球決賽,幾個用戶可同時編輯網(wǎng)頁信息。當(dāng)有人統(tǒng)計數(shù)據(jù)時,其它人可進(jìn)行比賽描述,如誰得到了傳球,誰投籃、誰得分等。根據(jù)本發(fā)明,所有這些可同時進(jìn)行,并自動發(fā)布網(wǎng)頁,無需編程和撰寫HTML腳本。
如圖7所示,互聯(lián)網(wǎng)和DOORS的數(shù)據(jù)在任何時候都可交互。建立互聯(lián)網(wǎng)和辦公軟件數(shù)據(jù)以及辦公軟件數(shù)據(jù)和數(shù)據(jù)庫數(shù)據(jù)的鏈接后,DOORS就成為連接互聯(lián)網(wǎng)數(shù)據(jù)和數(shù)據(jù)庫數(shù)據(jù)的橋梁,如圖8所示。
通過本發(fā)明的DOORS,互聯(lián)網(wǎng)的數(shù)據(jù)可導(dǎo)入DOORS辦公程序,然后在數(shù)據(jù)庫中進(jìn)行處理。從DOORS中可獲取任何數(shù)據(jù)庫數(shù)據(jù),并使用適當(dāng)?shù)墓ぞ?如網(wǎng)頁編輯器、表單/報表生成器)使之成為網(wǎng)頁的一部分。數(shù)據(jù)庫數(shù)據(jù)在發(fā)布到互聯(lián)網(wǎng)之前,可通過查詢選擇導(dǎo)入DOORS辦公電子表格。
此外,含有電子商務(wù)信息的網(wǎng)頁添加或更新到數(shù)據(jù)庫表格之前,將拆解到單元格,然后復(fù)制或移動至電子表格中的數(shù)據(jù)庫記錄區(qū)域。如此可更容易地實(shí)現(xiàn)互聯(lián)網(wǎng)商務(wù)應(yīng)用,而無需任何編碼。
創(chuàng)建向上兼容應(yīng)用的方法計算機(jī)程序通常是通過版本更新來提高應(yīng)用性。這種提高可能會創(chuàng)建不同格式的數(shù)據(jù)文件。也就是說,計算機(jī)程序的一個舊版本(版本A)創(chuàng)建的數(shù)據(jù)文件(文件X)可能與一個較新版本(版本B)的不同數(shù)據(jù)文件格式相一致。區(qū)別在于版本B不能識別文件X的所有或部分內(nèi)容,使得文件X對于版本B用戶來說用途不大。一般情況下,版本B的開發(fā)至少能夠準(zhǔn)確完整地讀入文件X,并進(jìn)行正確地處理。如果是這樣,計算機(jī)程序(版本B)稱為“可向下兼容”。
在現(xiàn)有技術(shù)中,程序向上兼容新版本創(chuàng)建的數(shù)據(jù)文件,即便不是不可能的,也被認(rèn)為是不切實(shí)際的。也就是說,在上例中版本A無法正確地讀入版本B創(chuàng)建的數(shù)據(jù)文件,更別提處理它了。實(shí)現(xiàn)向上兼容數(shù)據(jù)文件的一種方式就是精確設(shè)計新版本創(chuàng)建的數(shù)據(jù)文件格式,使得舊版本也可識別該格式。由于此功能的實(shí)現(xiàn)需要在新版本的開發(fā)中加上很多限制,因此不太實(shí)用。
然而在本發(fā)明中,有可能實(shí)現(xiàn)保存未知類型的數(shù)據(jù)對象的向上兼容,以及處理此類數(shù)據(jù)對象的有限的向上兼容。
在一個能夠確定數(shù)據(jù)對象大小的系統(tǒng)中,無論數(shù)據(jù)對象類型以及該數(shù)據(jù)對象的內(nèi)部格式是什么,所有未知類型的數(shù)據(jù)對象都可保存在本系統(tǒng)中。載入數(shù)據(jù)文件時,某個應(yīng)用如果遇到此類數(shù)據(jù)對象,則將這些數(shù)據(jù)對象作為一個整體傳入內(nèi)存,如有必要在內(nèi)存中挪動,最后存入存儲器中。如此,向上兼容就完全實(shí)現(xiàn)了。
如果未知類型的數(shù)據(jù)對象需要處理且不依賴數(shù)據(jù)對象的內(nèi)容,此種處理可以執(zhí)行。在一個能夠確定數(shù)據(jù)對象屬性的系統(tǒng)中,無論數(shù)據(jù)對象類型是什么,此類處理可利用已知屬性類型的數(shù)據(jù)對象屬性。例如,當(dāng)一個幻燈片對象中含有一張未知類型的圖片對象,且該圖片由于某種原因需要放大時,即使圖片本身的外觀無法識別,幻燈片整個外觀無論是在放大前還是后,都可正確識別,只要大小、縮放比例等所有必要的數(shù)據(jù)對象屬性都可識別。
此外,在一個處理內(nèi)容可以被描述并錄制為宏操作的系統(tǒng)中,有關(guān)未知類型數(shù)據(jù)對象所需的處理信息可作為宏操作保存在數(shù)據(jù)文件中,隨后在應(yīng)用程序處理數(shù)據(jù)文件時,根據(jù)錄制的宏操作正確處理這些數(shù)據(jù)對象,這就稱為延時處理。當(dāng)錄制為延時處理的所需處理描述不依賴于數(shù)據(jù)對象的內(nèi)容時,DOORS應(yīng)用也可有效地實(shí)現(xiàn)向上兼容。
請注意,DOORS系統(tǒng)除了可以實(shí)現(xiàn)上述在數(shù)據(jù)保存和處理方面的向上兼容外,當(dāng)鏈接既不依賴于對象類型也不依賴于數(shù)據(jù)對象的內(nèi)容時,還可正確保存未知對象類型的所有數(shù)據(jù)對象的鏈接。
在DOORS系統(tǒng)中,當(dāng)一個未知對象類型的數(shù)據(jù)對象含有與系統(tǒng)中其它對象的鏈接,而且鏈接數(shù)據(jù)對象的改變要求前一個數(shù)據(jù)對象作出相應(yīng)的改變時,如果所需處理不依賴于前一個數(shù)據(jù)對象的內(nèi)容,則該處理可以正確進(jìn)行。
在相同條件下,對于未知屬性類型的數(shù)據(jù)對象屬性來說,如果對未知屬性的處理可描述并可錄制為宏操作以便由能夠執(zhí)行該處理的應(yīng)用程序隨后處理,則所有數(shù)據(jù)對象屬性隨時都可保存和進(jìn)行正確地處理。
簡而言之,在數(shù)據(jù)對象及其處理滿足上述條件的系統(tǒng)中,應(yīng)用可向上兼容新版本創(chuàng)建的數(shù)據(jù)文件。事實(shí)上,在上述的限制條件下,任何應(yīng)用都可兼容其它應(yīng)用創(chuàng)建的數(shù)據(jù)文件(見表15)。
表15可向上兼容應(yīng)用性能一覽表

以下描述的是本發(fā)明的又一個實(shí)施例,與上文描述的DOORS10不完全一致。如下文描述,本例中數(shù)據(jù)文件符合向下兼容文件格式(DCFF)。無論何種應(yīng)用,所有數(shù)據(jù)對象要么符合表16中的短格式,要么符合表17中的長格式。在短格式中,對象類型代碼介于00h和0Fh之間,每個數(shù)據(jù)對象含有一個單字節(jié)對象類型代碼、零或更多字節(jié)的對象內(nèi)容,對象內(nèi)容的精確大小和格式根據(jù)對象類型代碼進(jìn)行預(yù)設(shè)。在長格式中,對象類型代碼介于10h和FFh之間,每個數(shù)據(jù)對象含有一個單字節(jié)對象類型代碼、一個2字節(jié)對象大小(以字節(jié)形式指定對象的總大小)、一個或多個DCFF屬性(最后一個屬性為“空值屬性”類型)、零或更多字節(jié)的對象內(nèi)容(根據(jù)對象類型代碼值來解釋對象內(nèi)容的格式)。
屬性描述數(shù)據(jù)對象的性質(zhì)。例如,一個一段文本數(shù)據(jù)對象,其屬性也許指字體、字體大小、字體顏色、背景顏色等。
表16 DCFF數(shù)據(jù)對象短格式

表17 DCFF數(shù)據(jù)對象長格式

表18中為對象類型代碼示例。
表18 DCFF數(shù)據(jù)對象類型代碼示例

DCFF屬性要么符合表19中的短格式,要么符合表20中的長格式。在短格式中僅有值為00h的1字節(jié)表示空值屬性;在長格式中有1單字節(jié)屬性代碼表示屬性類型,加上2字節(jié)屬性值表示如字體大小、圖片縮放比例或相關(guān)數(shù)據(jù)對象的其它一些屬性。
表19 DCFF屬性短格式

表20 DCFF屬性長格式

DCFF中屬性類型碼示例,如表21所示。
表21 DCFF屬性類型代碼示例


DCFF格式的文件有3部分,即控制部分、數(shù)據(jù)對象部分、延時處理部分,如表22所示。
表22 向下兼容文件格式(DCFF)示例

DCFF控制部分包含與數(shù)據(jù)文件相關(guān)的固定信息,包括文件大小之類的數(shù)據(jù)項、生成此文件的應(yīng)用程序標(biāo)識符、最后一次修改此文件的應(yīng)用程序標(biāo)識符、文件版本號等;數(shù)據(jù)對象部分包含與應(yīng)用直接有關(guān)的數(shù)據(jù)對象,加在數(shù)據(jù)對象部分大小之前;延時處理部分含有一系列宏操作對象(MOO,類型為F1h),指定需要執(zhí)行的處理。
控制部分格式如表23所示。
表23 控制部分格式示例

每個控制代碼的控制信息內(nèi)容如表24所示,延時處理如表25所示。
表24 數(shù)據(jù)對象部分格式示例


表25 延時處理部分格式示例

鏈接粘貼圖標(biāo)在現(xiàn)有技術(shù)中,基于視窗操作和定位裝置的計算機(jī)系統(tǒng)有兩個經(jīng)常使用的圖標(biāo),即復(fù)制與粘貼。當(dāng)用戶希望復(fù)制系統(tǒng)中的一個數(shù)據(jù)對象,用戶先使用定位裝置標(biāo)記需復(fù)制的數(shù)據(jù)對象(源數(shù)據(jù)對象),點(diǎn)擊復(fù)制圖標(biāo),將光標(biāo)移至所需目標(biāo)位置,然后點(diǎn)擊粘貼圖標(biāo)插入源數(shù)據(jù)對象副本。
在含有各種數(shù)據(jù)對象且由多種類型應(yīng)用共享的系統(tǒng)中,鏈接已有數(shù)據(jù)對象是很平常的。在系統(tǒng)中要共享已存數(shù)據(jù)對象,用戶可在所需位置創(chuàng)建鏈接。使用這種方式,如果源數(shù)據(jù)對象將來改變了,系統(tǒng)將保證所有與之的鏈接自動更新,且應(yīng)用程序能夠正確地處理數(shù)據(jù)對象。
因此,對于該系統(tǒng)的用戶來說,更頻繁的操作將是標(biāo)記一個對象(源對象),移至目標(biāo)位置,插入源對象鏈接而不是插入副本。粘貼鏈接圖標(biāo)的發(fā)明更有利于此操作。點(diǎn)擊粘貼鏈接圖標(biāo)可在當(dāng)前位置插入最后標(biāo)記的數(shù)據(jù)對象的鏈接。在本發(fā)明中還有其它一些方式可實(shí)現(xiàn)同樣的目的。
如果不用粘貼鏈接圖標(biāo),用戶需要通過幾個步驟來實(shí)現(xiàn)同樣的結(jié)果。例如,用戶可選擇菜單中的粘貼鏈接命令。
粘貼鏈接圖標(biāo)的優(yōu)點(diǎn)(1)有效創(chuàng)建某一源數(shù)據(jù)對象的副本,且副本隨著源數(shù)據(jù)對象的改變而保持更新;(2)操作方式與現(xiàn)有技術(shù)的標(biāo)記——復(fù)制——粘貼操作極其相似,用戶可很容易地適應(yīng)新的標(biāo)記——復(fù)制——粘貼鏈接操作;(3)僅需要點(diǎn)擊一次即可完成鏈接操作。
雖然本發(fā)明已進(jìn)行了關(guān)于某些首選版本的詳細(xì)闡述,但其它版本也是有可能的。因此,所附權(quán)利要求不應(yīng)受限于這些首選版本的描述。在本說明中,包括權(quán)利要求、摘要及附圖披露的所有特征,以及所有披露的方法或處理的步驟,都可任意組合在一起,除非有些特征和/或步驟相互排斥。在本說明中,包括權(quán)利要求、摘要及附圖披露的每個特征都可被另一個可獲得相同、相當(dāng)或相似結(jié)果的特征取代,除非另有明確陳述說不行。因此,除非另有明確陳述,否則每個特征僅為一系列相同或相似特征通類的一個示例。
權(quán)利要求
1.一種使用應(yīng)用程序的各個版本進(jìn)行數(shù)據(jù)處理的方法,其中較后版本的程序所產(chǎn)生和儲存的數(shù)據(jù)文件可被較早版本應(yīng)用程序處理和儲存為部分處理過的文件,其特征在于,該方法包括a)在第一版本的應(yīng)用程序中,產(chǎn)生一個包含數(shù)據(jù)對象數(shù)組的數(shù)據(jù)文件,其中各對象包含對象類型碼及對象內(nèi)容,使用對象類型以及對象數(shù)據(jù)始端與末端的標(biāo)準(zhǔn)標(biāo)識符;b)在第一版本的應(yīng)用程序中,儲存該數(shù)據(jù)文件;c)在第二版本的應(yīng)用程序中,較早版本的應(yīng)用程序具有與之相關(guān)的標(biāo)準(zhǔn)標(biāo)識符子集,獲取并處理該數(shù)據(jù)文件,包括i.確認(rèn)識別各對象的對象類型;ii.處理各已識別對象;及iii.獲取但不處理不可識別的對象;d)在第二版本的應(yīng)用程序中,標(biāo)明不可識別的對象;及e)在第二版本的應(yīng)用程序中,將數(shù)據(jù)文件儲存為部分處理過的數(shù)據(jù)文件,包括儲存未經(jīng)修改的不可識別的對象,從而允許不可識別的對象在第一版本的應(yīng)用程序獲取該部分處理過的文件后被處理。
2.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括,在第一版本應(yīng)用程序中獲取并進(jìn)一步處理該部分處理過的數(shù)據(jù)文件。
3.如權(quán)利要求2所述的方法,其特征在于,所述方法還包括a)在第二版本應(yīng)用程序中,維持各數(shù)據(jù)文件的修改痕跡,包括記錄不可識別的對象及其尚待進(jìn)行的處理;b)在第二版本應(yīng)用程序中,儲存與相應(yīng)數(shù)據(jù)文件相關(guān)的修改痕跡;及c)在第一版本的應(yīng)用程序中,進(jìn)一步處理包括根據(jù)修改痕跡確認(rèn)并執(zhí)行先前所記錄的對數(shù)據(jù)對象尚待進(jìn)行的處理。
4.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括a)在文件產(chǎn)生中,各數(shù)據(jù)對象中還包括屬性碼,且其標(biāo)準(zhǔn)識別符還包含屬性;b)在文件獲取中i.確認(rèn)識別各對象的屬性;及ii.處理各已識別屬性;及iii.獲取但不處理不可識別的屬性。
全文摘要
本發(fā)明公開了一種集成多應(yīng)用數(shù)據(jù)系統(tǒng),包括用來產(chǎn)生、儲存,及獲取數(shù)據(jù)文件的工具,以及程序架構(gòu)。該數(shù)據(jù)文件具有多維數(shù)組的數(shù)據(jù)單元格,而該程序架構(gòu)提供的共用用戶接口至少是一個應(yīng)用程序,令用戶與一個或多個數(shù)據(jù)文件互動,本發(fā)明所揭露的技術(shù)還包括版本兼容的數(shù)據(jù)處理系統(tǒng),其具有供用戶與儲存數(shù)據(jù)互動的應(yīng)用程序,及利用應(yīng)用程序的各版本進(jìn)行數(shù)據(jù)處理的方法,以及集成數(shù)據(jù)處理系統(tǒng),其含有具備產(chǎn)生及編輯數(shù)據(jù)文件工具的應(yīng)用程序。
文檔編號G06F7/00GK1591401SQ20041007447
公開日2005年3月9日 申請日期2002年11月8日 優(yōu)先權(quán)日2001年11月9日
發(fā)明者曹參 申請人:無錫永中科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
沅陵县| 湛江市| 宜兰县| 阿图什市| 莱州市| 巧家县| 荥阳市| 微博| 蕉岭县| 加查县| 巴彦淖尔市| 江城| 昆山市| 于都县| 德州市| 竹山县| 兴业县| 承德县| 湘潭市| 鄢陵县| 栖霞市| 湟中县| 讷河市| 衡阳市| 蒙城县| 辉县市| 来安县| 鄯善县| 江华| 洪江市| 拉萨市| 嘉义市| 白沙| 电白县| 隆昌县| 宁夏| 日喀则市| 安徽省| 出国| 阳东县| 武清区|