(57)【要約】【課題】ウェブブラウザーが動作する複数のタブレット端末が、印刷装置に接続するデバイスの制御を行えるようにする。【解決手段】印刷装置は、印刷ユニットと、デバイスが接続可能なデバイス通信部と、ウェブブラウザーが動作する複数のタブレット端末が接続可能な印刷装置通信部と、印刷装置通信部により１のタブレット端末からデバイスに対する要求を受信すると、デバイスを制御する制御オブジェクトを生成して、デバイスの制御を確立するデバイス制御部と、を備え、デバイス制御部は、制御オブジェクトによる１のタブレット端末に対するデバイスの制御が確立している場合に、印刷装置通信部により１のタブレット端末と異なる他のタブレット端末からデバイスに対する要求を受信すると、制御オブジェクトを消去することなく、他のタブレット端末に対しても制御オブジェクトによる前記デバイスの制御を確立する。【選択図】図２
2020023136.tif 000002
【特許請求の範囲】
【請求項１】
印刷部と、
デバイスが接続可能な第１接続部と、
ウェブブラウザーが動作する複数の端末が接続可能な第２接続部と、
前記第２接続部により１の前記端末から前記デバイスに対する要求を受信すると、前記デバイスを制御する制御オブジェクトを生成して、前記デバイスの制御を確立する制御部と、を備え、
前記制御部は、
前記制御オブジェクトによる１の前記端末に対する前記デバイスの制御が確立している場合に、前記第２接続部により１の前記端末と異なる他の前記端末から前記デバイスに対する要求を受信すると、前記制御オブジェクトを消去することなく、他の前記端末に対しても前記制御オブジェクトによる前記デバイスの制御を確立する、
印刷装置。
【請求項２】
前記制御部は、
前記第２接続部に接続する前記端末の数が１である場合、前記第２接続部により前記端末から前記制御オブジェクトの消去を指示する消去コマンドを受信すると、前記制御オブジェクトを消去し、
前記第２接続部に接続する前記端末の数が複数である場合、前記第２接続部により１の前記端末から前記消去コマンドを受信しても、前記制御オブジェクトを消去しない、
請求項１に記載の印刷装置。
【請求項３】
前記制御部は、
前記第２接続部に接続する１の前記端末から前記制御オブジェクトの消去を指示する消去コマンドを受信すると、前記制御オブジェクトを消去することなく、前記消去コマンドを送信した１の前記端末に対し、前記制御オブジェクトによる前記デバイスの制御の確立を解消する、
請求項１に記載の印刷装置。
【請求項４】
前記デバイスは、入力装置であり、
前記制御部は、前記第２接続部に複数の前記端末が接続する場合、前記第１接続部により前記デバイスから受信したデータを、前記制御オブジェクトにより前記第２接続部に接続する複数の前記端末に送信する、
請求項１から３のいずれか一項に記載の印刷装置。
【請求項５】
前記デバイスは、バーコード読取装置であり、
前記第２接続部に接続する複数の前記端末は、前記バーコード読取装置が読み取ったバーコードデータに基づいて会計処理を実行するＰＯＳ端末と、前記バーコードデータに基づいて表示する表示端末とを少なくとも含む、
請求項４に記載の印刷装置。
【請求項６】
デバイスと、ウェブブラウザーが動作する複数の端末が接続可能な印刷装置の制御方法であって、
１の前記端末から前記デバイスに対する要求を受信すると、前記デバイスを制御する制御オブジェクトを生成して、前記デバイスの制御を確立し、
前記制御オブジェクトによる１の前記端末に対する前記デバイスの制御が確立している場合に、１の前記端末と異なる他の前記端末から前記デバイスに対する要求を受信すると、前記制御オブジェクトを消去することなく、他の前記端末に対しても前記制御オブジェクトによる前記デバイスの制御を確立する、
印刷装置の制御方法。
【請求項７】
デバイスと、
ウェブブラウザーが動作する実行する複数の端末と、
前記デバイスと複数の前記端末と接続可能な印刷装置と、を備える制御システムであって、
１の前記端末は、前記印刷装置へ前記デバイスに対する要求を送信し、
前記印刷装置は、１の前記端末から前記デバイスに対する要求を受信すると、前記デバイスを制御する制御オブジェクトを生成して、前記デバイスの制御を確立し、前記制御オブジェクトによる１の前記端末に対する前記デバイスの制御が確立している場合に、１の前記端末と異なる他の前記端末から前記デバイスに対する要求を受信すると、前記制御オブジェクトを消去することなく、他の前記端末に対しても前記制御オブジェクトによる前記デバイスの制御を確立する、
制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、印刷装置の制御方法、及び、制御システムに関する。
【背景技術】
【０００２】
従来、ウェブブラウザーが動作する端末が、印刷装置に接続するデバイスの制御を行う技術が知られている（例えば、特許文献１参照）。特許文献１では、ウェブブラウザーが動作するタブレット端末が、印刷装置を介して、印刷装置に接続するバーコードリーダーが読み取ったバーコードデータを取得する技術を開示する。
【０００３】
特許文献１に記載のような印刷装置は、デバイスを制御するオブジェクトである制御オブジェクトを生成し、生成した制御オブジェクトに１のデバイスと１の端末とを対応付け、制御オブジェクトによって端末がデバイスを１対１で制御する。他の端末が既にデバイスの制御が確立している１のデバイスを制御しようとする場合、印刷装置は、この１のデバイスに対応する制御オブジェクトを消去して新たな制御オブジェクトを生成し、生成した新たな制御オブジェクトにこの１のデバイスと他の端末とを対応付ける。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−４９７２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の印刷装置では、１の端末がデバイスの制御が確立している場合に、他の端末がこのデバイスを制御しようとすると、デバイスに対応する制御オブジェクトを一旦消去した後、他の端末のため再び制御オブジェクトを生成しなければならないので、処理が多く、時間も掛かる。
【課題を解決するための手段】
【０００６】
本発明の一態様は、印刷部と、デバイスが接続可能な第１接続部と、ウェブブラウザーが動作する複数の端末が接続可能な第２接続部と、前記第２接続部により１の前記端末から前記デバイスに対する要求を受信すると、前記デバイスを制御する制御オブジェクトを生成して、前記デバイスの制御を確立する制御部と、を備え、前記制御部は、前記制御オブジェクトによる１の前記端末に対する前記デバイスの制御が確立している場合に、前記第２接続部により１の前記端末と異なる他の前記端末から前記デバイスに対する要求を受信すると、前記制御オブジェクトを消去することなく、他の前記端末に対しても前記制御オブジェクトによる前記デバイスの制御を確立する、印刷装置である。
【０００７】
上記印刷装置において、前記制御部は、前記第２接続部に接続する前記端末の数が１である場合、前記第２接続部により前記端末から前記制御オブジェクトの消去を指示する消去コマンドを受信すると、前記制御オブジェクトを消去し、前記第２接続部に接続する前記端末の数が複数である場合、前記第２接続部により１の前記端末から前記消去コマンドを受信しても、前記制御オブジェクトを消去しない構成としてもよい。
【０００８】
上記印刷装置において、前記制御部は、前記第２接続部に接続する１の前記端末から前記制御オブジェクトの消去を指示する消去コマンドを受信すると、前記制御オブジェクトを消去することなく、前記消去コマンドを送信した１の前記端末に対し、前記制御オブジェクトによる前記デバイスの制御の確立を解消する構成としてもよい。
【０００９】
上記印刷装置において、前記デバイスは、入力装置であり、前記制御部は、前記第２接続部に複数の前記端末が接続する場合、前記第１接続部により前記デバイスから受信したデータを、前記制御オブジェクトにより前記第２接続部に接続する複数の前記端末に送信する構成としてもよい。
【００１０】
上記印刷装置において、前記デバイスは、バーコード読取装置であり、前記第２接続部に接続する複数の前記端末は、前記バーコード読取装置が読み取ったバーコードデータに基づいて会計処理を実行するＰＯＳ端末と、前記バーコードデータに基づいて表示する表示端末とを少なくとも含む構成でもよい。
【００１１】
本発明の別の一態様は、デバイスと、ウェブブラウザーが動作する複数の端末が接続可能な印刷装置の制御方法であって、１の前記端末から前記デバイスに対する要求を受信すると、前記デバイスを制御する制御オブジェクトを生成して、前記デバイスの制御を確立し、前記制御オブジェクトによる１の前記端末に対する前記デバイスの制御が確立している場合に、１の前記端末と異なる他の前記端末から前記デバイスに対する要求を受信すると、前記制御オブジェクトを消去することなく、他の前記端末に対しても前記制御オブジェクトによる前記デバイスの制御を確立する。
【００１２】
本発明のさらに別の一態様は、デバイスと、ウェブブラウザーが動作する複数の端末と、前記デバイスと複数の前記端末と接続可能な印刷装置と、を備える制御システムであって、１の前記端末は、前記印刷装置へ前記デバイスに対する要求を送信し、前記印刷装置は、１の前記端末から前記デバイスに対する要求を受信すると、前記デバイスを制御する制御オブジェクトを生成して、前記デバイスの制御を確立し、前記制御オブジェクトによる１の前記端末に対する前記デバイスの制御が確立している場合に、１の前記端末と異なる他の前記端末から前記デバイスに対する要求を受信すると、前記制御オブジェクトを消去することなく、他の前記端末に対しても前記制御オブジェクトによる前記デバイスの制御を確立する。
【図面の簡単な説明】
【００１３】
【図１】ＰＯＳシステムの構成を示す図。
【図２】タブレット端末、印刷装置、及びＰＯＳサーバーの構成を示す図。
【図３】ブラウザー実行部、及びデバイス制御部の機能ブロック図。
【図４】制御、インターフェースオブジェクトの生成に関するフローチャート。
【図５】制御、インターフェースオブジェクトの消去に関するフローチャート。
【図６】第１実施形態における印刷装置の動作を示すフローチャート。
【図７】第２実施形態における印刷装置の動作を示すフローチャート。
【発明を実施するための形態】
【００１４】
［第１実施形態］
まず、第１実施形態について説明する。
図１は、ＰＯＳ（Point of Sales）システム１０００の構成を示す図である。
ＰＯＳシステム１０００は、ショッピングセンターや、コンビニエンスストア、車内販売等の小売業や、レストランや、喫茶店、居酒屋等の飲食業等の業務で利用されるシステムである。ＰＯＳシステム１０００は、例えば、店舗における商品の販売状況や、在庫状況、売上状況等を管理する機能や、顧客が購入した商品に応じて会計を行う機能、会計に応じてレシートを発行する機能等を有する。
【００１５】
本実施形態では、会計処理を行うレジカウンターＬが１又は複数設けられた店舗Ｔにおいて、ＰＯＳシステム１０００が適用された場合を例示する。図１では、店舗ＴにレジカウンターＬが複数設けられている場合を例示している。
【００１６】
１つのレジカウンターＬには、制御システムの一態様である会計システム２０００が適用される。会計システム２０００は、ＰＯＳ端末２Ａと、表示端末２Ｂと、印刷装置１とを備える。ＰＯＳ端末２Ａ、及び表示端末２Ｂは、端末に相当する。
【００１７】
ＰＯＳ端末２Ａは、前面に形成された表示領域にＰＯＳ端末タッチパネル２３Ａが設けられ、タッチ操作によって各種入力が可能なタブレット型のコンピューターである。ＰＯＳ端末２Ａは、レジカウンターＬにおいて会計を担当するレジ担当者が使用する端末であり、レジカウンターＬにおける会計に際しレジ担当者にユーザーインターフェースを提供する。
【００１８】
表示端末２Ｂは、前面に形成された表示領域に表示端末タッチパネル２３Ｂが設けられ、タッチ操作によって各種入力が可能なタブレット型のコンピューターである。表示端末２Ｂは、レジカウンターＬにおいて顧客が表示端末タッチパネル２３Ｂを視認できる位置に配され、会計に関する情報を顧客に対して表示する端末である。
【００１９】
以下では、ＰＯＳ端末２Ａと表示端末２Ｂとを区別しない場合、タブレット端末２と総称する。なお、タブレット端末２も、端末に相当する。
【００２０】
印刷装置１は、印刷媒体の一態様であるロール紙を収容し、収容したロール紙にライン型のサーマル方式の印刷ヘッドでドットを形成して文字や画像等を印刷する装置である。なお、本実施形態に係る印刷装置１の印刷方式はサーマル方式を例示するが、印刷装置１の印刷方式は、サーマル方式に限らずインクジェット方式等の他の印刷方式でもよい。また、印刷装置１の印刷ヘッドは、ライン型に限らず、シリアル型でもよい。
【００２１】
印刷装置１には、バーコードリーダー４１、キャッシュチェンジャー４２、及びカードリーダー４３の少なくとも１つが接続される。バーコードリーダー４１、キャッシュチェンジャー４２、及びカードリーダー４３のそれぞれについては、後述する。バーコードリーダー４１、キャッシュチェンジャー４２、及びカードリーダー４３は、デバイスに相当する。また、バーコードリーダー４１、及びカードリーダー４３は、入力装置に相当する。また、バーコードリーダー４１は、バーコード読取装置に相当する。
【００２２】
以下では、バーコードリーダー４１、キャッシュチェンジャー４２、及び、カードリーダー４３を区別しない場合、デバイス４と総称する。
【００２３】
図２は、ＰＯＳシステム１０００を構成する、ＰＯＳ端末２Ａ、表示端末２Ｂ、印刷装置１、及び、ＰＯＳサーバー３の構成を示す図である。
【００２４】
まず、印刷装置１の構成について説明する。
印刷装置１は、印刷装置制御部１０、印刷装置記憶部１１、印刷装置通信部１２、印刷ユニット１３、及び、デバイス通信部１４を備える。印刷ユニット１３は、印刷部に相当する。印刷装置通信部１２は、第１接続部に相当する。デバイス通信部１４は、第２接続部に相当する。
【００２５】
印刷装置制御部１０は、ハードウェアとして、ＣＰＵ等のプロセッサー、その他の周辺回路を備える。印刷装置記憶部１１は、ファームウェアなどの制御プログラム１１Ａや各種データを不揮発に記憶するＲＯＭ、プロセッサーのワークエリアとして機能するＲＡＭ、などのメモリーを備える。図２では、これらハードウェアの図示を省略している。印刷装置制御部１０は、具備するプロセッサーが印刷装置記憶部１１のＲＯＭに記憶された制御プログラム１１Ａを読み出して処理を実行する。このように、ハードウェア及びソフトウェアの協働により処理を実行する。
【００２６】
印刷装置制御部１０は、機能ブロックとして、デバイス制御部１００を備える。デバイス制御部１００は、制御部に相当する。印刷装置制御部１０の機能ブロックは、ＣＰＵ等のプロセッサーが制御プログラム１１Ａに従って演算処理を実行することで実現される機能をブロックとして便宜的に示したものであり、特定のアプリケーションソフトウェアやハードウェアを示すものではない。デバイス制御部１００の詳細については、後述する。
【００２７】
印刷装置記憶部１１は、制御プログラム１１Ａやその他の各種データを不揮発に記憶するメモリーデバイスにより構成される。印刷装置記憶部１１は、印刷装置制御部１０を構成するＲＯＭにより構成されてもよく、ＲＯＭ以外のメモリーデバイスにより構成されてもよい。また、印刷装置記憶部１１は、印刷装置制御部１０を構成するＲＡＭを含んでもよい。
【００２８】
印刷装置通信部１２は、所定の通信規格に従ったネットワークカード等の無線通信する通信ハードウェア（通信回路、通信ポート、通信基板、通信コネクター）を備え、印刷装置制御部１０の制御により、タブレット端末２と無線通信する。印刷装置通信部１２が通信に使用する通信規格は、ＨＴＴＰや、ＷｅｂＳｏｃｋｅｔ等が例として挙げられる。
【００２９】
印刷ユニット１３は、ロール紙を搬送する搬送機構、印刷ヘッド等のロール紙に文字や画像等を印刷する印刷機構、ロール紙を切断する切断機構等を備える。印刷ユニット１３は、印刷装置制御部１０の制御で、レシートに係る画像をロール紙に印刷した後、所定の位置でロール紙を切断することでレシートを発行することが可能である。
【００３０】
デバイス通信部１４は、ＵＳＢ等のシリアル通信規格や、パラレル通信規格、イーサネット等の有線ＬＡＮに係る通信規格、Ｂｌｕｅｔｏｏｔｈ等の無線通信に係る通信規格等に従ったコネクターやインターフェース回路、通信ポート、通信基板等の通信ハードウェアを備える。デバイス通信部１４は、印刷装置制御部１０の制御で、印刷装置１に接続されたデバイス４と通信する。イーサネットは、登録商標である。また、Ｂｌｕｅｔｏｏｔｈは、登録商標である。
【００３１】
印刷装置１には、バーコードリーダー４１、キャッシュチェンジャー４２、及び、カードリーダー４３が接続する。
【００３２】
バーコードリーダー４１は、商品や、商品の包装等に付されたバーコードを読み取り、読取結果を示すバーコードデータをデバイス通信部１４へ入力する。デバイス通信部１４は、バーコードリーダー４１から入力されたバーコードデータを、印刷装置制御部１０に出力する。
【００３３】
キャッシュチェンジャー（キャッシュドロサー）４２は、紙幣や、貨幣、金券等を収容して管理（収納箱の開閉、預り金の入金、釣銭の出金）するデバイスである。
【００３４】
カードリーダー４３は、クレジットカードや会員カード等の磁気カード型記録媒体に記録された情報を磁気的に読み取り、読取結果を示すカードデータをデバイス通信部１４へ入力する。デバイス通信部１４は、カードリーダー４３から入力されたカードデータを、印刷装置制御部１０に出力する。
【００３５】
次に、ＰＯＳ端末２Ａの構成を説明する。
ＰＯＳ端末２Ａは、ＰＯＳ端末制御部２０Ａ、ＰＯＳ端末記憶部２１Ａ、ＰＯＳ端末通信部２２Ａ、及び、ＰＯＳ端末タッチパネル２３Ａを備える。
【００３６】
ＰＯＳ端末制御部２０Ａは、ハードウェアとして、ＣＰＵ等のプロセッサー、その他の周辺回路を備える。ＰＯＳ端末記憶部２１Ａは、アプリケーションプログラムなどの制御プログラム２１０Ａや各種データを不揮発に記憶するＲＯＭ、プロセッサーのワークエリアとして機能するＲＡＭ、などのメモリーを備える。図２では、これらハードウェアの図示を省略している。ＰＯＳ端末制御部２０Ａは、プロセッサーがＰＯＳ端末記憶部２１ＡのＲＯＭに記憶された制御プログラム２１０Ａや、ＲＡＭに記憶したプログラムやデータを読み出して処理を実行する。このように、ハードウェア及びソフトウェアの協働により処理を実行する。
【００３７】
ＰＯＳ端末制御部２０Ａは、機能ブロックとして、ＰＯＳブラウザー実行部２００Ａを備える。ＰＯＳブラウザー実行部２００Ａは、ＰＯＳ端末制御部２０Ａのプロセッサーがブラウザーアプリ（ウェブアプリケーション）２１１Ａを読み出して実行することにより、ＰＯＳ端末制御部２０Ａがウェブブラウザーの機能を実現する機能部である。
【００３８】
ＰＯＳブラウザー実行部２００Ａは、ＰＯＳ端末記憶部２１Ａに記憶したウェブブラウザーを読み出して実行する。ウェブブラウザーの機能により、ＨＴＭＬ等のマークアップ言語やスクリプト言語で記述されたウェブページを、ＰＯＳサーバー３からＰＯＳ端末記憶部２１Ａにダウンロードする。ダウンロードされたウェブページのデータは、例えば図示しないＲＡＭに記憶される。ＰＯＳブラウザー実行部２００Ａは、ダウンロードされたウェブページのデータを読み込み、このウェブページを表示させる表示データを生成して、ＰＯＳ端末タッチパネル２３Ａに出力する。ＰＯＳ端末タッチパネル２３Ａは、入力された表示データに係るウェブページの画像を表示する。特に、ＰＯＳ端末タッチパネル２３Ａは、会計に際しレジ担当者に提供するユーザーインターフェースに係るウェブページの画像を表示する。
また、ＰＯＳブラウザー実行部２００Ａは、ＰＯＳ端末タッチパネル２３Ａがタッチ操作を検出した場合、このタッチ操作に対応したＰＯＳ端末タッチパネル２３Ａの表領域の座標データ、及び、ＰＯＳ端末タッチパネル２３Ａに出力した表示用のデータに基づき、入力内容を特定する。ＰＯＳブラウザー実行部２００Ａは、適宜、特定した入力内容に基づいて、例えばスクリプトの機能によって適切な処理を実行する。
【００３９】
ＰＯＳ端末記憶部２１Ａは、制御プログラム２１０Ａや、ブラウザーアプリ２１１Ａ、その他の各種データを不揮発に記憶するメモリーデバイスにより構成される。ＰＯＳ端末記憶部２１Ａは、ＰＯＳ端末制御部２０Ａを構成するＲＯＭにより構成されてもよく、ＲＯＭ以外のメモリーデバイスにより構成されてもよい。また、ＰＯＳ端末記憶部２１Ａは、ＰＯＳ端末制御部２０Ａを構成するＲＡＭを含んでもよい。ブラウザーアプリ２１１Ａは、ＰＯＳ端末制御部２０ＡがＰＯＳブラウザー実行部２００Ａとして機能するためのアプリケーションプログラムである。ブラウザーアプリ２１１Ａは、予めＰＯＳ端末にインストールされている。
【００４０】
ＰＯＳ端末通信部２２Ａは、所定の通信規格に従ったネットワークカード等の無線通信する通信ハードウェア（通信回路、通信ポート、通信基板、通信コネクター）を備え、ＰＯＳ端末制御部２０Ａの制御により、印刷装置１、及びＰＯＳサーバー３と無線通信する。ＰＯＳ端末通信部２２Ａが通信に使用する通信規格は、ＨＴＴＰや、ＷｅｂＳｏｃｋｅｔ等が例として挙げられる。
【００４１】
ＰＯＳ端末タッチパネル２３Ａは、液晶表示パネル等の表示パネルと、表示パネルに重ねて、或いは一体に設けられたタッチセンサーとを備える。表示パネルは、ＰＯＳ端末制御部２０Ａの制御で、各種画像や、各種画面等を表示する。タッチセンサーは、タッチ操作を検出し、ＰＯＳ端末制御部２０Ａに出力する。ＰＯＳ端末制御部２０Ａは、タッチセンサーからの入力に基づいて、タッチ操作に対応する処理を実行する。
【００４２】
次に、表示端末２Ｂについて説明する。
表示端末２Ｂは、表示端末制御部２０Ｂ、表示端末記憶部２１Ｂ、表示端末通信部２２Ｂ、及び、表示端末タッチパネル２３Ｂを備える。
【００４３】
表示端末制御部２０Ｂは、ＰＯＳ端末制御部２０Ａと同様に構成され、具備するプロセッサーが表示端末記憶部２１ＢのＲＯＭに記憶された制御プログラム２１０Ｂや、ＲＡＭに記憶したプログラムやデータを読み出して処理を実行する。このように、ハードウェア及びソフトウェアの協働により処理を実行する。
【００４４】
表示端末制御部２０Ｂは、機能ブロックとして、ＰＯＳブラウザー実行部２００Ａと同様の表示ブラウザー実行部２００Ｂを備える。表示ブラウザー実行部２００Ｂは、表示端末制御部２０Ｂのプロセッサーがブラウザーアプリ（ウェブアプリケーション）２１１Ｂを読み出して実行することにより、表示端末制御部２０Ｂがウェブブラウザーの機能を実現する機能部である。
【００４５】
表示ブラウザー実行部２００Ｂは、ＰＯＳ端末記憶部２１Ｂに記憶したウェブブラウザーの機能により、ＰＯＳブラウザー実行部２００Ａと同様の処理を実行する。つまり、表示ブラウザー実行部２００Ｂは、ＰＯＳ端末記憶部２１Ｂにダウンロードされたウェブページのデータを読み込み、このウェブページを表示させる表示データを生成して、表示端末タッチパネル２３Ｂに出力する。表示端末タッチパネル２３Ｂは、入力された表示データに係るウェブページの画像を表示する。特に、表示端末タッチパネル２３Ｂは、会計に際し顧客に会計に関する情報を提示するウェブページの画像を表示する。
【００４６】
表示端末記憶部２１Ａは、ＰＯＳ端末記憶部２１Ａと同様、制御プログラム２１０Ｂや、ブラウザーアプリ２１１Ｂ、その他の各種データを不揮発に記憶するメモリーデバイスにより構成される。ブラウザーアプリ２１１Ｂは、表示端末制御部２０Ｂが表示ブラウザー実行部２００Ｂとして機能するためのアプリケーションプログラムである。ブラウザーアプリ２１１Ｂは、予め表示端末２Ｂにインストールされている。
【００４７】
表示端末通信部２２Ｂは、ＰＯＳ端末通信部２２Ａと同様、所定の通信規格に従ったネットワークカード等の無線通信する通信ハードウェア（通信回路、通信ポート、通信基板、通信コネクター）を備え、表示端末制御部２０Ｂの制御により、印刷装置１、及びＰＯＳサーバー３と無線通信する。
【００４８】
表示端末タッチパネル２３Ｂは、ＰＯＳ端末タッチパネル２３Ａと同様、液晶表示パネル等の表示パネルと、表示パネルに重ねて、或いは一体に設けられたタッチセンサーとを備える。
【００４９】
次に、ＰＯＳサーバー３について説明する。
ＰＯＳサーバー３は、商品に関する情報を格納し、売上を管理し、また、在庫を管理するデータベース３１１等を記憶するサーバー記憶部３１を備え、データベース３１１を利用して、ＰＯＳシステム１０００全体を管理するサーバー装置である。
ＰＯＳサーバー３は、サーバー制御部３０、サーバー記憶部３１、及び、サーバー通信部３２を備える。
【００５０】
サーバー制御部３０は、ハードウェアとして、ＣＰＵ等のプロセッサー、その他の周辺回路を備える。サーバー記憶部３１は、アプリケーションプログラムなどの制御プログラム２１０Ａや各種データを不揮発に記憶するＲＯＭ、プロセッサーのワークエリアとして機能するＲＡＭ、などのメモリーを備える。サーバー制御部３０は、プロセッサーがサーバー記憶部３１のＲＯＭに記憶された制御プログラム３１０や、ＲＡＭに記憶したプログラムやデータを読み出して処理を実行する。このように、ハードウェア及びソフトウェアの協働により処理を実行する。
【００５１】
サーバー記憶部３１は、制御プログラム３１０や、データベース３１１、ＰＯＳアプリ（ＰＯＳアプリケーション）３１２、その他の各種データを不揮発に記憶するメモリーデバイスにより構成される。ＰＯＳアプリ３１２は、ＰＯＳ端末制御部２０Ａに後述する機能を行わせるためのアプリケーションプログラムである。ＰＯＳアプリ３１２は、予め表示端末２Ｂにインストールされている。
【００５２】
サーバー通信部３２は、所定の通信規格に従ったネットワークカード等の無線通信する通信ハードウェア（通信回路、通信ポート、通信基板、通信コネクター）を備え、サーバー制御部３０の制御により、タブレット端末２と無線通信する。
【００５３】
前述した通り、ＰＯＳサーバー３には、ＰＯＳアプリ３１２が、予めインストールされている。ＰＯＳブラウザー実行部２００Ａ、及び表示ブラウザー実行２００Ｂは、ＰＯＳサーバー３にインストールされたＰＯＳアプリ３１２の機能を利用して、各種処理を実行する。以下の説明では、ＰＯＳブラウザー実行部２００Ａと表示ブラウザー実行部２００Ｂとを区別しない場合、ブラウザー実行部２００という。
【００５４】
例えば、ＰＯＳブラウザー実行部２００Ａは、適宜、ＰＯＳサーバー３に演算処理を要求し、ＰＯＳアプリ３１２の機能によってサーバー制御部３０に演算処理を実行させ、演算処理結果を受け取り、適切な処理を行なう。例えば、ＰＯＳブラウザー実行部２００Ａは、バーコードリーダー４１の読取結果を示すバーコードデータをＰＯＳサーバー３に送信する。サーバー制御部３０は、ＰＯＳアプリ３１２の機能により、バーコードデータに対応する商品に関する情報をデータベース３１１から取得し、取得した商品に関する情報をＰＯＳ端末２Ａに送信する。ＰＯＳブラウザー実行部２００Ａは、取得した商品に関する情報をＰＯＳ端末タッチパネル２３Ａに表示させ、レジ担当者（オペレーター）に商品に関する情報を提示する。また、ＰＯＳブラウザー実行部２００Ａは、会計の合計金額の算出をＰＯＳサーバー３に要求する。サーバー制御部３０は、ＰＯＳアプリ３１２の機能により合計金額の算出を行い、算出結果をＰＯＳ端末２Ａに送信する。ＰＯＳブラウザー実行部２００Ａは、算出結果を受信すると、印刷装置１を制御して合計金額を含む情報が印刷されたレシートを発行させる。
また、例えば、表示ブラウザー実行部２００Ｂは、ＰＯＳブラウザー実行部２００Ａと同様に、バーコードデータに基づく商品に関する情報を取得し、この情報を表示端末タッチパネル２３Ｂに表示させ、この情報を顧客に提示する。
【００５５】
図３は、ＰＯＳブラウザー実行部２００Ａ、端末ブラウザー実行部２００Ｂ、及びデバイス制御部１００の機能ブロック図をより詳細に示す図である。
【００５６】
図３では、説明の便宜のため、プログラム自体や、ソフトウェア的なオブジェクト、プログラムによって実現される機能を模式的に表わすブロック、デバイス等の物理的な装置等を、同一のレベルで表現している。
【００５７】
なお、本実施形態において、「オブジェクト」とは、オブジェクト指向プログラミングにおけるインスタンス、すなわち、データ、及び、メソッドの集合として定義されたソフトウェア的な対象を意味する。ただし、「オブジェクト」は、オブジェクト指向プログラミングにおけるインスタンスに限らず、何らかの機能を実現できるソフトウェア的な対象であればよい。
【００５８】
図３に示すように、ＰＯＳブラウザー実行部２００Ａでは、アプリケーションＡＰ１が動作する。アプリケーションＡＰ１は、ＰＯＳアプリ３１２のように他の機器で動作し、又は、他の機器からダウンロードしたアプリケーションや、ＰＯＳブラウザー実行部２００Ａが読み出すＨＴＭＬファイルに実装されたスクリプト、その他、ＰＯＳブラウザー実行部２００Ａが、その機能を利用可能なプログラム、ソフトウェアを含むものである。
ＰＯＳブラウザー実行部２００Ａでは、バーコードリーダーＩ／Ｆ（インターフェース）オブジェクト２０１Ａ、キャッシュチェンジャーＩ／Ｆ（インターフェース）オブジェクト２０２Ａ、及び、カードリーダーＩ／Ｆ（インターフェース）オブジェクト２０３Ａの少なくとも１つが動作可能である。また、ＰＯＳブラウザー実行部２００Ａは、統括制御オブジェクト２０５Ａ、及び、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ（インターフェース）２０６Ａが動作可能である。
【００５９】
以下の説明と各図では、バーコードリーダーＩ／Ｆオブジェクト２０１Ａ、２０１Ｂを、ＢＲＩ／Ｆオブジェクト２０１Ａ、２０１Ｂと略記し、キャッシュチェンジャーＩ／Ｆオブジェクト２０２Ａ、２０２Ｂを、ＣＣＩ／Ｆオブジェクト２０２Ａ、２０２Ｂと略記し、カードリーダーＩ／Ｆオブジェクト２０３Ａ、２０３Ｂを、ＣＲＩ／Ｆオブジェクト２０３Ａ、２０３Ｂと略記する。
【００６０】
また、図３に示すように、表示ブラウザー実行部２００Ｂでは、アプリケーションＡＰ２が動作する。アプリケーションＡＰ２は、アプリケーションＡＰ１と同様のものである。
表示ブラウザー実行部２００Ｂでは、ＢＲＩ／Ｆオブジェクト２０１Ｂ、ＣＣＩ／Ｆオブジェクト２０２Ｂ、及び、ＣＲＩ／Ｆオブジェクト２０３Ｂの少なくとも１つが動作可能である。また、表示ブラウザー実行部２００Ｂは、統括制御オブジェクト２０５Ｂ、及び、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ２０６Ｂが動作可能である。
【００６１】
以下では、アプリケーションＡＰ１、ＡＰ２を区別しない場合、アプリケーションＡＰと総称する。また、ＢＲＩ／Ｆオブジェクト２０１Ａ、２０１Ｂ、ＣＣＩ／Ｆオブジェクト２０２Ａ、２０２Ｂ、及び、ＣＲＩ／Ｆオブジェクト２０３Ａ、２０３Ｂのそれぞれを区別しない場合、Ｉ／Ｆオブジェクト２０７と総称する。
【００６２】
また、デバイス制御部１００では、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ（インターフェース）１０１、管理オブジェクト１０２、バーコードリーダー制御オブジェクト１０３、キャッシュチェンジャー制御オブジェクト１０４、及び、カードリーダー制御オブジェクト１０５の少なくとも１つが動作可能である。
【００６３】
以下の説明と各図では、バーコードリーダー制御オブジェクト１０３をＢＲ制御オブジェクト１０３と略記し、キャッシュチェンジャー制御オブジェクト１０４をＣＣ制御オブジェクト１０４と略記し、カードリーダー制御オブジェクト１０５をＣＲ制御オブジェクト１０５と略記する。
ＢＲ制御オブジェクト１０３、ＣＣ制御オブジェクト１０４、及び、ＣＲ制御オブジェクト１０５のそれぞれは、制御オブジェクトに相当する。ＢＲ制御オブジェクト１０３、ＣＣ制御オブジェクト１０４、及び、ＣＲ制御オブジェクト１０５のそれぞれを区別しない場合、制御オブジェクト１０７と総称する。
【００６４】
ここで、図４を参照し、これらオブジェクトやソフトウェア的なインターフェースの生成手順、及び機能について説明する。
【００６５】
図４は、ブラウザー実行部２００、及びデバイス制御部１００におけるオブジェクトが生成される際の手順を示すフローチャートである。図４に示すフローチャートでは、一例として、ＰＯＳブラウザー実行部２００Ａとデバイス制御部１００との間でオブジェクトが生成される際の手順を示している。また、図４に示すフローチャートでは、Ｉ／Ｆオブジェクト２０７としてＢＲＩ／Ｆオブジェクト２０１Ａの生成を例とし、且つ、制御オブジェクト１０７としてＢＲ制御オブジェクト１０３を例として、これらオブジェクトが生成される際の手順を示している。
【００６６】
以下の説明において、「アプリケーションは、・・・」のように、アプリケーションを動作の主体として処理を説明する場合、アプリケーションを読み出して実行するＰＯＳ端末制御部２０Ａあるいは表示端末制御部２０Ｂを構成するプロセッサーが、アプリケーションの機能を利用して、処理を実行することを意味する。同様に、「オブジェクトは、・・・」のように、オブジェクトを動作の主体として処理を説明する場合、ＰＯＳ端末制御部２０Ａ、表示端末制御部２０Ｂ、或いは、印刷装置制御部１０を構成するプロセッサーが、オブジェクトの機能を利用して、処理を実行することを意味する。
【００６７】
まず、アプリケーションＡＰ１は、統括制御オブジェクト生成処理を実行する（ステップＳＡ１）。統括制御オブジェクト生成処理とは、統括制御オブジェクト２０５Ａを生成する処理である。統括制御オブジェクト２０５Ａ、２０５Ｂは、通信経路の確立や切断処理に係るメソッドや、制御オブジェクト１０７、及びＩ／Ｆオブジェクト２０７を生成や消去処理に係るメソッド等、ＰＯＳシステム１０００の制御に係る各種メソッドが実装されたオブジェクトである。
【００６８】
ステップＳＡ１の処理により統括制御オブジェクト２０５Ａが生成されると、アプリケーションＡＰ１は、通信経路確立要求を実行する（ステップＳＡ２）。通信経路確立要求とは、ＰＯＳ端末２Ａと、印刷装置１との間でＷｅｂＳｏｃｋｅｔに係る論理的な通信経路Ｋ１を確立し、これら装置間で、ＷｅｂＳｏｃｋｅｔの規格に準拠したデータの送受信が可能な状態を確立させる要求である。
【００６９】
ステップＳＡ２の通信経路確立要求に応じて、統括制御オブジェクト２０５Ａ、及び、管理オブジェクト１０２は、協働して、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ２０６Ａと、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ１０１との間に、ＷｅｂＳｏｃｋｅｔの規格に準拠してコネクションを張り、通信経路Ｋ１を確立する（ステップＳＡ３）。これにより、ＰＯＳ端末２Ａと印刷装置１との間では、非同期で双方向通信可能な状態が確立する。通信経路Ｋ１の確立に伴って、統括制御オブジェクト２０５Ａ、又は、管理オブジェクト１０２の機能により、通信経路Ｋ１には、通信経路Ｋ１を識別する情報である通信経路識別情報が付与される。付与された通信経路識別情報は、ＰＯＳ端末２Ａにおいて、アプリケーションＡＰ１が参照可能な態様でＰＯＳ端末記憶部２１Ａにおける所定の記憶領域に記憶されると共に、印刷装置１において、管理オブジェクト１０２が参照可能な態様で印刷装置記憶部１１における所定の記憶領域に記憶される。
【００７０】
なお、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ２０６Ａと、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ１０１のそれぞれは、ＷｅｂＳｏｃｋｅｔの規格に準拠してデータの送受信を行うソフトウェアのインターフェースに係る機能ブロックである。また、管理オブジェクト１０２は、上述した通信経路Ｋ１の他、通信経路Ｋ２の確立処理に係るメソッドのほか、後述する各種処理に係るメソッドが実装されている。通信経路Ｋ２は、表示ブラウザー実行部２００Ｂのブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ２０６Ｂとデバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ１０１との間における通信経路である。
【００７１】
次いで、アプリケーションＡＰ１は、ＢＲ制御オブジェクト生成要求を実行する（ステップＳＡ４）。ＢＲ制御オブジェクト生成要求とは、デバイス制御部１００上で動作するＢＲ制御オブジェクト１０３の生成を要求する処理である。ステップＳＡ４において、アプリケーションＡＰ１は、統括制御オブジェクト２０５により、管理オブジェクト１０２へＢＲ制御オブジェクト１０３の生成を要求する生成要求コマンドを送信する。なお、ＢＲ制御オブジェクト１０３を含む制御オブジェクト１０７の生成により、タブレット端末２による制御オブジェクト１０７に対応するデバイス４の制御が可能な状態が確立する。そのため、ステップＳＡ４の処理は、「デバイス４に対する要求」する処理に該当する。
ここで、印刷装置１に接続されるデバイス４のそれぞれには、デバイス４の種類ごとに、識別情報が割り振られている。アプリケーションＡＰ１は、ＢＲ制御オブジェクト１０３の生成に際し、対応するデバイス４であるバーコードリーダー４１の識別情報を指定する。これにより、管理オブジェクト１０２は、指定された識別情報をキーとして、生成すべきデバイス４に対応する適切な制御オブジェクト１０７を生成できる。
【００７２】
ここで、制御オブジェクト１０７について説明する。
制御オブジェクト１０７とは、デバイス４の制御に係る各種メソッドが実装されたオブジェクトであり、対応するハンドラーの機能を利用して、対応するデバイス４の制御を行なう。例えば、ＢＲ制御オブジェクト１０３には、バーコードリーダー４１の制御に係る処理を実行するメソッドが実装されている。ＢＲ制御オブジェクト１０３は、ＢＲハンドラー１０８の機能を利用して、バーコードリーダー４１の制御を行なう。なお、ハンドラーとは、要求に応じて、対応するデバイス４に係る処理を実行する関数、サブルーチンである。例えば、ＢＲ（バーコードリーダー）ハンドラー１０８は、バーコードリーダー４１によるバーコードの読み取りが実行された場合に、デバイス４とのインターフェースであるデバイスＩ／Ｆ（インターフェース）１１１を介して、読取結果を示すバーコードデータの入力を受ける。そして、ＢＲハンドラー１０８は、割り込み処理を行なって、バーコードデータをＢＲ制御オブジェクト１０３に受け渡す。他のＣＣ（キャッシュチェンジャー）ハンドラー１０８、及び、ＣＲ（カードリーダー）ハンドラー１０９についても同様である。
【００７３】
アプリケーションＡＰ１によるＢＲ制御オブジェクト生成要求に応じて、統括制御オブジェクト２０５Ａは、通信経路Ｋ１を介して、管理オブジェクト１０２に対して、ＢＲ制御オブジェクト生成要求を行なう（ステップＳＡ５）。この要求に応じて、管理オブジェクト１０２は、例えばｎｅｗステートメントにより、指定された識別情報に対応するＢＲ制御オブジェクト１０３を生成する（ステップＳＡ６）。
【００７４】
ステップＳＡ６において、管理オブジェクト１０２は、生成したＢＲ制御オブジェクト１０３を、ステップＳＡ３で付与された通信経路識別情報と対応付けて管理する。この管理は、他の制御オブジェクト１０７が生成された場合も同様である。このように、制御オブジェクト１０７と、通信経路識別情報との対応付けが管理オブジェクト１０２によって行なわれるため、管理オブジェクト１０２は、制御オブジェクト１０７のそれぞれについて、どのタブレット端末２の管理下にあるのかを把握できる。
【００７５】
ＢＲ制御オブジェクト１０３の生成が完了すると、管理オブジェクト１０２は、通信経路Ｋ１を介して、ＢＲ制御オブジェクト１０３の生成が完了した旨の通知を統括制御オブジェクト２０５Ａに行なう（ステップＳＡ７）。さらに、統括制御オブジェクト２０５Ａは、この通知をアプリケーションＡＰに行なう（ステップＳＡ８）。なお、ステップＳＡ４のＢＲ制御オブジェクト生成処理の際に、制御オブジェクト１０７の生成に係る処理の処理結果を受け取るコールバックが指定されており、コールバック関数が実行されることにより、アプリケーションＡＰに対して、ＢＲ制御オブジェクト１０３の生成が成功した旨の通知が行なわれる。
【００７６】
次いで、統括制御オブジェクト２０５Ａは、生成が完了したＢＲ制御オブジェクト１０３に対応させて、ＢＲＩ／Ｆオブジェクト２０１Ａを生成する（ステップＳＡ９）。
【００７７】
ここで、Ｉ／Ｆオブジェクト２０７について説明する。
Ｉ／Ｆオブジェクト２０７とは、アプリケーションＡＰによるデバイス４の制御に際して、アプリケーションＡＰに対して、対応するデバイス４に係る制御オブジェクト１０７に実装されたメソッドを利用させるインターフェースとなる機能を有する。すなわち、アプリケーションＡＰは、ある１のデバイス４を制御する際に、この１のデバイス４に対応するＩ／Ｆオブジェクト２０７に対して情報を出力すれば、このＩ／Ｆオブジェクト２０７が、この１のデバイス４に対応する制御オブジェクト１０７と通信し、制御オブジェクト１０７に実装されたメソッドを実行させ、１のデバイス４の制御を実現できる。
Ｉ／Ｆオブジェクト２０７の生成により、アプリケーションＡＰは、Ｉ／Ｆオブジェクト２０７を介して、制御オブジェクト１０７のメソッドを利用して、デバイス４の制御が可能となる。すなわち、制御オブジェクト１０７の生成に伴うＩ／Ｆオブジェクト２０７の生成により、制御オブジェクト１０７によるタブレット端末２に対する印刷装置１を介したデバイス４の制御の確立が行なわれる。
【００７８】
以上のようにして、ＢＲ制御オブジェクト１０３、及びＢＲＩ／Ｆオブジェクト２０１Ａの生成が完了する。また、他のデバイス４についても、同様の手順にて制御オブジェクト１０７、及び、Ｉ／Ｆオブジェクト２０７が生成される。表示端末２Ｂに対して印刷装置１を介したデバイス４の制御を確立する場合についても、同様の手順にて制御オブジェクト１０７、及びＩ／Ｆオブジェクト２０７が生成される。
【００７９】
以上のように、本実施形態では、必ず、１つのデバイス４について、対応する制御オブジェクト１０７と、Ｉ／Ｆオブジェクト２０７とが生成され、各デバイス４について、タブレット端末２によるデバイス４の制御が可能な状態が確立する。
また、印刷装置１に接続されたデバイス４のそれぞれについて、対応する制御オブジェクト１０７及びＩ／Ｆオブジェクト２０７が生成される。このような構成のため、アプリケーションＡＰは、ある１のデバイス４を制御する際に、この１のデバイス４に対応するＩ／Ｆオブジェクト２０７の機能を利用することにより、確実に、この１のデバイス４とデータの送受信を実行できる。
【００８０】
タブレット端末２によるデバイス４の制御としては、以下の処理が例として挙げられる。
すなわち、ＰＯＳ端末２Ａに対してＢＲ制御オブジェクト１０３によるバーコードリーダー４１の制御が確立している場合、ＰＯＳ端末２Ａが、ＢＲ制御オブジェクト１０３によりバーコードリーダー４１からバーコードデータを取得する処理である。この処理の場合、ＢＲ制御オブジェクト１０３は、ＢＲハンドラーから取得したバーコードデータを管理オブジェクト１０２に出力する。管理オブジェクト１０２は、ＢＲ制御オブジェクト１０３に対応付く通信経路Ｋ１に、取得したバーコードデータを出力する。アプリケーションＡＰ１は、統括制御オブジェクト２０５Ａにより、管理オブジェクト１０２が出力したバーコードデータを取得する。
【００８１】
図３では、デバイス４を制御する制御オブジェクト１０７について図示している。しかしながら、例えば、ＰＯＳ端末２Ａが印刷ユニット１３によりレシートを発行させる際、デバイス制御部１００は、印刷ユニット１３をデバイスとして扱い、ＰＯＳ端末２Ａが印刷ユニット１３によりレシートを発行させる構成としてもよい。この構成の場合、デバイス制御部１００では、印刷ユニット１３を制御するＰＲ（印刷）制御オブジェクトが動作可能である。また、ＰＯＳ端末２Ａでは、ＰＲ制御オブジェクトに対応するＩ／ＦオブジェクトであるＰＲ（印刷）Ｉ／Ｆ（インターフェース）オブジェクトが動作可能である。
【００８２】
例えば、ＰＯＳ端末２Ａが印刷ユニット１３にレシートを発行させる場合、アプリケーションＡＰ１は、実装された機能により、レシートに印刷する画像を生成し、生成した画像に基づいて、印刷ユニット１３によって発行させるレシートに関する情報が含まれたマークアップ言語で構成されたＸＭＬドキュメントを生成する。このＸＭＬドキュメントは、デバイス制御部１００によって印刷ユニット１３のコマンド体系に準拠した制御コマンドに変換可能である。アプリケーションＡＰ１は、印刷ユニット１３の識別情報、及び印刷ユニット１３を制御するＰＲ制御オブジェクトに実行させる関数を指定する情報の生成要求する情報、及び、生成したＸＭＬドキュメント、を少なくとも含むデータを、ＰＲＩ／Ｆオブジェクトに出力する。次いで、ＰＲＩ／Ｆオブジェクトは、アプリケーションＡＰ１から入力されたデータの、ＰＲ制御オブジェクトへの出力要求を統括制御オブジェクト２０５Ａに対して行なう。統括制御オブジェクト２０５Ａは、通信経路Ｋ１を介してこのデータを管理オブジェクト１０２に対して出力し、管理オブジェクト１０２は、ＰＲ制御オブジェクトにこのデータを出力する。ＰＲ制御オブジェクトは、入力されたデータにおいて指定された関数を実行することにより、入力されたデータに含まれるＸＭＬファイルを、印刷ユニット１３が処理可能なようにデータ整形、データ変換を行なった上で、印刷ユニット１３のコマンド体系に準拠した制御コマンドを生成し、印刷ユニット１３に出力する。印刷ユニット１３は、入力された制御コマンドに基づいて、各種機構を動作させて、レシートを発行する。
【００８３】
次に、図５のフローチャートを参照して、生成した制御オブジェクト１０７、及び、Ｉ／Ｆオブジェクト２０７を消去し、確立したデバイス４の制御を解消する際の手順について説明する。
【００８４】
図５に示すフローチャートでは、一例として、ＰＯＳブラウザー実行部２００Ａとデバイス制御部１００との間で生成されたオブジェクトが消去される際の手順を示している。また、図５に示すフローチャートでは、Ｉ／Ｆオブジェクト２０７としてＢＲＩ／Ｆオブジェクト２０１Ａを例とし、且つ、制御オブジェクト１０７としてＢＲ制御オブジェクト１０３を例として、これらオブジェクトが消去される際の手順を示している。
【００８５】
まず、アプリケーションＡＰ１は、ＢＲ制御オブジェクト１０３の消去要求を実行する（ステップＳＢ１）。ステップＳＢ１において、アプリケーションＡＰ１は、統括制御オブジェクト２０５Ａにより、管理オブジェクト１０２へＢＲ制御オブジェクト１０３の消去を要求する消去要求コマンドを送信する。消去要求コマンドは、消去コマンドに相当する。消去要求を実行する際、アプリケーションＡＰ１は、バーコードリーダー４１の識別情報を指定する。この制御オブジェクト１０７の消去要求は、統括制御オブジェクト２０５Ａに実装されたメソッドをアプリケーションＡＰ１が実行することにより実行される。
アプリケーションＡＰ１によるＢＲ制御オブジェクト１０３の消去要求に応じて、統括制御オブジェクト２０５Ａは、通信経路Ｋ１を介して、管理オブジェクト１０２に対して、ＢＲ制御オブジェクト１０３の消去要求を行なう（ステップＳＢ２）。
消去要求に応じて、管理オブジェクト１０２は、例えばｄｅｌｅｔｅ演算子により、指定されたバーコードリーダー４１の識別情報に対応するＢＲ制御オブジェクト１０３を消去する（ステップＳＢ３）。ＢＲ制御オブジェクト１０３の消去により、印刷装置１におけるバーコードリーダー４１の制御の確立が解消される。
【００８６】
ＢＲ制御オブジェクト１０３の消去が完了すると、管理オブジェクト１０２は、通信経路Ｋ１を介して、ＢＲ制御オブジェクト１０３の消去が完了した旨の通知を統括制御オブジェクト２０５Ａに行なう（ステップＳＢ４）。さらに、統括制御オブジェクト２０５Ａは、この通知をアプリケーションＡＰ１に行なう（ステップＳＢ５）。
なお、ステップＳＢ１の処理の際に、ＢＲ制御オブジェクト１０３の消去に係る処理の処理結果を受け取るコールバックが指定されており、コールバック関数の実行されることにより、アプリケーションＡＰ１に対して、ＢＲ制御オブジェクト１０３の消去が成功した旨の通知が行なわれる。
さらに、統括制御オブジェクト２０５Ａは、消去が完了したＢＲ制御オブジェクト１０３に対応させて、ＢＲＩ／Ｆオブジェクト２０１Ａを消去する（ステップＳＢ６）。
【００８７】
次いで、アプリケーションＡＰ１は、印刷装置１との間で確立している通信経路Ｋ１の切断を要求する（ステップＳＢ７）。この要求は、統括制御オブジェクト２０５Ａに実装された専用のメソッドをアプリケーションＡＰ１が実行することにより実行される。ステップＳＢ７の要求に応じて、統括制御オブジェクト２０５Ａ、及び、管理オブジェクト１０２は、協働して、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ２０６Ａと、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ１０１との間に確立された通信経路Ｋ１を、ＷｅｂＳｏｃｋｅｔの規格に準拠して切断する（ステップＳＢ８）。
【００８８】
以上のように、制御オブジェクト１０７、及びＩ／Ｆオブジェクト２０７の生成、及び消去が可能である構成において、本実施形態の印刷装置１は、１のタブレット端末２に対する１のデバイス４の制御が確立している場合、以下の動作を実行する。
【００８９】
図６は、印刷装置１の動作を示すフローチャートである。特に、図６は、印刷装置１で動作する管理オブジェクト１０２の動作を示している。
【００９０】
図６の動作開始時点では、１のタブレット端末２と印刷装置１とが図４に示す動作を実行し、この１のタブレット端末２に対するバーコードリーダー４１の制御が確立しているものする。
【００９１】
以下では、この１のタブレット端末２としてＰＯＳ端末２Ａを例示しつつ図６について説明する。この例では、タブレット端末２は、１の端末に相当する。
【００９２】
また、図６では、バーコードリーダー４１の制御が確立している１のタブレット端末２と異なる他のタブレット端末２のブラウザー実行部２００が、ＢＲ制御オブジェクト生成要求を実行するものとする。以下では、この他のタブレット端末２として表示端末２Ｂを例示しつつ図６について説明する。この例では、表示端末２Ｂは、他の端末に相当する。
【００９３】
管理オブジェクト１０２は、バーコードリーダー４１の制御が確立している１のタブレット端末２で動作するアプリケーションＡＰから、ＢＲ制御オブジェクト１０３の消去要求があったか否かを判別する（ステップＳＣ１）。つまり、管理オブジェクト１０２は、ＰＯＳ端末２Ａで動作するアプリケーションＡＰ１から、ＢＲ制御オブジェクト１０３の消去要求があったか否かを判別する。なお、ステップＳＣ１の処理は、消去要求コマンドを受信したか否かの判別に相当する。
【００９４】
管理オブジェクト１０２は、消去要求がないと判別した場合（ステップＳＣ１：ＮＯ）、他のタブレット端末２のブラウザー実行部２００からＢＲ制御オブジェクト生成要求があったか否かを判別する（ステップＳＣ２）。すなわち、管理オブジェクト１０２は、表示ブラウザー実行部２００ＢからＢＲ制御オブジェクト生成要求があったか否かを判別する。
【００９５】
管理オブジェクト１０２は、ＢＲ制御オブジェクト生成要求がないと判別した場合（ステップＳＣ２：ＮＯ）、処理をステップＳＣ１に戻す。
【００９６】
一方で、管理オブジェクト１０２は、ＢＲ制御オブジェクト生成要求があったと判別した場合（ステップＳＣ２：ＹＥＳ）、ＢＲ制御オブジェクトを消去することなく、他のタブレット端末２に対してＢＲ制御オブジェクト１０３によるバーコードリーダー４１の制御を確立する（ステップＳＣ３）。つまり、管理オブジェクト１０２は、表示端末２に対しても同じＢＲ制御オブジェクト１０３によるバーコードリーダー４１の制御を確立する。ステップＳＣ３において、管理オブジェクト１０２は、ＢＲ制御オブジェクト１０３に、通信経路Ｋ１を識別する通信経路識別情報と、通信経路Ｋ２を識別する通信経路識別情報とを対応付けて管理する。これにより、管理オブジェクト１０２は、ＢＲ制御オブジェクト１０３が、ＰＯＳ端末２Ａと表示端末３Ｂとの管理下であることを把握できる。
【００９７】
このように、管理オブジェクト１０２は、制御オブジェクト１０３による１のタブレット端末２に対するデバイス４の制御が確立している場合に、他のタブレット端末２からデバイス４に対する要求を受信すると、制御オブジェクト１０７を消去することなく、他のタブレット端末２に対しても同じ制御オブジェクト１０７によるデバイス４の制御を確立するので、処理が少なくて済み、時間が短くて済む。これにより、管理オブジェクト１０２は、複数のタブレット端末２に対して同じ制御オブジェクト１０７による１のデバイス４の制御を確立できるため、ウェブブラウザーが動作する複数のタブレット端末２が、時間が掛からず、印刷装置１に接続する１のデバイス４の制御を行えるようになる。
例えば、ＰＯＳ端末２Ａと表示端末２Ｂとは、バーコードリーダー４１の制御を行えるようになる。つまり、ＰＯＳ端末２Ａと表示端末２Ｂとは、バーコードリーダー４１が読み取ったバーコードデータを共に取得できる。そのため、バーコードリーダー４１で読み取りがあった場合、ＰＯＳ端末２Ａは、バーコードリーダー４１から印刷装置１を介して取得したバーコードデータに基づいて会計処理を実行でき、同時に、表示端末２Ｂは、印刷装置１を介して取得したバーコードデータに基づいて商品情報を顧客に提示できる。
【００９８】
従来、管理オブジェクト１０２は、ある１のタブレット端末２に対して制御オブジェクト１０７よりある１のデバイス４の制御が確立している場合、ある１のタブレット端末２と異なる他のタブレット端末２が、このある１のデバイス４の制御を行えないように排他的な処理を実行する場合があった。これは、例えば、バーコードリーダー４１が読み取ったバーコードデータが、バーコードデータの取得に適さないタブレット端末２に不必要に出力されないようにするためである。しかしながら、ＰＯＳシステム１０００や会計システム２０００が構築される環境によっては、時間を掛けずに複数のタブレット端末２によって１のデバイス４の制御を行いたいができないという課題がある。例えば、ニーズの一例としては、図１に示すような、バーコードリーダー４１が読み取ったバーコードデータをＰＯＳ端末２Ａと表示端末２Ｂとで共有したい場合である。そこで、上述したように、１のタブレット端末２に対して制御オブジェクト１０３による１のデバイス４の制御が確立している場合、他のタブレット端末２から要求があると、他のタブレット端末２に対しても同じ制御オブジェクト１０３による１のデバイス４の制御を確立する。これにより、時間を掛けずに複数のタブレット端末２によって１のデバイス４の制御を行うことができ、例えば、複数のタブレット端末２で１のデバイス４から入力された入力情報を共有することができる。入力情報としては、バーコードデータやカードデータが例として挙げられる。
【００９９】
図６のフローチャートのステップＳＣ１の説明に戻り、管理オブジェクト１０２は、消去要求があったと判別した場合（ステップＳＣ１：ＹＥＳ）、印刷装置１の印刷装置通信部１２に通信接続するタブレット端末２の数が１かである複数であるか否かを判別する（ステップＳＣ４）。管理オブジェクト１０２は、消去対象である制御オブジェクト１０７に対応付く通信経路識別情報の数に基づいて、ステップＳＣ４の判別を行う。図６の説明では、ＰＯＳ端末２Ａに対するバーコードリーダー４１の制御が確立している場合を例示している。そのため、この例では、管理オブジェクト１０２は、印刷装置１の印刷装置通信部１２に通信接続するタブレット端末２の数が１であると判別する（ステップＳＣ４：「１」）。
【０１００】
管理オブジェクト１０２は、印刷装置通信部１２に通信接続するタブレット端末２の数が１つであると判別した場合（ステップＳＣ４：「１つ」）、図５に示す動作を実行して、ＢＲ制御オブジェクト１０３を消去する（ステップＳＣ５）。
【０１０１】
これにより、管理オブジェクト１０２は、タブレット端末２がデバイス４の制御を行わない状況下において、制御オブジェクト１０３が不必要に残存することを防止できる。そのため、管理オブジェクト１０２は、あるタブレット端末２がある制御オブジェクト１０７によるデバイス４の制御を行う際、あるタブレット端末２に対応付ける制御オブジェクト１０７を、制御を望むデバイス４以外に対応する制御オブジェクト１０７に対応させてしまうことを確実に防止できる。したがって、管理オブジェクト１０２は、制御オブジェクト１０７とタブレット端末２との対応関係を適切な関係となるように管理できる。
【０１０２】
一方で、管理オブジェクト１０２は、印刷装置通信部１２に通信接続するタブレット端末２の数が複数であると判別した場合（ステップＳＣ４：「複数」）、図５に示す動作を実行しないでＢＲ制御オブジェクト１０３を消去せず（ステップＳＣ６）、処理をステップＳＣ１に戻す。
【０１０３】
ここで、仮に管理オブジェクト１０２が、印刷装置通信部１２に通信接続するタブレット端末２の数が複数である場合でも、制御オブジェクト１０７を消去する構成を想定する。この構成において、例えばＰＯＳ端末２Ａと複数の表示装置２Ｂとが印刷装置１に接続しており、１の表示装置２ＢからＢＲ制御オブジェクト１０３の消去要求を受けると、管理オブジェクト１０２は、他の表示端末２Ｂ及びＰＯＳ端末２Ａに対するバーコードリーダー４１の制御の確立を解消することになる。これでは、他の表示端末２Ｂ及びＰＯＳ端末２Ａがバーコードリーダー４１の制御の確立を継続するためには、再度、図４の処理を行う必要があり、多くの処理と時間が掛かる。そこで、管理オブジェクト１０２は、印刷装置通信部１２に通信接続するタブレット端末２の数が複数である場合、ＢＲ制御オブジェクト１０３を消去しない。これにより、管理オブジェクト１０２は、消去要求を行ったタブレット端末２と異なる１又は複数の他のタブレット端末２が再度、ＢＲ制御オブジェクト１０３の生成を含む図４の処理を実行せずとも、バーコードリーダー４１を制御できる環境を維持でき、処理数と処理に係る時間を減らすことができる。
【０１０４】
図６の説明では、デバイス４としてバーコードリーダー４１を例として説明したが、他のデバイス４についても同様に、制御オブジェクト１０７に対する処理を実行する。また、表示端末２Ｂに対する制御オブジェクト１０７によるデバイス４の制御が確立していて、ＰＯＳ端末２Ａが制御オブジェクト１０７によるデバイス４の制御を要求する場合でも、同様に処理を実行する。
【０１０５】
以上、説明したように、印刷装置１は、印刷ユニット１３と、デバイス４が接続可能なデバイス通信部１４と、ウェブブラウザーが動作する複数のタブレット端末２が接続可能な印刷装置通信部１２と、印刷装置通信部１２により１のタブレット端末２からデバイス４に対する要求を受信すると、デバイス４を制御する制御オブジェクト１０７を生成して、デバイス４の制御を確立するデバイス制御部１００と、を備える。デバイス制御部１００は、制御オブジェクト１０７による１のタブレット端末２に対するデバイス４の制御が確立している場合に、印刷装置通信部１２により１のタブレット端末２と異なる他のタブレット端末２からデバイス４に対する要求を受信すると、制御オブジェクト１０７を消去することなく、他のタブレット端末２に対しても制御オブジェクト１０７によるデバイス４の制御を確立する。
【０１０６】
この構成によれば、デバイス制御部１００は、複数のタブレット端末２に対して制御オブジェクト１０７による１のデバイス４の制御を確立できるため、処理が少なくて済み、時間も短くて済む。ウェブブラウザーが動作する複数のタブレット端末２が、時間を掛けずに印刷装置１に接続する１のデバイス４の制御を行えるようになる。
【０１０７】
デバイス制御部１００は、印刷装置通信部１２に接続するタブレット端末２の数が１である場合、印刷装置通信部１２によりタブレット端末２から制御オブジェクト１０７の消去を指示する消去要求コマンドを受信すると、制御オブジェクト１０７を消去する。また、デバイス制御部１００は、印刷装置通信部１２に接続するタブレット端末２の数が複数である場合、第２接続部により１のタブレット端末２から消去要求コマンドを受信しても、制御オブジェクト１０７を消去しない。
【０１０８】
この構成によれば、管理オブジェクト１０２は、タブレット端末２がデバイス４を制御しない状況下において、制御オブジェクト１０３が不必要に残存することを防止できる。また、管理オブジェクト１０２は、消去要求を行ったタブレット端末２と異なる１又は複数の他のタブレット端末２が再度、制御オブジェクト１０７の生成を含む処理を実行せずとも、デバイス４を制御できる環境を維持できる。以上より、デバイス制御部１００は、タブレット端末２の数に応じて、制御オブジェクト１０７によるデバイス４の制御の確立を適切に管理できる。
【０１０９】
また、デバイス制御部１００は、印刷装置通信部１２に複数のタブレット端末２が接続する場合、デバイス通信部１４によりデバイス４から受信したデータを、制御オブジェクト１０７により印刷装置通信部１２に接続する複数のタブレット端末２に送信する。
【０１１０】
この構成によれば、複数のタブレット端末２が１のデバイス４からのデータを共有できる。例えば、ＰＯＳ端末２Ａと表示端末２Ｂとがバーコードリーダー４１が読み取ったバーコードデータを共有できる。また、ＰＯＳ端末２Ａと表示端末２Ｂとがカードリーダー４３が読み取ったカードデータを共有できる。
【０１１１】
印刷装置通信部１２に接続する複数のタブレット端末２は、バーコードリーダー４１が読み取ったバーコードデータに基づいて会計処理を実行するＰＯＳ端末２Ａと、バーコードデータに基づいて表示する表示端末２Ｂとを少なくとも含む。
【０１１２】
この構成によれば、ＰＯＳ端末２Ａは、バーコードリーダー４１から入力されたバーコードデータに基づいて会計処理を実行でき、同時に、表示端末２Ｂは、バーコードデータに基づいて商品に関する情報を顧客に提示できる。
【０１１３】
［第２実施形態］
次に、第２実施形態について説明する。
第２実施形態は、第１実施形態と比較して印刷装置１の動作が異なる。
【０１１４】
図７は、第２実施形態における印刷装置１の動作を示すフローチャートである。図７のフローチャートにおいて、第１実施形態と共通する処理には同じステップ番号を付して説明を省略する。
【０１１５】
管理オブジェクト１０２は、ＢＲ制御オブジェクト１０３の消去要求があったと判別した場合（ステップＳＣ２：ＹＥＳ）、ＢＲ制御オブジェクト１０３を消去せず、消去要求を行ったタブレット端末２に対し、ＢＲ制御オブジェクト１０３によるデバイス４の制御の確立を解消する（ステップＳＤ１）。つまり、管理オブジェクト１０２は、印刷装置１に通信接続するタブレット端末２の数が１でも、ＢＲ制御オブジェクト１０３の消去を行わない。ステップＳＤ１では、管理オブジェクト１０２は、図５に示すステップＳＢ３を実行せず、処理をスキップして、ＳＢ６移行の処理を実行する。
【０１１６】
管理オブジェクト１０２は、印刷装置１の印刷装置通信部１２に通信接続するタブレット端末２の数が０かである１以上であるか否かを判別する（ステップＳＤ２）。管理オブジェクト１０２は、印刷装置１の印刷装置通信部１２に通信接続するタブレット端末２の数が０である場合（ステップＳＤ２：「０」）、本処理を終了する。一方で、管理オブジェクト１０２は、印刷装置１の印刷装置通信部１２に通信接続するタブレット端末２の数が１以上である場合（ステップＳＤ２：「１以上」）、処理をステップＳＣ１に戻す。
【０１１７】
例えば、あるデバイス４を制御するあるＰＯＳ端末２Ａを、このあるＰＯＳ端末２Ａと異なる他のＰＯＳ端末２Ａに切り替える場合を想定する。この場合、消去要求を行ってＢＲ制御オブジェクト１０３を消去してしまうと、他のＰＯＳ端末２Ａを接続する際に、ＢＲ制御オブジェクト１０３を再度生成する処理を実行する必要があり、他のＰＯＳ端末２Ａへの切り替えに時間を要してしまう。そこで、第２実施形態では、印刷装置１に接続するタブレット端末２の数が１つでも、ＢＲ制御オブジェクト１０３を消去しない。そのため、管理オブジェクト１０２は、ＢＲ制御オブジェクト１０３の再生成を行う必要がなく、他のタブレット端末２に対してＢＲ制御オブジェクト１０３によるバーコードリーダー４１の制御の確立を速やかに行うことができる。また、例えば、１のＰＯＳ端末２Ａと１の表示端末２Ｂとが制御オブジェクト１０７により１のバーコードリーダー４１の制御が確立している場合に、１のＰＯＳ端末２Ａを他のＰＯＳ端末２Ａに切り替える場合でも同様の効果を奏する。
【０１１８】
図７の説明では、デバイス４としてバーコードリーダー４１を例として説明したが、他のデバイス４についても同様に、制御オブジェクト１０７に対する処理を実行する。そのため、ＢＲ制御オブジェクト１０３以外の制御オブジェクト１０７について、図７の処理を実行する場合でも同様の効果を奏する。
【０１１９】
以上、説明したように、デバイス制御部１００は、第２接続部に接続する１のタブレット端末２から制御オブジェクト１０７の消去を指示する消去要求コマンドを受信すると、制御オブジェクト１０７を消去することなく、消去要求コマンドを送信した１のタブレット端末２に対し、制御オブジェクト１０７によるデバイス４の制御の確立を解消する。デバイス制御部１００は、処理が少なくて済み、時間も少なくて済む。
【０１２０】
この構成によれば、管理オブジェクト１０２は、制御オブジェクト１０７の再生成を行う必要がなく、他のタブレット端末２に対して制御オブジェクト１０７によるデバイス４の制御の確立を速やかに行うことができる。
【０１２１】
なお、上述した各実施形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
【０１２２】
例えば、上述した実施形態では、レジカウンターＬを有する店舗Ｔに、ＰＯＳシステム１０００が適用された場合を例にして、本発明を説明したが、ＰＯＳシステムの使用の態様はこの例に限らず、例えば、喫茶店や、レストラン等の飲食店に対して適用することも可能である。会計システム２０００についても同様である。
【０１２３】
また、例えば、端末としてタブレット端末２を例示したが、端末の形態は、タブレット型に限定されず、たとえば、デスクトップ型でもよい。
【０１２４】
また、例えば、印刷装置１と、ＰＯＳサーバー３とは、別個の装置であったが、印刷装置１にＰＯＳサーバー３の機能を持たせてもよい。
【０１２５】
また、例えば、上述した印刷装置１の制御方法が、印刷装置１が備えるコンピューター、又は、印刷装置１に接続される外部装置を用いて実現される場合、本発明を、この制御方法を実現するためにコンピューターが実行するプログラム、このプログラムをコンピューターで読み取り可能に記録した記録媒体、或いは、このプログラムを伝送する伝送媒体の態様で構成することも可能である。
【０１２６】
また、印刷装置制御部１０、ＰＯＳ端末制御部２０Ａ、表示端末制御部２０Ｂ、及び、サーバー制御部３０の機能は、複数のプロセッサー、又は、半導体チップにより実現してもよい。
【０１２７】
また、図２に示した各部は一例であって、具体的な実装形態は特に限定されない。つまり、必ずしも各部に個別に対応するハードウェアが実装される必要はなく、一つのプロセッサーがプログラムを実行することで各部の機能を実現する構成とすることも勿論可能である。また、上述した実施形態においてソフトウェアで実現される機能の一部をハードウェアとしてもよく、或いは、ハードウェアで実現される機能の一部をソフトウェアで実現してもよい。その他、印刷装置１、タブレット端末２、及び、ＰＯＳサーバー３の他の各部の具体的な細部構成についても、本発明の趣旨を逸脱しない範囲で任意に変更可能である。
【０１２８】
また、例えば、図４、図５、図６、及び図７に示す動作のステップ単位は、会計システム２０００の各部の動作の理解を容易にするために、主な処理内容に応じて分割したものであり、処理単位の分割の仕方や名称によって、本発明が限定されることはない。処理内容に応じて、さらに多くのステップ単位に分割してもよい。また、１つのステップ単位がさらに多くの処理を含むように分割してもよい。また、そのステップの順番は、本発明の趣旨に支障のない範囲で適宜に入れ替えてもよい。
【符号の説明】
【０１２９】
１…印刷装置、２…タブレット端末（端末）、２Ａ…ＰＯＳ端末（端末）、２Ｂ…表示端末（端末）、３…ＰＯＳサーバー、４…デバイス、１０…印刷装置制御部、１１…印刷装置記憶部、１１Ａ…制御プログラム、１２…印刷装置通信部（第２接続部）、１３…印刷ユニット（印刷部）、１４…デバイス通信部（第１接続部）、２０Ａ…ＰＯＳ端末制御部、２１Ａ…ＰＯＳ端末記憶部、２２Ａ…ＰＯＳ端末通信部、２３Ａ…ＰＯＳ端末タッチパネル、３０…サーバー制御部、３１…サーバー記憶部、３２…サーバー通信部、４１…バーコードリーダー（デバイス、入力装置、バーコード読取装置）、４２…キャッシュチェンジャー（デバイス）、４３…カードリーダー（デバイス、入力装置）、１００…デバイス制御部（制御部）、１０３…ＢＲ制御オブジェクト（制御オブジェクト）、１０４…ＣＣ制御オブジェクト（制御オブジェクト）、１０５…ＣＲ制御オブジェクト（制御オブジェクト）、１０７…制御オブジェクト、２００…ブラウザー実行部、２０００…会計システム（制御システム）。
【図１】
2020023136.tif 000003
【図２】
2020023136.tif 000004
【図３】
2020023136.tif 000005
【図４】
2020023136.tif 000006
【図５】
2020023136.tif 000007
【図６】
2020023136.tif 000008
【図７】
2020023136.tif 000009