JP6287215B2 - Pos制御システム、印刷装置、及びpos制御システムの制御方法 - Google Patents

Pos制御システム、印刷装置、及びpos制御システムの制御方法 Download PDF

Info

Publication number
JP6287215B2
JP6287215B2 JP2014001450A JP2014001450A JP6287215B2 JP 6287215 B2 JP6287215 B2 JP 6287215B2 JP 2014001450 A JP2014001450 A JP 2014001450A JP 2014001450 A JP2014001450 A JP 2014001450A JP 6287215 B2 JP6287215 B2 JP 6287215B2
Authority
JP
Japan
Prior art keywords
data
unit
print
communication
control
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
Application number
JP2014001450A
Other languages
English (en)
Other versions
JP2015130092A (ja
JP2015130092A5 (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 JP2014001450A priority Critical patent/JP6287215B2/ja
Priority to CN201410836406.3A priority patent/CN104765579B/zh
Priority to US14/591,490 priority patent/US9224138B2/en
Priority to EP15150457.8A priority patent/EP2894559A1/en
Publication of JP2015130092A publication Critical patent/JP2015130092A/ja
Priority to US14/851,256 priority patent/US9406204B2/en
Publication of JP2015130092A5 publication Critical patent/JP2015130092A5/ja
Application granted granted Critical
Publication of JP6287215B2 publication Critical patent/JP6287215B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、印刷装置を有するPOS制御システム、印刷装置、及びPOS制御システムの制御方法に関する。
従来、POS端末と、印刷装置とが通信可能に接続され、印刷装置が、POS端末の制御に従って、印刷を実行するシステムが知られている(例えば、特許文献1参照)。この種のシステムでは、通常、POS端末が印刷装置に印刷制御データを送信し、印刷装置は、印刷制御データに基づいて印刷を実行する。また、印刷装置を、ネットワークを介してサーバー等の制御装置に接続し、印刷装置が制御装置とネットワークを介して通信するシステムが知られている。
特開2011−108097号公報
上述したシステムのように、POS端末から印刷装置に印刷制御データを送信するシステムについて、印刷装置を、サーバー等の制御装置にネットワークを介して接続する場合、POS端末が印刷装置に送信する印刷制御データを利用して、制御装置による処理を実行できるようにしたいとするニーズがある。また、この場合、システムを、印刷装置と制御装置とがネットワークを介して通信する構成に対応させる必要がある。
本発明は、上述した事情に鑑みてなされたものであり、POS端末から印刷装置に印刷制御データを送信するPOS制御システムについて、印刷装置にネットワークを介して接続された制御装置が印刷制御データに基づく処理をできるようにし、また、システムを、印刷装置と制御装置とがネットワークを介して通信する構成に対応させることを目的とする。
上記目的を達成するために、本発明のPOS制御システムは、決済処理に基づいて印刷制御データを生成する制御部、及び前記印刷制御データを送信する通信部を有するPOS端末と、印刷を行う印刷部、前記印刷制御データに基づいて前記印刷部を制御する印刷制御部、前記POS端末と接続して前記印刷制御データを受信する通信接続部、及び前記印刷制御データを通信経路により非同期の双方向通信で送信する印刷データ通信部を有する印刷装置と、前記印刷装置の前記印刷データ通信部で送信された前記印刷制御データを前記通信経路で受信する受信部、及び受信した前記印刷制御データに基づく処理を行う印刷データ処理部を有する制御装置と、を備えることを特徴とする。
本発明の構成によれば、POS端末から印刷装置に対して送信された印刷制御データは、印刷データ通信部の機能によって制御装置に送信される。このため、制御装置は、受信した印刷制御データに基づいて、対応する処理を実行できる。また、印刷装置は、非同期の双方向通信で印刷制御データを制御装置に送信する。従って、印刷装置は、POS端末から印刷制御データを受信した場合、制御装置との間で通信の同期をとることなく、制御装置に印刷制御データを送信できる。このため、POS端末から印刷装置に印刷制御データを送信するPOS制御システムについて、印刷装置にネットワークを介して接続された制御装置が印刷制御データに基づく処理をできるようにでき、当該システムを、印刷装置と制御装置とがネットワークを介して通信する構成に対応させることができる。
また、前記印刷制御データは、バイナリーデータであり、前記制御装置の前記印刷データ処理部は、前記印刷制御データに含まれる文字列を抽出し、抽出した文字列を含むテキストデータを生成する。
本発明の構成によれば、制御装置は、印刷制御データから抽出された文字列のテキストを含むテキストデータを生成する。テキストデータは、文字列検索によるデータ分析が可能なデータであり、データの利用性が高い。制御装置は、受信した印刷制御データを、利用性の高いデータに変換できる。
また、前記制御装置は、前記印刷制御データと前記テキストデータとを対応付けて記憶する記憶部を有する。
本発明の構成によれば、制御装置は、印刷制御データと、印刷制御データに基づくテキストデータを記憶するため、後に、いずれかのデータを分析し、情報を得ることが可能である。また、印刷制御データを記憶することにより、印刷制御データに基づいてテキストデータを生成する際に欠落する情報も、記憶できる。また、印刷制御データを記憶するため、印刷制御データを利用した再印刷を行える。
また、前記印刷装置は、前記POS端末で送信した前記印刷制御データを、前記印刷制御部及び前記印刷データ通信部に送信する通信制御部を有する。
本発明の構成によれば、通信制御部の機能により、印刷制御データを印刷制御部に送信して印刷部により印刷を行い、印刷制御データを印刷データ通信部に送信して、この印刷データ通信部の機能により印刷制御データを制御装置に送信できる。
また、前記印刷装置の前記印刷制御部は、前記印刷部による印刷を行った後、印刷を行ったことを示す通知データを前記通信制御部に送信し、前記印刷装置の通信制御部は、前記通知データを受信した後、前記印刷制御データを前記印刷データ通信部に送信する。
本発明の構成によれば、印刷装置は、印刷部による印刷が完了した後、行われた印刷に対応する印刷制御データを、制御装置に送信できる。
また、前記非同期の双方向通信は、WebSocket通信である。
本発明の構成によれば、印刷装置と、制御装置は、WebSocket通信により非同期の双方向通信を行える。
また、本発明の印刷装置は、外部装置と接続して前記外部装置で送信された印刷制御データを受信する通信接続部と、前記印刷制御データに基づいて印刷部を制御する印刷制御部と、前記印刷制御データを非同期の双方向通信で送信する印刷データ通信部と、を有する。
本発明の構成によれば、POS端末等の外部装置から印刷装置に送信された印刷制御データを、制御サーバーに非同期の双方向通信で送信し、制御サーバーで印刷制御データに基づく対応する処理を実行できる。また、印刷装置は、非同期の双方向通信で印刷制御データを送信する。従って、印刷装置は、POS端末から印刷制御データを受信した場合、通信の同期をとることなく、印刷制御データを送信できる。
また、本発明のPOS制御システムの制御方法は、POS端末で決済処理を行って、前記決済処理に基づく印刷制御データを生成し、生成された前記印刷制御データを印刷装置に送信し、前記印刷制御データを受信した前記印刷装置で、前記印刷制御データに基づく印刷を実行し、前記印刷装置で前記印刷制御データに基づく印刷を実行した後に、前記印刷制御データを非同期の双方向通信で制御装置に送信することを特徴とする。
本発明の構成によれば、POS端末から印刷装置に対して送信された印刷制御データは、印刷制御部の機能によって制御装置に送信される。このため、制御装置は、受信した印刷制御データに基づいて、対応する処理を実行できる。また、印刷装置は、非同期の双方向通信で印刷制御データを制御装置に送信する。従って、印刷装置は、POS端末から印刷制御データを受信した場合、制御装置との間で通信の同期をとることなく、制御装置に印刷制御データを送信できる。
本実施形態に係る制御システムの構成を示す図。 制御サーバーと印刷装置との間で確立される通信経路を示す図。 制御システムの各装置の機能的構成を示すブロック図。 印刷装置と制御サーバーとの動作を示すフローチャート。 レシート、及び、印刷制御データを示す図。 制御システムの各装置の動作を示すフローチャート。 制御システムの各装置の動作を示すフローチャート。 抽出文字列データを示す図。 制御サーバーが備えるデータベースのレコードのデータ構造を示す図。 印刷装置の動作を示すフローチャート。 印刷装置と制御サーバーとの動作を示すフローチャート。
以下、図面を参照して本発明の実施形態について説明する。
図1は、本実施形態に係るPOS制御システム1の構成を示す図である。
図1に示すように、POS制御システム1は、制御サーバー10を備え、制御サーバー10にインターネット等のネットワークGNを介して複数の店舗システム11を接続する。また、ネットワークGNは、複数の管理装置14を接続する。
店舗システム11は、スーパーマーケットや、コンビニエンスストア、デパート、飲食店等の店舗に用いられるシステムである。店舗システム11は、店舗に来店した顧客に対してレシートを発行する機能を備える。
店舗システム11は、印刷媒体に印刷を行う印刷機能を有し、レシートを発行可能な1又は複数の印刷装置12を備える。印刷装置12は、店舗内に構築されたローカルエリアネットワークLNに接続される。ローカルエリアネットワークLNは、ネットワークルーターや、モデム等の通信機器を含んで構成されたネットワーク通信制御装置13を接続する。印刷装置12は、ネットワーク通信制御装置13を介して、ネットワークGNにアクセスする。
店舗システム11において、印刷装置12は、POS端末8と接続する。POS端末8は、POSアプリケーション及びプリンタードライバーがインストールされ、これらプログラムの機能により、印刷装置12を制御する。後述するように、プリンタードライバーは、印刷装置12のコマンド体系に従った印刷制御データを生成する機能を有する。POS端末8は、プリンタードライバーの機能により、印刷装置12にレシートを発行させる印刷制御データを生成し、送信して、印刷装置12を制御する。図示は省略するが、POS端末8には、商品や商品の包装に付されたバーコードを読み取るバーコードリーダーや、顧客の会員カード等のカードを読み取るカードリーダーが接続される。また、POS端末8は、図示しないPOSサーバーにアクセスし、POSサーバーが記憶する商品マスター、顧客マスターから所定の情報を取得可能である。POS端末8は、店舗に来店した顧客の会計に際し、バーコードリーダーや、カードリーダーからの入力、また、テンキー等の入力手段に対するレジ担当者の入力に基づいて、商品マスターや顧客マスターから情報を取得して、印刷制御データを生成する。
図1において、店舗システム11Aは、スーパーマーケットSMに用いるシステムである。スーパーマーケットSMには、複数のレジカウンターRCが設けられ、レジカウンターRCには、印刷装置12、及び、POS端末8が設けられる。レジカウンターRCで、POS端末8は、会計に応じて、印刷装置12に印刷制御データを送信し、印刷装置12にレシートを発行させる。店舗システム11Aの印刷装置12は、ローカルエリアネットワークLNに接続され、ネットワーク通信制御装置13を介して、ネットワークGNにアクセスする。
本実施形態に係るPOS制御システム1で、店舗システム11の印刷装置12は、制御サーバー10との間で通信経路を確立し、制御サーバー10と通信する。詳細は後述するが、制御サーバー10は、印刷装置12との間で確立された通信経路により、POS端末8が印刷装置12に対して送信したデータを取得し、取得したデータに基づいて対応する処理を実行する。
管理装置14は、1又は複数の店舗システム11を管理する装置である。例えば、管理装置14は、店舗を運営する企業の本社に設けられ、当該店舗を運営する企業のグループの複数の店舗に設けられた店舗システム11を管理する。詳細は後述するが、管理装置14は、POS端末8から印刷装置12に送信されたデータに基づくデータを取得し、取得したデータに基づいて対応する処理を実行する。
図2は、POS制御システム1における制御サーバー10と、印刷装置12との間に確立される通信経路を示す図である。
図2に示すように、POS制御システム1において、制御サーバー10と、店舗システム11の印刷装置12との間には、WebSocket通信を行うWebSocketコネクションCTが確立される。
なお、WebSocketは、非同期な双方向通信を可能とする通信規格の1つである。WebSocketでは、サーバーとクライアントがWebSocketコネクションCTを確立した後は、データの送受信を、当該コネクションによりWebSocketのプロトコルを用いて行う。このため、データの送信が発生する度に、コネクションを確立する必要がない。
また、WebSocketコネクションCTは、当該コネクションで接続された印刷装置12と、制御サーバー10との間で、WebSocketの規格、手続きに従ってデータを送受信する論理的な通信経路である。従って、印刷装置12と、制御サーバー10との間で、所定のハンドシェイクが行われ、WebSocketコネクションCTを確立した後は、印刷装置12と制御サーバー10とは、WebSocketコネクションCTにより、非同期にデータを送受信できる。制御サーバー10は、任意のタイミングでWebSocketコネクションCTにより印刷装置12にデータを送信でき、印刷装置12は、任意のタイミングでWebSocketコネクションCTにより制御サーバー10にデータを送信できる。
また、WebSocket通信は、WebSocketコネクションCTにより印刷装置12と制御サーバー10との間で行われる、WebSocketのプロトコル、手続きに従った非同期な双方向通信である。
WebSocketコネクションCTの確立で、印刷装置12、及び、制御サーバー10は、非同期で、双方向通信できる。制御サーバー10は、クライアントとしての印刷装置12からリクエストを受けることなく、任意のタイミングで、WebSocketコネクションCTによりWebSocket通信で印刷装置12にデータをプッシュ送信できる。同様に、印刷装置12は、任意のタイミングで、WebSocketコネクションCTで制御サーバー10に対してデータをプッシュ送信できる。
本実施形態では、後述するように、印刷装置12が複数の機能部(後述)を有し、複数の機能部に応じて、制御サーバー10との間でWebSocketコネクションCTが確立される。従って、1台の印刷装置12と制御サーバー10との間で、複数のWebSocketコネクションCTが確立される。
また、図2に示すように、制御サーバー10は、複数の管理装置14を通信可能に接続する。
本実施形態において、制御サーバー10は、印刷装置12、及び、管理装置14をクライアントとする、いわゆるクラウドシステムにおけるクラウドサーバーである。制御サーバー10は、演算処理機能を有し、印刷装置12の要求や、管理装置14の要求、所定の条件の成立等をトリガーとして所定の演算処理を実行し、演算処理の結果に基づくデータをWebSocketコネクションCTで印刷装置12や、管理装置14に送信する。
なお、図2では、制御サーバー10を、1つのブロックによって表現するが、これは、制御サーバー10が単一のサーバー装置により構成されることを意味するものではない。例えば、制御サーバー10は、複数のサーバー装置を含んで構成されたものであってもよく、所定のシステムの一部の機能により実現されるサーバーであってもよい。後述する各種処理を実現可能な構成であれば、その形態を問わない。
また、本実施形態では、制御サーバー10と印刷装置12との間で、WebSocket通信を行う。しかしながら、これら装置が、WebSocket通信に代えて、WebSocket通信と同様な非同期な双方向通信を行う構成であってもよい。
このように、POS制御システム1で、印刷機能を有する印刷装置12が、複数台(例えば、1000台)、WebSocketコネクションCTにより、制御サーバー10と通信可能に接続される。
このような構成のため、以下の効果を得ることができる。
制御サーバー10は、複数の店舗システム11に接続された複数の印刷装置12から受信したデータを収集し、収集したデータに基づく情報を管理、分析できる。このため、制御サーバー10は、情報を蓄積することができる。蓄積した情報は、いわゆるビッグデータとして活用可能である。また、制御サーバー10は、印刷装置12から受信したデータについて、ネットワークGNを介して管理装置14を含む外部機器に送信できる。
また、印刷装置12に、制御サーバー10の機能により、POS端末8の制御に基づく印刷処理以外の処理を実行させることができる。特に、本実施形態に係るPOS制御システム1の構成で、印刷装置12をネットワークGNに接続するという簡易な作業により、制御サーバー10の機能によって印刷装置12に各種処理を実行させることができる。また、後述するように、本実施形態では、印刷装置12とPOS端末8とが接続された既存のシステムに改変を加えず、または、既存のシステムに影響を与えることなく、印刷装置12が制御サーバー10の機能を用いて各種処理を実行する。
また、制御サーバー10に、異なる店舗システム11の印刷装置12がWebSocketコネクションCTで接続されるため、制御サーバー10は、複数の店舗システム11に接続された複数の印刷装置12を管理できる。また、制御サーバー10は、複数の店舗システム11に接続された複数の印刷装置12を動作させることが可能となる。
図3は、本実施形態に係る印刷装置12、POS端末8、制御サーバー10、及び、管理装置14の機能的構成を示すブロック図である。
なお、図3では、印刷装置12を示すブロック内で、基板(インターフェース基板20、及び、プリンター基板21)を示すブロック内に、機能ブロックを表示する。これは、1の機能ブロックの機能が、当該1の機能ブロックに対応する基板に実装されたハードウェア(CPU等)と、所定のソフトウェアとにより実現されることを意味する。
図3に示すように、印刷装置12は、インターフェース基板20と、プリンター基板21とを備え、これら基板が、インターフェース基板20に設けられた第1コネクター22と、プリンター基板21に設けられた第2コネクター23により接続される。
印刷装置12のインターフェース基板20は、通信制御部25と、印刷データ通信部26と、バーコードリーダーデータ通信部27と、カードリーダーデータ通信部28と、印刷制御部29と、第1通信部30と、第2通信部31と、第3通信部32と、USB通信接続部34(通信接続部)と、LAN通信接続部35(通信接続部)と、シリアル通信接続部36(通信接続部)と、バーコードリーダー送受信部37と、カードリーダー送受信部38と、印刷装置記憶部39と、を備える。
通信制御部25、印刷データ通信部26、バーコードリーダーデータ通信部27、カードリーダーデータ通信部28、印刷制御部29、第1通信部30、第2通信部31、及び、第3通信部32の機能については後述する。
ここで、POS端末8は、USB、イーサネット(登録商標)、又は、RS232C等のシリアル通信規格のいずれかの通信規格に従って印刷装置12と通信可能である。
USB通信接続部34は、図示しないUSBポートに接続され、USBケーブルを介して接続されたPOS端末8とUSBの規格で通信する。
また、LAN通信接続部35は、図示しないLANポートに接続され、LANケーブルを介して接続されたPOS端末8とイーサネットの規格で通信する。
また、シリアル通信接続部36は、図示しないシリアルポートに接続され、シリアルケーブルを介して接続されたPOS端末8とシリアル通信規格で通信する。
バーコードリーダー送受信部37は、バーコードリーダーデータ通信部27の制御で、所定の規格のポートに接続されたバーコードリーダーBRと、所定の規格で通信する。バーコードリーダーBRは、バーコードを光学的に読み取る装置である。
カードリーダー送受信部38は、カードリーダーデータ通信部28の制御で、所定の規格のポートに接続されたカードリーダーCRと、所定の規格で通信する。カードリーダーCRは、カードに記録された情報を読み取る装置である。
印刷装置記憶部39は、各種データを記憶する。印刷装置記憶部39は、第1通信先情報データ391a、第2通信先情報データ392a、第3通信先情報データ393a、及び、印刷装置識別情報データ39bを記憶するが、これらデータについては後述する。
印刷装置12のプリンター基板21は、プリンター制御部40を備える。プリンター制御部40の機能については、後述する。
また、印刷装置12は、印刷部41を備える。印刷装置12は、印刷媒体のロール紙がセットされる。印刷部41は、ロール紙に印刷する印刷機構、ロール紙を搬送する搬送機構、ロール紙を切断する切断機構等のレシートを発行する各種機構、装置を備える。
以下の説明では、印刷データ通信部26、バーコードリーダーデータ通信部27、及び、カードリーダーデータ通信部28を区別せずに表現する場合、これら機能ブロックを総称して「機能部」と表現する。
図3に示すように、POS端末8は、POS端末制御部45(制御部)と、端末通信インターフェース46(通信部。以下、「端末通信I/F46」と表現する。)と、を備える。
POS端末制御部45は、CPUや、ROM、RAM、その他の回路等を備え、POS端末8を制御する。POS端末制御部45は、機能ブロックとして、POSアプリケーション実行部45a、及び、プリンタードライバー実行部45bを備える。
POSアプリケーション実行部45aの機能は、POS端末8にインストールされたPOSアプリケーションにより実行される。POSアプリケーション実行部45aは、レジカウンターRCで行われた会計に応じて、上述したバーコードリーダーや、カードリーダーからの入力、テンキー等の入力手段に対するレジ担当者の入力に基づいて、商品マスターや顧客マスターから情報を取得して、印刷に関する情報を含む印刷情報データを生成し、プリンタードライバー実行部45bに送信する。
プリンタードライバー実行部45bは、POS端末8にインストールされたプリンタードライバーの機能により実行される。プリンタードライバー実行部45bは、POSアプリケーション実行部45aから受信した印刷情報データに基づいて、印刷装置12の印刷部41のコマンド体系に従って印刷制御データを生成し、送信する。
端末通信I/F46は、POS端末制御部45の制御で、印刷装置12と所定の通信規格で通信する。
本実施形態では、POS端末制御部45と、印刷装置12とは、USBケーブルで接続され、USBの規格で通信する。
図3に示すように、制御サーバー10は、通信管理部50と、印刷データ処理部51と、バーコードリーダー処理部52と、カードリーダー処理部53と、第1接続部54と、第2接続部55と、第3接続部56と、制御サーバー記憶部57(記憶部)と、制御サーバー通信インターフェース58(以下、「制御サーバー通信I/F58」と表現する。)と、を備える。
通信管理部50、印刷データ処理部51、バーコードリーダー処理部52、カードリーダー処理部53、第1接続部54、第2接続部55、及び、第3接続部56の機能については後述する。
制御サーバー記憶部57は、各種データを記憶する。制御サーバー記憶部57は、コネクション管理データベース57a、印刷制御データデータベース57b(以下、「印刷制御データDB57b」と表現する。)、管理装置管理データベース57c(以下、「管理装置管理DB57c」と表現する。)、会員番号データデータベース57d(以下、「会員番号データDB57d」と表現する。)、及び、店舗情報管理データベース57e(以下、「店舗情報管理DB57e」と表現する。)を記憶する。これらデータについては後述する。
制御サーバー通信I/F58は、ネットワークGNを介して、管理装置14を含む外部機器と所定の通信規格で通信する。
図3に示すように、管理装置14は、管理装置制御部70と、管理装置通信インターフェース71(以下、「管理装置通信I/F71」と表現する。)と、管理装置記憶部72と、を備える。
管理装置制御部70は、CPUや、ROM、RAM、その他の周辺回路等を備え、管理装置14を制御する。
管理装置通信I/F71は、ネットワークGNを介して、制御サーバー10と通信する。
管理装置記憶部72は、各種データを記憶する。管理装置記憶部72は、条件データベース72aを記憶するが、これについては後述する。
なお、図3では、制御サーバー10と、制御サーバー10に接続された1つの印刷装置12との関係を示す。制御サーバー10に、複数の印刷装置12が接続される場合は、制御サーバー10は、複数の印刷装置12との間でWebSocketコネクションCTを確立し、印刷装置12とWebSocketコネクションCTでWebSocket通信する。
図3に示すように、印刷装置12は、印刷データ通信部26、バーコードリーダーデータ通信部27、及び、カードリーダーデータ通信部28の3つの機能部を備える。そして、印刷装置12と制御サーバー10との間では、3つの機能部に応じて、3つのWebSocketコネクションCTが確立される。具体的には、印刷データ通信部26に対応する第1WebSocketコネクションCT1、カードリーダーデータ通信部28に対応する第2WebSocketコネクションCT2、及び、バーコードリーダーデータ通信部27に対応する第3WebSocketコネクションCT3が確立される。
以下、WebSocketコネクションCTの確立時の印刷装置12、及び、制御サーバー10の動作について、第3WebSocketコネクションCT3を確立する場合を例にして説明する。
図4は、第3WebSocketコネクションCT3の確立時の印刷装置12、及び、制御サーバー10の動作を示すフローチャートである。(A)は印刷装置12の動作を示し、(B)は制御サーバー10の動作を示す。
以下の説明では、フローチャートの開始時点で、印刷装置12は、対応する店舗システム11のローカルエリアネットワークLNに接続され、ネットワークGNにアクセス可能である。
また、図4に示すフローチャートが示す動作は、印刷装置12の電源がオンされた場合や、印刷装置12がネットワークGNに通信可能に接続された場合、ユーザーから指示があった場合等に実行される。
また、以下の説明において、印刷装置12が備える通信制御部25、印刷データ通信部26、バーコードリーダーデータ通信部27、カードリーダーデータ通信部28、印刷制御部29、及び、制御サーバー10が備える印刷データ処理部51、バーコードリーダー処理部52、カードリーダー処理部53の機能は、以下のようにして実現される。
例えば、これら機能ブロックは、オブジェクトである。オブジェクトとは、オブジェクト指向プログラミングで生成されるインスタンス、すなわち、データ及びメソッドの集合として定義された機能ブロックである。そして、これら機能ブロックの機能は、機能ブロックに実装されたメソッドが呼び出されることによって実行される。
また、これら機能ブロックの機能は、アプリケーションがCPU等のハードウェアによって読み出され実行されることによって、実行される。1つのアプリケーションにより1つの機能ブロックの機能が実行される構成であってもよい。また、1つのアプリケーションにより複数の機能ブロックの機能が実行される構成であってもよい。また、複数のアプリケーションにより1つの機能ブロックの機能が実行される構成であってもよい。
機能ブロックは、機能をブロックとして表現したものであり、特定のアプリケーションや、ハードウェア等を意味するものではない。
図4(A)に示すように、印刷装置12のバーコードリーダーデータ通信部27は、バーコードリーダーBRと通信可能となったか否かを監視する(ステップSA1)。
バーコードリーダーデータ通信部27とバーコードリーダーBRとが通信可能となる場合とは、印刷装置12にバーコードリーダーBRが接続された場合である。また、バーコードリーダーBRが電源を有する場合は、接続されたバーコードリーダーBRの電源がオンとなった場合である。
バーコードリーダーBRと通信可能となった場合(ステップSA1)、バーコードリーダーデータ通信部27は、印刷装置記憶部39にアクセスし、印刷装置記憶部39が記憶する第3通信先情報データ393aを取得する(ステップSA2)。
第3通信先情報データ393aは、第3WebSocketコネクションCT3を確立する際に、アクセスする制御サーバー10のアドレス(ドメイン名、IPアドレス、パス名等。)を示すデータである。ここで、WebSocketで、WebSocketコネクションCTの確立時に、クライアント(本例では、印刷装置12)は、サーバー(本例では、制御サーバー10)に対して、HTTP(Hypertext Transfer Protocol)に基づくハンドシェイクを行う。ハンドシェイクで、クライアントは、サーバーのアドレスが含まれるメッセージ等のメッセージを送信するが、第3通信先情報データ393aは、アクセス先のアドレスが含まれる。
印刷装置12の機能部に応じて、WebSocketコネクションCTを確立するときのアクセス先のアドレスが異なる。本例では、印刷制御部17と、バーコードリーダーデータ通信部27と、カードリーダーデータ通信部28とは、種類が異なる機能部である。そして、印刷データ通信部26が第1WebSocketコネクションCT1を確立するときにアクセスするアドレスと、カードリーダーデータ通信部28が第2WebSocketコネクションCT2を確立するときにアクセスするアドレスと、バーコードリーダーデータ通信部27が第3WebSocketコネクションCT3を確立するときにアクセスするアドレスは異なる。印刷装置記憶部39は、第1通信先情報データ391a、第2通信先情報データ392a、及び、第3通信先情報データ393aを記憶する。第1通信先情報データ391aは印刷データ通信部26が第1WebSocketコネクションCT1を確立するときにアクセスするアドレスを含む。第2通信先情報データ392aはカードリーダーデータ通信部28が第2WebSocketコネクションCT2を確立するときにアクセスするアドレスを含む。第3通信先情報データ393aはバーコードリーダーデータ通信部27が第3WebSocketコネクションCT3を確立するときにアクセスするアドレスを含む。
次いで、バーコードリーダーデータ通信部27は、第3通信先情報データ393aが示すアドレスに基づいて制御サーバー10にアクセスする。そして、バーコードリーダーデータ通信部27は、制御サーバー10のバーコードリーダー処理部52と、第3通信部32と第3接続部56との間に、第3WebSocketコネクションCT3を確立する(ステップSA3、ステップSB1)。印刷装置12のバーコードリーダーデータ通信部27は、制御サーバー10からの要求を受けることなく、バーコードリーダーBRと通信可能となったことをトリガーとして第3WebSocketコネクションCT3を確立する。
第3通信部32、及び、第3接続部56は、WebSocketの規格、手続きに従ってデータの送受信を行うWebSocketインターフェースである。これら機能ブロックは、例えば、WebSocketのSocketライブラリーを用いて生成される。
第3通信部32は、バーコードリーダーデータ通信部27から受信したデータについて、WebSocketの規格に従って処理を行い、WebSocketの手続きで第3WebSocketコネクションCT3によりデータを送信する機能を有する。また、第3通信部32は、第3WebSocketコネクションCT3により受信したデータについて、WebSocketに従った処理を行って、バーコードリーダーデータ通信部27に送信する機能を有する。第1通信部30、第2通信部31、第1接続部54、第2接続部55、及び、第3接続部56についても同様である。
次いで、バーコードリーダーデータ通信部27は、印刷装置記憶部39にアクセスし、印刷装置記憶部39が記憶する印刷装置識別情報データ39bを取得する(ステップSA4)。印刷装置識別情報データ39bは、印刷装置12の識別情報(以下、「印刷装置識別情報」という。)を示すデータである。印刷装置識別情報は、例えば、印刷装置12の製造段階で、印刷装置12に割り当てられるシリアル番号である。
次いで、バーコードリーダーデータ通信部27は、印刷装置識別情報データ39bを第3通信部32に送信する(ステップSA5)。
第3通信部32は、受信した印刷装置識別情報データ39bを、第3WebSocketコネクションCT3で、制御サーバー10に送信する(ステップSA6)。
図4(B)に示すように、制御サーバー10の第3接続部56は、第3WebSocketコネクションCT3で、印刷装置識別情報データ39bを受信する(ステップSB2)。次いで、第3接続部56は、受信した印刷装置識別情報データ39bを通信管理部50に送信する(ステップSB3)。
通信管理部50は、制御サーバー記憶部57が記憶するコネクション管理データベース57aにアクセスする(ステップSB4)。コネクション管理データベース57aは、印刷装置12との間で確立しているWebSocketコネクションCTについて、WebSocketコネクションCTの識別情報であるコネクション識別情報と、印刷装置12の印刷装置識別情報とを対応付けて記憶するデータベースである。次いで、通信管理部50は、コネクション管理データベース57aに1件のレコードを生成する。そして、通信管理部50は、生成したレコードにおいて、ステップSB1で確立したWebSocketコネクションCT(本例では、第3WebSocketコネクションCT3)のコネクション識別情報と、受信した印刷装置識別情報データ39bが示す印刷装置識別情報とを対応付けて記憶する(ステップSB5)。通信管理部50は、WebSocketコネクションCTが確立したときに、既に確立しているWebSocketコネクションCTのコネクション識別情報と異なる値のコネクション識別情報を生成する。ステップSB5の処理により、WebSocketコネクションCTと、印刷装置12との対応関係が管理される。
このように、印刷装置12のバーコードリーダーデータ通信部27は、制御サーバー10からの要求を受けることなく、バーコードリーダーBRと通信可能となったことをトリガーとして第3WebSocketコネクションCT3を確立する。このような構成のため、ユーザーは、第3WebSocketコネクションCT3を確立するために、煩雑な作業を行う必要がない。また、ユーザーは、WebSocketコネクションCTを確立するために、専門的な知識も必要ない。
また、バーコードリーダーBRが通信可能となり、バーコードリーダーBRからバーコードリーダーデータ通信部27に対してデータが送信される可能性が生じた後に、第3WebSocketコネクションCT3が確立される。このため、不必要に第3WebSocketコネクションCT3を確立する処理が行われず、また、不必要に第3WebSocketコネクションCT3が確立された状態が維持されず、リソースの有効活用を実現できる。
以上、第3WebSocketコネクションCT3確立時の印刷装置12及び制御サーバー10の動作を説明したが、第1WebSocketコネクションCT1、及び、第2WebSocketコネクションCT2の確立時も同様の処理が行われる。
以下、第1WebSocketコネクションCT1の確立時の処理について説明する。
印刷装置12の電源がオンされると、印刷データ通信部26は、通信制御部25からデータを受信したか否かを監視する。通信制御部25が印刷データ通信部26にデータを送信する処理については後に詳述する。
印刷装置12の電源のオン後に、通信制御部25から印刷制御データを受信した場合、印刷データ通信部26は、制御サーバー10の印刷データ処理部51と、第1通信部30と第1接続部54との間に第1WebSocketコネクションCT1を確立する。当該コネクションの確立に応じて、通信管理部50は、コネクション管理データベース57aに、当該コネクションのコネクション識別情報と、印刷装置12の印刷装置識別情報とを対応付けて記憶する。
このように、印刷装置12の印刷データ通信部26は、電源のオン後に通信制御部25からデータを受信したことをトリガーとして、第1WebSocketコネクションCT1を確立する。当該コネクションの確立後は、印刷データ通信部26は、当該コネクションにより、データの送受信を行う。
次に、第2WebSocketコネクションCT2の確立時の処理について、図4のフローチャートを援用して説明する。
図4(A)のステップSA1において、印刷装置12のカードリーダーデータ通信部28は、カードリーダーCRと通信可能となったか否かを監視する。カードリーダーデータ通信部28とカードリーダーCRとが通信可能となる場合とは、例えば、印刷装置12にカードリーダーCRが接続された場合である。また、カードリーダーCRが電源を有する場合は、接続されたカードリーダーCRの電源がオンとなった場合である。
カードリーダーCRが通信可能となった場合(ステップSA1:YES)、カードリーダーデータ通信部28は、上記で説明した方法と同様の方法で、第2WebSocketコネクションCT2を確立する。制御サーバー10の通信管理部50は、コネクション管理データベース57aに、第2WebSocketコネクションCT2のコネクション識別情報と印刷装置12の印刷装置識別情報とを対応付けて記憶する。
このように、印刷装置12と制御サーバー10との間で、機能部ごとにWebSocketコネクションCTが確立される。このため、1の機能部は、制御サーバー10の対応する処理部との間でのデータの送受信を、他の機能部とは独立して、当該他の処理部の通信に影響を受けることなく、また、影響を与えることなく実行できる。
以上のようにして、第1通信部30と、第1接続部54との間で、第1WebSocketコネクションCT1が確立する。
これに伴って、印刷装置12の印刷データ通信部26と制御サーバー10の印刷データ処理部51との間で、第1WebSocketコネクションCT1に基づく第1機能部間通信経路KT1が確立する。第1機能部間通信経路KT1は、印刷データ通信部26と印刷データ処理部51との間で通信するデータを送受信する論理的な通信経路である。印刷データ通信部26と印刷データ処理部51とは、第1機能部間通信経路KT1により、非同期な双方向通信を行う。第1機能部間通信経路KT1により行われる非同期な双方向通信については後述する。
同様に、第2WebSocketコネクションCT2の確立で、印刷装置12のカードリーダーデータ通信部28と制御サーバー10のカードリーダー処理部53との間で、第2機能部間通信経路KT2が確立する。カードリーダーデータ通信部28とカードリーダー処理部53とは、第2機能部間通信経路KT2により、非同期な双方向通信を行う。
また同様に、第3WebSocketコネクションCT3の確立で、印刷装置12のバーコードリーダーデータ通信部27と制御サーバー10のバーコードリーダー処理部52との間で、第3機能部間通信経路KT3が確立する。バーコードリーダーデータ通信部27とバーコードリーダー処理部52とは、第3機能部間通信経路KT3により、非同期な双方向通信を行う。
POS制御システム1は、印刷装置12、及び、POS端末8により構成された既存のシステムを用いて構築される。既存のシステムでは、POS端末8は、POSアプリケーション、及び、プリンタードライバーの機能により、印刷制御データを生成し、印刷装置12に送信する。印刷装置12は、印刷制御データに基づいて、印刷部41により印刷を実行する。
そして、POS制御システム1は、POS端末8に改変(例えば、POSアプリケーションのプログラム修正)を加えることなく、POS端末8が印刷装置12に送信する印刷制御データを用いることを目的の1つとする。
より詳細には、POS制御システム1で、印刷装置12にインターフェース基板20が搭載されることにより、印刷装置12に拡張機能を有する。印刷装置12は、拡張機能により、ネットワークGNを介して印刷制御データを制御サーバー10に送信する。また、制御サーバー10は、受信した印刷制御データに基づいて、後述する各種処理を実行する。
以下、POS端末8が送信する印刷制御データの内容について例を挙げて説明し、次に、制御サーバー10が備える各装置の印刷制御データに基づく処理について説明する。
図5(A)は、印刷装置12によって発行されるレシートの一例を示す図である。また、図5(B)は、(A)が示すレシートを発行させる印刷制御データの内容を示す図である。
図5(A)に示すように、レシートの先頭に、トップロゴを示すトップロゴ画像R1が印刷される。
トップロゴ画像R1の下方に、レシートが発行された日時(日付、及び、時刻)を示す発行日時画像R2が印刷される。発行日時画像R2が示す文字列(日時を示す文字列)は、右寄せで印刷される。
発行日時画像R2の下方に、購入商品関連画像R3が印刷される。購入商品関連画像R3は、顧客が購入した商品について、顧客が購入した商品の名称、商品の単価、商品の購入数量、および、商品の購入金額(商品の単価×商品の購入数量によって算出される金額)を一覧表示する画像である。購入商品関連画像R3において、1行の文字列は、左寄せで印刷される。
購入商品関連画像R3の下方に、購入商品の合計金額を示す合計金額画像R4が印刷される。合計金額画像R4に係る文字列は、左寄せで、太字で印刷される。
合計金額画像R4の下方に、レシートの識別番号のバーコードを示すバーコード画像R5が印刷される。
バーコード画像R5の下方に、顧客の会員番号を示す会員番号画像R6が印刷される。会員番号画像R6が示す文字列は、左寄せで印刷される。ここで、上述したように、POS端末8に、顧客が所有する会員カードを読み取るカードリーダーが接続される。そして、レジカウンターRCにおける会計に際し、顧客が会員カードを提示した場合、当該会員カードがカードリーダーによって読み取られる。カードリーダーによって読み取られた会員番号が、POS端末8の所定の記憶領域に記憶される。
会員番号画像R6の下方に、レシートの末端に定型的に記録される文字列を示す末端画像R7が印刷される。本例では、末端画像R7が示す文字列は、「Thank△You」(△は、スペースを表わす。以下同じ。)である。末端画像R7が示す文字列は、中央寄せで印刷される。
なお、図5(A)では、レシートのレイアウトを単純化している。通常、レシートには、税に関する情報や、おつりに関する情報等、上記で示した以外の情報が印刷される。
図5(B)に示すように、印刷制御データは、複数のコマンドを含んで構成される。
図5(B)に示すように、印刷制御データは、トップロゴ印刷指示コマンドC1を含む。このトップロゴ印刷指示コマンドC1は、トップロゴ画像R1の印刷を指示するコマンドである。トップロゴ印刷指示コマンドC1は、グラフィック画像印刷指示コマンド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」は、文字列の記録を指示する命令コードである。ダブルクォーテーション内は、データ部であり、印刷する文字列が指定される。)という構成である。印刷装置12によって印刷可能な文字について、各文字のフォントデータが印刷装置12に登録される。印刷装置12のプリンター制御部40は、文字列印刷指示コマンドMCに基づいて、印刷する各文字をフォントデータに変換し、変換したフォントデータに基づいて印刷を行う。
改行コマンドLFは、改行を指示するコマンドである。
印刷制御データにおいて、発行日時印刷指示コマンドC2の次には、明細印刷指示コマンドC3が設けられる。明細印刷指示コマンドC3は、購入商品に対して存在する。
明細印刷指示コマンドC3は、左寄せの装飾を指示する文字列装飾コマンドSCを含む。また、明細印刷指示コマンドC3は、商品の名称、商品の単価、購入数量、および、購入金額を表わす文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含む。
印刷制御データにおいて、明細印刷指示コマンドC3の次には、合計金額印刷指示コマンドC4が設けられる。合計金額印刷指示コマンドC4は、太字化、および、左寄せの装飾を指示する文字列装飾コマンドSCを含む。また、合計金額印刷指示コマンドC4は、文字列「Total」、及び、合計金額を示す文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含む。
印刷制御データにおいて、合計金額印刷指示コマンドC4の次には、バーコード印刷指示コマンドC5が設けられる。バーコード印刷指示コマンドC5は、コードを指定し、指定したコードを示すバーコード画像R5を印刷することを指示するコマンドである。印刷装置12には、バーコード印刷指示コマンドC5が指定するコードに基づいて、バーコードの画像データを生成し、生成した画像データに基づいて、バーコード画像R5を印刷する機能を含む。
印刷制御データにおいて、バーコード印刷指示コマンドC5の次には、会員番号印刷指示コマンドC6が含まれる。会員番号印刷指示コマンドC6は、左寄せの装飾を指示する文字列装飾コマンドSCを含む。また、会員番号印刷指示コマンドC6は、「membership△NO.」という文字列、および、会員番号を示す文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含む。
印刷制御データにおいて、会員番号印刷指示コマンドC6の次には、末端画像印刷指示コマンドC7を含む。末端画像印刷指示コマンドC7は、中央寄せの装飾を指示する文字列装飾コマンドSCを含む。また、末端画像印刷指示コマンドC7は、「Thank△You」という文字列を指定して、当該文字列の印刷を指示する文字列印刷指示コマンドMCと、改行コマンドLFとを含む。
印刷制御データにおいて、末端画像印刷指示コマンドC7の次には、切断指示コマンドSSが含まれる。切断指示コマンドSSは、ロール紙の切断を指示するコマンドである。レシートの発行を指示する印刷制御データにおいて、切断指示コマンドSSが最後のコマンドとなる。
次に、POS端末8が印刷装置12に印刷制御データを送信したときのPOS制御システム1の各装置の動作について説明する。
図6、図7は、POS端末8が印刷装置12印刷制御データを送信したときのPOS制御システム1の各装置の動作を示すフローチャートである。図6(A)はPOS端末8の動作を、(B)は印刷装置12の動作を、(C)は制御サーバー10の動作を、(D)は管理装置14の動作を示す。
以下の説明では、第1機能部間通信経路KT1による印刷データ通信部26と、印刷データ処理部51との非同期な双方向通信についても説明する。
図6(A)に示すように、レジカウンターRCでの決済処理に基づいて、POS端末8のPOS端末制御部45のPOSアプリケーション実行部45a、及び、プリンタードライバー実行部45bは、印刷制御データを生成する(ステップSC1)。印刷制御データは、レジカウンターRCでの決済処理に基づくレシートの発行を指示するデータである。ステップSC1で生成された印刷制御データは、バイナリーデータである。また、以下の説明では、ステップSC1で生成された印刷制御データの内容は、図5(B)で例示した印刷制御データの内容である。
次いで、POS端末制御部45は、端末通信I/F46を制御して、印刷装置12に印刷制御データを送信する(ステップSC2)。
図6(B)に示すように、USB通信接続部34は、POS端末8から送信された印刷制御データを受信する(ステップSD1)。上述したように、本例では、POS端末8と印刷装置12とはUSBで接続される。次いで、USB通信接続部34は、受信した印刷制御データを、通信制御部25に送信する(ステップSD2)。
通信制御部25は、受信した印刷制御データを、RAM等に形成されたワークエリアに記憶する。通信制御部25は、印刷制御データを印刷制御部29に送信する(ステップSD3)。
印刷制御部29は、プリンター制御部40との間での通信を確立し、印刷制御データをプリンター制御部40に送信する(ステップSD4)。印刷制御部29とプリンター制御部40とは、USBで通信する。ステップSD4で、印刷制御部29は、USBで、印刷制御データを、プリンター制御部40に送信する。インターフェース基板20とプリンター基板21とを接続する第1コネクター22、及び、第2コネクター23は、USBの規格のコネクターである。
なお、印刷制御部29と、プリンター制御部40の通信の通信規格は、USBに限らない。SPI(Serial Peripheral Interface)に対応する通信規格等、他の通信規格であってもよい。
プリンター制御部40は、印刷制御データに基づいて印刷部41を制御して、印刷部41を動作させる制御回路である。印刷制御データを受信したプリンター制御部40は、印刷制御データに基づいて、印刷部41を制御して、図5(A)で例示したレシートを発行する(ステップSD5)。
ステップSD5の処理について詳述すると、プリンター制御部40は、トップロゴ印刷指示コマンドC1に基づいてトップロゴ画像R1を印刷する。トップロゴ画像R1の印刷時、プリンター制御部40は、グラフィック画像印刷指示コマンドGCに含まれるトップロゴ画像R1の画像データを図示せぬ画像バッファーに展開する。次いで、プリンター制御部40は、画像バッファーに展開した画像データに基づいて、印刷部41の印刷機構、搬送機構、その他の機構を制御して、トップロゴ画像R1を印刷する。
次いで、プリンター制御部40は、発行日時印刷指示コマンドC2に基づいて発行日時画像R2を印刷する。発行日時画像R2の印刷時、プリンター制御部40は、文字列印刷指示コマンドMCが指定する文字列をフォントデータに変換し、文字列装飾コマンドが指定する装飾を反映して、フォントデータを画像バッファーに展開する。次いで、プリンター制御部40は、画像バッファーに展開した画像データに基づいて、印刷部41の印刷機構、搬送機構、その他の機構を制御して、発行日時画像R2を印刷する。
同様にして、プリンター制御部40は、明細印刷指示コマンドC3、合計金額印刷指示コマンドC4に基づいて、購入商品関連画像R3、合計金額画像R4を印刷する。
次いで、プリンター制御部40は、バーコード印刷指示コマンドC5に基づいて、バーコード画像R5を印刷する。バーコード画像R5の印刷時、プリンター制御部40は、バーコード印刷指示コマンドC5が指定するコードに基づいて、バーコード画像R5の画像データを生成する。次いで、プリンター制御部40は、バーコード画像R5の画像データを画像バッファーに展開し、印刷部41の印刷機構、搬送機構、その他の機構を制御して、バーコード画像R5を印刷する。
次いで、プリンター制御部40は、会員番号印刷指示コマンドC6、末端画像印刷指示コマンドC7に基づいて、会員番号画像R6、末端画像R7を印刷する。
次いで、プリンター制御部40は、切断指示コマンドSSに基づいて、切断機構、搬送機構、その他の機構を制御して、ロール紙を切断する。
以上により、図5(B)で例示した印刷制御データに基づいて、図5(A)で例示したレシートが発行される。
印刷制御データに基づくレシートの発行が完了すると、プリンター制御部40は、処理結果を示す処理結果通知データを生成し、印刷制御部29に送信する(ステップSD6)。処理結果通知データは、レシートの発行が正常に終了した場合はその旨を示し、レシートの発行が失敗した場合はその旨、及び、原因を示すデータである。本例では、ステップSD5でレシートの発行が正常に終了し、ステップSD6で、プリンター制御部40は、正常終了を示す処理結果通知データを送信する。
印刷制御部29は、受信した処理結果通知データを、通信制御部25に送信する(ステップSD7)。
通信制御部25は、受信した処理結果通知データの内容が、レシートの発行が正常に終了したことを示すものであるか否かを判別する(ステップSD8)。
処理結果通知データの内容が、レシートの発行が正常に終了したことを示すものではない場合(ステップSD8:NO)、通信制御部25は、対応する処理を実行する(ステップSD9)。例えば、通信制御部25は、POS端末8に、処理結果通知データを送信する。POS端末8は、処理結果通知データに基づいて、レシートの発行が失敗したことのユーザーへの報知等を実行する。また例えば、通信制御部25は、印刷装置12に配設されたLED等の報知手段を制御して、レシートの発行が失敗したことをユーザーに報知する。
一方、ステップSD8において、処理結果通知データの内容が、レシートの発行が正常に終了したことを示すものである場合(ステップSD8:YES)、通信制御部25は、ワークエリアに記憶した印刷制御データを、印刷データ通信部26に送信する(ステップSD10)。
ステップSD10の処理を詳述する。
上述したように、通信制御部25は、受信した印刷制御データを、ワークエリアに記憶する。ワークエリアは、受信バッファーとして機能する。ワークエリアへの記憶に際して、通信制御部25は、ワークエリアに印刷制御データに含まれる各コマンドを順番に格納していく。印刷制御データに含まれる各コマンドのワークエリアへの記憶中、通信制御部25は、ワークエリアに記憶したコマンドが、切断指示コマンドSSであるか否かを監視する。切断指示コマンドSSである場合、図示しないRTC(real time clock)の出力に基づいて、通信制御部25は、現在の日時(日付+時刻)を示すデータ(以下、「発行日時データ」という。)を取得する。現在の発行日時データの取得方法は、上記方法に限らず、どのような方法であってもよい。発行日時データが示す日時は、レシートを発行した日時に対応する。
ステップSD10で、通信制御部25は、印刷制御データの先頭に、時刻データを付加して、印刷データ通信部26に送信する。時刻データの利用方法については、後述する。
このように、本実施形態では、通信制御部25は、印刷部41によるレシートの発行が正常に終了した場合に、印刷制御データを印刷データ通信部26に送信する。このため、以下の効果を奏する。すなわち、後に明らかとなるとおり、印刷データ通信部26に送信された印刷制御データは、制御サーバー10に送信される。制御サーバー10は、印刷制御データ、及び、印刷制御データに基づくデータを記憶する。そして、レシートの発行が正常に終了した場合に、通信制御部25から印刷データ通信部26に対して印刷制御データが送信される構成のため、実際に発行されたレシートに対応する印刷制御データが、制御サーバー10に送信され、制御サーバー10で記憶される。処理が失敗し、発行されなかったレシートに対応する印刷制御データは、制御サーバー10に送信されず、制御サーバー10で記憶されない。従って、制御サーバー10は、発行されたレシートに対応する印刷制御データ、及び、印刷制御データに基づくデータを記憶することができる。
印刷データ通信部26は、受信した印刷制御データを、第1通信部30に送信する(ステップSD11)。
以下、ステップSD11の処理について詳述する。
図5(B)を用いて説明したとおり、印刷制御データは、画像の印刷を指示する複数のコマンドを備え、最後のコマンドとして、切断指示コマンドSSを備える。
そして、印刷データ通信部26は、通信制御部25から、印刷制御データに含まれるコマンドを、受信し、切断指示コマンドSSを受信した場合に、1つのレシートに対応する印刷制御データの受信が完了したと判断する。そして、ステップSD11において、印刷データ通信部26は、1つ前の切断指示コマンドSSを受信してから、新たに切断指示コマンドSSを受信するまでに受信したコマンド(新たに受信した切断指示コマンドSSを含む。)を、1つのレシートに対応する印刷制御データとして、第1通信部30に送信する。
このような構成のため、通信制御部25から印刷データ通信部26に対して、複数のレシートに対応する印刷制御データが送信された場合であっても、印刷データ通信部26は、1のレシートに対応する印刷制御データを、異なるレシートに対応する印刷制御データとして、第1通信部30に送信できる。
第1通信部30は、受信した印刷制御データを、第1WebSocketコネクションCT1により、制御サーバー10に送信する(ステップSD12)。ステップSD12で第1通信部30が送信した印刷制御データの先頭には、発行日時データが付加されている。
図6(C)に示すように、制御サーバー10の第1接続部54は、第1WebSocketコネクションCT1により、印刷制御データを受信する(ステップSE1)。次いで、第1接続部54は、受信した印刷制御データを、印刷データ処理部51に送信する(ステップSE2)。
印刷データ処理部51は、受信した印刷制御データを、RAM等に形成されたワークエリアに記憶する。次いで、印刷データ処理部51は、受信した印刷制御データに基づいて、印刷制御データに基づいて発行されるレシートに印刷される文字列を抽出し、抽出した文字列を含むテキストファイルである抽出文字列データを生成する(ステップSE3)。
以下、ステップSE3の処理について、図5(B)に例示する印刷制御データを用いて詳述する。
まず、印刷データ処理部51は、テキストファイルである抽出文字列データを生成する。
次いで、印刷データ処理部51は、トップロゴ印刷指示コマンドC1を処理対象とする。印刷データ処理部51は、トップロゴ印刷指示コマンドC1のグラフィック画像印刷指示コマンドを読み出し、当該コマンドは、文字列の印刷を指示するコマンドでないと判断する。当該判断は、例えば、命令コードを識別することによって行われる。印刷データ処理部51は、トップロゴ印刷指示コマンドC1からの文字列の抽出を行わない。
次いで、印刷データ処理部51は、発行日時印刷指示コマンドC2を処理対象とする。印刷データ処理部51は、発行日時印刷指示コマンドC2の文字列印刷指示コマンドMCを読み出し、当該コマンドは、文字列の印刷を指示するコマンドであると判断する。当該判断は、例えば、命令コードを識別することによって行われる。印刷データ処理部51は、文字列印刷指示コマンドMCのデータ部を参照し、データ部が指定する文字列をテキスト化する。次いで、印刷データ処理部51は、テキスト化した文字列(本例では、文字列「2013/1/1/12:00」。)を抽出文字列データに記述し、改行する。
以上のようにして、印刷データ処理部51は、印刷制御データに含まれるコマンドを順番に処理対象とし、処理対象のコマンドが文字列の印刷を指示するコマンドである場合は、文字列を抽出してテキスト化し、テキスト化した文字列を抽出文字列データにし、改行する。
図8は、図5(B)の印刷制御データに基づいて生成される抽出文字列データの内容を示す図である。
図8に示すように、抽出文字列データには、レシート(図5(A)参照。)に印刷される文字列が、テキストとして、含まれる。
次いで、印刷データ処理部51は、制御サーバー記憶部57が記憶する印刷制御データDB57bにアクセスする(ステップSE4)。
図9(A)は、印刷制御データDB57bの1件のレコードのデータ構造を示す図である。
図9(A)に示すように、印刷制御データDB57bの1件のレコードは、印刷装置識別情報と、レコード作成日時と、抽出文字列データと、印刷制御データと、発行日時データと、を対応付けて記憶する。なお、レコード作成日時とは、レコードを作成した日時を示す情報である。
次いで、印刷データ処理部51は、印刷制御データDB57bに1件のレコードを作成する。印刷データ処理部51は、当該レコードで、印刷制御データの送信元の印刷装置12の印刷装置識別情報と、当該レコードを作成したときの日時を示すレコード作成日時と、受信した印刷制御データに基づいて生成した抽出文字列データと、受信した印刷制御データと、受信した印刷制御データに付加された発行日時データと、を対応付けて記憶する(ステップSE5)。
ステップSE5において、印刷データ処理部51は、印刷装置識別情報を以下のようにして取得する。すなわち、まず、印刷データ処理部51は、印刷制御データの受信に用いたWebSocketコネクションCT(本例では、第1WebSocketコネクションCT1)のコネクション識別情報を取得する。次いで、印刷データ処理部51は、制御サーバー記憶部57が記憶するコネクション管理データベース57aを参照する。上述したように、コネクション管理データベース57aでは、確立しているWebSocketコネクションCTについて、コネクション識別情報と、印刷装置識別情報とを対応付けて記憶する。次いで、印刷データ処理部51は、取得したコネクション識別情報をキーとして、コネクション管理データベース57aで当該識別情報と対応付けられた印刷装置識別情報を取得する。
なお、上述したように、抽出文字列データはレシートに印刷される文字列が含まれるテキストファイルであり、印刷制御データはバイナリーデータである。
また、レコードに含まれる印刷装置識別情報や、レコード作成日時は、印刷制御データDB57bの所望のレコードを検索するときの検索キーとして利用可能である。
このように、本実施形態に係る制御サーバー10は、印刷装置12から印刷制御データを受信した場合、印刷制御データと、印刷制御データに基づく抽出文字列データとを対応付けて記憶する。このため、以下の効果を奏する。
すなわち、後述するように、抽出文字列データは、管理装置14に送信され、管理装置14は、抽出文字列データに基づいて、各種処理を実行する。ここで、レシートに印刷される情報には、文字列以外でも、後に利用可能な情報がある。例えば、トップロゴ印刷指示コマンドC1は、レシートに印刷されたトップロゴを知る際に用いることができる。また、バーコード印刷指示コマンドC5は、レシートの識別情報を知る際に用いることができる。従って、印刷制御データを記憶することにより、文字列以外の情報を後に用いることが可能となる。
また、印刷制御データを記憶することにより、印刷制御データを用いて、レシートを再発行できる。
次いで、印刷データ処理部51は、抽出文字列データ、印刷制御データの送信元の印刷装置12の印刷装置識別情報を示すデータ、及び、店舗情報(後述)を示すデータを、通信管理部50に送信する(ステップSE6)。
以下、ステップSE6の処理について詳述する。
制御サーバー記憶部57は、店舗情報管理DB57eを記憶する。
店舗情報管理DB57eは、印刷装置識別情報と、対応付けて店舗情報を記憶するデータベースである。店舗情報は、対応する印刷装置12が設定されている店舗の名称、店舗の識別情報を含む情報である。店舗情報に、店舗の住所や、電話番号等の他の情報を含んでいてもよい。
ステップSE6で、印刷データ処理部51は、店舗情報管理DB57eを参照する。次いで、印刷データ処理部51は、印刷装置識別情報をキーとして、店舗情報管理DB57ed、当該識別情報と対応付けられた店舗情報を取得する。次いで、印刷データ処理部51は、抽出文字列データ、及び、印刷装置識別情報を示すデータと共に、店舗情報を示すデータを通信管理部50に送信する。
通信管理部50は、制御サーバー記憶部57が記憶する管理装置管理DB57cを参照する(ステップSE7)。
管理装置管理DB57cは、制御サーバー10に接続された印刷装置12について、印刷装置12の印刷装置識別情報と、印刷装置12に対応する管理装置14のアドレスとを対応付けて記憶するデータベースである。1の印刷装置12と、1の管理装置14とが対応するとは、当該1の印刷装置12が、当該1の管理装置14が管理する店舗システム11に設けられ、当該1の印刷装置12が、当該1の管理装置14の制御対象であることを示す。
次いで、通信管理部50は、印刷データ処理部51から受信したデータが示す印刷装置識別情報をキーとして、管理装置管理DB57cで当該識別情報と対応付けられた管理装置14のアドレスを取得する(ステップSE8)。
次いで、通信管理部50は、制御サーバー通信I/F58を制御して、ステップSE8で取得したアドレスの管理装置14に、抽出文字列データ、及び、店舗情報を示すデータを送信する(ステップSE9)。
図6(D)に示すように、管理装置制御部70は、管理装置通信I/F71を制御して、抽出文字列データ、及び、店舗情報を示すデータを受信する(ステップSF1)。
次いで、管理装置制御部70は、管理装置記憶部72が記憶する条件データベース72aを参照し、抽出文字列分析処理を実行する(ステップSF2)。
以下、抽出文字列分析処理について詳述する。
抽出文字列分析処理は、管理装置制御部70が、抽出文字列データに含まれる文字列を分析してクーポンを発行するか否かを判別し、クーポンを発行する場合は、発行するクーポンの内容を示すクーポン内容情報を取得する処理である。
条件データベース72aは、クーポンを発行する条件と、条件が成立した場合に発行するクーポンの内容を示す情報であるクーポン内容情報と、を対応付けて記憶するデータベースである。条件は、複数存在してもよい。
例えば、クーポンを発行する条件は、会計を行った顧客の会員番号が、特定の番号であること、である。この場合、管理装置制御部70は、以下の処理を実行する。すなわち、管理装置制御部70は、抽出文字列データについて、文字列「membership△NO.」をキーとして文字列検索を行い、当該文字列と同一行に記述された文字列を、顧客の会員番号として取得する。次いで、管理装置制御部70は、取得した顧客の会員番号が、特定の番号であるか否かを判別する。管理装置制御部70は、取得した顧客の会員番号が、特定の番号である場合、条件が成立したとして、クーポンを発行すると判別する。次いで、管理装置制御部70は、条件データベース72aを参照し、成立した条件と対応付けられたクーポン内容情報を取得する。
また、クーポンを発行する条件は、所定の商品名の商品が購入されていること、である。この場合、管理装置制御部70は、以下の処理を実行する。すなわち、管理装置制御部70は、抽出文字列データについて、所定の商品名をキーとして文字列検索を行う。次いで、管理装置制御部70は、検索が成立した場合、条件が成立したとして、クーポンを発行すると判別する。次いで、管理装置制御部70は、条件データベース72aを参照し、成立した条件と対応付けられたクーポン内容情報を取得する。
また例えば、クーポンを発行する条件は、購入商品の合計金額が、所定の金額を上回ったこと、である。この場合、管理装置制御部70は、以下の処理を実行する。すなわち、管理装置制御部70は、抽出文字列データについて、文字列「Total」をキーとして文字列検索を行い、当該文字列と同一行に含まれる文字列が示す値を、購入商品の合計金額として取得する。次いで、管理装置制御部70は、取得した購入商品の合計金額が、所定の金額を上回ったか否かを判別する。管理装置制御部70は、取得した購入商品の合計金額が、所定の金額を上回った場合、条件が成立したとして、クーポンを発行すると判別する。次いで、管理装置制御部70は、条件データベース72aを参照し、成立した条件と対応付けられたクーポン内容情報を取得する。
条件は、時間帯や、会員によって動的に変更する構成であってもよい。すなわち、条件とは、抽出文字列データに含まれる情報、及び、他の情報に基づいて、その成否が決定するものであれば、どのようなものであってもよい。
例えば、ステップSF1で、管理装置制御部70は、抽出文字列データと共に、店舗情報を示すデータを受信する。そして、条件に、店舗情報を利用してもよい。例えば、条件に、特定の店舗であること、を含めもよい。これにより、店舗によって、クーポンの内容を変更することができる。また、これにより、クーポンに、店舗の名称を印刷することができる。
本例では、ステップSF2の抽出文字列分析処理で、管理装置制御部70は、所定の条件が成立したため、クーポンを発行すると判別し、対応するクーポン内容情報を取得する。
ステップSF2の抽出文字列分析処理の実行後、管理装置制御部70は、クーポン発行制御データ(第2の印刷制御データ)を生成する(ステップSF3)。
クーポン発行制御データは、クーポンの発行に際し、印刷装置12に印刷させる情報が含まれるXML(Extensible Markup Language)ファイルである。クーポン発行制御データには、XMLフォーマットに従って、印刷装置12に印刷させる情報、例えば、画像データや、画像の位置を示す情報等が含まれる。また、クーポン発行制御データは、印刷させる印刷装置12の印刷装置識別情報がタグとして含む。
管理装置制御部70は、ステップSF2の抽出文字列分析処理により取得したクーポン内容情報に基づいて、当該情報が示す内容のクーポンを発行させるクーポン発行制御データを生成する機能を有する。
図7(D)に示すように、管理装置制御部70は、管理装置通信I/F71を制御して、生成したクーポン発行制御データを、制御サーバー10に送信する(ステップSF4)。
図7(C)に示すように、制御サーバー10の通信管理部50は、制御サーバー通信I/F58を制御して、クーポン発行制御データを受信する(ステップSE10)。次いで、通信管理部50は、受信したクーポン発行制御データを、印刷データ処理部51に送信する(ステップSE11)。
印刷データ処理部51は、受信したクーポン発行制御データを、第1接続部54に送信する(ステップSE12)。
第1接続部54は、受信したクーポン発行制御データを、第1WebSocketコネクションCT1により、印刷装置12に送信する(ステップSE13)。
図7(B)に示すように、印刷装置12の第1通信部30は、第1WebSocketコネクションCT1により、クーポン発行制御データを受信する(ステップSD13)。次いで、第1通信部30は、受信したクーポン発行制御データを、印刷データ通信部26に送信する(ステップSD14)。
印刷データ通信部26は、受信したクーポン発行制御データを、印刷部18のコマンド体系のコマンドであるクーポン発行制御コマンドに変換する(ステップSD15)。印刷データ通信部26は、XMLファイルであるクーポン発行制御データを、印刷部41の制御回路であるプリンター制御部40が解釈可能なコマンドに変換する。
次いで、印刷制御部17は、クーポン発行制御コマンドを、印刷制御部29に送信する(ステップSD16)。
印刷制御部29は、プリンター制御部40との間での通信を確立し、クーポン発行制御コマンドをプリンター制御部40に送信する(ステップSD17)。
プリンター制御部40は、受信したクーポン発行制御コマンドに基づいて、印刷部41を制御して、クーポンを発行する(ステップSD18)。
クーポンの発行後は、印刷装置12、制御サーバー10、及び、管理装置14は、以下の処理を行う。
印刷装置12のプリンター制御部40は、クーポンの発行処理の結果を示すクーポン発行結果通知データを生成する。クーポン発行結果通知データは、クーポンの発行が正常に完了したか否かを示す情報、及び、失敗した場合はその原因を示す情報を含むデータである。
プリンター制御部40は、生成したクーポン発行結果通知データを印刷制御部29に送信する。印刷制御部29は、受信したクーポン発行結果通知データを、印刷データ通信部26に送信する。印刷データ通信部26は、受信したクーポン発行結果通知データを、第1WebSocketコネクションCT1で、制御サーバー10の印刷データ処理部51に送信する。印刷データ処理部51は、受信したクーポン発行結果通知データを、通信管理部50に送信する。通信管理部50は、制御サーバー通信インターフェース58を制御して、受信したクーポン発行結果通知データを、管理装置14の管理装置制御部70に送信する。管理装置制御部70は、クーポン発行結果通知データに基づいて、管理装置14が備える表示パネルに、クーポンの発行処理の結果を表示する。
以上の処理が行われるため、管理装置14の管理者は、表示パネルを参照することにより、クーポンの発行が正常に行われたか否かを認識でき、失敗した場合は、その原因九名等の処理を行える。
このように、印刷装置12は、インターフェース基板20に実装された拡張機能、すなわち、通信制御部25及び印刷データ通信部26の機能により、POS端末8から送信された印刷制御データを制御サーバー10に送信できる。その際、印刷装置12は、第1WebSocketコネクションCT1を用いて印刷制御データを送信するため、POS端末8から印刷制御データを受信した場合、新たにコネクションを確立する等の処理をすることなく、印刷制御データを送信できる。
また、本実施形態では、制御サーバー10は、印刷装置12から受信した印刷制御データ、及び、印刷制御データに基づく抽出文字列データを記憶する。これらデータは、店舗ごとの、また、印刷装置12の商品の販売の状況、売り上げの状況、顧客の来店の状況等の分析に利用可能な有益なデータである。つまり、本実施形態に係る制御サーバー10は、POS端末8から印刷装置12に対して送信される印刷制御データを用いて、情報を記憶する。
また、本実施形態では、制御サーバー10から、管理装置14に対して、抽出文字列データが送信される。管理装置14は、抽出文字列データに基づいて、顧客に対してクーポンを発行するか否かを判別する。このため、管理装置14は、顧客、顧客が購入した商品顧客の会計の内容等に応じて、クーポンを発行するか否かを判別できる。また、管理装置14は、クーポンを発行する場合は、成立した条件に対応する内容のクーポンを発行する。このため、管理装置14は、顧客、顧客が購入した商品、顧客の会計の内容等に応じた内容のクーポンを発行できる。管理装置14は、POS端末8から印刷装置12に対して送信される印刷制御データを用いて、対応するクーポンの発行等、各種処理を実行できる。また、管理装置14から制御サーバー10に対してクーポンの発行の指示(クーポン発行制御データの送信)があった場合、制御サーバー10は、第1WebSocketコネクションCT1を用いてクーポン発行制御データを送信する。このため、制御サーバー10は、新たにコネクションを確立する等の処理をすることなく、印刷装置12にクーポン発行制御データを送信できる。従って、印刷装置12によってレシートが発行された後、同じ印刷装置12によってレシートに対応するクーポンを発行できる。 また、本実施形態では、POS端末8から印刷装置12に対して送信する印刷制御データの内容を変更することなく、制御サーバー10、及び、管理装置14は、上述した各種処理を実行できる。つまり、本実施形態によれば、POS端末8に対する改変(POSアプリケーションのプログラム修正等)を行うことなく、制御サーバー10、管理装置14は、上述した各種処理を実行できる。従って、POS端末8と、印刷装置12とで構成された既存のシステムに対して変更をほとんど加えることなく、POS制御システム1を構築でき、POS制御システム1の構築を簡易にできる。
上述したように、通信制御部25は、発行日時データを印刷制御データに付加し、印刷データ通信部26に送信する(ステップSD10)。印刷データ通信部26は、発行日時データが付加された印刷制御データを制御サーバー10に送信する(ステップSD11、12)。
以下、発行日時データの利用方法について、説明する。
ステップSD11で、印刷データ通信部26は、印刷制御データを送信する前に、第1WebSocketコネクションCT1でのデータの送受信を正常に行える状態か否かを確認する。確認は、例えば、以下のようにして行われる。印刷データ通信部26は、WebSocketコネクションCT1で、印刷データ処理部51に応答要求コマンドを送信する。印刷データ処理部51は、応答要求コマンドを受信した場合に、応答コマンドを送信する機能を有している。印刷データ処理部51は、応答要求コマンドの送信に応じて、所定の期間内に、応答コマンドを受信した場合、WebSocketコネクションCT1でデータの送受信ができる状態であると判別する。一方、印刷データ処理部51は、応答要求コマンドの送信に応じて、所定の期間内に、応答コマンドを受信した場合、WebSocketコネクションCT1で正常にデータの送受信ができない状態であると判別する。確認方法は、上述した方法に限らない。
通信に関するエラー等に起因して、WebSocketコネクションCT1でのデータの送受信ができない場合が生じ得る。
WebSocketコネクションCT1でデータの正常な送受信ができる状態である場合、上述のフローチャートで説明した処理が、行われる。
一方、WebSocketコネクションCT1でデータの正常な送受信ができない状態である場合、印刷データ通信部26は、以下の処理を行う。
印刷データ通信部26は、印刷制御データを印刷装置記憶部39の所定の記憶領域に記憶する。このほか、印刷装置12が、SDメモリーカード等の外付けの記憶媒体のスロットを有している場合は、当該記憶媒体に記憶する構成であってもよい。
印刷制御データの記憶領域への記憶後、印刷データ通信部26は、WebSocketコネクションCT1で正常にデータの送受信ができる状態となったか否かを監視する。印刷データ通信部26は、例えば以下のようにして、監視を実行する。印刷データ通信部26は、定期的に、第1WebSocketコネクションCT1での応答要求コマンドを送信する。印刷データ通信部26は、応答要求コマンドに対する応答があった場合に、WebSocketコネクションCT1で正常にデータの送受信ができる状態となったと判別する。
WebSocketコネクションCT1で正常にデータの送受信ができる状態となった場合、印刷データ通信部26は、印刷装置記憶部39にアクセスして、当該記憶部に記憶した印刷制御データを、WebSocketコネクションCT1で送信する。印刷制御データには、発行日時データが付加されている。
印刷制御データを受信した制御サーバー10の印刷データ処理部51は、印刷制御データDB57bに1件のレコードを作成する。印刷データ処理部51は、当該レコードで、印刷制御データの送信元の印刷装置12の印刷装置識別情報と、当該レコードを作成したときの日時を示すレコード作成日時と、受信した印刷制御データに基づいて生成した抽出文字列データと、受信した印刷制御データと、受信した印刷制御データに付加された発行日時データと、を対応付けて記憶する(ステップSE5)。
ステップSE5で印刷データ処理部51が生成したレコードには、発行日時データが格納されている。発行日時データは、レシートが発行された日時に対応する日時を示すデータである。
このように、受信した印刷制御データに対応するレコードで、発行日時データが格納されているため、以下の効果を奏する。第1WebSocketコネクションCT1でデータの送受信が正常に行えなかったことに起因して、レシートを発行した日時と、対応する印刷制御データが制御サーバー10に送信された日時とが乖離した場合であっても、対応するレコードの発行日時データを取得することにより、レシートの発行日時を取得できる。このため、例えば、印刷制御データDB57bに基づいて、時間帯ごとのレシート発行枚数を調査することができる。
また、1のレコードのレコード作成日時と、発行日時データが示す日時との乖離状況を分析することにより、第1WebSocketコネクションCT1での通信の遅延状況を把握することが可能である。
以上のように、印刷装置12は、POS端末8から送信された印刷制御データに基づくレシートの発行、及び、管理装置14から制御サーバー10を介して送信されたクーポン発行制御データに基づくクーポンの発行を行う。
従って、印刷装置12に対して、印刷制御データとクーポン発行制御データとが、重なった時間に送信される可能性がある。本実施形態に係る印刷装置12は、このような場合であっても、各データに基づく処理を実行する。以下、詳述する。
図10は、印刷装置12の動作を示すフローチャートである。
図10に示すフローチャートの説明では、通信制御部25、及び、印刷データ通信部26を区別せずに表現する場合、「制御機能部」と表現する。
印刷装置12の印刷制御部29は、通信制御部25から印刷制御データを受信したか、又は、印刷データ通信部26からクーポン発行制御データを受信したかを監視する(ステップSG1)。
ステップSG1の監視は、例えば、以下の方法で行われる。
例えば、印刷制御部29は、通信制御部25が受信したデータを一時記憶する受信バッファーの状態と、印刷データ通信部26が受信したデータを一時記憶する受信バッファーの状態とを監視する。そして、いずれかの受信バッファーにデータの書き込みがあった場合、対応する制御機能部がデータを受信したと判別する。
いずれかの制御機能部からデータを受信した場合(ステップSG1:YES)、印刷制御部29は、印刷制御部29に対してデータを送信していない制御機能部による印刷制御部29へのデータの送信を禁止する(ステップSG2)。以下の説明では、印刷制御部29に対してデータを送信した制御機能部を「対象制御機能部」と表現し、印刷制御部29に対してデータを送信していない方の制御機能部を、「非対象制御機能部」と表現する。
ステップSG2では、印刷制御部29は、通信制御部25から印刷制御データを受信した場合、印刷データ通信部26がクーポン発行制御コマンドを印刷制御部29へ送信することを禁止する。一方、印刷制御部29は、印刷データ通信部26からクーポン発行制御データを受信した場合、通信制御部25が印刷制御データを印刷制御部29へ送信することを禁止する。
ステップSG2において、印刷制御部29は、非対象制御機能部に対して、印刷制御部29へのデータの送信を禁止する旨の送信禁止通知を行う。制御機能部は、当該通知を受けた場合、データの送信の禁止を解除する旨の送信禁止解除通知(後述)を受信するまでは、外部装置(POS端末8、又は、制御サーバー10)からデータを受信した場合であっても、印刷制御部29に対してデータを送信せず、外部装置から受信したデータを受信バッファーに記憶した状態を維持する。
次いで、印刷制御部29は、対象制御機能部からデータを受信し、受信したデータをプリンター制御部40に送信して、印刷部41による処理を開始する(ステップSG3)。対象制御機能部が通信制御部25である場合、印刷制御部29は、通信制御部25から印刷制御データを受信し、受信した印刷制御データをプリンター制御部40に送信して、印刷部41によるレシートの発行の処理を開始する。また、対象制御機能部が印刷データ通信部26である場合、印刷制御部29は、印刷データ通信部26からクーポン発行制御コマンドを受信し、受信したクーポン発行制御コマンドをプリンター制御部40に送信して、印刷部41によるクーポンの発行の処理を開始する。
次いで、印刷制御部29は、印刷部41による処理(レシートの発行、又は、クーポンの発行)が完了したか否かを監視する(ステップSG4)。例えば、印刷制御部29は、上述した処理結果通知データを受信した場合、印刷部41による処理が完了したと判別する。
次いで、印刷制御部29は、期間T1の計時を開始する(ステップSG5)。期間T1は、例えば、1秒である。
次いで、印刷制御部29は、期間T1が経過する前に対象制御機能部からデータを受信したか否かを監視し(ステップSG6)、また、対象制御機能部からデータを受信することなく期間T1が経過したか否かを監視する(ステップSG7)。
期間T1が経過する前に、対象制御機能部からデータを受信した場合(ステップSG6:YES)、印刷制御部29は、処理手順をステップSG3へ戻し、受信したデータをプリンター制御部40に送信して、印刷部41による処理を開始する。
対象制御機能部からデータを受信することなく期間T1が経過した場合(ステップSG7:YES)、印刷制御部29は、非対称制御機能部について、印刷制御部29に対するデータの送信の禁止を解除する(ステップSG8)。
本例では、ステップSG8において、印刷制御部29は、非対象制御機能部に対して、印刷制御部29へのデータの送信の禁止を解除する旨の送信禁止解除通知を行う。制御機能部は、当該通知を受けた場合、印刷制御部29に対してデータを送信可能となる。その後、印刷制御部29は、処理手順をステップSG1へ戻す。
以上説明したように、印刷制御部29は、印刷制御データに基づく印刷部41の制御、及び、クーポン発行制御コマンド(クーポン発行制御データ)に基づく印刷部41の制御を切り替えて実行する。
このような構成のため、POS端末8から印刷装置12に対する印刷制御データの送信、及び、制御サーバー10から印刷装置12に対するクーポン発行制御データの送信が同時に行われた場合であっても、印刷制御部29は、一方のデータに基づく処理が完了した後、他方のデータに基づく処理が実行する。従って、このような場合であっても、印刷装置12が受信したデータが混合する等、印刷制御部29に対して同時にデータが送信されることに起因したエラーが発生することがない。
次に、印刷装置12が備えるデバイス(本例では、カードリーダーCR、及び、バーコードリーダーBR)が印刷装置12に対してデータを送信した場合の各装置の動作について説明する。
図11は、カードリーダーCRによって顧客の会員カードが読み取られた場合の印刷装置12、制御サーバー10、及び、管理装置14の動作を示すフローチャートである。図11(A)は印刷装置12の動作を、(B)は制御サーバー10の動作を、(C)は管理装置14の動作を示す。
図11(A)に示すように、カードリーダーCRによる会員カードが読み取られると(ステップSH1)、カードリーダーCRからカードリーダーデータ通信部28に対して読み取り結果を示す読取結果データが送信される(ステップSH2)。読取結果データは、バイナリーデータである。読取結果データには、顧客の会員番号を示す情報が含まれる。
以下の説明では、第2機能部間通信経路KT2によりカードリーダーデータ通信部28と、カードリーダー処理部53との通信についても併せて説明する。
カードリーダーデータ通信部28は、受信した読取結果データに、現在日時を示す情報(以下、「読取日時情報」という。)を含め、読取結果データ、及び、カードリーダー識別情報データ(後述)を、第2通信部31に送信する(ステップSH3)。読取日時情報は、カードリーダーCRによる読み取りが行われた日時を示す情報である。
ステップSH3の処理について詳述する。
カードリーダー識別情報データは、カードリーダー識別情報を示すデータである。カードリーダー識別情報は、カードリーダーCRを識別するデバイス識別情報である。デバイス識別情報は、デバイス(本例では、カードリーダーCR、バーコードリーダーBR)に対して、割り振られた識別情報であり、デバイスごとに、その値が異なっている。デバイス識別情報は、例えば、プロダクトIDと、ベンダーIDの組合せである。
カードリーダーCRが印刷装置12に接続されたときに、カードリーダーCRからカードリーダーデータ通信部28に対して、所定のプロトコルに従ってカードリーダー識別情報が通知される。カードリーダーデータ通信部28は、受信したカードリーダー識別情報を示すカードリーダー識別情報データを所定の記憶領域に記憶する。
ステップSH3で、カードリーダーデータ通信部28は、読取結果データと共に、所定の記憶領域に記憶したカードリーダー識別情報データを、第2通信部31に送信する。
第2通信部31は、受信した読取結果データ、及び、カードリーダー識別情報データを、第2WebSocketコネクションCT2により、制御サーバー10に送信する(ステップSH4)。
第2接続部55は、第2WebSocketコネクションCT2により、読取結果データ、及び、カードリーダー識別情報データを受信する(ステップSI1)。
第2接続部55は、受信した読取結果データ、及び、カードリーダー識別情報データを、カードリーダー処理部53に送信する(ステップSI2)。
カードリーダー処理部53は、受信した読取結果データを、RAM等に形成されたワークエリアに記憶する。次いで、カードリーダー処理部53は、読取結果データに含まれる顧客の会員番号を示す文字列を抽出し、抽出した会員番号を示す文字列のテキスト(文字データ)を含むテキストファイルである会員番号データ(デバイスデータ)を生成する(ステップSI3)。
次いで、カードリーダー処理部53は、制御サーバー記憶部57が記憶する会員番号データDB57dにアクセスする(ステップSI4)。
図9(B)は、会員番号データDB57dの1件のレコードのデータ構造を示す図である。
図9(B)に示すように、会員番号データDB57dの1件のレコードは、印刷装置識別情報と、レコード作成日時と、会員番号データと、読取結果データと、読取日時データと、デバイス識別情報データと、を対応付けて記憶する。なお、レコード作成日時とは、レコードを作成した日時を示す情報である。
次いで、カードリーダー処理部53は、会員番号データDB57dに1件のレコードを作成し、当該レコードの対応するフィールドに、印刷制御データの送信元の印刷装置12の印刷装置識別情報を格納する。また、カードリーダー処理部53は、当該レコードの対応するフィールドに、当該レコードを作成したときの日時を示すレコード作成日時を格納する。また、カードリーダー処理部53は、当該レコードの対応するフィールドに、受信した読取結果データに基づいて生成した会員番号データを格納する。また、カードリーダー処理部53は、当該レコードの対応するフィールドに、受信した読取結果データを格納する。また、カードリーダー処理部53は、当該レコードの対応するフィールドに、読取結果データに含まれる読取日時情報を示すデータである読取日時データを格納する。また、カードリーダー処理部53は、当該レコードの対応するフィールドに、デバイス識別情報データ(本例では、カードリーダー識別情報データ)を格納する(ステップSI5)。
次いで、カードリーダー処理部53は、会員番号データ、及び、読取結果データの送信元の印刷装置12の印刷装置識別情報を示すデータを、通信管理部50に送信する(ステップSI6)。
通信管理部50は、制御サーバー記憶部57が記憶する管理装置管理DB57cを参照する(ステップSI7)。
次いで、通信管理部50は、カードリーダー処理部53から受信したデータが示す印刷装置識別情報をキーとして、管理装置管理DB57cで当該識別情報と対応付けられた管理装置14のアドレスを取得する(ステップSI8)。
次いで、通信管理部50は、制御サーバー通信I/F58を制御して、ステップSI8で取得したアドレスの管理装置14に会員番号データ、及び、カードリーダー識別情報データを送信する(ステップSI9)。
図11(C)に示すように、管理装置制御部70は、管理装置通信I/F71を制御して、会員番号データ、及び、カードリーダー識別情報データを受信する(ステップSJ1)。
次いで、管理装置制御部70は、会員番号データ、及び、カードリーダー識別情報データに基づいて、対応する処理を実行する(ステップSJ2)。
例えば、ステップSJ2で、管理装置制御部70は、会員番号データが示す会員番号と、カードリーダー識別情報データが示すデバイス識別情報と、現在日時を示す情報とを対応付けて記憶する。記憶した情報は、会員の来店履歴として用いることができ、店舗に来店する顧客の傾向等の分析に用いることができる。また、記憶したデバイス識別情報に基づいて、会員番号が、カードリーダーCRの読み取りに結果に基づくものであることを把握できる。
管理装置制御部70は、会員番号データが示す会員番号に応じたクーポンの発行を指示する。
会員番号データが示す会員番号の顧客に対して、店舗に関する情報や、クーポンが記載されたメールを送信したり、ポイントシステムが存在する場合は、顧客に対してポイントを付与したりする。
なお、カードリーダー処理部53は、会員番号データ及びカードリーダー識別情報データと共に、上述した店舗情報を送信する構成であってもよい。この構成によれば、管理装置制御部70は、例えば、店舗に応じた来店履歴を管理でき、また、店舗に応じて、来店顧客の傾向等を分析できる。
以上、カードリーダーCRによるカードの読み取りが行われた後の各装置の動作を説明したが、バーコードリーダーBRによってバーコードが読み取られた場合も、読み取り結果に基づくデータが、印刷装置12により制御サーバー10に送信され、制御サーバー10で対応する処理が実行される。また、制御サーバー10から管理装置14にデータが素心去れ、管理装置14で対応する処理が実行される。
このように、本実施形態では、印刷装置12は、インターフェース基板20に配設された拡張機能、すなわち、カードリーダー処理部53、及び、バーコードリーダーデータ通信部27の機能により、デバイスから送信されたデータを制御サーバー10に送信できる。その際、印刷装置12は、第1WebSocketコネクションCT1を用いて印刷制御データを送信するため、デバイスからデータを受信した場合、新たにコネクションを確立する等の処理をすることなく、データを送信できる。
また、本実施形態では、制御サーバー10は、印刷装置12から受信した読取結果データ、及び、読取結果データに基づく会員番号データを記憶する。これらデータは、店舗の、または、印刷装置12の顧客の来店の状況等の分析に用いることが可能なデータである。制御サーバー10は、印刷装置12にデバイスが接続されることを用いて、情報を記憶する。
また、本実施形態では、制御サーバー10から、管理装置14に対して、会員番号データが送信される。管理装置14は、会員番号データに基づいて、対応する処理を実行する。つまり、本実施形態に係る管理装置14は、印刷装置12にデバイスが接続されることを用いて、対応する処理を実行できる。
以上説明したように、本実施形態に係るPOS制御システム1は、POS端末8と、印刷装置12と、制御サーバー10(制御装置)と、を備える。
POS端末8は、決済処理に基づいて印刷制御データを生成するPOS端末制御部45(制御部)、及び印刷制御データを送信する端末通信インターフェース46(通信部)を有する。
印刷装置12は、印刷を行う印刷部41、印刷制御データに基づいて印刷部41を制御する印刷制御部29、POS端末8と接続して印刷制御データを受信するUSB通信接続部34(通信接続部)、及び印刷制御データを第1WebSocketコネクションCT1により非同期の双方向通信で送信する印刷データ通信部26を有する。
制御サーバー10は、印刷装置12の印刷データ通信部26で送信された印刷制御データを第1WebSocketコネクションCT1で受信する第1接続部54(受信部)、及び受信した印刷制御データに基づく処理を行う印刷データ処理部51を有する。
この構成によれば、POS端末8から印刷装置12に対して送信された印刷制御データは、印刷データ通信部26の機能によって制御サーバー10に送信される。このため、制御サーバー10は、受信した印刷制御データに基づいて、対応する処理を実行できる。また、印刷装置12は、非同期の双方向通信で印刷制御データを制御サーバー10に送信する。従って、印刷装置12は、POS端末8から印刷制御データを受信した場合、通信経路を新たに確立することなく、また、制御サーバー10との間で通信の同期をとることなく、制御サーバー10に印刷制御データを送信できる。このため、POS端末8から印刷装置12に印刷制御データを送信するPOS制御システム1について、印刷装置12にネットワークを介して接続された制御サーバー10が印刷制御データに基づく処理をできるようにでき、当該システムを、印刷装置12と制御サーバー10とがネットワークGNを介して通信する構成に対応させることができる。
また、本実施形態では、印刷制御データは、バイナリーデータであり、制御サーバー10の印刷データ処理部51は、印刷制御データに含まれる文字列を抽出し、抽出した文字列を含むテキストデータである抽出文字列データを生成する。
この構成によれば、制御サーバー10は、受信した印刷制御データを、利用性の高いデータに変換できる。
また、制御サーバー10は、印刷制御データと、抽出文字列データとを対応付けて記憶する制御サーバー記憶部57を有する。
この構成によれば、制御サーバー10は、印刷制御データと、印刷制御データに基づく抽出文字列データを記憶するため、後に、いずれかのデータを分析し、情報を得ることが可能である。また、印刷制御データを記憶することにより、印刷制御データに基づいて抽出文字列データを生成する際に欠落する情報も、記憶できる。また、印刷制御データを記憶するため、印刷制御データを利用した再印刷を行える。
また、印刷装置12は、POS端末8で送信した印刷制御データを、印刷制御部29及び印刷データ通信部26に送信する通信制御部25を有する。
この構成によれば、通信制御部25の機能により、印刷制御データを印刷制御部29に送信して印刷部41により印刷を行い、印刷制御データを印刷データ通信部26に送信して、印刷制御データを制御サーバー10に送信できる。
また、印刷装置12の印刷制御部29は、印刷部41による印刷を行った後、印刷を行ったことを示す処理結果通知データ(通知データ)を通信制御部25に送信し、印刷装置12の通信制御部25は、処理結果通知データを受信した後、印刷制御データを印刷データ通信部26に送信する。
この構成によれば、印刷装置12は、印刷部41による印刷が完了した後、行われた印刷に対応する印刷制御データを、制御サーバー10に送信できる。
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、デバイスの例として、カードリーダーCRや、バーコードリーダーBRを挙げたが、印刷装置12に接続されるデバイスは例示したものに限らない。例えば、デバイスとしては、キャッシュレジスター、表示パネル、タッチパネル等がある。
また、抽出文字列データに基づいて管理装置14が行う処理は、クーポンの発行に限らない。例えば、抽出文字列データの一部又は全部を記憶する処理を行ってもよい。また、抽出文字列データに基づいて、顧客マスターを参照して、顧客のメールアドレスを取得し、顧客にメールする処理を行ってもよい。
また、上述した実施形態では、印刷装置12は店舗に用いられる店舗システム11に設けられていた。しかしながら、印刷装置12は、必ずしも、店舗システム11に設けられたものでなくてもよい。例えば、他のシステムに設けられたものであってもよい。
また、図3に示す各機能ブロックはハードウェアとソフトウェアにより実現可能であり、特定のハードウェア構成を示唆するものではない。また、印刷装置12の機能を、当該装置に外部接続される別の装置に持たせるようにしてもよい。また、印刷装置12は、外部接続される記憶媒体に記憶させたプログラムを実行することにより、各種処理を実行しても良い。
1…POS制御システム、8…POS端末(外部装置)、10…制御サーバー(制御装置)、12…印刷装置、25…通信制御部、26…印刷データ通信部、29…通信制御部、34…USB通信接続部(通信接続部)、35…LAN通信接続部(通信接続部)、36…シリアル通信接続部(通信接続部)、41…印刷部、45…POS端末制御部(制御部)、46…端末通信インターフェース(通信部)、51…印刷データ処理部、54…第1接続部(受信部)、57…制御サーバー記憶部(記憶部)。

Claims (6)

  1. 決済処理に基づいて印刷制御データを生成する制御部、及び前記印刷制御データを送信する通信部を有するPOS端末と、
    前記通信部から前記印刷制御データを受信する通信接続部、前記印刷制御データを出力する通信制御部、印刷を行う印刷部、前記通信制御部から出力された前記印刷制御データに基づいて前記印刷部を制御し、印刷が正常に終了したか否かを通知する印刷制御部、及び前記印刷制御部から印刷が正常に終了した旨の通知を受信した前記通信制御部から出力された前記印刷制御データを非同期の双方向通信で送信する印刷データ通信部を有する印刷装置と、
    前記印刷データ通信部と通信経路を確立して前記印刷データ通信部から前記印刷制御データを受信する受信部、及び受信した前記印刷制御データに基づく処理を行う印刷データ処理部を有する制御装置と、
    を備えることを特徴とするPOS制御システム。
  2. 前記印刷制御データは、バイナリーデータであり、
    前記印刷データ処理部は、前記印刷制御データに含まれる文字列を抽出し、抽出した文字列を含むテキストデータを生成する請求項1に記載のPOS制御システム。
  3. 前記制御装置は、
    前記印刷制御データと前記テキストデータとを対応付けて記憶する記憶部を有する請求項2に記載のPOS制御システム。
  4. 前記非同期の双方向通信は、WebSocket通信である請求項1乃至のいずれか1項に記載のPOS制御システム。
  5. 第1の外部装置から印刷制御データを受信する通信接続部と、
    前記印刷制御データを出力する通信制御部と、
    印刷を行う印刷部と、
    前記通信制御部から出力された前記印刷制御データに基づいて前記印刷部を制御し、印刷が正常に終了したか否かを通知する印刷制御部と、
    前記通信制御部から出力された前記印刷制御データを非同期の双方向通信で第2の外部装置に送信する印刷データ通信部と、
    を有し、
    前記通信制御部は、前記印刷制御部から印刷が正常に終了した旨の通知を受信した場合に、前記印刷制御データを前記印刷データ通信部に出力することを特徴とする印刷装置。
  6. POS端末、印刷装置、及び制御装置を備えるPOS制御システムの制御方法であって、
    前記POS端末は、
    決済処理を行い、前記決済処理に基づく印刷制御データを生成し、生成した前記印刷制御データを前記印刷装置に送信し、
    前記印刷装置は、
    受信した前記印刷制御データに基づく印刷を実行し、印刷が正常に終了した場合に前記印刷制御データを非同期の双方向通信で前記制御装置に送信することを特徴とするPOS制御システムの制御方法。
JP2014001450A 2014-01-08 2014-01-08 Pos制御システム、印刷装置、及びpos制御システムの制御方法 Active JP6287215B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2014001450A JP6287215B2 (ja) 2014-01-08 2014-01-08 Pos制御システム、印刷装置、及びpos制御システムの制御方法
CN201410836406.3A CN104765579B (zh) 2014-01-08 2014-12-29 Pos控制系统、pos控制系统的控制方法、以及打印装置
US14/591,490 US9224138B2 (en) 2014-01-08 2015-01-07 POS control system, control method of a POS control system, and printing device
EP15150457.8A EP2894559A1 (en) 2014-01-08 2015-01-08 POS control system, control method of a POS control system, and printing device
US14/851,256 US9406204B2 (en) 2014-01-08 2015-09-11 POS control system, control method of a POS control system, and printing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014001450A JP6287215B2 (ja) 2014-01-08 2014-01-08 Pos制御システム、印刷装置、及びpos制御システムの制御方法

Publications (3)

Publication Number Publication Date
JP2015130092A JP2015130092A (ja) 2015-07-16
JP2015130092A5 JP2015130092A5 (ja) 2016-12-08
JP6287215B2 true JP6287215B2 (ja) 2018-03-07

Family

ID=53760760

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014001450A Active JP6287215B2 (ja) 2014-01-08 2014-01-08 Pos制御システム、印刷装置、及びpos制御システムの制御方法

Country Status (1)

Country Link
JP (1) JP6287215B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2570427B (en) * 2016-11-25 2021-11-17 Mitsubishi Heavy Ind Mach Systems Ltd Client, broker, communication system, communication method, and program
JP7127506B2 (ja) 2018-11-19 2022-08-30 セイコーエプソン株式会社 印刷装置、及び印刷装置の制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4200693B2 (ja) * 2002-06-10 2008-12-24 セイコーエプソン株式会社 Posシステム、アダプタ装置およびネットワークシステム
JP4604525B2 (ja) * 2004-03-17 2011-01-05 セイコーエプソン株式会社 ネットワークシステム、プログラムおよび印刷装置の制御方法
JP4670264B2 (ja) * 2004-06-03 2011-04-13 セイコーエプソン株式会社 印刷装置、プリンタインターフェース、posシステム、プログラムおよび印刷装置の制御方法
JP4710903B2 (ja) * 2005-05-17 2011-06-29 セイコーエプソン株式会社 印刷システム、posシステム、接続デバイス、印刷システムの制御方法およびそのプログラム
JP4760416B2 (ja) * 2006-02-06 2011-08-31 セイコーエプソン株式会社 ネットワークシステムのデバイスドライバ実現方法、およびデバイスドライバ実現システム
US20080278750A1 (en) * 2007-05-11 2008-11-13 Daniel Adolf Lehotsky System And Method For Intelligent Label Printer Control
CN101930578A (zh) * 2009-12-14 2010-12-29 庾良建 一种信息推广定向交换方法及系统
JP6055201B2 (ja) * 2012-05-10 2016-12-27 キヤノン株式会社 サーバー装置、システム及びその制御方法
CN104765579B (zh) * 2014-01-08 2019-01-18 精工爱普生株式会社 Pos控制系统、pos控制系统的控制方法、以及打印装置

Also Published As

Publication number Publication date
JP2015130092A (ja) 2015-07-16

Similar Documents

Publication Publication Date Title
EP2894559A1 (en) POS control system, control method of a POS control system, and printing device
JP6424438B2 (ja) Posシステム、及びデータ処理装置
EP2953033B1 (en) Control system and control method for the control system
JP2015130087A (ja) Pos制御システム、及び、pos制御システムの制御方法
JP6287215B2 (ja) Pos制御システム、印刷装置、及びpos制御システムの制御方法
JP6439368B2 (ja) 情報処理装置、会計システム、及び、記録装置
JP2015130080A (ja) Pos制御システム、及び、印刷装置
JP2015130086A (ja) Pos制御システム、及び、印刷装置
JP6260231B2 (ja) 印刷制御システム、及び、印刷制御方法
JP2015135635A (ja) Posシステム、及び、posシステムの制御方法
JP6503905B2 (ja) ネットワークシステム、及び、ネットワークシステムの制御方法
JP6578895B2 (ja) ネットワークシステム、及び、制御装置
JP6344152B2 (ja) 記録装置、及び、記録装置の制御方法
JP6281248B2 (ja) 印刷装置、印刷装置の制御方法、及び、印刷制御システム
KR101917547B1 (ko) 네트워크 시스템 및 통신 방법
JP2015102930A (ja) 印刷制御システム、及び印刷制御方法
JP6252115B2 (ja) 印刷制御システム
JP6331337B2 (ja) 印刷制御システム、及び、印刷装置
JP6268931B2 (ja) 印刷制御装置、及び、印刷制御システム
JP6224558B2 (ja) 商品販売データ処理装置及びプログラム
JP2021121961A (ja) 電子レシート発行方法、情報処理装置及びプログラム
JP2016051273A (ja) 記録装置、及び、記録装置の制御方法
JP2015088105A (ja) 印刷装置、及び、印刷制御システム
JP2015090646A (ja) 印刷制御装置、及び、印刷制御システム
JP2015148874A (ja) 印刷制御システムの制御方法、及び印刷制御システム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161024

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161024

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171003

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180122

R150 Certificate of patent or registration of utility model

Ref document number: 6287215

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150