JP6186846B2 - 制御装置、制御システム、および制御装置の制御方法 - Google Patents

制御装置、制御システム、および制御装置の制御方法 Download PDF

Info

Publication number
JP6186846B2
JP6186846B2 JP2013093706A JP2013093706A JP6186846B2 JP 6186846 B2 JP6186846 B2 JP 6186846B2 JP 2013093706 A JP2013093706 A JP 2013093706A JP 2013093706 A JP2013093706 A JP 2013093706A JP 6186846 B2 JP6186846 B2 JP 6186846B2
Authority
JP
Japan
Prior art keywords
coupon
control
command
receipt
issue
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.)
Expired - Fee Related
Application number
JP2013093706A
Other languages
English (en)
Other versions
JP2014215866A5 (ja
JP2014215866A (ja
Inventor
明男 高本
明男 高本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2013093706A priority Critical patent/JP6186846B2/ja
Priority to KR1020140049865A priority patent/KR101571970B1/ko
Priority to CN201410171660.6A priority patent/CN104118225B/zh
Priority to EP20140166055 priority patent/EP2796986A1/en
Priority to US14/263,522 priority patent/US9898691B2/en
Publication of JP2014215866A publication Critical patent/JP2014215866A/ja
Publication of JP2014215866A5 publication Critical patent/JP2014215866A5/ja
Application granted granted Critical
Publication of JP6186846B2 publication Critical patent/JP6186846B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Cash Registers Or Receiving Machines (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)

Description

本発明は、レシートを発行する印刷装置に接続された制御装置、当該制御装置とサーバー装置とを備える制御システム、当該制御装置の制御方法、および、当該制御装置の制御に係るプログラムに関する。
従来、レシート、および、クーポンを発行するシステムが知られている(例えば、特許文献1参照)。この種のシステムでは、顧客の会計に応じてレシートを発行した後、会計の内容に基づいてクーポンを発行し、レシートの内容と、クーポンの内容とに関連性を持たせたものがある。
特開2009−129029号公報
一般に、上述したシステムのようにクーポンを発行するものでは、クーポンの発行を管理するサーバー装置を備え、この管理サーバー装置の制御の下、クーポン発行用の印刷装置がクーポンを発行する構成となっている。この場合、サーバー装置に負荷が集中する可能性があるという課題があった。
本発明は、上述した事情に鑑みてなされたものであり、特定の機器に負荷が集中することを抑制することを目的とする。
上記目的を達成するために、本発明は、レシートを発行する印刷装置に接続された制御装置であって、前記印刷装置にレシートを発行させる制御コマンドを生成して出力する印刷制御部と、前記印刷制御部が生成したレシートに係る制御コマンドを解析して、レシートに係る制御コマンドに含まれる所定の情報を抽出し、抽出した情報に基づく送信データをサーバー装置に送信するコマンド解析部と、前記送信データの送信後、前記サーバー装置から、クーポンの発行を指示する指示データを受信した場合、前記印刷装置にクーポンを発行させる制御コマンドを生成して出力するクーポン発行制御部と、を備えることを特徴とする。
この構成によれば、サーバー装置が印刷装置を制御して、印刷装置にクーポンを発行させるのではなく、制御装置が、サーバー装置からの指示データに基づいて、印刷装置にクーポンを発行させる。このため、例えば、サーバー装置が複数の印刷装置に同時期にクーポンを発行させるといった事態が発生することがなくなり、サーバー装置に負荷が集中することが抑制される。また、サーバー装置から受信する指示データは、レシートに係る制御コマンドから抽出した情報に基づいて生成されるものであるため、レシートの内容を踏まえた適切なクーポンの発行が可能となる。
また、本発明は、クーポンを発行するクーポン発行用印刷装置がさらに接続され、前記クーポン発行制御部は、前記サーバー装置から、前記指示データを受信した場合、前記クーポン発行用印刷装置にクーポンを発行させる制御コマンドを生成して出力することを特徴とする。
この構成によれば、印刷装置によるレシートの発行に影響を与えることなく、クーポン発行用印刷装置にクーポンを発行させることが可能となる。
また、本発明は、クーポンに印刷する画像の画像データを識別情報と対応付けて記憶し、前記指示データには、発行すべきクーポンの画像データに対応付けられた識別情報が含まれており、前記クーポン発行制御部は、前記サーバー装置から、前記指示データを受信した場合、前記指示データに含まれる識別情報に対応付けられた画像データに基づいてクーポンに係る制御コマンドを生成して出力することを特徴とする。
この構成によれば、サーバー装置から、制御装置に対して送信される指示データのサイズを小さくでき、通信トラフィックの増大の抑制、通信効率の向上を図ることができる。
また、本発明は、前記コマンド解析部は、レシートに係る制御コマンドから、購入商品に関する情報と会計に関する情報のうち少なくとも一方を抽出し、抽出した情報に基づく前記送信データを前記サーバー装置に送信することを特徴とする。
この構成によれば、サーバー装置は、購入商品に関する情報、または、会計に関する情報に基づいて、購入商品に対応して、または、会計に対応して適切に指示データを生成することが可能となる。
また、上記目的を達成するために、本発明は、レシートを発行する印刷装置に接続された制御装置と、前記制御装置に接続されたサーバー装置とを備える制御システムであって、前記制御装置は、前記印刷装置にレシートを発行させる制御コマンドを生成して出力する印刷制御部と、前記印刷制御部が生成したレシートに係る制御コマンドを解析して、レシートに係る制御コマンドに含まれる所定の情報を抽出し、抽出した情報に基づく送信データを前記サーバー装置に送信するコマンド解析部と、を備え、前記サーバー装置は、受信した前記送信データに基づいて、クーポンを発行すべきか否か判別し、発行すべき場合、クーポンの発行を指示する指示データを生成して、前記制御装置に送信し、前記制御装置は、前記サーバー装置から、前記指示データを受信した場合、前記印刷装置にクーポンを発行させる制御コマンドを生成して出力するクーポン発行制御部を備えることを特徴とする。
この構成によれば、サーバー装置が印刷装置を制御して、印刷装置にクーポンを発行させるのではなく、制御装置が、サーバー装置からの指示データに基づいて、印刷装置にクーポンを発行させる。このため、例えば、サーバー装置が複数の印刷装置に同時期にクーポンを発行させるといった事態が発生することがなくなり、サーバー装置に負荷が集中することが抑制される。また、サーバー装置から受信する指示データは、レシートに係る制御コマンドから抽出した情報に基づいて生成されるものであるため、レシートの内容を踏まえた適切なクーポンの発行が可能となる。
また、本発明は、前記制御装置の前記コマンド解析部は、レシートに係る制御コマンドから、購入商品に関する情報と会計に関する情報のうち少なくとも一方を抽出し、抽出した情報に基づく前記送信データを前記サーバー装置に送信し、前記サーバー装置は、受信した前記送信データに基づいて、クーポンを発行すべきか否かを判別することを特徴とする。
この構成によれば、サーバー装置は、購入商品に関する情報、または、会計に関する情報に基づいて、購入商品に対応して、または、会計に対応して適切に指示データを生成することが可能となる。
また、上記目的を達成するために、本発明は、レシートを発行する印刷装置に接続された制御装置の制御方法であって、前記印刷装置にレシートを発行させる制御コマンドを生成して出力し、生成したレシートに係る制御コマンドを解析して、レシートに係る制御コマンドに含まれる所定の情報を抽出し、抽出した情報に基づく送信データをサーバー装置に送信し、前記送信データの送信後、前記サーバー装置から、クーポンの発行を指示する指示データを受信した場合、前記印刷装置にクーポンを発行させる制御コマンドを生成して出力することを特徴とする。
この制御方法によれば、サーバー装置が印刷装置を制御して、印刷装置にクーポンを発行させるのではなく、制御装置が、サーバー装置からの指示データに基づいて、印刷装置にクーポンを発行させる。このため、例えば、サーバー装置が複数の印刷装置に同時期にクーポンを発行させるといった事態が発生することがなくなり、サーバー装置に負荷が集中することが抑制される。また、サーバー装置から受信する指示データは、レシートに係る制御コマンドから抽出した情報に基づいて生成されるものであるため、レシートの内容を踏まえた適切なクーポンの発行が可能となる。
また、上記目的を達成するために、本発明は、レシートを発行する印刷装置に接続された制御装置を制御する制御部により実行されるプログラムであって、前記制御部を、前記印刷装置にレシートを発行させる制御コマンドを生成して出力する印刷制御部と、前記印刷制御部が生成したレシートに係る制御コマンドを解析して、レシートに係る制御コマンドに含まれる所定の情報を抽出し、抽出した情報に基づく送信データをサーバー装置に送信するコマンド解析部と、前記送信データの送信後、前記サーバー装置から、クーポンの発行を指示する指示データを受信した場合、前記印刷装置にクーポンを発行させる制御コマンドを生成して出力するクーポン発行制御部と、として機能させることを特徴とする。
このプログラムによれば、サーバー装置が印刷装置を制御して、印刷装置にクーポンを発行させるのではなく、制御装置が、サーバー装置からの指示データに基づいて、印刷装置にクーポンを発行させる。このため、例えば、サーバー装置が複数の印刷装置に同時期にクーポンを発行させるといった事態が発生することがなくなり、サーバー装置に負荷が集中することが抑制される。また、サーバー装置から受信する指示データは、レシートに係る制御コマンドから抽出した情報に基づいて生成されるものであるため、レシートの内容を踏まえた適切なクーポンの発行が可能となる。
本発明によれば、クーポンの発行に際し、特定の機器に負荷が集中することが抑制される。
制御システムの構成を示す図である。 制御システムを構成する各機器の機能的構成を示すブロック図である。 ホストコンピューターの機能ブロックをより詳細に示す図である。 コマンド整理部の機能の説明に利用する図である。 各サーバー装置に送信される各送信データを示す図である。 ホストコンピューター、クーポン管理サーバーの動作を示すフローチャートである。
以下、図面を参照して本発明の実施形態について説明する。
図1は、本実施形態に係る制御システム1の構成を示す図である。
制御システム1は、スーパーマーケットや、コンビニエンスストア等の店舗に適用され、店舗における商品の販売の状況や、売上の状況、在庫の状況等を管理するいわゆるPOSシステムである。制御システム1は、少なくとも、店舗に来店した顧客の会計に応じてレシートを発行する機能、および、レシートの発行に応じて適宜クーポンを発行する機能を有している。
制御システム1が適用される店舗では、複数のレジカウンターLが設けられている。レジカウンターLのそれぞれには、レシート発行用のプリンターであるレシートプリンター10(印刷装置)と、クーポンプリンター11(クーポン発行用印刷装置)と、これらプリンターを制御するホストコンピューター12(制御装置)とが設けられている。
レシートプリンター10は、例えば、サーマルプリンターであり、対応するホストコンピューター12の制御の下、感熱ロール紙の印刷面にサーマルヘッドによって熱を与えて画像を印刷した上で、所定の位置で感熱ロール紙を切断することにより、レシートを発行する。
また、クーポンプリンター11は、例えば、インクジェットプリンターであり、対応するホストコンピューター12の制御の下、ロール紙の印刷面にインクジェットヘッドによってインクを吐出して画像を印刷した上で、所定の位置でロール紙を切断することにより、クーポンを発行する。
各ホストコンピューター12には、LAN等のネットワークNを介して、POS管理サーバー14が接続されている。POS管理サーバー14は、商品マスターや、顧客マスター、在庫マスター等の各種データベースを記憶し、制御システム1を統括的に管理する。ホストコンピューター12は、レシートの発行に際し、適宜、POS管理サーバー14にアクセスして必要な情報を取得する。
また、図1に示すように、ネットワークNには、クーポン管理サーバー15(サーバー装置)、売上管理サーバー16(サーバー装置)、電子レシート管理サーバー17(サーバー装置)、および、顧客行動管理サーバー18(サーバー装置)が接続されている。これらサーバー装置については、後述する。
図2は、制御システム1を構成する各機器、特に、ホストコンピューター12、レシートプリンター10、クーポンプリンター11、および、クーポン管理サーバー15の機能的構成を模式的に示すブロック図である。
図2に示すように、ホストコンピューター12は、ホスト制御部20(制御部)と、ホスト入力部21と、ホスト表示部22と、ホスト記憶部23と、ネットワーク通信部24と、レシートプリンター通信部25と、クーポンプリンター通信部26と、を備えている。
ホスト制御部20は、CPUや、ROM、RAM、その他の周辺回路等を備え、ホストコンピューター12の各部を制御する。ホスト制御部20は、機能ブロックとして、印刷制御部20aと、コマンド解析部20bと、クーポン発行制御部20cと、を備えているが、これらについては後述する。ホスト入力部21は、マウスや、キーボード等の入力デバイスに接続され、入力デバイスに対する入力を検出し、ホスト制御部20に出力する。ホスト表示部22は、液晶表示パネル等の表示パネルに接続され、ホスト制御部20の制御の下、各種データを表示パネルに表示する。ホスト記憶部23は、ハードディスクやEEPROM等のメモリーを備え、各種データを不揮発的に書き換え可能に記憶する。ホスト記憶部23には、クーポン画像データベース23aが記憶されているが、これについては後述する。ネットワーク通信部24は、ホスト制御部20の制御の下、所定の通信規格に準拠して、ネットワークNを介して、ネットワークN上の外部機器と通信する。レシートプリンター通信部25は、ホスト制御部20の制御の下、所定の通信規格に準拠して、レシートプリンター10と通信する。クーポンプリンター通信部26は、ホスト制御部20の制御の下、所定の通信規格に準拠して、クーポンプリンター11と通信する。
また、図2に示すように、レシートプリンター10は、レシートプリンター制御部30と、レシートプリンター印刷部31とを備えている。レシートプリンター制御部30は、CPU等を備え、レシートプリンター10の各部を制御する。レシートプリンター印刷部31は、記録媒体に画像を印刷する印刷ヘッド、記録媒体を搬送する搬送機構、記録媒体を切断する切断機構等を備えている。同様に、クーポンプリンター11は、クーポンプリンター制御部32と、クーポンプリンター印刷部33とを備えている。
図3は、ホストコンピューター12の機能的構成をより詳細に示す図である。図3では、説明の便宜のため、クーポン管理サーバー15の機能ブロックも表わしている。
図3では、説明の便宜のため、機能ブロックや、プログラム、記憶領域、物理的な装置等を、同等のブロックで表現している。
なお、以下で説明する機能ブロックのそれぞれの機能は、CPUがプログラムを読み出して実行する等、ハードウェアとソフトウェアとの協働により実現される。
ホスト制御部20が備える印刷制御部20aは、レシートプリンター10にレシートを発行させる制御コマンドを生成し、出力する機能を有する機能ブロックである。
詳述すると、ホストコンピューター12には、POSアプリケーション35、および、プリンタードライバー36がインストールされている。印刷制御部20aは、POSアプリケーション35の機能により、レシートに印刷すべき画像に関する情報を含んで構成された印刷データを生成し、プリンタードライバー36に出力する。印刷制御部20aは、プリンタードライバー36の機能により、印刷データに基づいて、レシートプリンター10にレシートの発行に係る各種処理を実行させる制御コマンドを生成し、ソフトウェア的な(論理的な)ポートとして開放されている論理ポートPに出力する。
次いで、印刷制御部20aは、PCS(Port Communication Service)37の機能により、論理ポートPに出力された制御コマンドに対して、所定の処理を施し、レシートプリンター通信部25に出力する。
PCS37とは、プリンタードライバー36から呼び出し可能な関数であり、印刷制御部20aと、レシートプリンター通信部25との間で各種データの入出力を行なう機能を有している。
PCS37は、プリンタードライバー36が出力するデータ(制御コマンドを含む)、および、プリンタードライバー36に入力されるデータについて、ホストコンピューター12と、レシートプリンター10との間のインターフェースの規格(RS232Cや、USB等の規格)に対応したデータ整形、データ変換を行なう。これにより、各種インターフェースの規格の際を吸収し、プリンタードライバー36に対するソフトウェア的な改変を行なうことなく、各種規格に係るインターフェースに準じた通信を行なうことを可能とする。レシートプリンター通信部25は、入力された制御コマンドを、所定の通信規格に準拠して、レシートプリンター10に送信する。レシートプリンター10は、受信した制御コマンドに基づいてレシートを発行する。
コマンド解析部20bは、プリンタードライバー36の機能によって生成されたレシートプリンター10にレシートを発行させる制御コマンドを解析して、後述する各種処理を実行する機能ブロックである。
このコマンド解析部20bの機能は、OPOSや、UPOSが提供するAPI関数を利用して作成されたプログラムによって実現される。このコマンド解析部20bに係るプログラムは、同じくOPOSや、UPOSの規格に準拠したプリンタードライバー36によって、適宜、呼び出し可能な構成となっている。
図3に示すように、コマンド解析部20bは、機能ブロックとして、コマンド整理部40と、送信データ生成部41と、データ送信部42と、を備えている。これら機能ブロックの機能は、CPUが、プログラムを読み出して実行する等、ハードウェアとソフトウェアとの協働により実現される。
まず、コマンド整理部40について説明する。
図4は、コマンド整理部40について説明するための図である。(A)は、レシートプリンター10によって発行されるレシートの一例を示す図である。(B)は、(A)が示すレシートの発行のために生成される制御コマンドの内容を示す図である。(C)は、(B)が示す制御コマンドについて、コマンド整理部40の機能によって整理した様子を説明に適した態様で模式的に示す図である。
図4(A)に示すように、レシートの先頭には、いわゆるトップロゴを示すトップロゴ画像R1が印刷される。このトップロゴ画像R1の下方には、レシートが発行された日時(日付+時刻)を示す発行日時画像R2が印刷される。発行日時画像R2に係る文字列(日時を示す文字列)は、右寄せで印刷される。
発行日時画像R2の下方には、購入商品関連画像R3が印刷される。購入商品関連画像R3は、顧客が購入した商品の名称、商品の単価、商品の購入数量、および、商品の購入金額(商品の単価×商品の購入数量によって算出される金額)を一覧表示する画像である。購入商品関連画像R3について詳述すると、当該画像において、ある1行における顧客が購入した商品の名称、商品の単価、商品の購入数量、および、商品の購入金額は、以下の規則に従って印刷される。すなわち、該当する行における1文字目を基点として、商品の名称が印刷される。さらに、T1(T1は、予め定められた正の整数。)文字目を基点として、商品の単価が印刷される。さらに、T2(T2は、予め定められた正の整数であり、T2>T1。)文字目を基点として、商品の購入数量が印刷される。さらに、T3(T3は、予め定められた性の整数であり、T3>T2。)文字目を基点として、商品の購入金額が印刷される。購入商品関連画像R3に係る1行の文字列は、左寄せで印刷される。
購入商品関連画像R3の下方には、購入商品の合計金額を示す合計金額画像R4が印刷される。合計金額画像R4に係る文字列は、左寄せで、かつ、太字で印刷される。合計金額画像R4の下方には、レシートの識別番号を表わすバーコードを示すバーコード画像R5が印刷される。このバーコード画像R5の下方には、顧客の会員番号を示す会員番号画像R6が印刷される。会員番号画像R6に係る文字列は、左寄せで印刷される。ここで、図示は省略したが、ホストコンピューター12には、顧客が所有する会員カードを読み取るカードリーダーが接続されている。そして、レジカウンターLにおける会計に際し、顧客が会員カードを呈示した場合、当該会員カードがカードリーダーによって読み取られる。そして、当該会員カードに記録された会員番号がホストコンピューター12の所定の記憶領域に記憶される。
会員番号画像R6の下方には、レシートの末端に定型的に記録される文字列を示す末端画像R7が印刷される。図4(A)の例では、会員番号画像R6に係る文字列は、「Thank△You」(△は、スペースを表わす。以下同じ。)である。この会員番号画像R6に係る文字列は、中央寄せで印刷される。
本実施形態においては、レシートのレイアウトは、基本的に、図4(A)に示すレシートのレイアウトに準じるものとなっている。すなわち、本実施形態に係るレシートには、先頭から後端へ向かって順番に、トップロゴ画像R1、発行日時画像R2、購入商品関連画像R3、合計金額画像R4、バーコード画像R5、会員番号画像R6、末端画像R7が印刷される。
なお、レシートのレイアウトは、説明の便宜を考慮して単純化しており、通常、税に関する情報や、おつりに関する情報等、上記で示した以外の情報に係る画像が印刷される。
一方、図4(B)に示すように、レシートに係る制御コマンドは、複数のコマンドを含んで構成されている。
図4(B)に示すように、レシートに係る制御コマンドには、トップロゴ印刷指示コマンドC1が含まれている。このトップロゴ印刷指示コマンドC1は、トップロゴ画像R1の印刷を指示するコマンドであり、グラフィック画像印刷指示コマンドGCを含んで構成されている。グラフィック画像印刷指示コマンドGCは、グラフィック画像の印刷を指示する命令コードと、印刷すべき画像の画像データと、を含んで構成されている。画像データとは、ビットマップデータ等の、画素ごとに、情報を例えば階調値として保持するデータのことである。本実施形態では、グラフィック画像印刷指示コマンドGCは、「XXX“画像データ”」(ただし、「XXX」は、画像データに基づく画像の印刷を指示する命令コード。)という構成となっている。トップロゴ印刷指示コマンドC1に係るグラフィック画像印刷指示コマンドGCは、「XXX“トップロゴ画像R1の画像データ”」という構成となっている。
レシートに係る制御コマンドにおいて、トップロゴ印刷指示コマンドC1の次には、発行日時印刷指示コマンドC2が記述されている。この発行日時印刷指示コマンドC2は、発行日時画像R2の印刷を指示するコマンドであり、文字列装飾コマンドSC、文字列印刷指示コマンドMC、および、改行コマンドLFを含んで構成されている。
文字列装飾コマンドSCとは、文字列印刷指示コマンドMCが指定する文字列の印刷に際し、施すべき装飾を指定するコマンドである。装飾とは、印刷する文字列に対して描画に関する何らかの処理を行うことを意味する。装飾としては、例えば、文字列の位置の移動(左寄せや、中央寄せ、右寄せ等)、文字列の拡大、縮小、回転、強調、太字化、装飾文字又は装飾記号の付加等がある。発行日時印刷指示コマンドC2に係る文字列装飾コマンドSCは、印刷する文字列について、右寄せの装飾を施すことを指示する。
文字列印刷指示コマンドMCは、文字列を指定すると共に、指定した文字列の印刷を指示するコマンドである。文字列印刷指示コマンドMCは、文字列の印刷を指示する命令コードと、文字列を指定するデータ部と、を含んで構成されている。データ部には、所定の文字コード(例えば、Unicodeや、アスキーコード)によって表現された文字の組み合わせが記述される。発行日時印刷指示コマンドC2に係る文字列印刷指示コマンドMCは、「YYY“2013/1/1/12:00”」(ただし、「YYY」は、文字列の記録を指示する命令コード。ダブルクォーテーション内は、データ部であり印刷すべき文字列が指定されている。)という構成となっている。なお、本実施形態では、レシートプリンター10によって記録可能とされている文字のそれぞれについて、各文字のフォントデータが事前にレシートプリンター10に登録されている。レシートプリンター10は、文字列印刷指示コマンドMCに基づいて、印刷すべき文字列を構成する各文字をフォントデータに変換し、変換したフォントデータに基づいて印刷を行う。
改行コマンドLFは、改行を指示するコマンドである。
レシートに係る制御コマンドにおいて、発行日時印刷指示コマンドC2の次には、明細印刷指示コマンドC3が記述されている。この明細印刷指示コマンドC3は、購入商品関連画像R3における購入商品ごとに(=行ごとに)存在する。
明細印刷指示コマンドC3は、左寄せの装飾を施すことを指示する文字列装飾コマンドSCと、商品の名称、商品の単価、購入数量、および、購入金額を表わす文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含んで構成されている。特に、文字列印刷指示コマンドMCのデータ部において、商品の名称を示す文字列と、商品の単価を示す文字列との間には、商品の単価を示す文字列がT1文字目から印刷されるように適切なスペースが記述される。同様に、データ部において、商品の単価を示す文字列と、購入数量を示す文字列との間には、購入数量を示す文字列がT2文字目から印刷されるように適切なスペースが記述される。同様に、データ部において、購入数量を示す文字列と、購入金額を示す文字列との間には、個入金額を示す文字列がT3文字目から印刷されるように適切なスペースが記述される。データ部の態様の一例を示すと、「“ItemA△△△△△800△△△2△△△△1600”」である。
レシートに係る制御コマンドにおいて、全ての明細印刷指示コマンドC3の次には、合計金額印刷指示コマンドC4が記述されている。この合計金額印刷指示コマンドC4は、太字化、および、左寄せの装飾を施すことを指示する文字列装飾コマンドSCと、「Total」という文字列、および、合計金額を示す文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含んで構成されている。
レシートに係る制御コマンドにおいて、合計金額印刷指示コマンドC4の次には、バーコード印刷指示コマンドC5が記述されている。このバーコード印刷指示コマンドC5は、コードを指定すると共に、指定したコードを示すバーコード画像R5を印刷することを指示するコマンドである。レシートプリンター10には、バーコード印刷指示コマンドC5が指定するコードに基づいて、バーコードの画像データを生成し、生成した画像データに基づいて、バーコード画像R5を印刷する機能が実装されている。
レシートに係る制御コマンドにおいて、バーコード印刷指示コマンドC5の次には、会員番号印刷指示コマンドC6が記述されている。この会員番号印刷指示コマンドC6は、左寄せの装飾を施すことを指示する文字列装飾コマンドSCと、「membership△NO.」という文字列、および、会員番号を示す文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含んで構成されている。
レシートに係る制御コマンドにおいて、会員番号印刷指示コマンドC6の次には、末端画像印刷指示コマンドC7が記述されている。この末端画像印刷指示コマンドC7は、中央寄せの装飾を施すことを指示する文字列装飾コマンドSCと、「Thank△You」という文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含んで構成されている。
レシートに係る制御コマンドにおいて、末端画像印刷指示コマンドC7の次には、切断指示コマンドSSが記述されている。この切断指示コマンドSSは、ロール紙の切断を指示するコマンドである。レシートの発行を指示する制御コマンドにおいて、この切断指示コマンドSSが必ず最後のコマンドとなる。
プリンタードライバー36の機能によって生成される制御コマンドは、順次、RAMに形成されたワークエリアWAの所定の記憶領域に記憶される。そして、コマンド整理部40は、制御コマンドのワークエリアWAへの記憶中、コマンド整理部40は、切断指示コマンドSSがワークエリアWAに記憶された否かを監視し、記憶されたことをトリガーとして以下の処理を実行する。なお、ワークエリアWAに切断指示コマンドSSが記憶されたということは、レシートに係る制御コマンドを構成するコマンドの全てが、ワークエリアWAに記憶されたということである。
すなわち、コマンド整理部40は、制御コマンドを解析して、制御コマンドを構成するコマンドを、文字列の印刷に係るコマンド、グラフィック画像の印刷に係るコマンド、および、バーコードの印刷に係るコマンドに振り分ける。そして、コマンド整理部40は、図4(C)に示すように、振り分けたコマンドをワークエリアWAにおける別の領域に記憶する。図4(C)では、記憶領域A1は、グラフィック画像の印刷に係るコマンドが格納される領域であり、トップロゴ印刷指示コマンドC1が格納される。また、記憶領域A2は、文字列の印刷に係るコマンドが格納される領域であり、発行日時印刷指示コマンドC2、明細印刷指示コマンドC3の全て、合計金額印刷指示コマンドC4、会員番号印刷指示コマンドC6、および、末端画像印刷指示コマンドC7が格納される。各コマンドは、制御コマンドにおける順番と同様の順番で記憶領域A2に格納される。また、記憶領域A3は、バーコードの印刷に係るコマンドが格納される領域であり、バーコード印刷指示コマンドC5が格納される。
このように、コマンド整理部40は、全ての制御コマンドがワークエリアWAに格納されたことを検出すると共に、制御コマンドに含まれる各コマンドを種類に応じて振り分け、別々の記憶領域に格納する。
次に、送信データ生成部41について説明する。
送信データ生成部41は、第1送信データ生成部41a、第2送信データ生成部41b、第3送信データ生成部41c、および、第4送信データ生成部41dを備えている。
第1送信データ生成部41aは、クーポン管理サーバー15に送信する第1送信データD1を生成する機能ブロックである。以下、第1送信データ生成部41aについて詳述する。
図5(A)は、第1送信データD1を、説明に適した態様で模式的に示す図である。本実施形態では、第1送信データD1は、XML等のマークアップ言語で記述されたデータである。第1送信データD1には、購入商品ごとに、商品の名称、単価、購入数量、および、購入金額を示す情報(購入商品に関する情報)が含まれている。また、第1送信データD1には、合計金額を示す情報(会計に関する情報)、および、会員番号を示す情報が含まれている。
第1送信データ生成部41aは、第1送信データD1を以下のようにして生成する。すなわち、購入商品関連画像R3では、行ごとに、商品の名称、単価、購入数量、および、購入金額が印刷されるが、各行の印刷を指示する明細印刷指示コマンドC3には、以下の特徴がある。1つ目の特徴は、1行目の印刷を指示する明細印刷指示コマンドC3は、発行日時印刷指示コマンドC2の次に記述されている、という特徴である。2つ目の特徴は、最後の行の印刷を指示する明細印刷指示コマンドC3は、合計金額印刷指示コマンドC4の前に記述されている、という特徴である。3つ目の特徴は、明細印刷指示コマンドC3に係る文字列装飾コマンドSCは、左寄せの装飾を指示している、という特徴である。これら特徴を利用して、第1送信データ生成部41aは、記憶領域A2に記憶されたコマンドの中から、明細印刷指示コマンドC3の全てを抽出する。
詳述すると、まず、第1送信データ生成部41aは、記憶領域A2に格納されたコマンドの中から、発行日時印刷指示コマンドC2を特定する。例えば、第1送信データ生成部41aは、発行日時印刷指示コマンドC2が記憶領域A2に格納されたコマンドのうち最初のコマンドであることを利用して、上記特定を行なう。また例えば、第1送信データ生成部41aは、発行日時印刷指示コマンドC2に係る文字列装飾コマンドSCが、右寄せの装飾を施すことを指定するコマンドであることを利用して、発行日時印刷指示コマンドC2に係る文字列装飾コマンドSCを特定し、これにより、上記特定を行なう。また例えば、第1送信データ生成部41aは、発行日時印刷指示コマンドC2に係る文字列印刷指示コマンドMCが指定する文字列が、「※/※/※/※」(※は、ワイルドカードを示す。)を含むことを利用して、文字列検索により、発行日時印刷指示コマンドC2に係る文字列印刷指示コマンドMCを特定し、これにより、上記特定を行う。
次いで、第1送信データ生成部41aは、記憶領域A2に格納されたコマンドの中から、合計金額印刷指示コマンドC4を特定する。例えば、第1送信データ生成部41aは、合計金額印刷指示コマンドC4に係る文字列装飾コマンドSCが、太字化、および、左寄せの装飾を施すことを指定することを利用して、合計金額印刷指示コマンドC4に係る文字列装飾コマンドSCを特定し、これにより、上記特定を行なう。このほか、合計金額印刷指示コマンドC4に係る文字列印刷指示コマンドMCが指定する文字列が、「Total」を含むことを利用して、文字列検索により、合計金額印刷指示コマンドC4に係る文字列印刷指示コマンドMCを特定し、これにより、上記特定を行なってもよい。
以上により、記憶領域A2における発行日時印刷指示コマンドC2、および、合計金額印刷指示コマンドC4を特定した後、第1送信データ生成部41aは、これらコマンドの間に格納された明細印刷指示コマンドC3の全てを特定し、抽出する。その際、明細印刷指示コマンドC3に係る文字列装飾コマンドSCは、左寄せの装飾を施すことを指示していることを利用して、より的確に、明細印刷指示コマンドC3を抽出してもよい。
次に、第1送信データ生成部41aは、明細印刷指示コマンドC3のそれぞれに基づいて、購入商品ごとに、商品の名称、単価、購入数量、および、購入金額を示す情報を取得する。
1の明細印刷指示コマンドC3に基づいて、商品の名称、単価、購入数量、および、購入金額を示す情報を取得する場合を例にして説明する。上述したように、明細印刷指示コマンドC3に係る文字列印刷指示コマンドMCのデータ部では、1文字目を基点として商品の名称が記述され、T1文字目を基点として単価が記述され、T2文字目を基点として購入数量が記述され、T3も締めを基点として購入金額が記述されている。これを利用して、第1送信データ生成部41aは、データ部において、1文字目を基点として記述された一連の文字列を、商品の名称として取得する。同様に、第1送信データ生成部41aは、データ部において、T1文字目を基点として記述された一連の文字列を、単価として取得する。同様に、第1送信データ生成部41aは、データ部において、T2文字目を基点として記述された一連の文字列を、購入数量として取得する 。同様に、第1送信データ生成部41aは、データ部において、T3文字目を基点として記述された一連の文字列を、購入金額として取得する。
さらに、第1送信データ生成部41aは、記憶領域A2に格納されたコマンドの中から、上述した手法により、合計金額印刷指示コマンドC4を特定し、特定したコマンドに基づいて合計金額を取得する。ここで、合計金額印刷指示コマンドC4に係る文字列印刷指示コマンドMCのデータ部では、「Total」という文字列の後に、スペースを介して、数字からなる合計金額が記述されている。これを踏まえ、第1送信データ生成部41aは、合計金額印刷指示コマンドC4に係る文字列印刷指示コマンドMCのデータ部において、文字列「Total」の後に、スペースを介して記述された数字からなる文字列を合計金額として、取得する。
さらに、第1送信データ生成部41aは、記憶領域A2に格納されたコマンドの中から、会員番号印刷指示コマンドC6を特定し、特定したコマンドに基づいて会員番号を取得する。ここで、記憶領域A2において、会員番号印刷指示コマンドC6は、末端画像印刷指示コマンドC7の前に格納されている。これを踏まえ、例えば、第1送信データ生成部41aは、末端画像印刷指示コマンドC7を特定した上で、当該コマンドの前に格納されているコマンドを会員番号印刷指示コマンドC6として特定する。なお、末端画像印刷指示コマンドC7の特定は、記憶領域A2に格納されたコマンドのうち、最後のコマンドであることや、「Thank△You」という文字列の印刷を指示する文字列印刷指示コマンドMCが含まれていることを利用して行なわれる。
また例えば、第1送信データ生成部41aは、会員番号印刷指示コマンドC6に係る文字列印刷指示コマンドMCが指定する文字列が、「membership△NO.」を含むことを利用して、文字列検索により、会員番号印刷指示コマンドC6に係る文字列印刷指示コマンドMCを特定し、これにより、会員番号印刷指示コマンドC6を特定する。
会員番号印刷指示コマンドC6を特定した後、第1送信データ生成部41aは、以下のようにして、会員番号を取得する。すなわち、会員番号印刷指示コマンドC6に係る文字列印刷指示コマンドMCのデータ部では、「membership△NO.」という文字列の後に、スペースを介して、会員番号を示す文字列が記述されている。これを踏まえ、第1送信データ生成部41aは、会員番号印刷指示コマンドC6に係る文字列印刷指示コマンドMCのデータ部において、文字列「membership△NO.」の後に、スペースを介して記述された文字列を会員番号として、取得する。
以上のようにして、購入商品ごとに、商品の名称、単価、購入数量、および、購入金額を示す情報を取得すると共に、合計金額、および、会員番号を取得した後、第1送信データ生成部41aは、取得した情報に基づいて、第1送信データD1(図5(A))を生成する。上述したように、本実施形態では、第1送信データD1は、マークアップ言語で記述されたデータである。例えば、第1送信データD1は、所定のプログラム上に定義された変数に、各情報が格納された上で、当該プログラムが実行されることにより、生成される。また例えば、第1送信データD1は、予め、第1送信データD1のフォーマットを示すスタイルシートが用意され、当該スタイルシートの適切な箇所に適切な情報が記述されることにより生成される。
上述したように、第1送信データD1は、クーポン管理サーバー15に送信されるデータである。第1送信データD1がクーポン管理サーバー15に送信された後の、当該サーバー、および、ホストコンピューター12の動作については後に詳述する。
次に、第2送信データ生成部41bについて説明する。
第2送信データ生成部41bは、売上管理サーバー16に送信する第2送信データD2を生成する機能ブロックである。
図5(B)は、第2送信データD2を、説明に適した態様で模式的に示す図である。第2送信データD2は、XML等のマークアップ言語で記述されたデータである。
図5(B)に示すように、第2送信データD2には、レシートの発行日時を示す情報、商品ごとに、商品の名称、単価、購入数量、および、購入金額を示す情報、および、合計金額を示す情報が含まれている。
第2送信データ生成部41bは、商品の名称、単価、購入数量、および、購入金額を示す情報、および、合計金額を示す情報を、上述した手法により取得する。また、第2送信データ生成部41bは、上述した手法により、記憶領域A2において、発行日時印刷指示コマンドC2を特定し、当該コマンドのデータ部から発行日時を示す文字列を抽出することにより、レシートの発行日時を示す情報を取得する。第2送信データ生成部41bは、取得したレシートの発行日時を示す情報、商品ごとの、商品の名称、単価、購入数量、および、購入金額を示す情報、および、合計金額を示す情報に基づいて、第2送信データD2を生成する。
次に、第3送信データ生成部41cについて説明する。
第3送信データ生成部41cは、電子レシート管理サーバー17に送信する第3送信データD3を生成する機能ブロックである。以下、第3送信データ生成部41cについて詳述する。
図5(C)は、第3送信データD3を、説明に適した態様で模式的に示す図である。第3送信データD3は、XML等のマークアップ言語で記述されたデータである。
図5(C)に示すように、第3送信データD3には、レシートの画像データ、レシートに印刷されるトップロゴの画像データ、および、レシートの識別コードが含まれている。レシートの識別コードとは、レシートに印刷されるバーコードが示すコードである。
第3送信データ生成部41cは、ワークエリアWAの所定の記憶領域に記憶されている制御コマンドに基づいて、レシートに印刷される画像(例えば、図4(A)に例示した画像)の画像データ(以下、「レシート画像データ」という。)を生成する。第3送信データ生成部41cの機能を実現するプログラムには、レシートに制御コマンドに基づいて、レシート画像データを生成する機能が実装されている。さらに、第3送信データ生成部41cは、記憶領域A1に格納されているトップロゴ印刷指示コマンドC1を取得し、当該コマンドに含まれるトップロゴ画像R1の画像データ(以下、「トップロゴ画像データ」という。)を取得する。さらに、第3送信データ生成部41cは、記憶領域A3に格納されているバーコード印刷指示コマンドC5を取得し、当該コマンドにおいて指定されたコード(=レシートの識別コード)を取得する。
以上のようにして、レシート画像データを生成すると共に、トップロゴ画像データ、および、レシートの識別コードを取得した後、第3送信データ生成部41cは、これら情報を含む第3送信データD3を生成する。
次に、第4送信データ生成部41dについて説明する。
第4送信データ生成部41dは、顧客行動管理サーバー18に送信する第4送信データD4を生成する機能ブロックである。以下、第4送信データ生成部41dについて詳述する。
図5(D)は、第4送信データD4を、説明に適した態様で模式的に示す図である。第4送信データD4は、XML等のマークアップ言語で記述されたデータである。
図5(D)に示すように、第4送信データD4には、レシートの発行日時を示す情報、商品ごとの、商品の名称、単価、購入数量、および、購入金額を示す情報、合計金額を示す情報、および、会員番号を示す情報が含まれている。第4送信データ生成部41dは、これら情報を上述した手法により取得すると共に、取得した情報に基づいて第4送信データD4を生成する。
次に、データ送信部42について説明する。
データ送信部42は、ネットワーク通信部24を制御して、第1送信データD1をクーポン管理サーバー15に、第2送信データD2を売上管理サーバー16に、第3送信データD3を電子レシート管理サーバー17に、第4送信データD4を顧客行動管理サーバー18に送信する。
以下、各サーバーが、受信したデータをどのように利用するかについて、例を挙げて説明する。
第1送信データD1がクーポン管理サーバー15に送信された後におけるクーポン管理サーバー15、および、ホストコンピューター12の動作については後述する。
売上管理サーバー16は、店舗における売上の状況を管理するサーバーである。
売上管理サーバー16に送信される第2送信データD2(図5(B)参照。)には、レシートの発行日時を示す情報と、購入商品のそれぞれについて、名称、単価、購入数量、購入金額を示す情報と、合計金額を示す情報が含まれている。
売上管理サーバー16は、受信した第2送信データD2を累積的に記憶する。そして、売上管理サーバー16は、特定の期間における売上の総計についての問い合わせや、特定の期間における特定の商品の購入数量の総計の問い合わせ、特定の期間における合計金額の平均についての問い合わせ等を受け付けるユーザーインターフェースを提供する。そして、当該ユーザーインターフェースを介して、問い合わせがあった場合、売上管理サーバー16は、適切な第2送信データD2を抽出し、抽出した第2送信データD2の内容に基づいて、問い合わせに対する解答を算出し、問い合わせに対して応答する。
例えば、上記ユーザーインターフェースを介して、特定の期間における売上の総計についての問い合わせがあったとする。この場合、売上管理サーバー16は、累積的に記憶した第2送信データD2の中から、発行日時が、特定の期間に属する第2送信データD2を抽出する。そして、売上管理サーバー16は、抽出した第2送信データD2のそれぞれの合計金額の総計を算出し、算出した総計を解答として問い合わせに対して応答する。
電子レシート管理サーバー17は、レシートを電子的に管理するサーバーである。
電子レシート管理サーバー17は、受信した第3送信データD3を累積的に記憶する。電子レシート管理サーバー17は、例えば、レシートの識別コードの入力、および、レシートの再発行を指示するためのユーザーインターフェースを提供する。そして、当該ユーザーインターフェースを介して、レシートの識別コードの入力、および、レシートの再発行の指示があった場合、電子レシート管理サーバー17は、累積的に記憶した第3送信データD3の中から、入力された識別コードが記述された第3送信データD3を検索する。そして、電子レシート管理サーバー17は、検索した第3送信データD3に含まれるレシート画像データに基づいて、所定の印刷装置にレシートを発行させる。
また例えば、電子レシート管理サーバー17は、レシートの識別コードとメールアドレスとの入力、および、入力したメールアドレスへのレシート画像データの送信を指示するためのユーザーインターフェースを提供する。そして、当該ユーザーインターフェースを介して、レシートの識別コード、メールアドレスの入力、および、レシート画像データの送信の指示があった場合、電子レシート管理サーバー17は、レシートの識別コードに対応するレシート画像データを検索し、メーラーを制御して、入力されたメールアドレスに対して、所定の態様でレシート画像データを送信する。なお、第3送信データD3に会員番号を含める構成とし、さらに、電子レシート管理サーバー17は、会員番号ごとに、メールアドレスを対応づけて記憶し、第3送信データD3を受信した場合、対応するメールアドレスにレシート画像データをシステマティックに送信する構成であってもよい。
また、第3送信データD3には、トップロゴ画像データが含まれているため、電子レシート管理サーバー17は、特定の識別コードのレシートについて、トップロゴのみを表示したり、また、トップロゴ画像データを送信したりすることが可能である。
顧客行動管理サーバー18は、顧客の購買行動を管理するサーバーである。
顧客行動管理サーバー18は、例えば、受信した第4送信データD4について、会員番号ごとに(=会員ごとに)、累積的に記憶する。そして、顧客行動管理サーバー18は、会員ごとの第4送信データD4に基づいて、例えば、会員ごとの合計金額の平均を算出したり、会員ごとに購入商品を管理したりする。
顧客行動管理サーバー18は、会員ごとに累積的に記憶した第4送信データD4に基づいて、所定のデータマイニングの手法、統計学的手法に基づいて、購買行動の分析を行なう構成であってもよい。
次に、第1送信データD1がクーポン管理サーバー15に送信された後の、クーポン管理サーバー15、および、ホストコンピューター12の動作について説明する。
まず、クーポン管理サーバー15の機能的構成について、図3を用いて説明する。図3に示すように、クーポン管理サーバー15は、サーバー制御部50と、サーバー記憶部51と、インターフェース部52と、を備えている。サーバー制御部50は、CPU等を備え、クーポン管理サーバー15の各部を制御する。サーバー記憶部51は、データを不揮発的に書き換え可能に記憶する。このサーバー記憶部51には、条件データベース51aが記憶されているが、これについては後述する。インターフェース部52は、サーバー制御部50の制御の下、ネットワークN上の外部機器と所定の通信規格に準拠して通信する。
図6は、ホストコンピューター12、および、クーポン管理サーバー15の動作を示すフローチャートであり、(A)はクーポン管理サーバー15の動作を、(B)はホストコンピューター12の動作を、それぞれ示している。
上述したように、ホストコンピューター12のデータ送信部42は、第1送信データ生成部41aが生成した第1送信データD1をクーポン管理サーバー15に送信する(ステップSA1)。
クーポン管理サーバー15のサーバー制御部50は、第1送信データD1を受信すると(ステップSB1)、条件データベース51aを参照し(ステップSB2)、第1送信データD1に基づいて、クーポンを発行すべきか否かを判別する(ステップSB3)。
詳述すると、サーバー記憶部51に記憶された条件データベース51aには、クーポンを発行すると判別するための条件と、条件が成立した場合に発行するクーポンのクーポン識別情報(後述)とが対応付けて記憶されている。条件は、複数存在してもよい。
条件は、例えば、以下のようなものである。すなわち、第1送信データD1には、購入商品の商品名を示す情報が含まれている。これを踏まえ、所定の商品名の商品が購入されていること、が条件の一例である。また、購入商品ごとに購入数量を取得することができるため、所定の商品名の商品を、所定の個数以上購入したこと、を条件としてもよい。
また、第1送信データD1には、合計金額を示す情報が含まれている。これを踏まえ、合計金額が予め定められた所定の金額を上回ったこと、が条件の一例である。
また、第1送信データD1には、会員番号を示す情報が含まれている。これを踏まえ、会員番号が所定の会員番号であること、が条件の一例である。
なお、条件は、時間帯や、会員によって動的に変更する構成であってもよい。すなわち、条件とは、第1送信データD1に含まれる情報に基づいて、その成否が決定するものであれば、どのようなものであってもよい。
ステップSB3において、サーバー制御部50は、条件データベース51aにおいて管理されている条件のそれぞれについて、成立するか否かを判別し、成立したものが1つでも存在すれば、クーポンを発行すると判別し、一方、成立したものが1つも無ければ、クーポンを発行しないと判別する。
ステップSB3においてクーポンを発行しないと判別した場合(ステップSB4:NO)、サーバー制御部50は、クーポンを発行しない旨を示すデータをホストコンピューター12に送信する(ステップSB5)。ホストコンピューター12のクーポン発行制御部20cは、上記データを受信した場合、クーポンの発行に係る処理を実行せず、クーポンの発行を行なわない。
一方、ステップSB3においてクーポンを発行すると判別した場合(ステップSB4:YES)、サーバー制御部50は、条件データベース51aにおいて、成立した条件と対応付けて記憶されているクーポン識別情報を特定する(ステップSB6)。成立した条件が複数ある場合は、対応する複数のクーポン識別情報が特定される。
ここで、クーポン識別情報について説明すると、上述したように、ホストコンピューター12のホスト記憶部23には、クーポン画像データベース23aが記憶されている。このクーポン画像データベース23aでは、発行可能なクーポンのそれぞれについて、クーポンに印刷すべき画像の画像データ(以下、「クーポン画像データ」という。)と、一意に付与された識別情報であるクーポン識別情報と、が対応付けて記憶されている。そして、クーポン識別情報とは、クーポン画像データベース23aにおいて、クーポン画像データと対応づけて記憶されている識別情報のことである。
次いで、サーバー制御部50は、ステップSB6で特定したクーポン識別情報を含んで構成された指示データを生成し(ステップSB7)、生成した指示データをホストコンピューター12に送信する(ステップSB8)。
ホストコンピューター12のホスト制御部20のクーポン発行制御部20cは、指示データを受信すると(ステップSA2)、クーポン画像データベース23aにアクセスする(ステップSA3)。
なお、クーポン発行制御部20cの機能は、コマンド解析部20bと同様、OPOSや、UPOSが提供するAPI関数を利用して作成されたプログラムによって実現される。このクーポン発行制御部20cに係るプログラムは、同じくOPOSや、UPOSの規格に準拠したプリンタードライバー36によって、適宜、呼び出し可能な構成となっている。
次いで、クーポン発行制御部20cは、クーポン画像データベース23aにおいて、指示データに含まれるクーポン識別情報と対応付けて記憶されているクーポン画像データを取得する(ステップSA4)。指示データにクーポン識別情報が複数含まれている場合は、対応する複数のクーポン画像データが取得される。
次いで、クーポン発行制御部20cは、取得したクーポン画像データに基づいて、予めインストールされたクーポンプリンター11の制御用のプリンタードライバーの機能を利用して、クーポンプリンター11にクーポンを発行させる制御コマンドを生成する(ステップSA5)。次いで、クーポン発行制御部20cは、例えば、PCSの機能を利用して、生成した制御コマンドについて必要なデータ整形を行なった上で、クーポンプリンター通信部26と協働して、クーポンに係る制御コマンドを、クーポンプリンター11に送信する(ステップSA6)。発行すべきクーポンが、複数、存在する場合は、制御コマンドの生成、送信は、発行すべきクーポンごとに行なわれる。
クーポンプリンター11は、受信した制御コマンドに基づいて、クーポンを発行する。
以上説明したように、本実施形態では、ホストコンピューター12は、レシートプリンター10(印刷装置)にレシートを発行させる制御コマンドを生成して出力する印刷制御部20aを備えている。さらに、ホストコンピューター12は、印刷制御部20aが生成したレシートに係る制御コマンドを解析して、レシートに係る制御コマンドに含まれる所定の情報を抽出し、抽出した情報に基づく第1送信データD1(送信データ)をクーポン管理サーバー15(サーバー装置)に送信するコマンド解析部20bと、第1送信データD1の送信後、クーポン管理サーバー15から、クーポンの発行を指示する指示データを受信した場合、クーポンプリンター11にクーポンを発行させる制御コマンドを生成して出力するクーポン発行制御部20cと、を備える。
この構成によれば、クーポン管理サーバー15がプリンターを制御して、プリンターにクーポンを発行させるのではなく、ホストコンピューター12が、クーポン管理サーバー15からの指示データに基づいて、クーポンプリンター11にクーポンを発行させる。このため、例えば、クーポン管理サーバー15が複数のプリンターに同時期にクーポンを発行させるといった事態が発生することがなくなり、クーポン管理サーバー15に負荷が集中することが抑制される。また、クーポン管理サーバー15から受信する指示データは、レシートに係る制御コマンドから抽出した情報に基づいて生成されるものであるため、レシートの内容を踏まえた適切なクーポンの発行が可能となる。
なお、本実施形態では、ホストコンピューター12に、クーポンを専用的に発行するクーポンプリンター11が接続され、このプリンターによってクーポンを発行する構成であった。これにより、レシートプリンター10によるレシートの発行に影響を与えることなく、クーポンプリンター11にクーポンを発行させることが可能となる。しかしながら、レシートプリンター10にクーポンを発行させる構成であってもよい。この構成によれば、ホストコンピューター12に接続すべきプリンターが1台で済み、コストの削減等を実現できる。
また、本実施形態では、ホストコンピューター12は、クーポン画像データベース23aにおいて、クーポンに印刷する画像の画像データであるクーポン画像データと、クーポン識別情報とを対応付けて記憶する。そして、クーポン発行制御部20cは、クーポン管理サーバー15から、指示データを受信した場合、指示データに含まれるクーポン識別情報に対応付けられたクーポン画像データに基づいてクーポンに係る制御コマンドを生成して出力する。
この構成によれば、クーポン管理サーバー15から、ホストコンピューター12に対して送信される指示データのサイズを小さくでき、通信トラフィックの増大の抑制、通信効率の向上を図ることができる。
また、本実施形態では、コマンド解析部20bは、レシートに係る制御コマンドから、購入商品に関する情報(商品の名称、単価、購入数量、および、購入金額)、および、会計に関する情報(合計金額)を抽出し、抽出した情報に基づく第1送信データD1をクーポン管理サーバー15に送信する。
この構成によれば、クーポン管理サーバー15は、購入商品に関する情報、または、会計に関する情報に基づいて、購入商品に対応して、または、会計に対応して適切に指示データを生成することが可能となる。
なお、上述した実施形態では、ホストコンピューター12は、購入商品に関する情報、および、会計に関する情報の双方をクーポン管理サーバー15に送信する構成であったが、一方の情報のみを送信する構成であってもよい。
また、会計に関する情報は、合計金額以外でもよく、レシートに印刷される情報であって会計に関連する情報であれば、何でもよい。
また、上述した実施形態では、ホストコンピューター12は、印刷制御部20aが生成したレシートに係る制御コマンドを解析して、複数のサーバー装置ごとに、制御コマンドに含まれる所定の情報を抽出し、抽出した情報に基づいてサーバー装置ごとに送信データを生成し、サーバー装置のそれぞれに送信するコマンド解析部20bを備える。
この構成によれば、レシートの発行に際し、レシートに係る制御コマンドから、サーバー装置ごとに情報が抽出され、サーバーごとに抽出された情報に基づく送信データが送信される。これにより、各サーバー装置が、レシートに印刷される情報のうち、必要な情報を取得することが可能となり、各サーバー装置の機能を利用して、レシートに印刷される情報を有効活用することができる。
また、本実施形態では、レシートに係る制御コマンドには、文字列を指定すると共に、指定した文字列の印刷を指示する文字列印刷指示コマンドMCが含まれている。そして、コマンド解析部20bは、文字列印刷指示コマンドMCが指定する文字列の内容が特定の内容の場合は、当該文字列を抽出し、抽出した文字列を含む送信データを生成して、特定のサーバー装置に送信する。
一例を挙げると、コマンド解析部20bは、レシートに係る制御コマンドから、内容が発行日時、商品名、単価、購入数量、購入金額、合計金額である文字列を抽出し、抽出した文字列を含んで構成された第2送信データD2を、売上管理サーバー16に送信する。
この構成によれば、特定の内容の文字列(情報)を、特定のサーバー装置に送信することが可能となり、サーバー装置に必要な情報を送信することができる。
また、本実施形態では、文字列印刷指示コマンドMCに基づいてレシートに係る記録媒体に文字列を印刷した場合における、当該文字列の位置に基づいて、当該文字列の内容を特定する。
一例を挙げると、コマンド解析部20bは、明細印刷指示コマンドC3に基づく1行分の文字列について、1文字目を基点とする文字列については、その内容が商品名であると特定し、T1文字目を基点とする文字列については、その内容が単価であると特定し、また、T2文字目を基点とする文字列については、その内容が購入数量であると特定する。
ここで、レシートは、印刷される画像のフォーマットが決まっており、所定の内容の文字列は、所定の位置に印刷される、という特性がある。そして、上記構成によれば、当該特性を利用して、レシートに印刷される文字列の内容を特定することが可能となる。
また、本実施形態では、レシートに係る制御コマンドには、文字列印刷指示コマンドMCが印刷を指示する文字列について、所定の装飾を施すことを指示する文字列装飾コマンドSCが含まれている。そして、コマンド解析部20bは、文字列印刷指示コマンドMCが印刷を指示する文字列に施される装飾に基づいて、当該文字列の内容を判別する。
一例を挙げると、コマンド解析部20bは、発行日時印刷指示コマンドC2に係る文字列装飾コマンドSCが、右寄せの装飾を施すことを指定するコマンドであることを利用して、発行日時印刷指示コマンドC2に係る文字列装飾コマンドSCを特定し、これにより、文字列の内容が発行日時であることを特定する。
ここで、レシートは、所定の内容の文字列には、定型的に、所定の装飾が施される、という特性がある。そして、上記構成によれば、当該特性を利用して、レシートに印刷される文字列の内容を判別することが可能となる。
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、図4(A)で示したレシートの内容や、図4(B)で示した制御コマンドの内容、図5で示した送信データの内容は、あくまで一例であり、例示した内容に限られないことは言うまでもない。
また例えば、図2、3に示す各機能ブロックはハードウェアとソフトウェアの協働により任意に実現可能であり、特定のハードウェア構成を示唆するものではない。また、各プリンターや、ホストコンピューター12、サーバー装置の各機能を、これら装置に外部接続される別の装置に持たせてもよい。また、各プリンターや、ホストコンピューター12は、外部接続される記憶媒体に記憶させたプログラムを実行することにより、各種動作を実行してもよい。
1…制御システム、10…レシートプリンター(印刷装置)、11…クーポンプリンター(クーポン発行用印刷装置)、12…ホストコンピューター(制御装置)、14…POS管理サーバー(サーバー装置)、15…クーポン管理サーバー(サーバー装置)、16…売上管理サーバー(サーバー装置)、17…電子レシート管理サーバー(サーバー装置)、18…顧客行動管理サーバー(サーバー装置)、20…ホスト制御部(制御部)、20a…印刷制御部、20b…コマンド解析部、20c…クーポン発行制御部。

Claims (9)

  1. レシートを発行する印刷装置に接続され、サーバー装置と通信する制御装置であって、
    前記印刷装置にレシートを発行させる制御コマンドを生成して出力する印刷制御部と、
    前記印刷制御部が生成したレシートに係る制御コマンドを解析して、レシートの文字列の印刷に係るマンド抽出し、抽出したコマンドに基づいて、前記サーバー装置がクーポンを発行すべきか否かの判別および発行するクーポンの特定をするための情報を含む送信データを生成し、前記サーバー装置に送信するコマンド解析部と、
    クーポンに印刷する画像の画像データとクーポンを特定する識別情報とを対応付けて記憶する記憶部と、
    前記送信データの送信後、前記送信データに基づいて前記サーバー装置がクーポンを発行すべきと判別した場合に前記サーバー装置が送信する指示データを受信し、受信した指示データに含まれるクーポンの識別情報に基づき前記記憶部から前記画像データを取得し、取得した画像データに基づいて前記印刷装置にクーポンを発行させる制御コマンドを生成して出力するクーポン発行制御部と、
    を備えることを特徴とする制御装置。
  2. クーポンを発行するクーポン発行用印刷装置がさらに接続され、
    前記クーポン発行制御部は、
    前記サーバー装置から、前記指示データを受信した場合、前記クーポン発行用印刷装置にクーポンを発行させる制御コマンドを生成して出力することを特徴とする請求項1に記載の制御装置。
  3. 前記記憶部は、クーポンに印刷する画像の複数の画像データと前記識別情報と対応付けて記憶し、
    記クーポン発行制御部は、
    前記サーバー装置から、前記指示データを受信した場合、前記指示データに含まれる識別情報に対応付けて前記記憶部に記憶され複数の画像データを取得し、取得した複数の画像データに基づいてクーポンに係る制御コマンドを生成して出力することを特徴とする請求項1または2に記載の制御装置。
  4. 前記コマンド解析部は、
    レシートに係る制御コマンドのうちレシートの文字列の印刷に係るコマンドを抽出し、前記サーバー装置がクーポンを発行する条件として用いる商品名、顧客の情報または購入された金額を含む前記送信データを生成して前記サーバー装置に送信することを特徴とする請求項1ないし3のいずれかに記載の制御装置。
  5. レシートを発行する印刷装置に接続された制御装置と、前記制御装置に接続されたサーバー装置とを備える制御システムであって、
    前記制御装置は、
    前記印刷装置にレシートを発行させる制御コマンドを生成して出力する印刷制御部と、
    前記印刷制御部が生成したレシートに係る制御コマンドを解析して、レシートの文字列の印刷に係るマンド抽出し、抽出したコマンドに基づいて、前記サーバー装置がクーポンを発行すべきか否かの判別および発行するクーポンの特定をするための情報を含む送信データを生成し、前記サーバー装置に送信するコマンド解析部と、
    クーポンに印刷する画像の画像データとクーポンを特定する識別情報とを対応付けて記憶する記憶部と、を備え、
    前記サーバー装置は、
    クーポンを発行すると判別するための条件と、発行するクーポンを特定する識別情報とを対応付けて記憶する条件記憶部と、
    前記制御装置が送信する前記送信データを受信し、受信した前記送信データに含まれる情報と前記条件記憶部が記憶する条件とに基づいてーポンを発行すべきか否か判別し、クーポンを発行すべきと判別した場合前記条件記憶部が記憶するクーポンの識別情報とクーポンの発行の指とを含む指示データを生成して、前記制御装置に送信するサーバー制御部と、を備え、
    前記制御装置は、
    前記サーバー装置が送信する前記指示データを受信し、受信した前記指示データに含まれるクーポンの識別情報に基づき前記記憶部から前記画像データを取得し、取得した画像データに基づいて前記印刷装置にクーポンを発行させる制御コマンドを生成して出力するクーポン発行制御部を備える
    ことを特徴とする制御システム。
  6. 前記制御装置の前記コマンド解析部は、
    レシートに係る制御コマンドから、前記サーバー装置が前記条件記憶部に条件として記憶する商品名、顧客の情報または購入された金額のうち少なくともいずれかを抽出し、抽出した情報に基づく前記送信データを前記サーバー装置に送信し、
    前記サーバー装置の前記条件記憶部は、クーポンを発行すると判別するための条件として、商品名、顧客の情報または購入された金額を記憶し、記憶した条件に対応付けてクーポンの識別情報を記憶し、
    前記サーバー制御部は、前記制御装置から受信した前記送信データに含まれる情報に基づいて、前記条件記憶部が記憶するクーポンを発行すべき条件が成立するか否かを判別し、成立すると判別した場合に、成立する条件に対応付けて記憶されたクーポンの識別情報を含む前記指示データを生成する
    ことを特徴とする請求項5に記載の制御システム。
  7. 記制御装置は、
    前記記憶部に、クーポンに印刷する画像の複数の画像データと前記識別情報と対応付けて記憶し、
    前記クーポン発行制御部は、前記サーバー装置から、前記指示データを受信した場合、前記指示データに含まれる前記識別情報に対応付けて前記記憶部に記憶され複数の画像データを取得し、取得した複数の画像データに基づいてクーポンに係る制御コマンドを生成して出力することを特徴とする請求項5または6に記載の制御システム。
  8. レシートを発行する印刷装置に接続され、サーバー装置と通信する制御装置の制御方法であって、
    クーポンに印刷する画像の画像データとクーポンを特定する識別情報とを対応付けて記憶部に記憶し、
    前記印刷装置にレシートを発行させる制御コマンドを生成して出力し、
    生成したレシートに係る制御コマンドを解析して、レシートの文字列の印刷に係るマンド抽出し、抽出したコマンドに基づいて、前記サーバー装置がクーポンを発行すべきか否かの判別および発行するクーポンの特定をするための情報を含む送信データを生成し、
    生成した前記送信データを前記サーバー装置に送信し、
    前記送信データの送信後、前記送信データに基づいて前記サーバー装置がクーポンを発行すべきと判別した場合に前記サーバー装置が送信する指示データを受信し
    受信した指示データに含まれるクーポンの識別情報に基づき前記記憶部から前記画像データを取得し、
    取得した画像データに基づいて前記印刷装置にクーポンを発行させる制御コマンドを生成して出力することを特徴とする制御装置の制御方法。
  9. 前記記憶部に、クーポンに印刷する画像の複数の画像データと前記識別情報と対応付けて記憶し、
    前記サーバー装置から発行すべきクーポンの前記識別情報を含む前記指示データを受信した場合、前記指示データに含まれる前記識別情報に対応付けて前記記憶部に記憶され複数の画像データを取得し、取得した複数の画像データに基づいてクーポンに係る制御コマンドを生成して出力することを特徴とする請求項8に記載の制御装置の制御方法。
JP2013093706A 2013-04-26 2013-04-26 制御装置、制御システム、および制御装置の制御方法 Expired - Fee Related JP6186846B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2013093706A JP6186846B2 (ja) 2013-04-26 2013-04-26 制御装置、制御システム、および制御装置の制御方法
KR1020140049865A KR101571970B1 (ko) 2013-04-26 2014-04-25 제어 장치, 제어 시스템, 및 제어 장치의 제어 방법
CN201410171660.6A CN104118225B (zh) 2013-04-26 2014-04-25 控制装置、控制系统以及控制装置的控制方法
EP20140166055 EP2796986A1 (en) 2013-04-26 2014-04-25 Control device, control system, and control method of a control device
US14/263,522 US9898691B2 (en) 2013-04-26 2014-04-28 Control device, control system, and control method of a control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013093706A JP6186846B2 (ja) 2013-04-26 2013-04-26 制御装置、制御システム、および制御装置の制御方法

Publications (3)

Publication Number Publication Date
JP2014215866A JP2014215866A (ja) 2014-11-17
JP2014215866A5 JP2014215866A5 (ja) 2016-05-19
JP6186846B2 true JP6186846B2 (ja) 2017-08-30

Family

ID=51941557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013093706A Expired - Fee Related JP6186846B2 (ja) 2013-04-26 2013-04-26 制御装置、制御システム、および制御装置の制御方法

Country Status (1)

Country Link
JP (1) JP6186846B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6424661B2 (ja) * 2015-02-12 2018-11-21 セイコーエプソン株式会社 制御装置、制御システム、及び、制御装置の制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004058323A (ja) * 2002-07-25 2004-02-26 Star Micronics Co Ltd プリンタ
JP4670264B2 (ja) * 2004-06-03 2011-04-13 セイコーエプソン株式会社 印刷装置、プリンタインターフェース、posシステム、プログラムおよび印刷装置の制御方法
JP2006323445A (ja) * 2005-05-17 2006-11-30 Seiko Epson Corp 印刷システム、posシステム、接続デバイス、印刷システムの制御方法およびそのプログラム

Also Published As

Publication number Publication date
JP2014215866A (ja) 2014-11-17

Similar Documents

Publication Publication Date Title
US9224138B2 (en) POS control system, control method of a POS control system, and printing device
KR101571970B1 (ko) 제어 장치, 제어 시스템, 및 제어 장치의 제어 방법
JP6155808B2 (ja) 制御装置、制御システム、および制御装置の制御方法
US20150220903A1 (en) Function expansion method using print data, function expansion device, and recording medium
US20220156712A1 (en) Transaction data processing apparatus connected to an external device for data communication
US10102457B2 (en) Host device, printing system, and data processing method
JP2016076158A (ja) 情報処理装置、会計システム、及び、記録装置
EP2889753A1 (en) Receipt printing system, control method for receipt printing system, and control device
JP6186846B2 (ja) 制御装置、制御システム、および制御装置の制御方法
US20170185986A1 (en) Information processing device, information processing system, and control method of an information processing device
JP6160289B2 (ja) 制御装置、および、制御装置の制御方法
US10984298B2 (en) Acquiring item values from printers based on notation form settings
JP2012198613A (ja) 出力装置、ジャーナル生成システム、ジャーナル生成方法及びプログラム
JP6035275B2 (ja) 商品販売データ処理装置およびその制御プログラム
US20200160127A1 (en) Printer and control method thereof
JP5953791B2 (ja) Posシステム及びコンピュータプログラム
JP5765100B2 (ja) 制御装置、制御装置の制御方法、及び、プログラム
JP6338636B2 (ja) レシート発行方法
JP6048612B2 (ja) Posシステム及びプログラム
US10552104B2 (en) Print data processing device, print data processing method, program, and printing system for executing printing process according to user needs
JP5530475B2 (ja) 商品販売データ処理装置およびプログラム
JP6015141B2 (ja) 制御装置、制御システム、制御装置の制御方法、及び、プログラム
JP2012106431A (ja) 記録装置、記録システム、記録装置の制御方法、及び、プログラム
JP2014052884A (ja) 画像処理装置、画像処理システムおよび印刷方法
JP2010067121A (ja) 印刷情報生成装置、印刷装置、印刷システムおよび印刷情報生成装置の制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160325

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170308

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: 20170704

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170717

R150 Certificate of patent or registration of utility model

Ref document number: 6186846

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees