(57)【特許請求の範囲】
【請求項１】
３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定する、禁則回避処理決定装置であって、
前記３つ以上の項目それぞれの重要度を記憶する重要度記憶手段と、
前記３つ以上の項目のうちの１つの項目をトリガアイテムに定め、当該トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避される場合に当該値を当該他の値へ変更する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する決定手段と、
前記決定手段によって決定された前記回避処理を、前記禁則関係が生じた際に提示するために記憶する回避処理記憶手段と、
を有し、
前記決定手段は、前記３つ以上の項目の組合せが複数ある場合に、当該複数の組合せそれぞれについて、前記回避処理を複数、一括して決定する、
ことを特徴とする禁則回避処理決定装置。
【請求項２】
前記複数の組合せのうちのいずれかについて前記禁則関係が生じた場合に、前記回避処理記憶手段に記憶されている、当該禁則関係が生じた組合せに係る前記回避処理を提示する提示手段と、
ユーザが許可した場合に、前記提示手段によって提示された前記回避処理を実行する、回避処理手段と、を有する、
請求項１に記載の禁則回避処理決定装置。
【請求項３】
３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定する、禁則回避処理決定装置であって、
前記３つ以上の項目それぞれの重要度を記憶する記憶手段と、
前記３つ以上の項目のうちの１つの項目をトリガアイテムに定め、当該トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避される場合に当該値を当該他の値へ変更する処理および当該他の値から別の値へユーザが変更することができないように当該下位項目を設定するための画面を表示する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する、決定手段と、
を有することを特徴とする禁則回避処理決定装置。
【請求項４】
前記決定手段は、前記下位項目が複数ある場合は前記重要度が低いものから優先的に、当該下位項目の前記値を前記他の値へ変更したならば前記禁則関係が回避されるか否かを、前記禁則関係が回避されるものが所定の個数になるまで判別する、
請求項１ないし請求項３のいずれかに記載の禁則回避処理決定装置。
【請求項５】
前記決定手段は、前記下位項目が取り得る前記他の値が複数ある場合は、予め決められたものから優先的に、当該他の値へ変更したならば前記禁則関係が回避されるか否かを判別する、
請求項１ないし請求項４のいずれかに記載の禁則回避処理決定装置。
【請求項６】
前記決定手段は、前記下位項目が１つもない場合は、前記トリガアイテムの前記値を前記他の値へ変更しない処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する、
請求項１または請求項３に記載の禁則回避処理決定装置。
【請求項７】
３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定する、禁則回避処理決定方法であって、
前記３つ以上の項目それぞれの重要度を重要度記憶手段に記憶させておき、
前記３つ以上の項目のうちの１つの項目をトリガアイテムに定め、前記トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避されると判別した場合に当該値を当該他の値へ変更する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する決定処理と、
前記決定処理によって決定した前記回避処理を、前記禁則関係が生じた際に提示するために回避処理記憶手段に記憶させる保存処理と、
を実行し、
前記３つ以上の項目の組合せが複数ある場合は、前記決定処理として、当該複数の組合せそれぞれについて、前記回避処理が複数、一括して決定する処理を実行する、
ことを特徴とする禁則回避処理決定方法。
【請求項８】
３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定する、禁則回避処理決定方法であって、
前記３つ以上の項目それぞれの重要度を重要度記憶手段に記憶させておき、
前記３つ以上の項目のうちの１つの項目をトリガアイテムに定め、
前記トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避されると判別した場合に当該値を当該他の値へ変更する処理および当該他の値から別の値へユーザが変更することができないように当該下位項目を設定するための画面を表示する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する、
ことを特徴とする禁則回避処理決定方法。
【請求項９】
３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定し、前記３つ以上の項目それぞれの重要度を記憶する記憶手段へアクセスすることができるコンピュータに用いられるコンピュータプログラムであって、
前記コンピュータに、
前記３つ以上の項目のうちの１つの項目をトリガアイテムに定める第一の処理と、
前記トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避されると判別した場合に当該値を当該他の値へ変更する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する、第二の処理と、
前記第二の処理によって決定した前記回避処理を、前記禁則関係が生じた際に提示するために回避処理記憶手段に記憶させる、第三の処理と、
実行させ、
前記３つ以上の項目の組合せが複数ある場合は、前記第二の処理として、当該複数の組合せそれぞれについて、前記回避処理が複数、一括して決定する処理を実行させる、
ことを特徴とするコンピュータプログラム。
【請求項１０】
３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定し、前記３つ以上の項目それぞれの重要度を記憶する記憶手段へアクセスすることができるコンピュータに用いられるコンピュータプログラムであって、
前記コンピュータに、
前記３つ以上の項目のうちの１つの項目をトリガアイテムに定める第一の処理、を実行させ、
前記トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避されると判別した場合に当該値を当該他の値へ変更する処理および当該他の値から別の値へユーザが変更することができないように当該下位項目を設定するための画面を表示する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する、第二の処理、を実行させる、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、いわゆる禁則関係にある複数の条件を回避するための技術に関する。
【背景技術】
【０００２】
画像形成装置の性能が向上することに伴い、画像形成装置に処理を実行させる際に設定すべき項目が増加している。また、１つの項目について設定できる値の範囲または選択肢が増加している。
【０００３】
これらの増加に伴い、ある処理の条件として、ある値を一方の項目に設定し、かつ、ある値を他方の項目に設定することが、禁止されることがある。３つ以上の設定について、特定の値を設定することが禁止されることもある。以下、複数の値の、このような関係を「禁則関係」と記載する。
【０００４】
禁則関係に関する技術として、次のような技術が提案されている。画像形成装置は、設定変更中の機能と禁則関係にある機能を判断し、禁則関係の機能がある場合は、警告エラーと共に禁則関係となっている機能を表示することで、ユーザーに禁則関係の機能があることを示してその解決を促す。そして、禁則関係が解決されたなら、その設定を印刷に適用する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−２３２５０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載する技術によると、画像形成装置は、禁則関係が解消されたことを判断することができる。
【０００７】
さらに、禁則関係を事前に回避し、または、既に生じている禁則関係を自動的に回避することができることが、求められる。
【０００８】
しかし、禁則関係を自動的に回避するには、禁則関係にある要素の組合せごとに開発者が回避の方法を予め設定しておかなければならない。このため、開発の工数が嵩んでしまう。特に、３つ以上の要素が禁則関係にある場合に、回避の方法の設定が面倒であり、開発の工数が益々嵩んでしまう
本発明は、このような問題に鑑み、３つ以上の要素の禁則関係を回避するための方法を従来よりも容易に求められるようにすることを、目的とする。
【課題を解決するための手段】
【０００９】
本発明の一形態に係る禁則回避処理決定装置は、３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定する、禁則回避処理決定装置であって、前記３つ以上の項目それぞれの重要度を記憶する重要度記憶手段と、前記３つ以上の項目のうちの１つの項目をトリガアイテムに定め、当該トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避される場合に当該値を当該他の値へ変更する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する決定手段と、前記決定手段によって決定された前記回避処理を、前記禁則関係が生じた際に提示するために記憶する回避処理記憶手段と、を有し、前記決定手段は、前記３つ以上の項目の組合せが複数ある場合に、当該複数の組合せそれぞれについて、前記回避処理を複数、一括して決定する。
好ましくは、前記複数の組合せのうちのいずれかについて前記禁則関係が生じた場合に、前記回避処理記憶手段に記憶されている、当該禁則関係が生じた組合せに係る前記回避処理を提示する提示手段と、ユーザが許可した場合に、前記提示手段によって提示された前記回避処理を実行する、回避処理手段と、を有する。
本発明の他の一形態に係る３つ以上の項目の各値が、同時に適用することが禁止されている関係である禁則関係にある場合に、当該禁則関係を回避する回避処理を決定する、禁則回避処理決定装置であって、前記３つ以上の項目それぞれの重要度を記憶する記憶手段と、前記３つ以上の項目のうちの１つの項目をトリガアイテムに定め、当該トリガアイテムよりも前記重要度が低くまたは前記重要度が同じである項目である下位項目の前記値を他の値へ変更したならば前記禁則関係が回避されるか否かを判別し、回避される場合に当該値を当該他の値へ変更する処理および当該他の値から別の値へユーザが変更することができないように当該下位項目を設定するための画面を表示する処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する、決定手段と、を有する。
【００１０】
好ましくは、前記決定手段は、前記下位項目が複数ある場合は前記重要度が低いものから優先的に、当該下位項目の前記値を前記他の値へ変更したならば前記禁則関係が回避されるか否かを、前記禁則関係が回避されるものが所定の個数になるまで判別する。
【００１１】
前記決定手段は、前記下位項目が取り得る前記他の値が複数ある場合は、予め決められたものから優先的に、当該他の値へ変更したならば前記禁則関係が回避されるか否かを判別する。
【００１２】
前記決定手段は、前記下位項目が１つもない場合は、前記トリガアイテムの前記値を前記他の値へ変更しない処理を、当該トリガアイテムに前記値が設定されようとした際の前記回避処理に決定する。
【発明の効果】
【００１６】
本発明によると、３つ以上の要素の禁則関係を回避するための方法を従来よりも容易に求められるようにすることができる。
【図面の簡単な説明】
【００１７】
【図１】印刷システムの全体的な構成の例を示す図である。
【図２】画像形成装置のハードウェア構成の例を示す図である。
【図３】多次元の項目のグループの関係の例を示す図である。
【図４】画像形成装置の機能的構成の例を示す図である。
【図５】禁則グループテーブルの例を示す図である。
【図６】優先度辞書テーブルの例を示す図である。
【図７】属性辞書テーブルの例を示す図である。
【図８】コントロールの例を示す図である。
【図９】第一の禁則処理テーブルの例を示す図である。
【図１０】第二の禁則処理テーブルの例を示す図である。
【図１１】条件式生成処理の流れの例を説明するフローチャートである。
【図１２】禁則回避条件式の生成の全体的な処理の流れの例を説明するフローチャートである。
【図１３】ダイアログ画面の例を示す図である。
【図１４】辞書テーブルの例を示す図である。
【図１５】ダイアログ画面の例を示す図である。
【発明を実施するための形態】
【００１８】
図１は、印刷システム３の全体的な構成の例を示す図である。図２は、画像形成装置１のハードウェア構成の例を示す図である。図３は、多次元の項目のグループの関係の例を示す図である。図４は、画像形成装置１の機能的構成の例を示す図である。
【００１９】
図１に示すように、印刷システム３は、画像形成装置１、端末装置２１、および通信回線２３などによって構成される。画像形成装置１および端末装置２１は、通信回線２３を介して通信を行うことができる。通信回線２３として、いわゆるＬＡＮ（Local Area Network）回線、インターネット、公衆回線、または専用線などが用いられる。
【００２０】
画像形成装置１は、コピー、ＰＣプリント、ファックス、およびスキャナなどの機能を集約した装置である。一般に、「複合機」または「ＭＦＰ（Multi Function Peripherals）」などと呼ばれることがある。
【００２１】
「ＰＣプリント」は、端末装置２１から受信した画像データに基づいて画像を用紙に印刷する機能である。「ネットワークプリンティング」または「ネットワークプリント」などと呼ばれることもある。
【００２２】
画像形成装置１は、図２に示すように、ＣＰＵ（Central Processing Unit）１０ａ、ＲＡＭ（Random Access Memory）１０ｂ、ＲＯＭ（Read Only Memory）１０ｃ、大容量記憶装置１０ｄ、タッチパネルディスプレイ１０ｅ、操作キーパネル１０ｆ、ＮＩＣ（Network Interface Card）１０ｇ、モデム１０ｈ、スキャンユニット１０ｉ、プリントユニット１０ｊ、フィニッシャ１０ｋ、パンチ折装置１０ｍ、および仕分装置１０ｎなどによって構成される。
【００２３】
タッチパネルディスプレイ１０ｅは、ユーザに対するメッセージを示す画面、ユーザがコマンドまたは情報を入力するための画面、およびＣＰＵ１０ａが実行した処理の結果を示す画面などを表示する。また、タッチパネルディスプレイ１０ｅは、タッチされた位置を示す信号をＣＰＵ１０ａへ送る。
【００２４】
操作キーパネル１０ｆは、いわゆるハードウェアキーボードであって、テンキー、スタートキー、ストップキー、およびファンクションキーなどによって構成される。
【００２５】
ＮＩＣ１０ｇは、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）などのプロトコルで端末装置２１との通信を行う。
【００２６】
モデム１０ｈは、ファクシミリ端末との間でＧ３などのプロトコルで画像データをやり取りする。
【００２７】
スキャンユニット１０ｉは、プラテンガラスの上にセットされたシートに記されている画像を読み取って画像データを生成する。
【００２８】
プリントユニット１０ｊは、スキャンユニット１０ｉによって読み取られた画像のほか、ＮＩＣ１０ｇまたはモデム１０ｈによって他の装置から受信した画像を用紙に印刷する。
【００２９】
フィニッシャ１０ｋは、プリントユニット１０ｊによって画像が印刷された用紙（以下、「印刷物」と記載する。）を複数枚、ステープラで綴じる。つまり、ステープル綴じを行う。異なる機種の複数のフィニッシャ１０ｋを画像形成装置１に設けることもできる。
【００３０】
パンチ折装置１０ｍは、印刷物にパンチ穴を開け、または、印刷物を折り曲げる。両方を行うこともできる。本実施形態では、パンチ穴を開ける処理および折りの処理の両方をパンチ折装置１０ｍが行うが、それぞれを別の装置で行ってもよい。
【００３１】
仕分装置１０ｎは、印刷物を、複数のペーパトレイのうちのいずれかへ排出することによって仕分けする。
【００３２】
ＲＯＭ１０ｃまたは大容量記憶装置１０ｄには、上述のコピーなどの各機能を実現するためのプログラムが記憶されている。これらのプログラムは、必要に応じてＲＡＭ１０ｂにロードされ、ＣＰＵ１０ａによって実行される。大容量記憶装置１０ｄとして、ハードディスクまたはＳＳＤ（Solid State Drive）などが用いられる。
【００３３】
端末装置２１は、画像形成装置１のクライアントである。ユーザは、端末装置２１を操作することによって、画像形成装置１の上述の種々の機能を遠隔的に使用することができる。端末装置２１として、ノートパソコン、デスクトップパソコン、スマートフォン、またはタブレットコンピュータなどが用いられる。
【００３４】
ところで、画像形成装置１は、上述の機能が使用される際に、種々の項目（アイテム）に関して設定がなされる。例えば、印刷に関する設定として、用紙のサイズの設定、用紙の向きの設定などが、なされる。また、印刷物の仕上げに関する設定として、ステープル綴じに使用するフィニッシャ１０ｋの選択、ステープル綴じを行うか否かの設定、パンチ穴を開けるか否かの設定、パンチ穴の位置の設定、パンチ穴の個数の設定、折りを行うか否かおよび行う場合の折りの種類の設定、仕分けを行うか否かの設定、および仕分け先の設定が、なされる。
【００３５】
しかし、これらの設定を自由に行うことができるとは限らない。つまり、ある値（条件）をある１つの項目に設定した場合に、他の項目に設定できる値が制限されることがある。以下、このような関係を「禁則関係」と記載する。
【００３６】
禁則関係を有する組合せは、２つの項目の値に限られない。３つ以上の項目の値が禁則関係を有する場合もある。
【００３７】
例えば、図３に示すように、横方向に並ぶＭ個の項目および縦方向に並ぶＮ個の項目すなわち合計（Ｍ＋Ｎ）個の項目のうちの、最多で（Ｍ＋Ｎ）個の項目の値が禁則関係を有する場合がある。つまり、いわゆる多次元の禁則関係を有する場合がある。
【００３８】
図３に示す同じ次元の複数の項目は、画像形成装置１の設計上、組み合わせることができない。例えば、項目（Ｉｔｅｍ）Ｘ１１および項目Ｘ１２は、ともに次元Ｘ１に属するので、組み合わせることができない。
【００３９】
また、異なる次元の一部の複数の項目も、組み合わせることができないように設計されている。例えば、項目Ｘ１２と項目Ｘ２１は、属する次元が異なるが、設計上、組み合わせることができない。
【００４０】
「○」は、禁則関係にないことを意味し、「×」は、複数の値同士が禁則関係にあることを意味する。
【００４１】
例えば、太枠で示す右から２列目、上から３行目の「○」は、項目「ＩｔｅｍＸ１１」の値「ｘ１１２」、項目「ＩｔｅｍＸ２２」の値「ｘ２２１」、…、項目「ＩｔｅｍＸＭ２」の値「ｘｍ２１」、項目「ＩｔｅｍＹ１２」の値「ｙ１２２」、項目「ＩｔｅｍＹ２２」の値「ｙ２２１」、…、および項目「ＩｔｅｍＹＮ２」の値「ｙＮ２１」同士が禁則関係にないことを意味する。また、太枠で右から５列目、最下行の「×」は、項目「ＩｔｅｍＸ１２」の値「ｘ１２２」、…、項目「ＩｔｅｍＸＭ２」の値「ｘｍ２２」、項目「ＩｔｅｍＹ１１」の値「ｙ１１２」、…、および項目「ＩｔｅｍＹＮ２」の値「ｙＮ２２」同士が禁則関係にあることを意味する。
【００４２】
以下、禁則関係にある複数の項目の各値からなるグループを「禁則グループ」と記載する。禁則関係を有するグループの通りに値を設定することは、禁止される。
【００４３】
画像形成装置１には、多くの禁則グループが存在する。これらの禁則グループを特定し、禁則グループを回避するための条件を表わす式（以下、「禁則回避条件式」と記載する。）を生成するためのプログラムとして、禁則回避条件式生成プログラム１Ｐが大容量記憶装置１０ｄに記憶されている。
【００４４】
禁則回避条件式生成プログラム１Ｐも、他のプログラムと同様に、上述の通り、ＲＡＭ１０ｂにロードされ、ＣＰＵ１０ａによって実行される。以下、禁則回避条件式生成プログラム１Ｐを、画像の印刷および印刷物の仕上げに関する項目を取り扱う場合を例に、説明する。
【００４５】
禁則回避条件式生成プログラム１Ｐによると、図４に示す禁則グループ検索部１０１、項目ソート部１０２、第一の条件式生成部１０３、第二の条件式生成部１０４、禁則関係該当判別部１０５、ダイアログ表示部１０６、設定画面表示部１０７、禁則グループテーブル記憶部１３１、辞書テーブル記憶部１３２、および禁則処理テーブル記憶部１３４などが実現される。
【００４６】
〔データの準備〕
図５は、禁則グループテーブル１４１の例を示す図である。図６は、優先度辞書テーブル１４２の例を示す図である。図７は、属性辞書テーブル１４３の例を示す図である。図８は、コントロールの例を示す図である。図９は、第一の禁則処理テーブル１４４の例を示す図である。図１０は、第二の禁則処理テーブル１４５の例を示す図である。
【００４７】
図４の禁則グループテーブル記憶部１３１には、禁則グループテーブルが記憶される。禁則グループテーブルは、図３に示したような、複数の項目の値同士のグループごとの、禁則関係の有無を示すテーブルである。以下、図５に示す、パンチ穴を開ける仕上げに関する設定のための禁則グループテーブルである禁則グループテーブル１４１を使用する場合を例に、説明する。
【００４８】
禁則グループテーブル１４１には、４つの項目「用紙サイズ」、「原稿方向」、「パンチ穴数」、および「パンチ位置」が示される。
【００４９】
用紙サイズは、パンチ穴を開ける対象である印刷物のサイズである。この項目は、「Ａ３」および「Ａ４」のいずれかの値を取り得る。「Ａ３」は、Ａ３サイズを意味し、「Ａ４」は、Ａ４サイズを意味する。パンチ穴数は、印刷物に開けるパンチ穴の数である。パンチ位置は、印刷物における、パンチ穴を開ける位置である。
【００５０】
原稿方向は、印刷物の向きである。この項目は、「縦」および「横」のいずれかの値を取り得る。「縦」は、縦長（portrait）であることを意味し、「横」は、横長（landscape）であることを意味する。
【００５１】
図４に戻って、辞書テーブル記憶部１３２には、優先度辞書テーブル１４２および属性辞書テーブル１４３が記憶される。
【００５２】
優先度辞書テーブル１４２には、図６のように、項目ごとの優先度が示される。「優先度」は、禁則関係の回避において他の項目よりも優先的にその項目の値が維持される度合である。つまり、優先度が低い項目ほど、禁則関係の回避のために別の値に変更されるなどの処理が施される。また、優先度は、「重要度」と言うことができる。他の項目よりも優先的に設定されることが望ましい項目に対して、より高い優先度が設定される。なお、優先度は、「１」、「２」、…の順に高い。
【００５３】
属性辞書テーブル１４３には、図７のように、項目ごとの属性データ５Ａが格納されている。以下、各属性データ５Ａを「属性データ５Ａ１」、「属性データ５Ａ２」、…と区別して記載することがある。
【００５４】
属性データ５Ａにおいて、「設定値」は、その項目に対して設定することができる値である。
【００５５】
「ＲｅｃｏｖｅｒＶａｌｕｅ」は、各設定値を禁則関係にならないように変更する際の候補の値である。つまり、禁則関係から正常な状態への回復のための候補の値である。ＲｅｃｏｖｅｒＶａｌｕｅを１つだけ有する設定値もあれば、複数有する設定値もある。１つの場合は、候補の値が「ＲｅｃｏｖｅｒＶａｌｕｅ１」に示される。複数の場合は、優先的に用いられる候補の値から順に「ＲｅｃｏｖｅｒＶａｌｕｅ１」、「ＲｅｃｏｖｅｒＶａｌｕｅ２」、…に示される。
【００５６】
「コントロールタイプ」は、その項目に対して値を設定するために用いられるコントロールのタイプである。
【００５７】
なお、「コントロール」は、情報または指令の入力を受け付けるための表示用の要素（オブジェクト）である。１つの項目の設定のために複数のコントロールが組み合わせて使用される場合もある。
【００５８】
「ＣｏｍｂｏＢｏｘ」、「ＣｈｅｃｋＢｏｘ」、「ＲａｄｉｏＢｕｔｔｏｎ」、および「Ｂｕｔｔｏｎ」は、それぞれ、公知の、例えばＨＴＭＬ（Hypertext Markup Language）におけるコンボボックス、チェックボックス、ラジオボタン、およびボタンがコントロールとして用いられることを意味する。
【００５９】
「ペアとなるＣｈｅｃｋＢｏｘ」は、コントロールタイプがＣｈｅｃｋＢｏｘと他のコントロールとの組合せ（ペア）である場合における、このＣｈｅｃｋＢｏｘの識別子である。
【００６０】
例えば、Ｆｏｌｄｉｎｇの項目のコントロールタイプは、「ＣｈｅｃｋＢｏｘ＋ＣｏｍｂｏＢｏｘ」である。これは、チェックボックスおよびコンボボックスが組み合わされてコントロールとして用いられることを意味する。例えば、図８（Ａ）のようにチェックボックス４１とコンボボックス４２とがコントロールとして用いられる。そして、チェックボックス４１に「ＣｈｅｃｋＦｏｌｄ」という識別子が付されていれば、属性データ５Ａ１の通り、「ＣｈｅｃｋＦｏｌｄ」が、ペアとなるＣｈｅｃｋＢｏｘとして設定される。なお、チェックボックス４１が「Ｏｎ」に切り換えられ、三角のボタンが選択されると、図８（Ｂ）のように「中折り」および「三つ折り」の値を選択肢と示すドロップダウンリストが表われる。
【００６１】
なお、優先度辞書テーブル１４２には、図６に示した各項目の優先度のほか、用紙サイズ、パンチ穴数、およびパンチ位置それぞれの優先度が示される。同様に、属性辞書テーブル１４３には、図７に示した各項目の属性データ５Ａのほか、用紙サイズ、パンチ穴数、およびパンチ位置それぞれの属性データ５Ａが格納されている。
【００６２】
図４に戻って、禁則処理テーブル記憶部１３４には、第一の禁則処理テーブル１４４および第二の禁則処理テーブル１４５が記憶される。
【００６３】
第一の禁則処理テーブル１４４には、図９のように、コントロールタイプごとに、どのような処理を禁則処理（禁則関係を回避するための処理）として実行するのか、および、その処理を識別する番号（コマンドタイプ番号）が示される。
【００６４】
第二の禁則処理テーブル１４５にも、図１０のように、コントロールタイプごとの禁則処理およびコマンドタイプ番号が示される。
【００６５】
禁則グループテーブル１４１、優先度辞書テーブル１４２、属性辞書テーブル１４３、第一の禁則処理テーブル１４４、および第二の禁則処理テーブル１４５は、画像形成装置１の開発者によって予め用意される。
【００６６】
〔禁則回避条件式の生成〕
図１１は、条件式生成処理の流れの例を説明するフローチャートである。
【００６７】
禁則グループ検索部１０１は、禁則グループテーブル１４１（図５参照）に示されるグループの中から禁則グループ（禁則関係にあるグループ、つまり「×」のペア）を検索する。
【００６８】
項目ソート部１０２は、禁則グループが禁則グループ検索部１０１によって見つかると、その禁則グループを構成する項目を、優先度辞書テーブル１４２（図６参照）に示される優先度の高い順に並べる。
【００６９】
例えば、禁則グループテーブル１４１において太枠で示す右から３列目、上から２行目の「×」に係る禁則グループが見つかった場合は、用紙サイズ、原稿方向、パンチ穴数、およびパンチ位置を、それぞれの優先度の高い順に、用紙サイズ、パンチ穴数、パンチ位置、および原稿方向の順に並べる。なお、優先度が等しい複数の項目は、任意に並べればよい。
【００７０】
そして、項目ソート部１０２は、優先度が高い順に各項目に「１」、「２」、…、の優先順位を付ける。ただし、優先度が等しい項目については、同じ優先順位を付ける。したがって、上述の例の場合は、用紙サイズおよびパンチ穴数の優先度が等しいので、用紙サイズ、パンチ穴数、パンチ位置、および原稿方向のそれぞれに、「１」、「１」、「３」、および「４」の優先順位を付ける。
【００７１】
第一の条件式生成部１０３および第二の条件式生成部１０４は、項目ソート部１０２による結果に応じて、禁則グループ検索部１０１によって見つかった禁則グループの禁則回避条件式を生成する。
【００７２】
ところで、禁則回避条件式は、次の（１）式のフォーマットを有する。
【００７３】
<Item1>,<Index>＝<Type>,<Item1-value>,<Item2>,<Item2-value>,
<Item2-Recover value>,…,<Item(m+n)>,<Item(m+n)-value>,
<Item1-Recover value>
……  （１）
左辺の要素は、次の内容を示す。<Item1>は、トリガアイテムである。<Index>は、禁則回避条件式を識別する番号（例えば、１，２，３，…のようなシーケンス番号）である。
【００７４】
なお、「トリガアイテム」は、禁則グループの項目のうちの、値を設定しようとしている項目である。また、後に記載する「ターゲットアイテム」は、この禁則グループの項目のうちの、トリガアイテムよりも先に設定が行われている項目である。
【００７５】
右辺の要素は、次の内容を示す。<Item2>、…、<Item(m+n)>は、いずれも、禁則グループの項目のうちの、トリガアイテム以外の項目であって、左（先頭）から順に優先度の高い項目を示す。
【００７６】
<ItemK-value>は、<ItemK>の値である。ただし、１≦Ｋ≦（ｍ＋ｎ）である。例えば、<Item2-value>は、<Item2>の値である。「ｍ＋ｎ」は、次元数である。禁則グループテーブル１４１（図５参照）の場合は、「４」である。
【００７７】
つまり、<Item1>に<Item1-Value>が設定されると、<Item1-value>、<Item2-value>、…、<Item(m+n)-value>のグループに禁則関係が生じる。
【００７８】
<Type>は、上に述べた禁則処理のコマンドタイプ番号である。ただし、<Type>は禁則回避条件式に含まれない場合がある。
【００７９】
<ItemL-Recover value>は、この禁則グループから禁則関係を回避することができる、<ItemL>の値である。ただし、２≦Ｌ≦（ｍ＋ｎ）である。すなわち、<ItemL-value>を<ItemL-Recover value>に変更すれば、禁則関係が回避される。ただし、すべての<ItemL>に<ItemL-Recover value>があるとは、限らない。１つもない場合もある。
【００８０】
第一の条件式生成部１０３は、禁則グループ検索部１０１によって見つかった禁則グループの中の優先度が最も低い項目が１つだけであった際に、この項目がトリガアイテムであり残りの項目がターゲットアイテムである場合の禁則回避条件式を次のように生成する。
【００８１】
第一の条件式生成部１０３は、（１）式の左辺の<Item1>へこの項目（トリガアイテム）の識別子（例えば、項目名）を代入し、未だ発行されていない番号のうち最も小さい番号を<Index>へ代入する。
【００８２】
さらに、第一の条件式生成部１０３は、（１）式の右辺の<Type>を削除する。または、禁則処理を行わないことを示す番号を<Type>へ代入してもよい。<Item2>、…、<Item(m+n)>へ、トリガアイテム以外の項目（残りの項目）の項目名を、優先順位の高い順に代入する。<Item2-Recover value>、…、<Item(m+n)-Recover value>を削除する。
【００８３】
例えば、上述の項目「用紙サイズ」の値「Ａ３」、項目「原稿方向」の値「横」、項目「パンチ穴数」の値「３穴」、および項目「パンチ位置」の値「上」（図５の太枠の禁則グループ）は、項目ソート部１０２によって、優先度の高い順に「用紙サイズ」の値「Ａ３」、項目「パンチ穴数」の値「３穴」、項目「パンチ位置」の値「上」、および項目「原稿方向」の値「横」と並べられる。しかも、原稿方向は、この禁則グループの中で優先度が単独で最も低い項目である。
【００８４】
したがって、第一の条件式生成部１０３による上述の処理によって、禁則回避条件式として次の（２）式が生成される。
【００８５】
原稿方向，１＝横，用紙サイズ，Ａ３，パンチ穴数，３穴，パンチ位置，上
……  （２）
このように、優先度が単独で最も低い項目がトリガアイテムであり残りの項目がターゲットアイテムである場合の禁則回避条件式は、禁則処理に関する条件が何も示されない。したがって、後述するように、禁則関係を回避するには、ユーザは、このトリガアイテムを別の値に設定しなければならない。
【００８６】
第二の条件式生成部１０４は、禁則グループ検索部１０１によって見つかった禁則グループの中の優先度が単独で最も低い項目以外の各項目がトリガアイテムであり残りの項目がターゲットアイテムである場合の禁則回避条件式を生成する。生成の手順は、図１１に示す通りである。
【００８７】
図１１において、第二の条件式生成部１０４は、優先順位が最も低い項目に注目する（＃７０１）。注目した項目（以下、「注目項目」と記載する。）の属性データ５Ａを属性辞書テーブル１４３（図７参照）から読み出し、この禁則グループにおける注目項目の値を、読み出した属性データ５Ａに示されるＲｅｃｏｖｅｒＶａｌｕｅ１に置き換える（＃７０２）。
【００８８】
例えば、注目項目が「原稿方向」でありその値が「横」である場合は、第二の条件式生成部１０４は、属性データ５Ａ４を読み出す。属性データ５Ａ４によると、「横」のＲｅｃｏｖｅｒＶａｌｕｅ１は「縦」である。よって、第二の条件式生成部１０４は、注目項目の値を「縦」に置き換える。
【００８９】
そして、第二の条件式生成部１０４は、ステップ＃７０２の置換の処理によってこの禁則グループから禁則関係がなくなるか否かを判別する（＃７０３）。判別は、禁則グループテーブル１４１（図５参照）に基づいて行うことができる。
【００９０】
例えば、上述の項目「用紙サイズ」の値「Ａ３」、項目「原稿方向」の値「横」、項目「パンチ穴数」の値「３穴」、および項目「パンチ位置」の値「上」からなるグループ（図５の太枠参照）は、ステップ＃７０２によって原稿方向の値が「縦」に変わる。すると、太枠の１つ上のセルに示される通り、置換後のグループには、禁則関係がない。よって、第二の条件式生成部１０４は、禁則関係がなくなると、判別する。
【００９１】
置換によって禁則関係がなくなった場合は（＃７０４でＮｏ）、第二の条件式生成部１０４は、置換後の値の組合せにするための条件式を禁則回避条件式として生成する（＃７１０〜＃７１２）。これについては、後述する。
【００９２】
置換後も禁則関係がある場合は（＃７０４でＹｅｓ）、読み出した属性データ５Ａに他のＲｅｃｏｖｅｒＶａｌｕｅが示されていれば（＃７０５でＹｅｓ）、第二の条件式生成部１０４は、注目項目の値を他のＲｅｃｏｖｅｒＶａｌｕｅに置き換える（＃７０６）。そして、ステップ＃７０３に戻ってこの禁則グループから禁則関係がなくなるか否かを判別する。なお、他のＲｅｃｏｖｅｒＶａｌｕｅが複数ある場合は、ＲｅｃｏｖｅｒＶａｌｕｅ２、ＲｅｃｏｖｅｒＶａｌｕｅ３、…の順に優先的に置き換える。
【００９３】
注目項目の値をいずれのＲｅｃｏｖｅｒＶａｌｕｅに置き換えても禁則関係がある場合は（＃７０４でＹｅｓ、＃７０５でＮｏ）、第二の条件式生成部１０４は、優先順位が１つ上の項目を注目する（＃７０７）。なお、置換した値は、元に戻しておく。また、優先順位が同じである未注目の項目がある場合は、この項目を注目する。
【００９４】
そして、第二の条件式生成部１０４は、ステップ＃７０２〜＃７０６の処理を適宜、実行する。つまり、新たな注目項目の値を、禁則関係がなくなるまでＲｅｃｏｖｅｒＶａｌｕｅ１、ＲｅｃｏｖｅｒＶａｌｕｅ２、…に置き換える。
【００９５】
第二の条件式生成部１０４は、ステップ＃７０２〜＃７０６の処理を、禁則関係がなくなるまで続ける。これにより、優先順位が１つずつ上の項目が注目されて行く。
【００９６】
トリガアイテムである項目と優先順位が同じである項目に注目し、ステップ＃７０２〜＃７０６の処理を実行してもなお、禁則関係がなくならない場合は（＃７０８でＮｏ）、第二の条件式生成部１０４は、第一の条件式生成部１０３と同様の方法で、禁則回避条件式を生成する（＃７０９）。
【００９７】
すなわち、第二の条件式生成部１０４は、（１）式の左辺の<Item1>へこの項目（トリガアイテム）の識別子を代入し、未だ発行されていない番号のうち最も小さい番号を<Index>へ代入する。（１）式の右辺の<Type>を削除し、または、禁則処理を行わないことを示す番号を<Type>へ代入する。<Item2>、…、<Item(m+n)>へ、トリガアイテム以外の項目（残りの項目）の項目名を、優先度の高い順に代入する。そして、<Item2-Recover value>、…、<Item(m+n)-Recover value>を削除する。
【００９８】
一方、注目項目の値をあるＲｅｃｏｖｅｒＶａｌｕｅに置き換えると禁則関係がなくなる場合は（＃７０４でＮｏ）、第二の条件式生成部１０４は、次のように禁則回避条件式を生成する。
【００９９】
第二の条件式生成部１０４は、注目項目の属性データ５Ａの中からコントロールタイプを検索する（＃７１０）。これにより、例えば、注目項目の属性データ５Ａが属性データ５Ａ４である場合は、「ＲａｄｉｏＢｕｔｔｏｎ」がヒットする。
【０１００】
第二の条件式生成部１０４は、第一の禁則処理テーブル１４４（図９参照）または第二の禁則処理テーブル１４５（図１０参照）から、ヒットしたコントロールタイプに対応するコマンドタイプ番号を読み出す（＃７１１）。具体的には、トリガアイテムの優先度と注目項目の優先度が同じである場合は、第一の禁則処理テーブル１４４からコマンドタイプ番号を読み出す。異なる場合は、第二の禁則処理テーブル１４５からコマンドタイプ番号を読み出す。
【０１０１】
そして、第二の条件式生成部１０４は、注目項目の置換後の値および読み出したコマンドタイプ番号などを、次のように（１）へ代入することによって、禁則回避条件式を生成する（＃７１２）。
【０１０２】
（１）式の左辺へは、上述と同様に、<Item1>へトリガアイテムの識別子を代入し、未だ発行されていない番号のうち最も小さい番号を<Index>へ代入する。右辺の<Item2>、…、<Item(m+n)>へも上述と同様に、トリガアイテム以外の項目（残りの項目）の項目名を、優先度の高い順に代入する。
【０１０３】
さらに、右辺の<Type>へ、読み出したコマンドタイプ番号を代入する。<Item2-Recover value>、…、<Item(m+n)-Recover value>のうちの注目項目に係るものへ、置換後の値（禁則関係がなくなる値）を代入し、残りを削除する。
【０１０４】
上述の項目「用紙サイズ」の値「Ａ３」、項目「原稿方向」の値「横」、項目「パンチ穴数」の値「３穴」、および項目「パンチ位置」の値「上」の例において、既に禁則回避条件式を１つ生成しており、コマンドタイプ番号が「５」であり、かつ、注目項目がパンチ位置である場合は、図１１の処理によって、（３）式の禁則回避条件式が生成される。
【０１０５】
パンチ位置，２＝５，上，パンチ穴数，３穴，用紙サイズ，Ａ３，
原稿方向，横，縦
……  （３）
以上のように、第一の条件式生成部１０３によると、禁則グループの中の優先度が単独で最も低い項目の禁則回避条件式が生成される。そして、第二の条件式生成部１０４によると、残りの項目の禁則回避条件式が生成される。
【０１０６】
禁則回避条件式が第一の条件式生成部１０３または第二の条件式生成部１０４によって生成されると、その禁則回避条件式を示す条件式データ５１が条件式記憶部１５０に記憶される。
【０１０７】
図１２は、禁則回避条件式の生成の全体的な処理の流れの例を説明するフローチャートである。
【０１０８】
次に、画像形成装置１が禁則回避条件式生成プログラム１Ｐに基づいて実行する全体的な処理の流れを、図１２を参照しながら説明する。
【０１０９】
禁則回避条件式生成プログラム１Ｐによると、画像形成装置１は、図１２に示す手順で禁則回避条件式の生成の処理を実行する。
【０１１０】
画像形成装置１は、禁則グループテーブル１４１（図５参照）の中から禁則グループを検索する（＃１１）。禁則グループが見つかったら、この禁則グループを構成する項目を、優先度の高い順に並べる（＃１２）。なお、各項目の優先度は、優先度辞書テーブル１４２（図６参照）に基づく。
【０１１１】
画像形成装置１は、この禁則グループの中の優先順位が最も低い項目を選出する（＃１３）。そして、選出した項目がトリガアイテムであり他の項目がターゲットアイテムである場合の禁則回避条件式を次のように生成する。なお、「Ｚ」は禁則グループの次元数であり、禁則グループテーブル１４１の場合は「４」である。
【０１１２】
選出した項目が単独で最下位である場合は（＃１４でＮｏ）、画像形成装置１は、コマンドタイプ番号およびＲｅｃｏｖｅｒＶａｌｕｅを含まない禁則回避条件式を生成する（＃１５）。この式の例は、前述の（２）式である。
【０１１３】
一方、選出した項目と優先度が同じである項目がある場合は（＃１４でＹｅｓ）、画像形成装置１は、コマンドタイプ番号およびＲｅｃｏｖｅｒＶａｌｕｅを含む禁則回避条件式の生成を試みる（＃１６）。生成の手順は、前に図１１で説明した通りである。この式の例は、前述の（３）式である。ステップ＃１６の結果、これらを含まない禁則回避条件式が生成されることもある。
【０１１４】
そして、画像形成装置１は、この禁則グループの中の次に優先順位の高い項目を選出し（＃１７）、新たに選出した項目がトリガアイテムであり他の項目がターゲットアイテムである場合の禁則回避条件式を生成する（＃１６）。
【０１１５】
以上の処理を繰り返すことによって、画像形成装置１は、この禁則グループの中の各項目がトリガアイテムであり他の項目がターゲットアイテムである場合の禁則回避条件式を生成する。
【０１１６】
そして、画像形成装置１は、生成された各禁則回避条件式を示すデータを条件式データ５１として条件式記憶部１５０に記憶させる（＃１９）。
【０１１７】
〔禁則回避条件式の使用方法〕
図１３は、ダイアログ画面６１、６２の例を示す図である。
【０１１８】
画像形成装置１は、禁則回避条件式生成プログラム１Ｐによって生成した禁則回避条件式を次のように使用する。
【０１１９】
ユーザが、ある値をある項目に対して入力すると、図４の禁則関係該当判別部１０５は、その項目のその値および既に設定された各項目の各値からなるグループが禁則関係を有するか否かを、禁則グループテーブル１４１（図５参照）に基づいて判別する。または、条件式記憶部１５０に記憶されている各条件式データ５１に示される禁則回避条件式に基づいて判別してもよい。
【０１２０】
禁則関係を有する場合は、そのグループは、禁則グループである。したがって、そのグループの禁則回避条件式を示す条件式データ５１が条件式記憶部１５０に記憶されているはずである。
【０１２１】
そこで、ダイアログ表示部１０６は、その条件式データ５１を条件式記憶部１５０から読み出し、その禁則回避条件式に基づいて次のような画面をタッチパネルディスプレイ１０ｅに表示させる。
【０１２２】
その禁則回避条件式にコマンドタイプ番号もＲｅｃｏｖｅｒＶａｌｕｅも示されない場合、つまり、上述の（２）式のような禁則回避条件式である場合は、ダイアログ表示部１０６は、図１３（Ａ）のようなダイアログ画面６１を表示させる。
【０１２３】
ダイアログ画面６１には、このグループ（禁則グループ）のメンバのほか、これらを同時に設定することができない旨のメッセージが示される。そして、今回の入力が拒否される。つまり、ユーザは、今回入力した値を設定することができない。
【０１２４】
一方、その禁則回避条件式にコマンドタイプ番号およびＲｅｃｏｖｅｒＶａｌｕｅが示される場合、つまり、上述の（３）式のような禁則回避条件式である場合は、ダイアログ表示部１０６は、図１３（Ｂ）のようなダイアログ画面６２を表示させる。
【０１２５】
ダイアログ画面６２には、ダイアログ画面６１と同様に、このグループのメンバのほか、これらを同時に設定することができない旨のメッセージが示される。さらに、ダイアログ画面６２には、禁則関係を回避するための変更を提案するメッセージが示される。このメッセージは、ＲｅｃｏｖｅｒＶａｌｕｅおよびそれに係る項目に基づいている。（３）式の例の場合は、右辺の「…，原稿方向，横，縦」のうちの「縦」がＲｅｃｏｖｅｒＶａｌｕｅであり「原稿方向」が項目である。
【０１２６】
そして、ＯＫボタン６２１が選択されると、今回の入力が受け付けられて設定される。さらに、提案の通りに、すなわち、その禁則回避条件式に従って、設定済の値が設定し直される。例えば、（３）式の場合は、原稿方向の値が「縦」に設定し直される。これは、禁則処理の１つである。
【０１２７】
さらに、コマンドタイプ番号に対応する他の禁則処理があれば、これが実行される。例えば、禁則処理がコントロールのグレーアウトの処理である場合は、設定画面表示部１０７は、値を設定し直した項目のコントロールをグレーアウト（選択できない形態で表示）させて、設定用の画面を表示する。これにより、ユーザは、その項目を設定し直すことができなくなる。そのほか、コントロールタイプに応じて、設定画面表示部１０７は、禁則グループに係る値の選択肢を非表示にするなどの処理を禁則処理として実行する。禁則処理の内容は、図９の第一の禁則処理テーブル１４４または図１０の第二の禁則処理テーブル１４５に記載される通りである。
【０１２８】
または、キャンセルボタン６２２が選択されると、今回の入力は、拒否される。値の再設定および禁則処理は、行われない。
【０１２９】
本実施形態によると、３つ以上の項目の値の禁則関係を回避するための方法を従来よりも容易に求めることができる。
【０１３０】
図１４は、辞書テーブル１４６の例を示す図である。図１５は、ダイアログ画面６３の例を示す図である。
【０１３１】
本実施形態では、図７に示したように、属性辞書テーブル１４３に、項目およびその項目に設定できる値（設定値）の組合せごとに、ＲｅｃｏｖｅｒＶａｌｕｅを定義した。さらに、図６に示すように、優先度辞書テーブル１４２に項目ごとの優先度を定義した。
【０１３２】
しかし、図１４に示す辞書テーブル１４６のように、１つの項目について、その項目に設定できるすべての設定値に共通にＲｅｃｏｖｅｒＶａｌｕｅを定義してもよい。さらに、優先度をともに定義してもよい。そして、辞書テーブル１４６を使用して、上述の通り、禁則回避条件式を生成する処理を行ってもよい。
【０１３３】
ただし、辞書テーブル１４６を使用する場合は、ＲｅｃｏｖｅｒＶａｌｕｅが示されない項目がある。そこで、第二の条件式生成部１０４（図４参照）は、その項目が注目項目である場合は、その項目の値を任意に変えながら、禁則関係がなくなる値を取得する。
【０１３４】
本実施形態では、すべての禁則グループについて、予め一括して禁則回避条件式を生成し、これらの禁則回避条件式を使用した。つまり、禁則回避条件式を静的に生成し使用した。しかし、ユーザが処理の条件として禁則グループを画像形成装置１に入力したタイミングで、そのときの環境に応じて禁則回避条件式を動的に生成し、使用してもよい。この場合は、画像形成装置１は、例えば次のように処理を行えばよい。
【０１３５】
ユーザは、設定用の画面において幾つかの項目についてそれぞれ値（条件、設定値）を入力する。すると、画像形成装置１は、これらの項目の値が禁則グループであるか否かを禁則グループテーブル１４１（図５参照）に基づいて判別する。禁則グループであれば、禁則回避条件式を生成する。生成の手順は、図１１で説明した通りである。この際に、ユーザが値を入力しようとした項目がトリガアイテムである場合に限定して、禁則回避条件式を生成してもよい。そして、生成した禁則回避条件式に基づいて、禁則関係を回避するための処理を行う。
【０１３６】
以下の変形例も、禁則回避条件式を静的に生成し使用する場合だけでなく動的に生成し使用する場合にも適用することができる。
【０１３７】
本実施形態では、禁則グループの中の１つの項目について禁則回避条件式を１つしか生成しなかったが、予め決められた複数の個数、生成してもよい。この場合は、複数の個数の禁則回避条件式が得られるまで図１１のステップ＃７０３〜＃７０８、＃７１０〜＃７１２の処理を行えばよい。または、その項目よりも優先度が低い他の項目または優先度が同じ他の項目をすべて、順に注目項目として、禁則回避条件式を生成してもよい。
【０１３８】
そして、画像形成装置１は、これらの禁則回避条件式を次のように使用すればよい。ユーザが、ある値をある項目に対して入力すると、画像形成装置１は、その項目のその値および既に設定された各項目の各値からなるグループが禁則関係を有するか否かを、禁則グループテーブル１４１（図５参照）に基づいて判別する。
【０１３９】
禁則関係を有する場合は、そのグループ（禁則グループ）のすべての条件式データ５１を条件式記憶部１５０から読み出す。
【０１４０】
条件式データ５１を１つしか読み出せなかった場合は、画像形成装置１は、上述の通り、ダイアログ画面６１をタッチパネルディスプレイ１０ｅ表示させる。
【０１４１】
一方、複数読み出すことができた場合は、画像形成装置１は、これらのダイアログ画面６１の禁則回避条件式のうちの、インデックス（Index）の値が最も小さい禁則回避条件式に基づいて図１５（Ａ）のようなダイアログ画面６３を表示させる。
【０１４２】
ここで、画像形成装置１は、ＯＫボタン６３１が選択された場合は、ダイアログ画面６２のＯＫボタン６２１が選択された場合と同様に処理を行う。また、キャンセルボタン６３２が選択された場合は、キャンセルボタン６２２が選択された場合と同様に処理を行う。
【０１４３】
別項目ボタン６３３が選択された場合は、画像形成装置１は、次にインデックスの値が小さい禁則回避条件式に基づいて、図１５（Ｂ）のようにダイアログ画面６３を表示し直す。そして、ＯＫボタン６３１が選択された場合およびキャンセルボタン６３２が選択された場合は、この禁則回避条件式に基づいて、上述の通りに処理を行う。別項目ボタン６３３が選択された場合は、次にインデックスの値が小さい禁則回避条件式に基づいてダイアログ画面６３を表示し直す。以下、別項目ボタン６３３が選択されるごとに、これを繰り返す。そして、そのような禁則回避条件式がなくなったら、最初に戻って（つまり、インデックスの値が最も小さい禁則回避条件式に基づいて）、ダイアログ画面６３を表示し直す。
【０１４４】
本実施形態では、主にパンチ穴に関する禁則グループの禁則回避条件式を生成し使用する場合を例に説明したが、他の事項（例えば、ステープル綴じ、ファックス送信、コピーなど）に関する禁則グループの禁則回避条件式を生成し使用する場合にも、本発明を適用することができる。
【０１４５】
本実施形態では、画像形成装置１は、１つの項目だけを注目項目として図１１に示す処理を行ったが、複数の項目を注目項目として選出し、これらの値を変更する禁則回避条件式を生成してもよい。
【０１４６】
本実施形態では、禁則グループ検索部１０１は、禁則グループテーブル１４１（図５参照）に示されるすべての禁則グループを検索したが、画像形成装置１に備わっていない機能に関する項目を含む禁則グループは検索しなくてもよい。例えば、フィニッシャ１０ｋが画像形成装置１に装着されていない場合は、Ｆｉｎｉｓｈｅｒの項目またはＳｔａｐｌｅの項目の値（条件）を含む禁則ペアについては、検索しなくてもよい。これにより、このような禁則グループの禁則回避条件式を生成せず、無駄な処理を省くことができる。
【０１４７】
または、使用を管理者が禁止している機能に関する項目を含む禁則グループは検索しなくてもよい。または、ある項目の値のうちの選択を管理者が禁止している値を含む禁則グループは検索しなくてもよい。
【０１４８】
その他、印刷システム３、画像形成装置１の全体または各部の構成、処理内容、処理順序、テーブルの構成などは、本発明の趣旨に沿って適宜変更することができる。
【符号の説明】
【０１４９】
１  画像形成装置（禁則回避処理決定装置）
１３２  辞書テーブル記憶部（記憶手段）
１０３  第一の条件式生成部（決定手段）
１０４  第二の条件式生成部（決定手段）
１０６  ダイアログ表示部（表示手段）
１０７  設定画面表示部（回避処理手段）
【図１】
0006264315.tif 000002
【図２】
0006264315.tif 000003
【図３】
0006264315.tif 000004
【図４】
0006264315.tif 000005
【図５】
0006264315.tif 000006
【図６】
0006264315.tif 000007
【図７】
0006264315.tif 000008
【図８】
0006264315.tif 000009
【図９】
0006264315.tif 000010
【図１０】
0006264315.tif 000011
【図１１】
0006264315.tif 000012
【図１２】
0006264315.tif 000013
【図１３】
0006264315.tif 000014
【図１４】
0006264315.tif 000015
【図１５】
0006264315.tif 000016