(57)【要約】【課題】アプリケーションの変更（改造）を不要にして、トレンドグラフなどの複数の状態データを必要とする画面部品を扱うことができる。【解決手段】代理受信者クラス６は複数のキーを持つことができるキークラスを作成しておき、ディスパッチャクラス２は代理受信者クラスが持つすべてのキーに基づいて、それぞれのキーについて、状態データを代理受信者クラスに引き渡す。さらに、論理演算または四則演算の演算内容に応じた演算キークラスをキークラス４から派生して作成し、演算キークラスは論理演算または四則演算処理を行うための演算子クラスを作成しておき、ディスパッチャクラスは代理受信者クラスが持つすべてのキーのうち、演算キーではないキーについて状態データを代理受信者クラスに引き渡し、すべてのキーに対して演算機能を呼び出し、演算キークラスが持つ演算結果を、状態データとして代理受信者クラスに引き渡す。【選択図】図１
2008176433.tif 000002
【特許請求の範囲】
【請求項１】
送信側アプリケーションに組み込まれた送信者クラスのオブジェクトから送信される状態データを、受信側アプリケーションに組み込まれたディスパッチャクラスのオブジェクトがネットワークを介して受信し、該ディスパッチャクラスのオブジェクトが代理受信者クラスのオブジェクトを予め備えられたキーに基づいて選択し、受信者インプリメンタのオブジェクトが該状態データを該代理受信者クラスのオブジェクトを介して受信し、該受信者インプリメンタのオブジェクトが該代理受信者クラスのオブジェクトに該状態データを入力する画面表示情報連携方法において、
前記代理受信者クラスは、複数のキーを持つことができるキークラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーに基づいて、それぞれのキーについて、状態データを前記代理受信者クラスに引き渡すステップを有することを特徴とする画面表示情報連携方法。
【請求項２】
論理演算または四則演算の演算内容に応じた演算キークラスを前記キークラスから派生して作成し、前記演算キークラスは論理演算または四則演算処理を行うための演算子クラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーのうち、演算キーではないキーについて状態データを前記代理受信者クラスに引き渡すステップと、すべてのキーに対して演算機能を呼び出すステップと、前記演算キークラスが持つ演算結果を、状態データとして前記代理受信者クラスに引き渡すステップとを有することを特徴とする請求項１に記載の画面表示情報連携方法。
【請求項３】
送信側アプリケーションに組み込まれた送信者クラスのオブジェクトから送信される状態データを、受信側アプリケーションに組み込まれたディスパッチャクラスのオブジェクトがネットワークを介して受信し、該ディスパッチャクラスのオブジェクトが代理受信者クラスのオブジェクトを予め備えられたキーに基づいて選択し、受信者インプリメンタのオブジェクトが該状態データを該代理受信者クラスのオブジェクトを介して受信し、該受信者インプリメンタのオブジェクトが該代理受信者クラスのオブジェクトに該状態データを入力する画面表示情報連携システムにおいて、
前記代理受信者クラスは、複数のキーを持つことができるキークラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーに基づいて、それぞれのキーについて、状態データを前記代理受信者クラスに引き渡す手段を有することを特徴とする画面表示情報連携システム。
【請求項４】
論理演算または四則演算の演算内容に応じた演算キークラスを前記キークラスから派生して作成し、前記演算キークラスは論理演算または四則演算処理を行うための演算子クラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーのうち、演算キーではないキーについて状態データを前記代理受信者クラスに引き渡す手段と、すべてのキーに対して演算機能を呼び出す手段と、前記演算キークラスが持つ演算結果を、状態データとして前記代理受信者クラスに引き渡す手段とを有することを特徴とする請求項３に記載の画面表示情報連携システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面表示情報連携方法および画面表示情報連携システムであり、例えば、監視制御システムにおける画面表示情報の連携技術に関するものである。
【背景技術】
【０００２】
現在、監視制御装置間で画面表示を連携する監視制御システムは、一般に知られており（例えば、特許文献１参照）、その画面表示を連携操作する方式は分散オブジェクト技術を応用した方式である。
【０００３】
まず、システム開発者は、送信者側の画面部品オブジェクトがリモートオブジェクトとなるように拡張画面部品インタフェース（オブジェクト指向プログラミングにおける多重継承の代替として用いられるインタフェース）を作成し、該画面部品に追加してリモート画面部品クラスと成す。
【０００４】
次に、システム開発者は、リモート画面部品クラスを送信者側の監視制御装置にインストールされた監視アプリケーションに組み込む。
【０００５】
次に、システム開発者は、拡張画面インタフェースと同じメソッドを持つ代理クラスを受信側に作成し、該代理クラスのメソッドを用いて、リモート画面部品オブジェクトを呼び出しできるように、受信者側の監視制御装置にインストールされる監視アプリケーションに対して組み込む。なお、特許文献１における監視制御システムで、受信管理部オブジェクトが代理オブジェクトを介してリモート画面部品オブジェクトに対する呼び出しを行っている。
【０００６】
上述の作業によって、監視サーバアプリケーションに組み込まれたリモート画面部品オブジェクトを、受信者側の監視制御装置内の監視クライアントアプリケーションから、ネットワークを介して呼び出すことができるようになる。なお、特許文献１における監視制御システムでは、送信管理部オブジェクトが全てのリモート画面部品オブジェクトを管理している。
【０００７】
次に、送信者側は監視サーバアプリケーション内のリモート画面部品オブジェクトを使って表示した状態を示すデータを、ファイルやデータベースに保存しておく。一方で、受信者側はネットワークを介してリモート画面部品のオブジェクト参照を代理オブジェクトに含めて、監視クライアントアプリケーションに取得させる。
【０００８】
次に、受信者側は、監視クライアントアプリケーションに取得したリモート画面部品オブジェクトに対応する表示状態データをファイルやデータベースから取得させる。
【０００９】
そして、監視クライアントアプリケーションは、表示状態データをリモート画面部品オブジェクトに対して入力し、該リモート画面部品オブジェクトの表示状態を生成して、該監視クライアントアプリケーションの編集画面上に表示する。
【特許文献１】特開２００４−３５５４５５
【発明の開示】
【発明が解決しようとする課題】
【００１０】
監視制御システムにおける各機器の状態を表示する画面部品は、その機器の状態を表す１つのキーから受け取る状態データのみを利用すれば、表示を行うことができる。このため、代理受信者オブジェクトに設定されるキーは１つのみである。
【００１１】
トレンドグラフのように、複数の機器の状態を表示する画面部品の場合は、表示に必要な状態データを１つのキーで受け取れるように専用のキーを作成し、そのキーを受け取った送信側アプリケーションは、すべての状態データをまとめる処理を行い、受信側アプリケーションに送信するように変更（改造）する必要がある。
【００１２】
また、警報表示部品のように、複数の機器の状態データのうち、機器のどれか１つでも故障状態となっている場合に、警報を表示する場合も、同様に送信側アプリケーションを変更（改造）する必要がある。このとき、送信側アプリケーションの再試験を行う必要があるだけでなく、変更によって他に不具合が生じる可能性もある。
【００１３】
本発明の目的は、アプリケーションの変更（改造）を不要にして、トレンドグラフなどの複数の状態データを必要とする画面部品を扱うことができる画面表示情報連携方法および画面表示情報連携システムを提供することにある。
【課題を解決するための手段】
【００１４】
本発明は、前記の課題を解決するため、以下の方法およびシステムを特徴とする。
【００１５】
（方法の発明）
（１）送信側アプリケーションに組み込まれた送信者クラスのオブジェクトから送信される状態データを、受信側アプリケーションに組み込まれたディスパッチャクラスのオブジェクトがネットワークを介して受信し、該ディスパッチャクラスのオブジェクトが代理受信者クラスのオブジェクトを予め備えられたキーに基づいて選択し、受信者インプリメンタのオブジェクトが該状態データを該代理受信者クラスのオブジェクトを介して受信し、該受信者インプリメンタのオブジェクトが該代理受信者クラスのオブジェクトに該状態データを入力する画面表示情報連携方法において、
前記代理受信者クラスは、複数のキーを持つことができるキークラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーに基づいて、それぞれのキーについて、状態データを前記代理受信者クラスに引き渡すステップを有することを特徴とする。
【００１６】
（２）論理演算または四則演算の演算内容に応じた演算キークラスを前記キークラスから派生して作成し、前記演算キークラスは論理演算または四則演算処理を行うための演算子クラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーのうち、演算キーではないキーについて状態データを前記代理受信者クラスに引き渡すステップと、すべてのキーに対して演算機能を呼び出すステップと、前記演算キークラスが持つ演算結果を、状態データとして前記代理受信者クラスに引き渡すステップとを有することを特徴とする。
【００１７】
（システムの発明）
（３）送信側アプリケーションに組み込まれた送信者クラスのオブジェクトから送信される状態データを、受信側アプリケーションに組み込まれたディスパッチャクラスのオブジェクトがネットワークを介して受信し、該ディスパッチャクラスのオブジェクトが代理受信者クラスのオブジェクトを予め備えられたキーに基づいて選択し、受信者インプリメンタのオブジェクトが該状態データを該代理受信者クラスのオブジェクトを介して受信し、該受信者インプリメンタのオブジェクトが該代理受信者クラスのオブジェクトに該状態データを入力する画面表示情報連携システムにおいて、
前記代理受信者クラスは、複数のキーを持つことができるキークラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーに基づいて、それぞれのキーについて、状態データを前記代理受信者クラスに引き渡す手段を有することを特徴とする。
【００１８】
（４）論理演算または四則演算の演算内容に応じた演算キークラスを前記キークラスから派生して作成し、前記演算キークラスは論理演算または四則演算処理を行うための演算子クラスを作成しておき、
前記ディスパッチャクラスは、前記代理受信者クラスが持つすべてのキーのうち、演算キーではないキーについて状態データを前記代理受信者クラスに引き渡す手段と、すべてのキーに対して演算機能を呼び出す手段と、前記演算キークラスが持つ演算結果を、状態データとして前記代理受信者クラスに引き渡す手段とを有することを特徴とする。
【発明の効果】
【００１９】
以上のとおり、本発明によれば、代理受信者クラスは複数のキーを持つことができるキークラスを作成しておき、ディスパッチャクラスは代理受信者クラスが持つすべてのキーに基づいて、それぞれのキーについて、状態データを代理受信者クラスに引き渡すようにしたため、アプリケーションの変更（改造）を不要にして、トレンドグラフなどの複数のキーから取得できる状態データを必要とする画面部品を扱うことができる。
【００２０】
さらに、論理演算または四則演算の演算内容に応じた演算キークラスをキークラスから派生して作成し、演算キークラスは論理演算または四則演算処理を行うための演算子クラスを作成しておき、ディスパッチャクラスは代理受信者クラスが持つすべてのキーのうち、演算キーではないキーについて状態データを代理受信者クラスに引き渡し、すべてのキーに対して演算機能を呼び出し、演算キークラスが持つ演算結果を状態データとして代理受信者クラスに引き渡すようにしたため、新たに専用のキーを作成して送信側アブリケーションを変更（改造）する必要がない。
【００２１】
また、送信側アプリケーションの再試験が必要ないし、送信側アブリケーションに新たな不具合が生じるのを防止することができる。
【発明を実施するための最良の形態】
【００２２】
図１は、本発明の実施形態を示すブロック構成図である。なお、本実施形態はオブジェクト指向技術に基づいているため、この技術における用語を以下の説明では使用する。例えば、クラスから生成されたオブジェクトに関する表記は、「Ａクラスから生成されたＡオブジェクト」または、「Ａクラスのオブジェクト」または、「Ａオブジェクト」のように表記する。さらに、オブジェクト指向技術に基づくため、当該クラスから継承したクラスは、当該クラスと同じ振る舞いを持つことが前提となる。
【００２３】
図１において、送信側アプリケーションに組み込まれた送信者クラスのオブジェクトから送信される状態データを、受信側アプリケーションに組み込まれたディスパッチャクラスのオブジェクトがネットワークを介して受信し、該ディスパッチャクラスのオブジェクトが代理受信者クラスのオブジェクトを予め備えられたキーに基づいて選択し、受信者インプリメンタのオブジェクトが該状態データを該代理受信者クラスのオブジェクトを介して受信し、該受信者インプリメンタのオブジェクトが該代理受信者クラスのオブジェクトに該状態データを入力する。
【００２４】
なお、前記の受信者インプリメンタは、受信のための共通インタフェース定義（受信者インタフェースと称する）を実装したクラスである。例えば、前記の受信者インプリメンタのオブジェクトは、該受信者インプリメンタのオブジェクトに対応する代理受信者クラスのオブジェクトから状態データ群を取得し、特定のファイルやデータベースに対して状態データ群を保存する。
【００２５】
さらに、前記の受信者インプリメンタのオブジェクトは、前記の代理受信者のオブジェクトに対して表示状態データ群を設定するために、前記のファイルやデータベースから該表示状態データ群を読み込む動作も有する。
【００２６】
そして、前記の受信者インプリメンタのオブジェクトは、代理受信者クラスのオブジェクトに係る状態データ入力方法に合わせるように、前記状態データ群を各々の状態データに分解（例えば、結合されたデータ「ＡＢＣ」をデータ「Ａ」，データ「Ｂ」，データ「Ｃ」に分解）し、前記の代理受信者クラスのオブジェクトに、その各々の状態データを設定する。
【００２７】
図１は符号１乃至８に示すクラスまたはインタフェースから成る。まず、ディスパッチャ管理クラス１は、個別の送信者に対応したディスパッチャオブジェクトに係るオブジェクト参照をリスト（以後、ディスパッチャリストと称する）に登録して管理する。
【００２８】
即ち、前記のディスパッチャ管理クラス１は、ホスト情報及びキーの組み合わせに対応するディスパッチャオブジェクトを取得できる。例えば、ディスパッチャ管理クラス１は、ホスト情報（ホスト情報クラス３のオブジェクトに含まれるホスト情報と同じ形式の情報），キー（キークラス４のオブジェクトに含まれるキー情報と同じ形式の情報），ディスパッチャオブジェクトに係るオブジェクト参照をデータ項目としたディスパッチャリストを有し、そのディスパッチャリストに基づいて特定のホスト情報及びキーの組み合わせに対応したディスパッチャオブジェクトに係るオブジェクト参照を取得できる。
【００２９】
ディスパッチャクラス２は、監視サーバアプリケーション内の送信者オブジェクトから状態データ群（例えば、インスタンスデータ）を取得し、キー（キークラス４のオブジェクトに含まれる情報と同じ形式の情報）と代理受信者オブジェクトに係るオブジェクト参照をデータ項目とするリスト（以後、代理受信者オブジェクトリストと称する；該ディスパッチャクラス２に備えられたリスト）から、特定のキーに対応する代理受信者クラス６のオブジェクトを選択し、該選択された代理受信者クラス６のオブジェクトに対して該状態データ群をディスパッチする（送る）クラスである。
【００３０】
即ち、ディスパッチャクラス２はキー及びホスト情報を取得（例えば、該ディスパッチャクラス２がアクセスできる特定のキーオブジェクト及びホスト情報オブジェクトから取得）し、前記ホスト情報に対応する送信者オブジェクトから該キーに対応する状態データ群を取得する。さらに、前記のディスパッチャクラス２は、前記の代理受信者オブジェクトリストから前記キーに対応する代理受信者オブジェクトのオブジェクト参照を取得し、該代理受信者オブジェクトに対して前記の状態データ群を引き渡す。
【００３１】
ホスト情報クラス３は、送信者オブジェクトを有する監視サーバアプリケーション及び該アプリケーションが動作している装置に係るネットワーク情報（即ち、ホスト情報）を管理するクラスである。例えば、前記の監視サーバアプリケーションをネットワーク上で識別できるような情報（例えば、ＩＰアドレスとポート番号の組み合わせ）を管理する。
【００３２】
キークラス４は、前記の送信者オブジェクトから送信されるデータを識別するための情報（即ち、キー）を持つ。前記の情報は、例えば、クラス名（或いは、オブジェクト番号），データ型，データサイズ，データ位置などである。
【００３３】
ディスパッチリスナインタフェース５は、前記の状態データ群をディスパッチャオブジェクトから受信するインタフェース定義と、前記の状態データ群を受信者インタフェース７に対して引き渡す定義と、ディスパッチリスナインタフェース５自体をディスパッチャに登録するインタフェース定義と、を有するものである。
【００３４】
代理受信者クラス６は、ディスパッチリスナインタフェース５を実装したクラスである。代理受信者クラス６がディスパッチャクラス２のオブジェクトに登録されることによって、受信者インタフェースを実装したクラス（即ち、受信者インプリメンタ）のオブジェクトの代わりに、前記の送信者オブジェクトから送られた前記の状態データ群を受信可能とする。
【００３５】
即ち、前記の代理受信者クラス６のオブジェクトは、前記キーオブジェクトに含まれるキーに対応する状態データ群を受信するものである。なお、代理受信者クラスのデータ構造は、送信者クラスのデータ構造と同じか、該送信者クラスのデータ構造を含むデータ構造を持つことが望ましい。
【００３６】
受信者インタフェース７は、自らに対応する代理受信者オブジェクトに登録するインタフェース定義と、前記の状態データ群を代理受信者オブジェクトから受信させるインタフェース定義と、状態データ群をファイルやデータベースに保存させるインタフェース定義と、ファイルやデータベースから状態データ群を読み込ませるインタフェース定義と、を有するものである。
【００３７】
受信者管理クラス８は、受信者インプリメンタのオブジェクトが登録され、該受信者インプリメンタのオブジェクトを管理するクラスである。なお、実際の受信者インプリメンタには、様々なクラスを想定できる。例えば、後述する画面部品クラス，ファイル用画面部品クラス，データベース用画面部品クラスである。
【００３８】
また、前記の受信者管理クラス８は、前記の受信者インタフェース７を介して、受信者インプリメンタのオブジェクトに、状態データ群を所定のファイルやデータベースから読み込ませたり、所定のファイルやデータベースに対して保存させたりすることによって、受信者インプリメンタのオブジェクトの管理を行う。
【００３９】
以上のように構成される画面表示情報連携システムにおいて、本実施形態は、アプリケーションの変更（改造）を不要にして、トレンドグラフなどの複数の状態データを必要とする画面部品を扱うことができるようにする。この実施例を以下に説明する。
【００４０】
（実施例１）複数のキーを扱えるようにする。
【００４１】
代理受信者クラス６は、複数のキーを持つことができるようにする。ディスパッチャクラス２は、代理受信者クラス６が持つすべてのキーに基づいて、それぞれのキーについて、状態データをディスパッチリスナインタフェース５を介して代理受信者クラス６に引き渡す。代理受信者クラス６は、画面部品に受信者インタフェース７を介して状態データを引き渡す。この引き渡しは前記のものと同様になる。
【００４２】
したがって、代理受信者クラス６は複数のキーを持つことができるため、トレンドグラフなどの複数の状態データを必要とする画面部品を扱うことができるようになる。
【００４３】
（実施例２）複数のキーを演算して、その結果を状態データとして扱うキーを扱えるようにする。
【００４４】
論理値を扱う複数のキーの論理演算した結果を状態データとして代理受信者クラス６が受け取る場合や、数値を扱う複数のキーの四則演算した結果を状態データとして代理受信者クラスが受け取る場合などは、上記の実施例１では実現できない。
【００４５】
そこで、本実施例は、図２に示すように、キークラス４に演算する機能を追加する。演算するための演算キークラス９をキークラス４から派生して作成する。演算キークラス９では、演算するための演算子クラス１０を作成し、この演算子クラス１０に演算させる処理を行い、親クラスのキークラス４では何もしないようにしておく。各演算内容によって、それぞれ派生クラスを作成する。
【００４６】
ディスパッチャクラス２は、代理受信者クラス６が持つすべてのキーのうち、演算キーではないキーについて、状態データをディスパッチリスナインタフェース５を介して代理受信者クラス６に引き渡す。次に、ディスパッチャクラス２は、すべてのキーに対して演算機能を呼び出す。最後に、ディスパッチャクラス２は、演算キークラス９が持つ演算結果を、状態データとして代理受信者クラス６に引き渡す。
【００４７】
なお、演算キーではない複数のキーに基づく状態データと、演算キーに基づく状態データとの区別をつけるため、ディスパッチリスナインタフェース６は、２つの値を区別して受信するために、それぞれ専用の受信メソッド（複数のキーに基づく状態データ受信メソッドと、１つのキー（演算ではないキーまたは演算キー）に基づく状態データ受信メソッド）を定義しておく。
【００４８】
図３は、複数のキーを論理演算するためのクラス構成を示す。２つの論理値のＯＲをとるＯＲ演算子クラス１１は演算子クラス１０から派生して作成する。演算機能では、演算キー作成画面で結び付けられた２つのキーまたは演算子のＯＲを結果として、保持する。
【００４９】
図４は、論理演算キーの作成画面を示し、上段に演算子と、２つのキーまたは演算子を結ぶためのメニューエリアを設け、下段に作成エリアを設ける。作成エリアは、最左端に代理受信者クラス６が持つ複数のキーＡ，Ｂ，Ｃの一覧が表示され、最右端に演算結果を表す結果キーが表示される。その間に上段のメニューから演算させたい演算子を配置して、演算子には演算させるキーまたは演算子を線で結ぶ。このように、格子状にキーや演算子、結線を配置することで、演算アルゴリズムを作成していく。
【００５０】
同様に、図３に示すように、２つの論理値のＡＮＤをとるＡＮＤ演算子クラス１２を演算子クラス１０から派生して作成する。演算機能では、演算キー作成画面で結び付けられた２つのキーまたは演算子のＡＮＤを結果として、保持する。
【００５１】
上記以外の論理演算子についても、同様に、専用の演算子クラスを作成し、作成した各演算子クラスは、演算キー作成画面の上部に、自動的に作成メニューとして配置される。
【００５２】
図５は、複数のキーを四則演算するためのクラス構成を示す。２つの値の和を計算する和演算子クラス１３を演算子クラス１０から派生して作成する。演算機能では、演算キー作成画面で結び付けられた２つのキーまたは演算子の、配置上、上にあるものに下にあるものを足して、その結果を保持する。
【００５３】
同様に、図５に示すように、２つの値の差を計算する差演算子クラス１４を演算子クラス１０から派生して作成する。演算機能では、演算キー作成画面で結び付けられた２つのキーまたは演算子の、配置上、上にあるものから下にあるものを引いて、その結果を保持する。
【００５４】
図６は、四則演算キーの作成画面を示し、図４と同様に、メニューエリアと作成エリアを表示して四則演算アルゴリズムを作成していく。
【００５５】
上記以外の四則演算子についても、同様に、専用の演算子クラスを作成し、作成した各演算子クラスは、演算キー作成画面の上部に、自動的に作成メニューとして配置される。
【００５６】
以上のように、画面部品が複数のキーから取得できる状態データを必要とする場合、受信側アプリケーションで、代理受信者に複数のキーを設定したり、複数のキーを利用して論理演算や四則演算する演算キーを作成することにより、新たに専用のキーを作成して送信側アブリケーションを変更（改造）する必要がない。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施形態を示すブロック構成図。
【図２】キークラスが演算を扱うためのクラス構成。
【図３】複数のキーを論理演算するためのクラス構成。
【図４】論理演算キーの作成画面。
【図５】複数のキーを四則演算するためのクラス構成。
【図６】四則演算キーの作成画面。
【符号の説明】
【００５８】
１  ディスパッチャ管理クラス
２  ディスパッチャクラス
３  ホスト情報クラス
４  キークラス
５  ディスパッチリスナインタフェース
６  代理受信者クラス
７  受信者インタフェース
８  受信者管理クラス
９  演算キークラス
１０  演算子キークラス
１１  ＯＲ演算子クラス
１２  ＡＮＤ演算子クラス
１３  和演算子クラス
１４  差演算子クラス
【図１】
2008176433.tif 000003
【図２】
2008176433.tif 000004
【図３】
2008176433.tif 000005
【図４】
2008176433.tif 000006
【図５】
2008176433.tif 000007
【図６】
2008176433.tif 000008