曾武斌
摘 要:電子收款機(全稱Electronic Cash Register,簡稱ECR)有兩個打印機,分別打印客戶收據聯(receipt聯)和臺賬存根(journal聯)。 EJOURNAL(全稱Electronic Journal,也就是電子存根聯)就是把原來打印在journal聯上的文本,原原本本地保存在電子媒介,記憶棒上。在需要時,輸入日期時間、收據序列號等的方式,通過查詢和搜索把特定的journal聯打印或顯示出來。對于稅控收款機,供稅務部門檢查監督,對于非稅控收款機,供商家或店家查詢和核對。
關鍵詞:EJOURNAL;電子存根;原理;工作流程
DOI:10.16640/j.cnki.37-1222/t.2017.05.108
1 EJOURNAL電子存根
目前EJOURNAL有三種類型:MCU+Nor flash外置方案,對于大容量 Nand flash內置方案,SD卡內外置方案。
1.1 優缺點
(1)MCU+Nor flash 方案:特點是保密性強,MCU可以對存儲加密,相對比較復雜,需要設計專門讀寫電路。ECR CPU通過專門讀寫電路接口與MCU通訊,MCU接收到EJOURNAL數據寫入Nor flash。
(2)大容量 Nand flash方案:優點容量大,可以存儲數據多,缺點是每次Nand flash更新換代,系統需相對應升級。ECR CPU直接對主板上的memory進行存儲和管理。
(3)SD卡方案:利用市面上SD卡作為存儲設備,方便易用,還有一點就是兼容性強。ECR CPU對主板上的SD卡進行操作,可以使用文件系統對EJOURNAL數據存儲和管理,PC無需特別的應用軟件,可以直接顯示和打印EJOURNAL數據。
2 硬件設計和韌件平臺
2.1 硬件設計
(1)MCU+Nor flash外置方案:整個EJOURNAL系統由三個模塊組成:ECR主板,EJOURNAL 轉接板和EJOURNAL卡。ECR主板通過串口把數據傳輸到EJOURNAL 轉接板。接收到數據后,EJOURNAL 轉接板發命令,要求EJOURNAL卡中CPU把數據寫入EJOURNAL卡中的Nor flash。
(2)大容量 Nand flash內置方案:ECR主板增加接口電路,通過bus,CPU訪問Nand flash,對ECR主板上的memory進行存儲和管理。
(3)SD卡內外置方案:ECR 主CPU通過接口電路訪問SD,對ECR主板上的SD卡進行存儲和管理。
2.2 韌件平臺
(1)MCU+Nor flash 方案:三個模塊各帶CPU,都系統基于8051平臺。
(2)大容量 Nand flash方案:系統基于8052平臺。
(3)SD卡方案:系統基于M3平臺。
3 工作流程
EJOURNAL的工作流程共有4塊:開關EJOURNAL卡,數據寫入EJOURNAL卡,打印EJOURNAL數據及報表,上傳存儲EJOURNAL數據。由于EJOURNAL卡絕大多數使用在稅控ECR上,所以以下描述以稅控ECR為主。
3.1 開關EJOURNAL卡
EJ開卡時綁定某臺ECR,綁定后只能本臺ECR使用。操作就是把唯一的ECR ID組存入EJ管理區域,ID組可能包括稅控設備號(Fiscal ID),納稅人代碼(Taxpayer ID),稅控記憶體(Fiscal memory)編號等,還有可能是產品串號(serial NO),ECR主板號,ECR編號等。
對于全新的ECR,稅控化時如果EJ卡是空卡,自動開EJ卡。
對于EJ 滿了的ECR,首先要關閉舊的EJ卡,再開新的EJ卡。EJ卡關閉后,這張卡不可再寫入,也不可修改、刪除,只能讀取,以備稅務部門查詢,防止偷稅漏稅。
3.2 數據寫入EJ卡
在正常ECR狀態下,數據自動寫入EJ卡,無須人為干預 。EJ數據涉及稅務部門和國家稅法,都要求對其加密或加數字簽名。對于MCU+Nor flash 方案,寫入EJ數據有兩種加密:一種是CPU加密,還有一種是通用DES(Data Encryption Standard)加密。大容量 Nand flash方案,寫入EJ數據是CPU加密,對應專用讀卡器也就有CPU解密功能。對于SD卡方案,絕大部分增加數字簽名方式,如果EJ數據有任何改動,數字簽名檢查就會警報,常用的數字簽名有SHA-1,MD5等。依據我司稅控ECR銷往不同國家,不同稅法不同客戶提出不同的需求,有的整個SD卡加鎖,SD卡PC不可讀,有的SD卡文件加寫保護。
3.3 打印EJ數據及報表
EJ報表主要包括EJ卡報表和每日EJ數據報表。EJ卡報表的內容有開關EJ卡信息,第一張和最后一張journal聯信息,本臺ECR使用EJ序號,當前EJ卡狀態、產品代碼、出廠序號,EJ卡總容量、剩余容量、總計打印行數,已存儲的journal聯張數,預計剩余的journal聯張數等等。在使用SD卡做為EJ卡時,EJ卡的出廠序號就是SD卡的ID,SD卡在PC上讀出的總容量就是當前EJ卡總容量。
打印EJ數據主要包括EJ簡略收據和EJ詳細收據。EJ簡略收據就是打印journal聯的一些時間,序列號,類型等簡略信息的收據。
EJ詳細收據就是還原journal聯。打印出需要的journal聯,可以選擇journal聯的類型,序列號范圍或者時間范圍來搜索查找。journal聯可以分為很多類型,不同國家、不同稅法有不同的分類標準,以巴拿馬為例,有銷售收據、清賬報表、列張報表、借記收據、退貨收據、稅控報表(Fiscal memory report)、非稅控文檔共7種,也可以選擇不分類型,就是在EJ詳細收據上打印出所有的類型。序列號范圍,每張journal聯上有序列號,有些國家稅法要求不同journal聯的類型要有獨立序列號,有些國家所有類型只有一個序列號,還有些國家要求每日序列號從1開始。時間范圍,是一個通用的搜索查找方法,不同國家、不同稅法的序列號范圍是不同的,但是時間范圍是相同的,搜索查找的精確度可以達到journal聯上分鐘。
3.4 上傳存儲EJ數據
通過USB、以太網或串口,PC可以上傳ECR中EJ數據。上傳后的EJ數據可以刻錄到光盤,或者放到其他設備存儲。
上傳EJ數據,也可以選擇EJ數據的類型,序列號范圍或者時間范圍來上傳。對于SD卡方案,SD卡中除了保存EJ數據外,每個journal聯可以保存成一個txt文件,每個txt文件可通過數字簽名檢查,以防文件被改動。由于上傳EJ數據生成txt文件可以節省打印紙,現在我司向客戶推薦使用。
4 結論
總之,EJOURNAL電子存根對于電子ECR是一個功能多,應用廣的輔助系統。不僅可以替代第二個打印機存儲journal聯,實現了快速搜索和精確核查核對的功能,還可以存儲大量原來電子ECR沒有辦法存儲的數據,提升了電子ECR的效率和升級增加了其他的許多功能和應用,尤其是把SD卡作為EJOURNAL電子存根的存儲器后,更是極大地擴大了電子ECR的存儲空間,靈活性和方便性也得到了提升,與PC的通訊和交換數據也容易便捷了,相信隨著EJOURNAL電子存根的更加深入應用,一定會發現出它越來越多的優越性。
參考文獻:
[1]張蓮.EJOURNAL電子存根原理和工作流程[J].機械電路,2009(08).