JP6657945B2 - 制御サーバー、情報処理システム、及び、制御サーバーの制御方法 - Google Patents
制御サーバー、情報処理システム、及び、制御サーバーの制御方法 Download PDFInfo
- Publication number
- JP6657945B2 JP6657945B2 JP2015256744A JP2015256744A JP6657945B2 JP 6657945 B2 JP6657945 B2 JP 6657945B2 JP 2015256744 A JP2015256744 A JP 2015256744A JP 2015256744 A JP2015256744 A JP 2015256744A JP 6657945 B2 JP6657945 B2 JP 6657945B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- word
- receipt
- area
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 45
- 230000010365 information processing Effects 0.000 title claims description 13
- 238000007639 printing Methods 0.000 claims description 123
- 238000004891 communication Methods 0.000 claims description 51
- 238000012545 processing Methods 0.000 claims description 34
- 238000004458 analytical method Methods 0.000 claims description 18
- 238000007726 management method Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 22
- 230000006870 function Effects 0.000 description 17
- 238000007405 data analysis Methods 0.000 description 12
- 238000003860 storage Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 239000000284 extract Substances 0.000 description 10
- 238000013523 data management Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 5
- 235000013405 beer Nutrition 0.000 description 4
- 238000005034 decoration Methods 0.000 description 4
- 238000009751 slip forming Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000005520 cutting process Methods 0.000 description 2
- 238000007599 discharging Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000032258 transport Effects 0.000 description 2
- 230000007723 transport mechanism Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/202—Interconnection or interaction of plural electronic cash registers [ECR] or to host computer, e.g. network details, transfer of information from host to ECR or from ECR to ECR
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/106—Display of layout of documents; Previewing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/163—Handling of whitespace
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/209—Specified transaction journal output feature, e.g. printed receipt or voice output
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Cash Registers Or Receiving Machines (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Record Information Processing For Printing (AREA)
Description
本発明は、上述した事情に鑑みてなされたものであり、印刷される情報を的確に分析できるようにすることを目的とする。
本発明の構成によれば、テキストデータに含まれる情報が単語に分解された上で、単語又は単語群が、テキストデータにおける単語の位置関係に基づいて適切に項目分けされる。このため、単語又は単語群について、どの項目に対応する項目値かを明確化した上で、所定の項目に対応する項目値として分析し、使用することが可能となり、これにより、印刷される情報を的確に分析できる。
この構成によれば、印刷装置から受信したテキストデータに含まれる情報が単語に分解された上で、単語又は単語群が、テキストデータにおける単語の位置関係に基づいて適切に項目分けされる。このため、単語又は単語群について、どの項目に対応する項目値かを明確化した上で、所定の項目に対応する項目値として分析し、使用することが可能となり、これにより、印刷される情報を的確に分析できる。
本発明の構成によれば、単語のデータ型を利用して、単語又は単語群の項目分けをより的確に行うことができる。
本発明の構成によれば、後に、分析データを使用して、項目分けされた単語又は単語群を用いた処理を実行できる。
本発明の構成によれば、レイアウト情報を生成した後は、レイアウト情報に基づいて簡易に単語又は単語群の項目分けが可能となる。
本発明の構成によれば、制御部は、単語又は単語群の項目分けが正常に行われてない場合に、そのことを検出できる。
本発明の構成によれば、区切文字を利用して、的確にテキストデータが有する情報を単語に分解できる。
本発明の構成によれば、テキストデータに含まれる情報が単語に分解された上で、単語又は単語群が、テキストデータにおける単語の位置関係に基づいて適切に項目分けされる。このため、単語又は単語群について、どの項目に対応する項目値かを明確化した上で、所定の項目に対応する項目値として分析し、使用することが可能となり、これにより、印刷される情報を的確に分析できる。
本発明の構成によれば、テキストデータに含まれる情報が単語に分解された上で、単語又は単語群が、テキストデータにおける単語の位置関係に基づいて適切に項目分けされる。このため、単語又は単語群について、どの項目に対応する項目値かを明確化した上で、所定の項目に対応する項目値として分析し、使用することが可能となり、これにより、印刷される情報を的確に分析できる。
図1は、本実施形態に係る会計システム1(情報処理システム)の構成を示す図である。
図1に示すように、会計システム1は、複数の店舗システム11を備える。店舗システム11は、スーパーマーケットや、コンビニエンスストア、デパート、飲食店等の店舗に用いられるシステムである。店舗は、商品の提供が行われ、商品の提供に応じて、顧客による会計が行われる施設であればよい。本実施形態において、「商品」は、物体として顧客に引き渡される商品だけでなく、顧客に提供されるサービスや、顧客に提供される飲食物等、対価と引き換えに顧客に提供される対象を意味する。
店舗システム11は、顧客が購入した商品に応じた会計を行う機能、会計に応じてレシートを発行する機能等を備える。
レジカウンターLにおける会計に際し、レジ担当者は、印刷装置12に接続されたバーコードリーダーBRで商品や商品の包装に付されたバーコードを読み取り、また、タブレット端末13に対して会計に対応する入力を行う。印刷装置12は、バーコードリーダーBRによる読み取りに基づくデータを、タブレット端末13に送信する。タブレット端末13は、印刷装置12から受信したバーコードリーダーBRの読み取りに基づくデータや、レジ担当者による会計に対応する入力に基づいて、印刷装置12にレシートを発行させる。印刷装置12により発行されたレシートは、レジ担当者により顧客に引き渡される。
印刷装置12、及び、タブレット端末13の構成、機能、及び、機能に基づく処理については後述する。
印刷装置12は、LANに係る通信規格に従って、ローカルエリアネットワークLNと接続する。
ローカルエリアネットワークLNには、通信装置14が接続される。通信装置14は、ローカルエリアネットワークLNと、インターネット、電話網、その他の通信網を含むグローバルネットワークGNとを接続するインターフェース装置である。
通信装置14は、モデム(又は、ONU(Optical Network Unit))に係る機能、ルーター機能、NAT(Network Address Translation)機能、及び、DHCP(Dynamic Host Configuration Protocol)サーバー機能等を有する。通信装置14は、ローカルエリアネットワークLNに接続された機器と、グローバルネットワークGNに接続された機器との間で行われる通信に際し、機器間で送受信されるデータを転送する。なお、図1では、通信装置14を1つのブロックで表現するが、通信装置14は、機能に応じた複数の装置を有する構成でもよい。
印刷装置12は、通信装置14を介して、グローバルネットワークGNにアクセス可能である。
タブレット端末13は、前面の広い領域にタッチパネル22が設けられたタブレット型の(板状の)端末である。タブレット端末13は、レジカウンターLにおける会計に際し、会計に関する各種処理を実行して印刷装置12を制御するホストコンピューターとして機能する。
図2に示すように、タブレット端末13は、タブレット端末制御部20と、タブレット端末通信部21と、タッチパネル22と、タブレット端末記憶部23と、を備える。
図2に示すように、印刷装置12は、印刷装置制御部30と、印刷部31と、印刷装置記憶部32と、印刷装置通信部33と、印刷装置ネットワーク通信部34と、デバイス通信部35と、を備える。
なお、デバイス通信部35が、無線通信機能を備え、デバイスと無線通信する構成でもよい。
バーコードリーダーBRは、商品や、商品の包装等に付されたバーコードを読み取り、読取結果を示すデータをデバイス通信部35に出力する。デバイス通信部35は、バーコードリーダーBRから入力されたデータを、印刷装置制御部30に出力する。
カスタマーディスプレーCDは、印刷装置制御部30の制御で、会計に関する情報を表示する。カスタマーディスプレーCDに表示された情報は、レジカウンターLで会計を行う顧客が視認できる。
自動釣銭機JTは、顧客から受け取った貨幣を投入する貨幣受取口と、釣銭に係る貨幣を排出する釣銭排出口とを備え、印刷装置制御部30の制御で、貨幣受取口を介して貨幣が投入された場合、対応する釣銭を釣銭排出口から排出する。
図2に示すように、制御サーバー15は、制御サーバー制御部40(制御部)と、制御サーバーネットワーク通信部41と、制御サーバー記憶部42と、を備える。
ステップSA1の処理について詳述すると、タブレット端末アプリケーション実行部201は、顧客の会計に伴う印刷装置12(印刷装置12に接続されたバーコードリーダーBR)からの入力や、タッチパネル22に対するレジ担当者の入力に応じて、レシート情報を生成する。レシート情報とは、印刷装置12に発行させるレシートに印刷する情報である。レシート情報の具体的な内容については、例を挙げて後述する。
次いで、タブレット端末アプリケーション実行部201は、生成したレシート情報に基づいて、印刷データを生成する。印刷データは、所定のレイアウトに従ってレシート情報が印刷されたレシートの発行を指示する制御データである。印刷データは、印刷装置12のコマンド体系に従った複数の制御コマンドを含んで構成される。
図4の(A)で例示するレシートR1に印刷された情報の内容と、図4の(B)で例示するレシートR2に印刷された情報の内容とは、同一性を有する。
レシートR1において、ロゴ情報J1の下方は、店舗の住所を文字列で表した店舗住所情報J2が一行で印刷される。
レシートR1において、店舗住所情報J2の一行下には、店舗の電話番号に関する情報を文字列で表した店舗電話番号関連情報J3が印刷される。店舗電話番号関連情報J3は、店舗の電話番号を示す店舗電話番号情報J32を有する。また、店舗電話番号関連情報J3は、店舗電話番号情報J32の同一行における左方に印刷され、店舗電話番号情報J32が電話番号を示す情報であることを明示する電話番号明示情報J31を有する。図4の(A)に示すように、レシートR1に係る電話番号明示情報J31は、3個の大文字のアルファベットの「TEL」からなる文字列である。
レシートR1は、1つ目の第1エリア分割情報SK1によって印刷領域が区切られ、1つ目の第1エリア分割情報SK1よりも上方がエリア分けされる。以下、レシートR1において、第1エリア分割情報SK1よりも上方のエリアを「エリアAA1」とする。
図4の(A)に示すように、レシートR1に係るレシート識別明示情報J41は、文字列「Check♯:」からなる情報である。
発行日時情報J5の一行下には、第1エリア分割情報SK1が印刷される。
レシートR1は、1つ目の第1エリア分割情報SK1と、2つ目の第1エリア分割情報SK1とによって印刷領域が区切られ、これら情報で囲まれた領域がエリア分けされる。以下、レシートR1において、1つ目の第1エリア分割情報SK1と、2つ目の第1エリア分割情報SK1とで囲まれたエリアを「エリアAA2」とする。
明細情報J6は、顧客が購入した商品に関する情報である。明細情報J6は、顧客が購入した商品の種類ごとに、レシートR1に印刷される。従って、顧客が購入した商品の種類が3つである場合は、3つの種類の商品のそれぞれに対応する3つの明細情報J6が印刷される。レシートR1に複数の明細情報J6が印刷される場合、複数の明細情報J6は、異なる行に、1行ずつ連続して印刷される。
明細情報J6は、1行内で、購入数量情報J61と、購入商品名称情報J62と、単価情報J63とを有する。購入数量情報J61は、対応する商品の購入数量を、小数点無しの整数で表す情報である。購入商品名称情報J62は、対応する商品の名称を文字列で表す情報である。単価情報J63は、対応する商品の単価を、小数点付きの数値によって表す情報である。
レシートR1では、明細情報J6に含まれる購入数量情報J61、購入商品名称情報J62、及び、単価情報J63は、1行内で、右へ向かって購入数量情報J61→購入商品名称情報J62→単価情報J63の順番で印刷される。
レシートR1は、2つ目の第1エリア分割情報SK1と、1つ目の第2エリア分割情報SK2とによって印刷領域が区切られ、これら情報で囲まれた領域がエリア分けされる。以下、レシートR1において、2つ目の第1エリア分割情報SK1と、1つ目の第2エリア分割情報SK2とで囲まれたエリアを「エリアAA3」とする。
図4の(A)に示すように、レシートR1に係る小計明示情報J71は、8個の大文字のアルファベットの「SUBTOTAL」からなる文字列である。
図4の(A)に示すように、レシートR1に係る税明示情報J81は、3個の大文字のアルファベットの「TAX」からなる文字列である。
図4の(A)に示すように、レシートR1に係る合計金額明示情報J91は、5個の大文字のアルファベットの「TOTAL」からなる文字列である。
レシートR1は、1つ目の第2エリア分割情報SK2と、3つ目の第1エリア分割情報SK1とによって印刷領域が区切られ、これら情報で囲まれた領域がエリア分けされる。以下、レシートR1において、1つ目の第2エリア分割情報SK2と、3つ目の第1エリア分割情報SK1とで囲まれたエリアを「エリアAA4」とする。3つ目の第1エリア分割情報SK1より下方のエリアを「エリアAA5」とする。
このように、レシートR1は、以下のレイアウトで情報が印刷される。すなわち、印刷領域に4つのエリア分割情報が印刷され、これら4つのエリア分割情報により、印刷領域が、上から順番に、エリアAA1、エリアAA2、エリアAA3、エリアAA4、及び、エリアAA5の5つのエリアに区分けされる。エリアAA1には、ロゴ情報J1、店舗住所情報J2、及び、店舗電話番号関連情報J3がこの順番で印刷される。エリアAA2には、レシート識別関連情報J4、及び、発行日時情報J5がこの順番で印刷される。エリアAA3には、1又は複数の明細情報J6が印刷される。明細情報J6に含まれる購入数量情報J61、購入商品名称情報J62、及び、単価情報J63は、1行内で、右へ向かって購入数量情報J61→購入商品名称情報J62→単価情報J63の順番で印刷される。エリアAA4には、小計関連情報J7、税関連情報J8、及び、合計金額関連情報J9がこの順番で印刷される。エリアAA5には、付加情報J10が印刷される。
レシートR2において、ロゴ情報J1の下方には、レシート識別関連情報J4が印刷される。レシート識別関連情報J4は、レシート識別明示情報J41と、レシート識別情報J42とを有する。
図4の(B)に示すように、レシートR2に係るレシート識別明示情報J41は、文字列「CheckNO.」からなる情報であり、レシートR1に係るレシート識別明示情報J41と文字列の態様が相違する。
発行日時情報J5の一行下には、第1エリア分割情報SK1が印刷される。
レシートR2は、1つ目の第1エリア分割情報SK1によって、第1エリア分割情報SK1より上方と、下方とが区切られ、エリア分けされる。以下、レシートR2において、第1エリア分割情報SK1よりも上方の情報のエリアを「エリアAB1」とする。
レシートR2では、明細情報J6に含まれる購入数量情報J61、購入商品名称情報J62、及び、単価情報J63は、1行内で、右へ向かって購入商品名称情報J62→購入数量情報J61→単価情報J63の順番で印刷される。
図4の(B)に示すように、レシートR2に係る小計明示情報J71は、8個の小文字のアルファベットの「subtotal」からなる文字列であり、レシートR1に係る小計明示情報J71と文字列の態様が相違する。
レシートR2は、1つ目の第1エリア分割情報SK1と、1つ目の第3エリア分割情報SK3とによって印刷領域が区切られ、これら情報で囲まれた領域がエリア分けされる。以下、レシートR2において、1つ目の第1エリア分割情報SK1と、1つ目の第3エリア分割情報SK3とで囲まれたエリアを「エリアAB2」とする。
レシートR2は、1つ目の第3エリア分割情報SK3と、2つ目の第1エリア分割情報SK1とによって印刷領域が区切られ、これら情報で囲まれた領域がエリア分けされる。以下、レシートR2において、1つ目の第3エリア分割情報SK3と、2つ目の第1エリア分割情報SK1とで囲まれたエリアを「エリアAB3」とする。また、2つ目の第1エリア分割情報SK1より下方のエリアを「エリアAB4」とする。
また、図4の(A)と、図4の(B)との比較で明らかなとおり、レシートR1と、レシートR2とでは、レイアウトが異なる。
なお、本実施形態において、印刷データには、1又は複数の文字コードを含み、文字コードに基づく文字の印刷を指示する制御コマンド(以下、「文字列印刷指示コマンド」という。)を含めることができる。文字列印刷指示コマンドには、当該コマンドに基づいて印刷させる文字に施す修飾を指定する情報を含めることができる。文字に施す修飾とは、例えば、太字化、アンダーラインの付加、強調点の付加、白黒の反転、回転、右寄せ、中央寄せ、左寄せ等である。また、印刷装置12の印刷装置記憶部32は、文字コードのそれぞれと、文字コードに係る文字に対応するフォントデータを記憶するフォントテーブルを記憶する。
そして、印刷装置12の印刷装置制御部30は、文字列印刷指示コマンドに基づいて、当該コマンドに含まれる文字コードのそれぞれを、対応するフォントデータのそれぞれに変換し、フォントデータに対して当該コマンドで指定された装飾を反映して画像バッファーにイメージデータとして展開し、画像バッファーに展開したイメージデータに基づいて、文字を印刷する機能を有する。
印刷テキストデータには、印刷で行われる改行が反映された状態で情報が記述される。
また、印刷テキストデータには、文字列印刷指示コマンドで指定された装飾は反映されない状態で情報が記述される。従って、文字列印刷指示コマンドにおいて、文字に施す装飾として、中央寄せ、右寄せが指示された場合でも、印刷テキストデータへの文字の記述に際し、これら装飾は反映されない。
なお、空白文字(スペースや、ブランクと呼ばれる場合もある。)は、文字コードが割り当てられた文字であり、印刷テキストデータに記述される。
図5の(B)は、図4の(B)で例示したレシートR2に係る印刷データに基づいて生成される印刷テキストデータT2の内容を示す図である。図4の(B)と、図5の(B)との比較で明らかなとおり、印刷テキストデータT2には、レシートR2に文字として印刷される情報が、印刷における順番、及び、印刷における改行を反映した状態で記述される。
なお、ロゴ情報J1は、フォントデータに基づいて印刷される情報ではなく、ビットマップデータ等のグラフィック画像データに基づいて印刷される情報である。図5の(A)、及び、(B)に示すように、文字コードに対応するフォントデータに基づいて印刷される情報以外の情報は、印刷テキストデータには記述されない。
シリアル番号J11は、印刷装置12の製造段階で、印刷装置12に一意に割り当てられる識別情報である。
なお、ステップSB4において、シリアル番号J11等を送信するのに必要な通信に関する情報(送信先に関する情報や、通信に用いるプロトコル、送信するデータのフォーマット等)は、印刷装置12に事前に登録される。
図6は、テキストデータ管理データベース421の1件のレコードが有する情報を模式的に示す図である。
図6に示すように、テキストデータ管理データベース421の1件のレコードは、統括識別情報J12と、シリアル番号J11と、印刷データと、印刷テキストデータとを有する。
統括識別情報J12は、テキストデータ管理データベース421のレコードを識別する識別情報である。統括識別情報J12は、テキストデータ管理データベース421の各レコードについて一意な値であるため、対応する印刷データ、及び、対応する印刷テキストデータを識別する識別情報として使用することができる。
ステップSC2において、制御サーバー制御部40は、所定のルールに従って、統括識別情報J12を生成する。
次いで、制御サーバー制御部40は、生成した統括識別情報J12と、受信したシリアル番号J11、印刷データ、及び、印刷テキストデータとを対応付けたレコードを、テキストデータ管理データベース421に登録する。
レコードが存在しない場合(ステップSC3:NO)、制御サーバー制御部40は、テキストデータ分析処理を実行する(ステップSC4)。次いで、制御サーバー制御部40は、テキストデータ分析処理の結果に基づいて、レイアウト情報管理データベース423に1件のレコードを生成し(ステップSC5)、会計情報管理データベース422に1件のレコードを生成する(ステップSC6)。ステップSC4〜ステップSC6の処理については後に詳述する。
レコードが存在する場合(ステップSC3:YES)、制御サーバー制御部40は、対応するレコードからレイアウト情報を取得し(ステップSC7)、取得したレイアウト情報に基づいて分析データを生成し(ステップSC8)、生成した分析データに基づいて会計情報管理データベース422に1件のレコードを生成する(ステップSC9)。ステップSC7〜ステップSC9の処理については、ステップSC3の処理と併せて後に詳述する。
ステップSC4のテキストデータ分析処理は、印刷テキストデータに記述された単語、又は、単語群(単語、及び、単語群については後述。)のうち、所定のものを項目分けし、項目分けの結果に基づいて分析データ(後述)を生成する処理である。
単語又は単語群を項目分けするとは、レシートに印刷される単語又は単語群のうち、所定の単語又は単語群について、予め定められた項目に対する項目値であることを特定し、所定の項目の項目値として特定した単語又は単語群を、当該所定の項目と対応付けることを意味する。
例えば、項目として、店舗住所情報J2を項目値として有する項目がある場合において、印刷テキストデータが有する情報の中から、店舗住所情報J2を特定し、当該項目と、特定した店舗住所情報J2とを対応付けることが「所定の単語又は単語群の項目分け」に相当する。
以下、項目として、適宜、以下の項目があるものとして、図5の(A)の印刷テキストデータT1、及び、図5の(B)の印刷テキストデータT2を用いて、テキストデータ分析処理について説明する。項目は、店舗住所情報J2を項目値として有する店舗住所項目、店舗電話番号情報J32を項目値として有する店舗電話番号項目、レシート識別情報J42を項目値として有するレシート識別項目、発行日時情報J5を項目値として有する発行日時項目、購入数量情報J61を項目値として有する購入数量項目、購入商品名称情報J62を項目値として有する購入商品名称項目、単価情報J63を項目値として有する単価項目、小計情報J72を項目値として有する小計項目、税額情報J82を項目値として有する税額項目、及び、合計金額情報J92を項目値として有する合計金額項目である。
以下の説明では、印刷テキストデータを含むテキストデータにおいて、改行を表す文字コードを、「改行文字」と表現する。
図7に示すように、制御サーバー制御部40は、印刷テキストデータに含まれる情報を単語に分解する。(ステップSD1)。
詳述すると、制御サーバー制御部40は、印刷テキストデータに含まれる情報について、区切文字によって区切られた(分離された)連続する一連の文字列(1文字の場合もある。以下、1文字も、適宜、「文字列」と表現する。)を1つの単語として、印刷テキストデータに含まれる情報を単語に分解する。連続する一連の文字列とは、同一行内で区切文字を挟むことなく連続する1又は複数の実文字を意味する。実文字とは、区切文字以外の文字である。
本実施形態では、「区切文字」は、空白文字、及び、改行文字である。
店舗住所情報J2が有する単語「1234」、単語「XXXStreet、New」、単語「York」。
電話番号明示情報J31に係る単語「TEL」、店舗電話番号情報J32に係る単語「12−345−678」。
1つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」。
レシート識別明示情報J41に係る単語「Check♯:」、レシート識別情報J42に係る単語「C0001」。
発行日時情報J5に係る単語「1/1/2015/12:00」。
2つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」。
1つ目の明細情報J6の購入数量情報J61に係る単語「1」、購入商品名称情報J62に係る単語「Beer」、単価情報J63に係る単語「10.00」。
2つ目の明細情報J6の購入数量情報J61に係る単語「1」、購入商品名称情報J62に係る単語「Toy」、単価情報J63に係る単語「60.00」。
1つ目の第2エリア分割情報SK2に係る単語「〜〜〜・・・〜」。
小計明示情報J71に係る単語「SUBTOTAL」、小計情報J72に係る単語「70.00」。
税明示情報J81に係る単語「TAX」、税額情報J82に係る単語「6.13」。
合計金額明示情報J91に係る単語「TOTAL」、合計金額情報J92に係る単語「$76.13」。
3つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」。
付加情報J10が有する単語「THANK」、単語「YOU!」。
レシート識別明示情報J41に係る単語「CheckNO.」、レシート識別情報J42に係る単語「C0001」。
発行日時情報J5に係る単語「1/1/2015/12:00」。
1つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」。
1つ目の明細情報J6の購入商品名称情報J62に係る単語「Beer」、購入数量情報J61に係る単語「1」、単価情報J63に係る単語「10.00」。
2つ目の明細情報J6の購入商品名称情報J62に係る単語「Toy」、購入数量情報J61に係る単語「1」、単価情報J63に係る単語「60.00」。
小計明示情報J71に係る単語「subtotal」、小計情報J72に係る単語「70.00」。
税明示情報J81に係る単語「tax」、税額情報J82に係る単語「6.13」。
1つ目の第3エリア分割情報SK3に係る単語「===・・・=」。
合計金額明示情報J91に係る単語「total」、合計金額情報J92に係る単語「$76.13」。
1つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」。
付加情報J10が有する単語「THANK」、単語「YOU!」。
電話番号明示情報J31に係る単語「tel」、店舗電話番号情報J32に係る単語「12−345−678」。
店舗住所情報J2が有する単語「1234」、単語「XXXStreet、New」、単語「York」。
単語群とは、複数の単語の組み合わせによって、1つのまとまった意味を有した情報として成立する場合の、これら複数の単語の組み合わせのことをいう。印刷テキストデータT1、及び、印刷テキストデータT2の例では、単語「1234」、単語「XXXStreet、New」、単語「York」は、単体では意味をなさない。これら単語は、これら単語が組み合わされ、単語群「1234△XXXStreet、New△York」(△は、区切文字である空白文字を表す。以下、同じ。)となって初めて、店舗の住所を示す情報(店舗住所情報J2)という意味を持った情報となる。この場合において、単語群「1234△XXXStreet、New△York」が、ステップSD2で抽出される「単語群」に相当する。
また、印刷テキストデータT1、及び、印刷テキストデータT2の例では、単語「THANK」、単語「YOU!」は、単体では意味をなさない。これら単語は、これら単語が組み合わされ、単語群「THANK△YOU!」となって初めて、顧客に対する感謝を表す情報(付加情報J10)という意味を持った情報となる。この場合において、単語群「THANK△YOU!」が、ステップSD2で抽出される「単語群」に相当する。
例えば、店舗住所情報J2については、制御サーバー制御部40は、以下の処理を実行する。すなわち、制御サーバー15には、予め、住所として使用可能な用語(例えば、用語「New△York」)が登録される。用語は空白文字を含んでもよい。また、制御サーバー15には、予め、住所を表す場合のルールを示す情報が登録される。住所を表す場合のルールとは、該当する地域においては、「数値により表される番地、ストリート名、行政区域を示す情報の順番で住所が表される。」等の、該当する地域において住所を表す場合の規則を意味する。
そして、制御サーバー制御部40は、住所として使用可能な用語を含み、その用語の前後の単語が、住所を表す場合のルールに従って記述された状態の場合、「登録された用語を含み、住所を表す場合のルールに従って記述された情報」に属する一連の単語を、店舗住所情報J2に係る単語群として抽出する。
単語群を抽出する処理はどのような方法で行われてもよい。
図8の(A)は、印刷テキストデータT1(図5の(A))に基づく単語データTD1の内容を示す。図8の(B)は、印刷テキストデータT2(図5の(B))に基づく単語データTD2の内容を示す。
以下、ステップSD2で抽出した単語群を「特定単語群」と表現する。また、ステップSD1で分解された単語のうち、特定単語群に属する単語を除く単語のそれぞれを「特定単語」と表現する。また、特定単語と、特定単語群とを区別しない場合、「対象単語」と表現する。
図9の(A)の行データGG1に示すように、図5の(A)で例示する印刷テキストデータT1については、制御サーバー制御部40のステップSD2の処理により、各単語が以下の態様で行に分解される。
第1行目→単語群「1234△XXXStreet、New△York」。
第2行目→単語「TEL」、単語「12−345−678」。
第3行目→単語「−−−・・・−」。
第4行目→単語「Check♯:」、単語「C0001」。
第5行目→単語「1/1/2015/12:00」。
第6行目→単語「−−−・・・−」。
第7行目→単語「1」、単語「Beer」、単語「10.00」。
第8行目→単語「1」、単語「Toy」、単語「60.00」。
第9行目→単語「〜〜〜・・・〜」。
第10行目→単語「SUBTOTAL」、単語「70.00」。
第11行目→単語「TAX」、単語「6.13」。
第12行目→単語「TOTAL」、単語「$76.13」。
第13行目→単語「−−−・・・−」。
第14行目→単語群「THANK△YOU!」。
図9の(B)の行データGG2に示すように、図5の(B)で例示する印刷テキストデータT2については、制御サーバー制御部40のステップSD2の処理により、各単語が以下の態様で行に分解される。
第1行目→単語「CheckNO.」、単語「C0001」。
第2行目→単語「1/1/2015/12:00」。
第3行目→単語「−−−・・・−」。
第4行目→単語「Beer」、単語「1」、単語「10.00」。
第5行目→単語「Toy」、単語「1」、単語「60.00」。
第6行目→単語「subtotal」、単語「70.00」。
第7行目→単語「tax」、単語「6.13」。
第8行目→単語「===・・・=」。
第9行目→単語「total」、単語「$76.13」
第10行目→単語「−−−・・・−」。
第11行目→単語「THANK△YOU!」。
第12行目→単語「tel」、単語「12−345−678」。
第13行目→単語「1234△XXXStreet、New△York」。
レシート基本ルールとして、レシートに印刷される情報は、エリア分割情報によって印刷領域が区切られ、エリア分割情報を境としてエリアが分けられるというレシート基本ルールがある。これは、以下の理由による。すなわち、レシートには、顧客が買い物をした店舗に関する情報(例えば、ロゴ情報J1、店舗住所情報J2、店舗電話番号関連情報J3)や、顧客が購入した商品に関する情報(例えば、明細情報J6)、レシート自体に関する情報(例えば、レシート識別関連情報J4、発行日時情報J5)、顧客の支払いに関する情報(例えば、小計関連情報J7、税関連情報J8、合計金額関連情報J9)等の、異なる属性(異なる意味合い)の情報が印刷される。そして、レシートの印刷領域をエリア分割情報によってエリアに分け、各エリアに同一又は関連する属性の情報を印刷することにより、レシートを視認した顧客が、レシートの内容を理解しやすくなるからである。
また、レシート基本ルールについて、エリア分割情報は、同一の特殊文字(後述)が1行内で所定個数以上、連続して構成された情報であるというレシート基本ルールがある。
特殊文字とは、エリア分けするというエリア分割情報の機能を実現するのに適した文字であり、本実施形態では、文字「−」、文字「〜」、文字「=」である。本実施形態で例示する特殊文字以外の特殊文字としては、文字「@」、文字「*」、文字「+」等が想定される。
また、レシート基本ルールについて、エリア分割情報と同一行には、エリア分割情報以外の情報が印刷されないというレシート基本ルールがある。
次いで、制御サーバー制御部40は、印刷テキストデータについて、特定した1又は複数のエリア分割情報によって区切られる各エリアを特定する。次いで、制御サーバー制御部40は、各エリアに属する対象単語を特定し、各エリアと、各エリアに属する対象単語との対応関係が、各対象単語が属する「行」と共に記述されたエリアデータを生成する(ステップSD5)。
以下、1の印刷テキストデータについて、エリア分割情報によって区切られる各エリアを、上から順番に、第1エリア、第2エリア・・・第Nエリアのように表現する。
印刷テキストデータT1について、制御サーバー制御部40は、1つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」、2つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」、1つ目の第2エリア分割情報SK2に係る単語「〜〜〜・・・〜」、3つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」を、エリア分割情報として特定する。次いで、特定したエリア分割情報により印刷テキストデータT1をエリアに分け、各エリアに属する対象単語を特定する。次いで、制御サーバー制御部40は、エリアと、エリアに属する対象単語との関係に基づいて、図10の(A)に示すエリアデータAD1を生成する。
印刷テキストデータT2について、制御サーバー制御部40は、1つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」、1つ目の第3エリア分割情報SK3に係る単語「===・・・=」、2つ目の第1エリア分割情報SK1に係る単語「−−−・・・−」を、エリア分割情報として特定する。次いで、特定したエリア分割情報により印刷テキストデータT2をエリアに分け、各エリアに属する対象単語を特定する。次いで、制御サーバー制御部40は、エリアと、エリアに属する対象単語との関係に基づいて、図10の(B)に示すエリアデータAD2を生成する。
また、通貨記号又は通貨単位と、「数値型」の情報からなる単語のデータ型を「金額型」と定義する。例えば、単語「$76.13」が「金額型」の単語である。
また、「通貨記号又は通貨単位」以外の単位を表す文字と、「数値型」の情報とからなる単語のデータ型を「単位型」と定義する。例えば、単語「@1」が「単位型」の単語である。
また、「数値型」、「金額型」、「単位型」以外の単語であり、数字を示す、単位を示す文字、及び、記号を示す文字以外の文字を少なくとも1つ含む単語のデータ型を「テキスト型」と定義する。
ここで、1の種類の商品に係る購入数量情報J61、購入商品名称情報J62、及び、単価情報J63について、これら情報は、レシートのレイアウトにかかわらず、一行内に印刷されるというレシート基本ルールがある。これら情報は、レシートに印刷されることが必須の情報であるからであり、また、これら情報を同一行に印刷することにより、これら情報が1つの種類の商品に関連する情報であることが明示されるからである。また、これら情報を同一行に印刷することにより、明細情報J6が、複数個(=複数行)、レシートに印刷された場合に、購入数量情報J61、購入商品名称情報J62、及び、単価情報J63の対応関係が明確化するからである。
また、購入数量情報J61、購入商品名称情報J62、及び、単価情報J63を含む明細情報J6がレシートに複数印刷される場合、明細情報J6のそれぞれは同一のエリアに印刷されるというレシート基本ルールがある。明細情報J6のぞれぞれは、同一の属性の情報だからである。
また、購入数量情報J61は数値型又は単位型の単語であり、購入商品名称情報J62はテキスト型の単語であり、単価情報J63は数値型又は金額型の単語であるというレシート基本ルールがある。
また、制御サーバー制御部40は、特定した「行」において、数値型又は単位型の対象単語、及び、数値型又は金額型の対象単語について、いずれの対象単語が購入数量情報J61であり、いずれの対象単語が単価情報J63であるかを判別する。例えば、制御サーバー制御部40は、金額型の対象単語は単価情報J63と判別する。また、制御サーバー制御部40は、単位型の対象単語は購入数量情報J61と判別する。また、制御サーバー制御部40は、2つの対象単語がいずれも数値型の単語である場合は、2つの対象単語が示す数値の大きさや、他の明細情報J6における対応する2つの対象単語が示す数値との関係に基づいて、いずれの対象単語が購入数量情報J61であり、いずれの対象単語が単価情報J63であるかを判別する。
制御サーバー制御部40は、購入数量情報J61と特定した対象単語を購入数量項目と対応付け、購入商品名称情報J62と特定した対象単語を購入商品名称項目と対応付け、単価情報J63と特定した対象単語を単価項目と対応付ける。
レシート基本ルールとして、小計情報J72、税額情報J82、及び、合計金額情報J92は、この順番で、印刷されるというルールがある。小計が確定して、税額が確定し、小計及び税額が確定して合計金額が確定するからである。例えば、これら情報が異なる行に印刷される場合は、レシートにおいて下方へ向かって、小計情報J72、税額情報J82、合計金額情報J92の順番で印刷される。また例えば、これら情報の少なくとも2つが同一の行に印刷される場合は、対応する一行において右へ向かって小計情報J72、税額情報J82、合計金額情報J92の順番で印刷される。
また、レシート基本ルールとして、小計情報J72、税額情報J82、及び、合計金額情報J92は、同一のエリアに印刷されるか、又は、隣接するエリアに印刷されるというレシート基本ルールがある。これら情報は、同一の属性の情報だからであり、また、近接する位置に印刷されることによって、それぞれの情報の関係が明確となるからである。
また、レシート基本ルールとして、小計情報J72は、小計明示情報J71と隣接してレシートに印刷されるというレシート基本ルールがある。小計情報J72に対応する単語のデータ型は、数値型又は金額型であり、小計情報J72が何を意味するかを小計明示情報J71によって明示する必要があるからである。また、レシート基本ルールとして、小計情報J72に対応する単語のデータ型は数値型又は金額型であり、小計明示情報J71に対応する単語のデータ型はテキスト型であるというレシート基本ルールがある。
また、レシート基本ルールとして、税額情報J82は、税明示情報J81と隣接してレシートに印刷されるというレシート基本ルールがある。税額情報J82に対応する単語のデータ型は、数値型又は金額型であり、税額情報J82が何を意味するかを税明示情報J81によって明示する必要があるからである。また、レシート基本ルールとして、税額情報J82に対応する単語のデータ型は数値型又は金額型であり、税明示情報J81に対応する単語のデータ型はテキスト型であるというレシート基本ルールがある。
また、レシート基本ルールとして、合計金額情報J92は、合計金額明示情報J91と隣接してレシートに印刷されるというレシート基本ルールがある。合計金額情報J92に対応する単語のデータ型は、数値型又は金額型であり、合計金額情報J92が何を意味するかを合計金額明示情報J91によって明示する必要があるからである。また、レシート基本ルールとして、合計金額情報J92に対応する単語のデータ型は数値型又は金額型であり、合計金額明示情報J91に対応する単語のデータ型はテキスト型であるというレシート基本ルールがある。
例えば、小計情報J72について、制御サーバー制御部40は、以下の処理を行う。
すなわち、制御サーバー15には、小計明示情報J71に含めることが可能な用語が予め登録される。制御サーバー制御部40は、登録された用語に基づいて、小計明示情報J71に対応する対象単語の候補を抽出する。制御サーバー制御部40は、「小計明示情報J71に対応する単語のデータ型がテキスト型であること」、「小計明示情報J71に対応する単語が数値型又は金額型の小計情報J71に対応する単語に隣接すること」、「小計明示情報J71に対応する単語が税明示情報J81に対応する単語よりも前に存在すること」、「小計明示情報J71に対応する単語が、税明示情報J81又は合計金額明示情報J91と同一又は隣接するエリアに存在すること」を踏まえて、印刷テキストデータ、単語データ、行データ、エリアデータに基づいて、抽出した候補から、小計明示情報J71に対応する対象単語を特定する。次いで、制御サーバー制御部40は、小計明示情報J71との位置関係、小計明示情報J71以外の単語との位置関係、及び、データ型に基づいて、小計情報J72に対応する対象単語を特定し、特定した対象単語を、小計項目と対応付ける。
制御サーバー制御部40は、小計情報J72に対応する対象単語の項目付けと同様の方法により、税額情報J82に対応する対象単語を特定して税額項目と対応付け、また、合計金額情報J92に対応する対象単語を特定して合計金額項目と対応付ける。
すなわち、店舗住所情報J2に対応する対象単語は、上述したように、住所として使用可能な用語を含み、住所を表す場合のルールに従った情報を有する。また、レシート基本ルールとして、店舗住所情報J2は、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9が印刷されるエリアとは異なるエリアに印刷されるというレシート基本ルールがある。店舗住所情報J2は、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9とは異なる属性の情報だからである。制御サーバー制御部40は、対象単語の内容に基づいて、対象単語から店舗住所情報J2に対応する単語の候補を抽出する。制御サーバー制御部40は、候補とした対象単語と、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9に係る対象単語との位置関係を踏まえて、抽出した候補から、店舗住所情報J2に対応する対象単語を特定する。次いで、制御サーバー制御部40は、特定した対象単語を、店舗住所項目と対応付ける。
レシート基本ルールとして、レシート識別情報J42は、レシート識別明示情報J41と隣接してレシートに印刷されるというレシート基本ルールがある。レシート識別情報J42単体では意味をなさず、レシート識別情報J42が何を意味するかをレシート識別明示情報J41によって明示する必要があるからである。また、レシート基本ルールとして、レシート識別情報J42は、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9が印刷されるエリアとは異なるエリアに印刷されるというレシート基本ルールがある。レシート識別情報J42は、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9とは異なる属性の情報だからである。
制御サーバー15には、レシート識別明示情報J41に含めることが可能な用語が予め登録される。制御サーバー制御部40は、登録された用語に基づいて、レシート識別明示情報J41に対応する対象単語の候補を抽出する。制御サーバー制御部40は、上述したレシート識別情報J42に係るレシート基本ルールを踏まえて、印刷テキストデータ、単語データ、行データ、エリアデータに基づいて、抽出した候補から、レシート識別明示情報J41に対応する対象単語を特定する。次いで、制御サーバー制御部40は、レシート識別明示情報J41との位置関係や、レシート識別明示情報J41以外の単語との位置関係等に基づいて、レシート識別情報J42に対応する対象単語を特定し、特定した対象単語を、レシート識別項目と対応付ける。
すなわち、発行日時情報J5は、日時を表す場合のルールに従った所定の形式で情報が記述される。また、レシート基本ルールとして、発行日時情報J5は、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9が印刷されるエリアとは異なるエリアに印刷されるというレシート基本ルールがある。発行日時情報J5は、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9とは異なる属性の情報だからである。制御サーバー制御部40は、対象単語の内容に基づいて、対象単語から発行日時情報J5に対応する単語の候補を抽出する。制御サーバー制御部40は、上候補とした対象単語と、明細情報J6、小計関連情報J7、税関連情報J8、又は、合計金額関連情報J9に係る対象単語との位置関係を踏まえて、抽出した候補から、店舗住所情報J2に対応する対象単語を特定する。次いで、制御サーバー制御部40は、特定した対象単語を、発行日時項目と対応付ける。
詳述すると、会計に係る合計金額、小計、及び、税額は以下の関係にある。「合計金額=小計+税額」。これを踏まえ、制御サーバー制御部40は、小計項目と対応付けられた対象単語(小計情報J72に対応する対象単語)が示す数値(小計)と、税額項目と対応付けられた対象単語(税額情報J82に対応する対象単語)が示す数値(税額)と、合計金額項目と対応付けられた対象単語(合計金額情報J92に対応する対象単語)が示す数値(合計金額)とが上記関係にあるか否かを判別する。上記関係に無い場合、制御サーバー制御部40は、対象単語の項目分けが失敗したと判別し、対応する処理を実行する。例えば、制御サーバー制御部40は、所定の方法で、対象単語の項目分けが失敗した可能性があることをオペレーター、その他の権限を有する者に報知する。
また、会計に関し、小計は、「商品の単価と購入数量との積」を、顧客が購入した商品のそれぞれについて合計した値である。これを踏まえ、制御サーバー制御部40は、「単価項目に対応付けられた対象単語(単価情報J63に対応する対象単語)が示す数値と、購入数量項目に対応付けられた対象単語(購入数量情報J61に対応する対象単語)が示す数値との積」を合計した値と、小計項目と対応付けられた対象単語(小計情報J72に対応する対象単語)が示す数値(小計)とが上記関係にあるか否かを判別する。上記関係に無い場合、制御サーバー制御部40は、対応する処理を実行する。
分析データは、項目を階層化でき、各項目に項目値を対応付けて記述可能なテキストデータである。分析データは、例えば、XML形式や、JSON形式のデータである。
ステップSD8において、制御サーバー制御部40は、ステップSD6の処理で対象単語と対応付けられた項目のそれぞれについて、項目と、対象単語との対応関係を記述した分析データを生成する。
図11は、印刷テキストデータT1(図5の(A))に基づいて生成される分析データBS1の内容を説明に適した態様で模式的に示す図である。
図11に示すように、印刷テキストデータT1に基づく分析データには、店舗住所項目、店舗電話番号項目、レシート識別項目、発行日時項目、購入数量項目、購入商品名称項目、単価項目、小計項目、税額項目、及び、合計金額項目のそれぞれについて、対応する項目値が対応付けて記述される。
詳述すると、ステップSC5において、制御サーバー制御部40は、テキストデータ分析処理で生成した単語データ、行データ、及び、エリアデータに基づいて、レイアウト情報を生成する。レイアウト情報は、印刷テキストデータにおいて、どのエリアに、どの対象項目が、どういった態様で記述されるのかを示す情報である。制御サーバー制御部40は、レイアウト情報に基づいて、印刷テキストデータが有する対象単語の項目分けが可能となる。また、レイアウト情報は、制御サーバー制御部40が、当該情報に基づいて印刷テキストデータが有する対象単語の項目分けが可能となるために必要な情報を有する。
レイアウト情報を生成した後、制御サーバー制御部40は、ステップSC1で受信したシリアル番号J11と、生成したレイアウト情報とが対応付けられた1件のレコードを、レイアウト情報管理データベース423に登録する。
図12は、会計情報管理データベース422のデータ構造を模式的に示す図である。
図12に示すように、会計情報管理データベース422の1件のレコードは、統括識別情報J12、及び、シリアル番号J11を有する。また、会計情報管理データベース422は、店舗住所情報J2(店舗住所項目の項目値)、店舗電話番号情報J32(店舗電話番号項目の項目値)、レシート識別情報J42(レシート識別項目の項目値)、発行日時情報J5(発行日時項目の項目値)、小計情報J72(小計項目の項目値)、税額情報J82(税額項目の項目値)、及び、合計金額情報J92(合計金額項目の項目値)を有する。また、会計情報管理データベース422の1件のレコードは、顧客が購入した商品ごとに、明細情報J6を有する。各明細情報J6は、購入数量情報J61(購入数量項目の項目値)、購入商品名称情報J62(購入商品名称項目の項目値)、及び、単価情報J63(単価項目の項目値)を有する。
図12において、レコードRC121は、印刷テキストデータT1に基づいて生成されるレコードを示す。
ステップSC6で、制御サーバー制御部40は、分析データから、各項目の項目値を取得し、取得した項目値を、新たに生成するレコードの対応するフィールドに格納する。
上述したように、印刷データ等の送信元の印刷装置12について、過去にテキストデータ分析処理が行われた場合、レイアウト情報管理データベース423に、当該印刷装置12のシリアル番号J11とレイアウト情報とが対応付けられたレコードが記憶された状態である。
次いで、制御サーバー制御部40は、ステップSC1で受信した印刷テキストデータ、及び、ステップSC7で取得したレイアウト情報に基づいて、分析データを生成する(ステップSC8)。上述したように、レイアウト情報は、制御サーバー制御部40が、当該情報に基づいて印刷テキストデータが有する対象単語の項目分けが可能となるために必要な情報を有する。
次いで、制御サーバー制御部40は、ステップSC8で生成した分析データに基づいて、レイアウト情報管理データベース423にレコードを生成する(ステップSC9)。
この構成によれば、印刷テキストデータに含まれる情報が単語に分解された上で、単語又は単語群が、印刷テキストデータにおける単語の位置関係に基づいて適切に項目分けされる。このため、単語又は単語群について、どの項目に対応する項目値かを明確化した上で、所定の項目に対応する項目値として分析し、使用することが可能となり、これにより、印刷される情報を的確に分析できる。
この構成によれば、単語のデータ型を利用して、単語又は単語群の項目分けをより的確に行うことができる。
この構成によれば、後に、分析データを使用して、項目分けされた単語又は単語群を用いた処理を実行できる。
この構成によれば、レイアウト情報を生成した後は、レイアウト情報に基づいて簡易に単語又は単語群の項目分けが可能となる。
この構成によれば、制御サーバー制御部40は、単語又は単語群の項目分けが正常に行われてない場合に、そのことを検出できる。
この構成によれば、区切文字を利用して、的確に印刷テキストデータが有する情報を単語に分解できる。
上述した実施形態では、テキストデータ分析処理を制御サーバー15が行う構成であった。しかしながら、テキストデータ分析処理を実行する主体は、制御サーバー15に限らず、印刷装置12でもよい。この場合、印刷装置12が「情報処理装置」として機能し、処理を実行する印刷装置制御部30が「制御部」として機能する。
例えば、上述した制御サーバー15の制御方法(情報処理装置の制御方法)が、制御サーバー15が備えるコンピューター、又は、制御サーバー15に接続される外部装置を用いて実現される場合、本発明を、当該方法を実現するためにコンピューターが実行するプログラム、このプログラムをコンピューターで読み取り可能に記録した記録媒体、或いは、このプログラムを伝送する伝送媒体の態様で構成することも可能である。上記記録媒体としては、磁気的、光学的記録媒体又は半導体メモリーデバイスを用いることができる。具体的には、フレキシブルディスク、HDD(Hard Disk Drive)、CD−ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、Blu−ray(登録商標)Disc、光磁気ディスク、フラッシュメモリー、カード型記録媒体等の可搬型の、或いは固定式の記録媒体が挙げられる。また、上記記録媒体は、制御サーバー15や、制御サーバー15に接続された外部装置が備える内部記憶装置であるRAM(Random Access Memory)、ROM(Read Only Memory)、HDD等の不揮発性記憶装置でもよい。
また例えば、上述した実施形態では、会計に応じて、印刷装置12が印刷データに基づいて印刷テキストデータを生成した。しかしながら、制御サーバー15が、印刷装置12から印刷データを受信し、受信した印刷データに基づいて印刷テキストデータを生成する構成でもよい。
また例えば、上述した実施形態では、会計情報管理データベース422、及び、レイアウト情報管理データベース423が記憶する情報を具体的に例示して説明したが、これらデータベースが記憶する情報は例示した情報に限らない。
また例えば、上述した実施形態では、印刷装置12と、ホストコンピューターとして機能するタブレット端末13とは、無線通信する構成であった。しかしながら、印刷装置12とホストコンピューターとは、無線通信に限らず、有線LANに係る通信規格や、USB、USB以外のシリアル通信に係る通信規格、パラレル通信に係る規格に従って有線通信する構成でもよい。また、ホストコンピューターは、タブレット端末13のように、タブレット型の装置に限らず、例えば、据え置き型の装置でもよい。
また、図を用いて説明した各機能ブロックはハードウェアとソフトウェアにより任意に実現可能であり、特定のハードウェア構成を示唆するものではない。
Claims (9)
- 印刷装置が発行したレシートに印刷される情報のうち、文字として印刷されるテキストデータを処理する制御サーバーであって、
前記テキストデータは、前記レシートの印刷領域を分けるエリア分割情報を有し、改行が反映された状態で記述され、
前記テキストデータに含まれる情報を複数の単語に分解し、
前記テキストデータを行に分解し、前記行と前記行に属する前記単語との対応関係が記述された行データを生成し、
前記テキストデータについて、前記エリア分割情報によって区切られるエリアを特定し、前記エリアと前記エリアに属する前記単語との対応関係が記述されたエリアデータを生成し、
前記行データと前記エリアデータとに基づいて、前記単語、又は、複数の前記単語からなる単語群を項目分けする制御部を有する
ことを特徴とする制御サーバー。 - 前記テキストデータを送信する前記印刷装置と通信可能であり、
前記制御部は、
前記印刷装置から、前記テキストデータを受信する
ことを特徴とする請求項1に記載の制御サーバー。 - 前記制御部は、
前記単語の位置関係、及び、前記単語のデータ型に基づいて、前記単語又は前記単語群を項目分けする
ことを特徴とする請求項1又は2に記載の制御サーバー。 - 前記制御部は、
前記単語又は前記単語群の項目分けの結果に基づいて、項目が階層化され、各項目と、項目値としての前記単語又は前記単語群とが対応付けられた分析データを生成する
ことを特徴とする請求項1乃至3のいずれか1項に記載の制御サーバー。 - 前記テキストデータは、所定のレイアウトに従って印刷される情報が、前記所定のレイアウトに従って記述されたデータであり、
前記制御部は、
前記単語又は前記単語群の項目分けの結果に基づいて、前記テキストデータに対応する前記所定のレイアウトに関する情報であり、前記所定のレイアウトに係る前記テキストデータが有する前記単語又は前記単語群の項目分けに利用可能な情報であるレイアウト情報を生成する
ことを特徴とする請求項1乃至4のいずれか1項に記載の制御サーバー。 - 前記制御部は、
1の項目、及び、他の項目について、当該1の項目に対応する項目値と、当該他の項目に対応する項目値とが所定の関係であるときに、これら項目値の整合性がとれた状態である場合に、
前記単語又は前記単語群を項目分けした後、当該1 の項目に項目値として対応付けられた前記単語又は前記単語群と、当該他の項目に項目値として対応付けられた前記単語又は単語群との関係が前記所定の関係であるか否かを判別する
ことを特徴とする請求項1乃至5のいずれか1項に記載の制御サーバー。 - 前記制御部は、
所定の区切文字を区切りとして、前記単語の分解を行う
ことを特徴とする請求項1乃至6のいずれか1項に記載の制御サーバー。 - レシートを印刷する機能を有する印刷装置と、前記印刷装置と通信可能な制御サーバーとを有する情報処理システムであって、
前記印刷装置は、
発行した前記レシートに印刷される情報のうち、文字として印刷されるテキストデータを前記制御サーバーに送信し、
前記テキストデータは、前記レシートの印刷領域を分けるエリア分割情報を有し、改行が反映された状態で記述され、
前記制御サーバーは、
前記印刷装置から受信した前記テキストデータに含まれる情報を複数の単語に分解し、
前記テキストデータを行に分解し、前記行と前記行に属する前記単語との対応関係が記述された行データを生成し、
前記テキストデータについて、前記エリア分割情報によって区切られるエリアを特定し、前記エリアと前記エリアに属する前記単語との対応関係が記述されたエリアデータを生成し、
前記行データと前記エリアデータとに基づいて、前記単語、又は、複数の前記単語からなる単語群を項目分けする
ことを特徴とする情報処理システム。 - 印刷装置が発行したレシートに印刷される情報のうち、文字として印刷されるテキストデータを処理する制御サーバーの制御方法であって、
前記テキストデータは、前記レシートの印刷領域を分けるエリア分割情報を有し、改行が反映された状態で記述され、
前記テキストデータに含まれる情報を複数の単語に分解し、
前記テキストデータを行に分解し、前記行と前記行に属する前記単語との対応関係が記述された行データを生成し、
前記テキストデータについて、前記エリア分割情報によって区切られるエリアを特定し、前記エリアと前記エリアに属する前記単語との対応関係が記述されたエリアデータを生成し、
前記行データと前記エリアデータとに基づいて、前記単語、又は、複数の前記単語からなる単語群を項目分けする
ことを特徴とする制御サーバーの制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015256744A JP6657945B2 (ja) | 2015-12-28 | 2015-12-28 | 制御サーバー、情報処理システム、及び、制御サーバーの制御方法 |
US15/391,225 US20170185986A1 (en) | 2015-12-28 | 2016-12-27 | Information processing device, information processing system, and control method of an information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015256744A JP6657945B2 (ja) | 2015-12-28 | 2015-12-28 | 制御サーバー、情報処理システム、及び、制御サーバーの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017120521A JP2017120521A (ja) | 2017-07-06 |
JP6657945B2 true JP6657945B2 (ja) | 2020-03-04 |
Family
ID=59087112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015256744A Active JP6657945B2 (ja) | 2015-12-28 | 2015-12-28 | 制御サーバー、情報処理システム、及び、制御サーバーの制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20170185986A1 (ja) |
JP (1) | JP6657945B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7006096B2 (ja) * | 2017-09-29 | 2022-01-24 | セイコーエプソン株式会社 | 情報処理装置、及び、情報処理装置の制御方法 |
JP7059586B2 (ja) * | 2017-11-24 | 2022-04-26 | セイコーエプソン株式会社 | 情報処理装置、情報処理装置の制御方法、及び、プログラム |
JP2020042582A (ja) * | 2018-09-11 | 2020-03-19 | セイコーエプソン株式会社 | 情報処理装置、情報処理装置の制御方法、及び、プログラム |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5907835A (en) * | 1994-11-18 | 1999-05-25 | Canon Kabushiki Kaisha | Electronic filing system using different application program for processing drawing commands for printing |
EP1587039A3 (en) * | 2004-04-08 | 2006-08-09 | Seiko Epson Corporation | Printing system, POS system, connection device, and control method for a printing system |
JP4955197B2 (ja) * | 2004-09-07 | 2012-06-20 | 株式会社日本医療データセンター | レセプトファイル生成システム |
US20090313101A1 (en) * | 2008-06-13 | 2009-12-17 | Microsoft Corporation | Processing receipt received in set of communications |
US20110087535A1 (en) * | 2009-10-14 | 2011-04-14 | Seiko Epson Corporation | Information processing device, information processing system, control method for an information processing device, and a program |
US8548859B2 (en) * | 2010-01-22 | 2013-10-01 | Spendgo, Inc. | Point of sale network router |
JP2012027633A (ja) * | 2010-07-22 | 2012-02-09 | Seiko Epson Corp | デバイスドライバー、情報処理システム、デバイスドライバーの制御方法およびプログラム |
JP5712562B2 (ja) * | 2010-10-29 | 2015-05-07 | セイコーエプソン株式会社 | コンテンツ出力システム、コンテンツサーバー、および、コンテンツ出力方法 |
US20120284081A1 (en) * | 2011-05-02 | 2012-11-08 | Fang Cheng | Methods and Apparatus for Gathering Intelligence from Itemized Receipts |
WO2012167361A1 (en) * | 2011-06-10 | 2012-12-13 | Jeffrey Laporte | System and method for augmentation of retail pos data streams with transaction information |
US20120330971A1 (en) * | 2011-06-26 | 2012-12-27 | Itemize Llc | Itemized receipt extraction using machine learning |
US8949110B2 (en) * | 2011-09-23 | 2015-02-03 | Ancestry.Com Operations Inc. | System and method for extracting categories of data |
JP5744953B2 (ja) * | 2013-04-10 | 2015-07-08 | 東芝テック株式会社 | 取引データ処理装置、取引データ処理方法及びプログラム |
JP6424438B2 (ja) * | 2014-02-24 | 2018-11-21 | セイコーエプソン株式会社 | Posシステム、及びデータ処理装置 |
US20170083785A1 (en) * | 2014-05-16 | 2017-03-23 | AppCard, Inc. | Method and system for improved optical character recognition |
-
2015
- 2015-12-28 JP JP2015256744A patent/JP6657945B2/ja active Active
-
2016
- 2016-12-27 US US15/391,225 patent/US20170185986A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20170185986A1 (en) | 2017-06-29 |
JP2017120521A (ja) | 2017-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6759817B2 (ja) | 情報処理装置、情報処理装置の制御方法、及び、制御プログラム | |
EP3489816B1 (en) | Information processing device, control method of information processing device, and storage medium | |
JP2017058745A (ja) | 免税処理システム、管理サーバ及び精算装置 | |
JP6416720B2 (ja) | 免税処理システム、情報処理装置及びそのプログラム | |
JP6657945B2 (ja) | 制御サーバー、情報処理システム、及び、制御サーバーの制御方法 | |
JP2016057781A (ja) | 商品販売データ処理装置およびプログラム | |
JP6379960B2 (ja) | 情報処理装置、会計システム、及び、記録装置 | |
JP6949596B2 (ja) | 商品データ処理装置及び商品データ処理プログラム | |
JP2018147230A (ja) | 免税処理装置およびプログラム | |
JP6766503B2 (ja) | 情報処理装置、情報処理装置の制御方法、及び、制御プログラム | |
EP3623931A1 (en) | Information processing apparatus, control method for information processing apparatus, and storage medium storing program for information processing apparatus | |
JP6772636B2 (ja) | 情報処理装置、情報処理装置の制御方法、及び、制御プログラム | |
JP6756102B2 (ja) | 情報処理装置、情報処理装置の情報処理方法、及び、情報処理システム | |
JP7006096B2 (ja) | 情報処理装置、及び、情報処理装置の制御方法 | |
EP3660655A1 (en) | Printer and control method thereof | |
JP6806761B2 (ja) | 免税処理システム、情報処理装置及びそのプログラム | |
JP7205178B2 (ja) | 情報処理装置、及び、情報処理装置の制御方法 | |
JP7183718B2 (ja) | 印刷装置、及び、情報処理システム | |
JP6452582B2 (ja) | 免税処理システム、情報処理装置及びそのプログラム | |
JP7072627B2 (ja) | 免税処理システム、情報処理装置及びそのプログラム | |
JP7234445B2 (ja) | 免税処理システム及びそのプログラム | |
JP7092906B2 (ja) | 免税処理システム | |
JP2023105224A (ja) | 商品販売データ処理装置、商品販売データ処理方法およびプログラム | |
JP2019067040A (ja) | 情報処理装置、及び、情報処理装置の制御方法 | |
JP2022132589A (ja) | 免税処理システム、情報処理装置及びそのプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191009 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191029 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191225 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200107 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200120 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6657945 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |