(57)【要約】【課題】ブラウザーが動作する端末との間における通信の切断に応じた適切な処理を実行する。【解決手段】制御装置１１は、デバイスと通信する第１通信部と、デバイスを制御する制御オブジェクトが動作するデバイス制御部２０ａと、ブラウザーが動作するタブレット端末１０との間で通信する第２通信部と、を有し、タブレット端末１０との接続が切断されたとき、デバイス制御部２０ａは、制御オブジェクトを所定期間保持した後に消去する。【選択図】図３
2014146290.tif 000002
【特許請求の範囲】
【請求項１】
デバイスと接続されて前記デバイスと通信する第１通信部と、
ブラウザーが動作する端末と接続されて前記端末からの要求を受信する第２通信部と、
前記端末からの要求に基づいて前記デバイスを制御する制御オブジェクトを動作させると共に、前記端末と通信接続が切断されたときに前記制御オブジェクトを予め定められた所定期間保持した後に消去するデバイス制御部と、
を備えることを特徴とする制御装置。
【請求項２】
前記デバイス制御部は、前記端末との通信接続が切断されて、前記所定期間以上の時間が経過した後に前記端末と通信接続が行なわれたとき、前記端末からの要求に基づいて前記制御オブジェクトを生成して動作させる請求項１に記載の制御装置。
【請求項３】
前記デバイス制御部で動作される前記制御オブジェクトは、送信された前記端末からの要求を、前記第１通信部を介して前記デバイスに送信されるデータに変換する請求項１または２に記載の制御装置。
【請求項４】
制御オブジェクトを生成して動作させて、接続された端末からの要求に基づいて接続されたデバイスを制御し、
前記端末との通信接続が切断されたときに、前記端末との通信接続が切断された後の経過時間を計測するとともに、予め定められた所定時間内は前記制御オブジェクトを保持することを特徴とする制御装置の制御方法。
【請求項５】
計測された経過時間が、前記所定時間以上経過したとき、前記制御オブジェクトを消去し、
前記所定時間以上経過した後に、再度前記端末と通信接続されたとき、前記端末からの要求に基づいて前記制御オブジェクトを生成して動作させる請求項４に記載の制御装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスが接続され、ブラウザーが動作する端末との間で通信する制御装置、及び、当該制御装置の制御方法に関する。
【背景技術】
【０００２】
従来、ＰＯＳ端末と、このＰＯＳ端末に接続されたＰＯＳコントローラーとを備え、これら装置が協働して、画像の記録等の各種処理を実行する制御システム（ＰＯＳシステム）が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−７３７６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、上記のような制御システムにおいて、端末たるＰＯＳコントローラーが、ブラウザーの機能を利用して、制御装置たるＰＯＳ端末を制御することを想定する。このような制御システムのように、ブラウザーが動作する端末と、制御装置とが通信可能に接続されたシステムでは、意図的な通信の切断のほか、無線通信においては電波障害等、また、有線通信においてはケーブルの抜け等により一時的な通信の切断が発生する場合があるが、制御装置は、通信の切断に応じた適切な処理を実行する必要がある。
本発明は、上述した事情に鑑みてなされたものであり、ブラウザーが動作する端末との間における通信の切断に応じた適切な処理を実行することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、デバイスと接続されて前記デバイスと通信する第１通信部と、ブラウザーが動作する端末と接続されて前記端末からの要求を受信する第２通信部と、前記端末からの要求に基づいて前記デバイスを制御する制御オブジェクトを動作させると共に、前記端末と通信接続が切断されたときに前記制御オブジェクトを予め定められた所定期間保持した後に消去するデバイス制御部と、を備えることを特徴とする。
本発明の構成によれば、通信の切断に応じて、すぐに制御オブジェクトが消去されるのではなく、所定期間保持された後、消去される。このため、意図しない一時的な通信の切断があった場合であっても、すぐに制御オブジェクトが消去されず、一時的な通信の切断が回復したときに、消去されずに残存した制御オブジェクトによってデバイスの制御を迅速に開始することが可能である。また、制御オブジェクトが所定期間保持された後は、消去されるため、不必要に長期間制御オブジェクトが消去されず、これに伴って、デバイスの制御が開放されないといったことが効果的に防止される。
【０００６】
また、本発明は、前記デバイス制御部は、前記端末との通信接続が切断されて、前記所定期間以上の時間が経過した後に前記端末と通信接続が行なわれたとき、前記端末からの要求に基づいて前記制御オブジェクトを生成して動作させる。
本発明の構成によれば、通信の切断後、所定期間内に再接続が行なわれず、これに伴って、制御オブジェクトが消去された場合であっても、端末の要求に基づいて制御オブジェクトが生成され、迅速にデバイスの制御を可能な状態とすることができる。
【０００７】
また、本発明は、前記デバイス制御部で動作される前記制御オブジェクトは、送信された前記端末からの要求を、前記第１通信部を介して前記デバイスに送信されるデータに変換する。
この構成によれば、制御オブジェクトの機能を利用して、端末からデバイスに要求を出し、デバイスを制御することが可能となる。
【０００８】
また、上記目的を達成するために、本発明は、制御オブジェクトを生成して動作させて、接続された端末からの要求に基づいて接続されたデバイスを制御し、前記端末との通信接続が切断されたときに、前記端末との通信接続が切断された後の経過時間を計測するとともに、予め定められた所定時間内は前記制御オブジェクトを保持することを特徴とする。
本発明の構成によれば、通信の切断に応じて、すぐに制御オブジェクトが消去されるのではなく、所定期間保持された後、消去される。このため、意図しない一時的な通信の切断があった場合であっても、すぐに制御オブジェクトが消去されず、一時的な通信の切断が回復したときに、消去されずに残存した制御オブジェクトによってデバイスの制御を迅速に開始することが可能である。また、制御オブジェクトが所定期間保持された後は、消去されるため、不必要に長期間制御オブジェクトが消去されず、これに伴って、デバイスの制御権が開放されないといったことが効果的に防止される。
【０００９】
また、本発明は、計測された経過時間が、前記所定時間以上経過したとき、前記制御オブジェクトを消去し、前記所定時間以上経過した後に、再度前記端末と通信接続されたとき、前記端末からの要求に基づいて前記制御オブジェクトを生成して動作させる。
本発明の構成によれば、通信の切断後、所定期間内に再接続が行なわれず、これに伴って、制御オブジェクトが消去された場合であっても、端末の要求に基づいて制御オブジェクトが生成され、迅速にデバイスの制御を可能な状態とすることができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態に係るＰＯＳシステムの構成を示す図である。
【図２】ＰＯＳシステムを構成する各機器の機能的構成を示すブロック図。
【図３】ブラウザー実行部、及び、デバイス制御部の機能ブロック図である。
【図４】制御、インターフェースオブジェクトが生成される際の処理フロー。
【図５】制御、インターフェースオブジェクトが消去される際の処理フロー。
【図６】ユーザーインターフェースの一例を示す図である。
【図７】バーコードスキャナーによりバーコードが読み取られた後の処理フロー。
【図８】プリンターユニットによる印刷が行われる際の処理フロー。
【図９】タブレット端末及び制御装置の動作を示すフローチャート。
【図１０】タブレット端末及び制御装置の動作を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本実施形態に係るＰＯＳ（Point of Sales）システム１（制御システム）の概略構成ブロック図である。また、図２は、ＰＯＳシステム１を構成するタブレット端末１０（端末）、制御装置１１、及び、ＰＯＳサーバー１７の機能的構成を示すブロック図である。
ＰＯＳシステム１は、ショッピングセンターや、百貨店、コンビニエンスストア等の小売店、レストランや、喫茶店、居酒屋等の飲食店、その他の店舗、施設に適用されるシステムである。ＰＯＳシステム１は、機能として、店舗における商品の販売状況、商品の在庫の状況、売上の状況等を管理する機能や、店舗に設けられたレジカウンターＬにおいて、顧客が購入した商品に応じた会計を行う機能、顧客による代金の支払いに応じてレシートを発行する機能、顧客に対し会計に関する情報を提供する機能等を有している。
本実施形態に係るＰＯＳシステム１が適用される店舗には、会計処理を行なうレジカウンターＬが設けられている。そして、１つのレジカウンターＬには、１台の制御装置１１と、制御装置１１と無線通信可能に接続されたタブレット端末１０とが設けられている。
タブレット端末１０は、タブレット型（板状）のコンピューターであり、特に、本実施形態では、図６を用いて後述するように、前面に形成された表示領域にタッチパネル３０が設けられ、タッチ操作によって各種入力が可能なタイプのコンピューターである。
タブレット端末１０は、レジカウンターＬにおいて、会計を担当するレジ担当者が使用する端末であり、後述するように、レジカウンターＬにおける会計に際し、レジ担当者にユーザーインターフェースを提供する。
制御装置１１は、デバイス制御装置としての機能を有する装置である。図２に示すように、制御装置１１には、デバイスとして、商品又は商品の包装に付されたバーコードを読み取るバーコードスキャナー１２（デバイス）、紙幣や、貨幣、金券等を収容し、管理するキャッシュチェンジャー１３（デバイス）、会計に関する情報を顧客に対して表示するディスプレー１４（デバイス）の少なくとも１つが接続されている。
【００１２】
図２に示すように、制御装置１１は、制御部２０と、プリンターユニット２１（プリンター、印刷部、デバイス）と、記憶部２２と、通信モジュール２３と、を備えている。
制御部２０は、制御装置１１の各部を制御するものであり、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路等を備えている。制御部２０は、デバイス制御部２０ａを備えているが、この機能ブロックについては後述する。
プリンターユニット２１は、ロール紙を搬送する搬送機構、サーマルヘッドによってロール紙に文字や画像を印刷する印刷機構、ロール紙を切断する切断機構等を備えており、レシートに係る画像をロール紙に印刷した後、所定の位置でロール紙を切断することによりレシートを発行することが可能である。
記憶部２２は、ＥＥＰＲＯＭ等の不揮発性メモリーを備え、各種データを書き換え可能に、不揮発的に記憶する。
通信モジュール２３は、所定の通信規格に準拠したネットワークカード等のタブレット端末１０との間で無線通信するモジュール、回路等を備え、制御部２０の制御の下、タブレット端末１０との間で所定の通信規格に準拠した無線通信を実現する。
【００１３】
また、タブレット端末１０は、端末記憶部２５と、端末制御部２６と、通信モジュール２７と、入力検出部２９と、タッチパネル３０と、を備えている。また、端末制御部２６は表示制御部２８を備えている。
端末記憶部２５は、ＥＥＰＲＯＭ等の不揮発性メモリーを備え、各種データを書き換え可能に不揮発的に記憶する。
タッチパネル３０は、タブレット端末１０の前面に配置された表示パネル３０ａと、表示パネル３０ａに重ねて配置されたタッチセンサー３０ｂとが一体となって構成されている。表示パネル３０ａは、液晶表示パネル、有機ＥＬパネル、電子ペーパー等のディスプレーであり、表示制御部２８によって駆動される。タッチセンサー３０ｂは、表示パネル３０ａに重ねて配置された静電容量式もしくは感圧式のセンサーであり、ユーザーの手指やペン型操作デバイスによるタッチ操作を検出して、タッチ操作を検出した位置を示す信号を入力検出部２９に出力する。このタッチパネル３０は、「ブラウザーを表示する表示部」に該当する。
表示制御部２８は、後述するブラウザー実行部２６ａから入力される表示用のデータに基づいて、表示パネル３０ａを駆動し、表示パネル３０ａに文字や画像等を含む画面を表示する。
入力検出部２９は、タッチセンサー３０ｂが出力する信号に基づいて、タッチパネル３０に対するタッチ操作を検出する。このタッチ操作を検出した場合、入力検出部２９は、操作位置を表示パネル３０ａの表示位置に対応する座標によって示す座標データを生成し、端末制御部２６に出力する。
通信モジュール２７は、所定の通信規格に準拠したネットワークカード等の制御装置１１、及び、ＰＯＳサーバー１７との間で無線通信するモジュール、回路等を備え、端末制御部２６の制御の下、制御装置１１、及び、ＰＯＳサーバー１７との間で所定の通信規格に準拠した無線通信を実現する。
【００１４】
端末制御部２６は、タブレット端末１０の各部を制御するものであり、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路等を備えている。端末制御部２６は、ブラウザープログラムを実行することにより、ブラウザーの機能を実現するブラウザー実行部２６ａを備えている。
ブラウザー実行部２６ａは、ウェブブラウザーの機能により、ＨＴＭＬ等のマークアップ言語やスクリプト言語で記述されたウェブページ（ＨＴＭＬファイル等）を、ＰＯＳサーバー１７からダウンロードする。ダウンロードされたウェブページのデータは、例えば図示しないＲＡＭに記憶される。ブラウザー実行部２６ａは、ダウンロードされたウェブページのデータを読み込み、このウェブページを表示させる表示データを生成して、表示制御部２８に出力する。表示制御部２８は、入力された表示データに基づいて、表示パネル３０ａに表示データに係るウェブページの画像を表示する。
また、ブラウザー実行部２６ａは、入力検出部２９によってタッチセンサー３０ｂへのタッチ操作が検出された場合、このタッチ操作に対応して入力検出部２９から入力される座標データ、及び、表示制御部２８に出力した表示用のデータに基づき、入力内容を特定する。ブラウザー実行部２６ａは、適宜、特定した入力内容に基づいて、例えばスクリプトの機能によって適切な処理を実行する。
【００１５】
ＰＯＳサーバー１７は、商品に関する情報を格納したデータベース、売上を管理するデータベース、在庫を管理するデータベース等を記憶するサーバー記憶部３６を備え、これらデータベースを利用して、ＰＯＳシステム１全体を管理する。
ＰＯＳサーバー１７は、サーバー制御部３７と、サーバー記憶部３６と、通信モジュール３８と、を備えている。
サーバー制御部３７は、ＰＯＳサーバー１７の各部を制御するものであり、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路等を備えている。サーバー記憶部３１は、ハードディスクや、ＥＥＰＲＯＭ等の不揮発性メモリーを備え、各種データを書き換え可能に不揮発に記憶する。
通信モジュール３８は、所定の通信規格に準拠したネットワークカード等のタブレット端末１０との間で無線通信するモジュール、回路等を備え、サーバー制御部３７の制御の下、タブレット端末１０との間で所定の通信規格に準拠した無線通信を実現する。
【００１６】
ＰＯＳサーバー１７には、ＰＯＳアプリケーション３５が、インストールされている。
タブレット端末１０のブラウザー実行部２６ａは、このＰＯＳサーバー１７上のＰＯＳアプリケーション３５の機能を利用して、各種処理を実行する。
具体例を挙げて詳述すると、ブラウザー実行部２６ａは、適宜、ＰＯＳサーバー１７に演算処理の要求を行なって、ＰＯＳアプリケーション３５の機能によって演算処理を実行させ、処理結果を受け取り、適切な処理を行なう。例えば、ブラウザー実行部２６ａは、バーコードスキャナー１２の読み取り結果をＰＯＳサーバー１７に出力して、ＰＯＳアプリケーション３５の機能により商品検索を実行させて、検索結果を受け取った上で、制御装置１１を制御して商品情報をディスプレー１４に表示させる。また、会計の合計金額の算出を要求して、ＰＯＳアプリケーション３５の機能により合計金額の算出を行なわせ、算出結果を受け取った上で、制御装置１１を制御して合計金額を含む情報が印刷されたレシートを発行させたりする。
ここで、「ブラウザーで動作するアプリケーション」とは、ブラウザー実行部２６ａが、ＰＯＳアプリケーション３５等、通信可能な他の機器にインストールされたアプリケーションであって、ブラウザー実行部２６ａが、その機能を利用可能なアプリケーションを含む概念である。この場合のアプリケーションは、通信可能な他の機器上で実行され動作するものであってもよく、当該他の機器からダウンロードして、タブレット端末１０上で実行され動作するものであってもよい。さらに、「ブラウザーで動作するアプリケーション」は、ブラウザー実行部２６ａが読み出すウェブページ（ＨＴＭＬファイル）に実装されたスクリプト等、ブラウザー実行部２６ａがその機能を利用可能なプログラム、ソフトウェアを含む概念である。
【００１７】
図３は、タブレット端末１０のブラウザー実行部２６ａ（「端末制御部」に対応する機能ブロック）、及び、制御装置１１のデバイス制御部２０ａの機能ブロック図をより詳細に示す図である。
図３では、説明の便宜のため、プログラム自体や、ソフトウェア的なオブジェクト、プログラムによって実現される機能を概念的に表わすブロック、デバイス等の物理的な装置等を、同一のレベルで表現している。
なお、本実施形態では、「オブジェクト」とは、オブジェクト指向プログラミングにおけるインスタンス、すなわち、データ、及び、メソッドの集合として定義されたソフトウェア的な対象を意味する。ただし、「オブジェクト」は、オブジェクト指向プログラミングにおけるインスタンスに限らず、何らかの機能を実現できるソフトウェア的な対象であればよい。
図３に示すように、タブレット端末１０のブラウザー実行部２６ａでは、アプリケーションＡＰが動作する。アプリケーションＡＰは、上述したように、ＰＯＳアプリケーション３５のように他の機器で動作し、又は、他の機器からダウンロードしたアプリケーションや、ブラウザー実行部２６ａが読み出すＨＴＭＬファイルに実装されたスクリプト、その他、ブラウザー実行部２６ａが、その機能を利用可能なプログラム、ソフトウェアを含む概念である。
ブラウザー実行部２６ａでは、キャッシュチェンジャーＩ／Ｆオブジェクト４０（インターフェースオブジェクト）、バーコードスキャナーＩ／Ｆオブジェクト４１（インターフェースオブジェクト）、ディスプレーＩ／Ｆオブジェクト４２（インターフェースオブジェクト）、プリンターＩ／Ｆオブジェクト４３（インターフェースオブジェクト）の少なくとも１つ、統括制御オブジェクト４４、及び、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５が動作可能である。また、デバイス制御部２０ａでは、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０、中継オブジェクト５１、キャッシュチェンジャー制御オブジェクト５３（制御オブジェクト）、バーコードスキャナー制御オブジェクト５４（制御オブジェクト）、ディスプレー制御オブジェクト５５（制御オブジェクト）、及び、プリンター制御オブジェクト５６（制御オブジェクト）のすくなくとも１つが動作可能である。
まず、図４のフローチャートを用いて、これらオブジェクトや、ソフトウェア的なインターフェースの生成手順や、機能について説明する。
【００１８】
図４は、ブラウザー実行部２６ａ、及び、デバイス制御部２０ａにおけるオブジェクトが生成される際の手順を示すフローチャートである。特に、図４のフローチャートは、一例として、インターフェースオブジェクトとしてバーコードスキャナーＩ／Ｆオブジェクト４１の生成を例とし、かつ、制御オブジェクトとしてバーコードスキャナー制御オブジェクト５４を例として、これらオブジェクトが生成される際の手順を表わしている。
以下の説明において、「アプリケーションＡＰは、・・・」のように、アプリケーションＡＰを動作の主体として処理を説明する場合、アプリケーションＡＰを読み出して実行するＣＰＵ（端末制御部２６、ブラウザー実行部２６ａ）が、アプリケーションＡＰの機能を利用して、処理を実行することを意味する。同様に、「オブジェクトは、・・・」のように、オブジェクトを動作の主体として処理を説明する場合、ＣＰＵ（対応する制御部）が、オブジェクトの機能を利用して、処理を実行することを意味する。
まず、アプリケーションＡＰは、統括制御オブジェクト生成処理を実行する（ステップＳＡ１）。統括制御オブジェクト生成処理とは、統括制御オブジェクト４４を生成する処理である。統括制御オブジェクト４４は、詳細は後述するが、通信経路の確立や切断処理に係るメソッドや、制御オブジェクト及びインターフェースオブジェクトを生成や消去処理に係るメソッド等、ＰＯＳシステム１の制御に係る各種メソッドが実装されたオブジェクトである。
ステップＳＡ１における統括制御オブジェクト生成処理は、例えば、制御装置１１のメーカーにより、専用のＡＰＩ（Application Program Interface）が提供され、アプリケーションＡＰが当該ＡＰＩの機能を利用することにより実行される。
ステップＳＡ１の処理により統括制御オブジェクト４４が生成されると、アプリケーションＡＰは、通信経路確立要求（通信要求）を実行する（ステップＳＡ２）。通信経路確立要求（通信要求）とは、タブレット端末１０と、制御装置１１との間でＷｅｂＳｏｃｋｅｔに係る論理的な通信経路Ｋ１（双方向通信用の通信規格に準拠した通信経路）を確立し、これら装置間で、ＷｅｂＳｏｃｋｅｔの規格に準拠したデータの送受信が可能な状態を確立させる要求のことをいう。この通信経路確立要求（通信要求）は、統括制御オブジェクト４４に実装された専用のメソッドをアプリケーションＡＰが実行することにより実行される。
ステップＳＡ２の通信経路確立要求に応じて、統括制御オブジェクト４４、及び、中継オブジェクト５１は、協働して、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５と、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０との間に、ＷｅｂＳｏｃｋｅｔの規格に準拠してコネクションを張り、通信経路Ｋ１を確立する（ステップＳＡ３）。
なお、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５と、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０のそれぞれは、ＷｅｂＳｏｃｋｅｔの規格に準拠してデータの送受信を行うソフトウェアのインターフェースに係る機能ブロックである。また、中継オブジェクト５１は、デバイス制御部２０ａ上で動作するオブジェクトであって、上述した通信経路Ｋ１の確立処理に係るメソッドのほか、後述する各種処理に係るメソッドが実装されている。
ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５及び統括制御オブジェクト４４が協働して、「制御装置から出力された識別情報が付与されたデータを受信する受信部」として機能し、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０及び中継オブジェクト５１が協働して、「ブラウザーが動作する端末との間で通信する第２通信部」、「端末から送信された通信要求とデバイス制御要求とを受信する第２通信部」、又は、「ブラウザーが動作する端末と接続されて端末からの要求を受信する第２通信部」として機能する。
通信経路Ｋ１の確立に伴って、統括制御オブジェクト４４、又は、中継オブジェクト５１の機能により、通信経路Ｋ１に、当該通信経路Ｋ１を識別する情報である通信経路ＩＤ（通信経路の識別情報、通信接続に係る識別情報）が付与される。付与された通信経路ＩＤは、タブレット端末１０において、アプリケーションＡＰが参照可能な態様で端末記憶部２５における所定の記憶領域に記憶されると共に、制御装置１１において、中継オブジェクト５１が参照可能な態様で記憶部２２における所定の記憶領域に記憶される。
なお、通信経路Ｋ１の確立により、タブレット端末１０（端末）と、制御装置１１との間で、通信可能な状態が確立する。
【００１９】
次いで、アプリケーションＡＰは、バーコードスキャナー制御オブジェクト生成要求（デバイス制御要求）を実行する（ステップＳＡ４）。バーコードスキャナー制御オブジェクト生成要求とは、デバイス制御部２０ａ上で動作するバーコードスキャナー制御オブジェクト５４の生成を要求する処理である。なお、後に明らかとなるとおり、デバイス制御オブジェクトの生成により、対応するデバイスの制御が可能な状態が確立（デバイスの制御が確立）するため、ステップＳＡ４の処理は、「アプリケーション（又は、端末）が、デバイスの制御を要求」する処理に該当する。
ここで、制御装置１１に接続されるデバイスのそれぞれには、デバイスの種類ごとに、識別情報（以下、「デバイスＩＤ」という。）が割り振られている。以下の説明では、バーコードスキャナー１２には、デバイスＩＤとして「scanner」が割り振られているものとする。
そして、アプリケーションＡＰは、バーコードスキャナー制御オブジェクト５４の生成に際し、対応するデバイスであるバーコードスキャナー１２のデバイスＩＤを指定する。後に明らかとなるとおり、中継オブジェクト５１は、指定されたデバイスＩＤをキーとして、生成すべきデバイスに対応する適切な制御オブジェクトを生成する。
ここで、制御オブジェクトについて説明する。
制御オブジェクトとは、デバイスの制御に係る各種メソッドが実装されたオブジェクトであり、対応するハンドラーの機能を利用して、対応するデバイスの制御を行なう。例えば、キャッシュチェンジャー制御オブジェクト５３には、キャッシュチェンジャー１３の制御に係る処理を実行するメソッドが実装されており、当該オブジェクトは、キャッシュチェンジャーハンドラー６１の機能を利用して、キャッシュチェンジャー１３の制御を行なう。なお、ハンドラーとは、要求に応じて、対応するデバイスに係る処理を実行する関数、サブルーチンである。例えば、バーコードスキャナーハンドラー６０は、バーコードスキャナー１２によるバーコードの読み取りが実行された場合に、読み取り結果の入力を受けると共に、割り込み処理を行なって、読み取り結果（例えば、数字の文字列からなるデータ）をバーコードスキャナー制御オブジェクト５４に受け渡す。他のハンドラー（キャッシュチェンジャーハンドラー６１、ディスプレーハンドラー６２、及び、プリンターハンドラー６３）についても同様である。
また、デバイスとのインターフェースであるデバイスインターフェース７１と、各ハンドラーとが協働して、「デバイスと通信する通信部、又は、デバイスと通信する第１通信部」として機能する。
上述したとおり、制御オブジェクトの生成により、制御装置１１によるデバイスの制御が確立する。
【００２０】
アプリケーションＡＰによるバーコードスキャナー制御オブジェクト生成要求に応じて、統括制御オブジェクト４４は、通信経路Ｋ１を介して、中継オブジェクト５１に対して、バーコードスキャナー制御オブジェクト生成要求を行なう（ステップＳＡ５）。
当該要求に応じて、中継オブジェクト５１は、例えばｎｅｗステートメントにより、指定されたデバイスＩＤ（本例では、バーコードスキャナー１２のデバイスＩＤ「ｓｃａｎｎｅｒ」）に対応する制御オブジェクト（本例では、バーコードスキャナー制御オブジェクト５４）を生成する（ステップＳＡ６）。すなわち、デバイス制御部２０ａは、制御オブジェクトを生成し、生成された制御オブジェクトは、デバイス制御部２０ａで動作する。
ここで、ステップＳＡ６において、中継オブジェクト５１は、生成したバーコードスキャナー制御オブジェクト５４を、ステップＳＡ３で付与された通信経路ＩＤと対応づけて管理する。このことは、他の制御オブジェクトが生成された場合も同様である。このように、制御オブジェクトと、通信経路ＩＤとの対応付けが中継オブジェクト５１によって行なわれるため、中継オブジェクト５１は、制御オブジェクトのそれぞれについて、どのアプリケーションＡＰの管理下にあるのかを把握可能である。
より具体的に説明する。１台の制御装置１１に対して、第１タブレット端末と、第２タブレット端末との２台のタブレット端末が接続される場合を想定する。このような場合、タブレット端末のそれぞれは、制御装置１１との間で、ＷｅｂＳｏｃｋｅｔに係る通信経路を確立し、通信経路のそれぞれに対して、一意な通信経路ＩＤが付与される。そして、第１タブレット端末は、バーコードスキャナー１２を自身で動作するアプリケーションＡＰの管理下に置くべく、バーコードスキャナー制御オブジェクト５４を生成したとする。この場合、中継オブジェクト５１は、バーコードスキャナー制御オブジェクト５４を、第１タブレット端末に係る通信経路の通信経路ＩＤと対応付けて管理する。また、第２タブレット端末は、キャッシュチェンジャー１３を自身で動作するアプリケーションＡＰの管理下に置くべく、キャッシュチェンジャー制御オブジェクト５３を生成したとする。この場合、中継オブジェクト５１は、キャッシュチェンジャー制御オブジェクト５３を、第２タブレット端末に係る通信経路の通信経路ＩＤと対応付けて管理する。これにより、中継オブジェクト５１は、バーコードスキャナー１２の読み取り結果に基づいて、バーコードスキャナー制御オブジェクト５４が第１タブレット端末に対して出力するデータについて、対応する通信経路ＩＤの通信経路、すなわち、第１タブレット端末に係る通信経路を介して、第１タブレット端末に出力する。同様に、第２タブレット端末で動作するアプリケーションＡＰがキャッシュチェンジャー１３を制御する場合において、第２タブレット端末に係る通信経路を介した通信があった場合には、当該通信経路の通信経路ＩＤに対応付けられたキャッシュチェンジャー制御オブジェクト５３に適切にデータ等を出力する。このように、中継オブジェクト５１が、制御オブジェクトのそれぞれについて、通信経路ＩＤと対応付けて管理することにより、複数のタブレット端末が接続され、従って、複数の通信経路が確立されている場合であっても、各制御オブジェクトが誤った通信経路を介して通信することがない。
【００２１】
バーコードスキャナー制御オブジェクト５４の生成が完了すると、中継オブジェクト５１は、通信経路Ｋ１を介して、当該オブジェクトの生成が完了した旨の通知を統括制御オブジェクト４４に行ない（ステップＳＡ７）、さらに、統括制御オブジェクト４４は、当該通知をアプリケーションＡＰに行なう（ステップＳＡ８）。
なお、ステップＳＡ４のバーコードスキャナー制御オブジェクト生成処理の際に、制御オブジェクトの生成に係る処理の処理結果を受け取るコールバックが指定されており、コールバック関数が実行されることにより、アプリケーションＡＰに対して、バーコードスキャナー制御オブジェクト５４の生成が成功した旨の通知が行なわれる。
さらに、統括制御オブジェクト４４は、生成が完了したバーコードスキャナー制御オブジェクト５４に対応させて、バーコードスキャナーＩ／Ｆオブジェクト４１を生成する（ステップＳＡ９）。
ここで、インターフェースオブジェクトについて説明する。
インターフェースオブジェクトとは、アプリケーションＡＰによるデバイスの制御に際して、アプリケーションＡＰに対して、対応するデバイスに係る制御オブジェクトに実装されたメソッドを利用させるインターフェースとなる機能を有している。すなわち、アプリケーションＡＰは、ある１のデバイスを制御する際に、当該１のデバイスに対応するインターフェースオブジェクトに対して情報を出力すれば、当該インターフェースオブジェクトが、当該１のデバイスに対応する制御オブジェクトと通信し、制御オブジェクトに実装されたメソッドを実行させ、当該１のデバイスの制御を実現できる。
このインターフェースオブジェクトの生成により、アプリケーションＡＰは、インターフェースオブジェクトを介して、制御オブジェクトのメソッドを利用して、デバイスの制御が可能となる。すなわち、制御オブジェクトの生成に伴うインターフェースオブジェクトの生成により、「アプリケーションＡＰによる制御装置１１を介したデバイスの制御の確立」が行なわれる。
【００２２】
以上のようにして、バーコードスキャナー制御オブジェクト５４、及び、バーコードスキャナーＩ／Ｆオブジェクト４１の生成が完了する。他のデバイスについても、同様の手順にて制御オブジェクト、及び、インターフェースオブジェクトが生成される。
このように、本実施形態では、制御装置１１に制御オブジェクトの生成が完了した後、対応するインターフェースオブジェクトが生成される。このような構成のため、必ず、１つのデバイスについて、一対の制御オブジェクトと、インターフェースオブジェクトとが生成され、各デバイスについて、アプリケーションＡＰによるデバイスの制御が可能な状態が確立する。
また、本実施形態では、制御装置１１に接続されたデバイスのそれぞれについて、一対のインターフェースオブジェクト、及び、制御オブジェクトが生成される。このような構成のため、アプリケーションＡＰは、ある１のデバイスを制御する際に、当該１のデバイスに対応するインターフェースオブジェクトの機能を利用することにより、確実に、当該１のデバイスを制御でき、また、当該１のデバイスとデータの送受信を実行できる。
また、アプリケーションＡＰの開発（プログラミング）に際し、デバイスの制御に関するソフトウェア的なインターフェースに係るプログラムについては、各デバイスのインターフェースオブジェクトとの関係を考慮すればよく、開発が容易になる。例えば、アプリケーションＡＰにおけるキャッシュチェンジャー１３の制御に係るプログラムに関しては、キャッシュチェンジャーＩ／Ｆオブジェクト４０との関係で、情報（データ）の入出力を考慮して開発すればよく、開発が容易になる。
【００２３】
次に、図５のフローチャートを用いて、生成した制御オブジェクト、及び、インターフェースオブジェクトを消去し、確立した通信を解除する際の手順について説明する。図５のフローチャートでは、バーコードスキャナー１２に係る制御オブジェクト、及び、インターフェースオブジェクトを消去する場合を例としている。
まず、アプリケーションＡＰは、バーコードスキャナー制御オブジェクト５４の消去要求（デバイス制御解除要求）を実行する（ステップＳＢ１）。その際、アプリケーションＡＰは、バーコードスキャナー１２のデバイスＩＤを指定する。当該制御オブジェクトの消去要求は、統括制御オブジェクト４４に実装されたメソッドをアプリケーションＡＰが実行することにより実行される。
アプリケーションＡＰによるバーコードスキャナー制御オブジェクト５４の消去要求に応じて、統括制御オブジェクト４４は、通信経路Ｋ１を介して、中継オブジェクト５１に対して、バーコードスキャナー制御オブジェクト５４の消去要求を行なう（ステップＳＢ２）。
消去要求に応じて、中継オブジェクト５１は、例えばｄｅｌｅｔｅ演算子により、指定されたデバイスＩＤ（本例では、バーコードスキャナー１２のデバイスＩＤ「ｓｃａｎｎｅｒ」）に対応する制御オブジェクト（本例では、バーコードスキャナー制御オブジェクト５４）を消去する（ステップＳＢ３）。当該制御オブジェクトの消去により、制御装置１１におけるバーコードスキャナー１２の制御の確立が解除される。
このように、本実施形態では、アプリケーションＡＰによる制御オブジェクトの制御要求により、特定の制御オブジェクトを消去することが可能である。そして、特定のデバイスの制御オブジェクトを消去することにより、１のタブレット端末で動作するアプリケーションＡＰによる当該特定のデバイスの制御の占有が解除され、他のタブレットで動作するアプリケーションＡＰが、当該特定のデバイスを制御可能な状態となる。このため、アプリケーションＡＰは、特定のデバイスを使用しない状態となった場合、当該特定のデバイスの制御オブジェクトを消去することにより当該デバイスを開放することが可能であり、不必要にデバイスの占有が行なわれることを防止可能である。
【００２４】
バーコードスキャナー制御オブジェクト５４の消去が完了すると、中継オブジェクト５１は、通信経路Ｋ１を介して、当該オブジェクトの消去が完了した旨の通知を統括制御オブジェクト４４に行ない（ステップＳＢ４）、さらに、統括制御オブジェクト４４は、当該通知をアプリケーションＡＰに行なう（ステップＳＢ５）。
なお、ステップＳＢ１の処理の際に、制御オブジェクトの消去に係る処理の処理結果を受け取るコールバックが指定されており、コールバック関数の実行されることにより、アプリケーションＡＰに対して、バーコードスキャナー制御オブジェクト５４の消去が成功した旨の通知が行なわれる。
さらに、統括制御オブジェクト４４は、消去が完了したバーコードスキャナー制御オブジェクト５４に対応させて、バーコードスキャナーＩ／Ｆオブジェクト４１を消去する（ステップＳＢ６）。
次いで、アプリケーションＡＰは、制御装置１１との間で確立している通信経路Ｋ１の切断を要求（通信解除要求）する（ステップＳＢ７）。当該要求は、統括制御オブジェクト４４に実装された専用のメソッドをアプリケーションＡＰが実行することにより実行される。
ステップＳＡ７の要求に応じて、統括制御オブジェクト４４、及び、中継オブジェクト５１は、協働して、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５と、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０との間に確立された通信経路Ｋ１を、ＷｅｂＳｏｃｋｅｔの規格に準拠して切断する（ステップＳＢ８）。
以上のようにして、生成した制御オブジェクト、及び、インターフェースオブジェクトの消去、確立した通信の解除が行なわれる。
このように、生成した制御オブジェクトは、アプリケーションＡＰの要求により、任意のタイミングで、消去可能である。すなわち、アプリケーションＡＰは、ある１のデバイスについて、自身の制御下におく必要がなくなった場合、速やかに、当該１のデバイスに係る制御オブジェクトを消去し、当該１のデバイスの制御を開放することが可能である。このため、制御オブジェクトが不必要に残存し、他のタブレット端末のアプリケーションＡＰが、デバイスを制御不可能な状態が不必要に続くことを効果的に防止可能である。
【００２５】
次に、会計処理における処理の流れについて、具体例を挙げて説明する。
ここで、会計に係る処理が行われる前に、タブレット端末１０は、それぞれ、以下の処理を実行する。
すなわち、レジの担当者、その他の作業に従事する者は、タブレット端末１０のブラウザーを立ち上げ、タッチパネル３０へのユーザーインターフェースＵＩ（図６（Ａ）参照）の表示を指示する。当該指示に応じて、端末制御部２６のブラウザー実行部２６ａは、ＰＯＳサーバー１７上の所定のアドレスにアクセスし、ＨＴＭＬファイル等のウェブページのデータを取得し、当該データに基づいてユーザーインターフェースＵＩをタッチパネル３０に表示する。
図６（Ａ）は、タッチパネル３０に表示されたユーザーインターフェースＵＩの一例を示す図である。
図６（Ａ）のユーザーインターフェースＵＩにおいて、左上部には、顧客が購入した商品の名称、商品の単価、及び、商品の数量が一覧表示される一覧表示エリア６５が表示されている。この一覧表示エリア６５の右方には、顧客が購入した商品の合計金額、会計に際して顧客から預かった金銭の金額、及び、顧客に渡すべきお釣りの金額が表示される金額表示エリア６６が表示される。
また、一覧表示エリア６５の下方には、バーコードスキャナー１２によって読み取られたバーコードが表す情報（以下、「バーコード情報」という。）が入力され表示される入力フィールドであるバーコード情報入力フィールド６７が形成されている。バーコード情報は、基本的には、商品の種類毎に一意に割り当てられた識別情報である。バーコード情報入力フィールド６７の右方には、ソフトウェアテンキー６８が表示される。ユーザーインターフェースＵＩに形成された入力フィールドのそれぞれに対しては、このソフトウェアテンキー６８を介して情報を入力することが可能となっており、ソフトウェアテンキー６８は、情報を入力するキーを有している。
また、ユーザーインターフェースＵＩの上端部には、アクセス先のアドレスが表示されるアドレス入力フィールド６９が表示されている。
【００２６】
まず、バーコードスキャナー１２によるバーコードの読み取りが実行された後、読み取られたバーコードが表わす情報（以下、「バーコード情報」という。）がユーザーインターフェースＵＩのバーコード情報入力フィールド６７に表示されるまでの処理の手順を説明する。
図７は、上記処理の手順を説明するためのフローチャートである。
まず、バーコードの読み取り結果をアプリケーションＡＰが取得できるようにするために、事前に、アプリケーションＡＰにより、バーコードスキャナーＩ／Ｆオブジェクト４１に対してコールバック名の登録が行なわれる（ステップＳＣ１）。コールバック名とは、イベント（例えば、バーコードスキャナー１２によるバーコードの読み取り、というイベント）ごとに付与された識別名称である。インターフェースオブジェクトに対して、当該コールバック名と対応づけてデータが入力された場合、所定のコールバック関数が実行されて、アプリケーションＡＰへの当該データの入力が実行される。本例では、「バーコードスキャナー１２によるバーコードの読み取り」のコールバック名は、「ｏｎｄａｔａ」であるものとする。
さて、レジカウンターＬにおいて、レジの担当者は、バーコードスキャナー１２によって、顧客が購入した１の商品に付されたバーコードを読み取る（ステップＳＸ１）。
次に、バーコードスキャナーハンドラー６０に読み取り結果が入力される（ステップＳＣ２）。バーコードスキャナーハンドラー６０は、割り込み処理を行なって、読み取り結果であるバーコード情報を、バーコードスキャナー制御オブジェクト５４に出力する（ステップＳＣ３）。
次いで、バーコードスキャナー制御オブジェクト５４は、少なくとも、バーコードスキャナー１２のデバイスＩＤ（本例では、「ｓｃａｎｎｅｒ」）、コールバック名（本例では、「ｏｎｄａｔａ」）、バーコード情報（データ）を含むデータを、所定のデータ形式で中継オブジェクト５１に出力する（ステップＳＣ４）。
【００２７】
中継オブジェクト５１は、データＩＤ（識別情報）を生成し、入力されたデータに含まれるバーコード情報に、予め定められた態様で付与する（ステップＳＣ５）。データＩＤは、アプリケーションＡＰに受け渡すデータ（本例では、バーコード情報）を識別するために一意に付与される識別情報である。本実施形態では、データＩＤは、数字であり、中継オブジェクト５１は、統括制御オブジェクト４４へのデータの出力が時間的に遅いものほど、その値が大きくなるようにデータＩＤを生成し、付与する。例えば、入力されたバーコード情報について、値「１」のデータＩＤを生成、付与し、統括制御オブジェクト４４に出力した場合、次に入力されたバーコード情報については、値「２」（「１」より大きな値であれば、「２」以外でもよい。）のデータＩＤを生成、付与し、統括制御オブジェクト４４に対して出力する。付与されたデータＩＤの使用方法については、後に詳述する。
次いで、中継オブジェクト５１は、データＩＤが付与されたバーコード情報（データ）を、記憶部２２における所定の記憶領域に記憶する（ステップＳＣ６）。この結果、アプリケーションＡＰに対して出力されるデータＩＤ付きのデバイスに係るデータ（デバイスに関する情報）は、記憶部２２に累積的に記憶される。
次いで、中継オブジェクト５１は、バーコードスキャナー１２のデバイスＩＤ（本例では、「ｓｃａｎｎｅｒ」）、コールバック名（本例では、「ｏｎｄａｔａ」）、及び、データＩＤ付きのバーコード情報（データ）を含むデータを所定のデータ形式で、統括制御オブジェクト４４に出力する（ステップＳＣ７）。その際、中継オブジェクト５１は、バーコードスキャナー制御オブジェクト５４と対応付けられた通信経路ＩＤに係る通信経路Ｋ１を介して、データの出力を行なう。
【００２８】
次いで、統括制御オブジェクト４４は、入力されたデータに含まれるデバイスＩＤをキーとして、所定のインターフェースオブジェクト（本例では、バーコードスキャナーＩ／Ｆオブジェクト４１）に対して、データを出力する（ステップＳＣ８）。
バーコードスキャナーＩ／Ｆオブジェクト４１は、コールバック名（本例では、「ｏｎｄａｔａ」）に基づいて、所定のコールバック関数を実行して、データＩＤ付きのバーコード情報をアプリケーションＡＰに出力する（ステップＳＣ９）。
アプリケーションＡＰは、入力されたバーコード情報に基づいて、表示処理を実行し、バーコード情報を、バーコード情報入力フィールド６７に表示する（ステップＳＣ１０）。これにより、図６（Ｂ）に示すように、バーコード情報入力フィールド６７に、バーコード情報が表示された状態となる。
次いで、アプリケーションＡＰは、入力されたデータＩＤ付きのバーコード情報からデータＩＤを抽出し、端末記憶部２５の所定の記憶領域に、データＩＤを記憶する（ステップＳＣ１１）。このステップＳＣ１１の処理により、端末記憶部２５には、デバイスの出力データ（本例では、バーコード情報）のうち、アプリケーションＡＰに対して入力されたデータのデータＩＤが累積的に記憶された状態となる。端末記憶部２５に記憶されたデータＩＤの使用方法については後述する。
【００２９】
次に、アプリケーションＡＰがプリンターユニット２１にレシートを発行させる場合の処理の手順を説明する。
図８は、上記処理の手順を説明するためのフローチャートである。
まず、アプリケーションＡＰは、実装された機能により、レシートに印刷する画像を生成し、生成した画像に基づいて、プリンターユニット２１によって発行させるレシートに関する情報が含まれたＸＭＬドキュメント（データ）を生成する（ステップＳＤ１）。当該ＸＭＬドキュメントには、ＸＭＬに係るフォーマットに準拠して、レシートに印刷する文字や画像の情報等、レシートを発行する情報が所定の形式で含まれており、後述するように、プリンター制御部８０は、当該ＸＭＬドキュメントをプリンターユニット２１のコマンド体系に準拠した制御コマンドに変換可能である。
次いで、アプリケーションＡＰは、プリンターユニット２１のデバイスＩＤ、及び、プリンター制御オブジェクト５６に実行させる関数を指定する情報、及び、生成したＸＭＬドキュメント、を少なくとも含むデータを、プリンターＩ／Ｆオブジェクト４３に出力する（ステップＳＤ２）。本例では、プリンター制御オブジェクト５６に実行される関数とは、ＸＭＬドキュメントを、プリンター・ディスプレーＩ／Ｆ８１を介してプリンター制御部８０に出力させる処理を行なわせる関数である。
次いで、プリンターＩ／Ｆオブジェクト４３は、アプリケーションＡＰから入力されたデータの、プリンター制御オブジェクト５６への出力要求を統括制御オブジェクト４４に対して行なう。（ステップＳＤ３）統括制御オブジェクト４４は、通信経路Ｋ１を介して当該データを中継オブジェクト５１に対して出力し（ステップＳＤ４）、中継オブジェクト５１は、プリンター制御オブジェクト５６に当該データを出力する（ステップＳＤ５）。
プリンター制御オブジェクト５６は、入力されたデータにおいて指定された関数を実行することにより、入力されたデータに含まれるＸＭＬファイルを、プリンター・ディスプレーＩ／Ｆ８１を介して、プリンター制御部８０に出力する（ステップＳＤ６）。その際、プリンター制御オブジェクト５６は、ＸＭＬファイルについて、プリンター制御部８０が処理可能なようにデータ整形、データ変換を行なった上で、プリンター制御部８０に出力する。
プリンター制御部８０は、いわゆるプリンタードライバーの機能により実現される機能ブロックであり、入力されたＸＭＬファイルに基づいて、プリンターユニット２１のコマンド体系に準拠した制御コマンドを生成し、プリンターハンドラー６３を介して、プリンターユニット２１に出力する（ステップＳＤ７）。プリンターユニット２１は、入力された制御コマンドに基づいて、各種機構を動作させて、レシートを発行する（ステップＳＤ８）。
なお、ディスプレー１４に表示をさせる場合も、図８で説明した手順と同様の手順で処理が行なわれる。
すなわち、アプリケーションＡＰは、ディスプレーＩ／Ｆオブジェクト４２を介して、ディスプレー制御オブジェクト５５に、表示データを出力する。ディスプレー制御オブジェクト５５は、プリンター・ディスプレーＩ／Ｆ８１を介して、ディスプレー制御部８２に表示データを出力する。ディスプレー制御部８２は、入力された表示データをディスプレー１４のコマンド体系に準拠した制御コマンド体系に変換して、ディスプレーハンドラー６２の機能を利用して、ディスプレー１４に出力する。ディスプレー１４は、制御コマンドに基づいて表示データの表示を行なう。
【００３０】
以上のように、各デバイスについて、デバイスに対応するインターフェースオブジェクトと、制御オブジェクトとの通信により、アプリケーションＡＰによるデバイスの制御、及び、アプリケーションＡＰとデバイスとの間でのデータの送受信が適宜行なわれる。
特に、本実施形態では、タブレット端末１０と、制御装置１１とは、ＷｅｂＳｏｃｋｅｔの規格に準拠した通信を行なう。すなわち、タブレット端末１０に係るブラウザーからサーバーとして機能する制御装置１１に対してデータの送信要求を出すことなく、いずれの装置も、他方の装置に対してデータを送信することができる。換言すれば、インターフェースオブジェクトと、対応する制御オブジェクトとは、双方向通信可能である。このため、図７のフローチャートを用いて説明したように、デバイス側のイベントをトリガーとして、デバイスからアプリケーションＡＰへ、制御オブジェクト及びインターフェースオブジェクトを介したスムーズなデータの出力が可能である。かつ、図８のフローチャートを用いて説明したように、アプリケーションＡＰ側のイベントをトリガーとして、アプリケーションＡＰは、インターフェースオブジェクト及び制御オブジェクトを介して、デバイスを制御可能である。
【００３１】
また、以上説明したように、各デバイスの制御オブジェクトの生成により、対応するデバイスの制御が確立する。つまり、制御オブジェクトの生成により、対応する制御オブジェクトとの間でのデータの入力が可能な状態が確立し、これにより、アプリケーションＡＰによって対応するデバイスに各種処理を実行させることが可能となり、また、対応するデバイスからアプリケーションＡＰに対してデータの出力を行なうことが可能となる。なお、後述するように、制御オブジェクトは、アプリケーションＡＰが出力するデータをデバイス（又は、デバイスの制御部）に出力することにより、デバイスに特定の処理を行なわせる場合もあり、また、アプリケーションＡＰの要求に従って、デバイスに制御コマンドを出力して、デバイスに特定の処理を行なわせる場合もある。
より詳細に説明すると、上述のとおり、バーコードスキャナー制御オブジェクト５４は、その機能（メソッド）として、対応するバーコードスキャナー１２でバーコードの読み取りが実行された場合に、割り込み処理によって読み取り結果を取得し、取得した読み取り結果をバーコードスキャナーＩ／Ｆオブジェクト４１を介して、アプリケーションＡＰに出力する、という機能（メソッド）を有している。すなわち、バーコードスキャナー制御オブジェクト５４は、対応するバーコードスキャナー１２でのバーコードの読み取りに応じて、読み取られた読み取り結果のタブレット端末１０への送信を可能とする。従って、ここでのデバイス制御の確立は、対応するバーコードスキャナー１２の読取結果をタブレット端末１０への送信が可能な状態の確立を表す。これらの機能はバーコード制御オブジェクト５４の生成により実行可能となる。
また、上述のとおり、プリンター制御オブジェクト５６は、アプリケーションＡＰが生成したＸＭＬドキュメントを、プリンター制御部８０が処理可能なようにデータ整形、データ変換を行なった上で、プリンター制御部８０に出力する。プリンター制御部８０は、処理可能な態様で出力されたデータに基づいて、制御コマンドを生成して出力し、プリンターユニット２１にレシートを発行させる（印刷を実行させる）。また、プリンター制御オブジェクト５６は、プリンターユニット２１が出力したデータ（例えば、プリンターユニット２１のステータス（紙切れや、エラー等）を表わすデータ）を、プリンター制御部８０を介して取得する。そして、プリンター制御オブジェクト５６は、取得したデータをプリンターＩ／Ｆオブジェクト４３を介して、アプリケーションＡＰへ出力する。すなわち、ここでのデバイスの制御の確立は、タブレット端末１０（アプリケーションＡＰ）から対応するプリンターユニット２１にデータの出力が可能な状態、及び、タブレット端末１０（アプリケーションＡＰ）によってプリンターユニット２１に印刷を含む各種処理を実行させることが可能な状態の確立を表す。また、対応するプリンターユニット２１からタブレット端末１０（アプリケーションＡＰ）に対して適宜のタイミングでデータの送信が可能な状態の確立を表す。これらの機能はプリンター制御オブジェクト５６の生成により実現される。
ディスプレー制御オブジェクト５５についても、プリンター制御オブジェクト５６と同様の態様で、デバイスの制御の確立が行なわれる。すなわち、ディスプレー制御オブジェクト５５の生成により、タブレット端末１０（アプリケーションＡＰ）から対応するディスプレーにデータの出力が可能な状態、及び、タブレット端末１０（アプリケーションＡＰ）によってディスプレー１４に各種情報を表示させることが可能な状態が確立する。また、ディスプレー制御オブジェクト５５の生成により、ディスプレー１４からタブレット端末１０（アプリケーションＡＰ）に対して適宜のタイミングでデータの送信が可能な状態が確立する。
また、キャッシュチェンジャー制御オブジェクト５３は、アプリケーションＡＰの要求に基づいて、実行させるべき処理に対応する制御コマンドを生成してキャッシュチェンジャー１３に出力し、キャッシュチェンジャー１３に入金処理や、出金処理等の各種処理を実行させる。この制御コマンドの生成、及び、出力は、アプリケーションＡＰにより指示されたメソッドの実行によって行なわれる。換言すれば、タブレット端末１０（アプリケーションＡＰ）は、キャッシュチェンジャーＩ／Ｆオブジェクト４０を介して、キャッシュチェンジャー制御オブジェクト５３に実装されたメソッドを指定することによって、キャッシュチェンジャー１３に任意の処理を実行させることができる。
また、キャッシュチェンジャー制御オブジェクト５３は、キャッシュチェンジャー１３により計数が行なわれた場合や、キャッシュチェンジャー１３に対して入出金があった場合、割り込み処理によってその処理結果を取得し、取得した処理結果をキャッシュチェンジャーＩ／Ｆオブジェクト４０を介して、アプリケーションＡＰに出力する。
すなわち、ここでのデバイスの制御の確立は、タブレット端末１０（アプリケーションＡＰ）から対応するキャッシュチェンジャー１３にデータの出力が可能な状態、及び、タブレット端末１０（アプリケーションＡＰ）によってキャッシュチェンジャー１３に入金処理等の各種処理を実行させることが可能な状態の確立を表す。また、対応するキャッシュチェンジャー１３からタブレット端末１０（アプリケーションＡＰ）に対して適宜のタイミングでデータの送信が可能な状態の確立を表す。これらの機能はキャッシュチェンジャー制御オブジェクト５３の生成により実現される。
【００３２】
ところで、タブレット端末１０と、制御装置１１とは、イーサネット（登録商標）等の所定の規格に準拠して、無線通信可能に接続されているが、電波障害、その他の原因により、意図せずに一時的に、通信が切断（いわゆる瞬断）される場合がある。なお、無線通信でない場合であっても、例えば、通信ケーブルの外れ、接触不良等により、一時的に通信が切断される場合がある。
このような場合に、タブレット端末１０、及び、制御装置１１は、以下説明するように、制御オブジェクトの存在を踏まえた処理を行なう。
【００３３】
図９は、通信が切断した場合のタブレット端末１０、及び、制御装置１１の動作を示すフローチャートである。
図９（Ａ）は、タブレット端末１０で動作するアプリケーションＡＰの処理手順を示し、図９（Ｂ）は、制御装置１１で動作する中継オブジェクト５１の処理手順を示している。
図９のフローチャートの前提として、タブレット端末１０と、制御装置１１との間には通信経路Ｋ１が確立されており、かつ、制御装置１１には、キャッシュチェンジャー１３、バーコードスキャナー１２、ディスプレー１４、及び、プリンターユニット２１のそれぞれの制御オブジェクトが生成されている状態であるものとする。
図９（Ａ）に示すように、アプリケーションＡＰは、通信の切断があったか否かを監視する（ステップＳＥ１）。なお、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５が、ＷｅｂＳｏｃｋｅｔの規格に準拠した手段により、通信の切断の有無を監視し、通信の切断が発生した場合、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５からアプリケーションＡＰに対してその旨出力する構成となっている。
通信の切断があった場合（ステップＳＥ１：ＹＥＳ）、アプリケーションＡＰは、統括制御オブジェクト４４の機能により、再接続を試み、再接続が成功したか否かを判別する（ステップＳＥ２）。この再接続の試行は、予め定められた期間の間、行なわれる。
【００３４】
同様に、図９（Ｂ）に示すように、中継オブジェクト５１は、通信の切断があったか否かを監視する（ステップＳＦ１）。なお、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０が、ＷｅｂＳｏｃｋｅｔの規格に準拠した手段により、通信の切断の有無を監視し、通信の切断が発生した場合、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０からアプリケーションＡＰに対してその旨出力する構成となっている。
通信の切断があった場合（ステップＳＦ１：ＹＥＳ）、中継オブジェクト５１は、通信の切断があってからの経過時間の計測を開始する（ステップＳＦ２）。後に明らかとなるとおり、中継オブジェクト５１は、通信の切断があってからの経過時間が、期間Ｔ１を超えた場合、切断された通信に係る通信経路ＩＤと対応付けられた制御オブジェクトを消去する構成となっている。この期間Ｔ１は、通信の切断が、意図した切断であるのか、意図しない瞬断であるのかを判別する基準値となるよう、その値が定められる。
経過時間の計測の開始後、中継オブジェクト５１は、経過時間が期間Ｔ１に至ったか否かを監視しつつ（ステップＳＦ４）、経過時間が期間Ｔ１に至る前に、通信の再接続が行なわれたか否かを判別する（ステップＳＦ３）。
通信の再接続が行なわれることなく、経過時間が期間Ｔ１に至った場合（ステップＳＦ４：ＹＥＳ）、通信の切断は、瞬断ではなく、意図的な切断であるとみなすことができる。中継オブジェクト５１は、切断された通信に係る通信経路ＩＤと対応付けられた制御オブジェクト（本例では、キャッシュチェンジャー１３、バーコードスキャナー１２、ディスプレー１４、及び、プリンターユニット２１の制御オブジェクト）を消去する（ステップＳＦ５）。上述したとおり、制御オブジェクトが消去されることにより、各デバイスについて、他のタブレット端末で動作するアプリケーションＡＰに開放され、他のアプリケーションＡＰが、新たに制御オブジェクトを生成して、制御可能な状態となる。
なお、制御オブジェクトが消去された後に、再び、制御装置１１と、タブレット端末１０（通信の切断前と同一の端末であってもよく、異なる端末であってもよい。）との間で通信が確立した場合、図４で説明した手順に従って、タブレット端末１０の要求に基づいて、デバイス制御部２０ａは、制御オブジェクトを生成し、動作させる。これにより、通信の切断後、所定期間内に再接続が行なわれず、これに伴って、制御オブジェクトが消去された場合であっても、迅速にデバイスの制御を可能な状態とすることができる。
このように、本実施形態では、通信の再接続が行なわれることなく、経過時間が期間Ｔ１に至った場合は、通信の切断が意図的な切断であるとみなし、制御オブジェクトの消去（制御オブジェクトの開放）を行なう。このような構成のため、他のアプリケーションＡＰによってデバイスが制御できない時間が、不必要に長時間継続することが防止される。
【００３５】
さて、図９（Ａ）を参照し、ステップＳＥ２における再接続の試行の結果、再接続に成功した場合（ステップＳＥ２：ＹＥＳ）、アプリケーションＡＰは、切断された通信に係る通信経路Ｋ１の通信経路ＩＤを、中継オブジェクト５１に送信する（ステップＳＥ３）。図４のステップＳＡ３で説明したとおり、通信経路Ｋ１の確立に伴って通信経路ＩＤが付与され、アプリケーションＡＰが参照可能な態様で端末記憶部２５における所定の記憶領域に記憶されている。
図９（Ｂ）を参照し、通信の再接続が成功した場合、ステップＳＦ３の判別において、「ＹＥＳ」と判別され、さらに、アプリケーションＡＰによるステップＳＥ３の処理により、切断された通信に係る通信経路Ｋ１の通信経路ＩＤが送信されてくるため、中継オブジェクト５１は、通信経路ＩＤを受信する（ステップＳＦ６）。
通信経路ＩＤを受信すると、中継オブジェクト５１は、受信した通信経路ＩＤに対応付けられた制御オブジェクトが存在するか否かを判別する（ステップＳＦ７）。存在しない場合は（ステップＳＦ７：ＮＯ）、中継オブジェクト５１は、処理を終了する。
一方、通信した通信経路ＩＤに対応付けられた制御オブジェクトが存在する場合（ステップＳＦ７：ＹＥＳ）、中継オブジェクト５１は、これら制御オブジェクトについて、期間Ｔ１後の消去を解除し、制御オブジェクトを消去することなく、存続させる（制御オブジェクトの生成を制御する。）（ステップＳＦ８）。
このように本実施形態では、通信の切断後、期間Ｔ１内に通信の再接続が成功した場合、当該通信の切断は、意図せぬ瞬断である蓋然性が高いものとして、切断された通信に係る通信経路Ｋ１の通信経路ＩＤと対応付けられた制御オブジェクトについては、存続させる。このような構成のため、アプリケーションＡＰは、デバイスの制御に際し、新たに制御オブジェクトを生成させることなく、迅速、かつ、効率よく、デバイスの制御を行なうことができる。さらに、１のアプリケーションＡＰがデバイスを制御している場合に、瞬断に起因してデバイスの制御が他のアプリケーションＡＰに開放され（対応する制御オブジェクトが消去され）、当該他のアプリケーションＡＰによって制御を獲得される、ということがない。
さて、ステップＳＦ８における制御オブジェクトの消去の解除（制御オブジェクトの生成の制御）後、アプリケーションＡＰと、中継オブジェクト５１とは、協働して、データ再送処理を実行する（ステップＳＥ４、ステップＳＦ９）。
【００３６】
図１０は、データ再処理におけるアプリケーションＡＰ、及び、中継オブジェクト５１の処理を示すフローチャートであり、（Ａ）はアプリケーションＡＰの処理を、（Ｂ）は中継オブジェクト５１の処理をそれぞれ示している。
図１０（Ａ）を参照し、アプリケーションＡＰは、端末記憶部２５に記憶したデータＩＤのうち、直近で受信したデータのデータＩＤを、中継オブジェクト５１に出力する（ステップＳＧ１）。図７のステップＳＣ１１で説明したとおり、アプリケーションＡＰに入力されるデバイスに係るデータ（デバイスに関する情報）にはデータＩＤが付与されており、当該データが入力された場合、アプリケーションＡＰは、入力されたデータＩＤ付きのバーコード情報からデータＩＤを抽出し、端末記憶部２５の所定の記憶領域に、データＩＤを記憶している。
アプリケーションＡＰからデータＩＤが入力されると、中継オブジェクト５１は、記憶部２２に累積的に記憶したデータＩＤ付きのデータにおけるデータＩＤと、アプリケーションＡＰから入力したデータＩＤとを突き合わせ、瞬断に起因して、アプリケーションＡＰに出力すべきデータであって、アプリケーションＡＰへの入力が行なわれていないデータを特定（判別）する（ステップＳＨ１）。詳述すると、中継オブジェクト５１は、データＩＤの生成に際し、アプリケーションＡＰへのデータの出力が時間的に遅いものほど、その値が大きくなるようにする、という規則性を持ってデータＩＤを生成する。これを踏まえ、中継オブジェクト５１は、アプリケーションＡＰから受信したデータＩＤと、同一の値に係るデータＩＤが付与されたデータは、データの出力が正常に終了している。一方、受信したデータＩＤよりも、大きい値に係るデータＩＤが付与されたデータは、瞬断に起因してアプリケーションＡＰへのデータの入力が行なわれていないものとして、これらデータを、アプリケーションＡＰへのデータの入力が行なわれていないデータとして特定する。つまり、ステップＳＨ１では、中継オブジェクト５１は、タブレット端末１０に、送信したデータに付与されたデータＩＤのうち、タブレット端末１０に記憶されていないデータＩＤを判別することにより、タブレット端末１０に正常に入力されていないデータのデータＩＤを特定している。
次いで、中継オブジェクト５１は、データの入力が行なわれていないデータ（デバイスに関する情報）をアプリケーションＡＰへ出力する（ステップＳＨ２）。アプリケーションＡＰは、中継オブジェクト５１が出力したデータを取得し、適宜、処理を実行する（ステップＳＧ２）。
以上のようなデータ再送処理が行なわれることにより、通信の瞬断があった場合であっても、データを欠損させることなく、アプリケーションＡＰに出力すべきデータの全てについて、アプリケーションＡＰに出力することが可能である。
【００３７】
以上説明したように、本実施形態に係るＰＯＳシステム１（制御システム）は、デバイス（バーコードスキャナー１２等）と、デバイスインターフェース７１及び各ハンドラーとの協働によってデバイスと通信する通信部と、デバイスを制御する制御オブジェクトを生成するデバイス制御部２０ａと、を有する制御装置１１を備えている。また、ＰＯＳシステム１は、ブラウザーを表示するタッチパネル３０（表示部）と、制御オブジェクトとの間でデバイスに関する情報を通信するインターフェースオブジェクトを生成すると共に、ブラウザーで動作するアプリケーションＡＰによってデバイスに関する情報を処理する端末制御部２６（ブラウザー実行部２６ａ）と、を有するタブレット端末１０（端末）を備えている。
この構成によれば、タブレット端末１０のブラウザーで動作するアプリケーションＡＰは、制御オブジェクト、及び、インターフェースオブジェクトの機能により、デバイスに関する情報を取得し、処理することが可能となり、タブレット端末１０のブラウザーで動作するアプリケーションＡＰによるデバイスの制御が可能となる。
【００３８】
また、本実施形態では、制御装置１１には、複数のデバイスが接続される。そして、第１のデバイス（例えば、バーコードスキャナー１２）が接続されている状況下で、第２のデバイス（例えば、キャッシュチェンジャー１３）が接続された場合、制御装置１１のデバイス制御部２０ａは、第２のデバイスを制御する第２の制御オブジェクト（例えば、キャッシュチェンジャー制御オブジェクト５３）を生成する。さらに、タブレット端末１０の端末制御部２６（ブラウザー実行部２６ａ）は、第２のデバイスに関する情報を第２の制御オブジェクトの間で通信する第２のインターフェースオブジェクト（例えば、キャッシュチェンジャーＩ／Ｆオブジェクト４０）を生成する。
この構成によれば、制御装置１１に接続される第２のデバイスについて、対応する制御オブジェクト、及び、インターフェースオブジェクトが生成される。すなわち、制御装置１１に接続されるデバイスのそれぞれについて、対応する制御オブジェクト、及び、インターフェースオブジェクトが生成され、これらオブジェクトの機能を利用して、タブレット端末１０のブラウザーで動作するアプリケーションＡＰは、デバイスのそれぞれを制御可能となる。
【００３９】
また、本実施形態では、タブレット端末１０と、制御装置１１との間で、双方向通信用の通信規格たるＷｅｂＳｏｃｋｅｔの規格に準拠した通信経路Ｋ１が確立され、制御オブジェクトと、対応するインターフェースオブジェクトとは、通信経路Ｋ１を介して双方向通信可能である。
この構成によれば、制御オブジェクトと、対応するインターフェースオブジェクトとは、通信経路Ｋ１を介して双方向通信可能であるため、タブレット端末１０側のイベントをトリガーとするインターフェースオブジェクトから制御オブジェクトに対するデータの出力、及び、制御装置１１側のイベントをトリガーとする制御オブジェクトからインターフェースオブジェクトに対するデータの出力を的確に実行することができる。
【００４０】
また、本実施形態では、制御オブジェクトの生成が完了した後、制御オブジェクトに対応するインターフェースオブジェクトが生成される。
この構成によれば、制御オブジェクトが生成された場合に、対応するインターフェースオブジェクトが確実に生成される。
【００４１】
また、本実施形態では、制御装置１１には、デバイスとしてのプリンターユニット２１（印刷部）が接続され、デバイス制御部２０ａは、プリンターユニット２１を制御するプリンター制御オブジェクト５６を生成する。
この構成によれば、タブレット端末１０のブラウザーで動作するアプリケーションＡＰは、制御オブジェクト、及び、インターフェースオブジェクトの機能により、デバイスとしてのプリンターユニット２１に関する情報を取得し、処理することが可能となり、タブレット端末１０のブラウザーで動作するアプリケーションＡＰによって、印刷を実行できる。
【００４２】
また、本実施形態では、タブレット端末１０のブラウザーで動作するアプリケーションＡＰから、制御装置１１に、接続されたデバイスの制御オブジェクトの生成を要求し（デバイスの制御を要求し）、デバイスの制御オブジェクトの生成を要求された（デバイスの制御を要求された）制御装置１１は、制御オブジェクトを生成することによりデバイスの制御を確立する。そして、制御装置１１が制御オブジェクトを生成することによってデバイスの制御を確立した後、タブレット端末１０は、制御オブジェクトに対応するインターフェースオブジェクトを生成することにより、アプリケーションＡＰによる制御装置１１を介したデバイスの制御を確立する。
この構成によれば、アプリケーションＡＰの要求に応じて、デバイスの制御の確立、及び、アプリケーションＡＰによる制御装置１１を介したデバイスの制御の確立が順次行なわれ、タブレット端末１０のブラウザーで動作するアプリケーションＡＰによるデバイスの制御が可能となる。
【００４３】
また、本実施形態では、制御装置１１は、デバイスを制御する制御オブジェクトの生成によって、デバイスの制御を確立する。
この構成によれば、制御オブジェクトの生成という手段によって、デバイスの制御を確立できる。
【００４４】
また、本実施形態では、タブレット端末１０は、制御オブジェクトと通信する機能を有するインターフェースオブジェクトの生成によって、アプリケーションＡＰによる制御装置１１を介したデバイスの制御を確立する。
この構成によれば、制御オブジェクトの生成、及び、当該制御オブジェクトと通信する機能を有するインターフェースオブジェクトの生成という手段によって、アプリケーションＡＰによる制御装置１１を介したデバイスの制御を確立できる。
【００４５】
また、本実施形態に係るＰＯＳシステム１（制御システム）は、ブラウザーを表示するタッチパネル３０（表示部）、及び、通信接続を要求する通信要求（通信経路確立要求）及び制御オブジェクトの生成を要求する（デバイスの制御を要求する）デバイス制御要求を出力する端末制御部２６（ブラウザー実行部２６ａ）を有するタブレット端末１０を備えている。また、ＰＯＳシステム１は、デバイスと通信する通信部、及び、タブレット端末１０から送信された通信要求に基づいてタブレット端末１０との通信を確立すると共に、タブレット端末１０との通信が確立した後にデバイス制御要求に基づいて、制御オブジェクトを生成することにより、デバイスの制御を確立するデバイス制御部２０ａを有する制御装置１１を備えている。
この構成によれば、タブレット端末１０による通信要求、及び、デバイス制御要求に応じて、通信の確立、及び、デバイスの制御の確立が順次行なわれ、ブラウザーの機能を利用したタブレット端末１０によるデバイスの制御が可能となる。
【００４６】
また、タブレット端末１０の端末制御部２６（ブラウザー実行部２６ａ）は、制御オブジェクトの消去を要求する（デバイスの制御の確立の解除を要求する）デバイス制御解除要求を出力し、制御装置１１のデバイス制御部２０ａは、デバイス制御解除要求に基づいて、制御オブジェクトを消去してデバイスの制御の確立を解除する。
この構成によれば、タブレット端末１０からのデバイス制御解除要求により、デバイスの制御の確立を解除でき、デバイスが端末の制御下におかれた状態が不必要に継続することを防止可能である。
【００４７】
また、本実施形態では、タブレット端末１０のアプリケーションＡＰは、制御装置１１との間で確立している通信経路Ｋ１の切断の要求（通信解除要求）を出力し、制御装置１１のデバイス制御部２０ａは、通信解除要求に基づいて、通信の確立を解除する。
この構成によれば、タブレット端末１０からの通信解除要求により、確立した通信を的確に解除可能である。
【００４８】
また、本実施形態では、タブレット端末１０（アプリケーションＡＰ）は、通信接続を要求する通信要求、及び、デバイスとしてのプリンターユニット２１の制御オブジェクトの生成を要求（印刷部の制御を要求）するデバイス制御要求を出力する。制御装置１１のデバイス制御部２０ａは、通信要求に基づいてタブレット端末１０との通信を確立すると共に、タブレット端末１０との通信が確立した後にデバイス制御要求に基づいて、プリンター制御オブジェクト５６を生成して、プリンターユニット２１の制御を確立する。
この構成によれば、タブレット端末１０による通信要求、及び、デバイス制御要求に応じて、通信の確立、及び、デバイスとしてのプリンターユニット２１の制御の確立が順次行なわれ、タブレット端末１０は、ブラウザーの機能を利用して、プリンターユニット２１に印刷を行なわせることが可能となる。
【００４９】
また、本実施形態に係る制御装置１１は、デバイスインターフェース７１及び各ハンドラーとの協働によってデバイスと通信する第１通信部と、デバイスを制御する制御オブジェクトが動作するデバイス制御部２０ａと、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０及び中継オブジェクト５１の協働によってタブレット端末１０との間で通信する第２通信部と、を有し、タブレット端末１０との接続が切断されたとき、デバイス制御部２０ａは、制御オブジェクトを期間Ｔ１保持した後に消去する。
この構成によれば、通信の切断に応じて、すぐに制御オブジェクトが消去されるのではなく、期間Ｔ１保持された後、消去される。このため、意図しない一時的な通信の切断があった場合であっても、すぐに制御オブジェクトが消去されず、一時的な通信の切断が回復したときに、消去されずに保持された制御オブジェクトによってデバイスの制御を迅速に開始することが可能である。また、制御オブジェクトが期間Ｔ１保持された後は、消去されるため、不必要に長期間制御オブジェクトが消去されず、これに伴って、デバイスの制御権が開放されないといったことが効果的に防止される。
【００５０】
また、本実施形態では、タブレット端末１０と制御装置１１との間で通信の切断があり、期間Ｔ１内に再接続が行なわれず、制御オブジェクトが消去された後に、再び、制御装置１１と、タブレット端末１０（通信の切断前と同一の端末であってもよく、異なる端末であってもよい。）との間で通信が確立した場合、図４で説明した手順に従って、タブレット端末１０の要求に基づいて、デバイス制御部２０ａは、制御オブジェクトを生成し、動作させる。
これにより、通信の切断後、所定期間内に再接続が行なわれず、これに伴って、制御オブジェクトが消去された場合であっても、迅速にデバイスの制御を可能な状態とすることができる。
【００５１】
また、本実施形態では、期間Ｔ１内にタブレット端末１０との間で接続が行なわれた場合、保持した制御オブジェクトの消去を解除する（制御オブジェクトの生成を制御する）。
本発明の構成によれば、通信の切断後、期間Ｔ１内に再接続が行なわれた場合、制御オブジェクトの消去が解除されるため、通信の切断後、期間Ｔ１内に再接続が行なわれるような一時的な切断があった場合に、制御オブジェクトが消去されることを防止できる。
【００５２】
また、本実施形態では、タブレット端末１０と制御装置１１との間での接続の確立に応じて、接続に対応する識別情報（通信経路ＩＤ）をこれら装置のそれぞれが記憶し、接続の切断後における再接続の際に、これら装置のそれぞれに記憶された識別情報に基づいて、再接続を行なう。
この構成によれば、再接続に際し、必要に応じて、各装置に記憶された識別情報（通信経路ＩＤ）を利用して、切断前の接続に対応する態様で、再接続を行なうことが可能となる。
【００５３】
また、本実施形態では、制御装置１１には、接続されたデバイスごとに、デバイスの制御に係る制御オブジェクトが生成される。そして、制御装置１１（中継オブジェクト５１）は、識別情報（通信経路ＩＤ）を、制御オブジェクトと対応付けて記憶すると共に、タブレット端末１０との接続の切断後、期間Ｔ１内にタブレット端末１０との間での再接続が行なわれなかった場合、制御オブジェクトを消去する。一方、制御装置１１は、接続の切断後における再接続の際に、タブレット端末１０に記憶された識別情報と同一の識別情報と対応付けられた制御オブジェクトが存在するか否か判別し、存在する場合、所定期間経過後の制御オブジェクトの消去を解除する。
この構成によれば、接続の切断後、期間Ｔ１内に再接続が行なわれるような一時的な切断があった場合に、切断前の接続時に使用していた制御オブジェクトが消去されることを防止しつつ、再接続後に、改めて制御オブジェクトを生成することなく、制御オブジェクトを利用可能である。
【００５４】
また、本実施形態に係るＰＯＳシステム１（制御システム）は、デバイスインターフェース７１及び各ハンドラーとの協働によってデバイスと通信して、デバイスが出力したデータを取得する第１通信部と、第１通信部で取得されたデータ（例えば、バーコード情報）に識別情報（データＩＤ）を付与するデバイス制御部２０ａと、データＩＤ付きのデータを記憶する記憶部２２と、デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ５０及び中継オブジェクト５１の協働によってデータＩＤ付きのデータを出力する第２通信部と、を有する制御装置を備えている。また、ＰＯＳシステム１は、ブラウザー側ＷｅｂＳｏｃｋｅｔＩ／Ｆ４５及び統括制御オブジェクト４４の協働により制御装置１１から出力されたデータＩＤ付きのデータを受信する受信部と、受信部で受信されたデータに付与された識別情報を記憶する端末記憶部２５と、データを処理するアプリケーションを動作させる端末制御部２６を有するタブレット端末１０を備えている。
この構成によれば、制御装置１１からタブレット端末１０に出力されるデータに識別情報（データＩＤ）が付与されると共に、制御装置１１は、出力データを記憶し、タブレット端末１０は、入力データに係る識別情報を記憶する。このため、接続の切断があった場合、識別情報（データＩＤ）をキーとして、接続の切断に起因してタブレット端末１０に入力されていないデータを特定でき、かつ、特定したデータを再出力することが可能となる。
【００５５】
また、本実施形態では、タブレット端末１０と、制御装置１１との接続の切断後における再接続に際し、タブレット端末１０は、記憶した識別情報（データＩＤ）を制御装置１１に送信し、制御装置１１は、タブレット端末１０から受信した識別情報（データＩＤ）と、記憶したデータＩＤ付きのデータにおけるデータＩＤとの比較に基づいて、タブレット端末１０に入力されていないデータを特定し、再送信する。
この構成によれば、接続の切断後における再接続に際し、識別情報（データＩＤ）を利用して的確にタブレット端末１０に入力されていないデータの特定が可能である。
【００５６】
また、本実施形態では、制御装置１１は、デバイスからの入力に基づくデータに、規則性を有するデータＩＤを付与してタブレット端末１０に送信すると共に、送信したデータＩＤ付きのデータを記憶する。そして、タブレット端末１０と、制御装置１１との接続の切断後における再接続に際し、タブレット端末１０は、直近で受信したデータに係る識別情報（データＩＤ）を制御装置１１に送信する。制御装置１１は、タブレット端末１０から受信した識別情報（データＩＤ）と、記憶したデータＩＤ付きのデータにおけるデータＩＤとの比較、及び、識別情報（データＩＤ）の規則性に基づいて、タブレット端末１０に入力されていないデータを特定し、再送信する。
この構成によれば、例えば、タブレット端末１０が制御装置１１に対して、一定期間に入力されたデータの全てについて識別情報（データＩＤ）を送信する。制御装置１１は受信した識別情報（データＩＤ）と、記憶したデータＩＤ付きのデータにおけるデータＩＤとの比較により、タブレット端末１０に入力されていないデータを特定する、といった処理をすることなく、識別情報（データＩＤ）の規則性を利用した簡易な手段で、制御装置１１は、タブレット端末１０に入力されていないデータを特定可能である。
【００５７】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、レジカウンターＬを有する店舗に、ＰＯＳシステム１が適用された場合を例にして、本発明を説明したが、ＰＯＳシステムの使用の態様はこの例に限らず、例えば、喫茶店や、レストラン等の飲食店に対して適用することも可能である。また例えば、制御装置１１と、ＰＯＳサーバー１７とは、別個の装置であったが、制御装置１１にＰＯＳサーバー１７の機能を持たせてもよい。また例えば、制御装置１１はサーマルプリンターであったが、記録形式は何であってもよい。
また例えば、図２、３に示す各機能ブロックはハードウェアとソフトウェアの協働により任意に実現可能であり、特定のハードウェア構成を示唆するものではない。また、各機器は、外部接続される記憶媒体に記憶させたプログラムを実行することにより、各種動作を実行してもよい。
【符号の説明】
【００５８】
１…ＰＯＳシステム、１０…タブレット端末（端末）、１１…制御装置、１２…バーコードスキャナー（デバイス）、１３…キャッシュチェンジャー（デバイス）、１４…ディスプレー（デバイス）、２０ａ…デバイス制御部、２１…プリンターユニット（デバイス）、５０…デバイス側ＷｅｂＳｏｃｋｅｔＩ／Ｆ、５１…中継オブジェクト（第２通信部）、６０…バーコードスキャナーハンドラー（第１通信部）、６１…キャッシュチェンジャーハンドラー（第１通信部）、６２…ディスプレーハンドラー（第１通信部）、６３…プリンターハンドラー（第１通信部）、７１…デバイスインターフェース（第１通信部）。
【図１】
2014146290.tif 000003
【図２】
2014146290.tif 000004
【図３】
2014146290.tif 000005
【図４】
2014146290.tif 000006
【図５】
2014146290.tif 000007
【図６】
2014146290.tif 000008
【図７】
2014146290.tif 000009
【図８】
2014146290.tif 000010
【図９】
2014146290.tif 000011
【図１０】
2014146290.tif 000012