(57)【要約】【課題】  画像形成装置において、ユーザの利便性を損なうことなく、禁則処理を実行する。【解決手段】  複合機１は、筐体表面に設けられ設定画面を表示装置２１に表示する操作パネル部１４と、設定画面の画面データを操作パネル部１４に送信するコントローラ１７とを備える。そして、コントローラ１７は、画面データとともに禁則処理プログラムを操作パネル部１４に送信する。一方、操作パネル部１４は、コントローラ１７から画面データを禁則処理プログラムとともに受信する通信制御部３１と、受信された画面データに基づいて表示装置に設定画面を表示させる表示処理部３２と、受信された禁則処理プログラムに従って設定画面における設定に対する禁則処理を行うＵＩ禁則処理部３３とを備える。【選択図】  図１
2011129967.tif 000002
【特許請求の範囲】
【請求項１】
設定画面を表示装置に表示する操作パネル部と、前記設定画面の画面データを前記操作パネル部に送信するコントローラとを備えた画像形成装置であって、
前記コントローラは、前記画面データとともに前記設定画面における禁則処理を記述した禁則処理プログラムを前記操作パネル部に送信し、
前記操作パネル部は、  
前記コントローラから前記画面データを前記禁則処理プログラムとともに受信する通信制御部と、
受信された前記画面データに基づいて前記表示装置に前記設定画面を表示させる表示処理部と、
前記禁則処理プログラムに従って前記設定画面における設定に対する禁則処理を行う禁則処理部と、
を備えることを特徴とする画像形成装置。
【請求項２】
前記画面データのテンプレートデータと前記禁則処理プログラムとを記憶している記憶装置を備え、
前記操作パネル部の前記通信制御部は、前記画面データの要求を前記コントローラへ送信し、
前記コントローラは、前記要求により指定された前記画面データの前記設定画面における設定項目についての現在の設定値および／または設定範囲情報を取得する変動データ収集部と、前記要求により指定された前記画面データのテンプレートデータに前記現在の設定値および前記設定範囲情報を適用して前記画面データを生成する送信データ生成部と、生成された前記画面データと前記画面データに対応する前記禁則処理プログラムとを送信する通信制御部とを備えること、
を特徴とする請求項１記載の画像形成装置。
【請求項３】
前記禁則処理プログラムは、前記禁則処理のプログラムコード、および前記禁則処理部からそのコードを呼び出すためのエントリーポイントの記述を有することを特徴とする請求項１記載の画像形成装置。
【請求項４】
前記禁則処理プログラムは、前記禁則処理が二値型および調停型のいずれかであるかを示す型指定情報を有することを特徴とする請求項１から請求項３のいずれか１項記載の画像形成装置。
【請求項５】
前記コントローラは、追加インストールされた追加アプリケーションプログラムを実行し、
前記追加アプリケーションプログラムで使用される設定画面の前記禁則処理プログラムは、前記追加アプリケーションプログラムとともにインストールされたものであること、
を特徴とする請求項１記載の画像形成装置。
【請求項６】
前記禁則処理部は、前記設定画面に含まれる１または複数の設定項目の値がユーザにより変更されるたびに、その値の変更が禁則に違反するか否かを前記禁則処理プログラムに従って判定し、その値の変更が禁則に違反する場合、禁則違反を通知するためのメッセージを前記表示装置に表示させることを特徴とする請求項１から請求項５のうちのいずれか１項記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関するものである。
【背景技術】
【０００２】
複合機などの画像形成装置が提供する機能に関する複数の設定項目（例えば画像読取における解像度、生成データのファイル形式など）には、適用できない設定値の組み合わせが存在することがある。ユーザの利便性を考慮して、そのような適用できない設定値の組み合わせが選択された時点で直ちに警告メッセージ等を表示させるか、あるいは、そのような適用できない設定値の組み合わせは予め選択できないようにすることが一般的に行われている（例えば特許文献１参照）。このような適用できない設定値の組み合わせが検出された場合、それに応じて警告メッセージを表示させたり、適用可能な組み合わせになるように設定値を変更させたりする対応処理が行われる。
【０００３】
このように、設定値の組み合わせが適用できるか否かの判定および設定値の組み合わせが適用できないときの対応処理を禁則処理という。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−７８７２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ある画像形成装置では、操作パネル部とコントローラとを別々のコンピュータシステムで構成し、画面表示処理は主に操作パネルのシステムが行い、スキャナエンジン、プリンタエンジンなどの内部装置の制御は主にコントローラが行う。
【０００６】
図１４は、操作パネル部とコントローラとが別々のコンピュータシステムで構成される画像形成装置の構成例を示すブロック図である。図１４に示す複合機１０１は、プリンタ１１１、スキャナ１１２、ファクシミリ装置１１３、操作パネル部１１４、外部装置と通信するためのインタフェース１１５、フラッシュメモリなどの記憶装置１１６、およびコントローラ１１７を有する。操作パネル部１１４とコントローラ１１７とは別々のコンピュータシステムで構成されており、操作パネル部１１４の通信回路１１４ａおよびコントローラ１１７の通信回路１１７ａで互いにデータ通信可能となっている。操作部１１４は、ユーザ操作を検出する入力装置１２１、設定画面を表示する表示装置１２２、およびいわゆるコンピュータである演算処理装置１２３を有する。したがって、操作パネル部１１４では、演算処理装置１２３が所定のプログラムに従って動作する。また、コントローラ１１７も、所定のプログラムに従って動作する。
【０００７】
図１５は、図１４に示す画像形成装置による禁則処理を説明するシーケンス図である。操作パネル部１１４において、ユーザ操作により画面遷移要求が発生すると（ステップＳ１０１）、演算処理装置１２３は、所定のプログラムに従って、次画面の画面データの送信要求をコントローラ１１７へ送信する（ステップＳ１０２）。コントローラ１１７は、その要求を受信すると、その要求で指定された画面データを選択し（ステップＳ１０３）、操作パネル部１１４へ送信する（ステップＳ１０４）。この画面データには、複数の設定項目についての値としてデフォルト値が記述されている。操作パネル部１１４は、その画面データを受信すると、その画面データに基づいて次の画面を表示装置１２１に表示させる（ステップＳ１０５）。
【０００８】
このようにして設定画面が表示された後、ユーザ操作により設定画面における複数の設定項目のいずれかの値が変更されると、演算処理装置１２３は、値変更後の複数の設定項目の値の組み合わせを設定変更情報としてコントローラ１１７へ送信する。コントローラ１１７は、設定変更情報を受信すると、設定変更情報に基づき、ユーザ操作による変更後の設定値の組み合わせを特定し、その組み合わせが禁則に違反するか否かを判定する（ステップＳ１０８）。
【０００９】
その組み合わせが禁則に違反しない場合には、コントローラ１１７は、変更後の設定値が選択された状態の画面データを操作パネル部１１４に送信し（ステップＳ１０９）、操作パネル部１１４の演算処理装置１２３は、その画面データで画面を更新する（ステップＳ１１０）。
【００１０】
一方、その組み合わせが禁則に違反する場合には、コントローラ１１７は、禁則違反の警告メッセージ、および違反の原因となった設定値を通知する通知データを操作パネル部１１４に送信し（ステップＳ１０９）、操作パネル部１１４の演算処理装置１２３は、その警告メッセージおよび通知データを表示装置１２１の画面上に表示させる（ステップＳ１１０）。
【００１１】
禁則処理には、内部装置（プリンタ１１１、スキャナ１１２など）の機器の能力情報（解像度の設定可能範囲、生成可能なファイル形式など）が必要であるため、禁則処理は、このようにコントローラ１１７側で通常行われる。
【００１２】
しかしながら、近年、画像形成装置が提供する機能が多様化かつ複雑化しており、このため、設定値の組み合わせの数は非常に多くなっており、選択された組み合わせが適用不可の組み合わせであるか否かを判定するのに時間がかかってしまい、ユーザの利便性を損なう可能性がある。
【００１３】
特に、デフォルトのアプリケーション以外に追加アプリケーションが追加インストールされている場合、追加アプリケーションは、デフォルトのアプリケーションより複雑な処理を行うため、設定画面も多く使用される傾向にあり、多くの設定項目に関連した禁則が課せられることが多い。このため、追加アプリケーションに関する禁則処理については、上記の問題がさらに顕著になるとともに、追加アプリケーションはコントローラで動作するため、コントローラの負荷が大きくなってしまう。
【００１４】
本発明は、上記の問題に鑑みてなされたものであり、ユーザの利便性を損なうことなく、禁則処理を実行する画像形成装置を得ることを目的とする。
【課題を解決するための手段】
【００１５】
上記の課題を解決するために、本発明では以下のようにした。
【００１６】
本発明に係る画像形成装置は、設定画面を表示装置に表示する操作パネル部と、設定画面の画面データを操作パネル部に送信するコントローラとを備えた画像形成装置である。そして、コントローラは、画面データとともに設定画面における禁則処理を記述した禁則処理プログラムを操作パネル部に送信する。一方、操作パネル部は、コントローラから画面データを禁則処理プログラムとともに受信する通信制御部と、受信された画面データに基づいて表示装置に設定画面を表示させる表示処理部と、禁則処理プログラムに従って設定画面における設定に対する禁則処理を行う禁則処理部とを備える。
【００１７】
これにより、禁則処理のための操作パネル部とコントローラとの間の通信が減るとともに比較的負荷の軽い操作パネル部で禁則処理を行うため、禁則処理を短時間で行うことができる。このため、ユーザの利便性を損なうことなく、禁則処理を実行することができる。
【００１８】
また、本発明に係る画像形成装置は、上記の画像形成装置に加え、次のようにしてもよい。この場合、画像形成装置は、画面データのテンプレートデータと禁則処理プログラムとを記憶している記憶装置を備える。そして、操作パネル部の通信制御部は、画面データの要求をコントローラへ送信する。一方、コントローラは、要求により指定された画面データの設定画面における設定項目についての現在の設定値および／または設定範囲情報を取得する変動データ収集部と、要求により指定された画面データのテンプレートデータに現在の設定値および設定範囲情報を適用して画面データを生成する送信データ生成部と、生成された画面データとその画面データに対応する禁則処理プログラムとを送信する通信制御部とを備える。
【００１９】
これにより、装置の仕様変更などがあってもテンプレートデータをそのまま使用して画面データを生成することできる。
【００２０】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、禁則処理プログラムは、禁則処理のプログラムコード、および禁則処理部からそのコードを呼び出すためのエントリーポイントの記述を有する。
【００２１】
これにより、同一画面において、異なるエントリーポイントの複数のプログラムコードを禁則処理に使用することができる。
【００２２】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、禁則処理プログラムは、禁則処理が二値型および調停型のいずれかであるかを示す型指定情報を有する。
【００２３】
これにより、画面ごとあるいは設定項目ごとに、禁則処理の型を変更することができる。
【００２４】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、コントローラは、追加インストールされた追加アプリケーションプログラムを実行し、追加アプリケーションプログラムで使用される設定画面の禁則処理プログラムは、追加アプリケーションプログラムとともにインストールされたものである。
【００２５】
これにより、デフォルトで既知のアプリケーション以外の、追加インストールされるアプリケーションについても、同様に禁則処理を行うことができる。
【００２６】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、禁則処理部は、設定画面に含まれる１または複数の設定項目の値がユーザにより変更されるたびに、その値の変更が禁則に違反するか否かを禁則処理プログラムに従って判定し、その値の変更が禁則に違反する場合、禁則違反を通知するためのメッセージを表示装置に表示させる。
【発明の効果】
【００２７】
本発明によれば、画像形成装置において、ユーザの利便性を損なうことなく、禁則処理を実行することができる。
【図面の簡単な説明】
【００２８】
【図１】図１は、本発明の実施の形態に係る画像形成装置の構成を示すブロック図である。
【図２】図２は、図１における記憶装置に記憶されているデータおよびプログラムの例を示すブロック図である。
【図３】図３は、図２における禁則処理テーブルの例を示す図である。
【図４】図４は、図１における複合機に適用される二値型の禁則の例を示す図である。
【図５】図５は、図１における複合機に適用される調停型の禁則の例を示す図である。
【図６】図６は、図２における禁則処理プログラムの詳細な構成の例を示すブロック図である。
【図７】図７は、図６におけるヘッダ部の一例を示す図である。
【図８】図８は、図６における現状データ部の一例を示す図である。
【図９】図９は、図６における参照データ部の一例を示す図である。
【図１０】図１０は、図１に示す複合機における操作パネル部の設定画面に関する処理について説明するシーケンス図である。
【図１１】図１１は、図１０における設定入力処理の詳細について説明するフローチャートである。
【図１２】図１２は、図１におけるスキャナの動作パラメータの設定画面の一例を示す図である。
【図１３】図１３は、図１１に示す設定入力処理において禁則違反が検出された際に表示される警告メッセージの一例を示す図である。
【図１４】図１４は、操作パネル部とコントローラとが別々のコンピュータシステムで構成される画像形成装置の構成例を示すブロック図である。
【図１５】図１５は、図１４に示す画像形成装置による禁則処理を説明するシーケンス図である。
【発明を実施するための形態】
【００２９】
以下、図に基づいて本発明の実施の形態を説明する。
【００３０】
図１は、本発明の実施の形態に係る画像形成装置の構成を示すブロック図である。
【００３１】
複合機１は、画像形成装置の一例であり、プリンタ１１と、スキャナ１２と、ＦＡＸ装置１３と、操作パネル部１４と、インタフェース１５と、記憶装置１６と、コントローラ１７とを備える。操作パネル部１４とコントローラ１７とは別々のコンピュータシステムで構成されており、操作パネル部１４の通信回路１４ａおよびコントローラ１７の通信回路１７ａで互いにデータ通信可能となっている。
【００３２】
プリンタ１１は、印刷データに基づいて文書画像を印刷する内部装置である。スキャナ１２は、文書から文書画像を光学的に読み取り、文書画像の画像データを生成する内部装置である。ファクシミリ装置１３は、送信すべき文書データからファクシミリ信号を生成し送信するとともに、ファクシミリ信号を受信し文書データに変換する内部装置である。
【００３３】
また、操作パネル部１４は、複合機１の筐体表面に配置されユーザに対して設定画面を表示する表示装置２１と、設定画面に対するユーザ操作を検出する入力装置２２と、演算処理装置２３とを有する。表示装置としては例えば液晶ディスプレイが使用される。入力装置としては、キースイッチ、タッチパネルなどが使用される。演算処理装置２３は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを有するコンピュータであり、ＲＯＭなどからＲＡＭへプログラムをロードし、そのプログラムをＣＰＵで実行することにより、各種処理部を実現する。この実施の形態では、演算処理装置２３において、通信制御部３１、表示処理部３２、およびＵＩ禁則処理部３３が実現される。
【００３４】
通信制御部３１は、通信回路１４ａを制御して、コントローラ１７との間でデータ通信を行う処理部である。通信制御部３１は、コントローラ１７から画面データを禁則処理プログラムとともに受信する。
【００３５】
表示処理部３２は、通信制御部３１により受信された画面データに基づいて表示装置２１に設定画面を表示させる処理部である。また、表示処理部３２は、入力装置２２によりユーザ操作が検出されると、そのユーザ操作に従って各種要求を発行する。その要求は、通信制御部３１によりコントローラ１７へ送信される。
【００３６】
ＵＩ禁則処理部３３は、通信制御部３１により受信された禁則処理プログラムに従って設定画面における設定に対する禁則処理を行う処理部である。
【００３７】
また、インタフェース１５は、ＵＳＢメモリ、メモリカードなどの可搬性のある記録媒体、ホスト装置などを接続可能な回路である。インタフェース１５としては、例えば、ＵＳＢインタフェース、メモリカードリーダなどが使用される。メモリカードとしては、ＳＤカード、ＣＦカードなどがある。
【００３８】
また、記憶装置１６は、各種プログラムおよび各種データを格納可能な装置である。記憶装置１６としては、ハードディスクドライブ、不揮発性メモリなどの不揮発性の記憶媒体が使用される。図２は、図１における記憶装置１６に記憶されているデータおよびプログラムの例を示すブロック図である。図１における記憶装置１６には、テンプレートデータ５１、禁則処理テーブル５２、禁則処理プログラム５３、追加アプリケーションプログラム５４などが記憶されている。なお、追加アプリケーションプログラム５４がインストールされるときに、追加アプリケーションプログラム５４に従って操作パネル部１４に表示される設定画面についてのテンプレートデータ５１および禁則処理プログラム５３は、追加アプリケーションプログラム５４とともにインストールされ、その設定画面の画面データＵＲＬとともに、そのテンプレートデータ５１および禁則処理プログラム５３が禁則処理テーブル５２に登録される。この追加アプリケーションプログラム５４などのインストール処理は、例えば、インタフェース１５を介して受信されたインストールパッケージを使用してコントローラ１７により実行される。
【００３９】
テンプレートデータ５１は、画面データのテンプレートである。この実施の形態では、画面データは、ＸＨＴＭＬ（Extensible Hypertext Markup Language）などのＨＴＭＬで記述される。このため、テンプレートデータ５１も、ＨＴＭＬデータとされる。テンプレートデータ５１は、画面データ内の設定項目の選択肢（つまり、装置の種別や設定状態に依存する部分）を空欄とし、選択肢以外の部分を画面データと同一としたデータである。
【００４０】
禁則処理テーブル５２は、設定画面の画面データと、その画面データのテンプレートデータ５１と、その画面データに対応する禁則処理プログラム５３とを関連付けるデータを有する。図３は、図２における禁則処理テーブル５２の例を示す図である。図３（Ａ）は、１つの設定画面について１つの禁則処理プログラムのみが使用される場合の禁則処理テーブル５２の例を示し、図３（Ｂ）は、１つの設定画面について１または複数の禁則処理プログラムが使用される場合の禁則処理テーブル５２の例を示す。
【００４１】
図３に示す禁則処理テーブル５２では、画面データのＵＲＬ（Uniform Resource Locator）に、テンプレートデータ５１のファイル名（パスを含む）および禁則処理プログラム５３のファイル名（パスを含む）が関連付けられている。また、図３（Ｂ）に示すように、１つの設定画面について複数の禁則処理プログラムが使用される場合、画面データのＵＲＬに、さらに、別の禁則処理プログラム５３があるか否かを示すフラグが設けられており、フラグの値「Ｙｅｓ」は、テーブル５２の次のレコードにおいて別の禁則処理プログラム５３のファイル名が指定されることを示す。フラグの値「Ｎｏ」は、以前のレコードで既に指定されている禁則処理プログラム５３以外の禁則処理プログラム５３はないことを示す。このテーブル５２を参照することにより、操作パネル部１４からの要求により指定される画面データのＵＲＬに対応するテンプレートデータ５１および禁則処理プログラム５３が特定される。なお、ここでは、画面データのＵＲＬが画面データのＩＤに使用されているが、別のＩＤを使用するようにしてもよい。
【００４２】
図２に戻り、禁則処理プログラム５３は、操作パネル部１４により実行されるプログラムであって、設定画面における禁則処理を記述したプログラムである。禁則処理プログラム５３による禁則処理は、二値型と調停型がある。
【００４３】
二値型では、設定値の組み合わせごとに、その組み合わせを許可するか否かを示す値が禁則として設けられる。図４は、後述の図１２に示す設定画面に対する、図１における複合機１に適用される二値型の禁則の例を示す図である。図４（Ａ）は、色モードがフルカラーである場合の例を示し、図４（Ｂ）は、色モードがモノクロである場合の例を示す。図４の場合、設定項目に色モード、ファイル形式および解像度が存在する。そして、この場合、色モード、ファイル形式および解像度の組み合わせとして、例えば、フルカラー、ＰＤＦおよび６００が選択されると、その組み合わせが許可されることを示す値「ＴＲＵＥ」が設定されているため、この組み合わせは許可される。一方、この場合、色モード、ファイル形式および解像度の組み合わせとして、例えば、モノクロ、ＴＩＦＦおよび２４００が選択されると、その組み合わせが禁止されることを示す値「ＦＡＬＳＥ」が設定されているため、この組み合わせは禁止される。つまり、このような組み合わせを選択する操作は拒否される。
【００４４】
調停型では、設定値の組み合わせのうち、組み合わせを許可しない場合の動作を示す値が禁則として設けられる。その組み合わせを許可しない場合に、その組み合わせにおけるいずれかの設定値の変更を示す値が禁則に設定される。図５は、後述の図１２に示す設定画面に対する、図１における複合機１に適用される調停型の禁則の例を示す図である。図５（Ａ）は、色モードがフルカラーである場合の例を示し、図５（Ｂ）は、色モードがモノクロである場合の例を示す。図５の場合、設定項目に色モード、ファイル形式および解像度が存在する。そして、この場合、色モード、ファイル形式および解像度の組み合わせとして、例えば、フルカラー、ＰＤＦおよび６００が選択されると、その組み合わせはそのまま許可される。一方、この場合、色モード、ファイル形式および解像度の組み合わせとして、例えば、モノクロ、ＪＰＥＧおよび２４００が選択されると、その組み合わせは禁止されるため、色モードの設定値をモノクロからフルカラーへ自動的に変換する動作が指定される。
【００４５】
各禁則処理プログラム５３が有するプログラムコードには、二値型の禁則処理か、調停型の禁則処理が記述される。二値型の禁則処理では、ユーザが選択した組み合わせに禁則違反があるか否か判定および禁則違反時のメッセージ表示が行われる。また、調停型の禁則処理では、ユーザが選択した組み合わせに対して設定値の変換動作が指定されているか否かを判定し、変換動作が指定されている場合には、その変換動作が実行される。
【００４６】
次に、禁則処理プログラム５３の詳細な構成について説明する。図６は、図２における禁則処理プログラム５３の詳細な構成の例を示すブロック図である。
【００４７】
禁則処理プログラム５３は、ヘッダ部６１、コード部６２、固有データ部６３、現状データ部６４および参照データ部６５を有する。なお、固有データ部６３は存在しなくてもよい。例えば、ヘッダ部６１、固有データ部６３、現状データ部６４および参照データ部６５は、ＸＭＬ（Extensible Markup Language）で記述され、コード部６２がＪａｖａＳｃｒｉｐｔ、ＰＨＰ、Ｐｙｔｈｏｎなどのスクリプト言語で記述される場合、禁則処理プログラム５３は、１つのＸＭＬファイルとしてもよい。また、例えば、ヘッダ部６１、固有データ部６３、現状データ部６４および参照データ部６５は、ＸＭＬで記述され、コード部６２がバイナリコード（オブジェクトコード）とされる場合、ヘッダ部６１、コード部６２、固有データ部６３、現状データ部６４および参照データ部６５は、それぞれ独立したファイルとして記述され、禁則処理プログラム５３は、それらのファイルを圧縮したＺＩＰファイルなどの１つのパッケージファイルとされるようにしてもよい。
【００４８】
ヘッダ部６１は、当該禁則処理プログラム５３固有の識別情報、コード部６２のエントリポイント（ＡＰＩ）の指定、および禁則処理の型の指定（二値型か調停型か）を有する。図７は、図６におけるヘッダ部６１の一例を示す図である。識別情報は、「constrainHeader」タグの「id」パラメータで指定されている。コード部６２のエントリポイント（ＡＰＩ）は、「entrypoint」要素で指定されており、禁則処理の型は、「entrypoint」タグの「type」パラメータで指定されている。「type」パラメータの値が「boolean」である場合、二値型が指定され、「type」パラメータの値が「arbitrate」である場合、禁則処理の型が調停型に指定される。
【００４９】
コード部６２は、禁則処理のプログラムコードである。二値型の場合、このプログラムコードは、選択された設定値の組み合わせが禁則に違反するか否かを示す値を返す。調停型の場合、選択された設定値の組み合わせが禁則に違反すると、可能であれば、予め設定された変換ルールに従っていずれかの設定値を変更する。したがって、調停型の場合、このプログラムコードは、例えば、選択された組み合わせを許可されることを示す値Suceed（＝０）、選択された組み合わせにおいてユーザが変更した設定値以外の他の設定値が変更されたことを示す値Arbitrate（＝１）、および選択された組み合わせにおいてユーザが変更した設定値は設定できない（つまり、他の設定値を変更しても、許可される組み合わせとならない）ことを示す値Prohibited（−１）のいずれかを返す。
【００５０】
固有データ部６３は、コード部６２により参照されるデータであって、必要に応じて禁則処理プログラム５３に挿入されるデータである。なお、コード部６２がバイナリコード（オブジェクトコード）である場合には、固有データ部６３は、コード部６２内に含められる。
【００５１】
現状データ部６４は、コード部６２による禁則処理の対象になる設定項目の現在値を示すデータである。この現在値は、変動データ収集部４４により内部装置から収集されるデータである。図８は、図６における現状データ部６４の一例を示す図である。この現状データ部６４は、ＸＭＬで記述されている。現状データ部６４は、「currentSettings」要素として記述されている。図８に示す現状データ部６４では、設定項目「解像度」の現在の設定値が「resolution」要素で示され、設定項目「色モード」の現在の設定値が「colormode」要素で示され、設定項目「ファイル形式」の現在の設定値が「format」要素で示されている。
【００５２】
参照データ部６５は、コード部６２による禁則処理に必要となる他の設定項目の現在値（つまり、現状データ部６４の設定項目以外で必要な設定項目の現在値）を示すデータである。この現在値は、変動データ収集部４４により内部装置から収集されるデータである。図９は、図６における参照データ部６５の一例を示す図である。この参照データ部６５は、ＸＭＬで記述されている。参照データ部６５は、「references」要素として記述されている。図９に示す参照データ部６５では、設定項目「両面スキャン」の現在の設定値が「duplex」要素で示されている。
【００５３】
現状データ部６４および参照データ部６５は、禁則処理時にコード部６２のプログラムに従ってＵＩ禁則処理部３３により参照される。これらは、例えば、ユーザ操作により変更が行われた設定を特定するに使用される。
【００５４】
図２に戻り、追加アプリケーションプログラム５４は、デフォルトでインストールされているアプリケーションプログラムに追加してインストールされるもので、後述の追加アプリケーション４７ｂの処理が記述されたプログラムである。例えば、コントローラ１７がＪＡＶＡ（登録商標）の実行環境を有する場合、追加アプリケーションプログラム５４としてＪＡＶＡアプリケーションがインストールされる。
【００５５】
図１に戻り、コントローラ１７は、プリンタ１１、スキャナ１２およびファクシミリ装置１３といった内部装置を制御する装置である。また、コントローラ１７は、操作パネル部１４とデータ通信を行い、ユーザインタフェースとしての操作パネル部１４に設定画面を表示させたり、その設定画面に対して入力された設定情報を取得して、その設定情報に従って内部装置を動作させる。さらに、コントローラ１７は、設定画面の画面データとともにその設定画面における禁則処理を記述した禁則処理プログラムを操作パネル部１４に送信する。このコントローラ１７は、ＣＰＵ、ＲＯＭ、ＲＡＭなどを有するコンピュータであり、ＲＯＭ、記憶装置１６などからＲＡＭへプログラムをロードし、そのプログラムをＣＰＵで実行することにより、各種処理部を実現する。この実施の形態では、コントローラ１７において、通信制御部４１、送信データ生成部４２、固定データ管理部４３、変動データ収集部４４、禁則処理プログラム構成部４５、アプリケーション４７ａ、追加アプリケーション４７ｂ、メイン禁則処理部４８およびコントローラ４９が実現される。
【００５６】
通信制御部４１は、通信回路１７ａを制御して、操作パネル部１４との間でデータ通信を行う処理部である。通信制御部４１は、送信データ生成部４２により生成または選択された画面データおよび禁則処理プログラムを操作パネル部１４へ送信する。
【００５７】
送信データ生成部４２は、操作パネル部１４から要求された要求された画面データのテンプレートデータ５１に、その画面データの設定画面における設定項目についての現在の設定値および設定範囲情報を適用して画面データを生成する処理部である。また、送信データ生成部４２は、記憶装置１６における禁則処理プログラム５３から、生成された画面データに対応する禁則処理プログラム５３を選択する。
【００５８】
固定データ管理部４３は、テンプレートデータ５１を管理する処理部である。
【００５９】
変動データ収集部４４は、例えばデバイス制御部４９を使用して、要求された画面データの設定画面における設定項目についての現在の設定値および設定範囲情報を複合機１の内部装置（プリンタ１１、スキャナ１２など）から取得する処理部である。
【００６０】
プログラム構成部４５は、変動データ収集部４４により得られた現在の設定値および設定範囲情報（つまり、設定可能な範囲を示す、選択肢群、上限値および下限値の組など）を、禁則処理プログラム５３に反映して、送信用の禁則処理プログラム５３を生成する処理部である。なお、禁則処理プログラム５３がＺＩＰファイル（つまり圧縮ファイル）である場合、そのＺＩＰファイルを解凍して得られたファイルのうち、現在の設定値および設定範囲情報を現状データ部６４および／または参照データ部６５に書き込んだ後、それらのファイルをＺＩＰファイルに再度圧縮するようにしてもよい。また、禁則処理プログラム５３を構成するファイルを圧縮せずに同一フォルダ内で管理しておき、現在の設定値および設定範囲情報を書き込んだ後に、それらのファイルをＺＩＰファイルに圧縮するようにしてもよい。また、禁則処理プログラム５３がＸＭＬファイル（つまりテキストファイル）である場合には、現在の設定値および設定範囲情報を現状データ部６４および／または参照データ部６５にただちに書き込めばよい。
【００６１】
なお、通信制御部４１、送信データ生成部４２、固定データ管理部４３、変動データ収集部４４およびプログラム構成部４５により、操作パネル部１４に関連する処理を実行するパネル処理部４６が構成される。
【００６２】
アプリケーション４７ａは、コントローラ１７によりアプリケーションプログラムが実行されて形成される処理部である。アプリケーション４７ａは、ユーザによる操作パネル部１４へのユーザ操作に基づいて機能実行要求の発生を検出すると、コントローラＡＰＩなどを介して、その機能実行要求により指定されるアプリケーション４７ａ固有の動作をデバイス制御部４９に実行させる。これにより、デバイス制御部４９が、プリンタ１１、スキャナ１２およびファクシミリ装置１３を制御して、機能実行要求により指定される動作を実行させる。
【００６３】
追加アプリケーション４７ｂは、追加インストールされた追加アプリケーションプログラム５４がコントローラ１７により実行されて形成される処理部である。追加アプリケーション４７ｂは、ユーザによる操作パネル部１４へのユーザ操作に基づいて機能実行要求の発生を検出すると、コントローラＡＰＩなどを介して、その機能実行要求により指定される追加アプリケーション４７ｂ固有の動作をデバイス制御部４９に実行させる。これにより、デバイス制御部４９が、プリンタ１１、スキャナ１２およびファクシミリ装置１３を制御して、機能実行要求により指定される動作を実行させる。
【００６４】
メイン禁則処理部４８は、設定画面などの操作パネル部１４による画面上の禁則処理以外の禁則処理を行う処理部である。例えば、各種カウンタ値に基づく内部装置の使用制限などは、メイン禁則処理部４８により実行される。
【００６５】
デバイス制御部４９は、プリンタ１１、スキャナ１２およびファクシミリ装置１３を制御するとともに、それらとの間でデータ入出力を行う処理部である。なお、デバイス制御部４９を使用するために、コントローラＡＰＩ（Application Program Interface）が実装されている。コントローラＡＰＩは、プリンタ１１、スキャナ１２、ファクシミリ装置１３および操作パネル１４の機能を実行させたり、それらとの間でデータ入出力を実行させたりする際に、アプリケーション４７ａまたは追加アプリケーション４７ｂからの指令に従って、デバイス制御部４９を動作させる。
【００６６】
次に、上記複合機１の動作について説明する。
【００６７】
図１０は、図１に示す複合機１における操作パネル部１４の設定画面に関する処理について説明するシーケンス図である。
【００６８】
まず、アプリケーション４７ａまたは追加アプリケーション４７ｂは、起動すると、所定の画面データをパネル処理部４６に生成させ、操作パネル部１４にその画面データに基づく画面を表示させる。
【００６９】
その後、操作パネル部１４において、入力装置２２がユーザ操作を検出し、現在の画面から設定画面へ遷移する要求が発生すると（ステップＳ１）、表示処理部３２は、その設定画面の画面データをコントローラ１７へ要求する（ステップＳ２）。このとき、要求、および要求する画面データのＵＲＬが、通信制御部３１により、コントローラ１７へ送信される。その際、物理層では、通信回路１４ａ，１７ａがその要求およびＵＲＬの送受のためのデータ通信を行う（以下、同様）。
【００７０】
コントローラ１７では、その要求およびＵＲＬが通信制御部４１により受信すると、アプリケーション４７ａまたは追加アプリケーション４７ｂに通知され、アプリケーション４７ａまたは追加アプリケーション４７ｂは、その要求についての処理を次のようにパネル処理部４６に実行させる。まず、送信データ生成部４２は、そのＵＲＬから、禁則処理テーブル５２を参照して、要求された画面データに対応するテンプレートデータ５１および禁則処理プログラム５３を特定する。そして、変動データ収集部４４は、テンプレートデータ５１および禁則処理プログラム５３に必要な設定項目の現在の値および設定範囲情報を内部装置から取得する。そして、送信データ生成部４２は、その現在の値および設定範囲情報をテンプレートデータ５１に反映して画面データを生成し、プログラム構成部４５は、その現在の値および設定範囲情報を、禁則処理プログラム５３に反映する（ステップＳ４）。その後、送信データ生成部４２は、通信制御部４１で、その画面データおよび禁則処理プログラム５３を操作パネル部１４へ送信する（ステップＳ５）。
【００７１】
操作パネル部１４において、通信制御部３１が、その画面データおよび禁則処理プログラム５３を受信すると、表示処理部３２は、その画面データに基づいて設定画面を表示装置２１に表示させる（ステップＳ６）。これにより、画面遷移が完了する。なお、このとき受信された禁則処理プログラム５３は、操作パネル部１４内の図示せぬ記憶装置、演算処理装置２３内のＲＡＭなどに、その画面データとともに保存される。
【００７２】
その後、その設定画面が表示されている間において、入力装置２２がユーザ操作を検出するたびに設定入力処理が行われる（ステップＳ７）。図１１は、図１０における設定入力処理（ステップＳ７）の詳細について説明するフローチャートである。また、図１２は、スキャナ１２の動作パラメータの設定画面の一例を示す図である。図１２（Ａ）は、設定画面の表示例を示し、図１２（Ｂ）は、設定画面の画面データの一例を示す。
【００７３】
図１２（Ｂ）に示すような画面データが受信され、図１２（Ａ）に示すような設定画面が表示されている間、表示処理部３２は、入力装置２２により、現在の設定値のいずれかを変更するためのユーザ操作（例えば図１２（Ａ）におけるプルダウンメニューによる他の選択肢の選択）、または設定終了のためのユーザ操作（図１２（Ａ）におけるＯＫボタンの押下）の有無を監視する（ステップＳ１１，Ｓ１２）。
【００７４】
そして、表示処理部３２は、現在の設定値のいずれかを変更するためのユーザ操作が検出されると、ＵＩ禁則処理部３３に禁則処理を実行させる。ＵＩ禁則処理部３３は、その設定画面の画面データとともに受信された禁則処理プログラム５３を特定し、その禁則処理プログラム５３において指定されたエントリポイントで、コード部６２のプログラムコードを呼び出して演算処理装置２３に実行させる。その際、ＵＩ禁則処理部３３は、禁則処理プログラム５３で指定されている禁則処理の型を特定し、その型に対応する形式の戻り値をプログラムコードから受け取り、その戻り値に応じた処理を行う。ここでは、禁則処理プログラム５３に二値型のプログラムコードが含まれる場合を仮定する。
【００７５】
演算処理装置２３は、コード部６２のプログラムコードに従って、禁則処理を実行し、ＵＩ禁則処理部３３は、そのプログラムコードの戻り値から、現在の設定値の組み合わせにおける、いずれかの設定値が変更された場合に禁則違反が生じるか否かを判定する（ステップＳ１３）。
【００７６】
そして、禁則違反が生じない場合、ＵＩ禁則処理部３３は、設定値の変更を承認し、表示処理部３２は、設定値が変更された状態の設定画面を表示装置２１に表示させる（ステップＳ１４）。一方、禁則違反が生じる場合には、ＵＩ禁則処理部３３は、警告メッセージを表示装置２１に表示させ、設定値の変更を拒否する（ステップＳ１５）。図１３は、図１１に示す設定入力処理において禁則違反が検出された際に表示される警告メッセージの一例を示す図である。図１３に示すように設定画面上に警告メッセージを含むダイアログが表示され、そのダイアログのＯＫボタンが押下されるまで、表示され続ける。その後、そのＯＫボタンが押下されると、そのダイアログが消去され、設定値の変更操作前の設定画面が表示される。なお、図１３に示すダイアログでは、警告メッセージのみが表示されるが、禁則違反の原因となった設定値変更を示すメッセージ（例えば、「現在の設定では解像度を６００から２４００へ変更できません。」など）を併せて通知するようにしてもよい。また、ここでは、警告メッセージを含むダイアログを設定画面に重畳させて表示させているが、その代わりに、警告メッセージなどを表示するメッセージフィールドを設定画面内に予め設けておき、そのフィールドに警告メッセージを表示するようにしてもよい。
【００７７】
このようにして、操作パネル部１４において、ユーザ操作に応じて、設定値が、禁則に違反しないようにして変更される。
【００７８】
そして、設定終了のためのユーザ操作（図１２（Ａ）におけるＯＫボタンの押下）が検出されると、設定入力処理が終了し、表示処理部３２は、その時点の設定値の組み合わせを設定データとしてコントローラ１７へ送信する（ステップＳ８）。
【００７９】
コントローラ１７では、その設定データが通信処理部４１により受信されると、その設定画面を操作パネル部１４に表示させたアプリケーション４７ａまたは追加アプリケーション４７ｂにその設定データが供給され、アプリケーション４７ａまたは追加アプリケーション４７ｂは、その設定データの値を、デバイス制御部４９を使用して内部装置に設定する。
【００８０】
以上のように、上記実施の形態によれば、複合機１は、設定画面を表示装置２１に表示する操作パネル部１４と、設定画面の画面データを操作パネル部１４に送信するコントローラ１７とを備える。そして、コントローラ１７は、画面データとともに禁則処理プログラム５３を操作パネル部１４に送信する。一方、操作パネル部１４は、コントローラ１７から画面データを禁則処理プログラム５３とともに受信する通信制御部３１と、受信された画面データに基づいて表示装置２１に設定画面を表示させる表示処理部３２と、受信された禁則処理プログラム５３に従って設定画面における設定に対する禁則処理を行うＵＩ禁則処理部３３とを備える。
【００８１】
これにより、ユーザ操作により設定値が変更されるときの禁則処理のための操作パネル部１４とコントローラ１７との間の通信が減るとともに比較的負荷の軽い操作パネル部１４で禁則処理を行うため、禁則処理を短時間で行うことができる。このため、ユーザの利便性を損なうことなく、禁則処理を実行することができる。また、操作パネル部１４とコントローラ１７のロードバランスも最適なものに近づく。
【００８２】
また、このように画面データと禁則処理プログラムとを分離することで、画面設計時において、設計者が、まず、禁則処理を意識せずに画面設計を行い、画面設計完了後に禁則処理を設計すればよいため、画面データの設計と禁則処理プログラムの設計とを分離させることができ、設計作業を簡素化することができる。
【００８３】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【００８４】
例えば、上記実施の形態において、追加アプリケーション４７ｂについての禁則処理のために、デフォルトでインストールされている禁則処理プログラム５３を使用してもよい。また、汎用の禁則処理プログラム５３を予めインストールしておき、アプリケーション４７ａおよび追加アプリケーション４７ｂが、その汎用の禁則処理プログラム５３を使用するようにしてもよい。また、禁則処理プログラム５３のコード部６２は、ライブラリ・プラグインなどとして提供するようにしてもよい。
【産業上の利用可能性】
【００８５】
本発明は、例えば、スキャナ機、コピー機、プリンタ、複合機などに適用可能である。
【符号の説明】
【００８６】
１  複合機（画像形成装置の一例）
１４  操作パネル部
１６  記憶装置
１７  コントローラ
２１  表示装置
３１，４１  通信制御部
３２  表示処理部
３３  ＵＩ禁則処理部（禁則処理部の一例）
４２  送信データ生成部
４４  変動データ収集部
５１  テンプレートデータ
５３  禁則処理プログラム
【図１】
2011129967.tif 000003
【図２】
2011129967.tif 000004
【図３】
2011129967.tif 000005
【図４】
2011129967.tif 000006
【図５】
2011129967.tif 000007
【図６】
2011129967.tif 000008
【図７】
2011129967.tif 000009
【図８】
2011129967.tif 000010
【図９】
2011129967.tif 000011
【図１０】
2011129967.tif 000012
【図１１】
2011129967.tif 000013
【図１２】
2011129967.tif 000014
【図１３】
2011129967.tif 000015
【図１４】
2011129967.tif 000016
【図１５】
2011129967.tif 000017