(57)【特許請求の範囲】
【請求項１】
記録媒体に印刷する印刷装置と、前記印刷装置と通信可能な制御装置とを備えるネットワークシステムであって、
前記制御装置は、ネットワークを介してサーバーと通信可能であり、
前記制御装置は、
印刷制御プログラムにより、前記印刷装置に印刷の実行を指示する制御コマンドを生成し、出力する処理制御部と、
前記印刷制御プログラムとは異なるメンテナンス用プログラムにより、前記処理制御部が出力した前記制御コマンドに、前記印刷装置の状態に関する情報の応答を要求する状態応答要求コマンドを付加し、前記状態応答要求コマンドが付加された前記制御コマンドを前記印刷制御プログラムに基づき確立した通信経路により前記印刷装置に送信し、前記メンテナンス用プログラムに基づき新たな通信経路は確立しない管理部と、を有し、
前記管理部は、
前記印刷装置から受信した受信データを取得して分析し、前記受信データが前記状態応答要求コマンドに対する応答のデータであるか否かを判別し、前記受信データが前記状態応答要求コマンドに対する応答のデータではない場合、前記受信データを前記処理制御部に出力し、前記受信データが前記状態応答要求コマンドに対する応答のデータである場合、前記受信データを前記処理制御部に出力することなく、前記受信データを前記サーバーへ送信する
ことを特徴とするネットワークシステム。
【請求項２】
記録媒体に印刷する印刷装置と、前記印刷装置と通信可能な制御装置とを備えるネットワークシステムであって、
前記制御装置は、
印刷制御プログラムにより、前記印刷装置に印刷の実行を指示する制御コマンドを生成し、出力する処理制御部と、
前記印刷制御プログラムとは異なるメンテナンス用プログラムにより、前記処理制御部が出力した前記制御コマンドに、前記印刷装置の状態に関する情報の応答を要求する状態応答要求コマンドを付加し、前記状態応答要求コマンドが付加された前記制御コマンドを前記印刷制御プログラムに基づき確立した通信経路により前記印刷装置に送信し、前記メンテナンス用プログラムに基づき新たな通信経路は確立しない管理部と、を有し、
前記制御コマンドは、前記印刷装置に紙片の発行を指示するコマンド群であり、前記記録媒体への画像の印刷を指示する印刷指示コマンドを含むと共に、コマンド群の末尾に前記記録媒体の切断を指示する切断指示コマンドを含み、
前記管理部は、
前記制御コマンドに前記状態応答要求コマンドを付加する場合、前記制御コマンドに含まれる前記切断指示コマンドの後ろに前記状態応答要求コマンドを付加する
ことを特徴とするネットワークシステム。
【請求項３】
記録媒体に印刷する印刷装置と通信可能な制御装置であって、
印刷制御プログラムにより、前記印刷装置に印刷の実行を指示する制御コマンドを生成し、出力する処理制御部と、
前記印刷制御プログラムとは異なるメンテナンス用プログラムにより、前記処理制御部が出力した前記制御コマンドに、前記印刷装置の状態に関する情報の応答を要求する状態応答要求コマンドを付加し、前記状態応答要求コマンドが付加された前記制御コマンドを前記印刷制御プログラムに基づき確立した通信経路により前記印刷装置に送信し、前記メンテナンス用プログラムに基づき新たな通信経路は確立しない管理部と、
サーバーと通信可能な通信部と、を備え、
前記管理部は、
前記印刷装置から受信した受信データを取得して分析し、前記受信データが前記状態応答要求コマンドに対する応答のデータであるか否かを判別し、前記受信データが前記状態応答要求コマンドに対する応答のデータではない場合、前記受信データを前記処理制御部に出力し、前記受信データが前記状態応答要求コマンドに対する応答のデータである場合、前記受信データを前記処理制御部に出力することなく、前記受信データを前記通信部により前記サーバーへ送信することを特徴とする制御装置。
【請求項４】
記録媒体に印刷する印刷装置と通信可能な制御装置であって、
印刷制御プログラムにより、前記印刷装置に印刷の実行を指示する制御コマンドを生成し、出力する処理制御部と、
前記印刷制御プログラムとは異なるメンテナンス用プログラムにより、前記処理制御部が出力した前記制御コマンドに、前記印刷装置の状態に関する情報の応答を要求する状態応答要求コマンドを付加し、前記状態応答要求コマンドが付加された前記制御コマンドを前記印刷制御プログラムに基づき確立した通信経路により前記印刷装置に送信し、前記メンテナンス用プログラムに基づき新たな通信経路は確立しない管理部と、を備え、
前記制御コマンドは、前記印刷装置に紙片の発行を指示するコマンド群であり、前記記録媒体への画像の印刷を指示する印刷指示コマンドを含むと共に、コマンド群の末尾に前記記録媒体の切断を指示する切断指示コマンドを含み、
前記管理部は、
前記制御コマンドに前記状態応答要求コマンドを付加する場合、前記制御コマンドに含まれる前記切断指示コマンドの後ろに前記状態応答要求コマンドを付加する
ことを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステム、及び、制御装置に関する。
【背景技術】
【０００２】
従来、プリンタードライバー等の印刷制御プログラムがインストールされた制御装置（ホスト機器）と、この制御装置に接続された印刷装置とを備え、制御装置が、印刷制御プログラムの機能により、印刷装置を制御するネットワークシステムが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−７２５２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したネットワークシステムにおいて、制御装置に、印刷装置の状態に関する情報を取得する機能を付加する場合、印刷制御プログラムを改変して、制御装置に当該機能を付加することが考えられる。しかしながら、この場合、印刷制御プログラムの改変に要する作業が煩雑であり、また、印刷制御プログラムの改変が、制御装置の既存の処理に影響を与える可能性がある。
本発明は、上述した事情に鑑みてなされたものであり、印刷装置に接続可能な制御装置について、制御装置にインストールされたプログラムの改変を抑制した上で、制御装置に対して印刷装置の状態を取得する機能を付加できるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、記録媒体に印刷する印刷装置と、前記印刷装置と通信可能な制御装置とを備えるネットワークシステムであって、前記制御装置は、印刷制御プログラムにより、前記印刷装置に印刷の実行を指示する制御コマンドを生成し、出力する処理制御部と、前記印刷制御プログラムとは異なるメンテナンス用プログラムにより、前記処理制御部が出力した前記制御コマンドに、前記印刷装置の状態に関する情報の応答を要求する状態応答要求コマンドを付加し、前記状態応答要求コマンドが付加された前記制御コマンドを前記印刷装置に送信する管理部と、を有することを特徴とする。
本発明の構成によれば、制御装置は、印刷制御プログラムの改変を行うことなく、メンテナンス用プログラム機能に基づく管理部により、制御装置は、印刷装置の状態を取得できる。すなわち、印刷装置に接続可能な制御装置について、制御装置にインストールされたプログラムの改変を抑制した上で、制御装置に対して印刷装置の状態を取得する機能を付加できる。
【０００６】
また、本発明は、前記制御装置の前記管理部は、前記印刷装置から受信した受信データを取得して分析し、前記受信データが前記状態応答要求コマンドに対する応答のデータであるか否かを判別し、前記受信データが前記状態応答要求コマンドに対する応答のデータではない場合、前記受信データを前記処理制御部に出力し、前記受信データが前記状態応答要求コマンドに対する応答のデータである場合、前記受信データを前記処理制御部に出力することなく、前記受信データに基づく処理を実行することを特徴とする。
本発明の構成によれば、管理部は、印刷装置から受信したデータについて、処理制御部が処理すべきデータは、処理制御部に出力して、処理制御部に実行させることができる。また、管理部は、印刷装置から受信したデータについて、自身が処理すべきデータは、処理制御部に出力することなく、自身で実行できる。
【０００７】
また、本発明は、前記制御コマンドは、前記印刷装置に紙片の発行を指示するコマンド群であり、前記記録媒体への画像の印刷を指示する印刷指示コマンドを含むと共に、コマンド群の末尾に前記記録媒体の切断を指示する切断指示コマンドを含み、前記管理部は、前記制御コマンドに前記状態応答要求コマンドを付加する場合、前記制御コマンドに含まれる前記切断指示コマンドの後ろに前記状態応答要求コマンドを付加することを特徴とする。
本発明の構成によれば、切断指示コマンドの後ろに状態応答要求コマンドを配置することにより、制御コマンドに含まれる１のコマンドと次のコマンドとの間に状態応答要求コマンドが配置されることを防止でき、正常に紙片が発行されない事態が発生することを防止できる。
【０００８】
また、上記目的を達成するために、本発明は、記録媒体に印刷する印刷装置と通信可能な制御装置であって、印刷制御プログラムにより、前記印刷装置に印刷の実行を指示する制御コマンドを生成し、出力する処理制御部と、前記印刷制御プログラムとは異なるメンテナンス用プログラムにより、前記処理制御部が出力した前記制御コマンドに、前記印刷装置の状態に関する情報の応答を要求する状態応答要求コマンドを付加し、前記状態応答要求コマンドが付加された前記制御コマンドを前記印刷装置に送信する管理部と、を備えることを特徴とする。
本発明の構成によれば、制御装置は、印刷制御プログラムの改変を行うことなく、メンテナンス用プログラム機能に基づく管理部により、制御装置は、印刷装置の状態を取得できる。すなわち、印刷装置に接続可能な制御装置について、制御装置にインストールされたプログラムの改変を抑制した上で、制御装置に対して印刷装置の状態を取得する機能を付加できる。
【０００９】
また、本発明は、前記管理部は、前記印刷装置から受信した受信データを取得して分析し、前記受信データが前記状態応答要求コマンドに対する応答のデータであるか否かを判別し、前記受信データが前記状態応答要求コマンドに対する応答のデータではない場合、前記受信データを前記処理制御部に出力し、前記受信データが前記状態応答要求コマンドに対する応答のデータである場合、前記受信データを前記処理制御部に出力することなく、前記受信データに基づく処理を実行することを特徴とする。
本発明の構成によれば、管理部は、印刷装置から受信したデータについて、処理制御部が処理すべきデータは、処理制御部に出力して、処理制御部に実行させることができる。また、管理部は、印刷装置から受信したデータについて、自身が処理すべきデータは、処理制御部に出力することなく、自身で実行できる。
【００１０】
また、本発明は、前記制御コマンドは、前記印刷装置に紙片の発行を指示するコマンド群であり、前記記録媒体への画像の印刷を指示する印刷指示コマンドを含むと共に、コマンド群の末尾に前記記録媒体の切断を指示する切断指示コマンドを含み、前記管理部は、前記制御コマンドに前記状態応答要求コマンドを付加する場合、前記制御コマンドに含まれる前記切断指示コマンドの後ろに前記状態応答要求コマンドを付加することを特徴とする。
本発明の構成によれば、切断指示コマンドの後ろに状態応答要求コマンドを配置することにより、制御コマンドに含まれる１のコマンドと次のコマンドとの間に状態応答要求コマンドが配置されることを防止でき、正常に紙片が発行されない事態が発生することを防止できる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態に係るネットワークシステムを示す図。
【図２】店舗システムを示す図。
【図３】制御装置、印刷装置の動作を示すフローチャート。
【図４】印刷装置、制御装置、メンテナンスサーバーの動作を示すフローチャート。
【図５】制御装置の要部を示す図。
【図６】制御装置の動作を示すフローチャート。
【図７】レシート発行指示コマンドを示す図。
【図８】制御装置の動作を示すフローチャート。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本実施形態に係るネットワークシステム１の構成を示す図である。ネットワークシステム１は、スーパーマーケットや、コンビニエンスストア、デパート、飲食店等の商品や、サービス等を提供し、当該提供に応じて会計が行われる店舗を運営する企業が利用するシステムである。
図１に示すように、ネットワークシステム１は、複数の店舗システム３と、メンテナンスサーバー７とを備える。
【００１３】
店舗システム３は、店舗に設けられるシステムである。
図１に示すように、店舗システム３は、ローカルネットワークＬＮを備える。ローカルネットワークＬＮには、１又は複数の制御装置８及び制御装置８に接続される印刷装置９と、ＰＯＳサーバー１０と、が接続される。
ローカルネットワークＬＮを介して行われる通信の通信規格は何でもよく、また、当該ローカルネットワークを介して行われる通信は有線通信でも無線通信でもよい。
【００１４】
印刷装置９は、印刷機能を有する装置である。印刷装置９は、印刷装置９を制御する制御装置８と共に、店舗において顧客が会計を行なうレジカウンターに設けられる。つまり、レジカウンターには、印刷装置９と、制御装置８とが設けられる。
制御装置８は、印刷装置９と通信し、印刷装置９を制御する装置である。後述するように、店舗システム３において、制御装置８は、レジカウンターで行われる会計に応じて、ＰＯＳサーバー１０から必要な情報を取得して会計処理を実行し、会計処理に基づいて、印刷装置９にレシート（紙片）を発行させる。印刷装置９により発行されたレシートは、レジ担当者によって顧客に引き渡される。
また、後述するように、制御装置８は、印刷装置９から、印刷装置９の状態に関する情報を取得し、メンテナンスサーバー７に通知する機能を有する。
ＰＯＳサーバー１０は、制御装置８が会計処理を行うのに必要な情報を記憶するサーバーである。
制御装置８、印刷装置９、及び、ＰＯＳサーバー１０の構成、機能、及び、機能に基づく処理の詳細については後述する。
【００１５】
通信装置１２は、ローカルネットワークＬＮと、グローバルネットワークＧＮとを接続するインターフェース装置である。通信装置１２は、モデム（又は、ＯＮＵ（Optical Network Unit））としての機能、ルーター機能、ＮＡＴ（Network Address Translation）機能、及び、ＤＨＣＰ（Dynamic Host Configuration Protocol）サーバー機能等を有する。通信装置１２は、ローカルネットワークに接続された機器と、グローバルネットワークＧＮに接続された機器との間で行われる通信に際し、機器間で送受信されるデータを転送する。なお、図１では、通信装置１２を１つのブロックで表現するが、通信装置１２は、機能に応じた複数の装置を有する構成でもよい。
【００１６】
店舗システム３において、制御装置８と、印刷装置９と、ＰＯＳサーバー１０とは、ローカルネットワークＬＮを介して通信可能である。
また、店舗システム３の印刷装置９は、通信装置１２の機能を利用して、ローカルネットワークＬＮ、及び、グローバルネットワークＧＮを介して、メンテナンスサーバー７と通信可能である。
【００１７】
なお、店舗システム３は、ネットワークシステム１の一部であり、「印刷装置９と、印刷装置９と通信可能な制御装置８とを備えるネットワークシステム」に相当する。
【００１８】
メンテナンスサーバー７は、店舗システム３に設けられた印刷装置９の状態を管理する機能を有するサーバーである。メンテナンスサーバー７については後述する。
【００１９】
なお、図１では、メンテナンスサーバー７、及び、ＰＯＳサーバー１０を、それぞれ、１つのブロックによって表現するが、これは、これらサーバーが、それぞれ、単一のサーバー装置により構成されることを意味するものではない。例えば、メンテナンスサーバー７、及び、ＰＯＳサーバー１０は、複数のサーバー装置を含んで構成されたものでもよい。
また、メンテナンスサーバー７と、印刷装置９との間では、ＶＰＮ（Virtual Private Network）等の、暗号化に係る技術や、仮想専用線（物理的な専用線であってもよい。）に係る技術によりセキュアな通信が行われる。
【００２０】
図２は、店舗システム３が備える制御装置８、印刷装置９、及び、ＰＯＳサーバー１０の機能的構成を示すブロック図である。
【００２１】
制御装置８は、印刷装置９を制御するホストコンピューターである。特に、制御装置８は、レジカウンターにおいて行われる会計に基づいて会計処理を実行し、会計処理に基づいて制御装置８を制御して、制御装置８にレシートを発行させる。
図２に示すように、制御装置制御部３０と、制御装置記憶部３１と、制御装置通信部３２と、制御装置デバイス通信部３３とを備える。
制御装置制御部３０は、図示しないＣＰＵや、ＲＯＭ、ＲＡＭ、その他周辺回路等を備え、制御装置８を制御する。
制御装置８には、会計処理を実行し、会計処理に基づいて印刷装置９に制御コマンドを送信して、印刷装置９を制御するＰＯＳアプリケーションＡＰ（印刷制御プログラム）がインストールされる。また、制御装置８には、メンテナンス実行部３０２（後述）に後述する各種処理を実行させるメンテナンス用プログラムＭＧがインストールされる。
制御装置制御部３０は、インストールされたＰＯＳアプリケーションＡＰを読み出して実行することにより処理を実行するＰＯＳアプリケーション実行部３０１（処理制御部）を備える。
制御装置制御部３０は、インストールされたメンテナンス用プログラムＭＧを読み出して実行することにより処理を実行するメンテナンス実行部３０２（管理部）を備える。
【００２２】
制御装置記憶部３１は、不揮発性メモリーを備え、各種データを記憶する。
制御装置通信部３２は、制御装置制御部３０の制御で、所定の通信プロトコルに従って、ローカルネットワークＬＮを介して、ローカルネットワークＬＮに接続された機器（他の制御装置８、印刷装置９、ＰＯＳサーバー１０、及び、通信装置１２を含む。）と通信する。
また、制御装置通信部３２は、制御装置制御部３０の制御で、通信装置１２を制御して、ローカルネットワークＬＮ及びグローバルネットワークＧＮを介して、グローバルネットワークＧＮに接続された機器（メンテナンスサーバー７を含む。）と所定の通信プロトコルに従って通信する。
制御装置デバイス通信部３３は、ＵＳＢの規格に従ったポートや、ＵＳＢ以外のシリアル通信規格に従ったポート、その他通信規格に従ったポートを有するインターフェースボードを備える。制御装置デバイス通信部３３は、制御装置制御部３０の制御で、インターフェースに接続されたデバイスと通信する。なお、制御装置デバイス通信部３３が無線通信機能を備え、デバイスと無線通信する構成でもよい。
【００２３】
図２の例では、制御装置８に、デバイスとして、バーコードスキャナーＢＳ、カスタマーディスプレーＣＤ、キャッシュドロアーＫＳ、ディスプレーＤＰが接続される。
【００２４】
バーコードスキャナーＢＳは、商品や、商品の包装等に付されたバーコードを読み取り、読取結果を示すデータを制御装置デバイス通信部３３に出力する。制御装置デバイス通信部３３は、バーコードスキャナーＢＳから入力されたデータを、制御装置制御部３０に出力する。
カスタマーディスプレーＣＤは、液晶ディスプレー等の表示装置であり、制御装置制御部３０の制御で、各種情報を表示する。カスタマーディスプレーＣＤに表示された情報は、レジカウンターで会計を行う顧客が視認できる。
キャッシュドロアーＫＳは、現金を収容するトレイや、トレイをロックし、ロックを解除する機構、トレイを引き出す機構等を備え、制御装置制御部３０の制御で、ロックを解除し、トレイを引き出す。
ディスプレーＤＰは、液晶表示パネル等の表示パネルを備え、制御装置制御部３０の制御で、各種情報を表示する。ディスプレーＤＰに表示された情報は、レジカウンターでレジを行うレジ担当者が視認できる。
【００２５】
印刷装置９は、ロール紙（記録媒体）を収容し、ロール紙にライン型のサーマルヘッドによってドットを形成することにより画像を印刷するラインサーマルプリンターである。
図２に示すように、印刷装置９は、印刷装置制御部４０と、印刷装置印刷部４１と、印刷装置記憶部４２と、印刷装置通信部４３と、を備える。
【００２６】
印刷装置制御部４０は、図示しないＣＰＵや、ＲＯＭ、ＲＡＭ、その他周辺回路等を備え、印刷装置９を制御する。
印刷装置制御部４０は、印刷制御部４０１を備える。印刷制御部４０１は、ＣＰＵによりファームウェア、その他のプログラムを読み出して実行する等、ハードウェアとソフトウェアとにより処理を実行する。印刷制御部４０１については後述する。
印刷装置印刷部４１は、印刷装置９の筐体に収容されたロール紙を搬送する搬送機構のほか、印刷ヘッドを有しロール紙に画像を印刷する印刷機構、カッターを有しロール紙を切断する切断機構等を備える。印刷装置印刷部４１は、印刷装置制御部４０の制御で、搬送機構によりロール紙を搬送しつつ、印刷機構によりロール紙にレシートに係る画像を印刷し、切断機構により所定の位置でロール紙を切断して、レシートを発行する。
【００２７】
印刷装置記憶部４２は、不揮発性メモリーを備え、各種データを記憶する。
印刷装置通信部４３は、印刷装置制御部４０の制御で、ローカルネットワークＬＮにアクセスし、ローカルネットワークＬＮに接続された機器（制御装置８、及び、ＰＯＳサーバー１０を含む。）と通信する。
【００２８】
図２に示すように、ＰＯＳサーバー１０は、商品マスター５１１を備える。商品マスター５１１は、店舗で販売される商品について、商品の商品コードと、商品の単価と、その他の商品に関する情報とを対応付けて記憶するデータベースである。
【００２９】
次に、店舗のレジカウンターにおいて会計が行われた場合の制御装置８、及び、印刷装置９の動作について説明する。
図３は、会計が行われた場合の制御装置８、及び、印刷装置９の動作を示すフローチャートであり、（Ａ）は制御装置８の動作を示し、（Ｂ）は印刷装置９の動作を示す。
なお、図３を用いた説明では、説明の便宜のため、制御装置８のＰＯＳアプリケーション実行部３０１が生成する制御コマンドに、後述する状態応答要求コマンドが付加されないものとする。
【００３０】
図３の（Ａ）に示すように、制御装置８のＰＯＳアプリケーション実行部３０１は、顧客の会計に応じて、会計処理を実行する（ステップＳＡ１）。
詳述すると、会計に際し、レジ担当者は、顧客が購入した商品に付されたバーコードをバーコードスキャナーＢＳにより読み取る。ＰＯＳアプリケーション実行部３０１は、バーコードスキャナーＢＳの読み取り結果に基づいて、商品の商品コードを取得し、適宜、ＰＯＳサーバー１０の商品マスター５１１を参照して、商品の単価等の会計処理に必要な商品に関する情報を取得する。ＰＯＳアプリケーション実行部３０１は、取得した商品に関する情報に基づいて、カスタマーディスプレーＣＤや、ディスプレーＤＰに商品に関する情報を表示する。また、ＰＯＳアプリケーション実行部３０１は、取得した商品に関する情報に基づいて、合計金額の計算や、釣銭の計算を行って会計を確定し、カスタマーディスプレーＣＤや、ディスプレーＤＰに計算結果を示す情報を表示し、また、キャッシュドロアーＫＳを制御する。
【００３１】
ステップＳＡ１の会計処理を実行した後、ＰＯＳアプリケーション実行部３０１は、会計処理に基づいて、印刷装置９に会計に関する情報（商品に関する情報や、合計金額に関する情報、釣銭に関する情報等）が印刷されたレシートを発行させる制御コマンドを生成する（ステップＳＡ２）。
次いで、ＰＯＳアプリケーション実行部３０１は、制御装置通信部３２を制御して、生成した制御コマンドを印刷装置９に送信する（ステップＳＡ３）。
【００３２】
図３の（Ｂ）に示すように、印刷装置９の印刷制御部４０１は、印刷装置通信部４３を制御して、制御コマンドを受信する（ステップＳＢ１）。
次いで、印刷制御部４０１は、受信した制御コマンドに基づいて、印刷装置印刷部４１を制御して、レシートを発行する（ステップＳＢ２）。
発行されたレシートは、レジ担当者によって、顧客に引き渡される。
【００３３】
次に、メンテナンスサーバー７により印刷装置９の状態を管理するときの印刷装置９、制御装置８、及び、メンテナンスサーバー７の動作について説明する。
図４は、印刷装置９、制御装置８、及び、メンテナンスサーバー７の動作を示すフローチャートであり、（Ａ）は印刷装置９の動作を示し、（Ｂ）は制御装置８の動作を示し、（Ｃ）はメンテナンスサーバー７の動作を示す。
【００３４】
図４の（Ｂ）に示すように、制御装置８の制御装置制御部３０は、応答要求送信処理を実行する（ステップＳＤ１）。
応答要求送信処理とは、印刷装置９に対して、印刷装置９の状態に関する情報を含む処理装置状態情報データ（詳細は後述）の応答を要求する状態応答要求コマンドを印刷装置９に送信する処理である。以下、ステップＳＤ１の応答要求送信処理について詳述する。
【００３５】
図５は、制御装置８の要部を説明に適した態様で模式的に示す図である。
図５では、説明の便宜のため、機能ブロックや、プログラム、ソフトウェア的（論理的）なポート、物理的な装置等を同等のブロックで表す。
図５において、符号Ｓ１は階層型のオペレーティングシステムにおけるアプリケーション層を表し、符号Ｓ２はカーネル層を表し、符号Ｓ３は物理層Ｓ３を表す。
【００３６】
図５において、仮想ポートＫＰは、ＰＯＳアプリケーション実行部３０１がデータを出力し、また、ＰＯＳアプリケーション実行部３０１に入力されたデータのインターフェースとして開設されたソフトウェア的（論理的）なポートである。ＰＯＳアプリケーション実行部３０１は、データを出力する場合、仮想ポートＫＰに出力する。また、ＰＯＳアプリケーション実行部３０１に対しては、仮想ポートＫＰからデータが出力される。
【００３７】
また、図５において、ＬＡＮポートＬＰは、ローカルネットワークＬＮ（ＬＡＮ）に対応する所定の通信プロトコルに対応する通信インターフェースに設けられた通信ポートである。ＬＡＮポートＬＰには、ＬＡＮケーブルが接続され、制御装置８は、ＬＡＮポートＬＰに接続されたＬＡＮケーブルを介して、ローカルネットワークＬＮと通信する。
【００３８】
また、図５において、ポートハンドラーＰＨは、仮想ポートＫＰと、ＬＡＮポートＬＰとの間でのデータの送受信を仲介する機能ブロックであり、少なくとも、以下の機能を有する。
すなわち、ポートハンドラーＰＨは、ＰＯＳアプリケーション実行部３０１が仮想ポートＫＰに出力した制御コマンドを、メンテナンス実行部３０２に出力する機能を有する。
また、ポートハンドラーＰＨは、メンテナンス実行部３０２からポートハンドラーＰＨに入力されたデータを、ＬＡＮポートＬＰに出力する機能を有する。ＬＡＮポートＬＰへのデータの出力に際し、ポートハンドラーＰＨは、ＰＣＳ（Port Communication Service）の機能により、ＬＡＮポートＬＰに係るインターフェースの規格（通信プロトコル）に対応したデータ変換を行う。
【００３９】
図５に示すように、ＰＯＳアプリケーション実行部３０１、メンテナンス実行部３０２、及び、ポートハンドラーＰＨは、アプリケーション層Ｓ１に位置する。仮想ポートＫＰは、カーネル層Ｓ２に位置する。ＬＡＮポートＬＰは、物理層Ｓ３に位置する。
【００４０】
図６は、図４のステップＳＤ１の応答要求送信処理の実行時におけるＰＯＳアプリケーション実行部３０１、及び、メンテナンス実行部３０２の動作を示すフローチャートである。図６の（Ａ）はＰＯＳアプリケーション実行部３０１の動作を示し、（Ｂ）はメンテナンス実行部３０２の動作を示す。
図６の説明で明らかとなるとおり、制御装置８は、印刷装置９にレシートを発行させる制御コマンドを送信するタイミングで、状態応答要求コマンドを印刷装置９に送信する。
【００４１】
図６の（Ａ）に示すように、レジカウンターにおいて会計が行われた場合、図３の（Ａ）のフローチャートを用いて説明したとおりＰＯＳアプリケーション実行部３０１は、会計処理を実行して、レシートの発行を指示する制御コマンドを生成する（ステップＳＦ１）。
以下の説明では、ＰＯＳアプリケーション実行部３０１が生成する制御コマンドのうち、レシートの発行を指示する制御コマンドを、特に、「レシート発行指示コマンド」という。
なお、本実施形態では、ＰＯＳアプリケーションＡＰが、プリンタードライバーとしての機能を有し、ＰＯＳアプリケーション実行部３０１が、制御コマンドを生成する。しかしながら、ＰＯＳアプリケーションＡＰとは別にプリンタードライバーが制御装置８にインストールされ、ＰＯＳアプリケーションＡＰとプリンタードライバーとが協働して制御コマンドを生成する構成でもよい。
【００４２】
ＰＯＳアプリケーション実行部３０１は、生成した制御コマンドを、仮想ポートＫＰに出力する（ステップＳＦ２）。
仮想ポートＫＰに出力された制御コマンド（本例では、レシート発行指示コマンド。）は、ポートハンドラーＰＨの機能により、メンテナンス実行部３０２に出力される。
【００４３】
図６の（Ｂ）に示すように、メンテナンス実行部３０２は、ＰＯＳアプリケーション実行部３０１が出力した制御コマンドを取得する（ステップＳＧ１）。
次いで、メンテナンス実行部３０２は、ステップＳＧ１で取得した制御コマンドがレシート発行指示コマンドであるか否かを判別する（ステップＳＧ２）。ここで、ＰＯＳアプリケーション実行部３０１が生成し出力する制御コマンドは、レシート発行指示コマンドでない場合がある。レシート発行指示コマンド以外の制御コマンドとしては、例えば、印刷装置９の所定の設定の変更を指示するコマンドがある。つまり、ステップＳＧ１でメンテナンス実行部３０２が取得する制御コマンドは、レシート発行指示コマンドであるとは限らないため、ステップＳＧ２の処理が必要となる。
【００４４】
図７は、レシート発行指示コマンドの内容を模式的に示す図である。図７では、説明の便宜のため、レシート発行指示コマンドの内容を、単純化して模式的に表す。
レシート発行指示コマンドは、複数のコマンドを含んで構成されたコマンド群である。
図７に示すように、レシート発行指示コマンドは、１又は複数の印刷指示コマンドを含む。印刷指示コマンドとは、レシートに印刷すべき画像（ロゴや、会計に関する情報、その他の文字列等）の印刷の実行を指示するコマンドである。印刷装置９は、レシート発行指示コマンドに含まれる印刷指示コマンドを順番に実行することにより、ロール紙に画像を印刷していく。
また、図７に示すように、レシート発行指示コマンドは、コマンド群の末尾に、ロール紙の切断を指示する切断指示コマンドを含む。印刷装置９は、切断指示コマンドに基づいてロール紙の切断を実行し、これにより、ロール紙から、レシートに対応する部分が切り離されて、レシートが発行される。
このように、レシート発行指示コマンドでは、コマンド群の末尾に切断指示コマンドが配置される。これは、印刷装置９におけるレシートの発行に係る処理のうち、ロール紙の切断は最後に実行される処理だからである。
【００４５】
図６の（Ｂ）に示すように、ステップＳＧ２において、メンテナンス実行部３０２は、ステップＳＧ１で取得した制御コマンドを分析して、レシート発行指示コマンドであるか否かを判別する。例えば、メンテナンス実行部３０２は、制御コマンドのコマンド群レシートに必ず印刷される文字列（例えば、レシートに文字列「合計金額」が必ず印刷される場合、当該文字列）の印刷の実行を指示する印刷指示コマンドが含まれるか否かを判別することによって、ステップＳＧ１で取得した制御コマンドがレシート発行指示コマンドであるか否かを判別する。ステップＳＧ２の処理はどのような方法で行われてもよい。
【００４６】
ステップＳＧ１で取得した制御コマンドがレシート発行指示コマンドではない場合（ステップＳＧ２：ＮＯ）、メンテナンス実行部３０２は、当該制御コマンドをポートハンドラーＰＨに出力する（ステップＳＧ３）。ポートハンドラーＰＨに出力された制御コマンドは、ポートハンドラーＰＨの機能により、ＬＡＮポートＬＰを介して印刷装置９に送信される。
【００４７】
ステップＳＧ１で取得した制御コマンドがレシート発行指示コマンドである場合（ステップＳＧ２：ＹＥＳ）、メンテナンス実行部３０２は、切断指示コマンドの後ろに状態応答要求コマンドを付加する（ステップＳＧ４）。上述したように、状態応答要求コマンドは、印刷装置９の状態に関する情報を含む処理装置状態情報データ（詳細は後述）の応答を要求するコマンドである。
次いで、メンテナンス実行部３０２は、状態応答要求コマンドが付加されたレシート発行指示コマンド（以下、「付加済コマンド」という。）をポートハンドラーＰＨに出力する（ステップＳＧ５）。ポートハンドラーＰＨに出力された制御コマンドは、ポートハンドラーＰＨの機能により、ＬＡＮポートＬＰを介して印刷装置９に送信される。ステップＳＧ５の処理は、「状態応答要求コマンドが付加された制御コマンドを印刷装置９に送信する」処理に相当する。
【００４８】
図６で説明した応答要求送信処理が行われて、制御装置８から印刷装置９に対して状態応答要求コマンドが送信されるため、以下の効果を奏する。
すなわち、メンテナンス実行部３０２が状態応答要求コマンドを印刷装置９に送信するための論理的な通信経路（例えば、ローカルネットワークＬＮを介してメンテナンス実行部３０２と、印刷装置９の印刷制御部４０１との間で確立されるＴＣＰコネクション）を新たに設ける必要がない。メンテナンス実行部３０２は、新たに通信コネクションを確立することなく、ＰＯＳアプリケーション実行部３０１が印刷装置９の印刷制御部４０１との間でのデータの送受信に使用する通信経路を用いて、状態応答要求コマンドの送信を実行することができる。このことは、特に、印刷制御部４０１との間での通信に使用可能な論理ポート（例えば、ＴＣＰポート）が「１つ」である場合に、有効である。なぜなら、ＰＯＳアプリケーション実行部３０１と、印刷装置９の印刷制御部４０１との間で通信コネクションが確立した状態のときに、当該通信コネクションの確立を解除することなく、当該通信コネクションを使用して、状態応答要求コマンドの送信が可能となるからである。
【００４９】
さらに、図６で説明した応答要求送信処理が行われて、制御装置８から印刷装置９に対して状態応答要求コマンドが送信されるため、ＰＯＳアプリケーションＡＰに対する改変を行うことなく、状態応答要求コマンドの印刷装置９への送信が可能となる。
すなわち、図６で説明した通り、状態応答要求コマンドの送信に関し、ＰＯＳアプリケーション実行部３０１が出力する制御コマンド（レシート発行指示コマンド）に何ら変更はない。メンテナンス実行部３０２の機能により、ＰＯＳアプリケーション実行部３０１の処理に影響を与えることなく、状態応答要求コマンドの付加が行われるからである。つまり、状態応答要求コマンドの送信のためにＰＯＳアプリケーション実行部３０１が出力する制御コマンドの内容を変更する必要がなく、従って、ＰＯＳアプリケーションＡＰに変更が必要ない。
【００５０】
また、状態応答要求コマンドは、切断指示コマンドの後ろに配置されるように付加される。これは、以下の理由による。すなわち、レシート発行指示コマンドに含まれるコマンドは、一連のコマンドであり、レシート発行指示コマンドに含まれるコマンドが順番どおりに連続して実行されることによって正常にレシートの発行が可能になる。そして、上述したように、切断指示コマンドは、レシート発行指示コマンドにおいて末尾に配置されるコマンドであるため、切断指示コマンドの後ろに状態応答要求コマンドを配置することにより、レシート発行指示コマンドに含まれる１のコマンドと次のコマンドとの間に状態応答要求コマンドが配置されることを防止でき、正常にレシートが発行されない事態が発生することを防止できる。
また、状態応答要求コマンドを付加する制御コマンドを、レシート発行指示コマンドとする理由は、レシート発行指示コマンドは必ず切断指示コマンドを含むが、レシート発行指示コマンド以外の制御コマンドは切断指示コマンドを含むとは限らないからである。
【００５１】
図４の（Ｂ）に示すように、ステップＳＤ１の応答要求送信処理により、付加済コマンド（状態応答要求コマンドが付加されたレシート発行指示コマンド）が、制御装置８から印刷装置９に送信される。
なお、レシート発行指示コマンドへの状態応答要求コマンドの付加は、ＰＯＳアプリケーション実行部３０１がレシート発行指示コマンドを生成する度に毎回行う構成でもよく、予め定められた条件が成立した場合等、所定のタイミングでのみ行う構成でもよい。
【００５２】
図４の（Ａ）に示すように、印刷装置９の印刷制御部４０１は、付加済コマンドを受信する（ステップＳＣ１）。
図４における図示は省略するが、印刷制御部４０１は、受信した付加済コマンドに含まれるレシート発行指示コマンドに基づいてレシートを発行する。
また、印刷制御部４０１は、付加済コマンドに含まれる状態応答要求コマンドに基づいて、処理装置状態情報データを生成し、制御装置８に送信（応答）する（ステップＳＣ２）。
処理装置状態情報データとは、印刷装置９を識別する印刷装置識別情報、及び、予め定められた監視項目のログを含むデータである。
監視項目とは、状態を監視し、ログを取る対象とすることが事前に定められた項目のことである。監視項目として、例えば、印刷に関するエラーの発生の有無や、通信に関するエラーの発生の有無、印刷ヘッドを使用可能な残日数、カッターを使用可能な残日数等がある。
以下、処理装置状態情報データに含まれる監視項目のそれぞれのログのことを監視項目ログ情報という。
処理装置状態情報データは、状態応答要求コマンドに対する応答のデータに相当する。
【００５３】
図４の（Ｂ）に示すように、制御装置８の制御装置制御部３０は、印刷装置９が送信したデータの受信に応じて、応答受信処理を実行する（ステップＳＤ２）。
以下、ステップＳＤ２の応答受信処理について詳述する。
【００５４】
図８は、図４の（Ｂ）の応答受信処理の実行時のメンテナンス実行部３０２の動作を示すフローチャートである。
なお、制御装置８が送信したデータは、ＬＡＮポートＬＰを介してポートハンドラーＰＨに出力され、ポートハンドラーＰＨの機能によりメンテナンス実行部３０２に出力される。以下、制御装置８が印刷装置９から受信したデータ（ポートハンドラーＰＨからメンテナンス実行部３０２に出力されたデータ）のことを「受信データ」という。
【００５５】
図８に示すように、メンテナンス実行部３０２は、ポートハンドラーＰＨが出力した受信データを取得する（ステップＳＨ１）。
次いで、メンテナンス実行部３０２は、ステップＳＨ１で取得した受信データを分析し、当該受信データが、ステップＳＤ１の応答要求送信処理で送信した状態応答要求コマンドに対する応答のデータ（処理装置状態情報データ）であるか否かを判別する（ステップＳＨ２）。
状態応答要求コマンドに対する応答のデータ（処理装置状態情報データ）は、データのフォーマットが定まっており、ステップＳＨ２において、メンテナンス実行部３０２は、受信データのフォーマットに基づいて判別を実行する。ステップＳＤ１の応答要求送信処理で送信した状態応答要求コマンドに対する応答のデータ（処理装置状態情報データ）であるか否かの判別は、どのような方法で行われてもよい。
【００５６】
ステップＳＨ１で取得した受信データが、状態応答要求コマンドに対する応答のデータ（処理装置状態情報データ）ではない場合（ステップＳＨ２：ＮＯ）、メンテナンス実行部３０２は、ポートハンドラーＰＨに受信データを出力する（ステップＳＨ３）。ポートハンドラーＰＨに入力された受信データは、ポートハンドラーＰＨの機能により、ＰＯＳアプリケーション実行部３０１に出力される。
ステップＳＨ３の処理は、「受信データが状態応答要求コマンドに対する応答のデータではない場合、受信データをＰＯＳアプリケーション実行部３０１（処理制御部）に出力する処理」に相当する。
このように、受信データが、状態応答要求コマンドに対する応答のデータ（処理装置状態情報データ）ではない場合、メンテナンス実行部３０２は、ＰＯＳアプリケーション実行部３０１に受信データを出力する。これは、この場合、受信データは、印刷装置９が、ＰＯＳアプリケーション実行部３０１に処理させることを目的として送信したデータだからである。
【００５７】
一方、ステップＳＨ１で取得した受信データが、状態応答要求コマンドに対する応答のデータ（処理装置状態情報データ）である場合（ステップＳＨ２：ＹＥＳ）、メンテナンス実行部３０２は、ポートハンドラーＰＨに受信データを出力することなく、受信データ（＝処理装置状態情報データ）に基づく処理を実行する（ステップＳＨ４）。具体的には、メンテナンス実行部３０２は、処理装置状態情報データをメンテナンスサーバー７に送信する。
ステップＳＨ４の処理は、「受信データが状態応答要求コマンドに対する応答のデータである場合、受信データをＰＯＳアプリケーション実行部３０１（処理制御部）に出力することなく、受信データに基づく処理を実行する」ことに相当する。
このように、受信データが、状態応答要求コマンドに対する応答のデータである場合、メンテナンス実行部３０２は、ＰＯＳアプリケーション実行部３０１に受信データを出力することなく、受信データに基づく処理を実行する。これにより、ＰＯＳアプリケーション実行部３０１に想定されないデータが入力されて、ＰＯＳアプリケーション実行部３０１の処理に影響が生じることを防止できる。
【００５８】
なお、図４では、受信データが、状態応答要求コマンドに対する応答のデータ（処理装置状態情報データ）であったものとして、フローチャートを記載している。
【００５９】
図４の（Ｃ）に示すように、メンテナンスサーバー７は、制御装置８が送信した処理装置状態情報データを受信する（ステップＳＥ１）。
次いで、メンテナンスサーバー７は、受信した処理装置状態情報データに基づいて、ステータスデータベース（不図示）を更新する（ステップＳＥ２）。
ステータスデータベースとは、店舗システム３に設けられた印刷装置９ごとに、印刷装置９を識別する印刷装置識別情報と、監視項目ログ情報とを対応付けて記憶するデータベースである。
ステップＳＥ２において、メンテナンスサーバー７は、受信した処理装置状態情報データに基づいて、ステータスデータベースに記憶された対応する監視項目ログ情報を更新する。
【００６０】
以上のようにして、ステータスデータベースは、店舗システム３に設けられた印刷装置９のそれぞれについて、印刷装置９を識別する印刷装置情報と、最新の監視項目ログ情報とが対応付けられた状態とされる。
メンテナンスサーバー７は、特定の印刷装置９の状態についての問い合わせに応じて、ステータスデータベースを参照し、当該特定の印刷装置９の監視項目ログ情報を取得する。次いで、メンテナンスサーバー７は、取得した監視項目ログ情報に基づいて、当該特定の印刷装置９の状態に関する情報を応答する。
【００６１】
以上説明したように、本実施形態に係るネットワークシステム１に含まれる店舗システム３は、ロール紙（記録媒体）に印刷する印刷装置９と、印刷装置９と通信可能な制御装置８とを備える。制御装置８は、ＰＯＳアプリケーションＡＰ（印刷制御プログラム）により、印刷装置９に印刷の実行を指示する制御コマンドを生成し、出力するＰＯＳアプリケーション実行部（処理制御部）を有する。また、制御装置８は、ＰＯＳアプリケーションＡＰとは異なるメンテナンス用プログラムＭＧにより、ＰＯＳアプリケーション実行部３０１が出力した制御コマンドに、印刷装置９の状態に関する情報の応答を要求する状態応答要求コマンドを付加し、状態応答要求コマンドが付加された制御コマンドを印刷装置９に送信するメンテナンス実行部３０２（管理部）を有する。
この構成によれば、制御装置８は、ＰＯＳアプリケーションＡＰの改変を行うことなく、メンテナンス用プログラムＭＧの機能に基づくメンテナンス実行部３０２により、制御装置８は、印刷装置９の状態を取得できる。すなわち、印刷装置９に接続可能な制御装置８について、制御装置８にインストールされたプログラムの改変を抑制した上で、制御装置８に対して印刷装置９の状態を取得する機能を付加できる。
なお、印刷制御プログラムに相当するプログラムは、ＰＯＳアプリケーションＡＰに限られない。例えば、ＰＯＳアプリケーションＡＰとプリンタードライバーの組み合わせであってもよく、他のプログラムであってもよい。すなわち、印刷制御プログラムは、メンテナンス用プログラムＭＧとは異なるプログラムであればよい。
【００６２】
また、本実施形態では、制御装置８のメンテナンス実行部３０２は、印刷装置９から受信した受信データを取得して分析し、受信データが状態応答要求コマンドに対する応答のデータであるか否かを判別する。そして、メンテナンス実行部３０２は、受信データが状態応答要求コマンドに対する応答のデータではない場合、受信データをＰＯＳアプリケーション実行部３０１に出力し、受信データが状態応答要求コマンドに対する応答のデータである場合、受信データをＰＯＳアプリケーション実行部３０１に出力することなく、受信データに基づく処理を実行する。
この構成によれば、メンテナンス実行部３０２は、印刷装置９から受信したデータについて、ＰＯＳアプリケーション実行部３０１が処理すべきデータは、ＰＯＳアプリケーション実行部３０１に出力して、ＰＯＳアプリケーション実行部３０１に実行させることができる。また、メンテナンス実行部３０２は、印刷装置９から受信したデータについて、自身が処理すべきデータは、ＰＯＳアプリケーション実行部３０１に出力することなく、自身で実行できる。
【００６３】
また、本実施形態では、ＰＯＳアプリケーション実行部３０１が出力する制御コマンドは、印刷装置９にレシート（紙片）の発行を指示するコマンド群であり、ロール紙への画像の印刷を指示する印刷指示コマンドを含むと共に、コマンド群の末尾にロール紙の切断を指示する切断指示コマンドを含む。そして、メンテナンス実行部３０２は、制御コマンドに状態応答要求コマンドを付加する場合、制御コマンドに含まれる切断指示コマンドの後ろに前記状態応答要求コマンドを付加する。
この構成によれば、切断指示コマンドの後ろに状態応答要求コマンドを配置することにより、レシート発行指示コマンドに含まれる１のコマンドと次のコマンドとの間に状態応答要求コマンドが配置されることを防止でき、正常にレシートが発行されない事態が発生することを防止できる。
【００６４】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、店舗システム３が、店舗に適用される場合を例示して発明を説明したが、店舗システム３が適用される施設は、店舗に限らない。
また例えば、ネットワークシステム１を構成する各装置の通信方法はどのような方法でもよい。
また例えば、上述した実施形態では、印刷装置９の記録方式は、サーマル式としたが、記録方式は何でもよい。
また例えば、上述した実施形態における各機能ブロックはハードウェアとソフトウェアにより任意に実現可能であり、特定のハードウェア構成を示唆するものではない。
【符号の説明】
【００６５】
…  １…ネットワークシステム、３…店舗システム、７…メンテナンスサーバー、８…制御装置、９…印刷装置、１０…ＰＯＳサーバー、１２…通信装置、３０１…ＰＯＳアプリケーション実行部（処理制御部）、３０２…メンテナンス実行部（管理部）、ＡＰ…ＰＯＳアプリケーション（印刷制御プログラム）、ＭＧ…メンテナンス用プログラム。
【図１】
0006578894.tif 000002
【図２】
0006578894.tif 000003
【図３】
0006578894.tif 000004
【図４】
0006578894.tif 000005
【図５】
0006578894.tif 000006
【図６】
0006578894.tif 000007
【図７】
0006578894.tif 000008
【図８】
0006578894.tif 000009