国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      票據(jù)解析裝置和稅控系統(tǒng)的制作方法

      文檔序號:6683100閱讀:255來源:國知局
      專利名稱:票據(jù)解析裝置和稅控系統(tǒng)的制作方法
      技術領域
      本發(fā)明涉及一種票據(jù)解析裝置和稅控系統(tǒng)。
      背景技術
      目前國內(nèi)許多省份正在進行稅控改造,其中在大型商業(yè)零售企業(yè)的稅控改造升級中,直接使用稅控收款機需要企業(yè)更換大量的原有POS機,甚至整個POS系統(tǒng)都需要變更,這為改造增加了極大的成本和代價。網(wǎng)絡稅控器是一種架設于POS機與小票打印機之間的稅控設備,無需改變?nèi)魏蜳OS系統(tǒng),只需要打印數(shù)據(jù)經(jīng)過網(wǎng)絡稅控設備就可以達到稅控的目的,網(wǎng)絡稅控器獲取票據(jù)中的稅控元數(shù)據(jù)生成稅控碼。這種方案就十分適合于商超基于原有POS機系統(tǒng)的稅控改造升級,不僅成本低,而且可以準確無誤的獲取真實的稅控數(shù)據(jù)。在這種稅控改造的架構中,需要稅控設備準確、同步、及時地輸出打印數(shù)據(jù)以及稅控發(fā)票信息,而不影響正常的POS機開票過程。準確地獲取POS機發(fā)送出的票據(jù)數(shù)據(jù),這是稅控信息生成的原始數(shù)據(jù);同步輸出POS的打印數(shù)據(jù),不影響票據(jù)數(shù)據(jù)的打印,不因稅控設備處理數(shù)據(jù)而導致打印停滯;并且在票據(jù)數(shù)據(jù)獲取完畢的同時,及時生成稅控信息的元數(shù)據(jù),直接進入發(fā)票信息生成環(huán)節(jié),并輸出打印稅控信息。因此,需要一種新的票據(jù)解析技術已解決上述問題。

      發(fā)明內(nèi)容
      為解決上述問題,本發(fā)明的主要目的在于提供一種票據(jù)解析裝置和稅控系統(tǒng),其中:根據(jù)本發(fā)明實施例的票據(jù)解析裝置包括:數(shù)據(jù)控制模塊,用于接收原始數(shù)據(jù),并采用環(huán)形緩存的存儲方式將接收的原始數(shù)據(jù)進行保存;模板配置模塊,用于載入預先配置的模板配置文件,并將模板配置文件轉(zhuǎn)換為內(nèi)存模板數(shù)據(jù)結構類型;元數(shù)據(jù)解析模塊,用于根據(jù)模板配置模塊載入的模板配置文件、對原始數(shù)據(jù)進行數(shù)據(jù)處理提取元數(shù)據(jù)。其中,數(shù)據(jù)控制模塊用于管理原始數(shù)據(jù)的讀數(shù)據(jù)的位置信息和寫數(shù)據(jù)的位置信肩、O其中,數(shù)據(jù)控制模塊為元數(shù)據(jù)解析模塊提供原始數(shù)據(jù)的讀數(shù)據(jù)的位置信息和寫數(shù)據(jù)的位置信息,元數(shù)據(jù)解析模塊以字節(jié)為單位從數(shù)據(jù)控制模塊中連續(xù)地讀取原始數(shù)據(jù)。其中,元數(shù)據(jù)解析模塊根據(jù)有限自動機原理、并根據(jù)模板配置模塊載入的模板配置文件,對原始數(shù)據(jù)進行數(shù)據(jù)處理提取元數(shù)據(jù)。其中,模板配置模塊載入的模板配置文件至少包括:匹配字符列表、狀態(tài)轉(zhuǎn)換表、屬性信息。其中,數(shù)據(jù)控制模塊將接收的原始數(shù)據(jù)發(fā)送至接收裝置;元數(shù)據(jù)解析模塊與接收裝置同步工作。根據(jù)本發(fā)明實施例的稅控系統(tǒng)包括上述的票據(jù)解析裝置。
      根據(jù)本發(fā)明的技術方案,通過根據(jù)配置模板配置文件、對原始數(shù)據(jù)進行數(shù)據(jù)處理從而提取元數(shù)據(jù),本發(fā)明具有識別速度快、準確性高、適應性強的特點,并且票據(jù)解析裝置可以獨立于稅控業(yè)務,重用度高。


      此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:圖1是本發(fā)明實施例的票據(jù)解析裝置的應用場景的示意圖;圖2是本發(fā)明實施例的票據(jù)解析裝置的結構框圖;圖3是本發(fā)明實施例的環(huán)形緩存的原理示意圖;圖4是本發(fā)明實施例的自動機的狀態(tài)轉(zhuǎn)換示意圖。
      具體實施例方式在詳細描述本發(fā)明之前,首先解釋本文下文中出現(xiàn)的一些名詞。(I)元數(shù)據(jù):解析所需要提取的數(shù)據(jù),如金額,時間等。(2)匹配字符:匹配的最小元素。只要狀態(tài)需要,可以出現(xiàn)在任何一個狀態(tài)中。(3)狀態(tài):解析過程的一個獨立單元,能夠達到一個狀態(tài)意味著當前數(shù)據(jù)與該狀態(tài)下的匹配字符集完全匹配。關鍵信息的獲取就是以狀態(tài)為單位,滿足該狀態(tài)的同時,完成信息的獲取。(4)狀態(tài)字符序列:由匹配字符構成,匹配時按照其先后順序進行匹配。僅當完全匹配上此序列,則實現(xiàn)狀態(tài)跳轉(zhuǎn),進入此狀態(tài),即狀態(tài)匹配成功。(5)狀態(tài)序列:狀態(tài)匹配權重。當下一個狀態(tài)可能有多個時,按照狀態(tài)序列依次進行匹配,期間只要有狀態(tài)匹配成功,則直接進入該狀態(tài)。(6)起始狀態(tài):解析初始狀態(tài),必須存在。該狀態(tài)只含有狀態(tài)序列,沒有匹配字符序列。(7)終止狀態(tài):解析結束狀態(tài),必須存在。該狀態(tài)既沒有狀態(tài)序列,也沒有匹配字符序列。自動機結束即狀態(tài)轉(zhuǎn)換以進入該狀態(tài)。為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,以下結合附圖及具體實施例,對本發(fā)明作進一步地詳細說明。根據(jù)本發(fā)明的實施例,提供了 一種票據(jù)解析裝置。如圖1所示,該票據(jù)解析裝置設置在輸出裝置和接收裝置之間。具體地,輸出裝置可以是銷售終端(P0S機),接收裝置可以是小票打印機。票據(jù)解析裝置獲取POS機發(fā)送出的票據(jù)數(shù)據(jù),這是稅控信息生成的原始數(shù)據(jù);在對原始數(shù)據(jù)進行數(shù)據(jù)解析的同時,向小票打印機同步輸出POS機的打印數(shù)據(jù),也就是輸入票據(jù)的打印與解析是同步的,這樣,既可以達到邊打印邊解析的目的,而且可以控制稅控信息的輸出位置。根據(jù)本發(fā)明實施例的票據(jù)解析過程包括:原始數(shù)據(jù)由硬件接口傳入,將傳入的原始數(shù)據(jù)采用環(huán)形緩存的存儲方式,循環(huán)不斷地保存?zhèn)魅氲臄?shù)據(jù),并管理數(shù)據(jù)讀寫的位置信息。以字節(jié)為單位從環(huán)形緩存中連續(xù)讀取數(shù)據(jù),進入解析流程。在解析結束時,變更解析狀態(tài)為完畢,監(jiān)控程序得知結束后,根據(jù)元數(shù)據(jù)信息類型,使用元數(shù)據(jù)讀取接口得到所需數(shù)據(jù)。本發(fā)明的技術方案旨在使用一種通用的模式識別方法,它使得識別具有高度適應的特點。在面對眾多POS系統(tǒng)打印出的票樣時,沒有一種統(tǒng)一的全局適應的提取規(guī)則,同樣語義的詞語有許多,無法考慮到全部情況。因此,本方案引入解析模板的概念,這是票據(jù)數(shù)據(jù)識別的基礎,整個識別的實現(xiàn)過程都是以此展開的。模板文件使解析可以不局限于某一種票據(jù)的票樣,而是通過人工簡單地配置即可定制出具有針對性的解析方案。從而達到無論企業(yè)的POS打印數(shù)據(jù)具有何種多樣的票樣,本方案都可適應其變化的目的。圖2是本發(fā)明實施例的票據(jù)解析裝置的結構框圖,如圖2所示,該裝置包括:數(shù)據(jù)控制模塊10、模板配置模塊20、元數(shù)據(jù)解析模塊30。數(shù)據(jù)控制模塊10,用于接收原始數(shù)據(jù),并采用環(huán)形緩存的存儲方式將接收的原始數(shù)據(jù)進行保存。數(shù)據(jù)控制模塊10采用環(huán)形緩存的存儲方式實現(xiàn)票據(jù)數(shù)據(jù)的存儲,作為解析數(shù)據(jù)讀取的源數(shù)據(jù)區(qū)。數(shù)據(jù)控制模塊就是負責管理環(huán)形緩存中數(shù)據(jù)的讀寫操作,記錄位置信息,并為元數(shù)據(jù)解析模塊提供字節(jié)流的讀取位置。在硬件設備進行數(shù)據(jù)讀取時,如采用串口通信方式,其數(shù)據(jù)傳入時間具有不確定性,需要不斷進行監(jiān)聽讀取,并且一次傳入的數(shù)據(jù)大小也不確定。而另一方面,解析程序是以字節(jié)流的方式處理,如果傳入一個字節(jié)數(shù)據(jù)就進入解析處理,會導致頻繁的IO操作,延緩了數(shù)據(jù)傳入的速度。由于在實際環(huán)境中讀寫順序具有不確定性,一次讀寫數(shù)據(jù)數(shù)目不確定,這些現(xiàn)象導致無法采用直接字節(jié)數(shù)據(jù)處理的方式。因此該數(shù)據(jù)控制模塊管理一個足夠大緩存,參考圖3,可寫入由串口一次傳入的數(shù)據(jù),同時讀寫各有一個位置標記,讀標記(mark)和寫標記(wmark),使得讀寫互不干擾。為保證數(shù)據(jù)讀寫的連續(xù),使用環(huán)形存儲方式,當讀寫到達緩存末端時,新的讀寫標記將回到緩存起始位置。由于緩存可以根據(jù)一次票據(jù)數(shù)據(jù)的大小設置得足夠大,并且寫入與讀取是同步進行的,因此不會出現(xiàn)新數(shù)據(jù)覆蓋還未讀取數(shù)據(jù)的情況。模板配置模塊20,用于載入預先配置的模板配置文件,并將模板配置文件轉(zhuǎn)換為內(nèi)存模板數(shù)據(jù)結構類型。模板配置子模塊首先完成模板文件的載入,存儲到內(nèi)存中特定數(shù)據(jù)結構中,作為整個解析程序運行的全局模板配置數(shù)據(jù)區(qū)。配置文件的信息主要包括:匹配字符列表,狀態(tài)轉(zhuǎn)換表,屬性信息。匹配字符列表存儲解析的候選匹配關鍵字,狀態(tài)轉(zhuǎn)換表構成解析數(shù)據(jù)的路線圖,屬性信息用于記錄匹配字符類型,元數(shù)據(jù)信息類型等輔助信息。根據(jù)本發(fā)明的實施例,該模塊由模板配置文件和配置信息讀取兩部分構成。模板配置文件是本方案的一大特點,它使得解析不再局限于某一種票據(jù)票樣。通過簡單的模板文件更改,就可進行新的票樣元數(shù)據(jù)解析。模板配置文件具有屬性信息,可以自定義元數(shù)據(jù)的類型,如計稅金額、開票時間、收銀員等各種需要提取的元數(shù)據(jù)。配置信息讀取是完成由模板配置文件到內(nèi)存模板數(shù)據(jù)結構的映射,將配置信息轉(zhuǎn)換成解析所用到的數(shù)據(jù)結構類型,程序運行時將不再使用模板配置文件,避免頻繁的文件操作。同時也提供文件重新載入接口,同步更新模板文件的改變。元數(shù)據(jù)解析模塊30分別與數(shù)據(jù)控制模塊10和模板配置模塊20連接,用于根據(jù)模板配置模塊20載入的模板配置文件、對數(shù)據(jù)控制模塊10保存的原始數(shù)據(jù)進行數(shù)據(jù)處理提取元數(shù)據(jù)。元數(shù)據(jù)解析模塊30的數(shù)據(jù)處理方式是以字節(jié)流的方式連續(xù)不斷的讀取環(huán)形緩存中的數(shù)據(jù),這種方式使得數(shù)據(jù)處理與數(shù)據(jù)的編碼格式毫無關系,因此對內(nèi)碼和點陣數(shù)據(jù)都可以完全適應。解析本身采用有限自動機的實現(xiàn)原理完成模式識別的過程,利用狀態(tài)轉(zhuǎn)換序列控制識別的狀態(tài)變化。當?shù)竭_一個終止狀態(tài)時,說明一個票據(jù)數(shù)據(jù)已解析完成。元數(shù)據(jù)的識別是在狀態(tài)發(fā)生轉(zhuǎn)移前進行,當?shù)竭_終止狀態(tài)時,即得到模板中指明的所有元數(shù)據(jù)信息。具體地,元數(shù)據(jù)解析模塊30采用有限自動機原理,通過狀態(tài)轉(zhuǎn)換序列完成元數(shù)據(jù)的解析提取。該模塊每次從環(huán)形緩存中以單字節(jié)大小讀取數(shù)據(jù),進入狀態(tài)轉(zhuǎn)化序列中進行匹配。一次解析匹配返回時,子模塊會在返回前保存一些現(xiàn)場信息,當新的數(shù)據(jù)進入時則恢復上次現(xiàn)場信息繼續(xù)匹配。這樣在使得匹配具有連貫性,并不會出現(xiàn)大量的重復匹配環(huán)節(jié),從而使解析效率更高。解析數(shù)據(jù)的過程就是有限自動機進行狀態(tài)轉(zhuǎn)換的過程,根據(jù)狀態(tài)轉(zhuǎn)換序列確定狀態(tài)轉(zhuǎn)移的方式。當狀態(tài)序列中某個狀態(tài)的匹配字符序列被完全匹配成功時,則進入到這個狀態(tài)中,從而實現(xiàn)了狀態(tài)的跳轉(zhuǎn)。同時,狀態(tài)中還表明是否具有元數(shù)據(jù)提取的任務,當屬性信息中包含某個元數(shù)據(jù)類型時,則說明需要在匹配結束后提取其中的元數(shù)據(jù)。在進行字符序列匹配時,元數(shù)據(jù)在環(huán)形緩存中的起止位置將被記錄下來,狀態(tài)匹配成功時,就可根據(jù)起止位置提取出元數(shù)據(jù),保存在該狀態(tài)下的元數(shù)據(jù)存儲區(qū)中。跳轉(zhuǎn)到結束狀態(tài)則說明一次票據(jù)解析完畢,對提取的元數(shù)據(jù)需要進行一定的格式轉(zhuǎn)換和計算處理,如轉(zhuǎn)換成數(shù)字,日期等格式,計算計稅金額等,并統(tǒng)一存入元數(shù)據(jù)提取列表中。之后其他模塊可根據(jù)事先定義的元數(shù)據(jù)類型得到需要的元數(shù)據(jù)信息。自動機的狀態(tài)轉(zhuǎn)換可表達成一個狀態(tài)轉(zhuǎn)換圖,如圖4所示。每個狀態(tài)中包含匹配字符序列和狀態(tài)轉(zhuǎn)換序列。存在兩個特殊狀態(tài),起始狀態(tài)O和終止狀態(tài)5,前者沒有匹配字符序列,后者沒有狀態(tài)轉(zhuǎn)換序列。從起始狀態(tài)O的狀態(tài)轉(zhuǎn)換序列的第一個狀態(tài)開始,對輸入的字節(jié)流進行匹配。當該狀態(tài)下的匹配字符序列全部匹配成功時,則狀態(tài)跳轉(zhuǎn)到該狀態(tài),如由狀態(tài)I進入狀態(tài)2。然后,進行同樣的匹配方式,對狀態(tài)2的狀態(tài)轉(zhuǎn)換序列第一個狀態(tài)進行匹配。同時,狀態(tài)還可以跳轉(zhuǎn)到它本身,用于相同匹配內(nèi)容重復出現(xiàn)的情況,如由狀態(tài)2再次回到狀態(tài)2。POS機打出的票據(jù)會有不同類型,如正票、退票、刷卡消費的票據(jù)等,需要根據(jù)這些具體內(nèi)容總結出所有情況,完成自動機狀態(tài)轉(zhuǎn)換的設計。這樣一種POS輸出的所有票據(jù)可用一個自動機表達,而一張票只會沿著一條狀態(tài)轉(zhuǎn)換路線達到終止狀態(tài)。該解析方法的有限自動機具有以下性質(zhì),同時也是在設計某個票樣的自動機時需要遵循的原則:(I)開始狀態(tài)中沒有匹配字符序列及屬性信息,只包含狀態(tài)轉(zhuǎn)換序列。(2) 一個狀態(tài)中只包含一種元數(shù)據(jù)類型,即一個狀態(tài)最多解析出一種元數(shù)據(jù)類型的信息。(3)狀態(tài)匹配成功就是匹配字符序列中的字符依次全部匹配成功。當?shù)谝粋€匹配字符匹配失敗時,則對下一個狀態(tài)進行匹配;當?shù)谝粋€字符匹配成功時,則繼續(xù)下一個匹配字符,直到匹配字符序列全部匹配完成,否則不會跳出該匹配狀態(tài)。(4)狀態(tài)轉(zhuǎn)換序列和匹配字符序列中的元素具有先后優(yōu)先關系。只有前一個狀態(tài)匹配失敗時才進行下一個狀態(tài)的匹配,只有前一個匹配字符匹配成功時才進行下一個字符的匹配。這種做法可消除在設計時出現(xiàn)的二義性。模板的設計是將圖4表示的圖形化自動機轉(zhuǎn)換成計算機可識別處理的形式。為達到快速讀取自動機模板,易于修改,存儲介質(zhì)無關性目的,設計一種特定的自動機表達式。首先為狀態(tài)、匹配字符以及元數(shù)據(jù)類型定義索引號,這樣便于自動機狀態(tài)轉(zhuǎn)換和匹配字符序列的表示。其次,自動機表達式由左到右起始依次進行解釋,狀態(tài)序列和匹配字符序列具有匹配先后順序,模板配置子模塊讀取并存儲到模板數(shù)據(jù)結構中。以下根據(jù)圖4舉例說明由轉(zhuǎn)換圖到自動機表達式的設計。圖4中存在O到5共6個狀態(tài),其中假設狀態(tài)2的優(yōu)先級比狀態(tài)3高。表達式生成如下:0[::1]1[:1.0:2]2[1:2.1,3.2:2,3]3[*1:4.1,7.2:4]4[:5.0:5]5[:6.0:]每個狀態(tài)由四個部分組成 :狀態(tài)序號,屬性信息,匹配字符序列,狀態(tài)轉(zhuǎn)換序列。表I是對狀態(tài)表達式2 [1:2.1,3.2:2,3]各部分的詳細說明,其中的粗體字表示具體說明的部分。表I
      權利要求
      1.一種票據(jù)解析裝置,該裝置在輸出裝置和接收裝置之間,其特征在于,所述票據(jù)解析裝置包括: 數(shù)據(jù)控制模塊,用于接收原始數(shù)據(jù),并采用環(huán)形緩存的存儲方式將接收的所述原始數(shù)據(jù)進行保存; 模板配置模塊,用于載入預先配置的模板配置文件,并將所述模板配置文件轉(zhuǎn)換為內(nèi)存模板數(shù)據(jù)結構類型; 元數(shù)據(jù)解析模塊,用于根據(jù)所述模板配置模塊載入的模板配置文件、對所述原始數(shù)據(jù)進行數(shù)據(jù)處理提取元數(shù)據(jù)。
      2.根據(jù)權利要求1所述的票據(jù)解析裝置,其特征在于,所述數(shù)據(jù)控制模塊用于管理所述原始數(shù)據(jù)的讀數(shù)據(jù)的位置信息和寫數(shù)據(jù)的位置信息。
      3.根據(jù)權利要求2所述的票據(jù)解析裝置,其特征在于,所述數(shù)據(jù)控制模塊為所述元數(shù)據(jù)解析模塊提供所述原始數(shù)據(jù)的讀數(shù)據(jù)的位置信息和寫數(shù)據(jù)的位置信息,所述元數(shù)據(jù)解析模塊以字節(jié)為單位從所述數(shù)據(jù)控制模塊中連續(xù)地讀取所述原始數(shù)據(jù)。
      4.根據(jù)權利要求1所述的票據(jù)解析裝置,其特征在于,所述元數(shù)據(jù)解析模塊根據(jù)有限自動機原理、并根據(jù)所述模板配置模塊載入的模板配置文件,對所述原始數(shù)據(jù)進行數(shù)據(jù)處理提取元數(shù)據(jù)。
      5.根據(jù)權利要求4所述的票據(jù)解析裝置,其特征在于,所述模板配置模塊載入的所述模板配置文件至少包括: 匹配字符列表、狀態(tài)轉(zhuǎn)換表、屬性信息。
      6.根據(jù)權利要求1所述的票據(jù)解析裝置,其特征在于,所述數(shù)據(jù)控制模塊將接收的原始數(shù)據(jù)發(fā)送至所述接收裝置; 所述元數(shù)據(jù)解析模塊與所述接收裝置同步工作。
      7.一種包括如權利要求1至6中任一項所述票據(jù)解析裝置的稅控系統(tǒng)。
      全文摘要
      本發(fā)明公開了一種票據(jù)解析裝置和稅控系統(tǒng),其中,該票據(jù)解析裝置包括數(shù)據(jù)控制模塊,用于接收原始數(shù)據(jù),并采用環(huán)形緩存的存儲方式將接收的原始數(shù)據(jù)進行保存;模板配置模塊,用于載入預先配置的模板配置文件,并將模板配置文件轉(zhuǎn)換為內(nèi)存模板數(shù)據(jù)結構類型;元數(shù)據(jù)解析模塊,用于根據(jù)模板配置模塊載入的模板配置文件、對原始數(shù)據(jù)進行數(shù)據(jù)處理提取元數(shù)據(jù)。本發(fā)明具有識別速度快、準確性高、適應性強的特點。
      文檔編號G07G1/00GK103164907SQ201110417520
      公開日2013年6月19日 申請日期2011年12月14日 優(yōu)先權日2011年12月14日
      發(fā)明者高志剛, 廖峰, 王乾, 胡金輝, 陳磊, 張國喜, 趙軼民, 武志鵬, 孫國良 申請人:航天信息股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1