説明

記録装置、記録装置の制御方法、及び、プログラム

【課題】改変を加えることなくレシートの発行に係る制御コマンドを記憶すると共に、記憶した制御コマンドに基づいて、複数のレシートの画像を、レシートごとに見た目上の区別ができるようにした上で、1枚のシートに連続して記録できるようにする。
【解決手段】ホストコンピューター11のレシート情報記録部52は、累積制御コマンドデータ70に基づいて、制御コマンドを順次読み出して実行することにより、1枚のシートにレシートに係る画像を記録していき、読み出した制御コマンドがカットコマンドである場合は、感熱ロール紙の切断に代えて、所定の画像を記録し、これにより、1枚のシートに過去に発行したレシートに係る画像を連続して記録する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置に接続可能な記録装置、当該記録装置の制御方法、及び、当該記録装置を制御するためのプログラムに関する。
【背景技術】
【0002】
従来、商品を販売し、また、サービスを提供する店舗等に設けられ、商品等の販売取引に関する情報(売上に関する情報や課税額等に関する情報等)を含むフィスカル情報を記憶する電子機器が知られている(例えば、特許文献1参照)。当該電子機器に記憶されたフィスカル情報は、例えば、政府等の国家機関による店舗からの税金の徴収に際し、当該店舗における取引の実態を把握するための情報として利用される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平05−120567号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述した電子機器としては、フィスカル情報として、店舗において発行されたレシートについて、レシートを発行するための制御コマンドを累積的に記憶する記録装置がある。このようにレシートを発行するための制御コマンドを記憶することにより、過去に発行したレシートを再発行できることとなり、当該店舗における取引の実態の把握に有益な情報を提供することが可能となる。
そして、過去に発行したレシートに係る制御コマンドを累積的に記憶していることを利用して、過去に発行したレシートの画像が、レシートの発行順に、連続して記録された1枚のシートを印刷出力したいとするニーズがある。このような1枚のシートを印刷出力することにより、一定期間に行われた取引の内容をまとめて調査できると共に、レシートのそれぞれを再発行する場合と比較して、管理が非常に容易である。この場合、上記1枚のシートが、店舗における取引の内容の調査に利用される可能性があることを踏まえると、当該1枚のシートに記録された複数のレシートの画像について、レシートごとに見た目上の区別ができることが求められる。
また、累積的に記憶した制御コマンドに基づいて、過去に発行したレシートの画像を1枚のシートに連続して記録できるようにするために、かつ、当該1枚のシートに記録された複数のレシートの画像についてレシートごとに見た目上の区別ができるようにするために、記憶する制御コマンドに対して所定の改変を加えることも考えられるが、記憶する制御コマンドがフィスカル情報であることを考慮すると、このような改変を行うことは適切ではなく、また、改変自体が制限されている場合もある。
本発明は、上述した事情に鑑みてなされたものであり、改変を加えることなくレシートの発行に係る制御コマンドを記憶すると共に、記憶した制御コマンドに基づいて、複数のレシートの画像を、レシートごとに見た目上の区別ができるようにした上で、1枚のシートに連続して記録できるようにすることを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するために、本発明は、制御装置に接続可能な記録装置であって、記録媒体に記録する記録部と、前記記録媒体を切断する切断部と、前記制御装置から入力された制御コマンドに基づいて、前記記録部、及び、前記切断部を制御して、前記記録媒体に画像を記録して切断することによりレシートを発行するレシート発行部と、前記レシートの発行に係る前記制御コマンドを累積的に記憶する制御コマンド記憶部と、前記制御コマンド記憶部によって累積的に記憶された前記制御コマンドに基づいて、前記記録媒体に、複数の前記レシートに係る画像を連続して記録するレシート情報記録部と、を備え、前記レシート情報記録部は、前記記録媒体に、複数の前記レシートの画像を連続して記録する際、累積的に記憶された前記制御コマンドを順次読み出して実行することにより、前記記録媒体に前記レシートに係る画像を記録し、読み出した前記制御コマンドが前記記録媒体を切断させるカットコマンドである場合は、前記記録媒体の切断に代えて、前記記録媒体に所定の画像を記録することを特徴とする。
ここで、レシートの発行に係る一連の動作のうち、記録媒体の切断に係る動作が最後の動作である。従って、レシートの発行に係る一連の制御コマンドのうち、カットコマンドが、最後の制御コマンドである。
これを踏まえ、上記構成によれば、記録媒体に、複数のレシートに係る画像を連続して記録する際、累積的に記憶された制御コマンドを順次読み出して実行することにより、記録媒体にレシートに係る画像を記録していき、読み出した制御コマンドがカットコマンドである場合は、記録媒体の切断に代えて、記録媒体に所定の画像を記録するため、記録媒体の切断を行うことなく一続きの記録媒体に連続してレシートに係る画像を記録可能であると共に、記録媒体において、1のレシートに係る画像と、次のレシートに係る画像との間に、当該所定の画像が記録されることとなり、記録媒体に記録された複数のレシートの画像についてレシートごとに見た目上の区別ができるようにできる。さらに、上記構成によれば、既存のカットコマンドを利用して、レシートに係る画像ごとに記録媒体の切断を行うことなく、見た目上の区別を付けるための所定の画像を記録するため、記憶する制御コマンドを改変する必要がない。
【0006】
また、本発明は、前記レシート情報記録部は、前記カットコマンドの読み出しに基づいて、前記記録媒体に前記所定の画像を記録する場合、当該所定の画像の前に前記記録媒体に記録された前記レシートに係る画像の内容、及び、当該所定の画像の後に前記記録媒体に記録されるべき前記レシートに係る画像の内容のうち、少なくとも一方に応じて、前記所定の画像の態様を変更可能であることを特徴とする。
この構成によれば、所定の画像の前後のレシートに係る画像の内容に応じて、当該所定の画像の態様が変わるため、レシートに係る画像が連続して記録された記録媒体を見る者は、当該所定の画像を目印として、レシートの画像の内容に関する情報を容易に取得可能である。
【0007】
また、本発明は、前記レシートには、前記レシートを発行した日付を表す画像が記録され、前記レシート情報記録部は、前記カットコマンドの読み出しに基づいて、前記記録媒体に前記所定の画像を記録する場合、当該所定の画像の前に前記記録媒体に記録された前記レシートに係る画像における日付を表す画像が示す日付と、当該所定の画像の後に前記記録媒体に記録されるべき前記レシートに係る画像における日付を表す画像が示す日付と、が異なるか否かを判別し、異なる場合は、前記所定の画像の態様を変更することを特徴とする。
この構成によれば、記録媒体に記録された1のレシートに係る画像と、次のレシートに係る画像とについて、各レシートが発行された日が異なる場合、これらレシートに係る画像の間に記録される所定の画像の態様が変わるため、レシートに係る画像が連続して記録された記録媒体を見る者は、当該所定の画像を目印として、レシートが発行された日が変わる境目を容易に認識可能である。
【0008】
また、本発明は、前記レシート情報記録部は、前記カットコマンドの読み出しに基づいて、前記記録媒体に前記所定の画像を記録する場合、当該所定の画像の前に前記記録媒体に記録された前記レシートに係る画像の内容、及び、当該所定の画像の後に前記記録媒体に記録されるべき前記レシートに係る画像の内容のうち、少なくともいずれか一方に、所定の異常があるか否かを判別し、当該所定の異常がある場合は、前記所定の画像の態様を変更することを特徴とする。
この構成によれば、所定の画像の前後のレシートに係る画像の内容に異常がある場合、当該所定の画像の態様が変わるため、レシートに係る画像が連続して記録された記録媒体を見る者は、当該所定の画像を目印として、レシートの画像の内容の異常を容易に認識可能である。
【0009】
また、本発明は、前記所定の異常とは、前記レシートに係る画像において、所定の金額を表す画像が示す金額が異常であること、を特徴とする。
ここで、レシートに記録される各種金額が異常である場合、会計に際し、何らかの不正が行われた場合がある。これを踏まえ、上記構成によれば、所定の画像の前後のレシートに係る画像について、いずれかのレシートに係る金額に異常がある場合、当該所定の画像の態様が変わるため、レシートに係る画像が連続して記録された記録媒体を見る者は、当該所定の画像を目印として、当該異常を容易に認識可能である。
【0010】
また、上記目的を達成するために、本発明は、制御装置に接続可能に構成され、記録媒体に記録する記録部と、前記記録媒体を切断する切断部と、前記制御装置から入力された制御コマンドに基づいて、前記記録部、及び、前記切断部を制御して、前記記録媒体に画像を記録して切断することによりレシートを発行するレシート発行部と、を備える記録装置の制御方法であって、前記レシートの発行に係る前記制御コマンドを累積的に記憶すると共に、累積的に記憶された前記制御コマンドを順次読み出して実行することにより、前記記録媒体に前記レシートに係る画像を記録し、読み出した前記制御コマンドが前記記録媒体を切断させるカットコマンドを含むカットコマンドである場合は、前記記録媒体の切断に代えて、前記記録媒体に所定の画像を記録することにより、前記記録媒体に、複数の前記レシートに係る画像を連続して記録することを特徴とする。
この制御方法によれば、複数のレシートに係る画像を連続して記録する際、累積的に記憶された制御コマンドを順次読み出して実行することにより、記録媒体にレシートに係る画像を記録していき、読み出した制御コマンドがカットコマンドである場合は、記録媒体の切断に代えて、記録媒体に所定の画像を記録するため、記録媒体の切断を行うことなく一続きの記録媒体に連続してレシートに係る画像を記録可能であると共に、記録媒体において、1のレシートに係る画像と、次のレシートに係る画像との間に、当該所定の画像が記録されることとなり、記録媒体に記録された複数のレシートの画像についてレシートごとに見た目上の区別ができるようにできる。さらに、上記制御方法によれば、既存のカットコマンドを利用して、レシートに係る画像ごとに記録媒体の切断を行うことなく、見た目上の区別を付けるための所定の画像を記録するため、記憶する制御コマンドを改変する必要がない。
【0011】
また、上記目的を達成するために、本発明は、制御装置に接続可能に構成され、記録媒体に記録する記録部と、前記記録媒体を切断する切断部と、前記制御装置から入力された制御コマンドに基づいて、前記記録部、及び、前記切断部を制御して、前記記録媒体に画像を記録して切断することによりレシートを発行するレシート発行部と、を備える記録装置を制御する制御部により実行されるプログラムであって、前記制御部を、前記レシートの発行に係る前記制御コマンドを累積的に記憶する制御コマンド記憶部と、前記制御コマンド記憶部により累積的に記憶された前記制御コマンドを順次読み出して実行することにより、前記記録媒体に前記レシートに係る画像を記録し、読み出した前記制御コマンドが前記記録媒体を切断させるカットコマンドである場合は、前記記録媒体の切断に代えて、前記記録媒体に所定の画像を記録することにより、前記記録媒体に、複数の前記レシートに係る画像を連続して記録するレシート情報記録部と、として機能させることを特徴とする。
このプログラムを実行すれば、複数のレシートに係る画像を連続して記録する際、累積的に記憶された制御コマンドを順次読み出して実行することにより、記録媒体にレシートに係る画像を記録していき、読み出した制御コマンドがカットコマンドである場合は、記録媒体の切断に代えて、記録媒体に所定の画像を記録するため、記録媒体の切断を行うことなく一続きの記録媒体に連続してレシートに係る画像を記録可能であると共に、記録媒体において、1のレシートに係る画像と、次のレシートに係る画像との間に、当該所定の画像が記録されることとなり、記録媒体に記録された複数のレシートの画像についてレシートごとに見た目上の区別ができるようにできる。さらに、上記プログラムを実行すれば、既存のカットコマンドを利用して、レシートに係る画像ごとに記録媒体の切断を行うことなく、見た目上の区別を付けるための所定の画像を記録するため、記憶する制御コマンドを改変する必要がない。
【発明の効果】
【0012】
本発明によれば、改変を加えることなくレシートの発行に係る制御コマンドを記憶すると共に、記憶した制御コマンドに基づいて、複数のレシートの画像を、レシートごとに見た目上の区別ができるようにした上で、1枚のシートに連続して記録できる。
【図面の簡単な説明】
【0013】
【図1】ホストコンピューター及びプリンターの機能的構成を示すブロック図。
【図2】ホストコンピューター及びプリンターの動作を示すフローチャート。
【図3】制御コマンド、及び、レシートを示す図である。
【図4】プリンターの動作を示すフローチャートである。
【図5】1枚のシート、及び、制御コマンドを示す図である。
【発明を実施するための形態】
【0014】
以下、図面を参照して本発明の実施形態について説明する。
図1は、記録システム10の機能的構成を示すブロック図である。
記録システム10は、スーパーマーケットやコンビニエンスストア等の店舗に適用され、店舗に来店した顧客の代金の支払いに応じてレシートを発行するシステムであり、図1に示すように、ホストコンピューター11(制御装置)と、POSサーバー25と、プリンター26(記録装置)とを備えている。
【0015】
POSサーバー25は、LAN等のネットワークを介してホストコンピューター11に通信可能に接続されており、店舗で販売している商品の商品コードや、名称、金額等のレシートの発行のために必要となる情報を示すデータをデータベースとして記憶する。ホストコンピューター11は、レシートの発行に際し、適宜、POSサーバー25に記憶されたデータベースを参照し、必要な情報を取得する。
【0016】
ホストコンピューター11は、ホスト側制御部28と、ホスト側表示部29と、ホスト側入力部30と、インターフェイス部31(I/F)と、ホスト側記憶部32と、を備えている。
ホスト側制御部28は、ホストコンピューター11の各部を中枢的に制御するものであり、CPUや、ROM、RAM、その他の周辺回路等を備えている。図1に示すように、ホスト側制御部28は、プリンタードライバー実行部35を備えている。プリンタードライバー実行部35は、プリンター26を制御するためのプリンタードライバーを読み出して実行することによってプリンター26を制御する機能ブロックである。
ホスト側表示部29は、液晶表示パネル等の表示パネルを備え、ホスト側制御部28の制御の下、表示パネルに各種情報を表示する。
ホスト側入力部30は、キーボードや、マウス、バーコードリーダー、カードリーダー等の入力デバイスに接続され、これら入力デバイスの出力信号をホスト側制御部28に出力する。バーコードリーダーは商品の包装紙等に記録されたバーコードの読み取りに利用され、カードリーダーはクレジットカードや、会員カード等に記録された情報の読み取りに利用される。バーコードリーダーやカードリーダー等の入力デバイスを用いて取得した情報は、レシートの発行に係る処理に用いられる。
インターフェイス部31(I/F)は、ホスト側制御部28の制御の下、プリンター26との間で通信規格に準拠した通信を行う。
ホスト側記憶部32は、EEPROM等の不揮発性メモリーを備え、上述したプリンタードライバーや、その他のプログラム、各種データを書き換え可能に記憶する。
【0017】
一方、プリンター26は、ロール状に巻かれた感熱ロール紙を、ローラー状のプラテンにより搬送し、この感熱ロール紙の記録面に、発熱素子を備えたラインサーマルヘッド37(記録部)によって熱を与えることにより画像を記録した上で、カッターユニット38(切断部)により所定の位置で感熱ロール紙を切断することにより、レシートを発行するサーマルヘッド式プリンターである。
また、本実施形態に係るプリンター26は、後述するように、フィスカル情報を記憶する機能を有している。フィスカル情報とは、商品等の販売取引に関する情報(売上に関する情報や課税額等に関する情報)であって、記憶すべき情報として予め定められた情報のことである。このフィスカル情報は、例えば、政府等の国家機関による店舗からの税金の徴収に際し、国家機関が当該店舗における取引の実態を把握するために参照する情報として利用される。本実施形態では、プリンター26は、フィスカル情報として、レシートの発行に係る制御コマンドを累積的に記憶する構成となっているが、これについては後述する。
【0018】
図1に示すように、プリンター26は、プリンター側制御部40と、プリンター側表示部41と、プリンター側入力部42と、プリントエンジン43と、プリンター側記憶部44と、インターフェイス部45(I/F)と、を備えている。
プリンター側制御部40は、プリンター26を中枢的に制御するものであり、CPUやROM、RAMその他の周辺回路等を備えている。プリンター側制御部40は、レシート発行部50、制御コマンド記憶部51、及び、レシート情報記録部52を備えているが、これらについては後述する。
プリンター側表示部41は、プリンター26の動作状態等の各種情報を表示する液晶表示パネル等の表示パネルを備え、プリンター側制御部40の制御の下、当該表示パネルに各種情報を表示する。また、プリンター側表示部41は、LEDを備え、このLEDを点灯/消灯して、プリンター26の状態を報知する。
プリンター側入力部42は、プリンター26に設けられた操作スイッチに接続され、操作スイッチに対する操作を検出し、プリンター側制御部40に出力する。
プリントエンジン43は、プリンター側制御部40の制御の下、用紙端センサーや用紙残量センサー等の各種センサーの検出値を監視しながら、上述したラインサーマルヘッド37のほか、感熱ロール紙を搬送するプラテンローラーを駆動するための搬送モーターや、上述したカッターユニット38が備えるカッターを駆動するためのカッター駆動モーターを動作させて、感熱ロール紙に画像を記録し、画像を記録した感熱ロール紙を切断することによりレシートを発行する。
インターフェイス部45(I/F)は、プリンター側制御部40の制御の下、プリンター26との間で通信規格に準拠した通信を行う。
プリンター側記憶部44は、EEPROM等の不揮発性メモリーを備え、各種データを書き換え可能に記憶する。プリンター側記憶部44には、プリンター26のファームウェアが記憶されている。
【0019】
次いで、ホストコンピューター11の制御の下、プリンター26がレシートを発行する際の動作について説明する。
図2は、ある1枚のレシートを発行する際の、ホストコンピューター11、及び、プリンター26の動作を示すフローチャートであり、(A)はホストコンピューター11の動作を、(B)はプリンター26の動作を示している。
レシートの発行に際し、まず、ホストコンピューター11は、ホスト側入力部30から入力された情報に基づいて、適宜、POSサーバー25にアクセスした上で、レシートに記録すべき画像に関する情報である画像情報を生成する(ステップSA1)。当該画像情報の生成は、ホストコンピューター11に予めインストールされたアプリケーションの機能により行われる。
次いで、ホストコンピューター11のホスト側制御部28のプリンタードライバー実行部35は、アプリケーションの機能により生成された画像情報に基づいて、プリンター26のコマンド体系に準拠した制御コマンドであって、プリンター26にレシートの発行に係る各種動作を行わせるための制御コマンドを生成し、プリンター26に出力する(ステップSA2)。
ここで、ステップSA2で出力される制御コマンドの具体的な態様と、当該制御コマンドを実行することにより発行されるレシートの内容について、説明する。
【0020】
図3は、制御コマンドと、制御コマンドによって生成されるレシートとを模式的に示す図であり、左側は制御コマンドの内容を、右側は制御コマンドを実行することによって記録されるレシートの内容を、それぞれ示している。
図3に示すように、レシートの先頭には、レシートが発行された日付(以下、「発行日」という。)を示す発行日画像60が記録される。
この発行日画像60の下方には、ロゴを示すロゴ画像61が記録される。ロゴとは、レシートを発行する主体(例えば、記録システム10が適用されている店舗を経営する会社)を示すマーク等、レシートの先頭に定型的に記録される画像のことである。
このロゴ画像61の下方には、取引内容画像62が記録される。取引内容画像62は、本実施形態では、顧客が購入した商品の名称、及び、当該商品の購入数量、及び、当該商品の単価をそれぞれ示す情報(以下、「取引内容」という。)からなる画像である。
この取引内容画像62の下方には、合計金額画像63が記録される。合計金額画像63は、会計において顧客が支払うべき金額の合計を示す情報からなる画像である。以下、合計金額画像63が示す情報のうち、顧客が支払うべき金額の値を示す文字列(図3の例では、「100」の部分)を、「合計金額」と表現する。
本実施形態においては、全てのレシートのレイアウトは、図3に示すレシートのレイアウトに準じるものとなっている。すなわち、本実施形態に係る記録システム10によって発行される各レシートには、先頭から後端へ向かって順に、発行日画像60、ロゴ画像61、取引内容画像62、及び、合計金額画像63が記録されるものとする。
なお、レシートのレイアウトは、説明の便宜を考慮して単純化しており、通常、税に関する情報や、おつりに関する情報等、上記で示した以外の情報が記録される。
【0021】
一方、図3に示すように、制御コマンドは、複数のコマンドから構成されており、大別して、記録コマンドKCと、カットコマンドCCと、からなっている。
記録コマンドKCとは、感熱ロール紙への画像の記録を指示するコマンド群のことである。
記録コマンドKCには、発行日記録指示コマンドHCが含まれている。発行日記録指示コマンドHCとは、発行日画像60の記録を指示するコマンドである。本実施形態では、発行日記録指示コマンドHCは、文字列の記録を指示する命令コードと、発行日を示す文字列と、から構成されている。発行日を示す文字列とは、所定の文字コード(例えば、Unicodeや、アスキーコード)によって表現された文字の組み合わせからなる文字列である。本実施形態では、発行日記録指示コマンドHCは、例えば、「XXX“2011/1/1”」(ただし、「XXX」は、文字列の記録を指示する命令コード。ダブルクォーテーション内は、記録すべき文字列。)という構成となっている。本実施形態では、プリンター26によって記録可能とされている文字のそれぞれについて、各文字のフォントデータが事前にプリンター26に登録されている。発行日記録指示コマンドHCが入力された場合、プリンター26は、記録すべき文字列を構成する各文字をフォントデータに変換し、変換したフォントデータに基づいて記録を行う。
【0022】
また、記録コマンドKCには、ロゴ記録指示コマンドLCが含まれている。ロゴ記録指示コマンドLCとは、ロゴ画像61の記録を指示するコマンドである。本実施形態では、ロゴ記録指示コマンドLCは、グラフィック画像の記録を指示する命令コードと、ロゴとして記録すべき画像の画像データと、から構成されている。画像データとは、ビットマップデータ等の、画素ごとに、色に関する情報を例えば階調値として保持するデータのことである。本実施形態では、ロゴ記録指示コマンドLCは、例えば、「YYY“ロゴの画像データ”」(ただし、「YYY」は、文字列の記録を指示する命令コード。)という構成となっている。なお、プリンター26にロゴ画像61に係る画像データが事前に登録され、当該登録された画像データを使用してロゴ画像61を記録可能な場合は、ロゴ記録指示コマンドLCに、ロゴの画像データに代えて、プリンター26に登録されている画像データを指定する情報を含めるようにしてもよい。
また、記録コマンドKCには、取引内容記録指示コマンドTCが含まれている。取引内容記録指示コマンドTCとは、取引内容画像62の記録を指示するコマンドである。取引内容記録指示コマンドTCは、文字列の記録を指示する命令コードと、取引内容を示す文字列と、から構成されており、例えば、「XXX“GOODS−A△△@100△△1”」(△は、スペースを示す。以下も同様。)という構成となっている。
また、記録コマンドKCには、合計金額記録指示コマンドGCが含まれている。合計金額記録指示コマンドGCとは、合計金額画像63の記録を指示するコマンドである。合計金額記録指示コマンドGCは、文字列の記録を指示する命令コードと、合計金額に係る情報を示す文字列と、から構成されており、例えば、「XXX“TOTAL△△100”」という構成となっている。
【0023】
一方、カットコマンドCCは、感熱ロール紙の切断を指示するコマンドである。
ここで、レシートの発行に係る一連の動作において、感熱ロール紙を切断する動作は、最後に行われる動作である。従って、カットコマンドCCは、レシートの発行に係る一連の制御コマンドのうち、ホストコンピューター11からプリンター26に対して最後に出力される制御コマンドである。
なお、図3に示す制御コマンドの構成は、ホストコンピューター11からプリンター26に出力される一連の制御コマンドを、説明の便宜を考慮して、単純化している。実際には、図3で例示したコマンドのほか、記録すべき文字列について施すべき装飾を指定するコマンドや、左右のマージンを設定するコマンド、RAMに形成する画像バッファーの態様を指定するコマンド等、必要なコマンドが含まれているが、本実施形態では、これらコマンドについては省略する。
【0024】
さて、前掲図2に戻り、ステップSA2におけるプリンタードライバー実行部35の制御コマンドの出力に応じて、プリンター側制御部40は、インターフェイス部45を介して制御コマンドを受信する(ステップSB1)。受信した制御コマンドは、一旦、受信バッファー(不図示)に格納される。
次いで、プリンター側制御部40の制御コマンド記憶部51は、受信バッファーに格納されている制御コマンドに基づいて、プリンター側記憶部44に記憶されている累積制御コマンドデータ70に、受信した制御コマンドを示す情報を追加的に記述する(ステップSB2)。この制御コマンド記憶部51の機能は、プリンター側制御部40のCPUがファームウェアを読み出して実行する等、ハードウェアとソフトウェアとの協働により実現される。
累積制御コマンドデータ70とは、ホストコンピューター11からプリンター26に対して入力された制御コマンドを示す情報を累積的に記憶するデータである。この累積制御コマンドデータ70には、過去にホストコンピューター11から入力された制御コマンドを示す情報が、入力された順番に、過不足無く記述されている。ステップSB2では、制御コマンド記憶部51は、例えば、受信バッファーにアクセスして、制御コマンドを示す情報を取得し、取得した情報を累積制御コマンドデータ70に記述されている情報の末尾に追加的に記述する。なお、累積制御コマンドデータ70は、レシートが発行された期間ごとに、ファイルが分けられていてもよい。
本実施形態では、この累積制御コマンドデータ70が、フィスカル情報に該当する。このように、過去に発行したレシートについて、発行に係る制御コマンドを累積的に記憶することにより、店舗において行われた取引の実態を把握するために、必要に応じて、任意のレシートを再発行できる。ここで、累積制御コマンドデータ70は、当該データが記憶されている記憶領域へのアクセスが制御されており、情報の書き込みはできるものの、書き込んだ情報の削除や、書き換えはできない構成となっており、これにより、累積制御コマンドデータ70の情報の改変が防止されている。
【0025】
次いで、プリンター側制御部40のレシート発行部50は、制御コマンドに含まれる記録コマンドKCを構成する発行日記録指示コマンドHC、ロゴ記録指示コマンドLC、取引内容記録指示コマンドTC、及び、合計金額記録指示コマンドGCに基づいて、発行日画像60、ロゴ画像61、取引内容画像62、及び、合計金額画像63を、順次、記録する(ステップSB3)。
このレシート発行部50の機能は、プリンター側制御部40のCPUがファームウェアを読み出して実行する等、ハードウェアとソフトウェアとの協働により実現される。
次いで、プリンター側制御部40のレシート発行部50は、制御コマンドに含まれるカットコマンドCCに基づいて、感熱ロール紙を切断する。
以上により、レシートの発行が完了する。
【0026】
ところで、プリンター側制御部40は、レシート情報記録部52を備えている。
このレシート情報記録部52は、累積制御コマンドデータ70に基づいて、感熱ロール紙に、過去に発行したレシートに係る画像を連続して記録する機能を有している。
上述したように、累積制御コマンドデータ70に記述された情報については一切改変を加えることができないが、レシート情報記録部52は、改変が行われていない累積制御コマンドデータ70に基づいて、複数のレシートに係る画像を、レシートごとに見た目上の区別ができるようにした上で、感熱ロール紙に連続して記録する。
以下、レシート情報記録部52の動作について詳述する。
なお、以下の説明においては、累積制御コマンドデータ70に基づいてレシートに係る画像が連続して記録された感熱ロール紙を、適宜、「1枚のシート」と表現し、1枚のレシートと明確に区別するものとする。
【0027】
図4は、レシート情報記録部52が、累積制御コマンドデータ70に基づいて、1枚のシートに、過去に発行したレシートに係る画像を連続して記録するときの動作を示すフローチャートである。
以下に示す動作は、例えば、ユーザーの指示に基づくホストコンピューター11からの指示をトリガーとして、また例えば、予め定められた所定のタイミングが到来したことをトリガーとして行われる。
また、レシート情報記録部52の機能は、プリンター側制御部40のCPUがファームウェアを読み出して実行する等、ハードウェアとソフトウェアとの協働により実現される。
1枚のシートに連続してレシートに係る画像を記録する際、まず、レシート情報記録部52は、累積制御コマンドデータ70に記述された制御コマンドを読み出す(ステップSC1)。当該制御コマンドの読み出しは、累積制御コマンドデータ70に記述された情報の先頭から、制御コマンドごとに、順番に、行われる。
次いで、レシート情報記録部52は、ステップSC1で読み出した制御コマンドが、記録コマンドKCであるか、又は、カットコマンドCCであるかを判別する(ステップSC2)。
読み出した制御コマンドが記録コマンドKCである場合(ステップSC2:「記録コマンド」)、レシート情報記録部52は、さらに、読み出した制御コマンドが、発行日記録指示コマンドHCであるか否かを判別する(ステップSC3)。なお、制御コマンドが、発行日記録指示コマンドHCであるか否かの判別は、例えば、発行日を示す文字列に含まれる文字「/」をキーとした文字列検索等の既存の技術を利用して行われる。
読み出した制御コマンドが発行日記録指示コマンドHCである場合(ステップSC3:YES)、レシート情報記録部52は、発行日記録指示コマンドHCに含まれる、発行日を示す文字列(図3の例では、「2011/1/1」)を、変数H1に上書き格納する(ステップSC4)。変数H1とは、ステップSC4において、発行日を示す文字列を上書き格納するために、ファームウェア上に定義された変数を概念的に示すものである。
次いで、レシート情報記録部52は、発行日記録指示コマンドHCに基づいて、発行日画像60を1枚のシートに記録し(ステップSC5)、処理手順をステップSC1に戻す。
【0028】
一方、ステップSC3において、読み出した制御コマンドが発行日記録指示コマンドHCでないと判別した場合(ステップSC3:NO)、レシート情報記録部52は、さらに、読み出した制御コマンドが、合計金額記録指示コマンドGCであるか否かを判別する(ステップSC6)。なお、制御コマンドが、合計金額記録指示コマンドGCであるか否かの判別は、例えば、合計金額とともに記録される文字列「TOTAL」をキーとした文字列検索等の既存の技術を利用して行われる。
読み出した制御コマンドが合計金額記録指示コマンドGCである場合(ステップSC6:YES)、レシート情報記録部52は、合計金額記録指示コマンドGCに含まれる、合計金額を示す文字列(図3の例では、「100」。)を、変数H2に上書き格納する(ステップSC7)。変数H2とは、ステップSC7において、合計金額を示す文字列を上書き格納するために、ファームウェア上に定義された変数を概念的に示すものである。
次いで、レシート情報記録部52は、合計金額記録指示コマンドGCに基づいて、合計金額画像63を1枚のシートに記録し(ステップSC8)、処理手順をステップSC1に戻す。
【0029】
一方、ステップSC6において、読み出した制御コマンドが合計金額記録指示コマンドGCでないと判別した場合(ステップSC6:NO)、すなわち読み出した制御コマンドが、ロゴ記録指示コマンドLC、又は、取引内容記録指示コマンドTCである場合、レシート情報記録部52は、いずれかの制御コマンドに基づいて、ロゴ画像61、または、取引内容画像62を記録し(ステップSC9)、処理手順をステップSC1へ戻す。
【0030】
一方、ステップSC2において、読み出した制御コマンドがカットコマンドCCであると判別した場合(ステップSC2:「カットコマンド」)、レシート情報記録部52は、累積制御コマンドデータ70を参照し、当該カットコマンドCCの後に記述された発行日記録指示コマンドHCのうち、直近の発行日記録指示コマンドHCを取得する(ステップSC10)。
次いで、レシート情報記録部52は、ステップSC10で取得した直近の発行日記録指示コマンドHCにおける発行日を示す文字列と、変数H1に格納された発行日を示す文字列とが、一致するか否かを判別する(ステップSC11)。このステップSC11では、処理の対象となっているカットコマンドCCの直前に記述された記録コマンドKCによってその画像が記録された1のレシートと、当該カットコマンドCCの直後に記述された記録コマンドKCによってその画像が記録された次のレシートと、について、発行日が同じか否か、を判別している。
発行日を示す文字列が一致する場合(ステップSC11:YES)、レシート情報記録部52は、カットコマンドCCに基づいて、感熱ロール紙の切断に代えて、点線からなる点線画像TSの記録を実行する(ステップSC12)。
一方、発行日を示す文字列が一致しない場合(ステップSC11:NO)、レシート情報記録部52は、カットコマンドCCに基づいて、感熱ロール紙の切断に代えて、太い実線からなる実線画像GSの記録を実行する(ステップSC13)。
【0031】
図5の左側は、1枚のシートに連続してレシートに係る画像が記録された様子の一例を示す図である。また、図5の右側は、制御コマンドを模式的に示す図である。図5に示す1枚のシートでは、レシートR1〜R5の5つのレシートに係る画像が、順に、1枚のシートに記録されており、図5に示す制御コマンドでは、各レシートR1〜R5に対応して、制御コマンドS1〜S5が示されている。
図5において、レシートR1と、レシートR2とは、その発行日がそれぞれ「2011/1/1」で共通である。この場合において、ステップSC1で、制御コマンドS1に含まれるカットコマンドCC1が読み出された場合、ステップSC2、及び、ステップSC10を経由して、処理手順がステップSC11へ移行する。そして、このステップSC11において、制御コマンドS1における発行日記録指示コマンドHC1に係る発行日(変数H1に格納されている)と、制御コマンドS2における発行日記録指示コマンドHC2に係る発行日(ステップSC10で取得される)と、が一致するか否か判別され、一致するため(ステップSC11:YES)、カットコマンドCC1に基づいて、感熱ロール紙の切断に代えて、点線からなる点線画像TS1が記録される。
一方、図5において、レシートR2と、レシートR3とは、その発行日がそれぞれ「2011/1/1」と、「2011/1/2」とで異なっている。この場合において、ステップSC1で、制御コマンドS2に含まれるカットコマンドCC2が読み出された場合、ステップSC2、及び、ステップSC10を経由して、処理手順がステップSC11へ移行する。そして、このステップSC11において、制御コマンドS2における発行日記録指示コマンドHC2に係る発行日(変数H1に格納されている)と、制御コマンドS3における発行日記録指示コマンドHC3に係る発行日(ステップSC10で取得される)と、が一致するか否か判別され、一致しないため(ステップSC11:NO)、カットコマンドCC2に基づいて、感熱ロール紙の切断に代えて、太い実線からなる実線画像GS2が記録される。
【0032】
このように、本実施形態では、1枚のシートに記録される1のレシートに係る画像と、次のレシートに係る画像について、各レシートが発行された日が同じ場合と、異なる場合とで、カットコマンドCCに基づいてこれらレシートに係る画像の間に記録される所定の画像の態様が変わる。具体的には、発行日が同じ場合は点線画像TSが記録され、異なる場合は実線画像GSが記録される。このため、レシートに係る画像が連続して記録された1枚のシートを見る者は、実線画像GSを目印として、1枚のシートにおいて、レシートが発行された日が変わる境目を容易に認識可能である。
【0033】
さて、ステップSC12、又は、ステップSC13を実行した後、レシート情報記録部52は、変数H2に格納された合計金額を示す文字列に基づいて、合計金額の値を取得する(ステップSC14)。
次いで、レシート情報記録部52は、合計金額の値が異常値か否かを判別する(ステップSC15)。
ここで、本実施形態では、合計金額の値が予め定められた所定の閾値を上回っている場合、当該値を異常値とする旨定められている。この所定の閾値は、店舗における取引の実態を踏まえて、通常行われないような取引が行われていたり、また、合計金額の値が改変(改ざん)されていたりしている可能性があることを検出できるような適切な値とされている。ステップSC15では、レシート情報記録部52は、合計金額の値が当該所定の閾値を上回っている場合は、当該合計金額の値が異常値であると判別し、一方、当該合計金額の値が当該所定の閾値を下回っている場合は、当該後継金額の値が異常値でないと判別する。
ステップSC15において、合計金額の値が異常値でないと判別した場合(ステップSC15:NO)、レシート情報記録部52は、累積制御コマンドデータ70に記述された制御コマンドの読み出しが完了したか否かを判別する(ステップSC16)。読み出しが完了していない場合(ステップSC16:NO)、レシート情報記録部52は、処理手順をステップSC1へ戻し、完了している場合(ステップSC16:YES)、感熱ロール紙を切断し(ステップSC18)、処理を終了する。これにより、過去に発行したレシートの画像が連続して記録された1枚のシートの印刷出力が完了する。
一方、ステップSC15において、合計金額の値が異常値であると判別した場合(ステップSC15:YES)、レシート情報記録部52は、さらに、カットコマンドCCに基づいて、感熱ロール紙の切断に代えて、波線からなる波線画像NSを記録し(ステップSC17)、処理手順をステップSC16へ移行する。
ステップSC17の処理について、図5を用いて例を挙げて説明すると、図5において、レシートR4の合計金額は、「120000」である。ここで、上述した所定の閾値が「100000」であるとすると、レシートR4の合計金額の値は異常値である。この場合において、ステップSC1で、制御コマンドS4に含まれるカットコマンドCC4が読み出された場合、適切な各ステップを経由して、処理手順がステップSC15へ移行する。そして、このステップSC15において、合計金額を示す値が、所定の閾値を上回っているため、合計金額の値が異常と判別され(ステップSC15:YES)、カットコマンドCC4に基づいて、感熱ロール紙の切断に代えて、波線からなる波線画像NS4が記録される(ステップSC17)。
このように、本実施形態では、レシートに係る画像について、当該レシートにおける合計金額の値が以上である場合、点線画像TS、及び、実線画像GSと異なる態様の波線画像NSが記録される。このため、レシートに係る画像が連続して記録された1枚のシートを見る者は、波線画像NSを目印として、合計金額が異常値であるレシートに係る画像を容易に認識可能である。
【0034】
以上説明したように、本実施形態に係るプリンター26は、ホストコンピューター11から入力された、記録コマンドKC、及び、カットコマンドCCを含む制御コマンドに基づいて、ラインサーマルヘッド37、及び、カッターユニット38を制御して、感熱ロール紙に画像を記録して切断することによりレシートを発行するレシート発行部50と、ホストコンピューター11から入力された、レシートの発行に係る制御コマンドを累積制御コマンドデータ70によって累積的に記憶する制御コマンド記憶部51と、制御コマンド記憶部51によって記憶された累積制御コマンドデータ70に基づいて、1枚のシートに、過去に発行したレシートに係る画像を連続して記録するレシート情報記録部52と、を備えている。
そして、レシート情報記録部52は、1枚のシートに、複数の前記レシートの内容を連続して記録する際、累積制御コマンドデータ70において累積的に記憶された制御コマンドを順次読み出して実行することにより、1枚のシートにレシートに係る画像を記録していき、読み出した制御コマンドがカットコマンドCCである場合は、感熱ロール紙の切断に代えて、1枚のシートに所定の画像、具体的には、点線画像TS、実線画像GS、又は、波線画像NSを記録する。
この構成によれば、一続きの感熱ロール紙(1枚のシート)に、連続してレシートに係る画像を記録可能であると共に、1枚のシートにおいて、1のレシートに係る画像と、次のレシートに係る画像との間に、カットコマンドCCに対応する所定の画像が記録されることとなり、1枚のシートに記録された複数のレシートに係る画像について、レシートごとに見た目上の区別ができるようにできる。さらに、上記構成によれば、既存のカットコマンドCCを利用して、レシートに係る画像ごとに感熱ロール紙の切断を行うことなく、見た目上の区別を付けるための所定の画像を記録するため、累積制御コマンドデータ70を改変する必要がない。
【0035】
また、本実施形態では、レシート情報記録部52は、カットコマンドCCの読み出しに基づいて、1枚のシートに所定の画像を記録する場合、当該所定の画像の前に1枚のシートに記録されたレシートに係る画像の内容、及び、当該所定の画像の後に1枚のシートに記録されるべきレシートに係る画像の内容のうち、少なくとも一方に応じて、所定の画像を変更可能である。
より具体的には、レシート情報記録部52は、カットコマンドCCの読み出しに基づいて、1枚のシートに所定の画像を記録する場合、当該所定の画像の前に1枚のシートに記録されたレシートに係る画像における日付を表す画像(発行日画像60)が示す日付(発行日)と、当該所定の画像の後に1枚のシートに記録されるべきレシートに係る画像における日付を表す画像(発行日画像)が示す日付(発行日)と、が異なるか否かを判別し、異なる場合は、異ならない場合の画像(点線画像TS)に代えて、実線画像GSを記録する。
これによれば、レシートに係る画像が連続して記録された1枚のシートを見る者は、実線画像GSを目印として、1枚のシートにおいて、レシートが発行された日が変わる境目を容易に認識可能である。
なお、本実施形態では、日付が1日でも違えば、日付が異なると判別されることとなるが、これに限らず、月が異なる場合や、年が異なる場合に、日付が異なると判別するようにしてもよい。
【0036】
また、本実施形態では、レシート情報記録部52は、カットコマンドCCの読み出しに基づいて、1枚のシートに所定の画像を記録する場合、当該所定の画像の前に1枚のシートに記録されたレシートに係る画像の内容、及び、当該所定の画像の後に1枚のシートに記録されるべきレシートに係る画像の内容のうち、少なくともいずれか一方に、所定の異常があるか否かを判別し、異常がある場合は、前記所定の画像を変更する。
より具体的には、本実施形態では、レシートに係る画像について、当該レシートにおける合計金額の値が以上である場合、点線画像TS、及び、実線画像GSと異なる態様の波線画像NSが記録される。このため、レシートに係る画像が連続して記録された1枚のシートを見る者は、波線画像NSを目印として、合計金額が異常値であるレシートに係る画像を容易に認識可能である。
なお、本実施形態では、所定の画像の前に記録されているレシートに係る画像の内容に異常がある場合に、当該所定の画像の態様を変更する構成であるが、当該所定の画像の後に記録されるべきレシートに係る画像の内容に異常がある場合に、当該所定の画像の態様を変更する構成であってもよい。
また、本実施形態では、レシートにおける合計金額の値が所定の閾値を上回る場合に、レシートに係る画像の内容が異常であると判別しているが、判別方法はこれに限らず、例えば、商品の単価に異常がある場合や、レシートに税に関する情報が記録される場合は、当該税に関する情報に異常がある場合に、レシートに係る画像の内容が異常であると判別してもよい。すなわち、レシートに記録されるべき金額に基づいて、異常を検出するようにすれば、当該所定の画像の態様を代えることにより、何らかの不正が行われた可能性があることを効果的に示すことができる。
【0037】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、プリンター26は、サーマル式のプリンターであったが、プリンター26の記録形式はこれに限らず、インクジェット式、ドットインパクト式等であってもよい。すなわち、ホストコンピューター11から入力された制御コマンドを累積的に記憶する記録装置に対して、広く本発明を適用可能である。
また例えば、図1に示す各機能ブロックはハードウェアとソフトウェアの協働により任意に実現可能であり、特定のハードウェア構成を示唆するものではない。
また例えば、プリンター側制御部40の機能を、ホストコンピューター11に外部接続される別の装置に持たせるようにしてもよい。
また、外部接続される記憶媒体に記憶させたプログラムを実行することにより、図4で示した各フローチャートの各ステップを実行するようにしてもよい。
また、ホストコンピューター11が、レシート情報記録部52や、その他の機能ブロックに係る機能を実現する構成であってもよい。この場合、ホストコンピューター11と、プリンター26とが協働して、「記録装置」として機能する。
【符号の説明】
【0038】
10…記録システム、11…ホストコンピューター(制御装置)、26…プリンター(記録装置)、40…プリンター側制御部(制御部)、50…レシート発行部、51…制御コマンド記憶部、52…レシート情報記録部、GS…実線画像、NS…波線画像、TS…点線画像。

