專利名稱:數(shù)據(jù)處理裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對文件進(jìn)行輸入、輸出和更新操作的數(shù)據(jù)處理裝置。
有關(guān)技術(shù)說明包含有計算機(jī)的常規(guī)的數(shù)據(jù)處理裝置把文件貯存在譬如磁盤這樣的存貯器中,并根據(jù)輸入的記錄數(shù)據(jù)對文件進(jìn)行更新。不同工業(yè)領(lǐng)域中的公司都引進(jìn)了計算機(jī),其文件和輸入記錄的內(nèi)容隨著工業(yè)領(lǐng)域的不同而不同,甚至在同一工業(yè)領(lǐng)域,也隨著具體的業(yè)務(wù)性質(zhì)不同而不同。因此,文件的內(nèi)容以及要對這些文件進(jìn)行輸入輸出的記錄也各不相同。
為了對付上述情況,在常規(guī)的數(shù)據(jù)處理裝置中,系統(tǒng)的設(shè)計是針對各個不同的特定的輸入記錄、文件和輸出記錄的。因此為了對付特定的輸入記錄、文件和輸出記錄,不得不設(shè)計和準(zhǔn)備各自的程序。在每種情況下,所說的程序是用程序語言來寫的。更具體一點說,當(dāng)有數(shù)據(jù)從輸入端輸入時,數(shù)據(jù)處理機(jī)就執(zhí)行一系列操作,諸如從一個文件中讀入要被更新的一個記錄、對此記錄執(zhí)行算術(shù)和邏輯運算,然后把此記錄寫回該文件。處理過程必須用程序語言來描述,使得每當(dāng)輸入一個記錄時能執(zhí)行一組相應(yīng)的處理操作。
如上所述,在常規(guī)的數(shù)據(jù)處理裝置中,各種程序必須針對不同工業(yè)領(lǐng)域中的每種業(yè)務(wù)來設(shè)計。在設(shè)計管理文件用的文件管理系統(tǒng)時,更新文件用的更新程序也必不可少。文件中的記錄能夠和記錄中的字的位置在內(nèi)存中都是因定分配的,而且不同的文件有不同的記錄能夠構(gòu)。因此按照輸入數(shù)據(jù)對文件中的記錄進(jìn)行更新的程序必須被設(shè)計成適合于特定的記錄結(jié)構(gòu)。這樣的程序設(shè)計頗為麻煩而且費時。此外,每個商行或公司通常要有大量的不同類型的文件,因此不得不一個個地設(shè)計與各個文件相應(yīng)的大量程序。
而且,每個公司都使用大量的業(yè)務(wù)單子或表格,包括諸如訂貨-認(rèn)可單、銷售單、購貨單、運費記帳說明的運輸單、信用單等等。在下面的敘述中,為了稱呼方便把上述這類單子、表格、記錄等等統(tǒng)稱為“單子”。一般說來,每個商行或公司對于上述不同類型的單子都有它們自己的輸入記錄格式。因此,必須按照各別用戶的不同類型的單子一個一個地設(shè)計輸入處理程序。因而,為了設(shè)計滿足每個用戶要求的各個系統(tǒng),要花費大量的勞力和時間。
此外,每個程序被設(shè)計成具有一組規(guī)程。由這組規(guī)程對文件實施輸入、更新和輸出操作。因此,當(dāng)文件的內(nèi)容或者輸入或輸出記錄因業(yè)務(wù)范圍和其它方面的改變而改變時,需要對每個程序做大量的修改工作。這樣的修改對整個系統(tǒng)來說是不容易實現(xiàn)的,在有些情況下不得不重新設(shè)計一個系統(tǒng)。
本發(fā)明摘要本發(fā)明的目標(biāo)是提供這樣一個數(shù)據(jù)處理系統(tǒng)它能統(tǒng)一地和自動地處理所有數(shù)據(jù),而且能夠適應(yīng)不同工業(yè)領(lǐng)域和業(yè)務(wù)范圍的數(shù)據(jù)處理操作而不需要為每個用戶生成各自的特定程序。
本發(fā)明包括許多方面,第一方面,本發(fā)明提供的數(shù)據(jù)處理裝置包括下述六種機(jī)構(gòu)用來貯存輸入記錄用的輸入記錄存貯機(jī)構(gòu);用來貯存標(biāo)志數(shù)據(jù)用的更新標(biāo)志數(shù)據(jù)存貯機(jī)構(gòu),標(biāo)志數(shù)據(jù)用于把輸入記錄變換為更新記錄。標(biāo)志數(shù)據(jù)包括標(biāo)志記錄鍵的數(shù)據(jù)、標(biāo)志數(shù)據(jù)字的數(shù)據(jù)、文件的關(guān)鍵字和標(biāo)志更新字內(nèi)容的數(shù)據(jù);與上述輸入記錄貯存機(jī)構(gòu)的更新記錄標(biāo)志數(shù)據(jù)貯存機(jī)構(gòu)相連的更新記錄生成機(jī)構(gòu),此生成機(jī)構(gòu)根據(jù)在所述的更新標(biāo)志數(shù)據(jù)存貯機(jī)構(gòu)中的標(biāo)志數(shù)據(jù)從貯存在上述輸入記錄存貯記錄機(jī)構(gòu)中的輸入記錄中抽出該記錄的關(guān)鍵字和相應(yīng)的數(shù)據(jù)字并生成一個更新記錄,此更新記錄含有被抽取出來的記錄關(guān)鍵字、被抽取出來的數(shù)據(jù)字、文件關(guān)鍵字以及被標(biāo)識的更新字;與上述更新記錄生成機(jī)構(gòu)相連的更新記錄存貯機(jī)構(gòu),用于存貯被生成的更新記錄;用來貯存由記錄關(guān)鍵字和數(shù)據(jù)字組成的記錄的文件存貯機(jī)構(gòu),記錄的存貯位置與文件和該記錄的關(guān)鍵字有關(guān);與上述文件存貯機(jī)構(gòu)和更新記錄存貯機(jī)構(gòu)相連的更新處理機(jī)構(gòu)。用來從所說的更新記錄存貯機(jī)構(gòu)中讀出生成的更新記錄并且根據(jù)存貯在所說的文件存貯機(jī)構(gòu)中的且被該記錄關(guān)鍵字所標(biāo)識的文件中的記錄執(zhí)行與生成的更新記錄中的更新字中的數(shù)據(jù)相對應(yīng)的一種處理。其中,被生成的更新記錄包含有標(biāo)明要作何種處理的更新字。
第二方面,本發(fā)明提供了一種新的數(shù)據(jù)處理方法,該方法包括六個方面輸入流入記錄的方法;標(biāo)出標(biāo)志數(shù)據(jù)的方法,標(biāo)志數(shù)據(jù)用于把輸入記錄轉(zhuǎn)換為更新記錄,標(biāo)志數(shù)據(jù)包括標(biāo)識記錄關(guān)鍵字的數(shù)據(jù)、標(biāo)識數(shù)據(jù)字的數(shù)據(jù)、文件關(guān)鍵字和標(biāo)識更新字內(nèi)容的數(shù)據(jù);按照被標(biāo)出的標(biāo)志數(shù)據(jù),從輸入記錄中抽取出用作為記錄關(guān)鍵字和數(shù)據(jù)字的一些字的方法以及生成包括被抽取的記錄關(guān)鍵字、被抽出的數(shù)據(jù)字、被抽出的數(shù)據(jù)字、文件關(guān)鍵字和被標(biāo)出的更新字在內(nèi)的一個更新記錄的方法;把包含記錄關(guān)鍵字和數(shù)據(jù)字的記錄按文件和記錄關(guān)鍵字存貯起來的方法;最后是按照所存貯的由記錄關(guān)鍵字所標(biāo)識的記錄。針對所生成的更新記錄中的更新字中的數(shù)據(jù)執(zhí)行一種相應(yīng)的處理。
本發(fā)明的第三方面是輸出方面的機(jī)構(gòu),數(shù)據(jù)處理裝置包括文件存貯機(jī)構(gòu),用以把諸記錄按記錄關(guān)鍵字順序存貯起來。每個記錄含有一個記錄關(guān)鍵字和一個數(shù)據(jù)字。輸出記錄標(biāo)識機(jī)構(gòu),用以標(biāo)識對于一個要從所說的文件存貯機(jī)構(gòu)中讀出的記錄的記錄關(guān)鍵字;與所說的文件存貯機(jī)構(gòu)和輸出記錄標(biāo)識機(jī)構(gòu)相連接的輸出記錄生成機(jī)構(gòu),它按照所說的輸出記錄標(biāo)識機(jī)構(gòu)給出的標(biāo)志從所述的文件存貯機(jī)構(gòu)中讀出一個記錄并產(chǎn)生一個輸出記錄;與上述輸出記錄生成機(jī)構(gòu)相連的輸出記錄存貯機(jī)構(gòu),用來存貯被生成的輸出記錄;存貯時,根據(jù)存貯在所述的文件存貯機(jī)構(gòu)中分別記錄的記錄關(guān)鍵字的值來形成一個代碼以替代原來的關(guān)鍵字。所說的輸出記錄標(biāo)志機(jī)構(gòu)包含有對上述代碼中的各位數(shù)字作出標(biāo)識的機(jī)構(gòu),該代碼代替存貯在所說的文件存貯機(jī)構(gòu)中的每個記錄的記錄關(guān)鍵字;所說的輸出記錄生成機(jī)構(gòu)還包括根據(jù)從所述的文件存貯機(jī)構(gòu)中讀出的輸出記錄來生成一個新的輸出記錄的機(jī)構(gòu),這個新的輸出記錄的記錄關(guān)鍵字是從被標(biāo)識出的那組數(shù)字中得出的。
本發(fā)明的第四方面是就數(shù)據(jù)處理方法而言的,該方法包括如何根據(jù)記錄關(guān)鍵字來存放各個記錄,每個記錄包含有記錄關(guān)鍵字和數(shù)據(jù)字其中的存放在各個記錄中的記錄關(guān)鍵字按照它們的值來形成一個代碼以代替原記錄關(guān)鍵字;處理方法的第二點是如何對一個記錄標(biāo)識出從所述的存貯記錄中讀出的記錄關(guān)鍵字;第三是如何按照所說的被標(biāo)識的記錄關(guān)鍵字從所說的存貯記錄中讀出一個記錄并產(chǎn)生一個輸出記錄,所說的標(biāo)識步驟包括對代碼中的各位數(shù)字進(jìn)行標(biāo)識,此代碼替換了各個被存貯的記錄的記錄關(guān)鍵字;所說生成步驟包括根據(jù)讀出的記錄來生成一個新的輸出記錄。新的輸出記錄的關(guān)鍵字是從上述被標(biāo)志出的各位數(shù)字中導(dǎo)出的。
如上所述,按照本發(fā)明的上述思想,所有數(shù)據(jù)都是以一種能夠統(tǒng)一地和自動地進(jìn)行處理的方式進(jìn)行排列和組合的。按照本發(fā)明所提供的數(shù)據(jù)處理系統(tǒng)是根據(jù)數(shù)據(jù)本身進(jìn)行操作的,而不象通常的數(shù)據(jù)處理系統(tǒng)。必須規(guī)定數(shù)據(jù)被存貯的位置。按照本發(fā)明所提供的數(shù)據(jù)處理系統(tǒng)是這樣來設(shè)計的分析數(shù)據(jù)的輸入處理、文件更新處理和數(shù)據(jù)輸出處理的內(nèi)容并得出一系統(tǒng)處理步驟。各個處理步驟能夠以統(tǒng)一的自動的方式獨立地執(zhí)行。更具體地說,每個處理步驟可以用一個與清單的格式無關(guān)的通用程序來做。此外,在各個處理步驟中要被處理的數(shù)據(jù)的內(nèi)容可包含對數(shù)據(jù)本身作出標(biāo)志的數(shù)據(jù),諸如記錄的關(guān)鍵字和記錄號等等。因此,即便數(shù)據(jù)有各種不同的格式,利用標(biāo)志數(shù)據(jù)就能夠做所有必要的處理,而不必要有專門針對每個用戶的特定的程序。
對圖例的摘要說明
圖1展示了由本發(fā)明所提供一個數(shù)據(jù)處理裝置的整體安排;
圖2用以說明輸入處理部件12的操作;
圖3用來說明基本的記錄生成部件13的操作原理;
圖4說明更新記錄生成部件14的工作原理;
圖5A和5B表示更新記錄存貯器23中的各個更新記錄的存貯狀態(tài);
圖6A和6B表示在文件存貯器24中的各個文件的存貯狀態(tài);
圖7是說明文件更新處理部件15的操作的流程圖;
圖8展示了文件存貯器24中的一個特定的記錄實例;
圖9說明一種貨物代碼的編碼系統(tǒng);
圖10展示了在輸出記錄標(biāo)志存貯器26中的一個標(biāo)志數(shù)據(jù)的實例;
圖11(a)、11(b)和11(c)表示輸出記錄在生成后的記錄存貯器21中的存貯狀況。
圖12是說明輸出記錄生成部件25的工作情況的流程圖;
圖13展示了存貯在生成后記錄存貯器21中的一個記錄實例;
圖14A到14C表示存放在文件存貯器24中的各個記錄的存貯狀態(tài);
圖15給出了存放在輸出格式標(biāo)識存貯器28中的一個標(biāo)識數(shù)據(jù)的實例;圖16A到16E說明各個標(biāo)志數(shù)據(jù)的內(nèi)容;
圖17展示了輸出處理部件27的操作流程圖,而圖18A到18D給出了輸出數(shù)據(jù)的打印狀態(tài);
圖19給出了一組放大了的打印狀態(tài);
圖20給出了存貯在輸出格式標(biāo)識存貯器28中的那個標(biāo)識數(shù)據(jù)的另一個實例;
圖21給出了輸出處理部件27的另一種操作的流程圖;
圖22和23給出了輸出數(shù)據(jù)的打印狀態(tài);
圖24到29C說明了本發(fā)明的另一個實施例。其中圖24是按照本發(fā)明給出的數(shù)據(jù)處理裝置的整體系統(tǒng)的安排。圖25展示了存貯在記錄標(biāo)識存貯器33中的標(biāo)志數(shù)據(jù)。圖26展示了存貯在文件標(biāo)識存貯器37中的標(biāo)志數(shù)據(jù)。圖27A到27D給出了圖23中所示的那個標(biāo)志數(shù)據(jù)的細(xì)節(jié)。圖28是文件更新操作的流程圖,圖29A到29C是構(gòu)成一個基本記錄的字排列的另一例子。
對于優(yōu)先推薦的實施例的詳細(xì)描述現(xiàn)在讓我們參考圖1到20來說明本發(fā)明的一個實施例。
圖1給出了按本發(fā)明作出的一個數(shù)據(jù)處理裝置的總體安排。輸入部件11輸入單據(jù)式的數(shù)據(jù)和類似的東西,它包括置于各種標(biāo)志數(shù)據(jù)用的置位鍵、輸入數(shù)據(jù)用的數(shù)字飽和功能鍵等等。輸入處理部件12基本記錄生成部件13、更新記錄生成部件14和文件更新處理部件15一個接一個地與輸入部件11串聯(lián)。輸入記錄標(biāo)識存貯器16、基本記錄標(biāo)識存貯器17、更新記錄標(biāo)識存貯器18和更新存貯器19分別與輸入處理部件12、基本記錄生成部件13、更新記錄生成部件14和文件更新處理部件15相連接。此外,生成后的記錄存貯器21、基本記錄存貯器22、更新記錄存貯器23和文件存貯器24分別連接到輸入處理部件12、基本記錄生成部件13、更新記錄生成部件14和文件更新處理部件15。在輸入記錄標(biāo)識存貯器16、基本記錄標(biāo)識存貯器17和更新記錄標(biāo)識存貯器18中分別建立來自輸入部件11的予定數(shù)據(jù)。各種標(biāo)識數(shù)據(jù)的細(xì)節(jié)將在后面敘述。輸入記錄標(biāo)識存貯器16存放要被生成的記錄的字編號和字內(nèi)容的對應(yīng)關(guān)系和字內(nèi)容本身。字的內(nèi)容有“輸入字”、“索引字”和“計算字”等等。基本記錄標(biāo)識存貯器17存貯下面將要說明的一個基本記錄的字編號與存貯在生成后的記錄存貯器21中的一個記錄的各個字編號之間的對應(yīng)關(guān)系。更新記錄標(biāo)識存貯器18中存放的數(shù)據(jù)反映了由單個或一組記錄關(guān)鍵字和數(shù)據(jù)字組成的一個更新記錄中的各個字與基本記錄中的各個字之間的對應(yīng)關(guān)系。除了上述之外,存貯器18存放用以標(biāo)識要被更新的一個文件的文件關(guān)鍵字和用以標(biāo)識被更新內(nèi)容的數(shù)據(jù)。
輸入處理部件12的功能是按照輸入記錄標(biāo)識存貯器16中存放的字的內(nèi)容對來自輸入部件11的輸入數(shù)據(jù)進(jìn)行處理、把與該集合字編號對應(yīng)的一個記錄寫入生成后的記錄存貯器21,而且在一個記錄被寫入存貯器21之后啟動基本記錄生成部件13?;居涗浬刹考?3根據(jù)存貯在基本記錄標(biāo)識存貯器17中的內(nèi)容把寫入到生成后記錄存貯器21中的被生成的記錄轉(zhuǎn)換為一個基本記錄并把這個轉(zhuǎn)換后的記錄寫入基本記錄存貯器22?;居涗浬刹考?3進(jìn)而在完成把基本記錄寫入基本記錄存貯器22之后就啟動更新記錄生成部件14。所說的基本記錄對應(yīng)于單個記錄或一組記錄之總和的一張單據(jù)。更新記錄生成部件14按照更新記錄標(biāo)識存貯器18中的內(nèi)容由一個基本記錄來生成一個更新記錄并把這個更新記錄寫入更新記錄存貯器23。要被寫入更新記錄存貯器23的更新記錄包括一個文件關(guān)鍵字、一個或一組記錄關(guān)鍵字、更新內(nèi)容以及數(shù)據(jù)字。
文件更新處理部件15是由來自更新記錄生成部件14的更新記錄生成結(jié)束指令來激發(fā)的,或者在執(zhí)行批處理時由來自輸入設(shè)備11的一條更新標(biāo)志指令來引發(fā)。文件更新處理部件15利用更新存貯器19并按照更新記錄中的文件關(guān)鍵字和記錄關(guān)鍵字來更新與文件存貯器24中的一個相應(yīng)文件中的諸記錄。更新存貯器19由隨機(jī)存取存貯器(RAM)組成并有A、B和C三個區(qū)域分別用作存貯器。
由一個或一組記錄關(guān)鍵字和數(shù)據(jù)字組成的一組記錄以文件形式按照關(guān)鍵字的順序被存放在文件存貯器24中。存放在文件存貯器24中的各個記錄由輸出記錄生成部件25讀出。輸出記錄標(biāo)志存貯器26與輸出記錄生成器25相連。輸出記錄標(biāo)志存貯器26予存由輸入部件11得到的用此產(chǎn)生輸出記錄用的標(biāo)志數(shù)據(jù),例如文件關(guān)鍵字檢索條件、被生成的字,字的內(nèi)容等等。輸出記錄生成器25是由來自輸入部件11的輸出標(biāo)志指令激發(fā)的,它根據(jù)輸出記錄標(biāo)志存貯器26中的內(nèi)容來生成一個記錄并把它寫入生成后的記錄存貯器21。存放生成后記錄存貯器21中的記錄由輸出處理部件27讀出、接著按照在輸出形式標(biāo)志存貯器28中予先建立數(shù)據(jù)以予定的格式把讀出的記錄輸出到予定的位置,然后在輸出設(shè)備,例如在打印機(jī)或顯示器上打印或顯示。
現(xiàn)在來說明上述實施例的工作過程。以單據(jù)和類似形式提供的一個輸入記錄中的各個字的數(shù)據(jù)從輸入部件11輸入,然后提供給輸入處理部件12。輸入處理部件12在接收數(shù)據(jù)時參照如圖2所示的存貯在輸入記錄標(biāo)識存貯器中的標(biāo)識數(shù)據(jù),以字的編號順序按照與字編號“I1、I2、…In”相對應(yīng)的字內(nèi)容“W1、W2、…Wm”(輸入、索引、計算等等)”對輸入的各個字?jǐn)?shù)據(jù)進(jìn)行處理。然后把處理結(jié)果作為該字的數(shù)據(jù)“m1、m2、…、mn”寫入到生成后的記錄存貯器21。當(dāng)這個字的內(nèi)容是“輸入字”,部件12就在生成后記錄存貯器21中與該字的編號相對應(yīng)的一個字的地方建立這個輸入字的數(shù)據(jù)。當(dāng)這個字的內(nèi)容是“索引字時”,部件12參照有關(guān)的索引存貯器(圖中未畫出),把這個輸入字?jǐn)?shù)據(jù)(例如是一個編碼數(shù)據(jù))變換為字符數(shù)據(jù)并把它放到記錄存貯器21中與這個字的編號相對應(yīng)的位置上,當(dāng)這個字的內(nèi)容是“計算字”時,部件12執(zhí)行一個由若干字組成的計算公式并把計算結(jié)果存入到生成后的記錄存貯器21中相應(yīng)字的位置上。計算公式是用字的編號來確定的。例如,如果由“I1×I2”定義一個字內(nèi)容“W2”,那么部件12將從生成后的記錄存貯器21中讀出由字編號“I1”和“I2”所代表的數(shù)據(jù)字“m1”和“m2”并把它們相乘。乘積所表示的字?jǐn)?shù)據(jù)“m3”被存放在生成后記錄存貯器21中由輸入字編號“I3”的位置上。
如上所述,輸入部件12負(fù)責(zé)完成與存貯在輸入記錄標(biāo)識存貯器16中的各個字的內(nèi)容相對應(yīng)的一些操作,當(dāng)完成把一個記錄中的全部數(shù)據(jù)存入到生成后記錄存貯器121中之后,部件12激勵基本記錄生成器13。
基本記錄生成器13是由來自輸入部件12的一條指令激發(fā)的。它按照存貯在基本記錄標(biāo)識存貯器17中的標(biāo)識數(shù)據(jù)、根據(jù)存貯在生成后記錄存貯器21中的一個記錄來產(chǎn)生一個基本記錄。更具體一點說,圖3所示的基本記錄標(biāo)識存貯器17所存貯的標(biāo)識數(shù)據(jù)反映了生成后記錄存貯器21中的各個字編號“I1、I2、…、In”與基本記錄存貯器22中的各個字編號“S1、S2、…、Sn”之間的對應(yīng)關(guān)系。基本記錄生成器13把各個字?jǐn)?shù)據(jù)“m1、m2、…、mn”按基本記錄標(biāo)識存貯器中存貯的標(biāo)識數(shù)據(jù)所指定的次序安排在生成后記錄存貯器21中的一個記錄中。然后把它們存入存貯器17。部件13交替地產(chǎn)生由輸入記錄的類型所定義的字并把這個字存入基本記錄存貯器22,例如,如圖3所示,當(dāng)生成后記錄中的字編號“I1、I4、I5、…I7被置成對應(yīng)于基本記錄中的字編號“S1、S2、S3、…、Sn”時,基本記錄生成器13把生成后記錄存貯器21中的字?jǐn)?shù)據(jù)按照“m2、m4、m5、…、m7”的順序排列。然后把這個字?jǐn)?shù)據(jù)作為一個基本記錄存入基本記錄存貯器22。如上所述,基本記錄生成器針對每一個由單個基本記錄或一組基本記錄組成的單據(jù)來產(chǎn)生上述的基本記錄,然后把產(chǎn)生的記錄寫入基本記錄存貯器22。當(dāng)指出一張單據(jù)的輸入數(shù)據(jù)結(jié)束的輸入指示數(shù)據(jù)經(jīng)由輸入處理部件12送入到基本記錄生成器13時,部件13就去激發(fā)更新記錄生成器14。
更新記錄生成器14按照更新記錄標(biāo)識存貯器18中的標(biāo)識數(shù)據(jù)來更新基本記錄存貯器22中存放的基本記錄以產(chǎn)生更新記錄,然后把這些更新記錄寫入更新記錄存貯器23。更新記錄標(biāo)志存貯器18予存如圖4所示的標(biāo)識基本記錄字編號用的數(shù)據(jù)。這些數(shù)據(jù)指出一個或一組記錄關(guān)鍵字和數(shù)據(jù)字、更新內(nèi)容以及要被更新的文件名,例如標(biāo)識數(shù)據(jù)18-1表示“total”、“F質(zhì)”、“S2、S3”和“S5、S6、S1、S4”分別作為更新內(nèi)容、文件關(guān)鍵字、記錄關(guān)鍵字和數(shù)據(jù)字。在此情況下給出了兩個記錄關(guān)鍵字。此外,標(biāo)識數(shù)據(jù)18-2指出“total”、“F3”、“S1”和“S13、S14”分別作為更新內(nèi)容、文件關(guān)鍵字、記錄關(guān)鍵字和數(shù)據(jù)字。在這個實例中只給單個記錄關(guān)鍵字。標(biāo)識數(shù)據(jù)中的更新內(nèi)容表示“增”“刪”、“累計”、“修正”和“增加和累計”中的任何一種。更新記錄生成器14根據(jù)基本記錄存貯器22中存放的基本記錄按照標(biāo)識數(shù)據(jù)來生成更新記錄。例如,部件14生成的更新記錄23-1具有“tatal”、“F2”、“m4、m5”和“m1、m9、m2、m6”分別作為更新內(nèi)容,文件關(guān)鍵字、記錄關(guān)鍵字和數(shù)據(jù)字。其余的更新記錄按類似方法產(chǎn)生并存入更新記錄存貯器23。存貯在更新記錄存貯器23中的更新記錄的各個字用界限符“,”和“;”來分隔,而各個更新記錄之間則用界限符“(”分隔。每個更新記錄的長度不等。在每個更新記錄中,記錄界限符“(”之后跟隨表示“更新內(nèi)容”、“文件關(guān)鍵字”和“記錄關(guān)鍵字”的一些字。記錄關(guān)鍵字包含一個或一組由界限等“,”逐一分隔的字,界限符“;”之后接著數(shù)據(jù)字。
圖5a給出了具有一個字“更新內(nèi)容”的更新記錄。而且,更新記錄可具有如圖5b所示的“更新內(nèi)容”。更具體一點說,在圖5b中,當(dāng)更新內(nèi)容是累計時,表示“加”或“減”的符號,“+”或“-“-”被增補(bǔ)到要被累加的字上。如果更新內(nèi)容是“修正”,符號“*”被增補(bǔ)到要被修正的那個數(shù)據(jù)字。如果更新內(nèi)容是“刪除”,那么更新記錄可以只有記錄關(guān)鍵字而不用附加那個數(shù)據(jù)字。如果更新內(nèi)容是“增加”,那么要被增加的記錄關(guān)鍵字和數(shù)據(jù)字被加入該更新記錄。換句話說,如果更新記錄只包含文件關(guān)鍵字和記錄關(guān)鍵字,那么更新內(nèi)容意味著“刪除”。在文件更新處理時,如果文件更新處理器15發(fā)現(xiàn)在文件存貯器24中沒有一個記錄其記錄關(guān)鍵字等于更新記錄的記錄關(guān)鍵字,那么此次更新處理就是“增加”。相反,如果部件15在文件存貯器24中找到了那個記錄,它就校驗其數(shù)據(jù)字應(yīng)該附加上“+”、“-”還是“*”。如果“+”或“-”被附加到數(shù)據(jù)字上,部件15將認(rèn)為更新內(nèi)容是“累計”。如果是“*”被附加到數(shù)據(jù)字。部件15將確認(rèn)更新內(nèi)容是“修正”。因此部件15能夠?qū)σ碌奈募?zhí)行相應(yīng)的處理操作。
文件存貯器24如圖6A所示那樣按照文件關(guān)鍵字的順序貯存一系列記錄,每個記錄包含話錄關(guān)鍵字和數(shù)據(jù)字。文件中的諸記錄按記錄關(guān)鍵字排序。在圖6A中,“”、“(”、“,”和“;”分別代表文件界限等、記錄界限符、字界限符和表明記錄關(guān)鍵字和數(shù)據(jù)字的界限符。此外,“F1”、“F2”、…表示文件關(guān)鍵字,而“m”指出可變化的數(shù)據(jù),它所包含的字節(jié)數(shù)等于有效數(shù)據(jù)的長度。文件存貯器24中的每個字和記錄只含有壓縮了的事務(wù)處理數(shù)據(jù)。在每個文件中,各個記錄的記錄關(guān)鍵字的數(shù)目是相同的,文件F1和F2分別具有三個和兩個記錄關(guān)鍵字。在圖6A所示的例子中,在記錄關(guān)鍵字和數(shù)據(jù)字之間使用界限符“;”,然而,來自一個記錄之首的予定數(shù)目的字可以被看作是關(guān)鍵字。在此情況下,文件更新處理器15可以被設(shè)計成把記錄首部的若干予定數(shù)目的字作為關(guān)鍵字。此外,通過把每個文件的記錄關(guān)鍵字的數(shù)目予先存貯在一個存貯器中,使得每個文件可此有不同數(shù)目的記錄關(guān)鍵字。圖6B展示了存放在文件存貯器224中的另一種記錄格式。由一個記錄頭部開始的第一個界限符“?!?。”分隔的一個或一組字代表一記錄關(guān)鍵字。例如,在文件F1中“m、m、m?!倍际怯涗涥P(guān)鍵字。記錄關(guān)鍵字“m、m、m?!边M(jìn)一步被另一界限符“,”逐個隔開。第一個定界符“?!敝蟮淖执頂?shù)據(jù)字。這些數(shù)據(jù)字每個都用定界符“。”隔開。僅管通常都把一個記錄的關(guān)鍵字移置到記錄的首部,不過除非是它被予先固定好了位置,原則上記錄關(guān)鍵字可以位于記錄中的任何位置。
來自更新記錄生成器14的指令或來自輸入部件11的一條更新標(biāo)識指令激發(fā)文件處理部件15并使它執(zhí)行如圖7那個流程圖所示的文件更新處理,更具體一點說,部件15按照文件關(guān)鍵字的次序和該文件中記錄關(guān)鍵字的次序?qū)Ω掠涗洿尜A器23中的更新記錄進(jìn)行排序(圖7中A1這一步)。
部件15接著從存貯器23中讀出具有相同文件關(guān)鍵字的所有更新記錄并把它們寫入更新存貯器19中的區(qū)域A(A2步)。部件115進(jìn)一步從文件存貯器24中讀出各記錄具有相應(yīng)文件關(guān)鍵字的所有文件并把它們寫入更新存貯器19的區(qū)域B中(A3步)。然后,部件15按照更新記錄中的更新內(nèi)容更新區(qū)域B中的區(qū)域A中的更新記錄相對應(yīng)的記錄(A4步)。更新后的記錄或區(qū)域B中未被更新的記錄統(tǒng)統(tǒng)按照它們關(guān)鍵字的順序被寫入更新存貯器19中的區(qū)域C,譬如說,根據(jù)需要,按照關(guān)鍵字的升序或降序來存放。當(dāng)存貯在區(qū)域A和B中的諸記錄的更新處理完成后,存放在更新存貯器19的區(qū)域C中的更新記錄被寫入文件存貯器24中的一個新區(qū)中。(A5步)然后,判斷對應(yīng)于存貯在更新記錄存貯器23中的所有文件關(guān)鍵字的更新記錄的更新處理是否已經(jīng)全部完成(A6步)。如果此處理尚未完成。部件15折回A2步并對對應(yīng)于剩下的文件關(guān)鍵字的更新記錄執(zhí)行更新處理。隨著對存貯器23中的所有更新記錄重復(fù)執(zhí)行A2到A6步中的更新處理,該文件的更新處理終將完成。
現(xiàn)在來說明按照更新內(nèi)容對更新記錄進(jìn)行更新的A4那一步中的更新操作。
如果更新內(nèi)容是“增加”,那么在那個更新記錄中帶有記錄關(guān)鍵字和數(shù)據(jù)字的要增加的記錄按照無記錄關(guān)鍵字的順序被插入到從文件存貯器24中讀出的那些記錄中并存入更新存貯器19中的B區(qū)中。對于“刪除”情形。被刪除的是與更新記錄中的關(guān)鍵字相同的B區(qū)中的諸記錄。在此情形下,只指定記錄關(guān)鍵字中的高位字或高位數(shù)字,就可刪除所有B區(qū)中的與上述標(biāo)識相吻合的記錄。當(dāng)更新的內(nèi)容是“累計”時,在B區(qū)中與該記錄關(guān)鍵字相一致的各個記錄的各數(shù)據(jù)字中,由那個更新記錄的數(shù)據(jù)字所標(biāo)識的數(shù)據(jù)被加到相應(yīng)的字中。當(dāng)更新內(nèi)容是修改時,在B區(qū)中與此更新記錄中的記錄關(guān)鍵字相一致的各個記錄中的那些字中,與那個更新記錄的數(shù)據(jù)字相對應(yīng)的字被修改為由更新記錄中的數(shù)據(jù)字所指定的那個數(shù)據(jù)。當(dāng)更新內(nèi)容是“增加并累計”時,如果在B區(qū)中存在與那個更新記錄中的記錄關(guān)鍵字相一致的記錄。那么執(zhí)行與“累計”相類似的操作,如果不存在這樣的記錄,就執(zhí)行類似于“增加”那樣的操作。
如上所述,準(zhǔn)對文件存貯器24中的每一個相應(yīng)文件,更新由輸入部件11所輸入的記錄。圖8給出了文件存貯器24中存放的一個文件的實例。在圖8中,用字編號“01”標(biāo)識的各記錄中的頭一個字是記錄關(guān)鍵字。更具體地說,是把一個項的代碼作為記錄關(guān)鍵字存放。在每一個記錄中由字編號“11”、“12”、…所標(biāo)識的字是數(shù)據(jù)字。其中存放“單價”、“總計”等等。每個記錄包含可變長的數(shù)據(jù),每個字用字界限符“,”分隔,記錄界限等“(”則被插在記錄的開頭。諸記錄按記錄關(guān)鍵字的升序排列并被壓縮存貯到存貯器中而不帶諸如前導(dǎo)零這類存貯空間。用作為每個記錄中的記錄關(guān)鍵字的項目編碼具有如圖9所示的編碼體系。例如,項目編碼“111”、“112”,…表示“手表A”、“手表B”等等。圖9所示的項目編碼還表示“大分類”。每個項目編碼中的最高位和次高位數(shù)字分別代表大類和中類。例如“11”和“12”分別代表手表和鐘,每個項目編碼中最高位數(shù)字“1”和“2”分別代表“鐘表”和“袖珍計算器”。更具體地說,用作為項目編碼的記錄關(guān)鍵字等的碼子的重量按每個碼子中從高到低的數(shù)字順序?qū)?yīng)于大分類、中分類等等。當(dāng)一個記錄有一組記錄關(guān)鍵字時,它們的權(quán)重順序是從第一個到最后一位數(shù)字。用作為記錄關(guān)鍵字的碼子含有可變長的數(shù)據(jù)。如果想在項目編碼“112”和“113”之間插入一個新的項目名稱“WatchBa”的項目編號,那么可把新項目的項目編碼定為“1121”。因此,能很方便地增加一個新記錄。記錄關(guān)鍵字的重量可按從最后一個數(shù)字到第一個數(shù)字計算或者按任何所希望的順序計算。
如上所述,文件存貯器24存貯與項目編碼相對應(yīng)的記錄,但不存貯有關(guān)大分類和中分類的記錄。而且每個記錄沒有與“總計”相對應(yīng)的字?jǐn)?shù)據(jù)。這些記錄和字?jǐn)?shù)據(jù)按下述說明由輸出記錄生成部件25任意產(chǎn)生。
圖10給出了輸出記錄標(biāo)識存貯器26中標(biāo)識數(shù)據(jù)的實例。圖12給出了輸出記錄生成部件25的操作流程圖。按照輸出記錄標(biāo)識存貯器26中的標(biāo)識數(shù)據(jù)。由來自文件存貯器24中的記錄生成如圖13所示的輸出記錄并把它存貯到生成后記錄存貯器21。下面我們來說明生成輸出記錄的操作過程。
輸出記錄標(biāo)識存貯器26存放文件關(guān)鍵字和檢索條件。它們被用作為從文件存貯器24中檢索并讀出予定文件和記錄的標(biāo)識數(shù)據(jù)。此外,存貯器26還存貯輸出記錄生成字及其字的內(nèi)容。
而且,為了生成與記錄關(guān)鍵字的重量相對應(yīng)的輸出記錄。存貯器26(見圖10)還存貯生成記錄元3(記錄元的含義是記錄單位)生成記錄元2和生成記錄1的標(biāo)識數(shù)據(jù)。輸出記錄生成字能夠標(biāo)識出構(gòu)成一個輸出記錄的任選的字?jǐn)?shù)。在這個例子中,輸出記錄生成字中的字編號“。1”,“。2”和“。3”分別對應(yīng)于“ao1>1”“ao2>2”和“ao1<3”?!癮o1<3”這個字內(nèi)容中的“a”表示從文件存貯器24中檢索到并讀出的一個記錄(源記錄)而“ao1”則代表這個源記錄的字編號為“01”的字。利用記錄關(guān)鍵字的高位(即高位數(shù)字)按任意的類別或累計級別能夠?qū)敵鲇涗涍M(jìn)行整頓和排序,并且能對不同級別的輸出記錄進(jìn)行整理和排序。圖10給出的例子把輸出記錄分成三級進(jìn)行整理。每種排序或整理級被稱為“記錄元”(一個記錄單位的縮寫),生成記錄元3標(biāo)志帶有源記錄產(chǎn)生的最低級別的輸出記錄。生成記錄元2表示按較高級別整理出的輸出記錄,它們來自按生成記錄元3的標(biāo)識生成的輸出記錄。生成記錄元1表示按更高級別收集到的輸出記錄,它們來自按生成記錄元2的標(biāo)識生成的輸出記錄。屬于生成記錄元3的一個輸出記錄的記錄關(guān)鍵字包含由對應(yīng)于生成字“.1”、“.2”和“.3”字內(nèi)容所標(biāo)識的三個字。生成記錄元2的輸出記錄的記錄關(guān)鍵字包含由字內(nèi)容?!?1”和“.2”所指定的兩個字。類似地,生成記錄元1的輸出記錄的記錄關(guān)鍵字包含由字內(nèi)容“1”所標(biāo)識的一個字。例如,屬于生成記錄元3的記錄關(guān)鍵字包含對應(yīng)于“.1”、“.2”和“.3”的字內(nèi)容“ao1>1”、“ao1>2”和“ao1>33”,該記錄關(guān)鍵字的第一個字“.1”被置為該源記錄的字編號為“01”那個字?jǐn)?shù)據(jù)的第一位數(shù)字。類似地,第二個字被置為字編號為“01”的那個字?jǐn)?shù)據(jù)的第二位數(shù)字。而第三個字則被置為字編號為“01”的那個字?jǐn)?shù)據(jù)的剩下各位數(shù)字。字內(nèi)容“b.1/T”中的“b”代表輸出記錄。而“b.1”表示要讀出輸出記錄中字編號為“.1”的字?jǐn)?shù)據(jù)。因此相對于生成字“11”所建立的字內(nèi)容“b.1/T”是一個標(biāo)識數(shù)據(jù),用以讀出該輸出記錄的字編號為“.1”的字?jǐn)?shù)據(jù)。再從表格T(未畫出)中讀出相應(yīng)的數(shù)據(jù)并把此讀出數(shù)據(jù)置為生成記錄元1的那個輸出記錄的字編號為“11”的漢字?jǐn)?shù)據(jù)。更詳細(xì)地說,對應(yīng)于從字“。1”中讀出的項目編碼的項目名《表格存貯器T中被讀出并作為字編號“11”的數(shù)據(jù)字被寫入一個輸出記錄。對應(yīng)于生成記錄元2的生成字11被置為字內(nèi)容“b.1&b.2個”。這個字內(nèi)容表示把輸出記錄中字編號為“.1”和“.2”的各個字?jǐn)?shù)據(jù)組合在一起,對應(yīng)于這個合成數(shù)據(jù)的數(shù)據(jù)從表格存貯器T中被讀出,然后把讀得的數(shù)據(jù)用作為生成記錄元2的那個個輸出記錄的字編號為“11”的字?jǐn)?shù)據(jù)。生成記錄元3的輸出記錄的字編號“11”被置為“ao1/T”作為其字內(nèi)容。在此情形下對應(yīng)于字編號“11”的那個字?jǐn)?shù)據(jù)的數(shù)據(jù)從表格存貯器T中被讀出并把讀得的數(shù)據(jù)作為字編號“11”的字?jǐn)?shù)據(jù)存貯起來。如上所述,如果在對應(yīng)于生成字“12”、“13”、“14”等等的各個生成記錄元中標(biāo)志出“1”,其字?jǐn)?shù)據(jù)就按各個字內(nèi)容生成。注意,生成字“C1”是一主控字,它被用于臨時存放一個生成字和按照這個臨時存貯的字去執(zhí)行記錄元之間的計算。
現(xiàn)在參照圖11(a)到11(c)和圖12所示的流程圖來描述輸出記錄生成器25的工作過程。假定在該流程圖所示的處理之前從文件存貯器24中讀出帶有標(biāo)志的文件關(guān)鍵字和檢索條件(例如規(guī)定一個字具有指定值或其它特性的條件)并把讀出的記錄存入生成后記錄存貯器21。在下面的例子中,假定圖8所示的那個文件中的所有記錄都被讀入生成后記錄存貯器21。在圖12的B1那一步中,輸出記錄生成器25從輸出記錄標(biāo)識存貯器26中讀出具有最低級別(如圖10所示的記錄元3)的記錄元n的標(biāo)識數(shù)據(jù)并按照此標(biāo)識數(shù)據(jù)生成該輸出記錄的各個字?jǐn)?shù)據(jù)。舉例說,部件25根據(jù)圖8所示的文件存貯器24中的源記錄“111、1000、50、…”來生成輸出記錄“1.1.1、表表A、1000、50、500000、”此時,在輸出記錄中字編號為“15”的那個字未被生成。類似地,部件25按照記錄3的標(biāo)識數(shù)據(jù)由所有源記錄生成輸出記錄,然后把它們寫入生成后記錄存貯器21。在B2那一步,部件25按照記錄關(guān)鍵字的順序?qū)敵鲇涗浥判?。如果部?5發(fā)現(xiàn)一組輸出記錄具有相同的記錄關(guān)鍵字,它就累計該些輸出記錄中各自的數(shù)據(jù)字以便生成單個輸出記錄。部件25就這樣生成對應(yīng)于記錄元3的輸出記錄并把它存入生成后記錄存貯器21中,作為如圖11(a)所示的輸出記錄文件f3。在B3這一步,部件25判斷有無下一記錄元的標(biāo)識數(shù)據(jù),若有,部件25就按照對應(yīng)于在輸出記錄標(biāo)識存貯器26中的記錄元2的標(biāo)識數(shù)據(jù)來生成下一輸出記錄。例如在生成字編號“13”和“14”中,標(biāo)識出了表示“累計到”高位記錄元的“1”。部件25就累計記錄元3的那個輸出記錄的字編號為13和14的字?jǐn)?shù)據(jù)并把累計得到的字作為記錄元2的那個輸出記錄的字編號為13和14的字?jǐn)?shù)據(jù)。在B5這一步,部件25執(zhí)行記錄元中的計算。舉例說,部件25把記錄元2中產(chǎn)生的字編號為“14”的字?jǐn)?shù)據(jù)存入主控字“C1”中。部件25按照各個記錄元中的標(biāo)識執(zhí)行B3到B5步的處理,以便按照如圖11(b)和11(c)所示那樣,依據(jù)各個記錄元生成輸出記錄文件f2和f1并把它們存入生成后記錄存貯器21。如果在B3步斷定沒有要被標(biāo)識的下一個記錄元。部件25就轉(zhuǎn)到B6去執(zhí)行記錄元之間的計算。例如,部件25將計算用生成記錄元2所產(chǎn)生的一個字(如主控字“C1”)對生成記錄元3的那個輸出記錄的字編號15的一個字的比率。這個比率可以是銷售利潤率。部件25把此計算結(jié)果存貯在生成后的記錄存貯器21中作為生成記錄元3的各個記錄的相應(yīng)字?jǐn)?shù)據(jù)。在B7步,部件25把生成后記錄存貯器21中的所有輸出記錄按記錄元的順序重新排序。更細(xì)一點說,部件25把所有輸出記錄按照該輸出記錄的字“.1”、“.2”和“.3”的記錄關(guān)鍵字基礎(chǔ)上的上升順序重新整理。重新整理的結(jié)果示于圖12。在這個例子中,各輸出記錄按記錄元的升序重新排列。但是也可按照降序或者按該記錄所標(biāo)明的次序重新排列輸出記錄。
在上述例子中,高檔記錄元是按照輸出記錄標(biāo)識存貯器26中的標(biāo)識數(shù)據(jù)生成的。然而對應(yīng)于高檔記錄元的記錄可以被予先存放在文件存貯器24中。在此情況下,當(dāng)更新記錄標(biāo)識存貯器18中標(biāo)志出該更新記錄的生成時,對應(yīng)于高檔記錄元的記錄關(guān)鍵字可以在存貯器18中被標(biāo)識出。根據(jù)被標(biāo)識的記錄關(guān)鍵字,更新記錄生成器14可產(chǎn)生對應(yīng)于這一高檔記錄元的更新記錄。在此例中,對應(yīng)于高檔記錄元的記錄將如圖14A所示的文件存貯器24中被生成,關(guān)于文件更新處理器15的更新處理將在以后敘述。在圖14A中,字編號為“01”、“02”和“03”的各個字是記錄關(guān)鍵字。各個記錄均按記錄關(guān)鍵字的順序排列和存放。圖14B和14C給出了在圖14A中所示的諸記錄的另一種存貯格式。在圖14B中,標(biāo)識一個記錄元級別的數(shù)據(jù)被存放在編號為“01”的字中,該記錄元中的關(guān)鍵字被存貯在編號為“02”的字中。圖14C所示的例子給出了對應(yīng)于各個記錄元級別的一組記錄界限符種類。圖13和圖14A-14C還給出一種空白數(shù)據(jù)類型,用以澄清字編號和字?jǐn)?shù)據(jù)的對應(yīng)關(guān)系。但是當(dāng)字編號和數(shù)據(jù)字被真正存入存貯器中時不包括空白數(shù)據(jù)。更詳細(xì)地說,具有可變長數(shù)據(jù)的字?jǐn)?shù)據(jù)由界限符隔開并壓縮存放在存貯器中。
按上述過程在生成后記錄存貯器21中生成的每個記錄必須被轉(zhuǎn)換為基本記錄供基本記錄生成器13處理,使得文件存貯器24中的文件能夠被更新記錄生成器14和文件更新處理器15再次更新之。接著,由輸出處理部件27讀出在生成后記錄存貯器21中生成的每個記錄并由輸出部件29按照來自標(biāo)識存貯器28的輸出用的標(biāo)識數(shù)據(jù)把各記錄顯示或打印出去,被顯示或打印的內(nèi)容還帶有標(biāo)識形狀和類似形式用的框格線。表格的輸出處理將在下面敘述。
圖15給出了輸出形狀標(biāo)識存貯器28的標(biāo)識數(shù)據(jù)的例子。被標(biāo)識的有要被輸出的對應(yīng)于各個記錄元的輸出記錄的字編號和框格線。框格線在水平和垂直方向的長度分別用該線的始端出發(fā)的X方向的長度(向左側(cè)方向)和Y方向的長度(左邊)。線段類型的標(biāo)識是相對于頂、底、左、右邊沿而言的。線類型“0”、“1”、“2”、“3”、“4”、和“5”…、分別表示粗線、中粗線、細(xì)線、點線長短相間的短劃線…。例如,線類型“1010”標(biāo)志出頂邊用粗線表示;底邊沒有表示,左邊用粗線表示、右邊沒有表示。
圖15展示了標(biāo)識數(shù)據(jù)的一個實例,如圖15表示,各個輸出記錄在對應(yīng)于“記錄元”這一例中“S”的Y座標(biāo)所置的值為Y2。引用值Y2表示一頁中的第一行的輸出位置。在此例中,每個輸出記錄對應(yīng)于頁中的每一行。在到記錄元的“M”部分所置的是框格線的形狀。圖16A表示一個標(biāo)題中的一行的框格線形狀。其中頂邊和底邊用細(xì)線輸出,其位置由對應(yīng)于字編號“1”的字?jǐn)?shù)據(jù)輸出的起點(X4,Y1)和長度(14、m)確定。圖16A所示的框格線的頂、左和右邊均以細(xì)線輸出,其位置由起點(X5、Y1)和長度(15、m)確定,屬于字編號“1”和“2”的字?jǐn)?shù)據(jù)的各框格線被組合一起。圖16B表示記錄1的輸出記錄的一行所對應(yīng)的框格線其中在對應(yīng)于字編號為“11”的輸出記錄的字?jǐn)?shù)據(jù)輸出的起點(X1,Ym)和長度(1l,m)所確定的位置上,用粗線輸出頂邊和左;在對應(yīng)于字編號“14”的那個字?jǐn)?shù)據(jù)輸出的起點為(X4Ym)、長度為(14,m)所確定的位置上分別用粗線和細(xì)線輸出頂邊和左邊。在與字編號為“13”的字?jǐn)?shù)據(jù)輸出相應(yīng)的起點為(X5,Ym)長度為(15,m)所確定的位置上,用粗線輸出頂邊和右邊,用細(xì)線輸出左邊,上述這些框格線被結(jié)合在一起。注意Y座標(biāo)上的Yn所代表的值將根據(jù)一行中的框格線的形狀由Y方向的長度m之總和逐一更新。例如,當(dāng)數(shù)據(jù)在第5行上被打印時,Yn被表示為Ym=Y(jié)2+5×m。類似地,按照各個記錄元的標(biāo)識數(shù)據(jù)輸出如圖16C到16D所示的框格線形狀。圖16E所示的框格線形狀是相對于列記錄元中的“R”的,它表示一種結(jié)束形狀,是在無輸出記錄之后或在馬上要換到新頁之前輸出的。圖16E所示的框格線形式用于輸出一頁中諸格式的分界情況。帶有框格線的字?jǐn)?shù)y的輸出是從生成后記錄存貯器21中的輸出記錄中讀出的,此輸出記錄對應(yīng)于輸出格式標(biāo)識存貯器28中的被指定的字編號。讀出的字?jǐn)?shù)據(jù)按照字單位的框格線格式的輸出位置所確定的格式重新排序,所指框格線格式對應(yīng)于各個字。字類型表示要按該字單位的框格線形式打印的字?jǐn)?shù)據(jù)的打印格式。舉例說,它表示字?jǐn)?shù)據(jù)的打印是相對于字單位的框格線形式的右對齊還是左對齊的,或者是以框格線形式的按比例的對齊方式來打印出字?jǐn)?shù)據(jù)的每個字符。字類型還標(biāo)志出字符的大小以及其它信息。在圖15中表示了字類型內(nèi)容的描述。
現(xiàn)在讓我們參考圖17的流程圖來說明輸出處理器27的操作過程。在C1步,輸出處理部件27按照如圖18A所示的那樣打印出在輸出格式標(biāo)識存貯器28中予先指定的標(biāo)題M的框格線形狀,以及由字編號“1”和“2”標(biāo)識的字?jǐn)?shù)據(jù)。如“總計”、“數(shù)量”之類的字符。要注意該標(biāo)題的字?jǐn)?shù)據(jù)是予先被確立的。在C2這一步,部件27從生成后記錄存貯器21中讀出第一個輸出記錄,而在C3這一步,部件27從輸出格式標(biāo)識存貯器28中讀出與該輸出記錄元相對應(yīng)的記錄元的標(biāo)識數(shù)據(jù)、生成由該標(biāo)識數(shù)據(jù)的各個字編號以及與該字編號相對應(yīng)的框格線所標(biāo)志的字?jǐn)?shù)據(jù)的輸出記錄,然后把這個字?jǐn)?shù)據(jù)的生成后的輸出記錄輸出到輸出部件29。圖18B展現(xiàn)了輸出記錄的打印狀態(tài)。如圖18B所示,在圖13所示的生成后記錄存貯器21中的第一個記錄中的字編號為“11”、“14”、“13”的字?jǐn)?shù)據(jù)連同相應(yīng)的框格線一起被打印出去。C2和C3兩步一直重復(fù)到在生成后記錄存貯器21中的所有輸出記錄被全部輸出為止。其結(jié)果是得到了如圖18C和18D所示的打印輸出。在C4這一步,當(dāng)部件27發(fā)現(xiàn)不再有其它輸出記錄時,它從輸出格式標(biāo)識存貯器28中讀出在該存貯器中予先確定的結(jié)束形式的框格線并印出這些框格線在此例子中,所印出的粗線其長度對應(yīng)于水平框格線,線類型對應(yīng)于記錄元1。在輸出格式存貯器28中的框格線打印位置的標(biāo)識中,各個起點的Y座標(biāo)只能通過把第一個記錄的輸出位置Y2看作為一個參考值來獲得。此后,為了得到各個起點的Y座標(biāo),部件27逐一更新在第C3步中由一行的在Y方向的長度m總和所得的參考值。當(dāng)部件27在新的一頁上輸出框格線時,它使Y座標(biāo)的數(shù)據(jù)恢復(fù)到參考值Y2,并且每當(dāng)完成一行打印時更新Y座標(biāo)數(shù)據(jù)。類似地,只有當(dāng)?shù)谝粋€輸出記錄的輸出位置被看作為參考值的情況下才能執(zhí)行該數(shù)據(jù)的打印位置的標(biāo)識過程。
在上面例子中,我們已經(jīng)描述了各個字?jǐn)?shù)據(jù)的輸出和環(huán)繞各個字?jǐn)?shù)據(jù)的四個邊的框架線的輸出。但是對于一行的記錄數(shù)據(jù)的輸出以及圍繞該記錄數(shù)據(jù)的四個邊沿的框格線的輸出也可用集中的辦法。即用記錄單位的形式來指明。更具體地說,在輸出格式存貯器28中建立起該記錄數(shù)據(jù)的輸出位置和圍繞該記錄數(shù)據(jù)的四個邊沿的框格線的輸出位置。輸出處理部件27根據(jù)在存貯器28中的標(biāo)識數(shù)據(jù)所指定的位置輸出相應(yīng)的記錄數(shù)據(jù)和框格線數(shù)據(jù)。每當(dāng)打印一個數(shù)據(jù)行時,部件27根據(jù)一頁中第一個記錄的輸出位置利用方向的一行的總長度去自動地更新Y方向的各個數(shù)據(jù)的輸出位置。當(dāng)需要輸出用以分隔一行一個記錄中的各個字的垂直框格線時,則要指定各個框格線段的輸出位置和線的類型。通過區(qū)分關(guān)于該記錄數(shù)據(jù)的各記錄元的輸出位置和框格線的類型,打印格式就容易看清了,因為各個數(shù)據(jù)以記錄元為單位排好了順序。為了做到這件事,可以在輸出格式標(biāo)識存貯器28中對每個記錄元建立其記錄的輸出位置和框格線的類型。
在圖17的C3步,部件25印出數(shù)據(jù)和框格線。在此例中,部件27在鄰近底部那條框格線的位置上印出與一個字單位的各框格線相對應(yīng)的字?jǐn)?shù)據(jù)。圖16給出了部分放大了的在圖18A到18D中所示的打印結(jié)果。在圖19中,字?jǐn)?shù)據(jù)與頂部框格線之間的間隙H和該字?jǐn)?shù)據(jù)與底部框格線之間的間隙之比是H∶L=2∶1。雖然這樣一個比例對于打印數(shù)據(jù)來說是最合適的,但是只要滿足H>L的關(guān)系也就行了。為了按照上述的比例關(guān)系印出數(shù)據(jù),部件27在C3這一步計算H=(p-q)×2/3,L=(p-q)/3。式中p是Y方向上一行的框格線長,q是橫向的一個字?jǐn)?shù)據(jù)的字符串長度。數(shù)據(jù)p和q作為標(biāo)志數(shù)據(jù)在輸出格式標(biāo)識存貯器28中給出。部件27就這樣按照計算出的H和L來輸出數(shù)據(jù)。
在圖18D所示的那個打印例子中,描述了單頁記錄數(shù)據(jù)的打印操作。由于增加了記錄數(shù)據(jù)而要求一組頁面的打印操作將在下面敘述。
圖20給出了在打印一組頁面時所需要的在輸出格式標(biāo)識存貯器28中的標(biāo)識數(shù)據(jù)。在圖15所示的結(jié)束格式“R”處變成了“R1”、“R2”和“R3”。其它的標(biāo)識數(shù)據(jù)與圖15中所示的數(shù)據(jù)相同,因此在圖20中被省略。“R1”到“R3”分別對應(yīng)于記錄元1到3的結(jié)束形式。
圖21是說明輸出處理部件27的處理操作的流程圖。這一處理操作包括圖15所示的流程圖和打印一組頁面的操作。圖21中的C1到C5步與圖17中的C1到C5步相同。但是在圖21中的C3步有一點例外,即在輸出處理部件27中予先存放著要被打印的記錄數(shù)據(jù)的記錄元類型。在C5步,輸出部件27印出格式標(biāo)志存貯器28中的“R1”相對應(yīng)的結(jié)束形式,輸出處理部件27判斷有無要求打印的下一記錄數(shù)據(jù)。若有,部件27轉(zhuǎn)向C6步,確定能否在予定的打印紙區(qū)域中打印數(shù)據(jù)。更具體一點說,部件27判斷要否換頁。若確認(rèn)不需要換頁,部件27就返圖C2步。若需要換頁,部件27就執(zhí)行C7步。具體地說是在C7這一步中從生成后記錄存貯器21中讀出下一個記錄數(shù)據(jù)。在C8步,部件27把在C3步中已經(jīng)打印的那個記錄數(shù)據(jù)的記錄元與在C7步中讀出的將要被打印的記錄數(shù)據(jù)的記錄元進(jìn)行比較。如果已經(jīng)被打印的記錄數(shù)據(jù)的記錄元大于將要被打印的記錄數(shù)據(jù)的記錄元。部件27執(zhí)行C9步。反之,如果已被打印的記錄數(shù)據(jù)的記錄元小于或等于將要被打印的記錄數(shù)據(jù)的記錄元,部件27就執(zhí)行C10步。在C9步,部件27從圖17所示的輸出格式標(biāo)識存貯器28中讀出并打印出與下一記錄數(shù)據(jù)的記錄元相對應(yīng)的結(jié)束形式。在C10步,部件27打印出與C3步已經(jīng)印出過的那個記錄數(shù)據(jù)的記錄元相對應(yīng)的結(jié)束形式。更具體一點說,如果下一記錄數(shù)據(jù)的記錄元小于前面打印過的記錄數(shù)據(jù)的記錄元。也即緊接著一頁的第一行中要被打印的記錄數(shù)據(jù)是一用于標(biāo)識高累計級的記錄數(shù)據(jù)。部件27就印出與這個記錄數(shù)據(jù)的記錄元相同的記錄元的結(jié)束形式。結(jié)果,可以清楚地表明在那一頁的底行已被打印的低累計級的記錄數(shù)據(jù)在這一頁中結(jié)束,在C11步,部件27執(zhí)行諸如把Y座標(biāo)數(shù)據(jù)恢復(fù)為參考值Y2這樣的換頁處理操作,然后返回到C1步,在緊接換頁后的C2步處理中,關(guān)于該頁第一行的記錄數(shù)據(jù)已經(jīng)在CC7步中被讀出,所以不再讀該記錄數(shù)據(jù)。
圖22和23給出了打印后的例子,其中圖22表示第一頁的打印例,圖23表示第2頁的打印例。在第1頁的底行中的記錄數(shù)據(jù)是記錄3的記錄數(shù)據(jù)。在第2頁的頂行中的記錄數(shù)據(jù)是記錄元2的記錄數(shù)據(jù)。正如在本例中所展示的那樣,結(jié)束形式的打印格式清楚地表明第一頁底部的三行是記錄元3的記錄數(shù)據(jù),記錄數(shù)據(jù)的打印在第一頁的中間結(jié)束。根據(jù)圖22中所示的第一頁中的底行上要被印出的結(jié)束形式的長度7、8、9,能夠方便地辨認(rèn)出跨接一組頁面的打印后的內(nèi)容。更具體一點說,能夠容易地認(rèn)別具有同類級別的記錄數(shù)據(jù)的打印要否延續(xù)到下一頁,還能識別關(guān)于下一頁頂行那個記錄數(shù)據(jù)的記錄元的類型。
在上述例子中,記錄數(shù)據(jù)是每隔一行打印的。當(dāng)在CRT上或類似的顯示屏上顯示記錄數(shù)據(jù)時,或者在以頁為單位打印數(shù)據(jù)的頁或打印機(jī)上打印該記錄數(shù)據(jù)時,該記錄數(shù)據(jù)每隔一行被寫入以頁為單位的頁式存貯器中。在此情況下,修改結(jié)束格式的長度是有用的。
在上述的實施例中,單張單據(jù)的輸出是相對于一頁而言的。當(dāng)在一頁中并行輸出一組單據(jù)時,結(jié)束形式的長度的改變也被用于在該單據(jù)的底行上輸出該記錄數(shù)據(jù)的框格線形式,在后續(xù)單據(jù)的頂部位置輸出記錄數(shù)據(jù)。
現(xiàn)在參考圖24到29C來敘述本發(fā)明的另一個實施例。
圖24表示一個數(shù)據(jù)處理系統(tǒng)的組成情況。在圖24中,來自輸入部件31的數(shù)據(jù)輸入被送到記錄處理部件32。記錄處理部件32按照記錄標(biāo)識存貯器33中的標(biāo)識數(shù)據(jù)建立輸入字和基本字之間的對應(yīng)關(guān)系,并且每個圖合產(chǎn)生一個基本記錄。圖25表明記錄標(biāo)識存貯器33中的標(biāo)識數(shù)據(jù)。從圖25可清楚看出,一個基本記錄包含有13個基本字。這些基本字對于更新下面將要說明的各個文件來說是必須的。這些基本字是“年/月/日”、“單據(jù)號”、“總計”、“借方帳號”、“借方擔(dān)保人”、“借方明細(xì)”、“貸方帳號”、“貸方代理人”、“貸方明細(xì)”、“負(fù)責(zé)人”、“項目代號”、“數(shù)量”和“單價”。這些基本字是根據(jù)輸入字產(chǎn)生的。輸入字和基本字之間的對應(yīng)關(guān)系是按圖25中所示的基本字表33來建立的。注意“借方明細(xì)”可以包括“借方物品清單”、“借方數(shù)量”和“借方單價”?!百J方明細(xì)”可以包含“貸方物品清單”、“貸方數(shù)量”和“貸方單價”。在此例子中,“物品清單”、“數(shù)量”和“單價”這第11到第13個字可以省略。當(dāng)在記錄標(biāo)識存貯器33中建立上述標(biāo)識數(shù)據(jù)時,對于“借方明細(xì)”字而言,包含“借方物品清單”、“借方數(shù)據(jù)量”和“借方單價”的一個字就被產(chǎn)生,相對于“貸方明細(xì)”字的包含“貸方物品清單”、“貸方數(shù)量”和“貸方單價”的字也被建立。更具體一點說,當(dāng)數(shù)據(jù)從輸入部件31輸入時,在顯示器34上顯示出輸入字的標(biāo)號。輸入數(shù)據(jù)和基本字?jǐn)?shù)據(jù)之間的對應(yīng)關(guān)系按照記錄標(biāo)識存貯器33中的標(biāo)識數(shù)據(jù)來生成,由此而產(chǎn)生了一個基本記錄。由記錄處理部件32在每個處理回合所產(chǎn)生的基本記錄順序地被存放在基本記錄文件35中。存放在基本記錄文件35中的基本記錄隨著來自輸入部件31的更新指令而被寫入更新記錄生成部件36,并且按照與文件標(biāo)識存貯器37中所建立的諸文件相對應(yīng)的標(biāo)識數(shù)據(jù)。用文件來生成更新記錄。圖26展示了在文件標(biāo)識存貯器37中所建立的標(biāo)識數(shù)據(jù)的格式。文件名、更新內(nèi)容以及文件字和基本字之間的對應(yīng)關(guān)系可隨需要而建立。輸入部件31在文件標(biāo)識存貯器37中建立數(shù)據(jù)。輸入部件31進(jìn)一步在記錄標(biāo)識存貯器33中產(chǎn)生要產(chǎn)生的標(biāo)識數(shù)據(jù)。
圖27A到27D展現(xiàn)了由輸入部件31所產(chǎn)生的四種文件的各種數(shù)據(jù)的實例。例如,圖27A表示在下面將要被說明的各種文件中的累計帳目文件的更新更具體地說,圖27A展示了更新的內(nèi)容是“累計”,更新記錄的字列(此字列與相應(yīng)文件中的字序列相同)包含“我們的帳目”、“年/月”、“債務(wù)總計”和“信貸總計”。在這些字中,“我們的帳目”和“年/月”用作為文件關(guān)鍵字。每個文件字對應(yīng)于基本字“債務(wù)帳目”、“年/月”、“總計”和“/”基本記錄中的對應(yīng)于“借方帳目”的字被作為累計帳目文件和“我方帳目”字?jǐn)?shù)據(jù)。與“年/月”字對應(yīng)的數(shù)據(jù)在累計帳文件中被作為“月/日”字的數(shù)據(jù)處理。而且,在基本記錄中字“總計”之?dāng)?shù)據(jù)被作為累計帳文件中的“債務(wù)總計”字的數(shù)據(jù)處理。因此,更新累計帳目文件用的更新記錄由上述的基本記錄組成。圖27B、27C、27D展示了文件標(biāo)識存貯器37中的標(biāo)識數(shù)據(jù),它被用于標(biāo)識文件組39中的總帳文件、項目管理文件和銷售文件。
如上所述,更新記錄是相對于單個基本記錄按照文件標(biāo)識存貯器37中所建立的標(biāo)識數(shù)據(jù)的號碼來生成的。文件處理器38更新文件組39中的相應(yīng)文件。
現(xiàn)在來描述上述實施例的工作過程。
在設(shè)計一個系統(tǒng)之前,應(yīng)確定要為事務(wù)處理存貯和管理哪些類型的數(shù)據(jù)。在文件組39中建立起事務(wù)處理用的文件。要被建立的文件數(shù)不受限制,可按照不同的應(yīng)用要求來建立各個文件。所舉例的文件組39包括總帳文件、項目管理文件、零售管理文件、銷售代表文件項目總帳文件、帳目管理文件管。根據(jù)這一組文件,在標(biāo)識存貯器337中還建立起更新各個文件用的標(biāo)識數(shù)據(jù)。除此之外,在記錄標(biāo)識存貯器33中還建立起規(guī)定輸入字與基本字之間的對應(yīng)關(guān)系用的標(biāo)識數(shù)據(jù)。
為了根據(jù)銷售單據(jù)和類似的東西來輸入數(shù)據(jù),按照在顯示器34上顯示的輸入字的相互關(guān)系從輸入部件31順序輸入各個字?jǐn)?shù)據(jù)。當(dāng)一個記錄的數(shù)據(jù)被輸入后,各個字?jǐn)?shù)據(jù)就由記錄處理部件32轉(zhuǎn)變?yōu)橐粋€基本記錄。然后把它存放到基本記錄文件35。對于輸入的每一個記錄都重復(fù)上述處理。結(jié)果是把一組記錄存貯到了基本記錄文件335中。此后,在一個予定的時間(例如在白天)輸入一條文件更新指令來更新各個文件。由于文件更新指令的輸入,更新指令的輸入、更新記錄處理器36和文件處理器38執(zhí)行如圖28中流程圖所示的處理。
更具體地說,在S1步從基本記錄文件35中讀出一個基本記錄,在S2步從文件標(biāo)識存貯器37中讀出標(biāo)識數(shù)據(jù)之一。按照此標(biāo)識數(shù)據(jù),得到了此基本記錄和該文件字的對應(yīng)關(guān)系,這樣就生成了與各個文件的記錄排列相對應(yīng)的各個更新記錄(第S3步)。然后,在文件組39中與該標(biāo)識數(shù)據(jù)中的文件名相對應(yīng)的那些文件被打開(S4步)。在S5步,選取該標(biāo)識數(shù)據(jù)中的更新內(nèi)容。文件處理器38利用此更新記錄去更新(譬如增加和累計)相應(yīng)的文件,然后關(guān)閉這些文件。在S6步判斷在文件標(biāo)識存貯器37中是否還有其它標(biāo)識數(shù)據(jù)。若有,控制返回到S2步,然后根據(jù)在S1步中讀出的基本記錄重復(fù)執(zhí)行上述各步。
當(dāng)依照所有予定的標(biāo)識數(shù)據(jù)完成了文件更新處理時,控制轉(zhuǎn)到S7步,在S7步,判斷在基本記錄文件35中是否有迄今尚未被讀出的記錄。若有,則控制返回到S1步,去讀出尚未被讀出的記錄并重復(fù)上述處理過程。如上所述,按照基本記錄文件35中存放的所有基本記錄來執(zhí)行有關(guān)予定文件的更新處理。從而完成了整個兒的文件更新處理。
圖29A到29C給出了在一個基本記錄中字排列情況的另一例子。該基本記錄含有生成更新記錄所需要的36個基本字,用以更新包括“帳目總帳文件”、“項目管理文件”、零售管理文件”和“銷售代理文件”在內(nèi)的所有文件,上述文件可以被看成是公司的活動所需要的。圖29A到29C給出了指明基本字和文件之間對應(yīng)關(guān)系的一個標(biāo)識數(shù)的實例。更具體地說,圖29A到29C給出了按照銷售單據(jù)來輸入記錄用的在文件標(biāo)識存貯器37中的標(biāo)識數(shù)據(jù)。包含在輸入記錄中的各個字被重新排列成適合于含有如圖29A到29C中所示的36個基本字的那個基本記錄的格式。更新記錄生成器36按照圖29A到29C所示的文件標(biāo)識存貯器37中的標(biāo)識數(shù)據(jù)生成四個更新記錄。為了把一個更新記錄加到一個總帳文件。與RK11、RK12、RK21和RK22(即“借方帳目”、“借方代理”、“貸方帳目”和“年/月/日”)相對應(yīng)的基本字被用作為記錄關(guān)鍵字。而且與圖29A到29C所示的那些字相應(yīng)的基本字被用作為數(shù)據(jù)字。這些關(guān)鍵字和數(shù)據(jù)字如此排列,使它們與總帳文件的記錄排列相一致,由此而生成更新記錄。為了更新項目管理文件,把“項目代號”和“財政年/月”用作為記錄關(guān)鍵字。而且把與圖29A到29C中所示的那些字相對應(yīng)的基本字用作為數(shù)據(jù)字,由此而產(chǎn)生更新記錄。上述的數(shù)據(jù)字被加到并累計到其關(guān)鍵字與項目管理文件中的記錄關(guān)鍵字相同的記錄上。類似地,零售管理文件和銷售代理管理文件通過生成其記錄關(guān)鍵字等于與RK11、RK12、RK21和RK22相對應(yīng)的基本字的那些更新記錄而得到更新。
因此,通過予先固定基本記錄的字排列,只要標(biāo)出構(gòu)成文件的各個字就可方便地建立起一個公司所需的文件。因此,文件的建立和更新可方便多了。
權(quán)利要求
1.一個數(shù)據(jù)處理裝置,它包括用于輸入由若干字組成的記錄的輸入機(jī)構(gòu),存放輸入記錄用的輸入記錄存貯機(jī)構(gòu)、存放一組記錄用的文件存貯機(jī)構(gòu)和輸出記錄用的輸出機(jī)構(gòu),這些機(jī)構(gòu)具有如下特征有一個更新用的標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)(18),用以存貯把輸入記錄轉(zhuǎn)換為更新記錄的標(biāo)識數(shù)據(jù),該標(biāo)識數(shù)據(jù)包括有指定記錄關(guān)鍵字用的數(shù)據(jù)、指定數(shù)據(jù)字用的數(shù)據(jù)、文件關(guān)鍵字和指出更新字內(nèi)容的數(shù)據(jù);有一更新記錄生成機(jī)構(gòu)(圖4中的14),它按照在上述的更新標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)中的標(biāo)識數(shù)據(jù)從存放在所述的輸入記錄存貯機(jī)構(gòu)(21)中的輸入記錄中抽出用作為記錄關(guān)鍵字和數(shù)據(jù)字的字組,并產(chǎn)生一個更新記錄,此記錄包含有提供出的記錄關(guān)鍵字、提取出的數(shù)據(jù)字、文件關(guān)鍵字和被指定的更新字;有一更新記錄存貯機(jī)構(gòu)(23),用以存放被生成的更新記錄;有一更新處理機(jī)構(gòu)(圖1中15,19),它從所說的更新記錄存貯機(jī)構(gòu)中讀出被生成的更新記錄,并且對根據(jù)存放在所述的文件存貯機(jī)構(gòu)(24)中的且由該記錄關(guān)鍵字所標(biāo)識的諸記錄執(zhí)行一種與被生成的更新記錄中的更新字?jǐn)?shù)據(jù)相對應(yīng)的操作;除了上述機(jī)構(gòu)外,還有一個特征是被生成的更新記錄含有指明處理類型的更新字。
2.如權(quán)利要求1所述的數(shù)據(jù)處理裝置,其進(jìn)一步的特征是存放在所說的更新記錄存貯機(jī)構(gòu)中的更新字包括按照用以標(biāo)識存放在所述的標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)中的更新字內(nèi)容的數(shù)據(jù)對諸記錄實施增、刪、改和累計操作的一些字;所述的更新處理機(jī)構(gòu)包括從所述的更新記錄存貯機(jī)構(gòu)中讀出的更新記錄中檢測出更新字并按照檢測出的更新字對所說的文件存貯機(jī)構(gòu)中的記錄實施增、刪、改和累計操作的機(jī)構(gòu)(15、19、圖7的A4)。
3.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中所說的更新處理機(jī)構(gòu)包括用以把一組更新記錄按其文件關(guān)鍵字、記錄關(guān)鍵字和更新字的順序(作為排序的關(guān)鍵字)存入所述的更新記錄存貯機(jī)構(gòu)的機(jī)構(gòu)(1519,圖7的A4);用以從所述的文件存貯機(jī)構(gòu)中讀出記錄并且在由上述的排序機(jī)構(gòu)完成排序后按照存放順序根據(jù)更新記錄中的更新字?jǐn)?shù)據(jù)對諸記錄執(zhí)行增、刪、改和累計操作的機(jī)構(gòu)(15,19,圖7的A2-A5)。
4.權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng)輸出記錄標(biāo)識機(jī)構(gòu)(26,圖10),它被用以標(biāo)識從上述的文件存貯機(jī)構(gòu)中讀出的記錄,還用以標(biāo)識被讀出記錄的字排列輸出記錄生成機(jī)構(gòu)(25,圖12,圖11(a)-11(c)用以從所述的文件存貯機(jī)構(gòu)中讀出被標(biāo)識的記錄并根據(jù)被讀出的帶標(biāo)識的記錄的各個字來生成一個輸出記錄;用以存貯生成后的輸出記錄的輸出記錄存貯機(jī)構(gòu)(21,圖13);用以存貯輸出記錄格式的格式存貯機(jī)構(gòu)(28,圖15、圖16A-16E);格式控制機(jī)構(gòu)(27,29。圖17、圖18A-18D),用以把格式存貯機(jī)構(gòu)中的格式附加到從所述的輸出記錄存貯機(jī)構(gòu)中讀出的輸出記錄上,并把附有格式的輸出記錄提供給上述的輸出機(jī)構(gòu)。標(biāo)識數(shù)據(jù)輸入機(jī)構(gòu)(11),它把標(biāo)識數(shù)據(jù)輸入到上述的更新標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)、輸出記錄標(biāo)識機(jī)構(gòu),以及格式存貯機(jī)構(gòu)。
5.如同權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),它有下述特點所說的更新處理機(jī)構(gòu)(15,19)進(jìn)一步包含有把文件的各個記錄(包括更新記錄)按順序更新后依據(jù)文件和關(guān)鍵字把各個記錄寫入所述的文件的文件存貯機(jī)構(gòu)的機(jī)構(gòu)。
6.一個數(shù)據(jù)處理機(jī)裝置,它包括用以輸入由字組成的記錄的輸入機(jī)構(gòu);存貯輸入記錄用的輸入記錄存貯機(jī)構(gòu)、存貯一組記錄用的文件存貯機(jī)構(gòu)和輸出記錄用的輸出機(jī)構(gòu),該數(shù)據(jù)處理裝置有如下特點記錄標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)(18、圖3、33、圖25、圖29A-29C),它被用于存放標(biāo)識輸入記錄用的記錄標(biāo)識數(shù)據(jù)并把輸入記錄中的各個字轉(zhuǎn)變?yōu)閷?yīng)于基本記錄中的各個字;基本記錄生成機(jī)構(gòu)(13、圖3、32),用來把在所述的標(biāo)識出的輸入記錄中的字安插到基本記錄中的對應(yīng)字中,并生成具有予定格式的基本記錄;基本記錄存貯機(jī)構(gòu)(22、35),用以存放生成后的基本記錄;文件標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)(18、圖4、37、圖27A-27D)用來存貯確立生成后基本記錄中的各個字與文件存貯機(jī)構(gòu)中的予定記錄中的各個字之間對應(yīng)關(guān)系的標(biāo)識數(shù)據(jù),該標(biāo)識數(shù)據(jù)包括指定用作為記錄關(guān)鍵字和數(shù)據(jù)字的數(shù)據(jù);更新記錄生成機(jī)構(gòu)(14、圖4、36、圖28之S1-S3)用來從存放在所述的基本記錄存貯機(jī)構(gòu)中的生成后基本記錄中提取出分別用作為記錄關(guān)鍵字和數(shù)據(jù)字的一些字;更新處理機(jī)構(gòu)(15、圖7、38、圖28的S4-S5),它的功能是讀出由所述的更新記錄生成機(jī)構(gòu)所產(chǎn)生的更新記錄,并且按照更新記錄中數(shù)據(jù)字的內(nèi)容對存貯在所述的文件存貯機(jī)構(gòu)中的而且被更新記錄中的記錄關(guān)鍵字所標(biāo)識的諸記錄進(jìn)行處理。
7.如權(quán)利要求6所述的數(shù)據(jù)處理裝置,特點為存貯在基本記錄存貯機(jī)構(gòu)中的基本記錄(圖29A-29C)包含有一些予定的字,這些字至少包括日期、單據(jù)號、總計、借方帳目、借方客戶、借方明細(xì)、貸方帳目、貸方客戶、貸方明細(xì)、負(fù)責(zé)人、項目代號、數(shù)量和單價。
8.如權(quán)利要求6所述的數(shù)據(jù)處理系統(tǒng),它有如下特征用以把各個標(biāo)識數(shù)據(jù)輸入到所說的記錄標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)和文件標(biāo)標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)中去的輸入機(jī)構(gòu)(11、31);根據(jù)需要來確立輸入記錄中的各個字與基本記錄中的各個字之間的對應(yīng)關(guān)系以及該基本記錄中的各個字與所述文件中的記錄中的各個字之間對應(yīng)關(guān)系的機(jī)構(gòu)。
9.如權(quán)利要求6所述的數(shù)據(jù)處理裝置附加有下列特征輸出記錄標(biāo)識機(jī)構(gòu)(26,圖10),用來標(biāo)識從所述的文件存貯機(jī)構(gòu)讀出的記錄與讀出記錄的字排列;輸出記錄生成機(jī)構(gòu)(25、圖12、圖11A到11C),用來從所述的文件存貯機(jī)構(gòu)中讀出標(biāo)識了的記錄并根據(jù)讀出的帶標(biāo)識的各個記錄生成一個輸出記錄;用以存貯生成后的輸出記錄的輸出記錄存貯機(jī)構(gòu)(21、圖13);用來存貯輸出記錄格式的格式存貯機(jī)構(gòu)(28、圖15、圖16A-16E);格式控制機(jī)構(gòu)(27、29、圖17、圖18A-18D),用以把格式存貯機(jī)構(gòu)中的格式附加到從所述的輸出記錄存貯機(jī)構(gòu)中讀出的輸出記錄上,并把附有格式的輸出記錄提供給所述的輸出機(jī)構(gòu);標(biāo)識數(shù)據(jù)輸入機(jī)構(gòu)(11),它把標(biāo)識數(shù)據(jù)分別送到所說的更新標(biāo)識數(shù)據(jù)存貯機(jī)構(gòu)、輸出記錄標(biāo)識機(jī)構(gòu)和格式存貯機(jī)構(gòu)。
10.一個數(shù)據(jù)處理裝置,包含有用以輸入由字組成的記錄的輸入機(jī)構(gòu)、存放輸入記錄用的輸入記錄存貯機(jī)構(gòu)、存貯一組記錄用的文件存貯機(jī)構(gòu)以及輸出記錄用的輸出機(jī)構(gòu)。該數(shù)據(jù)處理裝置具有下列特點輸出記錄標(biāo)識機(jī)構(gòu)(26,圖10),用來標(biāo)識要從所述的文件存貯機(jī)構(gòu)(24、圖8)中讀出的一個記錄的關(guān)鍵字;輸出記錄生成機(jī)構(gòu)(25,圖12,圖11A-11C),用以從所述的文件存貯機(jī)構(gòu)中讀出被標(biāo)識的記錄并根據(jù)讀出的帶標(biāo)識記錄的各個字來生成一個輸出記錄;用以存貯被生成的輸出記錄的輸出記錄存貯機(jī)構(gòu)(21、圖1313);而且該數(shù)據(jù)處理系統(tǒng)還有下面特點。根據(jù)存貯在所述的文件存貯機(jī)構(gòu)中的各個記錄的記錄關(guān)鍵字的權(quán)來形成一個構(gòu)成記錄關(guān)鍵字的代碼,而且所述的輸出記錄標(biāo)識機(jī)構(gòu)還包括用以標(biāo)識該代碼的數(shù)字位數(shù)的機(jī)構(gòu),此代碼代表了存貯在所述的文件存貯機(jī)構(gòu)中的各個記錄的記錄關(guān)鍵字;而且所說的輸出記錄生成機(jī)構(gòu)包含有根據(jù)從所述的文件存貯機(jī)構(gòu)中讀出的輸出記錄來生成一個新的輸出記錄的機(jī)構(gòu),新生成的輸出記錄的記錄關(guān)鍵字用指定的數(shù)來作出。
11.按照權(quán)利要求10所述的數(shù)據(jù)處理系統(tǒng),還有這樣一個特點所說的記錄關(guān)鍵字根據(jù)其中的高位數(shù)字按順序加權(quán),而且所說的輸出記錄標(biāo)識機(jī)構(gòu)指出高位數(shù)碼,它包含從它高位數(shù)字開始的這個代碼的若干數(shù)字。
12.根據(jù)權(quán)利要求11所述的數(shù)據(jù)處理裝置,還有一個特點是提供一個累計記錄生成機(jī)構(gòu),以便選取高位數(shù)碼作為記錄關(guān)鍵字來累計具有相同記錄關(guān)鍵字的輸出記錄并生成單個累計后的記錄,因此,指定構(gòu)成高位數(shù)字代碼的碼子中的某些高位數(shù)字來形成一個記錄關(guān)鍵字,就可獲得各種不同的累計后的記錄。
13.一個數(shù)據(jù)處理裝置,它包括用于輸入由若干字組成的記錄的輸入機(jī)構(gòu),存貯輸入記錄用的輸入記錄存貯機(jī)構(gòu)、存放一組記錄用的文件存貯機(jī)構(gòu)和輸出記錄用的輸出機(jī)構(gòu)。該裝置具有如下特點用以存貯一組輸出數(shù)據(jù)的存貯機(jī)構(gòu)(21、圖13)用以標(biāo)識框格線數(shù)據(jù)和關(guān)于此框格線數(shù)據(jù)基準(zhǔn)輸出位置的標(biāo)識機(jī)構(gòu)(28、圖15、圖16A-16E),所說的框格線數(shù)據(jù)至少要使輸入數(shù)據(jù)之一帶有框格線;以及輸出用的格式控制機(jī)構(gòu)(27,29,圖17、圖17、圖18A-18C),隨著至少有一個被存貯的輸出數(shù)據(jù)的輸出,在以基準(zhǔn)輸出位置為依托的某個位置上輸出框格線數(shù)據(jù),使得輸出的框格線圍繞至少一個輸出數(shù)據(jù),同時,每當(dāng)輸出至少一個輸出數(shù)據(jù)時及時更新所說的基準(zhǔn)輸出位置,這樣,對應(yīng)于一系列輸出數(shù)據(jù)相應(yīng)地輸出一系列框格數(shù)據(jù)。
14.如權(quán)利要求13所述的數(shù)據(jù)處理系統(tǒng),它具有這樣的特點,即所述的標(biāo)識機(jī)構(gòu)包括用來標(biāo)識圍繞輸出數(shù)據(jù)的四個邊框線的機(jī)構(gòu)(28、圖15),這個標(biāo)識機(jī)構(gòu)還包括指明有無四個邊的各自的框格線。
15.如權(quán)利要求13所述的數(shù)據(jù)處理系統(tǒng),其特點是所述的標(biāo)識機(jī)構(gòu)包含有用以標(biāo)識圍繞的輸出數(shù)據(jù)的四個邊框線的機(jī)構(gòu)(28、圖15);以及所說的格式控制機(jī)構(gòu)包括用來把輸出數(shù)據(jù)安排在緊接著圍繞著數(shù)據(jù)的四個邊框線中較低的一條邊框線的位置上的機(jī)構(gòu)(27,29,圖19)。
16.權(quán)利要求13所述的數(shù)據(jù)處理系統(tǒng),加上下述特征所述的存貯機(jī)構(gòu)包括用來存貯一組不同類型記錄數(shù)據(jù)的機(jī)構(gòu)(2(21、圖13);所述的標(biāo)識機(jī)構(gòu)包括用來標(biāo)識與各個記錄數(shù)據(jù)的類型相對應(yīng)的框格數(shù)據(jù)的機(jī)構(gòu)(28、圖15、圖16A-16E);所述的格式控制機(jī)構(gòu)包括能判斷記錄數(shù)據(jù)的類型并能與該記錄數(shù)據(jù)一起輸出指定的框格線的數(shù)據(jù)機(jī)構(gòu)(27、圖17C3)。輸出的框格線類型對應(yīng)于能被辨別的類型,從而輸出了與記錄數(shù)據(jù)類型相對應(yīng)的邊框數(shù)據(jù)。
17.權(quán)利要求16所述的數(shù)據(jù)處理裝置,其特點還有所述的標(biāo)識機(jī)構(gòu)包括用來指明與各個記錄數(shù)據(jù)的類型相對應(yīng)的加線的類型的機(jī)構(gòu)。
18.權(quán)利要求16所述的數(shù)據(jù)處理裝置,其特點有具有用來檢測要在后繼的邊框格式的起始位置上輸出的那個記錄數(shù)據(jù)之類型的檢測機(jī)構(gòu),并且,所說的格式控制機(jī)構(gòu)包括輸出框格數(shù)據(jù)和一個結(jié)束數(shù)據(jù)的機(jī)構(gòu),框格數(shù)據(jù)用于把要在第一個框格式的末了位置上輸出的記錄數(shù)據(jù)框起來,結(jié)束數(shù)據(jù)用來標(biāo)識要在下一個后續(xù)的邊框格式的起始位置上輸出的記錄數(shù)據(jù)的類型,在與所述的檢測機(jī)構(gòu)檢出的結(jié)果相一致的情況下,其中的記錄數(shù)據(jù)和框住此記錄數(shù)據(jù)的框格數(shù)據(jù)在第一個框格式中的末了位置上輸出。
19.權(quán)利要求13所述的數(shù)據(jù)處理系統(tǒng),它具有如下特征所說的存貯機(jī)構(gòu)包括用來存貯與累計級別相對應(yīng)的記錄數(shù)據(jù)的機(jī)構(gòu);所說的標(biāo)識機(jī)構(gòu)包括用以標(biāo)以標(biāo)識與各個記錄數(shù)據(jù)的累計級別相應(yīng)的框格線的機(jī)構(gòu);一個比較機(jī)構(gòu)用來比較在一個格式的末了位置上輸出的記錄數(shù)據(jù)的累計級別與在后一個格式的起始位置上輸出的記錄渡據(jù)的累計級別;而且其中所說的格式控制機(jī)構(gòu)包括輸出框格線和一個結(jié)束行的機(jī)構(gòu),輸出的框格線用來框住在一張表格的末了位置上輸出的記錄數(shù)據(jù)、輸出的結(jié)束行對應(yīng)于在下一個后結(jié)束格的起始位置上輸出的記錄數(shù)據(jù)的類型,當(dāng)所說的比較機(jī)構(gòu)標(biāo)明在后續(xù)表格的起始位置上輸出的記錄數(shù)據(jù)的累計級別高于在當(dāng)前表格的末了位置上要被輸出的記錄數(shù)據(jù)的累計級別時,框住記錄數(shù)據(jù)的框格線以及記錄數(shù)據(jù)本身將在當(dāng)前表格的末了位置上被輸出。
20.一種數(shù)據(jù)處理方法,它包括輸入由字組成的記錄的方法、存貯輸入記錄的方法、存貯文件記錄的方法、以及輸出一個記錄的方法,其特征可用下列步驟來描述利用記錄關(guān)鍵字和數(shù)據(jù)字在所述的文件中形成每個記錄,利用諸文件對所述的記錄進(jìn)行分類,每個記錄按其記錄關(guān)鍵字存放;存貯至少一個更新記錄,每個更新記錄包含標(biāo)明所說的文件之一的文件關(guān)鍵字、標(biāo)明所述的帶標(biāo)識的文件之記錄的記錄關(guān)鍵字、要被處理的數(shù)據(jù)字和標(biāo)明要被執(zhí)行的更新處理操作類型的更新字;讀出所述的被存貯的更新記錄;以及對給定文件中的由讀出的更新記錄的文件關(guān)鍵字和記錄字所標(biāo)明的記錄執(zhí)行與讀出的更新記錄中的更新字的內(nèi)容做相對應(yīng)的處理操作。
21.權(quán)利要求20所指的數(shù)據(jù)處理方法,其特點進(jìn)一步描述如下一個更新記錄中的更新字包括增加一個記錄、刪除一個記錄、修改一個記錄和累計一個記錄;所說的執(zhí)行處理操作的步驟有從讀出的更新記錄中取出更新字,按照取出的更新字對給定文件中的記錄執(zhí)行增加、刪除、修改和累計操作。
22.權(quán)利要求20所指的數(shù)據(jù)處理方法,其特點是執(zhí)行處理操作的步驟如下對所述的被存貯的更新記錄按文件關(guān)鍵字順序、記錄關(guān)鍵字順序和更新字順序進(jìn)行分類,接著按分類后的次序?qū)Ω鱾€文件中的記錄進(jìn)行更新。
23.權(quán)利要求20所述的數(shù)據(jù)處理方法,其特點為所述的被存貯的更新記錄和各個文件的記錄由記錄界限符分隔開;而且所說的被存貯的更新記錄和各個文件的記錄中的每個字包含由字界限符分隔的可變長的數(shù)據(jù)。
24.如同權(quán)利要求23所述的方法,有一個特點是上述的被存貯的更新記錄之一和各個文件的記錄包含一個關(guān)鍵字界限符和從記錄頭部算起的給定數(shù)目的字,它們被用來區(qū)分記錄關(guān)鍵字和數(shù)據(jù)字。
25.如同權(quán)利要求20所述的方法進(jìn)一步包含下列特性標(biāo)明用于把一個輸入記錄轉(zhuǎn)換為指定的更新記錄的標(biāo)識數(shù)據(jù)階段,用以提出一自輸入記錄之記錄關(guān)鍵字的數(shù)據(jù),用以標(biāo)識一個輸入記錄的數(shù)據(jù)字的數(shù)據(jù),用以標(biāo)識文件關(guān)于字的數(shù)據(jù)以及標(biāo)識更新字內(nèi)容的更新數(shù)據(jù);按照上述指明的標(biāo)識數(shù)據(jù),從輸入記錄中提取用于記錄關(guān)鍵字的字和用于數(shù)據(jù)字的字的階段。包括生成一個更新記錄階段,此記錄包含被提取關(guān)鍵字,被提取的數(shù)據(jù)字、更新數(shù)據(jù)內(nèi)容和被標(biāo)明的文件關(guān)鍵字。
26.如同權(quán)利要求20所述的數(shù)據(jù)處理方法,其特點還有指明要從所說的存貯的記錄中取出的記錄,指明在被提取的記錄中的各個字和輸出記錄中的各個字之間的對應(yīng)關(guān)系;按照所標(biāo)明的對應(yīng)關(guān)系,利用讀出記錄中的各個字去生成一個具有新的字結(jié)構(gòu)的輸出記錄;以及存貯被生成的輸出記錄。
27.如權(quán)利要求26所述的數(shù)據(jù)處理方法,其特點還有指出用以框住至少一個輸出記語的框格數(shù)據(jù)以及此框格數(shù)據(jù)的基準(zhǔn)輸出位置;隨著被存貯的至少一個輸出記錄的輸出,同時輸出上述的指明了的框格數(shù)據(jù),框格的位置以基準(zhǔn)輸出位置為依據(jù),圍繞著至少一個輸出記錄,每當(dāng)所述的輸出記錄之一被輸出同時更新所說的基準(zhǔn)輸出位置,因此對應(yīng)于一系列輸出記錄輸出一系列框格數(shù)據(jù)。
28.如同權(quán)利要求20所述的數(shù)據(jù)處理方法,其進(jìn)一步的特點有標(biāo)出用以把一個輸入記錄轉(zhuǎn)換為更新記錄的標(biāo)識數(shù)據(jù),該標(biāo)識數(shù)據(jù)包括用以提出一個輸入記錄關(guān)鍵字的數(shù)據(jù),用以指出一個輸入記錄之?dāng)?shù)據(jù)字的數(shù)據(jù),用以指出文件關(guān)鍵字的數(shù)據(jù)以及指出更新字內(nèi)容的更新數(shù)據(jù)。按照上述的被標(biāo)出的標(biāo)識數(shù)據(jù)從輸入記錄中提取出作為記錄關(guān)鍵字的至少一個字和作為數(shù)據(jù)字的至少一個字。生成一個更新記錄,此記錄包含被提取的關(guān)鍵字、被提取的數(shù)據(jù)字、更新數(shù)據(jù)的內(nèi)容和被指定的文件關(guān)鍵字。所述的數(shù)據(jù)處理方法根據(jù)所述的更新記錄按照標(biāo)識數(shù)據(jù)的規(guī)定對來自輸入記錄的文件進(jìn)行更新。
29.如同權(quán)利要求28所述的數(shù)據(jù)處理方法,其特點是在所述的被生成的更新記錄中的更新數(shù)據(jù)的內(nèi)容指出對記錄執(zhí)行、刪、改和累計操作。
30.如同權(quán)利要求28所述的數(shù)據(jù)處理方法,其特點是,在所述的被生成的更新記錄中的每個字含有用字界限符分隔開的可變長數(shù)據(jù),而且每個更新記錄由記錄界限符一一隔開。
31.如同權(quán)利要求30所述的數(shù)據(jù)處理方法,其特點是所說的生成后的更新記錄包括一個標(biāo)識符用以區(qū)分記錄關(guān)鍵字和數(shù)據(jù)字,這個標(biāo)識符由記錄界限符之一和從該記錄頭算起的若干字組成。
32.如同權(quán)利要求28所述的數(shù)據(jù)處理方法,其進(jìn)一步的特點有存貯兩組記錄,第一組記錄中的每個記錄包括記錄關(guān)鍵字和數(shù)據(jù)字,第二組記錄是對第一組記錄中具有公共記錄關(guān)鍵字部分的諸記錄進(jìn)行累計得到的,第二組記錄的記錄關(guān)鍵字與所說的公共記錄關(guān)鍵字部分相同。所述的生成更新記錄的步驟包括如果在所述的更新標(biāo)識數(shù)據(jù)中包含了有公共指明的公共記錄關(guān)鍵字部分的標(biāo)識數(shù)據(jù),那么就生成一個更新記錄,其記錄關(guān)鍵字對應(yīng)于與所說的公共記錄關(guān)鍵字部分。
33.如同權(quán)利要求32所述的數(shù)據(jù)處理方法,還有一個特點是所述的記錄關(guān)鍵字具有一組數(shù)字,而所說的公共記錄關(guān)鍵字部分至少有一位高位有效數(shù)字。
34.一種數(shù)據(jù)處理方法,它涉及輸入由一些字組成的記錄、存貯輸入記錄、存貯一個文件中的記錄以及輸出一個記錄,該處理方法的特點是標(biāo)出基本記錄標(biāo)識數(shù)據(jù),用以提出輸入記錄中的各個字與基本記錄中的各個字之間的對應(yīng)關(guān)系;按照基本記錄中的相應(yīng)字的位置來排序輸入記錄中的各個字以生成基本記錄,因此,由任意結(jié)構(gòu)組成的輸入記錄按照所標(biāo)識的基本記錄標(biāo)識數(shù)據(jù)被轉(zhuǎn)換為具有予定結(jié)構(gòu)的基本記錄;存貯被生成的基本記錄。
35.如同權(quán)利要求34所述的數(shù)據(jù)處理方法,其中的另一個特點是被生成的基本記錄中的每個字包含由字界限符隔開的可變長的數(shù)據(jù),而各個記錄又用記錄界限符隔開。
36.如同權(quán)利要求34所述的數(shù)據(jù)處理方法,并進(jìn)一步包含下列特點指出文件標(biāo)識數(shù)據(jù),用來確定被生成的基本記錄中的各個字與一個文件中的予先確定的一個記錄中的各個字之間的對應(yīng)關(guān)系,該文件標(biāo)識數(shù)據(jù)包括指定用作為記錄關(guān)鍵字的那些字的數(shù)據(jù)、數(shù)據(jù)字以及指出要被更新之文件的數(shù)據(jù);從所說的被生成的基本記錄中取出用作為記錄關(guān)鍵字和數(shù)據(jù)字的那些字并生成與一個文件的記錄格式相對應(yīng)的更新記錄;按照被生成的更新記錄中的數(shù)據(jù)字的內(nèi)容,對該文件中的由被生成的更新記錄中的記錄關(guān)鍵字所標(biāo)識的那些記錄進(jìn)行處理。
37.如同權(quán)利要求36所述的數(shù)據(jù)處理方法,其中的基本記錄由若干予定的字組成,這些字至少包括日期、單據(jù)號、總計、借方帳目、借方客戶、借方明細(xì)、貸方帳目、貸方客戶、貸方明細(xì)、負(fù)責(zé)人項目代碼、數(shù)量和單價。
38.如同權(quán)利要求36所述的數(shù)據(jù)處理方法,其中能夠輸入記錄標(biāo)識數(shù)據(jù)和文件標(biāo)識數(shù)據(jù),能夠以任意方式確定輸入記錄中的各個字與基本記錄中的各個字之間的對應(yīng)關(guān)系以及基本記錄中的各個字與所述文件中的一個記錄中的各個字之間的對應(yīng)關(guān)系。
39.一種數(shù)據(jù)處理方法,它包括能夠輸入由一些字組成的記錄存貯輸入記錄、存貯文件中的記語、還能夠輸出記錄,它所具有的特點可用下列步驟來描述利用記錄關(guān)鍵字和數(shù)據(jù)字來形成所述文件中的每個記錄,這些記錄按其記錄關(guān)鍵字的順序存放;指出要從所說的被存貯的諸記錄中取出一個記錄,并指出被取出的記錄中的各個字與輸出記錄中的各個字的對應(yīng)關(guān)系;從所述的被存貯的諸記錄中讀出要被提取的指定記錄;按照所述的被指定的對應(yīng)關(guān)系,利用讀出記錄的各個字來生成具有新的字結(jié)構(gòu)的輸出記錄;把被生成的輸出記錄存貯起來。
40.如同權(quán)利要求39所述的數(shù)據(jù)處理方法,它還包括下列進(jìn)一步的特性按照各個被生成的輸出記錄中的關(guān)鍵字的內(nèi)容來存貯各個輸出記錄;以及在由上述的排序步驟所執(zhí)行的存貯操作完畢之后,累計具有相同關(guān)鍵字的輸出記錄并生成一個單一的輸出記錄。
41.如同權(quán)利要求39所述的數(shù)據(jù)處理方法,其特征是所述的標(biāo)識步驟包括把輸出記錄的關(guān)鍵字一部分用來累計具有指定關(guān)鍵字的諸輸出記錄中的字?jǐn)?shù);所述的生成步驟包括產(chǎn)生根據(jù)指定關(guān)鍵字的一部分對輸出記錄進(jìn)行累計得到的一個總計記錄。
42.權(quán)利要要41所說的數(shù)據(jù)處理方法進(jìn)一步描述為對輸出記錄和總計記錄進(jìn)行排序。
43.權(quán)利要求39所說的數(shù)據(jù)處理方法,所增加的新的特性是所說的被生成的諸輸出記錄界限符逐一隔開,每個輸出記錄中的各個字由字界限符一一隔開,每個字包含可變長的數(shù)據(jù),每個輸出記錄中的關(guān)鍵字和數(shù)據(jù)字由關(guān)鍵字界限符之一和從輸出記錄頭部算起的若干字隔開。
44.一種數(shù)據(jù)處理方法,它包括能夠輸入由字組成的記錄,能夠存貯輸入記錄,能夠存貯一個文件中的記錄并能輸出記錄,它的特點如下能夠指定框線數(shù)據(jù)和此框線數(shù)據(jù)的基準(zhǔn)輸出位置,此框線數(shù)據(jù)至少能框住一個輸出數(shù)據(jù);隨著所說的被存貯的輸出記錄之一的輸出,在以基準(zhǔn)輸出位置為依托的某個位置上的輸出框格線數(shù)據(jù),使得輸出的框格線圍繞至少一個輸出數(shù)據(jù),而且每當(dāng)輸出了至少一個輸出數(shù)據(jù)時及時更新上述的基準(zhǔn)輸出位置。這樣,對應(yīng)于一系列輸出數(shù)據(jù)相應(yīng)地輸出一系列框格數(shù)據(jù)。
45.權(quán)利要求44所述的數(shù)據(jù)處理方法,其特點是所說的框格線數(shù)據(jù)包括標(biāo)識圍繞輸出數(shù)據(jù)的四個邊沿的框格線的總數(shù)據(jù)和,標(biāo)識有無四個邊沿的各條框格線的數(shù)據(jù)。
46.權(quán)利要求44所述的數(shù)據(jù)處理方法,它具有下述的進(jìn)一步特性所說的標(biāo)識機(jī)構(gòu)中的框格線數(shù)據(jù)包含有用以標(biāo)識圍繞著輸出數(shù)據(jù)的四個邊沿的框格線的數(shù)據(jù),而且該框格線數(shù)據(jù)還使輸出記錄安排在緊挨著圍繞著輸出數(shù)據(jù)的四個邊沿的框格線中的較低的一條邊框線的位置上。
47.權(quán)利要求44所說的數(shù)據(jù)處理方法,其特點是所說的存貯步驟包括存貯一組不同類型的記錄數(shù)據(jù);所說的標(biāo)識步驟包括標(biāo)志出用以框住要被輸出的記錄數(shù)據(jù)的框格數(shù)據(jù)和要被加上框格線的那個記錄的輸出位置,框格線數(shù)據(jù)對應(yīng)于各個記錄數(shù)據(jù)的類型;識別所述的被讀出的記錄數(shù)據(jù)的類型;所說的輸出步包括在輸出被讀出的記錄數(shù)據(jù)時輸出指定的框格線數(shù)據(jù),框格線的類型對應(yīng)于上述的被識別出的類型。
48.權(quán)利要求47所述的數(shù)據(jù)處理方法,其中的框格線數(shù)據(jù)確定了與各個記錄數(shù)據(jù)的類型相對應(yīng)的線的類型。
49.權(quán)利要求44所述的數(shù)據(jù)處理方法,其特征為所述的存貯步包括存貯與累計級別相對應(yīng)的記錄數(shù)據(jù);所述的標(biāo)識步包括標(biāo)識用來框住要被輸出的記錄數(shù)據(jù)的框格線并標(biāo)出框格線的輸出位置,這對應(yīng)于各個記錄數(shù)據(jù)的累計級別;把一個表格的末了位置上輸出的記錄數(shù)據(jù)的累計級別與在后續(xù)一個表格的起始位置上輸出的那個記錄數(shù)據(jù)的累計級別進(jìn)行比較;所說的輸出步包括輸出用來框住在一張表格的末了位置上輸出的記錄數(shù)據(jù)的框線線,還輸出對應(yīng)于在后續(xù)表格的起終位置上輸出的那個記錄數(shù)據(jù)之類型的結(jié)束線。當(dāng)上述的比較步指出在后續(xù)表格的起始位置上輸出的那個記錄數(shù)據(jù)的累計級別時高于在當(dāng)前那個表格的末了位置上要被輸出的那個記錄數(shù)據(jù)的累計級別時,框住當(dāng)前記錄數(shù)據(jù)的框格線及記錄數(shù)據(jù)在本表格中的末了位置上被輸出。
50.權(quán)利要求47所述的數(shù)據(jù)處理方法,所具有的進(jìn)一步特性是判斷要在后繼的一個框格線的格式的起始位置上輸出的記錄數(shù)據(jù)的類型;而且,所說的輸出步進(jìn)一步包括輸出用以框住在第一個框格線格式的末了位置上要被輸出的記錄數(shù)據(jù)的框格數(shù)據(jù),還輸出用以標(biāo)識對應(yīng)于被檢查出的類型的、在后繼的框格格式的起始位置上要被輸出的那個記錄類型的結(jié)束數(shù)據(jù)。在此情形下,記錄數(shù)據(jù)和框住該記錄數(shù)據(jù)的框格數(shù)據(jù)在第一個框格格式中的末了位置上被輸出。
全文摘要
所有數(shù)據(jù)在一個數(shù)據(jù)處理系統(tǒng)中得以統(tǒng)一地和自動地處理。輸入記錄被轉(zhuǎn)換為具有統(tǒng)一格式的記錄。所有文件的格式都是統(tǒng)一的。所希望的記錄從一個文件中被讀出并被轉(zhuǎn)換為一種任意的格式。數(shù)據(jù)輸入處理、文件更新處理和輸出處理均被設(shè)計成以獨立的、統(tǒng)一的和自動的方式來處理數(shù)據(jù)。要由數(shù)據(jù)輸入、文件更新及數(shù)據(jù)輸出處理的每一個執(zhí)行的處理內(nèi)容用一個簡單的數(shù)據(jù)項。諸如記錄關(guān)鍵字和數(shù)據(jù)來指明。
文檔編號G06F9/00GK1041838SQ89104799
公開日1990年5月2日 申請日期1989年7月14日 優(yōu)先權(quán)日1988年7月14日
發(fā)明者尾俊雄 申請人:卡西歐計算機(jī)株式會社