(57)【要約】【課題】多様な機器から動的入力を容易にすることが可能な情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法を提供することを目的としている。【解決手段】電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見する機器発見部と、前記機器情報に基づいて、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、前記機器から取得したデータを前記入力フィールドに挿入するデータ挿入部と、を有する。【選択図】図１
2018005396.tif 000002
【特許請求の範囲】
【請求項１】
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見する機器発見部と、
前記機器情報に基づいて、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、
前記機器から取得したデータを前記入力フィールドに挿入するデータ挿入部と、を有する情報処理装置。
【請求項２】
帳票画面の定義として記述された画面定義情報に含まれる付加情報に基づいて、前記帳票画面において前記データを挿入する入力フィールドを特定する入力欄特定部と、
前記機器制御モジュールに、前記機器から前記付加情報が示す値を取得する処理を実行させる処理組込部と、を有する請求項１記載の情報処理装置。
【請求項３】
帳票画面の定義として記述された画面定義情報に含まれる利用条件に基づいて、前記データが前記利用条件を満たすかを判定する妥当性判定部と、
前記データが前記利用条件を満たさない場合、前記機器制御モジュールに、前記機器において指定された操作を行わせる処理を実行させる操作設定部と、を有する請求項１又は２記載の情報処理装置。
【請求項４】
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見し、
前記機器情報に基づいて、前記機器と対応する機器制御モジュールを動的に組み込み、
前記機器から取得したデータを前記入力フィールドに挿入する、処理をコンピュータに実行させる情報処理プログラム。
【請求項５】
情報処理装置と、サーバ装置とを有する情報処理システムであって、
前記サーバ装置は、機器制御モジュールと、が格納された記憶装置を有し、
前記情報処理装置は、
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見する機器発見部と、
前記機器情報に基づいて前記機器と対応する機器制御モジュールを前記サーバ装置から取得し、取得した前記機器制御モジュールを動的に組み込む機器制御組込部と、
前記機器から取得したデータを前記入力フィールドに挿入するデータ挿入部と、を有する情報処理システム。
【請求項６】
情報処理装置と、サーバ装置とを有する情報処理システムによる情報処理方法であって、
前記サーバ装置が、機器制御モジュールを格納し、
前記情報処理装置が、
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見し、
前記機器情報に基づいて前記機器と対応する機器制御モジュールを前記サーバ装置から取得し、取得した前記機器制御モジュールを動的に組み込み、
前記機器から取得したデータを前記入力フィールドに挿入する、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法に関する。
【背景技術】
【０００２】
近年では、特定の機器と対応する帳票へこの機器から取得したデータを入力する際に、キーボードから入力された文字や、カメラ等により取得された画像等から、指定された属性のデータを取得し、自動で帳票へ入力する技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２１３３４５号公報
【特許文献２】特開２００９−２８２６２２号公報
【特許文献１】特開２００９−９３４７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら従来では、機器から取得したデータを自動で帳票へ入力する場合、機器毎に帳票を開発する必要があり、その工程が煩雑であった。例えば、従来では、機器から取得したデータを自動で帳票へ入力する場合、機器側にデータを取得するための工夫をしたり、別の機器からデータを取得する際には帳票プログラムを大幅に変更したりする必要があった。
【０００５】
開示の技術は、多様な機器から動的入力を容易にすることが可能な情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法を提供することを目的としている。
【課題を解決するための手段】
【０００６】
開示の技術は、電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見する機器発見部と、前記機器情報に基づいて、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、前記機器から取得したデータを前記入力フィールドに挿入するデータ挿入部と、を有する情報処理装置である。
【０００７】
上記各部は、上記各部を手順、上記各部を実現する処理としてコンピュータにより実行させる方法、プログラムを記憶したコンピュータ読み取り可能な記憶媒体とすることもできる。
【発明の効果】
【０００８】
多様な機器から動的入力を容易にできる。
【図面の簡単な説明】
【０００９】
【図１】第一の実施形態の概要について説明する図である。
【図２】第一の実施形態の帳票システムのシステム構成を説明する図である。
【図３】第一の実施形態の機器情報データベースを説明する図である。
【図４】ドライバデータベースの一例を説明する図である。
【図５】第一の実施形態の端末装置のハードウェア構成の一例を示す図である。
【図６】第一の実施形態の端末装置の機能を説明する図である。
【図７】第一の実施形態の端末装置の動作を説明するフローチャートである。
【図８】第一の実施形態の帳票処理部の処理を説明する第一の図である。
【図９】第一の実施形態の帳票処理部の処理を説明する第二の図である。
【図１０】第二の実施形態の端末装置の機能を説明する図である。
【図１１】第二の実施形態の端末装置の動作を説明するフローチャートである。
【図１２】付加情報が要求される利用機器の例を示す第一の図である。
【図１３】第二の実施形態の帳票処理部の処理を説明する第一の図である。
【図１４】付加情報が要求される利用機器の例を示す第二の図である。
【図１５】第二の実施形態の帳票処理部の処理を説明する第二の図である。
【図１６】第三の実施形態の端末装置の機能を説明する図である。
【図１７】第三の実施形態の端末装置の動作を説明するフローチャートである。
【図１８】利用条件が定義された画面定義情報の一例を示す第一の図である。
【図１９】第三の実施形態の帳票処理部によるデータの再取得を説明する図である。
【図２０】利用条件が定義された画面定義情報の一例を示す第二の図である。
【図２１】利用条件が定義された画面定義情報の一例を示す第三の図である。
【図２２】第四の実施形態の帳票システムのシステム構成を説明する図である。
【図２３】第四の実施形態のサーバ装置の有する帳票アプリ配信部の機能を説明する図である。
【図２４】第四の実施形態の帳票アプリ配信処理部の処理を説明するフローチャートである。
【発明を実施するための形態】
【００１０】
（第一の実施形態）
以下に図面を参照して第一の実施形態について説明する。図１は、第一の実施形態の概要について説明する図である。
【００１１】
本実施形態の端末装置１００は、データの取得に利用される利用機器の機器情報に基づき利用機器の存在を検知し、検知した利用機器の機器制御モジュールを取得し組み込んで、利用機器からデータを取得することで、多様な機器から動的入力を容易にする。本実施形態の端末装置１００は、端末装置１００にインストールされた帳票アプリケーションにより、上述の処理を実現する。
【００１２】
図１の例では、例えば端末装置１００は、利用機器２００−１、２００−２からデータを取得し、各利用機器から取得したデータを、帳票の各利用機器に対応した入力フィールド（入力欄）へ自動的に入力する。
【００１３】
図１では、利用機器２００−１は体温計であり、利用機器２００−２は体重計である。以下の説明では、利用機器２００−１、２００−２のそれぞれを区別しない場合には、利用機器２００と呼ぶ。
【００１４】
本実施形態の端末装置１００では、帳票アプリケーションに、利用機器２００−１、２００−２のそれぞれを特定する機器記述子が含まれている。よって、端末装置１００は
各利用機器の機器記述子に基づき、利用機器２００−１、２００−２のそれぞれの機器制御モジュールを取得して、端末装置１００に組み込む。
【００１５】
本実施形態の機器制御モジュールは、利用機器を作動させるために必要となるソフトウェアであり、ドライバを意味する。以下の説明では、機器制御モジュールをドライバと呼ぶ。
【００１６】
端末装置１００は、各利用機器と対応するドライバを組み込むと、予め定義された画面定義にしたがって、利用機器２００から取得したデータの入力画面１０１をディスプレイ１０２に表示させる。
【００１７】
入力画面１０１は、利用機器２００−１が取得したデータの入力フィールド１０１ａと、利用機器２００−２が取得したデータの入力フィールド１０１ｂとが表示されており、各利用機器が取得したデータが入力される帳票型の入力画面である。
【００１８】
端末装置１００では、利用機器２００−１において取得されたデータ（体温）は、入力フィールド１０１ａに自動で入力される。また、端末装置１００では、利用機器２００−２において取得されたデータ（体重）は、入力フィールド１０１ｂに入力される。
【００１９】
したがって、例えば端末装置１００を保持する利用者が、利用機器２００−１や利用機器２００−２により体温や体重を測った際に、自身で測定結果を端末装置１００へ入力する必要がなく、体温の値と体重の値は、それぞれが予め決められた入力フィールドに入力される。
【００２０】
以上のように、本実施形態によれば、複数の機器が取得したデータを端末装置１００に入力させる際に、機器毎の帳票を用意しなくても、容易に入力できる。
【００２１】
したがって、本実施形態によれば、個別の機器を意識せずに帳票を開発し、所定の入力フィールドに所望のデータを自動で挿入することができる。すなわち、本実施形態によれば、多様な機器に対応できる帳票システムを提供できる。
【００２２】
以下に、図面を参照して第一の実施形態の帳票システムについて説明する。図２は、第一の実施形態の帳票システムのシステム構成を説明する図である。
【００２３】
本実施形態の帳票システム１０は、端末装置１００と、サーバ装置３００とを有する。本実施形態の端末装置１００には、帳票アプリケーション１１０がインストールされており、利用機器２００−１〜利用機器２００−Ｎが取得したデータを、端末装置１００に表示された帳票画面（入力画面）の入力フィールドに挿入する。挿入されたデータは、例えば端末装置１００の有する各種のテーブル等に格納されても良いし、端末装置１００における各種の処理に用いられても良い。
【００２４】
本実施形態のサーバ装置３００は、機器情報データベース３１０とドライバデータベース３２０と、を有する。
【００２５】
機器情報データベース３１０は、利用機器２００のそれぞれの機器情報が格納される。機器情報は、例えば利用機器２００と対応する機器制御モジュールを取得する際のアクセス先等を含む情報である。ドライバデータベース３２０は、利用機器２００のそれぞれのドライバが格納されている。
【００２６】
本実施形態の機器情報データベース３１０とドライバデータベース３２０は、例えばサーバ装置３００の補助記憶装置等に設けられていても良い。また、本実施形態の機器情報データベース３１０とドライバデータベース３２０は、端末装置１００に設けられていても良い。
【００２７】
以下に、図３及び図４を参照し、サーバ装置３００の有する各データベースについて説明する。
【００２８】
図３は、第一の実施形態の機器情報データベースを説明する図である。図３では、機器情報データベース３１０に格納された機器情報の一例を示している。
【００２９】
図３に示す機器情報３１０−１は、キー（項目）と、その値とを対応付けた形式で記述されている。
【００３０】
記述３１０−２において、ｄｉｄの値は、機器を識別子する機器記述子を示しており、記述３１０−２では、体重計を示す識別子""／ｗｓｃａｌｅ"が対応付けられている。
【００３１】
記述３１０−３において、ｓｃａｎの値は、通信に使用される無線の種別を示しており、記述３１０−２では、ｔｙｐｅとして、ＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）が対応付けられている。
【００３２】
記述３１０−４は、利用機器を特定するためのフィールド情報を示しており、記述３１０−４では、フィールド情報はｕｕｉｄ＿１６であり、このフィールド情報で特定されるフィールドの値が０ｘ１８１ｄであることを示している。
【００３３】
記述３１０−５では、機器記述子と対応する利用機器のドライバの取得先が記述されている。
【００３４】
尚、機器情報３１０−１では、無線の種別を示す値は、ＢＬＥ以外にも、Ｂｌｕｅｔｏｏｔｈ(登録商標)や無線ＬＡＮ（Local Area Network）等の無線規格を指定することができる。また、記述３１０−３において、ｓｃａｎの値は、通信が有線で行われる場合には、有線の種別を示しても良い。有線の通信とは、例えば、ＵＳＢ（Universal Serial Bus）による通信や、有線ＬＡＮ等による通信である。ＵＳＢによる通信では、デバイスクラスにより利用機器が特定され、有線ＬＡＮによる通信の場合には、ＩＰアドレスにより利用機器が特定される。
【００３５】
また、機器情報３１０−１では、利用機器を特定するためのフィールド情報として、ｕｕｉｄ＿１６以外にも、ＭＡＣ（Media Access Control）アドレスやアクセスポイントアドレス等も指定できる。
【００３６】
図４は、ドライバデータベースの一例を説明する図である。図４では、ドライバデータベース３２０に格納されたドライバ情報３２０−１をドライバ情報の一例として示している。
【００３７】
図４に示すドライバ情報３２０−１において、記述３２０−２は、ドライバのメタ情報を記述した情報である。記述３２０−３は、利用機器２００の制御のためのドライバプログラムである。記述３２０−４は、利用機器２００の制御に伴う画面表示部品を示している。記述３２０−５は、利用機器２００の存在が検知されたことを画面に表示するために使用するドライバアイコンを示している。
【００３８】
本実施形態のドライバ情報とは、上述した記述３２０−２、３２０−３、３２０−４、３２０−５を１つのパッケージにしたものである。
【００３９】
次に、本実施形態の端末装置１００について説明する。図５は、第一の実施形態の端末装置のハードウェア構成の一例を示す図である。
【００４０】
本実施形態の端末装置１００は、それぞれバスＢで相互に接続されている表示操作装置１１、ドライブ装置１２、補助記憶装置１３、メモリ装置１４、演算処理装置１５及びインターフェース装置１６を含む情報処理装置である。
【００４１】
表示操作装置１１は、各種の情報の入力と、各種の情報の出力（表示）の機能を実現するタッチパネル等である。インターフェース装置１６は、モデム、ＬＡＮカード等を含み、ネットワークに接続する為に用いられる。
【００４２】
帳票アプリケーションは、端末装置１００を制御する各種プログラムの少なくとも一部である。帳票アプリケーションは例えば記憶媒体１７の配布やネットワークからのダウンロードなどによって提供される。帳票アプリケーションを記録した記憶媒体１７は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記憶媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記憶媒体を用いることができる。
【００４３】
また、帳票アプリケーションは、帳票アプリケーションを記録した記憶媒体１７がドライブ装置１２にセットされると記憶媒体１７からドライブ装置１２を介して補助記憶装置１３にインストールされる。ネットワークからダウンロードされた帳票アプリケーションは、インターフェース装置１６を介して補助記憶装置１３にインストールされる。
【００４４】
補助記憶装置１３は、インストールされた帳票アプリケーションを格納すると共に、必要なファイル、データ等を格納する。メモリ装置１４は、コンピュータの起動時に補助記憶装置１３から帳票アプリケーションを読み出して格納する。そして、演算処理装置１５はメモリ装置１４に格納された帳票アプリケーションに従って、後述するような各種処理を実現している。
【００４５】
また、本実施形態の端末装置１００は、一般的なノート型のコンピュータであっても良い。その場合、表示操作装置１１の代わりに、入力装置と出力装置を有していても良い。また、本実施形態のサーバ装置３００は、演算処理装置とメモリ装置を有する一般的なコンピュータであり、そのハードウェア構成は、図５に示す端末装置１００と同様であるから、説明を省略する。
【００４６】
次に、図６を参照して本実施形態の端末装置１００の機能について説明する。図６は、第一の実施形態の端末装置の機能を説明する図である。
【００４７】
本実施形態の端末装置１００は、帳票アプリケーション１１０が演算処理装置１５に実行されることで、以下の各部の機能を実現している。
【００４８】
本実施形態の帳票アプリケーション１１０は、画面定義情報記述部１２０、帳票処理部１３０を有する。
【００４９】
画面定義情報記述部１２０は、端末装置１００における帳票画面の表示方法やレイアウトの記述を含む。帳票処理部１３０は、帳票の内部的な処理の記述を含む。
【００５０】
本実施形態の画面定義情報記述部１２０に記述された画面定義情報は、利用機器２００の機器記述子１２１を含む。また、画面定義情報は、画面に表示する文字列と入力フィールドを指定する指定情報と、各定義情報を識別するための識別子と名称、画面定義情報と関連付いた機器記述子１２１を含む。
【００５１】
本実施形態の帳票処理部１３０は、機器記述子抽出部１３１、機器情報取得部１３２、機器発見部１３３、機器制御組込部１３４、データ取得部１３５、入力欄特定部１３６、データ挿入部１３７を有する。
【００５２】
機器記述子抽出部１３１は、画面定義情報から機器記述子１２１を抽出する。機器情報取得部１３２は、機器記述子をキーとして、機器情報データベース３１０を検索し、後述する機器探索に用いる機器情報を取得する。
【００５３】
機器発見部１３３は、取得した機器情報に基づき、端末装置１００の周辺にある利用機器を探索し、存在を検知する。
【００５４】
機器制御組込部１３４は、ドライバデータベース３２０を参照し、存在を検知した利用機器を制御するためのドライバ（機器制御モジュール）を取得し、端末装置１００に組み込む。言い換えれば、本実施形態の機器制御組込部１３４は、動的にドライバを取得して端末装置１００に組み込む。
【００５５】
データ取得部１３５は、ドライバを利用して機器制御命令を利用機器２００へ送信し、利用機器２００からデータを取得する。
【００５６】
入力欄特定部１３６は、利用機器２００から入力されるデータに基づき、端末装置１００に表示された帳票画面において、データを入力する入力欄を特定する。データ挿入部１３７は、特定された入力欄に入力されたデータを挿入する。
【００５７】
次に、図７を参照して本実施形態の端末装置１００の動作について説明する。図７は、第一の実施形態の端末装置の動作を説明するフローチャートである。
【００５８】
本実施形態の端末装置１００において、機器記述子抽出部１３１は画面定義情報記述部１２０から画面定義情報を抽出する（ステップＳ７０１）。続いて、機器記述子抽出部１３１は、画面定義情報に機器記述子１２１が存在するか否かを判定する（ステップＳ７０２）。ステップＳ７０２において、機器記述子１２１が存在しない場合、帳票処理部１３０は処理を終了する。
【００５９】
ステップＳ７０２において、機器記述子１２１が存在する場合、帳票処理部１３０は、画面定義情報に含まれる機器記述子１２１を収集する（ステップＳ７０３）。続いて、帳票処理部１３０は、機器情報取得部１３２により、機器記述子１２１で機器情報データベース３１０を検索し、該当する機器情報が取得できるか否かを判定する（ステップＳ７０４）。
【００６０】
ステップＳ７０４において、該当する機器情報が取得できない場合、帳票処理部１３０は、該当する機器情報が機器情報データベース３１０に存在しない旨を示すアラートを端末装置１００に表示させ（ステップＳ７０５）、処理を終了する。ここで表示されるアラートは、例えば「該当する機器情報がありません」等というメッセージであっても良い。
【００６１】
ステップＳ７０４において、該当する機器情報が取得された場合、帳票処理部１３０は、機器発見部１３３により、機器記述子１２１が示す利用機器２００を探索する（ステップＳ７０６）。続いて、機器発見部１３３は、該当する利用機器２００が発見されたか否かを判定する（ステップＳ７０７）。機器発見部１３３の処理の詳細は後述する。
【００６２】
ステップＳ７０７において、該当する利用機器２００が発見されない場合、帳票処理部１３０は、処理を終了する。
【００６３】
ステップＳ７０７において、該当する利用機器２００が発見された場合、帳票処理部１３０は、機器制御組込部１３４により、ドライバデータベース３２０から利用機器２００と対応するドライバが取得できるか否かを判定する（ステップＳ７０８）。ステップＳ７０８において、該当するドライバが取得できない場合、機器制御組込部１３４は、端末装置１００の画面に「ドライバが取得できませんでした」という旨のアラートを表示させ（ステップＳ７０９）、処理を終了する。
【００６４】
尚、本実施形態において、該当するドライバが取得されない場合とは、ドライバが存在しない場合や、ドライバの受信に失敗した場合等である。本実施形態では、該当するドライバが取得されない場合、アラートを表示させず、単にドライバアイコンの表示をさせないようにするだけでも良い。
【００６５】
ステップＳ７０８において、該当するドライバが取得されると、帳票処理部１３０は、機器制御組込部１３４により、ドライバアイコンを表示させる（ステップＳ７１０）。
【００６６】
続いて、機器制御組込部１３４は、ドライバ内の各モジュールを帳票アプリケーション１１０内に組み込み、画面上にドライバアイコンを表示し、利用機器２００においてイベントが発生したか否かを判定する（ステップＳ７１１）。
【００６７】
つまり、帳票処理部１３０は、ステップＳ７１１において、利用機器２００からのイベントの発生を待機している状態となる。
【００６８】
尚、本実施形態では、ドライバアイコン表示後に自動的にイベント待ち状態に入らずに、ユーザが明示的にドライバアイコンをタップした後に利用機器２００からのイベント待ち状態になっても良い。このようにすれば、ユーザの意志で、利用機器２００を実際に利用するか否かを決めることができる。したがって、例えば複数の利用機器２００が発見され、端末装置１００に複数のドライバアイコンが表示された場合等には、ユーザに、利用したい利用機器２００を選択させることができる。
【００６９】
ステップＳ７１１でイベントが発生しない場合、帳票処理部１３０は、後述するステップＳ７１５へ進む。
【００７０】
ステップＳ７１１でイベントが発生した場合、帳票処理部１３０は、データ取得部１３５により、利用機器２００から送信されるデータを取得する（ステップＳ７１２）。尚、利用機器２００におけるイベントは、例えば利用機器２００の操作を行うことで発生し、利用機器２００が取得したデータが端末装置１００へ送信される。
【００７１】
続いて、帳票処理部１３０は、データが取得されると、入力欄特定部１３６により、利用機器２００の機器記述子１２１を検索キーとして該当する画面定義情報から入力フィールドを抽出し、データ挿入部１３７に処理を渡す（ステップＳ７１３）。つまり、入力欄特定部１３６は、データ取得部１３５が取得したデータの入力フィールドを特定する。
【００７２】
続いて、帳票処理部１３０は、データ挿入部１３７により、取得したデータを特定した入力フィールドへ挿入し、帳票画面を更新する（ステップＳ７１４）。
【００７３】
続いて、帳票処理部１３０は、他に待っているイベントが存在するか否かを判定する（ステップＳ７１５）。ステップＳ７１５において、該当するイベントが存在する場合、帳票処理部１３０は、ステップＳ７１１へ戻る。
【００７４】
ステップＳ７１５において、該当するイベントが存在しない場合、帳票処理部１３０は、処理を終了する。
【００７５】
以下に、図８及び図９を参照して、本実施形態の帳票処理部１３０の処理を具体的に説明する。
【００７６】
図８は、第一の実施形態の帳票処理部の処理を説明する第一の図である。図８では、画面定義情報と、端末装置１００に表示される帳票画面８３０との関係について示している。尚、図８に示す記述８００は、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述された帳票アプリケーション１１０の記述例を示し、記述８１０は、画面定義情報の一例であり、記述８２０は、帳票処理部１３０の記述の一例を示す。
【００７７】
また、図８に示す帳票画面８３０は、端末装置１００に表示される帳票画面の一例である。帳票画面８３０は、入力フィールド８３１、８３２と、アイコン画像８３３、８３４とが表示されている。
【００７８】
入力フィールド８３１は、利用機器２００−２（体重計）の値が入力される入力フィールドであり、入力フィールド８３２は、利用機器２００−１（体温計）の値が入力される入力フィールドである。アイコン画像８３３は、利用機器２００−１のドライバのアイコン画像であり、アイコン画像８３４は、利用機器２００−２のドライバのアイコン画像である。
【００７９】
画面定義情報８１０において、記述８１１は帳票画面８３０における入力フィールド８３１を定義しており、記述８１２は帳票画面８３０における入力フィールド８３２を定義している。
【００８０】
また、本実施形態では、＜ｄｉｖ＞タグで囲われた箇所が画面定義情報８１０であり、ｉｄの値は各画面定義情報を識別するための識別子、ｄａｔａ−ｄｅｖｉｃｅの値は画面定義情報に関連付けられた利用機器の機器記述子である。記述８１３では、ｉｄの値はｗｉｇｈｔであり、ｄａｔａ−ｄｅｖｉｃｅの値は／ｗｓｃａｌｅである。
【００８１】
また、＜ｄｉｖ＞タグの中には、帳票画面８３０に表示する文字列が記述される。図８の例では、「体重」「ｋｇ」「体温」「℃」の部分である。さらに、＜ｄｉｖ＞タグの中には、＜ｉｎｐｕｔ＞タグで囲われた入力フィールドが記述される。
【００８２】
＜ｉｎｐｕｔ＞タグにおいて、ｔｙｐｅ＝"ｔｅｘｔ"はテキスト入力であることを示し、ｎａｍｅの値は、各入力フィールドを識別するための値を示し、ｖａｌｕｅの値は入力フィールドに表示される初期値を示す。本実施形態では、ｖａｌｕｅ＝""は入力フィールドの初期状態には何も表示されないことを示す。記述８１４では、ｎａｍｅ＝"ｗｅｉｇｈｔ"であり、ｖａｌｕｅ＝""である。
【００８３】
記述８１２における記述８１５では、ｉｄの値はｔｅｍｐｅｒａｔｕｒｅであり、ｄａｔａ−ｄｅｖｉｃｅの値は／ｔｅｍｐである。記述８１６では、ｎａｍｅ＝"ｔｅｍｐｅｒａｔｕｒｅ"であり、ｖａｌｕｅ＝""である。
【００８４】
記述８２０における記述８２１は、帳票処理部１３０の機器記述子抽出部１３１と、機器情報取得部１３２を実現する記述の一例である。また、記述８２０における記述８２２は、帳票処理部１３０の機器発見部１３３、機器制御組込部１３４、データ取得部１３５、入力欄特定部１３６、データ挿入部１３７を実現する記述の一例である。
【００８５】
図９は、第一の実施形態の帳票処理部の処理を説明する第二の図である。図９では、帳票処理部１３０の各部の記述例を示している。
【００８６】
図９の例では、記述８２３と対応する機器記述子抽出部１３１により、画面定義情報から機器記述子「／ｗｓｃａｌｅ」と「／ｔｅｍｐ」が収集され、記述８２４と対応する機器情報取得部１３２に渡される。
【００８７】
尚、本実施形態の機器記述子の値は、機器種別を表すだけでなく、製造元や、型名を階層構造で記述できる。例えば"／ｗｓｃａｌｅ／ｍ＿ａａａ"は、製造元がｍ＿ａａａ社の体重計を示し、"／ｗｓｃａｌｅ／ｍ＿ａａａ／ｔ＿ｂｂｂ／"は製造元がｍ＿ａａａ社で型番がｔ＿ｂｂｂで始まる体重計であることを示す。
【００８８】
機器情報取得部１３２は、機器記述子「／ｗｓｃａｌｅ」と「／ｔｅｍｐ」を検索キーとし、記述８２５に示されるアクセス先に存在する機器情報データベース３１０を検索し、例えば機器記述子「／ｗｓｃａｌｅ」を含む機器情報３１０−１を取得する。
【００８９】
続いて、帳票処理部１３０は、記述８２６に対応する機器発見部１３３により、機器記述子「／ｗｓｃａｌｅ」及び「／ｔｅｍｐ」に対応する利用機器２００を探索する。
【００９０】
機器発見部１３３は、機器情報３１０−１に含まれる"ｓｃａｎ"に指定された値に適合した利用機器を探索する。"ｓｃａｎ"に指定された値とは、通信に使用される無線の種別を示す。
【００９１】
機器発見部１３３は、利用機器を発見すると、記述８２７に対応する機器制御組込部１３４へ、機器情報３１０−１の記述３１０−５に対応するドライバの取得先アドレスを渡し、ドライバの取得要求を行う。
【００９２】
機器制御組込部１３４は、ドライバの取得先アドレスのサーバ（ドライバデータベース３２０）に接続し、ドライバ取得要求を送信する。ドライバデータベース３２０は、ドライバ取得要求を受信して、要求内容に該当するドライバを端末装置１００へ返す。
【００９３】
端末装置１００がドライバを取得すると、帳票画面８３０には、ドライバ３２０−１に含まれるドライバアイコンによるアイコン画像８３３が表示される。
【００９４】
この状態で、利用機器２００に対する操作が行われると、利用機器２００からデータが送信され、データ取得部１３５がデータ受信のイベントを検出する。例えば、体重計２００−２の場合、人が乗ると体重を測定し、測定が完了すると体重の値を特定のフォーマットに従って測定結果の値を送信する。尚、利用機器２００−２によっては体重測定後にアドバタイズを開始するものもあり、その場合は体重測定後に機器発見処理の手順が実施される。
【００９５】
帳票処理部１３０は、データを取得すると、このデータを特定した入力フィールドに挿入する。具体的には、ｉｄ＝"ｗｅｉｇｈｔ"を含む記述８１１のｖａｌｕｅの値を取得した数値に書き換える。これにより、帳票画面８３０の入力フィールド８３１には、利用機器２００−２から取得したデータが自動的に表示されることになる。
【００９６】
以上のように、本実施形態によれば、画面定義情報に機器記述子を含まれ、且つ、機器情報データベース３１０にドライバを組み込むために必要となる機器情報が格納された利用機器であれば、どのような利用機器であってもデータを帳票に入力させることができる。
【００９７】
画面定義情報に含まれる機器記述子と、機器情報データベース３１０に格納される機器情報は、例えば本実施形態の帳票システム１０の管理者等により、予め入力されていても良い。
【００９８】
以上のように、本実施形態によれば、個々の利用機器を意識せずに帳票を作成して所定の入力フィールドに所望のデータを自動で挿入できるようになり、多様な機器に対応した帳票システムを容易に構築することができる。
【００９９】
（第二の実施形態）
以下に図面を参照して第二の実施形態について説明する。第二の実施形態では、画面定義情報に、入力フィールドを特定する際に参照される付加情報が含まれる点が、第一の実施形態と相違する。よって、以下の第二の実施形態の説明では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明と同様の符号を付与し、その説明を省略する。
【０１００】
図１０は、第二の実施形態の端末装置の機能を説明する図である。本実施形態の端末装置１００Ａは、帳票アプリケーション１１０Ａがインストールされている。
【０１０１】
本実施形態の帳票アプリケーション１１０Ａは、画面定義情報記述部１２０Ａ、帳票処理部１３０Ａを有する。
【０１０２】
本実施形態の画面定義情報記述部１２０Ａに記述された画面定義情報は、利用機器２００の機器記述子１２１と、付加情報１２２を含む。付加情報１２２は、利用機器２００からのデータの取得の際に参照される。
【０１０３】
本実施形態の帳票処理部１３０Ａは、機器記述子抽出部１３１、機器情報取得部１３２、機器発見部１３３、機器制御組込部１３４、データ取得部１３５、入力欄特定部１３６Ａ、データ挿入部１３７、処理組込部１３８を有する。
【０１０４】
本実施形態の入力欄特定部１３６Ａは、付加情報に基づき、データの入力フィールドを特定する。
【０１０５】
本実施形態の処理組込部１３８は、機器制御組込部１３４によりドライバが組み込まれると、ドライバに指定された処理を実行させる。具体的には、処理組込部１３８は、ドライバに利用機器２００から付加情報が示す値を取得させる。言い換えれば、処理組込部１３８は、ドライバに対して、付加情報が示す値の取得指示を行う。
【０１０６】
次に、図１１を参照して第二の実施形態の端末装置１００Ａの動作について説明する。図１１は、第二の実施形態の端末装置の動作を説明するフローチャートである。
【０１０７】
図１１のステップＳ１１０１からステップＳ１１０８までの処理は、図７のステップＳ７０１からステップＳ７０８までの処理と同様であるから、説明を省略する。
【０１０８】
ステップＳ１１０８において、ドライバが取得されると、帳票処理部１３０Ａは、処理組込部１３８により、ドライバに対して指定された処理の実行を指示する（ステップＳ１１１０）。
【０１０９】
図１１のステップＳ１１１１とステップＳ１１１２の処理は、図７のステップＳ７１０とステップＳ７１１の処理と同様であるから、説明を省略する。
【０１１０】
ステップＳ１１１２において、イベントが発生すると、帳票処理部１３０Ａは、データ取得部１３５は、利用機器２００からデータを取得する（ステップＳ１１１３）。ここで取得するデータには、付加情報も含まれる。
【０１１１】
続いて、帳票処理部１３０Ａは、入力欄特定部１３６Ａにより、付加情報を参照し、データを挿入する入力欄を特定する（ステップＳ１１１４）。
【０１１２】
図１１のステップＳ１１１５とステップＳ１１１６は、図７のステップＳ７１４とステップＳ７１５と同様であるから、説明を省略する。
【０１１３】
次に、データの取得時に、付加情報の参照が求められる利用機器２００について説明する。
【０１１４】
付加情報の参照が求められる利用機器２００とは、例えば１台で複数種類の値を取得する利用機器である。１台の利用機器から複数種類の値が取得される場合、帳票処理部１３０Ａは、値を帳票画面に入力する際に、入力フィールドを特定するために、取得した値が複数種類の値のうち、どの値であるかを特定する必要がある。
【０１１５】
そこで、本実施形態では、１台で複数種類の値を取得する利用機器からデータを取得する場合には、画面定義情報に付加情報１２２を含めるようにした。
【０１１６】
本実施形態の付加情報１２２は、取得されたデータと、データが入力される入力フィールドとを対応付ける際に参照される情報である。言い換えれば、付加情報１２２は、データを挿入する入力フィールドを特定する情報である。
【０１１７】
図１２は、付加情報が要求される利用機器の例を示す第一の図である。図１２では、１台で複数種類の値を取得する利用機器の一例である電子ノギス２００−３を示している。電子ノギス２００−３では、例えば計測対象物Ｎの計測を行う場合、取得する値として、幅、奥行き、高さの３種類の値を取得する。
【０１１８】
電子ノギス２００−３は、３軸地磁気センサーを備え、測定対象物Ｎを測定した際の３軸センサーの（ｘ，ｙ，ｚ）座標の値を取得し、測定結果の値と座標値とをペアで端末装置１００Ａに送信する。
【０１１９】
よって、例えば電子ノギス２００−３を立てた状態で測定対象物Ｎが測定された場合、｛８０（０，０，１２３）｝という値が端末装置１００Ａへ送信される。また、電子ノギス２００−３を横にした状態で測定対象物Ｎの奥行き方向が測定された場合、｛４０（０，４３，０）｝という値が端末装置１００Ａへ送信される。また、電子ノギス２００−３を横にした状態で測定対象物Ｎの幅が測定された場合、｛５０（２１，０，０）｝という値が端末装置１００Ａへ送信される。
【０１２０】
端末装置１００Ａに送信される各値は、ｚ軸、ｙ軸、ｘ軸以外の値が０、または０に近い値であることで、測定結果が高さ、幅、奥行きのどの値であるかが判別される。
【０１２１】
このため、帳票処理部１３０Ａは、幅、奥行き、高さのそれぞれの値を帳票画面の入力フィールドに挿入する場合には、利用機器２００−３から取得したデータ（値）が、幅、奥行き、高さのどの値であるかを判別し、挿入先の入力フィールドを特定する。この判別のために参照される値が、画面定義情報に含まれる付加情報１２２である。
【０１２２】
図１３は、第二の実施形態の帳票処理部の処理を説明する第一の図である。図１３に示す記述８００Ａは、帳票アプリケーション１１０Ａの記述例を示し、記述８１０Ａは、画面定義情報の一例であり、記述８２０Ａは、帳票処理部１３０Ａの記述の一例を示す。
【０１２３】
また、図１３に示す帳票画面８３０Ａは、端末装置１００Ａに表示される帳票画面の一例である。帳票画面８３０Ａは、入力フィールド８４１、８４２、８４３と、アイコン画像８４４とが表示されている。入力フィールド８４１は、幅の値が挿入される入力フィールドであり、入力フィールド８４２は、奥行きの値が挿入される入力フィールドであり、入力フィールド８４３は、高さの値が挿入される入力フィールドである。
【０１２４】
本実施形態の画面定義情報を示す記述８１０Ａにおいて、記述８５１は帳票画面８３０Ａにおける入力フィールド８４１を定義しており、記述８５２は帳票画面８３０Ａにおける入力フィールド８４２を定義している。
【０１２５】
記述８５１に含まれる記述８５３は、「ｄａｔａ−ｅｘｔｒａ−ｄｅｖｉｃｅ」と、「ｄａｔａ−ｅｘｔｒａ−ｖａｌｕｅ」という属性を含む。
【０１２６】
「ｄａｔａ−ｅｘｔｒａ−ｄｅｖｉｃｅ」の値は、利用機器２００に備えられたデバイスを示す。言い換えれば、「ｄａｔａ−ｅｘｔｒａ−ｄｅｖｉｃｅ」の値は、利用機器２００において使用するデバイスを指定する。図１３の例では、「ｄａｔａ−ｅｘｔｒａ−ｄｅｖｉｃｅ」の値は、「ｍａｇｎｅｔｉｃ」であり、電子ノギス２００−３の３軸地磁気センサーを指定していることがわかる。
【０１２７】
「ｄａｔａ−ｅｘｔｒａ−ｖａｌｕｅ」の値は、利用機器２００から取得したデータの種別を示す。図１３の例では、「ｄａｔａ−ｅｘｔｒａ−ｖａｌｕｅ」の値は、「ｗｉｄｔｈ」であり、取得したデータの種別が幅の値であることがわかる。図１３の例では、記述８１０Ａにおける属性「ｄａｔａ−ｅｘｔｒａ−ｄｅｖｉｃｅ」の値と、属性「ｄａｔａ−ｅｘｔｒａ−ｖａｌｕｅ」の値と、が付加情報１２２となる。
【０１２８】
また、記述８５４において、「幅」は、「ｗｉｄｔｈ」と対応付けられており、帳票画面８３０Ａにおける幅の値の入力フィールド８４１には、「ｗｉｄｔｈ」の値が挿入される。
【０１２９】
記述８５２に含まれる記述８５５では、「ｄａｔａ−ｅｘｔｒａ−ｖａｌｕｅ」の値が「ｄｅｐｔｈ」であり、記述８５６で「奥行」と「ｄｅｐｔｈ」とが対応付けられている。したがって、「ｄｅｐｔｈ」の値は、帳票画面８３０Ａにおける奥行の値の入力フィールド８４２に挿入される。
【０１３０】
図１３に示す記述８２０Ａに含まれる記述８６１は、処理組込部１３８に対応する記述である。また、記述８６２は、入力欄特定部１３６Ａに対応する記述である。
【０１３１】
記述８６１では、ｐａｒａｍ．ｇｅｔＥｘｔｒＶａｌｕｅ（）という関数を呼び出すことで、ドライバに、電子ノギス２００−３から取得した情報の座標値を取り出して、「ｗｉｄｔｈ」、「ｄｅｐｔｈ」、「ｈｉｇｈ」の３種のいずれかに分類する処理を実行させ、その結果を帳票処理部１３０Ａへ出力させる。言い換えれば、処理組込部１３８により指定された処理は、ドライバに付加情報を取得させる処理である。
【０１３２】
本実施形態の入力欄特定部１３６Ａは、その結果に基づいてデータの入力フィールドを決定する。例えば、入力欄特定部１３６Ａは、ｅｘｔｒａの値が「ｗｉｄｔｈ」の場合、データが挿入される入力フィールドを「ｄａｔａ−ｅｘｔｒａ−ｖａｌｕｅ」の値が一致する「幅」の入力フィールドと特定する。
【０１３３】
尚、上述した例では、ｚ軸、ｙ軸、ｘ軸のそれぞれの方向の値を取得する利用機器２００の例を電子ノギス２００−３としたが、これに限定されない。３軸方向の値を取得する利用機器２００は、例えば電子メジャー等のその他の機器であっても良い。
【０１３４】
このように、方向によって測定する値が異なる利用機器では、測定した値が自動的に測定した方向と対応付く入力フィールドへ挿入される。したがって、端末装置１００Ａの利用者にとっては、測定した値と、帳票画面上で方向と対応する入力フィールドを照らし合わせて入力する、といった作業が不要となり、作業を簡略化できる。
【０１３５】
次に、図１４を参照し、１台で複数種類の値を取得する利用機器の他の例について説明する。図１４は、付加情報が要求される利用機器の例を示す第二の図である。図１４では、１台で複数種類の値を取得する利用機器の一例である電流電圧計２００−４を示している。
【０１３６】
電流電圧計２００−４は、複数の状態（モード）を有する。複数のモードは、例えば電圧測定モード、電流測定モード、抵抗測定モード等である。
【０１３７】
この場合、電圧電流計２００−４は、帳票画面に表示された入力フィールドに応じてモードの切り替えを行ってデータを取得し、取得したデータを入力フィールドに挿入する。
【０１３８】
図１４及び図１５で示す例では、入力フィールドとモードとを対応付ける情報を付加情報１２２とする。
【０１３９】
図１５は、第二の実施形態の帳票処理部の処理を説明する第二の図である。図１５に示す記述８００Ｂは、帳票アプリケーション１１０Ａの記述例を示し、記述８１０Ｂは、画面定義情報の一例であり、記述８２０Ｂは、帳票処理部１３０Ａの記述の一例を示す。
【０１４０】
また、図１５に示す帳票画面８３０Ｂは、端末装置１００Ａに表示される帳票画面の一例である。帳票画面８３０Ｂは、入力フィールド８７１、８７２、８７３と、アイコン画像８７４とが表示されている。入力フィールド８７１は、電圧の値が挿入される入力フィールドであり、入力フィールド８７２は、電流の値が挿入される入力フィールドであり、入力フィールド８７３は、抵抗の値が挿入される入力フィールドである。
【０１４１】
本実施形態の画面定義情報を示す記述８１０Ｂにおいて、記述８８１は帳票画面８３０Ｂにおける入力フィールド８７１を定義しており、記述８８２は帳票画面８３０Ｂにおける入力フィールド８７２を定義している。
【０１４２】
記述８８１に含まれる記述８８３は、「ｄａｔａ−ｍｏｄｅ」という属性を含む。図１５の例では、属性「ｄａｔａ−ｍｏｄｅ」の値が付加情報１２２となる。つまり、本実施形態では、利用機器２００に設定されたモードの状態を示す情報が付加情報１２２となる。
【０１４３】
「ｄａｔａ−ｍｏｄｅ」の値は、利用機器２００のモードを示す。また、記述８８１に含まれる記述８８４では、「電圧」と「ｍｏｄｅ」とが対応付けられている。したがって、帳票画面８３０Ｂにおいて、入力フィールド８７１が指定された場合には、電圧電流計２００−４は電圧測定モードであることを示す。
【０１４４】
記述８８２に含まれる記述８８５では、「ｄａｔａ−ｍｏｄｅ」の値が「ｃｕｒｒｅｎｔ」であり、記述８５６で「電流」と「ｃｕｒｒｅｎｔ」とが対応付けられている。したがって、帳票画面８３０Ｂにおいて、入力フィールド８７２が指定された場合には、電圧電流計２００−４は電流測定モードであることを示す。
【０１４５】
図１５の記述８２０Ｂにおいて、記述８８７は、処理組込部１３８に対応する記述である。また、記述８８８は、入力欄特定部１３６Ａに対応する記述である。
【０１４６】
記述８８７では、電流電圧計２００−４からデータが取得されると、ｐａｒａｍ．ｃｕｒｒｅｎｔＭｏｄｅ（）という関数を呼び出すことで、ドライバに電流電圧計２００−４からモードを示す情報を取得させる。そして、記述８８８において、取得したデータを挿入する入力フィールドが特定される。
【０１４７】
尚、以上の説明では、電流電圧計２００−４からデータを取得すると、電流電圧計２００−４に設定されたモードを示す情報（付加情報）を取得し、取得した付加情報により入力フィールドを特定しているが、入力フィールドの特定の方法はこれに限定されない。
【０１４８】
例えば、帳票画面８３０Ｂにおいて、電圧の入力フィールド８７１が選択されたとする。この場合、帳票処理部１３０Ａは、ドライバにより、電流電圧計２００−４からモードを示す情報を取得し、電流電圧計２００−４のモードが電圧測定モードであるか否かを判定する。電圧測定モードであった場合、帳票処理部１３０Ａは、電流電圧計２００−４から取得したデータを入力フィールド８７１に挿入すれば良い。また、電流電圧計２００−４のモードが電圧測定モードでない場合、帳票処理部１３０Ａは、ドライバにより、電流電圧計２００−４を電圧測定モードに設定させる。
【０１４９】
上述した例では、複数のモードを有する利用機器２００の例を電流電圧計２００−４としたが、これに限定されない。本実施形態は、複数のモードを有する利用機器２００であれば、どのような機器でも適用できる。
【０１５０】
以上のように、本実施形態によれば、１台の機器で複数種類の値を測定する利用機器に対し、取得した値と対応する入力フィールドにデータを挿入することができる。
【０１５１】
（第三の実施形態）
以下に図面を参照して第三の実施形態について説明する。第三の実施形態では、画面定義情報に、利用機器の利用条件が含まれる点が、第一の実施形態と相違する。よって、以下の第三の実施形態の説明では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明と同様の符号を付与し、その説明を省略する。
【０１５２】
図１６は、第三の実施形態の端末装置の機能を説明する図である。本実施形態の端末装置１００Ｂは、帳票アプリケーション１１０Ｂがインストールされている。
【０１５３】
本実施形態の帳票アプリケーション１１０Ｂは、画面定義情報記述部１２０Ｂ、帳票処理部１３０Ｂを有する。
【０１５４】
本実施形態の画面定義情報記述部１２０Ｂに記述された画面定義情報は、利用機器２００の機器記述子１２１と、利用条件１２３を含む。
【０１５５】
本実施形態の利用条件１２３とは、利用機器２００の利用に関する各種の条件を含む。具体的には、利用条件は、利用機器２００により取得されたデータに対する条件であっても良いし、利用機器２００においてデータの取得を開始するための条件であっても良い。言い換えれば、本実施形態の利用条件１２３は、利用機器２００からデータを取得に関する条件である。
【０１５６】
本実施形態の帳票処理部１３０Ｂは、機器記述子抽出部１３１、機器情報取得部１３２、機器発見部１３３、機器制御組込部１３４、データ取得部１３５、入力欄特定部１３６、データ挿入部１３７、処理組込部１３８、操作設定部１３９、妥当性判定部１４０を有する。
【０１５７】
本実施形態の操作設定部１３９は、ドライバにより、利用機器２００に予め決められた操作を行わせる。言い換えれば、操作設定部１３９は、ドライバに対し、利用機器２００で指定された操作を実行させる処理の実行指示を行う。
【０１５８】
妥当性判定部１４０は、データ取得部１３５により取得されたデータが妥当なデータであるか否かを判定する。具体的には、妥当性判定部１４０は、データ取得部１３５が取得したデータが利用条件を満たしているか否かを判定している。
【０１５９】
次に、図１７を参照して第三の実施形態の端末装置１００Ｂの動作について説明する。図１７は、第三の実施形態の端末装置の動作を説明するフローチャートである。
【０１６０】
図１７のステップＳ１７０１からステップＳ１７１３までの処理は、図１１のステップＳ１１０１からステップＳ１１１３までの処理と同様であるから、説明を省略する。
【０１６１】
ステップＳ１７１３においてデータが取得されると、帳票処理部１３０Ｂは、妥当性判定部１４０により、画面定義情報に含まれる利用条件１２３を満たすか否かを判定する（ステップＳ１７１４）。ステップＳ１７１４において、取得したデータが利用条件１２３を満たさない場合、帳票処理部１３０Ｂは、操作設定部１３９により、利用機器２００に対して予め決められた操作を設定し（ステップＳ１７１５）、ステップＳ１７１３へ戻る。
【０１６２】
予め決められた操作とは、再度値を計測する操作等である。
【０１６３】
ステップＳ１７１４において、取得したデータが利用条件１２３を満たす場合、帳票処理部１３０Ｂは、入力欄特定部１３６により、取得されたデータの入力フィールドを特定する（ステップＳ１７１６）。ステップＳ１７１６からステップＳ１７１８までの処理は、図１１のステップＳ１１１４からステップＳ１１１６までの処理と同様であるから、説明を省略する。
【０１６４】
尚、図１７の例では、操作設定部１３９は、取得されたデータが利用条件１２３を満たさない場合に、利用機器２００に対する操作の設定を行うものとしたが、これに限定されない。操作設定部１３９は、例えばドライバが組み込まれた後であり、且つデータを取得する前に、利用機器２００を所定の状態にするために、利用機器２００に対する操作を設定しても良い。
【０１６５】
以下に、図１８乃至図２１を参照し、画面定義情報記述部１２０Ｂにおいて、利用条件１２３が定義された例について説明する。
【０１６６】
図１８は、利用条件が定義された画面定義情報の一例を示す第一の図である。図１８に示す利用機器２００−５は、単位の表示をＫｇ／ｌｂの何れに切り替えることが可能な体重計とした。また、利用機器２００−５では、単位の表示を「Ｋｇ」に指定した状態でデータを取得するものとした。
【０１６７】
図１８に示す記述８００Ｃは、帳票アプリケーション１１０Ｂの記述例を示し、記述８１０Ｃは、画面定義情報の一例であり、記述８２０Ｃは、帳票処理部１３０Ｃの記述の一例を示す。
【０１６８】
また、図１８に示す帳票画面８３０Ｃは、端末装置１００Ｂに表示される帳票画面の一例である。帳票画面８３０Ｃは、入力フィールド８３１と、アイコン画像８３５とが表示されている。入力フィールド８３１は、利用機器２００−５の値が挿入される入力フィールドである。本実施形態の画面定義情報を示す記述８１０Ｃにおいて、記述８９１は帳票画面８３０Ｃにおける入力フィールド８３１を定義している。
【０１６９】
記述８９１に含まれる記述８１３Ａは、「ｄａｔａ−ｕｎｉｔ」と「ｄａｔａ−ｍｉｎ／ｄａｔａ−ｍａｘ」という属性を含む。
【０１７０】
「ｄａｔａ−ｕｎｉｔ」の値は、データの単位を示す値であり、利用機器２００−５に送信される。「ｄａｔａ−ｍｉｎ／ｄａｔａ−ｍａｘ」の値は、利用機器２００−５から取得されるデータの最小値と最大値とを示す。本実施形態では、データの値がｄａｔａ−ｍｉｎの値以下又はｄａｔａ−ｍａｘの値以上である場合に、再度データの取得を行う。
【０１７１】
したがって、本実施形態では、「ｄａｔａ−ｕｎｉｔ」の値と、「ｄａｔａ−ｍｉｎ／ｄａｔａ−ｍａｘ」の値と、が利用条件１２３となる。
【０１７２】
図１８に示す記述８１３Ａでは、単位がＫｇである。よって、帳票処理部１３０Ｂは、利用機器２００−５からデータを取得する前に、操作設定部１３９により、利用機器２００−５に対し、「Ｋｇ」を単位とするデータを取得するように設定させる処理を、ドライバに実行させる。
【０１７３】
また、記述８１３Ａでは、データが２０以下又は２００以上である場合には、帳票処理部１３０Ｂは、操作設定部１３９により、利用機器２００−５に対して再度データを取得させ、データの再取得を行う。
【０１７４】
以下に、図１９を参照して、データの再取得について説明する。図１９は、第三の実施形態の帳票処理部によるデータの再取得を説明する図である。
【０１７５】
図１９に示す記述８２０Ｄにおいて、記述８９２は、操作設定部１３９に対応する記述例である。図１９の例では、ｄｒｉｖｒｔ．ｓｅｔ．Ｃｏｎｆｉｇ（ｕｓｅＣｏｎｄ）関数の呼び出しに、ｄａｔａ−ｕｎｉｔで指定した値を渡す処理を追加する。
【０１７６】
図１９の例では、この記述を追加することで、利用機器２００−５に対してデータの単位として「Ｋｇ」を設定させる処理を、ドライバに行わせることができる。
【０１７７】
尚、本実施形態のドライバは、例えばデータが２０Ｋｇ以下又は２００Ｋｇ以上であった場合に、エラー処理の一環として利用機器２００−５に再度データを取得させる機能が備えられていても良い。
【０１７８】
この場合、例えばエラー処理を実行する機能は、機器制御組込部１３４によりドライバが取得されたとき、帳票システム１０の管理者等によりドライバに追加されても良い。また、エラー処理を実行する機能は予めドライバに備えられていても良い。この場合、ドライバデータベース３２０には、エラー処理を実行する機能を備えたドライバが格納されることになる。
【０１７９】
次に、図２０及び図２１を参照し、利用条件の他の例について説明する。図２０は、利用条件が定義された画面定義情報の一例を示す第二の図である。
【０１８０】
図２０に示す記述８２０Ｄでは、利用機器２００として、体温計と電子秤（体重計）を用いる場合の画面定義情報を示している。
【０１８１】
記述８２０Ｄにおいて、記述８１３Ｂでは、「ｄａｔａ−ｕｎｉｔ」の値は、セ氏を示す「ｃｅｌｓｉｕｓ」であり、「ｄａｔａ−ｍｉｎ」の値は３０であり、「ｄａｔａ−ｍａｘ」の値は４５である。また、記述８１３Ｂでは、「ｄａｔａ−ｒｅｔｒｙ」の値が「ｒｅｓｅｔ」となっている。よって、ドライバは、データの再取得の際に、利用機器２００を一度リセットさせ、再度端末装置１００Ｂと接続させる。
【０１８２】
尚、本実施形態では、妥当性判定部１４０によるデータの妥当性の判定の際に、過去のデータが格納された履歴データベースを参照し、過去のデータに基づき妥当性の判定を行っても良い。この場合、妥当性判定部１４０は、データが利用条件を満たし、且つ過去の履歴から適正範囲と判定された場合に、データを取得する。このように、過去の履歴を参照すれば、利用条件を満たしていても不適正と判定されたデータは取得されないため、適正な範囲のデータが取得される可能性が高くなる。
【０１８３】
履歴データベースは、例えばサーバ装置３００内に設けられていても良いし、他の外部装置に設けられていても良い。履歴データベースは、端末装置１００Ｂがアクセス可能な記憶装置に記憶されていれば良い。
【０１８４】
また、記述８２０Ｄにおいて、記述８１３Ｃでは、「ｄａｔａ−ｕｎｉｔ」の値は、Ｋｇであり、「ｄａｔａ−ｍｉｎ」の値は２０であり、「ｄａｔａ−ｍａｘ」の値は２００である。また、記述８１３Ｃでは、「ｄａｔａ−ｒｅｔｒｙ」の値が「ｒｏｕｇｈ」となっている。よって、ドライバは、データの再取得の際に、利用機器２００による測定精度を下げさせる。
【０１８５】
これは、例えば電子秤では、測定対象物が微妙に動き続けると計測不能になる場合があるためである。そこで、図２０の例では、データを再取得する際には、ドライバにより、測定精度を緩めにさせる。
【０１８６】
以上のように、図２０の例では、「ｄａｔａ−ｕｎｉｔ」の値、「ｄａｔａ−ｍｉｎ」の値、「ｄａｔａ−ｍａｘ」の値、「ｄａｔａ−ｒｅｔｒｙ」の値が利用条件となる。
【０１８７】
図２１は、利用条件が定義された画面定義情報の一例を示す第三の図である。図２１に示す記述８２０Ｅでは、利用機器２００として、脈拍計を用いる場合の画面定義情報を示している。
【０１８８】
記述８２０Ｅにおいて、記述８１３Ｄでは、「ｄａｔａ−ｓｅｔ」の値が「ｏｎＴａｐ」とされている。したがって、この場合、画面がタップされたときのデータが取得される。図２１の例では、「ｄａｔａ−ｓｅｔ」の値が利用条件となる。
【０１８９】
図２１の例では、利用機器２００から連続してデータを取得することが可能な場合等に、端末装置１００Ｂのユーザが帳票画面をタップしたタイミングのデータを取得することができる。
【０１９０】
以上のように、本実施形態では、利用条件を満たしていないデータを取得した際には、予め指定された操作を利用機器２００に実行させることができる。よって、端末装置１００Ｂの利用者にとっては、データの妥当性を自身で判断したり、データを再取得するための操作を自身で行ったりする作業が不要となる。
【０１９１】
（第四の実施形態）
以下に図面を参照して第四の実施形態について説明する。第四の実施形態は、機器記述子や付加情報、利用条件等の情報の入力を受け付けたサーバが、入力された情報を含む帳票アプリケーションを生成して端末装置に配信する点が、第一の実施形態と相違する。よって、以下の第四の実施形態の説明では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
【０１９２】
図２２は、第四の実施形態の帳票システムのシステム構成を説明する図である。本実施形態の帳票システム１０Ａは、端末装置１００と、サーバ装置３００Ａとを有する。
【０１９３】
本実施形態の帳票システム１０Ａにおいて、サーバ装置３００Ａは、機器情報データベース３１０、ドライバデータベース３２０、記述データ記憶部３３０、帳票アプリ配信処理部３４０を有する。
【０１９４】
記述データ記憶部３３０は、帳票アプリケーションの雛形となる記述データを保持する。
【０１９５】
帳票アプリ配信処理部３４０は、画面定義情報に含まれる利用機器２００の機器記述子の入力を受け付けて、記述データが示す記述に機器記述子を挿入して、記述データを利用機器２００に対応する帳票アプリケーション１１０とし、端末装置１００に配信する。
【０１９６】
尚、本実施形態のサーバ装置３００Ａでは、機器情報データベース３１０と、ドライバデータベース３２０と、記述データ記憶部３３０と、帳票アプリ配信処理部３４０とを有する構成としたが、これに限定されない。例えば各データベースは、サーバ装置３００Ａ以外の装置に設けられていても良い。
【０１９７】
図２３は、第四の実施形態のサーバ装置の有する帳票アプリ配信部の機能を説明する図である。
【０１９８】
本実施形態の帳票アプリ配信処理部３４０は、入力受付部３４１、挿入部３４２、アプリ配信部３４３を有する。
【０１９９】
入力受付部３４１は、例えば帳票システム１０Ａの管理者等から、機器記述子の入力を受け付ける。機器記述子の入力は、例えばサーバ装置３００Ａが予め有しているエディタ等において行われても良い。
【０２００】
挿入部３４２は、入力受付部３４１が受け付けた機器記述子を記述データ記憶部３３０に保持された記述データに挿入する。
【０２０１】
具体的には、本実施形態の記述データ記憶部３３０には、例えば記述８００に含まれる記述８１０において、機器記述子が記述されていない状態の記述データが保持されている（図８参照）。挿入部３４２は、入力受付部３４１が機器記述子の入力を受け付けると、入力された機器記述子を記述データにおいて機器記述子が挿入されるべき箇所に挿入する。
【０２０２】
本実施形態では、機器記述子が挿入されることで、記述８００が完成し、機器記述子で指定された利用機器２００のデータを自動で入力することが可能な帳票アプリケーション１１０となる。
【０２０３】
アプリ配信部３４３は、完成した帳票アプリケーション１１０を端末装置１００へ配信する。配信先となる端末装置１００は、予め指定されていても良いし、帳票アプリケーション１１０のダウンロード要求を行った端末装置１００であっても良い。また、アプリ配信部３４３が帳票アプリケーション１１０を配信するタイミングは、端末装置１００から帳票アプリケーション１１０の取得要求を受け付けたときであっても良いし、挿入部３４２による機器記述子の挿入が完了したときであっても良い。
【０２０４】
図２４は、第四の実施形態の帳票アプリ配信処理部の処理を説明するフローチャートである。
【０２０５】
本実施形態の帳票アプリ配信処理部３４０は、入力受付部３４１により、機器記述子の入力を受け付けると、受け付けた機器記述子を挿入部３４２へ渡す（ステップＳ２４０１）。続いて、帳票アプリ配信処理部３４０は、挿入部３４２により、受け付けた機器記述子を記述データ記憶部３３０に保持された記述データの挿入箇所へ挿入する（ステップＳ２４０２）。
【０２０６】
続いて、帳票アプリ配信処理部３４０は、アプリ配信部３４３により、機器記述子が挿入された帳票アプリケーション１１０を端末装置１００へ配信し（ステップＳ２４０３）、処理を終了する。
【０２０７】
尚、本実施形態では、サーバ装置３００Ａに機器記述子が入力されるものとして説明したが、これに限定されない。サーバ装置３００Ａは、機器記述子以外にも、上述した実施形態で説明した付加情報を示す記述、利用条件を示す記述、ドライバを取得後にドライバに実行させる処理を示す記述等の入力を受け付け、記述データに挿入することができる。
【０２０８】
開示の技術では、以下に記載する付記のような形態が考えられる。
（付記１）
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見する機器発見部と、
前記機器情報に基づいて、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、
前記機器から取得したデータを前記入力フィールドに挿入するデータ挿入部と、を有する情報処理装置。
（付記２）
帳票画面の定義として記述された画面定義情報に含まれる付加情報に基づいて、前記帳票画面において前記データを挿入する入力フィールドを特定する入力欄特定部と、
前記機器制御モジュールに、前記機器から前記付加情報が示す値を取得する処理を実行させる処理組込部と、を有する付記１記載の情報処理装置。
（付記３）
帳票画面の定義として記述された画面定義情報に含まれる利用条件に基づいて、前記データが前記利用条件を満たすかを判定する妥当性判定部と、
前記データが前記利用条件を満たさない場合、前記機器制御モジュールに、前記機器において指定された操作を行わせる処理を実行させる操作設定部と、を有する付記１又は２記載の情報処理装置。
（付記４）
前記機器情報は、前記機器を識別する機器記述子を含み、
記憶装置から、前記機器記述子が含まれる機器情報を取得する機器情報取得部を有する付記１乃至３の何れか一項に記載の情報処理装置。
（付記５）
前記機器情報は、記憶装置における前記機器制御モジュールの格納先を示す情報を含み、
前記機器制御組込部は、
前記格納先を示す情報を参照し、前記機器制御モジュールを取得する付記１乃至４の何れか一項に記載の情報処理装置。
（付記６）
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見し、
前記機器情報に基づいて、前記機器と対応する機器制御モジュールを動的に組み込み、
前記機器から取得したデータを前記入力フィールドに挿入する、処理をコンピュータに実行させる情報処理プログラム。
（付記７）
情報処理装置と、サーバ装置とを有する情報処理システムであって、
前記サーバ装置は、機器制御モジュールと、が格納された記憶装置を有し、
前記情報処理装置は、
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見する機器発見部と、
前記機器情報に基づいて前記機器と対応する機器制御モジュールを前記サーバ装置から取得し、取得した前記機器制御モジュールを動的に組み込む機器制御組込部と、
前記機器から取得したデータを前記入力フィールドに挿入するデータ挿入部と、を有する情報処理システム。
（付記８）
情報処理装置と、サーバ装置とを有する情報処理システムによる情報処理方法であって、
前記サーバ装置が、記憶装置に機器制御モジュールを格納し、
前記情報処理装置が、
電子帳票において、入力フィールドの属性として記述された機器情報に基づいて機器を発見し、
前記機器情報に基づいて前記機器と対応する機器制御モジュールを前記サーバ装置から取得し、取得した前記機器制御モジュールを動的に組み込み、
前記機器から取得したデータを前記入力フィールドに挿入する、情報処理方法。
【０２０９】
本発明は、具体的に開示された実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０２１０】
１０、１０Ａ  帳票システム
１００、１００Ａ  端末装置
１１０  帳票アプリケーション
１２０  画面定義情報記述部
１３０、１３０Ａ、１３０Ｂ  帳票処理部
１３１  機器記述子抽出部
１３２  機器情報取得部
１３３  機器発見部
１３４  機器制御組込部
１３５  データ取得部
１３６  入力欄特定部
１３７  データ挿入部
１３８  処理組込部
１３９  操作設定部
１４０  妥当性判定部
２００  利用機器
３００、３００Ａ  サーバ装置
３１０  機器情報データベース
３２０  ドライバデータベース
【図１】
2018005396.tif 000003
【図２】
2018005396.tif 000004
【図３】
2018005396.tif 000005
【図４】
2018005396.tif 000006
【図５】
2018005396.tif 000007
【図６】
2018005396.tif 000008
【図７】
2018005396.tif 000009
【図８】
2018005396.tif 000010
【図９】
2018005396.tif 000011
【図１０】
2018005396.tif 000012
【図１１】
2018005396.tif 000013
【図１２】
2018005396.tif 000014
【図１３】
2018005396.tif 000015
【図１４】
2018005396.tif 000016
【図１５】
2018005396.tif 000017
【図１６】
2018005396.tif 000018
【図１７】
2018005396.tif 000019
【図１８】
2018005396.tif 000020
【図１９】
2018005396.tif 000021
【図２０】
2018005396.tif 000022
【図２１】
2018005396.tif 000023
【図２２】
2018005396.tif 000024
【図２３】
2018005396.tif 000025
【図２４】
2018005396.tif 000026