【特許請求の範囲】
【請求項1】
制御装置に接続可能な記録装置であって、
記録媒体に画像を記録する記録部と、
前記記録媒体を切断する切断部と、
前記制御装置から入力された制御コマンドに基づいて、前記記録部、及び、前記切断部を制御して、前記記録媒体に画像を記録して切断することによりレシートを発行するレシート発行部と、
前記レシートの発行に係る前記制御コマンドを累積的に記憶する制御コマンド記憶部と、
前記制御コマンド記憶部によって累積的に記憶された前記制御コマンドに基づいて、前記記録媒体に、複数の前記レシートに係る画像を連続して記録するレシート情報記録部と、を備え、
前記レシート情報記録部は、
前記記録媒体に複数の前記レシートの画像を連続して記録する際、
累積的に記憶された前記制御コマンドを順次読み出して実行することにより、前記記録媒体に前記レシートに係る画像を記録し、読み出した前記制御コマンドが前記記録媒体を切断させるカットコマンドである場合は、前記記録媒体の切断に代えて、前記記録媒体に所定の画像を記録することを特徴とする記録装置。
【請求項2】
前記レシート情報記録部は、
前記カットコマンドの読み出しに基づいて、前記記録媒体に前記所定の画像を記録する場合、
当該所定の画像の前に前記記録媒体に記録された前記レシートに係る画像の内容、及び、当該所定の画像の後に前記記録媒体に記録されるべき前記レシートに係る画像の内容のうち、少なくとも一方に応じて、前記所定の画像の態様を変更可能であることを特徴とする請求項1に記載の記録装置。
【請求項3】
前記レシートには、前記レシートを発行した日付を表す画像が記録され、
前記レシート情報記録部は、
前記カットコマンドの読み出しに基づいて、前記記録媒体に前記所定の画像を記録する場合、
当該所定の画像の前に前記記録媒体に記録された前記レシートに係る画像における日付を表す画像が示す日付と、当該所定の画像の後に前記記録媒体に記録されるべき前記レシートに係る画像における日付を表す画像が示す日付と、が異なるか否かを判別し、異なる場合は、前記所定の画像の態様を変更することを特徴とする請求項2に記載の記録装置。
【請求項4】
前記レシート情報記録部は、
前記カットコマンドの読み出しに基づいて、前記記録媒体に前記所定の画像を記録する場合、
当該所定の画像の前に前記記録媒体に記録された前記レシートに係る画像の内容、及び、当該所定の画像の後に前記記録媒体に記録されるべき前記レシートに係る画像の内容のうち、少なくともいずれか一方に、所定の異常があるか否かを判別し、当該所定の異常がある場合は、前記所定の画像の態様を変更することを特徴とする請求項2又は3に記載の記録装置。
【請求項5】
前記所定の異常とは、前記レシートに係る画像において、所定の金額を表す画像が示す金額が異常であることを特徴とする請求項4に記載の記録装置。
【請求項6】
制御装置に接続可能に構成され、
記録媒体に記録する記録部と、
前記記録媒体を切断する切断部と、
前記制御装置から入力された制御コマンドに基づいて、前記記録部、及び、前記切断部を制御して、前記記録媒体に画像を記録して切断することによりレシートを発行するレシート発行部と、を備える記録装置の制御方法であって、
前記レシートの発行に係る前記制御コマンドを累積的に記憶すると共に、
累積的に記憶された前記制御コマンドを順次読み出して実行することにより、前記記録媒体に前記レシートに係る画像を記録し、読み出した前記制御コマンドが前記記録媒体を切断させるカットコマンドである場合は、前記記録媒体の切断に代えて、前記記録媒体に所定の画像を記録することにより、前記記録媒体に、複数の前記レシートに係る画像を連続して記録することを特徴とする記録装置の制御方法。
【請求項7】
制御装置に接続可能に構成され、
記録媒体に記録する記録部と、
前記記録媒体を切断する切断部と、
前記制御装置から入力された制御コマンドに基づいて、前記記録部、及び、前記切断部を制御して、前記記録媒体に画像を記録して切断することによりレシートを発行するレシート発行部と、を備える記録装置を制御する制御部により実行されるプログラムであって、
前記制御部を、
前記レシートの発行に係る前記制御コマンドを累積的に記憶する制御コマンド記憶部と、
前記制御コマンド記憶部により累積的に記憶された前記制御コマンドを順次読み出して実行することにより、前記記録媒体に前記レシートに係る画像を記録し、読み出した前記制御コマンドが前記記録媒体を切断させるカットコマンドである場合は、前記記録媒体の切断に代えて、前記記録媒体に所定の画像を記録することにより、前記記録媒体に、複数の前記レシートに係る画像を連続して記録するレシート情報記録部と、として機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2013−114537(P2013−114537A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2011−261495(P2011−261495)
【出願日】平成23年11月30日(2011.11.30)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】