(57)【要約】【課題】一種類のコード体系に対応した監視ユーティリティにより複数種類の状態コードを実装した周辺機器に対応する。【解決手段】多機能周辺機器（ＭＦＰ）２０１のステータスは、クライアント２０４またはコード変換ボックス２１０またはサーバ２０９により、あるコード体系から、クライアントが処理可能なコード体系に変換されて、各クライアントに送信される。各クライアントは、ＭＦＰ２０１のステータスに複数の異なるコード体系が含まれている場合でも、変換後のコード体系に従って処理することができる。【選択図】図２
2004280264.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータおよび周辺機器が通信可能な周辺機器制御システムであって、
周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器制御システム。
【請求項２】
ホストコンピュータおよび周辺機器が通信可能な周辺機器制御システムであって、
周辺機器の状態又は機能を示すためのコードを周辺機器からホストコンピュータへ転送する転送手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器制御システム。
【請求項３】
前記ホストコンピュータ上に前記コード対応情報保持手段と該コード変換手段の両方を有することを特徴とする請求項１または２に記載の周辺機器制御システム。
【請求項４】
ホストコンピュータおよび周辺機器が接続された周辺機器制御システムであって、
周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを別のコード体系のコードに変換することを要求するコード変換要求手段と、
前記コード変換要求手段による要求に応じて、一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器制御システム。
【請求項５】
前記ホストコンピュータ上に前記コード変換要求手段を有することを特徴とする請求項４に記載の周辺機器制御システム。
【請求項６】
前記ホストコンピュータと接続されたサーバコンピュータに前記コード対応情報保持手段と該コード変換手段の両方を有することを特徴とする請求項４或いは５に記載の周辺機器制御システム。
【請求項７】
前記周辺機器の外部でかつ前記ホストコンピュータとの間にフィルタを更に備え、該フィルタが前記コード対応情報保持手段と前記コード変換手段とを有することを特徴とする請求項４或いは５に記載の周辺機器制御システム。
【請求項８】
さらに、前記コード対応保持手段の保持するコード間の対応関係を更新する更新手段を有することを特徴とする請求項１乃至７のいずれか１項に記載の周辺機器制御システム。
【請求項９】
前記更新手段は、前記ホストコンピュータから送信された更新指示データをもとに更新することを特徴とする請求項８に記載の周辺機器制御システム。
【請求項１０】
ホストコンピュータと通信可能な周辺機器であって、
当該周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器。
【請求項１１】
ホストコンピュータと通信可能な周辺機器であって、
当該周辺機器の状態又は機能を示すためのコードを周辺機器からホストコンピュータへ転送する転送手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器。
【請求項１２】
ホストコンピュータと接続可能な周辺機器であって、
当該周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを別のコード体系のコードに変換することを要求するコード変換要求手段と、
前記コード変換要求手段による要求に応じて、一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器。
【請求項１３】
ホストコンピュータと通信可能な周辺機器の制御方法であって、
当該周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持ステップと、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換ステップと
を有することを特徴とする周辺機器の制御方法。
【請求項１４】
ホストコンピュータと通信可能な周辺機器の制御方法であって、
当該周辺機器の状態又は機能を示すためのコードを周辺機器からホストコンピュータへ転送する転送ステップと、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換ステップと
を有することを特徴とする周辺機器の制御方法。
【請求項１５】
ホストコンピュータと接続可能な周辺機器の制御方法であって、
当該周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持ステップと、
一のコード体系のコードを別のコード体系のコードに変換することを要求するコード変換要求ステップと、
前記コード変換要求ステップによる要求に応じて、一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換ステップと
を有することを特徴とする周辺機器の制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、たとえばプリンタやスキャナ、ファックス、コピーなどといった周辺機器を、ネットワークやＩＥＥＥ１３９４などのインターフェースを通して制御したり、これら周辺機器の状態をモニタリングしたり、これら周辺機器に対してジョブを発行したりする周辺機器制御システムに関する。
【０００２】
【従来の技術】
ネットワークなどに接続されたプリンタやスキャナ、ファックス、コピー等の周辺機器に対してホストからジョブを発行したり、これらの周辺機器を管理したり、これらの周辺機器の状態をモニタリングしたりする場合は、あらかじめ周辺機器の種類や機種を知った上で、機種に対応した適当なドライバやユーティリティなどの周辺機器制御ソフトウエアをホスト上に用意しておく必要がある。
【０００３】
そしてこの周辺機器ソフトウエアにより、周辺機器に生じるジャム状態、カバーオープン状態、用紙補給状態、メモリフル状態など、現在の状態をホスト上でモニタリングする仕組みが実現され、ユーザや管理者による周辺機器のリモート監視が可能となっている。この周辺機器のリモート監視のためには、機器状態を表すコード（以下、ステータスコード）体系を定義し、それらをあらかじめ周辺機器とホスト上のユーティリティの両方に組み込む必要がある。例えば、ステータスコードの値が３０１８０００はジャム状態、３０３００００はカバーオープン状態、３０６００００は用紙補給状態、３１９００００はメモリフル状態、といった具合である。
【０００４】
【発明が解決しようとする課題】
しかし、周辺機器は、種類や機種によって、それぞれが独自のステータスコード体系を定義して使用している。そこで、ホスト上のモニタリング用ユーティリティは、使用対象とする周辺機器が採用しているステータスコード体系に対応する必要が生じる。すなわち周辺機器の種類や機種ごとに、モニタリング用ユーティリティを作成しなければならず、ユーティリティ作成に多大な工数がかかってしまうという問題点があった。
【０００５】
本発明は上記従来例に鑑みてなされたもので、互いに異なる複数のコード体系のステータスコードを実装する周辺機器の制御を簡易に行なうことが可能となり、開発や運用のコストが削減できる周辺機器制御システムを提供することを目的とする。
【０００６】
【課題を解決する為の手段】
上記課題を解決するために、本発明の請求項１に係わる周辺機器制御システムでは、  周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする。
【０００７】
あるいは、ホストコンピュータおよび周辺機器が通信可能な周辺機器制御システムであって、
周辺機器の状態又は機能を示すためのコードを周辺機器からホストコンピュータへ転送する転送手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする。
【０００８】
更に好ましくは、前記ホストコンピュータ上に前記コード対応情報保持手段と該コード変換手段の両方を有する。
【０００９】
あるいは、ホストコンピュータおよび周辺機器が接続された周辺機器制御システムであって、
周辺機器の状態又は機能を示すための複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを別のコード体系のコードに変換することを要求するコード変換要求手段と、
前記コード変換要求手段による要求に応じて、一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段とを有する。
【００１０】
更に好ましくは、前記ホストコンピュータ上に前記コード変換要求手段を有することを特徴とする。
【００１１】
更に好ましくは、前記ホストコンピュータと接続されたサーバコンピュータに前記コード対応情報保持手段と該コード変換手段の両方を有する
更に好ましくは、前記周辺機器の外部でかつ前記ホストコンピュータとの間にフィルタを更に備え、該フィルタが前記コード対応情報保持手段と前記コード変換手段とを有する
更に好ましくは、さらに、前記コード対応保持手段の保持するコード間の対応関係を更新する更新手段を有することを特徴とする
更に好ましくは、前記更新手段は、前記ホストコンピュータから送信された更新指示データをもとに更新する。
【００１２】
これにより、特定の１つのコード体系の周辺機器に対してコード処理を行なうようにすることで他のコード体系を実装する周辺機器の制御も行なうことが可能となる。
【００１３】
【発明の実施の形態】
【実施形態１】
本発明の実施形態として、以下の仕様を有している多機能周辺機器について説明する。
【００１４】
１．ジョブ発行
・プリント：
−３つの物理プリンタを選択して使用可能。
（レーザビームプリンタ（ＬＢＰ）１（Ｂ／Ｗ（モノクロ），フィニッシャ付），ＬＢＰ２（Ｂ／Ｗ），インクジェットプリンタ（ＩＪ）（カラー））
−４つの論理プリンタ（クラスタ）プリンタを選択して使用可能。
（ＬＢＰ１＋ＬＢＰ２，  ＬＢＰ２＋ＩＪ，  ＬＢＰ１＋ＩＪ，  ＬＢＰ１＋ＬＢＰ２＋ＩＪ）
−上記７つのプリンタから自動選択されたプリンタを使用可能。
−インクジェットプリンターエンジンを使用し、白黒のみの印刷可能なプリンターとする論理プリンターを使用可能。
・スキャン：
−外部からスキャンジョブの発行が可能。
−カラー原稿の読込みが可能。
・コピー：
−スキャナーと上記８つのプリンタを使用して構成されるコピーを選択して使用可能（自動選択も可能）。
−一部はカラーコピー可能（プリンターがＩＪのみのとき）。
【００１５】
２．リソース管理
・フォント：
−プリントジョブで使用する。
−アップロードおよびダウンロードが可能。
・フォームオーバーレイ：
−プリントジョブで使用する。
−アップロードおよびダウンロードが可能。
・カラープロファイル：
−プリントジョブ，スキャンジョブ，コピージョブで使用する。
−アップロード，ダウンロードが可能。
・ログ：
−機器内部で自動生成される。
−アップロードが可能。
【００１６】
３．インターフェース
・ネットワーク（Ｅｔｈｅｒｎｅｔ（登録商標），  ＴＣＰ／ＩＰ），  ＩＥＥＥ１２８４，  ＩＥＥＥ１３９４
・どのインターフェースからでも、全ての機能を使用可能。
・各インターフェースごとにサブアドレスと物理デバイスおよび論理デバイス（プリンター、スキャナ、コピー）および各リソースの対応が取られており、サブアドレスを選択することによりこれらの物理デバイスおよび論理デバイスおよび各リソースを選択する。
・これらの各インターフェースの各サブアドレスに対して、同時にジョブを発行およびダウンロードおよびアップロードを指示することができる。
・サブアドレスと物理デバイスおよび論理デバイスおよび各リソースとの対応は、機器自身に問い合わせることにより得られる。
・内部で持つユーザーインターフェースからも、機能を使用可能。
【００１７】
４．管理機能
・外部から上記インターフェースを通してスーパバイザに問い合わせることにより、以下の情報を取得可能：
−提供している機能概要（どんなジョブが発行できるか、どんなリソースが利用できるかなど）。
−ジョブ発行、リソースのダウンロード・アップロードに使用するサブアドレス。
−各機能の詳細情報（最大コピー部数、フィニシャーの種類、サポートしているページ記述言語（ＰＤＬ）、指定できる出力ビンの数等）。
・（上記情報を使用して、クライアント側ではソフトウエアを自動構成可能）
・ただし、この問合わせに使用するサブアドレスだけは各インターフェースにおいて、クライアントはあらかじめ知っておく必要がある。
・管理者は、上記の各種機能を接続形態および使用ユーザにより制限可能。
【００１８】
［概要］
図１は本発明が実施された多機能周辺機器の構成をあらわす概念図である。図１において、コントローラ１０１は機器を制御するためのコントローラであり、図３において示されるハードウエア構成を有し、図４・図５および図６において示されるソフトウエア構成を有している。スキャナエンジン１０２は、コントローラ１０１によって制御されている。レーザービームプリンタエンジン１０３は、コントローラ１０１によって制御されている。レーザービームプリンタエンジン１０３はフィニッシャー１０６に接続されており、プリンタエンジン１０３から出力された複数の紙をまとめてステープル（ホッチキス）処理することが可能となっている。フィニッシャー１０６もコントローラ１０１によって制御されている。レーザービームプリンタエンジン１０４は、コントローラ１０１によって制御されている。インクジェットプリントエンジン１０５は、コントローラ１０１によって制御されている。このエンジン１０５はカラー出力を行うことが可能となっている。ネットワークインターフェース１０７は、コントローラ１０１に対して同インターフェースを通した双方向通信を提供している。ＩＥＥＥ１３９４インターフェース１０８は、コントローラ１０１に対して同インターフェースを通した双方向通信を提供している。ＩＥＥＥ１２８４インターフェース１０９は、コントローラ１０１に対して同インターフェースを通した双方向通信を提供している。ユーザーインタフェース１１０は、液晶（ＬＣＤ）ディスプレイとキーボードから構成されており、コントローラ１０１からの情報表示を行うとともにユーザからの指示をコントローラ１０１に伝える。
【００１９】
＜システム構成例＞
図２は本実施形態の多機能周辺機器を接続して構成されたシステム構成の一例をあらわすものである。図２において、図１であらわされる多機能周辺機器２０１は、ネットワーク２０８、ＩＥＥＥ１３９４（２０６）によってクライアントＰＣ（２０２）、（２０３）、（２０４）にそれぞれ接続されている。また、多機能周辺機器２０１は、コード変換ボックス２１０を介して、クライアントＰＣ（２０５）に接続されている。すなわち、多機能周辺機器２０１はＩＥＥＥ１２８４（２０７）によってコード変換ボックス２１０に接続され、さらにＩＥＥＥ１２８４（２１１）によってクライアントＰＣ（２０５）にも接続されている。各クライアントＰＣでは、図２０において示されるソフトウエアが動作している。また、ネットワーク２０８上には、サーバ２０９も接続されている。
【００２０】
＜コントローラ１０１のハードウエア構成＞
図３は、コントローラ１０１のハードウエア構成をあらわすブロック図である。コントローラ１０１の内部では、ＣＰＵ３０１がバス３１３を介して、ＲＡＭ３０２・ＬＣＤディスプレイ３０３・キーボード３０４・ＲＯＭ３１４接続されている。
【００２１】
図４−図６で示されるソフトウエアブロックを有するプログラムおよび各種データはＲＡＭ３０２またはＲＯＭ３１４に書き込まれており、これらをＣＰＵ３０１が順次読みだしながら実行することにより、コントローラは動作する。
【００２２】
ＬＣＤディスプレイ３０３およびキーボード３０４は図１におけるユーザインターフェース１１０を構成するものであり、ＣＰＵ３０１がＬＣＤディスプレイ３０３にデータを書き込むことにより表示を行い、ＣＰ３０１がキーボード３０４からデータを読み出すことにより、ユーザからの指示を入力する。
【００２３】
バス３１３には、ネットワークインターフェース３０５・ＩＥＥＥ１３９４インターフェース３０６・ＩＥＥＥ１２８４インターフェース３０７が接続されている。これらは、それぞれ図１のネットワークインターフェース１０７・ＩＥＥＥ１３９４インターフェース１０８・ＩＥＥＥ１２８４インターフェース１０９に対応するものであり、ＣＰＵ３０１がこれらのインターフェースからデータを読み込みまたは書き込むことによりそれぞれのインターフェースを使用した通信を行う。
【００２４】
バス３１３には、レーザービームプリンタエンジン１（３０８）・フィニッシャー３０９・スキャナエンジン３１０・レーザービームプリンタエンジン２（３１１）・インクジェットプリンタエンジン３１２が接続されている。これらは、図１のレーザービームプリンタエンジン１（１０３）・フィニッシャー１０６・スキャナエンジン１０２・レーザービームプリンタエンジン２（１０４）・インクジェットプリンタエンジン１０５に対応するものであり、ＣＰＵ３０１がこれらのエンジンに対してデータの読み書きを行うことによりプリント・スキャンなどのエンジン動作および各種ステータス取得を行う。
【００２５】
＜コントローラ１０１のソフトウエア構成＞
図４はコントローラ１０１のソフトウエア構成をあらわすものである。
【００２６】
ユーザーインターフェース（ＵＩ）ドライバ４０１は、ＬＣＤディスプレイ３０３およびキーボード３０４の制御を行う。
【００２７】
ユーザインターフェースマネージャ４０５は、ＵＩドライバ４０１から入力されたユーザからの入力を解釈して、コマンドパケットを生成しインタープリター４０９に出力する。ユーザーインターフェースマネージャ４０５はまたインタープリター４０９から入力されたコマンドパケットを解釈し、ＵＩドライバ４０１を介してＬＣＤディスプレイ３０３に表示を行う。
【００２８】
ネットワークインターフェースドライバ４０２は、ネットワークインターフェース３０５の制御を行い、ネットワークパケットの物理層（物理パケット）の処理、つまり物理パケットからトランスポートパケットの抽出、およびトランスポートパケットから物理パケットの生成を行う。
【００２９】
ＴＣＰ／ＩＰ・ＵＤＰ／ＩＰ処理モジュール４０６は、ネットワークインターフェース４０２から出力されたトランスポートパケットの処理をおこないコマンドパケットを抽出してインタープリター４０９に出力する。また、インタープリター４０９から出力されたコマンドパケットからトランスポートパケットの生成を行い、ネットワークインターフェース４０２に出力する。
【００３０】
ＩＥＥＥ１２８４ドライバ４０３は、ＩＥＥＥ１２８４インターフェース３０７の制御を行う。
【００３１】
ＩＥＥＥ１２８４．４モジュール４０７はＩＥＥＥ１２８４．４の処理モジュールである。ＩＥＥＥ１２８４．４は主にＩＥＥＥ１２８４インターフェースで使用されることを目的としたトランスポート層の標準である。ＩＥＥＥ１２８４．４の処理モジュール４０７はＩＥＥＥ１２８４ドライバ４０３から出力されたトランスポートパケットの処理をおこないコマンドパケットを抽出してインタープリター４０９に出力する。また、インタープリター４０９から出力されたコマンドパケットからトランスポートパケットの生成を行い、ＩＥＥＥ１２８４ドライバ４０３に出力する。
【００３２】
ＩＥＥＥ１３９４ドライバ４０４は、ＩＥＥＥ１３９４インターフェース３０６の制御を行う。
【００３３】
ＳＢＰ−２モジュール４０８はＩＥＥＥ１３９４におけるトランスポート層であるＳＢＰ−２を処理するモジュールである。ＳＢＰ−２の処理モジュール４０８は、ＩＥＥＥ１３９４ドライバ４０４から出力されたトランスポートパケットの処理をおこないコマンドパケットを抽出してインタープリター４０９に出力する。また、インタープリター４０９から出力されたコマンドパケットからトランスポートパケットの生成を行い、ＩＥＥＥ１３９４ドライバ４０４に出力する。
【００３４】
パケットインタプリタ４０９は、トランスポート処理部４０６・４０７・４０８の各々およびユーザインターフェースマネージャ４０５から入力されたコマンドパケットを解釈しコマンドを生成するパケットインタープリターである。パケットインタープリター４０９は他のモジュールからの依頼によりコマンドパケットの生成も行う。インタープリター４０９はスーパーバイザー（統括管理マネージャ）４１０が有するサブアドレス：ＳＩＤ対応表（図８）に従って、有効となっているサブアドレスから入力されたコマンドパケットのみを処理し、それ以外のサブアドレスから入力されたコマンドパケットは破棄する。
【００３５】
スーパバイザ（統括管理マネージャ）４１０は、図７から図９で示される各種データを保持し、コントローラ１０１の動作を統括管理する。スーパバイザー４１０は、自分自身が保持する各種データ、各マネージャ（フォントマネージャ４１３、フォームオーバーレイマネージャ４１４、ログマネージャ４１５、カラープロファイルマネージャ４１６、プリントマネージャ５０１−５０９、スキャンジョブマネージャ４１９およびコピージョブマネージャ６０１−６０８）が保持する各種データ、および各コントローラ（プリンタコントローラ５１０−５１２、スキャナコントローラ４２０）が保持する各種データを、入力されたコマンドの指示に従って参照・変更する。
【００３６】
セキュリティゲート４１１は、インタープリター４０９で解釈されたコマンドパケットをスーパーバイザー４１０が有するユーザ認証表およびアクセス制御表に従って、正しい使用権を持つユーザのみが、多機能周辺機器２０１を使用可能とするべくコマンドの入力を制限するものである。
【００３７】
ディスパッチャー４１２は、インタープリター４０９から入力されたコマンドを、これらを処理するための各マネージャ（フォントマネージャ４１３、フォームオーバーレイマネージャ４１４、ログマネージャ４１５、カラープロファイルマネージャ４１６、プリントマネージャ５０１−５０９、スキャンジョブマネージャ４１９およびコピージョブマネージャ６０１−６０８）に配布する。
【００３８】
フォントマネージャ４１３は、フォントの管理を行う。フォントマネージャ４１３で管理されるフォントは、ＰＤＬラスタライザ４１７および４１８に渡され、プリントジョブの処理の際に使用される。
【００３９】
フォームオーバーレイマネージャ４１４は、フォームオーバーレイの管理を行う。フォームオーバーレイマネージャ４１４で管理されるフォームオーバーレイは、ＰＤＬラスタライザ４１７および４１８に渡され、プリントジョブの処理の際に使用される。
【００４０】
ログマネージャ４１５はログの管理を行う。ログは各マネージャから出力される、ログマネージャの管理下におかれる。
【００４１】
カラープロファイルマネージャ４１６は、カラープロファイルの管理を行う。カラープロファイルマネージャ４１６で管理されるカラープロファイルは、各プリンタコントローラ５１０、５１１、５１２およびスキャナコントローラ４２０に渡され、プリントジョブ・コピージョブおよびスキャンジョブの処理の際に使用される。
【００４２】
ＰＤＬラスタライザ４１７はＰＤＬ（ページ記述言語）の一種であるポストスクリプト（ＰＳ：登録商標）でかかれたドキュメントデータを処理し、画像データを出力するＰＤＬラスタライザである。
【００４３】
ＰＤＬラスタライザ４１８はＰＤＬ（ページ記述言語）の一種であるＰＣＬでかかれたドキュメントデータを処理し、画像データを出力するＰＤＬラスタライザである。
【００４４】
スキャンジョブマネージャ４１９は、スキャンジョブの管理を行う。スキャンジョブマネージャ４１９は図１５で示されるようなデータを保持している。スキャンジョブマネージャ４１９はスキャナコントローラ４２０にスキャンの実行を指示する。
【００４５】
スキャナコントローラ４２０はスキャナエンジン３１０を制御する。スキャナコントローラ４２０はスキャナエンジン３１０の機能・状態および性能を表す、図１９で示される様なデータを保持している。
【００４６】
スキャンジョブマネージャ４１９およびスキャナコントローラ４２０はそれぞれ機能・性能を示すデータ（図１５と図１９）を有しているが、これらのデータで示される機能は必ずしも同一である必要はない。スキャンジョブマネージャ４１９が保持するデータ（図１５）をスーパバイザ４１０を通して書き換えることにより、機能を制限することが可能である。
【００４７】
図５は、図４で示したコントローラ１０１のソフトウエアブロックの補足をあらわす図である。ディスパッチャー４１２は図４で示されているディスパッチャー４１２と同じものを表わし、プリントジョブマネージャ５０１−５０９へコマンドの配布を行う。プリントジョブマネージャ５０１−５０９はプリントジョブの管理を行う。各プリントジョブマネージャは図１２で示される様なデータをそれぞれ有している。
【００４８】
各プリントジョブマネージャは、プリントジョブを処理するために使用するプリンタコントローラおよびそれに接続されたプリントエンジンが決められており、どのプリンタコントローラを使用するかは図１２で示されるデータに記述されている。ただしプリントジョブマネージャ５０８だけは、動的に使用するプリントエンジンを選択する機能を有しており、この機能を有しているということがプリントジョブマネージャ５０８の有するデータに記述されている。各プリントマネージャは入力されたプリントジョブ、およびこれらがどのプリンタコントローラでどのようなジョブとして実行されているかを表わす、図１５に示すようなデータを保持している。
【００４９】
プリンタコントローラ５１０−５１２は、プリントエンジン３０８、３１１および３１２をそれぞれ制御する。プリンタコントローラ５１０はフィニッシャー３０９も制御する。各プリンタコントローラは対応するプリンタエンジンの機能・状態および性能を表す、図１７で示される様な機能表を有している。各コントローラは入力されたプリントジョブの状態を表わす図１８に示すようなデータを保持している。
【００５０】
プリントジョブマネージャ５０１−５０９およびプリンタコントローラ５１０−５１２はそれぞれ機能・性能を示すデータ（図１２と図１７）を有している。一般的にプリントジョブマネージャは使用する各コントローラが有する性能の総和にあたる性能を有し、各コントローラが有する機能の共通項にあたる機能を有している。しかし、これらの一部はプリントジョブマネージャが保持するデータ（図１２）をスーパバイザ４１０を通して書き換えることにより、変更することが可能である。たとえば、プリントジョブマネージャ５０３とプリントジョブマネージャ５０９は、同じプリンタコントローラ５１２を使用しているために、同じ性能・機能を提供することができるが、プリントジョブマネージャの保持するデータの設定により、プリントジョブマネージャ５０３はカラー印刷可能でありプリントジョブマネージャ５０９はカラー印刷不可能とすることも出来る。
【００５１】
図６は、図４および図５で示したソフトウエアブロックの補足をあらわすものである。ディスパッチャー４１２は図４で示されているディスパッチャー４１２と同じものを表わし、コピージョブマネージャ６０１−６０８へコマンドの配布を行う。コピージョブマネージャ６０１−６０８はコピージョブの管理を行う。各コピージョブマネージャは図１６で示される様なデータをそれぞれ有している。
【００５２】
各コピージョブマネージャは、コピージョブを処理するために使用するプリンタコントローラおよびそれに接続されたプリントエンジンが決められており、どのプリンタコントローラを使用するかは図１６で示されるデータに記述されている。ただしプリントジョブマネージャ６０８だけは、動的に使用するプリントエンジンを選択する機能を有しており、この機能を有しているということがコピージョブマネージャ６０８の有するデータに記述されている。各コピーマネージャは入力されたコピージョブ、およびこれらがどのプリンタコントローラでどのようなジョブとして実行されているかを表わす、図１５に示すようなデータを保持している。
【００５３】
プリンタコントローラ５１０−５１２は、各プリントエンジンを制御するプリンタコントローラであり、図５に示されているものと同一のものを表わしている。
【００５４】
［データ構造］
＜属性表（スーパバイザ）＞
図７は、スーパーバイザー４１０が保持し管理するデータである属性表の一例を表わす。属性表はスーパバイザが持つ属性を表す。属性ＩＤの意味するところはクライアントに知らされている。この表は多機能周辺機器２０１の機能概要や接続情報およびセキュリティ情報などを表わすものである。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードは属性ＩＤ７０１、型ＩＤ７０２および値７０３から構成されている。
【００５５】
属性ＩＤ７０１は情報の種類を表わすものであり、これによって値７０３が示しているものがどのような意味を持つのかが示されている。属性ＩＤ７０１は機器内部でユニークであり、同じ属性ＩＤを持つものは、同じ情報の種類を表わしている。
【００５６】
型ＩＤ７０２は値７０３がどのようなデータ型を持っているのかを示すものであり、値７０３の解釈を行う際に使用されるものである。型ＩＤは属性ＩＤによって一意に決められるものであり機器内部でユニークに定義されている。本実施形態においては属性表の中に属性ＩＤ７０１と型ＩＤ７０２の両方が入れられているが、属性ＩＤと型ＩＤとの対応表を属性表とは別のデータとして保持し、属性表の中には属性ＩＤと値のみを入れる様に実施してもよい。値７０３は、属性ＩＤ７０１に従った属性の値を示すものである。
【００５７】
図７の属性表の属性ＩＤ７０１は、
１０：タスクタイプ，
１１：サービスＩＤ，
１００：当該属性表の中にある属性ＩＤのリスト，
１０１：スーパーバイザーでサポートしているオペレーション，
１０２：サポートしているセキュリティレベルのリスト，
１０３：現在のセキュリティレベル，
１０４：当該属性表中で管理者のみが変更できる属性ＩＤのリスト，
１０５：当該属性表中で管理者のみが取得できる属性ＩＤのリスト，
３０１：機種名，
３０２：サポートしている言語，
３０３：現在の言語，
３０４：機器の状態，
４０１：現在のカウントデータ，
４０２：カウントデータフォーマット，
４０３：カウント制限データ，
４０４：カウント単価データ，
４０５：現在の課金データ，
４０６：課金制限データ，
５０１：サポートしているイベントリスト，
５０２：イベント設定表，
５０３：イベントフォーマット表，
１００１：サブアドレス−サービスＩＤ対応表，
１００２：サービスＩＤ−タスクタイプ対応表，
１００３：ユーザ認証表，
１００４：アクセス制御表，
２００１：機器内にあるコントローラのＩＤのリスト
をそれぞれ表わす。
【００５８】
図７の属性表の型ＩＤ７０２は、
０：ブーリアン，
１：整数，
２：実数，
３：文字列，
１１：整数のリスト，
１２：実数のリスト，
１３：文字列のリスト，
３４：整数と、整数のリスト，
５２：イベント設定表形式，
５３：イベントフォーマット表形式，
１０１：サブアドレス：サービスＩＤ対応表形式，
１０２：サービスＩＤ：タスクタイプ対応表形式，
１０３：ユーザ認証表形式，
１０４：アクセス制御表形式
をそれぞれあらわす。
【００５９】
この中で、属性ＩＤ＝１０２の「サポートしているセキュリティレベルのリスト」はスーパーバイザーに対する操作を発行するときに必要とされるセキュリティレベルについて、設定可能なセキュリティレベルのリストを保持している。
【００６０】
属性ＩＤ＝１０３  の「現在のセキュリティレベル」は、現在スーパーバイザーに設定されているセキュリティレベルを表わす。
【００６１】
属性ＩＤ＝３０４の「機器の状態」は、現在のスーパーバイザーの状態を表す。ステータスコードのタイプ、および、状態を示すステータスコード（整数）のリストとして表される。
【００６２】
属性ＩＤ＝４０１の「現在のカウントデータ」はスーパーバイザーの中でカウント対象となっている情報のリストを表わしており、この意味するところは属性ＩＤ＝４０２の「カウントデータフォーマット」で表わされている。
【００６３】
属性ＩＤ＝４０２の「カウントデータフォーマット」は、属性ＩＤのリストとして表わされる。属性ＩＤは機器内でユニークに定義されているため、属性ＩＤを指定することによりカウントデータの意味を指定することが可能となっている。
【００６４】
属性ＩＤ＝４０３のカウント制限データは、属性ＩＤ＝４０１の「現在のカウントデータ」が持つことが出来る最大値を表わしており、「現在のカウントデータ」の値のうち１つでもこの最大値を超えた場合、図８で示されるサブアドレス：サービスＩＤ対応表を操作することにより全ての（マネージャによる）サービスを無効とする。
【００６５】
属性ＩＤ＝４０４のカウント単価データは、属性ＩＤ＝４０２の「カウントデータフォーマット」に保持されている属性ＩＤの１カウント毎の単価を通貨単位で表わすものである。
【００６６】
属性ＩＤ＝４０５の現在の課金データは、属性ＩＤ＝４０１の「現在のカウントデータ」と属性ＩＤ＝４０４の「カウント単価データ」の対応する値を掛け合わせて総和を取った値を示すものである。
【００６７】
属性ＩＤ＝４０６の課金制限データは、属性ＩＤ＝４０５の「現在の課金データ」の持つことが出来る最大値を表わしており、属性ＩＤ＝４０５の「現在の課金データ」が属性ＩＤ＝４０６の「課金制限データ」を超えた場合、図８で示されるサブアドレス：サービスＩＤ対応表を操作することにより全ての（マネージャによる）サービスを無効とする。
【００６８】
属性ＩＤ＝５０１のサポートしているイベントリストは、スーパーバイザーに対して通知することを設定可能なイベントを、イベントの種類毎に一意に定義されているイベントＩＤのリストによって表わしている。実際のイベント送信の設定は、図１０で示されるイベント通知表にイベント通知の接続形式および宛先をイベントＩＤと共に設定することによって行う。
【００６９】
図７の属性表の値について、「Ｔａｂｌｅ  Ｄａｔａ」と記述してあるものは、値が型ＩＤで示されている表の形式を持つデータであることを示している。
【００７０】
＜サブアドレス−サービスＩＤ対応表＞
図８はサブアドレス：サービスＩＤ対応表の一例である。サブアドレス：サービスＩＤ対応表はサービスを受けるときにどのサブアドレスにジョブを投入したらよいかを記述した表である。この表は図７で示される属性表の「サブアドレス：ＳＩＤ対応表」属性の値として保持されている。サブアドレス：ＳＩＤ対応表はどのサブアドレスにコマンドを投入すればどのサービス（例えばプリント、フォントのダウンロードなど）が得られるを示すものである。また、この表に従ってインタープリター４０９は各接続形態ごとにジョブサービスの提供をおこなうかどうかを制御する。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードは接続形式ＩＤ８０１、サブアドレス８０２、サービスＩＤ８０３、有効フラグ８０４、有効ユーザのリスト８０５および無効ユーザのリスト８０６から構成されている。
【００７１】
接続形式ＩＤ８０１は接続形態を表す識別子を示している。０はユーザインターフェース、１はネットワーク（ＴＣＰ／ＩＰ）、２はＩＥＥＥ１２８４、３はＩＥＥＥ１３９４（ＳＢＰ−２）を表している。サブアドレス８０２は各接続形態ごとのサブアドレスを表している。ユーザインターフェースはサブアドレスを有しないが、便宜上サブアドレスを割り当てており、このサブアドレス情報とともにユーザインターフェースからコマンドを投入する。サービスＩＤ８０３はサービスを表す識別子である。
【００７２】
サービスＩＤ８０３は図４、図５および図６で示された各マネージャに一対一で割り当てられており、
０：スーパーバイザー４１０，
１：プリントジョブマネージャ５０１，
２：プリントジョブマネージャ５０２，
３：プリントジョブマネージャ５０３，
４：プリントジョブマネージャ５０４，
５：プリントジョブマネージャ５０５，
６：プリントジョブマネージャ５０６，
７：プリントジョブマネージャ５０７，
８：プリントジョブマネージャ５０８，
９：プリントジョブマネージャ５０９，
１０：スキャンジョブマネージャ４１９，
１１：コピージョブマネージャ６０１，
１２：コピージョブマネージャ６０２，
１３：コピージョブマネージャ６０３，
１４：コピージョブマネージャ６０４，
１５：コピージョブマネージャ６０５，
１６：コピージョブマネージャ６０６，
１７：コピージョブマネージャ６０７，
１８：コピージョブマネージャ６０８，
１０１：フォントマネージャ４１３，
１０２：フォームオーバーレイマネージャ４１４，
１０３：ログマネージャ４１５，
１０４：カラープロファイルマネージャ４１６
をそれぞれ表わす。
【００７３】
有効フラグ８０４は、そのサブアドレスが有効かどうかを表している。この値が真の場合にはサブアドレスが有効であり、コマンドパケットをサブアドレスに対して発行することが出来る。値が偽の場合にはサブアドレスは無効であり、コマンドパケットをサブアドレスに対して発行してもパケットは破棄されることを意味する。図８の場合は、ＩＥＥＥ１２８４の接続形態を利用した場合８番のサービスを提供できない事を表している。すなわち、サブアドレスの有効にについても、図８の表で管理される。
【００７４】
有効ユーザのリスト８０５は、サブアドレスが有効の場合に、そのサービスが受けられるユーザＩＤのリストを表している。無効ユーザのリスト８０６は、サブアドレスが有効の場合でも、そのサービスが受けられるユーザＩＤのリストを表している。有効ユーザのリスト８０５と無効ユーザのリスト８０６は、どちらかにしか値を設定することは出来ない。
【００７５】
＜サービスＩＤ：タスクタイプ対応表＞
図９はサービスＩＤ：タスクタイプ対応表の一例を表す。サービスＩＤ：タスクタイプ対応表はサービスＩＤがどのような種類のサービスであるかを表す表である。この表は図７で示される属性表の「ＳＩＤ（サービスＩＤ）：タスクタイプ表」属性の値として保持されている。サービスＩＤ：タスクタイプ表はサービスＩＤがどのような種類のサービスを提供するのかを表すものである。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードはサービスＩＤ９０１およびタスクタイプ９０２から構成されている。
【００７６】
タスクタイプ９０２はどのような種類のサービスであるかを示している。０はスーパーバイザーが行うサービス、１はプリント、２はスキャン、３はコピー、１０１はフォント、１０２はフォームオーバーレイ、１０３はログ、１０４はカラープロファイルを表している。タスクタイプはＣＰＣＡのタスクタイプに相当する。
【００７７】
サービスＩＤはサービスを提供するマネージャと一対一で対応している。このため、サービスＩＤは各マネージャが有する機能表のアクセスにも使用される。機能表は各プリンタコントローラおよびスキャナコントローラも有しているために、これらにアクセスするためにプリンタコントローラおよびスキャナコントローラにもサービスＩＤに相当するコントローラＩＤを割り当てており、コントローラＩＤがどのような種類のコントローラであるかをサービスＩＤ：タスクタイプ対応表で管理している。タスクタイプ２０１はプリンタコントローラ、２０２はスキャナコントローラを表している。たとえば、ディスパッチャ４１２が各マネージャにコマンドを配信する際にも参照される。
【００７８】
コントローラＩＤは図４および図５で示された各コントローラと一対一で対応しており、
２１：プリンターコントローラ５１０，
２２：プリンターコントローラ５１１，
２３：プリンターコントローラ５１２，
２４：スキャナーコントローラ４２０
をそれぞれ表わす。
【００７９】
＜イベント設定表＞
図１０はスーパーバイザーが保持するイベント設定表の一例を表わすものである。イベント設定表は、イベントを指定して指定したイベントが発生した場合にその旨通知するあて先を登録する表である。あて先は接続形式と接続形式に依存した通知先アドレスとから構成される。
【００８０】
この表は図７で示される属性表の「イベント設定表」属性の値として保持されている。イベント設定表は指定されたイベントが機器内で起きたときにイベント通知を送信する方法と宛先を、イベントの種類毎に保持している。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードはイベントＩＤ１２０１、接続形式１２０２および通知先アドレス１２０３から構成されている。
【００８１】
イベントＩＤ１２０１は、イベントの種類を表わすものであり、機器内でユニークに定義されている。例えば、イベントＩＤ３９９は機器の状態遷移イベントを示す。接続形式１２０２は、イベント通知を送信する接続形式を表わしており、この値は図８のサブアドレス：サービスＩＤ対応表で使用されているものと同一のものが使用される。通知先アドレス１２０３は、接続形式１２０２に適合したイベントの通知先宛先を表わすものである。
【００８２】
＜イベントフォーマット表＞
図１１はスーパーバイザーが保持するイベントフォーマット表の一例を表わす。イベントフォーマット表は、イベントの内容を表す表であり、イベントＩＤごとにイベントフォーマットが定義されている。ここで定義されている内容が、指定されたイベントが起きたときにイベントＩＤごとにあらかじめ決められたデータと共に通知される。この表は図７で示される属性表の「イベントフォーマット表」属性の値として保持されている。イベントフォーマット表は機器内でユニークに定義されている各イベントＩＤについて、イベント通知として送信される付加データの形式を保持している。
【００８３】
表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードはイベントＩＤ１３０１およびイベントフォーマット１３０２から構成されている。イベントフォーマット１３０２はイベント通知として送信される付加データの形式であり、属性ＩＤのリストとして表わされる。属性ＩＤは機器内でユニークに定義されており、その型も属性ＩＤによって一意に決定されているため、属性ＩＤを指定することにより、付加データのフォーマットを表わすことができる。例えば、イベントフォーマット１３０２の属性３０４は機器の状態を示す。
【００８４】
以下に示す様に、イベントの送信方法・宛先は各マネージャおよびコントローラが保持するデータ（属性表）に設定されており、これらの各マネージャおよびコントローラ内で起きたイベントを通知することが可能となっている。これらのイベントの付加データのフォーマットも図１１で示されるイベントフォーマット表において保持されている。
【００８５】
＜属性表（プリントジョブマネージャ）＞
図１２は各プリントジョブマネージャ５０１−５０９が保持するデータである属性表の一例を表わす。この属性表はプリントジョブマネージャが持つ属性を表す。属性ＩＤの意味するところはクライアントに知らされている。この表は、プリントジョブマネージャが扱うことが可能なプリントジョブの性能・機能を表わすものである。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードの内容は図７で示されるスーパーバイザーのものと同一であり、属性ＩＤ１４０１、型ＩＤ１４０２および値１４０３から構成されている。
【００８６】
図１２の属性表の属性ＩＤ１４０１は、
１０：タスクタイプ，
１１：サービスＩＤ，
１００：当該属性表の中にある属性ＩＤのリスト，
１０１：スーパーバイザーでサポートしているオペレーション，
１０４：当該属性表中で管理者のみが変更できる属性ＩＤのリスト，
４０１：現在のカウントデータ，
４０２：カウントデータフォーマット，
４０３：カウント制限データ，
４０４：カウント単価データ，
４０５：現在の課金データ，
４０６：課金制限データ，
５０１：サポートしているイベントリスト，
５０２：イベント設定表，
６０１：サポートしているデータのダウンロード方法，
８０１：設定が禁止されている属性の組み合わせリスト（１型），
８０２：設定が禁止されている属性の組み合わせリスト（２型），
８０３：設定が禁止されている属性の組み合わせリスト（３型），
８０４：設定が禁止されている属性の組み合わせリスト（４型），
８０５：設定が禁止されている属性の組み合わせリスト（５型），
１１０１：サポートしているＰＤＬのリスト，
１１０２：カラー印刷可能かどうか，
１１０３：サポートしているフィニッシングの種類，
１１０４：設定可能最高解像度，
１１０５：設定可能最低解像度，
２００１：Ｊｏｂを実行する（可能性のある）コントローラＩＤリスト，
２００２：コントローラ自動選択かどうか，
２００３：ジョブ表，
２００４：ジョブ依頼表
をそれぞれ表わす。
【００８７】
属性ＩＤ＝６０１の「サポートしているデータのダウンロード方法」は、プリントするドキュメントデータの機器への送信方法を表わすものであり、本実施形態では、１：ジョブの中にドキュメントデータを含める方法、および、２：ジョブの中にはドキュメントデータの参照ポインタ（ＵＲＬ：Ｕｎｉｆｉｅｄ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）が含まれており、機器から必要に応じて参照ポインタで示されるドキュメントデータを読み出す方法がサポートされている。
【００８８】
属性ＩＤ＝８０１、８０２、８０３、８０４，８０５はプリントジョブマネージャに対して投入されるプリントジョブの中に設定する属性に関する制限を表す禁止設定属性である。これらは、例えばコピー部数が１００を超える場合は、フィニッシャの設定が不能になるなどといった制限事項を表すために使用される。禁止設定属性には、その制限の表現方法として５つの型がある。
【００８９】
属性ＩＤ＝８０１は、｛属性ＩＤ１：｛属性ＩＤ２｝｝で示す様に、ある属性ＩＤ１に対して別の属性ＩＤ２のリストの対を複数保持している。これは属性ＩＤ１の設定がなされている場合は各属性ＩＤ２の設定をプリントジョブスクリプトの中で行えないことを意味している。
【００９０】
属性ＩＤ＝８０２は、｛属性ＩＤ１：演算子識別子：値：｛属性ＩＤ２｝｝で示す様に、ある属性ＩＤ１、演算子識別子および値に対して、別の属性ＩＤ２のリストの対を複数保持している。これは属性ＩＤ１に対して演算子識別子で示される演算子を値に対して適用した結果が真の場合は、各属性ＩＤ２の設定をプリントジョブスクリプトの中で行えないことを意味している。演算子識別子は整数値が２項演算に対して一対一で対応している。例えば、０は「＝（等しい）」を表す。
【００９１】
属性ＩＤ＝８０３は、｛属性ＩＤ１：演算子識別子１：値１：｛属性ＩＤ２：演算子識別子２：値２｝｝で示す様に、ある属性ＩＤ１、演算子識別子１および値１に対して，別の属性ＩＤ２，演算識別子２および値２の組のリストの対を複数保持している。これは属性ＩＤ１に対して演算子識別子１で示される演算子を値１に対して適用した結果が真の場合は、各属性ＩＤ２に対して演算子識別子２示される演算子を値２に対して適用した結果が真になる様な設定はプリントジョブスクリプトの中で行えないことを表す。
【００９２】
属性ＩＤ＝８０４は、｛（属性ＩＤ１：演算子識別子１：値１）：演算識別子３：（属性ＩＤ２：演算子識別子２：値２）：｛属性ＩＤ３｝｝で示す様に、ある属性ＩＤ１、演算子識別子１および値１と演算識別子３と別の属性ＩＤ２、演算識別子２および値２とに対して，さらに別の属性ＩＤ３のリストの対を複数保持している。これは属性ＩＤ１に対して演算子識別子１で示される演算子を値１に対して適用した結果と属性ＩＤ２に対して演算子識別子２で示される演算子を値２に対して適用した結果とを演算子識別子３で示される演算をした結果が真の場合は、各属性ＩＤ３に対する設定はプリントジョブスクリプトの中で行えないことを表す。
【００９３】
属性ＩＤ＝８０５は、｛（属性ＩＤ１：演算子識別子１：値１）：演算識別子３：（属性ＩＤ２：演算子識別子２：値２）：｛属性ＩＤ４：演算識別子４：値４｝｝で示す様に、ある属性ＩＤ１、演算子識別子１および値１と演算識別子３と別の属性ＩＤ２、演算識別子２および値２とに対して，さらに別の属性ＩＤ４、演算識別子４および値４の組のリストの対を複数保持している。これは属性ＩＤ１に対して演算子識別子１で示される演算子を値１に対して適用した結果と属性ＩＤ２に対して演算子識別子２で示される演算子を値２に対して適用した結果とを演算子識別子３で示される演算をした結果が真の場合は、各属性ＩＤ４に対して演算し４で示される演算を値４に対して適用した結果が新になる様な設定はプリントジョブスクリプトの中で行えないことを表す。
【００９４】
属性ＩＤ＝２００１の「Ｊｏｂを実行する（可能性のある）コントローラＩＤリスト」は、プリントジョブを実行するコントローラのコントローラＩＤのリストであり、プリントジョブマネージャ５０８以外のプリントジョブマネージャは必ずジョブを実行するコントローラのリストとなっている。プリントジョブマネージャ５０８はコントローラをジョブの要求している機能によって動的にコントローラを選択するため、この属性はコントローラを選択する範囲を表わすものとなっている。
【００９５】
属性ＩＤ＝２００２の「コントローラ自動選択かどうか」は、プリントジョブマネージャがコントローラを自動選択するかどうかが表わされている。当実施例では、プリントジョブマネージャ５０８のみがこの値を真としている。
【００９６】
属性ＩＤ＝２００３および２００４に関しては、図１３，１５Ｂを参照して後述する。
【００９７】
他の属性ＩＤについては図７のスーパーバイザーの属性表で使用されているものと同一である。ただし、設定の範囲および影響が及ぶ範囲は、属性表が属しているプリントジョブマネージャの管理下にあるものに限定されている。例えば、属性値＝１０１の「サポートしているオペレーション」は、このプリントジョブマネージャに対して発行できるオペレーションのリストであり、属性値＝４０６の「課金制限データ」はこのプリントジョブマネージャで実行したプリントジョブに関して課金の制限を加えるものである。課金の制限を超えた場合の取り扱いも、このプリントジョブマネージャのサービスを無効とするのみで、他のマネージャのサービスには影響を与えない。
【００９８】
図１２の属性表の型ＩＤの値１４０２は、
０：ブーリアン，
１：整数，
２：実数，
３：文字列，
１１：整数のリスト，
１２：実数のリスト，
１３：文字列のリスト，
５２：イベント設定表形式，
８１：：禁止属性組み合わせリスト１形式，
８２：：禁止属性組み合わせリスト２形式，
８３：：禁止属性組み合わせリスト３形式，
８４：：禁止属性組み合わせリスト４形式，
８５：：禁止属性組み合わせリスト５形式，
２０３：ジョブ表形式，
２０４：ジョブ依頼表形式
を表わす。
【００９９】
禁止属性組み合わせリスト１−５形式とは、上述した設定が禁止されている族制の組み合わせリストの第１〜第５の型であり、データ型はそれぞれ以下の通りに定義されている。
・禁止属性組み合わせリスト１形式：｛属性ＩＤ１：｛属性ＩＤ２｝｝，
・禁止属性組み合わせリスト２形式：｛属性ＩＤ１：演算子識別子：値：｛属性ＩＤ２｝｝，
・禁止属性組み合わせリスト３形式：｛属性ＩＤ１：演算子識別子１：値１：｛属性ＩＤ２：演算子識別子２：値２｝｝，
・禁止属性組み合わせリスト４形式：｛（属性ＩＤ１：演算子識別子１：値１）：演算識別子３：（属性ＩＤ２：演算子識別子２：値２）：｛属性ＩＤ３｝｝，
・禁止属性組み合わせリスト５形式：｛（属性ＩＤ１：演算子識別子１：値１）：演算識別子３：（属性ＩＤ２：演算子識別子２：値２）：｛属性ＩＤ４：演算識別子４：値４｝｝。
ジョブ表形式とは、図１３に例示した、ジョブＩＤとジョブファイル名とを対応付けた表形式を表す。ジョブ依頼表形式とは、図１４に例示した、ジョブＩＤ−コントローラ−ジョブＩＤを対応付けた表の形式である。そのほかの型ＩＤについては図７のスーパーバイザーの属性表で使用されているものと同一である。
【０１００】
図１３はプリントジョブマネージャが保持するジョブ表の一例である。ジョブ表は、プリントマネージャが管理するジョブの実体を保持するファイル名とジョブＩＤとを対応付ける表である。この表は図１２で示される属性表の「ジョブ表」属性値２００３の値として保持されている。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードはジョブＩＤ１５Ａ０１およびジョブの実体が保持されているファイル名１５Ａ０２から構成されている。
【０１０１】
ジョブＩＤ１５Ａ０１はプリントジョブマネージャにジョブが投入されたときに、プリントジョブマネージャが割り当てたジョブに対する識別子である。ジョブのファイル名１５Ａ０２は、ジョブの実体が保持されているファイルの名前である。ジョブの実体は属性ＩＤ、属性値サイズおよび属性値の組を複数持つことにより構成されている。
【０１０２】
図１４はプリントジョブマネージャが保持するジョブ依頼表の一例を表わす。ジョブ依頼表は、プリントマネージャが管理するジョブとコントローラによって実行されるジョブとの関係を示す表である。この表は図１２で示される属性表の「ジョブ依頼表」属性値２００４の値として保持されている。
【０１０３】
ジョブ依頼表は、プリントジョブマネージャが管理するジョブがどのコントローラでどのジョブとして実行されているかを表わすものである。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードはジョブＩＤ１５Ｂ０１、コントローラＩＤ１５Ｂ０２およびコントローラの中で割り当てられているジョブＩＤ１５Ｂ０３から構成されている。
【０１０４】
ジョブＩＤ１５Ｂ０１はプリントジョブマネージャにジョブが投入されたときに、プリントジョブマネージャが割り当てたジョブに対する識別子であり、ジョブ表（図１３）にあるジョブＩＤ１５Ａ０１と対応している。コントローラＩＤ１５Ｂ０２はジョブが実行されているコントローラのＩＤを表わす。ジョブＩＤ１５Ｂ０３は、ジョブを実行するコントローラが割り当てたジョブの識別子である。
【０１０５】
＜属性表（スキャンジョブマネージャ）＞
図１５はスキャンジョブマネージャ４１９が保持するデータである属性表の一例を表わす。この属性表はスキャンマネージャが持つ属性を表す。属性ＩＤの意味するところはクライアントに知らされている。この表は、スキャンジョブマネージャが扱うことが可能なスキャンジョブの性能・機能を表わすものである。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードの内容は図７で示されるスーパーバイザーのものと同一であり、属性ＩＤ１６０１、型ＩＤ１６０２および値１６０３から構成されている。
【０１０６】
図１５の属性表の属性ＩＤ１６０１は、
１０：タスクタイプ，
１１：サービスＩＤ，
１００：当該属性表の中にある属性ＩＤのリスト，
１０１：スーパーバイザーでサポートしているオペレーション，
１０４：当該属性表中で管理者のみが変更できる属性ＩＤのリスト，
４０１：現在のカウントデータ，
４０２：カウントデータフォーマット，
４０３：カウント制限データ，
４０４：カウント単価データ，
４０５：現在の課金データ，
４０６：課金制限データ，
５０１：サポートしているイベントリスト，
５０２：イベント設定表，
６０２：サポートしているデータのアップロード方法，
１２０１：出力可能な画像フォーマットのリスト，
１２０２：カラースキャン可能か，
１２０３：設定可能な解像度のリスト，
２００１：ジョブを実行するコントローラＩＤリスト，
２００２：コントローラ自動選択可能かどうか，
２００３：ジョブ表
をそれぞれ表わす。
【０１０７】
属性ＩＤ＝６０２の「サポートしているデータのアップロード方法」は、スキャンしたドキュメントデータの機器への送信方法を表わすものであり、本実施形態では１：ジョブの返信中にドキュメントデータを含める方法、および２：ドキュメントデータを機器内に保持しておきジョブの返信中にはドキュメントデータへの参照ポインタ（ＵＲＬ）を含めておき、ホスト（クライアント）から必要に応じて参照ポインタで示されるドキュメントデータを読み出す方法がサポートされている。
【０１０８】
属性ＩＤ＝１２０１の「出力可能な画像フォーマットのリスト」は、出力可能な画像のデータフォーマットを表わしており、スキャンジョブを発行する際にこの中にあるものの１つをデータフォーマットとして指定することが出来る。
【０１０９】
属性ＩＤ＝１２０２の「カラースキャン可能か」は、文字通りカラー画像データを出力できるか否かを表わしている。
【０１１０】
属性ＩＤ＝１２０３の「設定可能な解像度のリスト」は、設定可能な画像の解像度を表わしており、スキャンジョブを発行する際にこの中にあるものの１つを読み取り解像度として指定することが出来る。
【０１１１】
属性ＩＤ＝２００３のジョブ表に関しては、図１３，１５Ｂで示されたプリントジョブマネージャが保持するものと同一である。
【０１１２】
他の属性ＩＤについては図７のスーパーバイザーの属性表で使用されているものと同一である。ただし、設定の範囲および影響が及ぶ範囲は、属性表が属しているスキャンジョブマネージャの管理下にあるものに限定されている。
【０１１３】
図１５の属性表の型ＩＤの値１６０２は、
０：ブーリアン，
１：整数，
２：実数，
３：文字列，
１１：整数のリスト，
１２：実数のリスト，
１３：文字列のリスト，
５２：イベント設定表形式，
２０３：ジョブ表形式
を表わす。これらの型ＩＤについては図７のスーパーバイザーの属性表で使用されているものと同一である。
【０１１４】
＜属性表（コピージョブマネージャ）＞
図１６は各コピージョブマネージャ６０１−６０８が保持するデータである属性表の一例を表わす。この表は、コピージョブマネージャが扱うことが可能なコピージョブの性能・機能を表わすものである。属性ＩＤの意味するところはクライアントには知らされている。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードの内容は図７で示されるスーパーバイザーのものと同一であり、属性ＩＤ１７０１、型ＩＤ１７０２および値１７０３から構成されている。
【０１１５】
図１６の属性表の属性ＩＤ１７０１は、
１０：タスクタイプ，
１１：サービスＩＤ，
１００：当該属性表の中にある属性ＩＤのリスト，
１０１：スーパーバイザーでサポートしているオペレーション，
１０４：当該属性表中で管理者のみが変更できる属性ＩＤのリスト，
４０１：現在のカウントデータ，
４０２：カウントデータフォーマット，
４０３：カウント制限データ，
４０４：カウント単価データ，
４０５：現在の課金データ，
４０６：課金制限データ，
５０１：サポートしているイベントリスト，
５０２：イベント設定表，
１３０２：カラー印刷可能か，
１３０３：サポートしているフィニッシングの種類，
１３０４：設定可能最高解像度，
１３０５：設定可能最低解像度，
２００１：ジョブを実行する（可能性のある）コントローラＩＤリスト，
２００２：コントローラ自動選択かどうか，
２００３：ジョブ表
をそれぞれ表わす。
これらの属性ＩＤに関しては、プリントジョブマネージャおよびスキャンジョブマネージャの説明の中で示されたものと同一である。
【０１１６】
図１６の属性表の型ＩＤの値１７０２は、
０：ブーリアン，
１：整数，
２：実数，
３：文字列，
１１：整数のリスト，
１２：実数のリスト，
１３：文字列のリスト，
５２：イベント設定表形式，
２０３：ジョブ表形式
を表わす。これらの型ＩＤについては図７のスーパーバイザーの属性表で使用されているものと同一である。
【０１１７】
＜属性表（プリンタコントローラ）＞
図１７は各プリンタコントローラ５１０、５１１、５１２が保持するデータである属性表を表わす。この表は、プリンタコントローラが制御しているプリントエンジンおよびフィニッシャーの性能・機能を表わすものであり、性能・機能に関する値は書き換えが出来ない。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードの内容は図７で示されるスーパーバイザーのものと同一であり、属性ＩＤ２８０１、型ＩＤ２８０２および値２８０３から構成されている。
【０１１８】
図１７の属性表の属性ＩＤ２８０１は、
１２：コントローラタイプ，
１３：コントローラＩＤ，
１００：当該属性表の中にある属性ＩＤのリスト，
１０４：当該属性表中で管理者のみが変更できる属性ＩＤのリスト，
４０１：現在のカウントデータ，
４０２：カウントデータフォーマット，
４０３：カウント制限データ，
４０４：カウント単価データ，
４０５：現在の課金データ，
４０６：課金制限データ，
５０１：サポートしているイベントリスト，
５０２：イベント設定表，
５００１：カラー印刷可能かどうか，
５００２：サポートしているフィニッシングの種類，
５００３：設定可能最高解像度，
５００４：設定可能最低解像度，
５００５：ジョブキュー表
をそれぞれ表わす。
【０１１９】
ジョブＩＤ＝１２，１３，５００１，５００２，５００３，５００４，５００５については上記リストの通りである。他の属性ＩＤについては図７のスーパーバイザーの属性表で使用されているものと同一である。ただし、設定の範囲および影響が及ぶ範囲は、属性表が属しているプリンタコントローラの管理下にあるものに限定されている。
【０１２０】
図１７の属性表の型ＩＤの値２８０２は、
０：ブーリアン，
１：整数，
２：実数，
３：文字列，
１１：整数のリスト，
１２：実数のリスト，
１３：文字列のリスト，
５２：イベント設定表形式，
５００：ジョブキュー表形式
を表わす。型ＩＤ＝５００は、図１８に示すジョブ表の型を表す。他の型ＩＤについては図７のスーパーバイザーの属性表で使用されているものと同一である。
【０１２１】
図１８はプリンタコントローラが保持するジョブキュー表を表わすものである。この表は図１７で示される属性表の「ジョブキュー表」属性値の値として保持されている。ジョブキュー表は、プリンタコントローラが管理・実行するジョブがどの様な状態にあるのかを表わすものである。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードはジョブＩＤ２９０１、ジョブステータス２９０２およびジョブの実体が保持されているファイル名２９０３から構成されている。
【０１２２】
ジョブＩＤ２９０１はプリンタコントローラにジョブが投入されたときに、プリンタコントローラが割り当てたジョブに対する識別子である。
【０１２３】
ジョブステータス２９０２ばジョブの状態を表わすものであり、１はジョブの終了処理中、２はジョブがエンジンで実行中、３は実行待ち状態であることを示す。
【０１２４】
ジョブのファイル名２９０３は、ジョブの実体が保持されているファイルの名前である。ジョブの実体は、属性ＩＤ、属性値サイズおよび属性値の組を複数持つことにより構成されている。
【０１２５】
＜属性表（スキャナコントローラ）＞
図１９はスキャナコントローラ４２０が保持するデータである属性表の一例を表わす。この表は、スキャナコントローラが制御しているスキャナエンジン性能・機能を表わすものであり、性能・機能に関する値は書き換えが出来ない。表は各行が１つの情報単位（レコード）を表わしており、複数のレコードの集合としてデータは構成されている。各レコードの内容は図７で示されるスーパーバイザーのものと同一であり、属性ＩＤ３００１、型ＩＤ３００２および値３００３から構成されている。
【０１２６】
図１９の属性表の属性ＩＤ３００１は、
１２：コントローラタイプ，
１３：コントローラＩＤ，
１００：当該属性表の中にある属性ＩＤのリスト，
１０４：当該属性表中で管理者のみが変更できる属性ＩＤのリスト，
４０１：現在のカウントデータ，
４０２：カウントデータフォーマット，
４０３：カウント制限データ，
４０４：カウント単価データ，
４０５：現在の課金データ，
４０６：課金制限データ，
５０１：サポートしているイベントリスト，
５０２：イベント設定表，
６００１：カラースキャン可能かどうか，
６００２：最大原稿サイズ，
６００３：設定可能最高解像度，
６００４：設定可能最低解像度，
をそれぞれ表わす。
【０１２７】
ジョブＩＤ＝６００１，６００２，６００３，６００４については上記リストの通りである。他の属性ＩＤについては図１９のスーパーバイザーの属性表で使用されているものと同一である。ただし、設定の範囲および影響が及ぶ範囲は、属性表が属しているプリンタコントローラの管理下にあるものに限定されている。
【０１２８】
属性表の型ＩＤの値３００２は、
０：ブーリアン，
１：整数，
２：実数，
３：文字列，
１１：整数のリスト，
１２：実数のリスト，
１３：文字列のリスト，
５２：イベント設定表形式
を表わす。すべて図７のスーパーバイザーの属性表で使用されているものと同一である。
【０１２９】
［クライアント側の処理フロー］
＜クライアントのソフトウエア構成＞
図２０は、多機能周辺機器２０１を利用するクライアント２０２、２０３、２０４、２０５のソフトウエアブロック図を表す。
【０１３０】
ユーザインターフェースＡ０１は、各ドライバＡ０５〜Ａ０７およびユーティリティーからＡ０８〜Ａ１４は多機能周辺機器２０１の持つ情報を表示する。
【０１３１】
データベースＡ０２は現在使用中の多機能周辺機器２０１の情報を保持するデーターベースであり、クライアントが多機能周辺機器２０１に接続した段階で、機器情報取得部Ａ０３が機器の持つ全ての情報を取得してデータベースＡ０２の中に保持する。
【０１３２】
規定データベースＡ０４は、多機能周辺機器２０１が保持する各属性表の中で使用される、各属性の意味、各属性ＩＤ毎のデータ型、イベントＩＤ毎に規定されているパラメータのフォーマット、タスクタイプの意味などの規定情報を保持している。各ドライバおよびユーティリティーＡ０５〜Ａ１４は、規定データベースＡ０４および機器情報Ａ０２に基づき動作する。
【０１３３】
プリンタドライバＡ０５は、クライアントＰＣ上で動作するアプリケーションプログラムからの指示によりプリントジョブスクリプトを生成する。
【０１３４】
スキャナドライバＡ０６は、クライアントＰＣ上で動作するアプリケーションプログラムからの指示によりスキャンジョブスクリプトを生成する。
【０１３５】
コピードライバＡ０７は、クライアントＰＣ上で動作するアプリケーションプログラムからの指示によりコピージョブスクリプトを生成する。
【０１３６】
フォント管理ユーティリティＡ０８は、フォントデータのダウンロードおよびアップロードを行うジョブを生成し、フォントデータを管理するコマンドを生成する。
【０１３７】
フォームオーバーレイ管理ユーティリティＡ０９は、フォームオーバーレイデータのダウンロードおよびアップロードを行うジョブを生成し、フォームオーバーレイを管理するコマンドを生成する。
【０１３８】
ログ管理ユーティリティＡ１０は、ログデータのダウンロードおよびアップロードを行うジョブを生成し、ログを管理するコマンドを生成する。
【０１３９】
カラープロファイル管理ユーティリティＡ１１は、カラープロファイルデータのダウンロードおよびアップロードを行うジョブを生成し、カラープロファイルを管理するコマンドを生成する。
【０１４０】
ジョブ管理ユーティリティＡ１２は、プリントジョブ・スキャンジョブ・コピージョブの削除・一時停止・実行再開などの管理をおこなうコマンドを生成する。
【０１４１】
機器管理ユーティリティＡ１３は、プリンタコントローラ・スキャナコントローラの状態を取得するコマンドを生成する。
【０１４２】
課金管理ユーティリティＡ１４は、課金データの取得するコマンドを生成する。
【０１４３】
ジェネレータＡ１５は、各ドライバおよびユーティリティーＡ０５〜Ａ１４から生成されたコマンドを基にコマンドパケットを生成する。生成されたコマンドパケットは、トランスポート処理モジュールＡ１６、Ａ１８、Ａ２０各々を利用して多機能周辺機器２０１に送信される。ジェネレータＡ１５は、トランスポート処理モジュールＡ１６、Ａ１８、Ａ２０各々から入力された返信パケットおよびイベントパケットを解釈し、適当なドライバまたはユーティリティに配布する。
【０１４４】
ＳＢＰ−２モジュールＡ１６は、ＩＥＥＥ１３９４のトランスポート層であるＳＢＰ−２の処理モジュールである。
【０１４５】
ＴＣＰ／ＩＰ・ＵＤＰ／ＩＰモジュールＡ１８は、ＴＣＰ／ＩＰおよびＵＤＰ／ＩＰの処理モジュールである。
【０１４６】
ＩＥＥＥ１２８４．４モジュールＡ２０は、ＩＥＥＥ１２８４のトランスポート層であるＩＥＥＥ１２８４．４の処理モジュールである。
【０１４７】
ＩＥＥＥ１３９４インターフェースＡ１７は、ＩＥＥＥ１３９４の物理層を処理するインターフェースである。
【０１４８】
ネットワークインターフェースＡ１９は、ＬＡＮ等のネットワークインターフェースである。
【０１４９】
１ＥＥＥ１２８４インターフェースＡ２１は、ＩＥＥＥ１２８４の物理層を処理するインターフェースである。
【０１５０】
コード変換ライブラリＡ２２は、ステータスコード間の変換処理を行なう。ジェネレータＡ１５からの問い合わせに応じて、Ａタイプのステータスコードに変換を行なう。この処理の内容については、後で図２３にて説明する。このコード変換ライブラリＡ２２は、少なくともクライアント２０４には存在する。クライアント２０２、２０３、２０５には存在しなくても構わない。
【０１５１】
Ａ２３は、コード変換ライブラリＡ２２がステータスコード間の変換処理を行なう際に使用するステータスコード対応表である。この表については、あとで図２２において詳しく説明を行なう。
【０１５２】
図２０はまた、多機能周辺機器２０１のソフトウエアブロック図（図４）におけるユーザーインターフェースマネージャ４０５の内部構成を表すものでもある。ユーザインターフェースマネージャ４０５の場合は、図２０におけるＳＢＰ−２処理モジュールＡ１６、ＴＣＰ／ＩＰおよびＵＤＰ／ＩＰ処理モジューＡ１８、ＩＥＥＥ１２８４．４処理モジュールＡ２０、ネットワークインターフェースＡ１７、ネットワークインターフェースＡ１９、ＩＥＥＥ１２８４インターフェースＡ２１は存在せず、ジェネレータＡ１５が図４におけるインタープリター４０９に直接接続されており、これによってコマンドパケット・返信パケット・イベントパケットのやり取りが行われている。この直接接続は他のクライアント２０２、２０３、２０４、２０５のソフトウエア構成には存在していない。
【０１５３】
＜ジョブ管理コマンドの発行＞
図２１は、ジョブ管理ユーティリティＡ１２が、ジョブ管理コマンドを発行する場合の処理フローを表す。
【０１５４】
ステップＭ０１において、対象とするマネージャのサービスＩＤをパラメータとしてマネージャが保持するジョブ表（図１３）を取得する。
【０１５５】
ステップＭ０２において、取得したジョブ表に含まれるジョブリストの中から適当な方法で管理対象とするジョブの持つジョブＩＤを選択する。選択手段としては、ユーザインターフェース
Ａ０１にジョブのリストを表示し、ユーザに選択させる方法などが含まれる。
【０１５６】
ステップＭ０３において、指定されたジョブＩＤをパラメータとするジョブ管理用コマンドを生成し、発行し終了する。
【０１５７】
ジョブ管理コマンドを受信した多機能周辺機器２０１のスーパーバイザーは指示されたジョブの管理を行う。
【０１５８】
＜ステータス変換処理＞
図２２は、ステータスコード対応表で、複数のステータスコード体系間の対応関係を表す一例である。これは、図２０におけるステータスコード対応表Ａ２３、後述の図２５におけるコード変換ボックスのステータスコード対応表４８０７、同じく図２６におけるサーバのステータスコード対応表４９０５などに相当する。
【０１５９】
この図２２は４タイプのステータスコード体系間の対応関係を示している。各列がそれぞれ一つのステータスコード体系である。すなわち、Ｎ０１列にはＡタイプのステータスコード、Ｎ０２列にＢタイプのステータスコード、Ｎ０３列にＣタイプのステータスコード、Ｎ０４列にＤタイプのステータスコードのコードが列記されている。
【０１６０】
そして、各行には同じ状態を示す各ステータスコード体系のコードが列記されている。例えば、Ｎ１１行には「ジャム状態」を示す各ステータスコード体系のコードが列記されている。すなわち、Ａタイプのステータスコードにおいては４００１００００が、Ｂタイプのステータスコードにおいては３０１８０００が、Ｃタイプのステータスコードにおいては４０９１３が、Ｄタイプのステータスコードにおいては３０１００００が、「ジャム状態」を意味していることになる。
【０１６１】
同様に、Ｎ１２は「カバーオープン状態」を、Ｎ１３は「用紙補給状態」を、Ｎ１４は「メモリフル状態」を意味する、各ステータスコード体系のコードが列記されている。
【０１６２】
ステータスコード間変換処理の際には、このステータスコード対応表を用いて、例えばＢタイプのステータスコードの３０１８０００というコードは、Ａタイプのステータスコードでは４００１００００というコードに相当する、といった変換処理を行なう。
【０１６３】
図２３は、ステータスコード間のコード変換問い合わせを受けた際の、ステータスコード間の変換処理を行なう処理フローを表す。本処理は、図２０に示すクライアントのコード変換ライブラリＡ２２、コード変換ボックスのコード変換ライブラリ４８０６、サーバのコード変換ライブラリ４９０４が行なう処理である。
【０１６４】
ステップＯ０１において、問い合わせ側から渡されたステータスコードのタイプおよびコードから、一致するレコードを図２２のステータスコード表から探し出す。
【０１６５】
ステップＯ０２において、探し出したレコードの、ＡタイプのステータスコードのコードＮ０１を得る。
【０１６６】
ステップＯ０３において、その得たコードを返却する。
【０１６７】
以上により、問い合わせ側が問い合わせたタイプのステータスコードのコードに相当するＡタイプのステータスコードのコードが、問い合わせ側に返却されることになる。
【０１６８】
＜コード変換ボックスの構成＞
図２４は、コード変換ボックス２０９のコントローラのハードウエア構成を表すものである。
【０１６９】
コントローラの内部では、ＣＰＵ４７０１がバス４７０６を介して、ＲＡＭ４７０２・ＲＯＭ４７０４に接続されている。
【０１７０】
図２３で示されるソフトウエアブロックを有するプログラムおよび各種データはＲＡＭ４７０２またはＲＯＭ４７０４に書き込まれており、これらをＣＰＵ４７０１が順次読みだしながら実行することにより、コントローラは動作する。
【０１７１】
バス４７０６には、ＩＥＥＥ１２８４インターフェース４７０３・ＩＥＥＥ１２８４インターフェース４７０５が接続されている。これらは、それぞれ図２５のＩＥＥＥ１２８４インターフェース４８０１・ＩＥＥＥ１２８４インターフェース４８０２に対応するものであり、ＣＰＵ４７０１がこれらのインターフェースからデータを読み込みまたは書き込むことによりそれぞれのインターフェースを使用した通信を行う。
【０１７２】
図２５は、コード変換ボックス２１０のソフトウエア構成を表すものである。
【０１７３】
ＩＥＥＥ１２８４ドライバ４８０１、４８０２は、それぞれ図２４のＩＥＥＥ１２８４インターフェース４７０３、４７０５の制御を行う。
【０１７４】
モジュール４８０３、４８０４はＩＥＥＥ１２８４．４の処理モジュールである。ＩＥＥＥ１２８４．４は主にＩＥＥＥ１２８４インターフェースで使用されることを目的としたトランスポート層の標準である。ＩＥＥＥ１２８４．４の処理モジュール（４８０３）、（４８０４）は、それぞれＩＥＥＥ１２８４ドライバ（４８０１）、（４８０２）から出力されたトランスポートパケットの処理をおこないコマンドパケットを抽出してインタープリター４８０５に出力する。また、インタープリター４８０５から出力されたコマンドパケットからトランスポートパケットの生成を行い、ＩＥＥＥ１２８４ドライバ（４８０１）、（４８０２）に出力する。
【０１７５】
パケットインタプリタ４８０５は、各トランスポート処理部４８０３・４８０４から入力されたコマンドパケットを解釈しコマンドを生成するパケットインタープリターである。パケットインタープリター４８０５は他のモジュールからの依頼によりコマンドパケットの生成も行う。
【０１７６】
コード変換ライブラリ４８０６は、ステータスコード間の変換処理を行なう。パケットインタープリター４８０５からの問い合わせに応じて、Ａタイプのステータスコードに変換を行なう。この処理の内容については、図２３にて説明した。
【０１７７】
ステータスコード対応表４８０７は、コード変換ライブラリが４８０６ステータスコード間の変換処理を行なう際に使用される。この表については、既に図２２において詳しく説明を行なった。
【０１７８】
パケットインタープリター４８０５は、一方のＩＥＥＥ１２８４．４処理モジュールから得たコマンドパケットを他方のＩＥＥＥ１２８４．４処理モジュールに送る役割をする。パケットインタープリター４８０５は、基本的には得たコマンドパケットをそのまま送るのだが、図２３で説明したステータスコード間のコード変換処理機能を有しており、必要に応じて、コマンドパケット内のデータを変換するフィルタ処理を行なう。本発明の場合、多機能周辺機器２０１から送られてきたＡタイプ以外のステータスコードのコードを、Ａタイプのステータスコードのコードに変換してクライアントＰＣ２０５に送り、それ以外のコマンドパケットは、そのまま素通りでクライアントＰＣ２０５に送ることになる。また、クライアントＰＣ２０５から送られてきたコマンドパケットは、ステータスコードを変換する必要が無いので、全てそのまま素通りで多機能周辺機器２０１に送る。
【０１７９】
以上により、多機能周辺機器２０１が、どのタイプのステータスコードを実装していても、クライアントＰＣ２０５の機器管理ユーティリティＡ１３をはじめとするＡ０５からＡ１４で示される各ドライバおよびユーティリティーは、Ａタイプのステータスコードにのみ対応しておけば十分であることになる。
【０１８０】
＜サーバのソフトウエア構成＞
図２６は、サーバ２０９のソフトソフトウエア構成を表すものである。本サーバ２０９は、ステータスコード間のコード変換処理を行なう目的に特化している例を示す。もちろん、コード変換処理以外のいかなる機能を有していても構わない。
【０１８１】
ネットワークインターフェース４９０１は、ＬＡＮ等のネットワークに接続するためのインターフェースである。
【０１８２】
モジュール４９０２は、ＴＣＰ／ＩＰおよびＵＤＰ／ＩＰの処理モジュールである。
【０１８３】
インタプリタ４９０３は、多機能周辺機器２０１からの問い合わせ内容を認識し、返信パケットを生成する。インタープリタ４９０３は、４９０２のトランスポート処理モジュールから入力された問い合わせパケットを解釈し、コード変換ライブラリ４９０４にコード変換の問い合わせを行ない、得られた返答を４９０２のトランスポート処理モジュールを利用して多機能周辺機器２０１に返信する。
【０１８４】
コード変換ライブラリ４９０４は、ステータスコード間の変換処理を行なう。インタープリタ４９０３からの問い合わせに応じて、Ａタイプのステータスコードに変換を行なう。この処理の内容については、図２３にて説明した。
【０１８５】
４９０５は、コード変換ライブラリ４９０４がステータスコード間の変換処理を行なう際に使用するステータスコード対応表である。この表については、既に図２２において詳しく説明を行なった。
【０１８６】
＜クライアントにおける多機能周辺機器からのイベント処理＞
多機能周辺機器２０１から機器の状態遷移イベントが発行されてから、各クライアントでそのイベント通知を受けて、対応する処理を行なうまでの流れを示す。
［あ］クライアント２０２および２０３，
［い］クライアント２０４，
［う］クライアント２０５
の３種類に分けて、以下説明していく。
【０１８７】
例として、ジャム状態が発生した場合の例を示す。ジャム状態は、Ａタイプのステータスコードだと４００１００００で、Ｂタイプのステータスコードだと３０１８０００で示される。
【０１８８】
なお、多機能周辺機器２０１はＢタイプのステータスコードを実装しており、クライアント２０２から２０５の各機器管理ユーティリティＡ１３はＡタイプのステータスコードを実装しているとする。
【０１８９】
［あ］クライアント２０２および２０３の場合（図２、図２０、図２６参照）：
（１）「Ｂタイプ：３０１８０００」を示す状態遷移イベントが、多機能周辺機器２０１からクライアント２０２あるいは２０３に届く。
（２）クライアント２０２あるいは２０３のジェネレータＡ１５が、サーバ２０９に「Ｂタイプ：３０１８０００」の変換要求を送付する。
（３）サーバ２０９のインタープリター４９０３が、コード変換ライブラリ４９０４に「Ｂタイプ：３０１８０００」を渡し、コード変換を依頼する。
（４）コード変換ライブラリ４９０４からインタープリター４９０３に、「Ａタイプ：４００１００００」と返答される。
（５）サーバ２０９からクライアント２０２あるいは２０３に、「Ａタイプ：４００１００００」という変換結果が届く。
（６）クライアント２０２あるいは２０３のジェネレータＡ１５は機器管理ユーティリティＡ１３に「Ａタイプ：４００１００００」を配布する。
（７）機器管理ユーティリティＡ１３が、「Ａタイプ：４００１００００」を処理する。
【０１９０】
このように、サーバにより、多機能周辺機器の出力するタイプからクライアントが用いるタイプへとステータスコード系を変換する。
【０１９１】
この場合、多機能周辺機器２０１から出力されるステータスのタイプは、ステータスのコード自体から判別できる場合には、そのステータスの値に基づいて判別される。図２２の例では、整数第８桁目が「４」であるのはＡタイプだけであるので、これに該当すればＡタイプであると判別できる。さらに、図２２のステータスコード対応表のエントリがすべて表中で唯一の値であれば、ステータス対応表をタイプの判別にも利用できる。また、重複するエントリがあっても、図２２のＢタイプとＤタイプのようにそれらが同じ意味を有していればユニークに識別する必要はないため、この場合にもステータス対応表からステータスのタイプを判別できる。
【０１９２】
しかし、ステータスの値からはどのタイプであるとも判別できない場合には、ステータスとともにそのコード体系を表すコードを多機能周辺機器が添付すればよい。すなわち、イベントの発行元であるマネージャが、コード体系をも含めてイベントを発行すればステータスに含まれる明示的なコード体系によりステータスのコード体系を判別できる。
【０１９３】
このようにして判別されたコード体系から、ステータスの送信先のコード体系へとステータスを変換する。変換先のタイプは、マニュアル操作によってあらかじめコード変換ライブラリを備えるサーバに登録しておいても良い。あるいは、サーバ２０９に送信するコード変換要求に添付するパラメータとして変換先のタイプを送ることもできる。また、サーバでは変換要求元のクライアントに対応するコードのタイプをあらかじめ記憶しておき、変換要求元のクライアントの識別子などに基づいて決定することもできる。
【０１９４】
［い］クライアント２０４の場合（図２、図２０参照）：
（１）「Ｂタイプ：３０１８０００」を示す状態遷移イベントが、多機能周辺機器２０１からクライアント２０４に届く。
（２）クライアント２０４のジェネレータＡ１５が、コード変換ライブラリＡ２２に「Ｂタイプ：３０１８０００」を渡し、コード変換を依頼する。
（３）コード変換ライブラリＡ２２からジェネレータＡ１５に、「Ａタイプ：４００１００００」と返答される。
（４）ジェネレータＡ１５は機器管理ユーティリティＡ１３に「Ａタイプ：４００１００００」を配布する。
（５）機器管理ユーティリティＡ１３が、「Ａタイプ：４００１００００」を処理する。
【０１９５】
このように、クライアント自身により、多機能周辺機器の出力するタイプからクライアントが用いるタイプへとステータスコード系を変換する。この場合も、多機能周辺機器２０１から出力されるステータスのタイプは、［あ］の場合と同様に判別できる。この場合、変換先のタイプが「Ａタイプ」であることは、クライアント自身で変換するために当然知ることができる。
【０１９６】
［う］クライアント２０５の場合（図２、図２０、図２５参照）：
（１）「Ｂタイプ：３０１８０００」を示す状態遷移イベントが、多機能周辺機器２０１からコード変換ボックス２１０に届く。
（２）コード変換ボックス２１０のインタープリター４８０５が、コード変換ライブラリ４８０６に「Ｂタイプ：３０１８０００」を渡し、コード変換を依頼する。
（３）コード変換ライブラリ４８０６からインタープリター４８０５に、「Ａタイプ：４００１００００」と返答される。
（４）「Ａタイプ：４００１００００」を示す状態遷移イベントが、コード変換ボックス２１０からクライアント２０５に届く。
（５）クライアント２０５のジェネレータＡ１５は機器管理ユーティリティＡ１３に「Ａタイプ：４００１００００」を配布する。
（６）機器管理ユーティリティＡ１３が、「Ａタイプ：４００１００００」を処理する。
【０１９７】
このように、多機能周辺機器２０１とクライアントとの間に設置されたコード変換ボックスによっても、多機能周辺機器の出力するタイプからクライアントが用いるタイプへとステータスコード系を変換できる。この場合、たとえばコード変換ボックス２１０において、変換元と変換先のステータスのタイプをあらかじめ登録しておけばよい。
【０１９８】
以上のようにして、サーバあるいはクライアントあるいはコード変換ボックスのコード変換ライブラリにより、周辺機器のステータスのタイプをそれを受信する機器、例えばクライアントが処理可能あるいは認識可能なタイプに変換することで、周辺機器の出力するステータスのコード体系とクライアントが処理可能なステータスのコード体系とが相異なる場合でも、クライアントにおいてステータスを処理可能となる。
【０１９９】
この場合も、多機能周辺機器２０１から出力されるステータスのタイプおよび変換先のステータスのタイプは、［あ］の場合と同様に判別できる。さらにこの場合、変換先のタイプは、コード変換ボックスに接続されたクライアントにより特定できるため、固定的に決定しておくこともできる。
【０２００】
以上の様にして、多機能周辺機器から出力されるイベント通知にコード体系の相異なるステータスが含まれている場合にも、そのステータスを送信先の機器が処理可能なあるいは認識可能なコード体系に変換する。それにより、そのステータスを処理するサーバやクライアントなどは、ただひとつのコード体系に対して対応していれば良く、受信したステータスを認識して処理することができる。
【０２０１】
逆に、複数のクライアントが処理可能なステータスのコード体系が互いに異なるコード体系であるような場合でも、それぞれのクライアントが処理可能なコード体系に変換することで、全てのクライアントにおいて、周辺機器から出力されるステータスを処理することが可能となる。
【０２０２】
すなわち、ステータスのコード体系を、複数対１の関係のみならず、１対複数、１対１、複数対複数の関係となるように変換することで、ステータスのコード体系が相異なる送信元と送信先の機器を自由に組みあわせて利用することができる。
【０２０３】
【実施形態２】
第２の実施形態として、第１の実施形態に若干の機能追加を行ったシステムを示す。
【０２０４】
図２８を用いて、多機能周辺機器２０１内でコード変換を行なう場合の流れを示す。図２８は、図２と類似しているが、コード変換ライブラリ４２１とステータスコード対応表４２２を有する点が異なる。
【０２０５】
例として、ジャム状態が発生した場合の例を示す。ジャム状態は、Ａタイプのステータスコードだと４００１００００で、Ｂタイプのステータスコードだと３０１８０００で示される。
【０２０６】
なお、クライアントの各機器管理ユーティリティＡ１３はＡタイプのステータスコードを実装しているとする（図２８、図４、図Ａ参照）。
１．  「Ｂタイプ：３０１８０００」を示す状態遷移イベントが、インタープリター４０９に届く。
２．  インタープリター４０９が、コード変換ライブラリ４２１に「Ｂタイプ：３０１８０００」を渡し、コード変換を依頼する。
３．  コード変換ライブラリ４２１からインタープリター４０９に、「Ａタイプ：４００１００００」と返答される。
４．  「Ａタイプ：４００１００００」を示す状態遷移イベントが、多機能周辺機器２０１からクライアントに届く。
５．  クライアント２０５の機器管理ユーティリティＡ１３が、「Ａタイプ：４００１００００」を処理する。
【０２０７】
このように、多機能周辺機器内での変換により、受信する機器が処理可能あるいは認識可能なタイプのステータスコード系に変換することで、クライアントで処理が可能となる。
【０２０８】
また、本実施形態では、図２２に示すステータス対応表の保守を多機能周辺機器から行うことができる。
【０２０９】
図２７はステータスコード対応表の更新指示を受けた際の、ステータスコード対応表の更新処理を表す処理フローである。本処理は、図２０に示すクライアントのコード変換ライブラリＡ２２、コード変換ボックスのコード変換ライブラリ４８０６、サーバのコード変換ライブラリ４９０４が行なう処理である。
【０２１０】
ステップＰ０１において、更新指示側（インタプリタ／ジェネレータ４０９）からステータスコード対応表の更新データを受け取る。
【０２１１】
ステップＰ０２において、受け取った更新データに基づいてステータスコード対応表の内容を更新する。
【０２１２】
以上によりステータスコード対応表を更新することができる。
【０２１３】
なお、ステータスコード対応表の更新指示は、クライアントやサーバ等からコード変換ライブラリを備えるクライアントやサーバ、コード変換ボックスに対して発行することもできる。
【０２１４】
この手順により、この実施形態のシステムでは、ステータスコード対応表を、ステータスコードを出力する周辺機器や、ステータスコードを受信するクライアントやサーバなどの情報処理機器などにより保守できる。このため、例えば図２の構成において、ＭＦＰ（多機能周辺機器）２０１をある機器から他の仕様が異なる機器に変更した場合にも、新たな機器がその機器のステータスコード体系に応じてステータスコード対応表の更新を行うことで、サーバやクライアントにおいては、従前のコード体系でステータス処理を行うことができる。
【０２１５】
また、クライアントやサーバが置き換えられた場合にも、新たなクライアントやサーバのコード体系に応じてステータスコード対応表の更新を行うことで、全く同様にステータス処理を行うことができる。
【０２１６】
また、多機能周辺機器についてファームウエアの更新や、オプションユニットの取りつけ等による新たなステータスコードの追加等があった場合でも、ステータスコード対応表保守機能により用意に対応可能である。
【０２１７】
なおステータスコード対応表の更新は、全てのコード体系のコード間の対応関係を更新するものであっっても、一部の対応関係を更新するものであっても良い。
【０２１８】
さらに、本発明の実施形態１及び２に関わる周辺機器制御システムでは、ジャム状態やカバーオープン状態はＢコードで実装してしまったが、新規のメモリフル状態はＡコードで実装する、といったように、一つの機器内に複数のコード体系を実装する形態も可能となる。
【０２１９】
これは、複数存在するコード体系を今後１つに統一していく方針で開発を行なう際、効率的に移行が可能であるという効果がある。
【０２２０】
例えば、前のコードに対応している機器のプログラムモジュールを流用して統一前のコードも使用しつつ、新しく作成して追加する部分のプログラムモジュールは統一後のコードを使用する、ということができるためである。この場合、全て統一コードに対応したモジュールを作り直すより、前のモジュールを流用できる分、開発効率が良い。
【０２２１】
さらに、いずれ統一されたコードのみの機器を開発する際に、後者のプログラムモジュールはそのまま流用でき、前者のプログラムモジュールのみ、統一後のコードに修正すれば良いので、部分的に新しいコードへ移行していく、というような効率の良い段階的開発が可能となるという効果がある。
【０２２２】
また、異なるコード体系を実装する複数の機器のプログラムから、必要なプログラムモジュールのみ取り出して組み合わせて新たな製品を開発する場合も、どのコード体系を使用するか気にしなくてすむので、やりやすくなるという効果もある。
【０２２３】
［その他の実施形態］
実施形態１では、機器の状態遷移イベントに格納されるステータスコードの自動変換を行なう例を示したが、機器の状態遷移イベントだけでなく、機器の状態属性の取得時にも同様にステータスコードの変換が行なわれるようになっていても構わない。
【０２２４】
実施形態１では、Ａタイプのステータスコードへ変換する例を示したが、それに限らない。指定タイプのステータスコードへ変換する仕組みになっていても構わないし、そのほうがより汎用的になる。
【０２２５】
実施形態１では、インタプリタ／ジェネレータがコード変換する仕組みとしたが、他の部分で変換しても構わない。例えば、ドライバ／ユーティリティが変換しても構わない。
【０２２６】
実施形態１では、コード変換ボックスは、ＩＥＥＥ１２８４によって、クライアントＰＣおよび周辺機器に接続されている例を示したが、クライアントＰＣと周辺機器と双方の接続が、いかなるインタフェース／形態により接続されていても構わない。クライアントＰＣや周辺機器に拡張ボードがスロットで搭載される形式で、例えば、周辺機器とは独自インタフェース／プロトコルで接続され、クライアントＰＣとは、ＩＥＥＥ１３９４で接続される、という形式も可能である。
【０２２７】
さらに、１つのボックスに３つ以上のインタフェースが搭載されていても構わない。例えば、変換ボックスはＩＥＥＥ１３９４インタフェースを２つ持ち、クライアントＰＣ２つが、それぞれの別のＩＥＥＥ１３９４インタフェースを介して変換ボックスと接続していて、変換ボックスがＩＥＥＥ１２８４を介して周辺機器と接続している、などという構成も可能である。
【０２２８】
さらに、ステータスコード対応表やコード変換ライブラリを周辺機器に備えて、周辺機器において行わせることもできる。
【０２２９】
なお、上記実施形態１，２は他の機能を有する周辺機器装置、例えばファクシミリ装置に適用することが可能である。
【０２３０】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【０２３１】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。
【０２３２】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体およびプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２３３】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０２３４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０２３５】
また本発明の他の実施形態には以下のようなものも含まれる。
【０２３６】
【実施形態０１】ホストコンピュータおよび周辺機器が接続された周辺機器制御システムであって、
複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器制御システム。
【０２３７】
【実施形態０２】前記一のコード体系のコードは周辺機器の状態を示すコードであることを特徴とする実施形態０１記載の周辺機器制御システム。
【０２３８】
【実施形態０３】前記ホストコンピュータ上に前記コード対応情報保持手段と該コード変換手段の両方を有することを特徴とする実施形態０１または０２に記載の周辺機器制御システム。
【０２３９】
【実施形態０４】ホストコンピュータおよび周辺機器が接続された周辺機器制御システムであって、
一のコード体系のコードを別のコード体系のコードに変換することを要求するコード変換要求手段と、
複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
前記コード変換要求手段による要求に応じて、一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
を有することを特徴とする周辺機器制御システム。
【０２４０】
【実施形態０５】前記一のコード体系のコードは周辺機器の状態を示すコードであることを特徴とする実施形態０４記載の周辺機器制御システム。
【０２４１】
【実施形態０６】前記ホストコンピュータ上に前記コード変換要求手段を有することを特徴とする実施形態０２に記載の周辺機器制御システム。
【０２４２】
【実施形態０７】前記ホストコンピュータと接続されたサーバコンピュータに前記コード対応情報保持手段と該コード変換手段の両方を有することを特徴とする実施形態０４乃至０６のいずれかに記載の周辺機器制御システム。
【０２４３】
【実施形態０８】前記周辺機器の外部でかつ前記ホストコンピュータとの間にフィルタを更に備え、該フィルタが前記コード対応情報保持手段と前記コード変換手段とを有することを特徴とする実施形態０４乃至０６のいずれかに記載の周辺機器制御システム。
【０２４４】
【実施形態０９】前記周辺機器上に前記コード変換要求手段と前記コード対応情報保持手段と前記コード変換手段とを有することを特徴とする実施形態０４に記載の周辺機器制御システム。
【０２４５】
【実施形態１０】さらに、前記コード対応保持手段の保持するコード間の対応関係を更新する更新手段を有することを特徴とする実施形態０１乃至０９のいずれか１項に記載の周辺機器制御システム。
【０２４６】
【実施形態１１】前記更新手段は、前記ホストコンピュータから送信された更新指示データをもとに更新することを特徴とする実施形態１０に記載の周辺機器制御システム。
【０２４７】
【実施形態１２】前記更新手段に送信される更新指示データは、前記コード対応情報保持手段により保持される全てのコード体系のコード間の対応関係を更新することを特徴とする実施形態１０に記載の周辺機器制御システム。
【０２４８】
【実施形態１３】前記更新手段に送信される更新指示データは、前記コード対応情報保持手段により保持される一部のコード体系のコード間の対応関係を更新することを特徴とする実施形態１０に記載の周辺機器制御システム。
【０２４９】
【実施形態１４】ホストコンピュータおよび周辺機器が接続された周辺機器制御システムにおいて、
複数のコード体系のコード間の対応関係を保持するコード対応情報保持工程と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換工程と
を有することを特徴とする周辺機器制御システム。
【０２５０】
【実施形態１５】前記一のコード体系のコードは周辺機器の状態を示すコードであることを特徴とする実施形態０１記載の周辺機器制御システム。
【０２５１】
【実施形態１６】前記ホストコンピュータ上に前記コード対応情報保持工程と該コード変換工程の両方を有することを特徴とする実施形態１４または１５に記載の周辺機器制御システム。
【０２５２】
【実施形態１７】ホストコンピュータおよび周辺機器が接続された周辺機器制御システムにおいて、
一のコード体系のコードを別のコード体系のコードに変換することを要求するコード変換要求工程と、
複数のコード体系のコード間の対応関係を保持するコード対応情報保持工程と、
前記コード変換要求工程による要求に応じて、一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換工程と
を有することを特徴とする周辺機器制御システム。
【０２５３】
【実施形態１８】前記一のコード体系のコードは周辺機器の状態を示すコードであることを特徴とする実施形態１７記載の周辺機器制御システム。
【０２５４】
【実施形態１９】前記ホストコンピュータ上に前記コード変換要求工程を有することを特徴とする実施形態１８に記載の周辺機器制御システム。
【０２５５】
【実施形態２０】前記ホストコンピュータと接続されたサーバコンピュータに前記コード対応情報保持工程と該コード変換工程の両方を有することを特徴とする実施形態１７乃至１９のいずれかに記載の周辺機器制御システム。
【０２５６】
【実施形態２１】前記周辺機器の外部でかつ前記ホストコンピュータとの間にフィルタを更に備え、該フィルタが前記コード対応情報保持工程と前記コード変換工程とを有することを特徴とする実施形態１７乃至１９のいずれかに記載の周辺機器制御システム。
【０２５７】
【実施形態２２】前記周辺機器上に前記コード変換要求工程と前記コード対応情報保持工程と前記コード変換工程とを有することを特徴とする実施形態１７に記載の周辺機器制御システム。
【０２５８】
【実施形態２３】さらに、前記コード対応保持工程の保持するコード間の対応関係を更新する更新工程を有することを特徴とする実施形態１４乃至２２のいずれか１項に記載の周辺機器制御システム。
【０２５９】
【実施形態２４】前記更新工程は、前記ホストコンピュータから送信された更新指示データをもとに更新することを特徴とする実施形態２３に記載の周辺機器制御システム。
【０２６０】
【実施形態２５】前記更新工程に送信される更新指示データは、前記コード対応情報保持工程により保持される全てのコード体系のコード間の対応関係を更新することを特徴とする実施形態２３に記載の周辺機器制御システム。
【０２６１】
【実施形態２６】前記更新工程に送信される更新指示データは、前記コード対応情報保持工程により保持される一部のコード体系のコード間の対応関係を更新することを特徴とする実施形態２３に記載の周辺機器制御システム。
【０２６２】
【実施形態２７】複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
をコンピュータにより実現するためのプログラム。
【０２６３】
【実施形態２８】前記一のコード体系のコードは周辺機器の状態を示すコードであることを特徴とする実施形態２７記載のプログラム。
【０２６４】
【実施形態２９】前記ホストコンピュータ上に前記コード対応情報保持手段と該コード変換手段の両方を有することを特徴とする実施形態２７または２８に記載のプログラム。
【０２６５】
【実施形態３０】一のコード体系のコードを別のコード体系のコードに変換することを要求するコード変換要求手段と、
複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、
前記コード変換要求手段による要求に応じて、一のコード体系のコードを、前記ホストコンピュータが認識可能な別のコード体系のコードに変換するコード変換手段と
をコンピュータにより実現するためのプログラム。
【０２６６】
【実施形態３１】前記一のコード体系のコードは周辺機器の状態を示すコードであることを特徴とする実施形態３０記載のプログラム。
【０２６７】
【実施形態３２】前記ホストコンピュータ上に前記コード変換要求手段を有することを特徴とする実施形態０２に記載のプログラム。
【０２６８】
【実施形態３３】前記ホストコンピュータと接続されたサーバコンピュータに前記コード対応情報保持手段と該コード変換手段の両方を有することを特徴とする実施形態３０乃至３２のいずれかに記載のプログラム。
【０２６９】
【実施形態３４】前記周辺機器の外部でかつ前記ホストコンピュータとの間にフィルタを更に備え、該フィルタが前記コード対応情報保持手段と前記コード変換手段とを有することを特徴とする実施形態３０乃至３２のいずれかに記載のプログラム。
【０２７０】
【実施形態３５】前記周辺機器上に前記コード変換要求手段と前記コード対応情報保持手段と前記コード変換手段とを有することを特徴とする実施形態３０に記載のプログラム。
【０２７１】
【実施形態３６】さらに、前記コード対応保持手段の保持するコード間の対応関係を更新する更新手段を有することを特徴とする実施形態２７乃至３５のいずれか１項に記載のプログラム。
【０２７２】
【実施形態３７】前記更新手段は、前記ホストコンピュータから送信された更新指示データをもとに更新することを特徴とする実施形態３６に記載のプログラム。
【０２７３】
【実施形態３８】前記更新手段に送信される更新指示データは、前記コード対応情報保持手段により保持される全てのコード体系のコード間の対応関係を更新することを特徴とする実施形態３６に記載のプログラム。
【０２７４】
【実施形態３９】前記更新手段に送信される更新指示データは、前記コード対応情報保持手段により保持される一部のコード体系のコード間の対応関係を更新することを特徴とする実施形態３６に記載のプログラム。
【０２７５】
【実施形態４０】実施形態２７乃至３９のいずれかに記載のプログラムを記録したコンピュータ可読記録媒体。
【０２７６】
【発明の効果】
以上説明したように本発明に係わる周辺機器制御システムでは、複数のコード体系のコード間の対応関係を保持するコード対応情報保持手段と、あるコード体系のコードを別のコード体系のコードに変換するコード変換手段とを有することにより、特定の１つのコード体系の周辺機器に対してコード処理を行なうようにすることで他のコード体系を実装する周辺機器の制御も行なうことが可能となる。
【図面の簡単な説明】
【図１】多機能周辺機器の構成を示す図である。
【図２】システム構成を示す図である。
【図３】コントローラのハード構成を示す図である。
【図４】コントローラのソフト構成を示す図である。
【図５】コントローラのソフト構成を示す図である。
【図６】コントローラのソフト構成を示す図である。
【図７】スーパーバイザーの属性表を示す図である。
【図８】サブアドレス：サービスＩＤ対応表を示す図である。
【図９】サブアドレス：タスクタイプ対応表を示す図である。
【図１０】イベント設定表を示す図である。
【図１１】イベントフォーマット表を示す図である。
【図１２】プリントマネージャの属性表を示す図である。
【図１３】ジョブ表を示す図である。
【図１４】ジョブ依頼表を示す図である。
【図１５】スキャンジョブマネージャの属性表を示す図である。
【図１６】コピージョブマネージャの属性表を示す図である。
【図１７】プリンターコントローラの属性表を示す図である。
【図１８】ジョブキュー表を示す図である。
【図１９】スキャナコントローラの属性表を示す図である。
【図２０】クライアント側のソフトウエア構成を示す図である。
【図２１】ジョブ管理コマンドの発行を示す図である。
【図２２】ステータスコード対応表を示す図である。
【図２３】ステータスコード間変換処理フローを示す図である。
【図２４】コード変換ボックスのハード構成を示す図である。
【図２５】コード変換ボックスのソフト構成を示す図である。
【図２６】サーバのソフト構成を示す図である。
【図２７】ステータスコード対応表の更新処理を表す処理フローである。
【図２８】コントローラのソフト構成のブロック図である。
【図１】
2004280264.tif 000003
【図２】
2004280264.tif 000004
【図３】
2004280264.tif 000005
【図４】
2004280264.tif 000006
【図５】
2004280264.tif 000007
【図６】
2004280264.tif 000008
【図７】
2004280264.tif 000009
【図８】
2004280264.tif 000010
【図９】
2004280264.tif 000011
【図１０】
2004280264.tif 000012
【図１１】
2004280264.tif 000013
【図１２】
2004280264.tif 000014
【図１３】
2004280264.tif 000015
【図１４】
2004280264.tif 000016
【図１５】
2004280264.tif 000017
【図１６】
2004280264.tif 000018
【図１７】
2004280264.tif 000019
【図１８】
2004280264.tif 000020
【図１９】
2004280264.tif 000021
【図２０】
2004280264.tif 000022
【図２１】
2004280264.tif 000023
【図２２】
2004280264.tif 000024
【図２３】
2004280264.tif 000025
【図２４】
2004280264.tif 000026
【図２５】
2004280264.tif 000027
【図２６】
2004280264.tif 000028
【図２７】
2004280264.tif 000029
【図２８】
2004280264.tif 000030