(57)【特許請求の範囲】
【請求項１】
プロセッサと、プログラムとデータとが格納された記憶手段と、操作パネルと、通信インターフェイスと、トナー残量を検出する検出手段とを有する画像形成装置において、
該データは発信元情報と消耗品発注先情報と消耗品型式情報と消耗品管理状態とを含み、該プログラムは該プロセッサに対し、
該検出手段により検出されたトナー残量を該操作パネルに表示させ、
該検出手段による検出が、該第１のトナー残量より少ない第２のトナー残量を示していることに応答して、該操作パネル又は該通信インターフェイスを介したリモートコンソールに消耗品発注用のアイコンを表示させ、
該アイコンのオンに応答して、該通信インターフェイスを介し該消耗品発注先情報が示す宛先に対し、該発信元情報と該消耗品型式情報とを含む消耗品発注情報を送信させ、該宛先からの受注したことを示す情報の受信に応答して、該アイコンを非表示にさせるとともに該操作パネル又は該リモートコンソールに発注済みであることを示す情報を表示させ、
該検出手段による検出が第１のトナー残量を示していることに応答して、該発注済みであることを示す情報を非表示にさせる、
ことを特徴とする画像形成装置。
【請求項２】
該受注したことを示す情報には受注日時が含まれ、
該発注済みであることを示す情報には該受注日時が含まれる、
ことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
該受注したことを示す情報にはさらに、トナーカートリッジの型式と発送予定日とが含まれ、
該発注済みであることを示す情報にははさらに、該トナーカートリッジの型式と該発送予定日とが含まれる、
ことを特徴とする請求項２に記載の画像形成装置。
【請求項４】
該プロセッサに結合された電子タグリーダをさらに有し、
該プログラムは該プロセッサに対しさらに、該電子タグリーダを介し、該消耗品としてのトナーカートリッジに備えられた電子タグから該トナーカートリッジの型式を含む情報を読み取らせ、該型式を該データの１つとして該記憶手段に格納させる、
ことを特徴とする請求項１乃至３のいずれか１つに記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像入出力機能を備えた画像形成装置に係り、特に、消耗品発注機能を備えた画像形成装置に関する。
【背景技術】
【０００２】
下記特許文献１には、過去のトナー消費速度に基づき、トナー残量がゼロとなるまでの日数を予測し、ストックも考慮して該日数の閾値を設定し、予測日数が閾値以下になるとユーザにその旨を通報し又はカートリッジを自動発注することが開示されている。
【特許文献１】特開２００６−３１３２２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、過去のトナー消費速度に基づきトナー残量がゼロとなるまでの日数を予測するので、その後、トナー消費量が急増し又は急減する場合にはユーザに対し誤った通報が行われたり自動発注時点が適切でなくなったりする。
【０００４】
これを避けるため、カートリッジ発注をユーザに任せると、手間がかかったり、複数人で管理している場合に重複発注したりする虞がある。
【０００５】
本発明の目的は、このような問題点に鑑み、消耗品消費量が急増し又は急減する場合にも適切かつ容易に消耗品を発注可能な画像形成装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明による画像形成装置の第１態様では、プロセッサと、プログラムとデータとが格納された記憶手段と、操作パネルと、通信インターフェイスと、消耗品の消耗状態を検出する検出手段とを有する画像形成装置において、
該操作パネル上又は該通信インターフェイスを介したリモートコンソール上には消耗品発注用のアイコンが表示され、該データは発信元情報と消耗品発注先情報と消耗品型式情報とを含み、
該プログラムは該プロセッサに対し、該検出手段により検出された消耗状態を該操作パネルに表示させ、該アイコンのオンに応答して、該通信インターフェイスを介し該消耗品発注先情報が示す宛先に対し、該発信元情報と該消耗品型式情報とを含む消耗品発注情報を送信させる。
【０００７】
本発明による画像形成装置の第２態様では、第１態様において、該プログラムは該プロセッサに対しさらに、該発注に応答して該宛先から該通信インターフェイスを介し受信したメッセージの少なくとも一部を該操作パネル又は該リモートコンソール上に表示させる。
【０００８】
本発明による画像形成装置の第３態様では、第１又は２態様において、該データはさらに消耗品管理状態を含み、該プログラムは該プロセッサに対しさらに、該検出手段による検出が第１の消耗状態を示していることに応答して、該消耗品管理状態を有効にさせ、該消耗品管理状態が有効であるとき、該検出手段による検出が第２の消耗状態を示していることに応答して、該操作パネル又は該リモートコンソールに該アイコンを表示させ、該アイコンのオンに応答して該消耗品管理状態を無効にさせ、該消耗品管理状態が無効であるとき該アイコンを非表示にさせる。
【０００９】
本発明による画像形成装置の第４態様では、第１乃至３態様のいずれか１つにおいて、該プロセッサに結合された電子タグリーダをさらに有し、該プログラムは該プロセッサに対しさらに、該電子タグリーダを介し、該消耗品としてのトナーカートリッジに備えられた電子タグから該トナーカートリッジの型式を含む情報を読み取らせ、該型式を該データの１つとして該記憶手段に格納させる。
【発明の効果】
【００１０】
上記第１態様の構成によれば、操作パネル手段に表示された消耗状態と消耗品使用状況とに応じてユーザがアイコンをオンにすることにより、通信インターフェイスを介し消耗品発注情報が発注先に送信されるので、消耗品消費量が急増し又は急減する場合にも適切かつ容易に消耗品を発注可能となるという効果を奏する。
【００１１】
上記第２態様の構成によれば、発注に応じた受信メッセージの少なくとも一部を操作パネル手段上に表示させるので、重複発注を防止できるという効果を奏する。
【００１２】
上記第３態様の構成によれば、第１の消耗状態から第２の消耗状態までの間のみ消耗品発注用アイコンが表示されるので、誤発注を防止できるとともに操作性がよいという効果を奏する。
【００１３】
上記第４態様の構成によれば、消耗品の型式が自動的に読み出されて発注情報として用いられるという効果を奏する。
【００１４】
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【実施例１】
【００１５】
図８は、本発明の実施例１に係る画像形成装置１０のハードウェア構成を示す概略ブロック図である。
【００１６】
この画像形成装置１０では、ＭＰＵ１１がインターフェイス１２を介して、ＰＲＯＭ１３、ＤＲＡＭ１４、操作パネル１５、プリンタ１６、スキャナ１７、ＮＩＣ１８、ＦＡＸモデム１９、ＵＳＢポート２０、トナー残量検出器２１、ＩＣカードリーダ２２、電子タグリーダ２３及びタイマＴＭに結合されている。図８では、簡単化のため、複数のインターフェイスを１つのブロックで示している。
【００１７】
ＰＲＯＭ１３は、例えばフラッシュメモリであり、これには、オペレーティングシステム（ＯＳ）と、ＯＳの上層で動作する各種プログラムと、各種設定値とが格納されている。各種プログラムは、画像形成装置１０を複合機として機能させるためのものであり、この機能には、コピー、スキャン、プリント、ファクシミリ送受信、電子メール送受信及びＨＴＴＰ通信がある。ＤＲＡＭ１４は、ワークエリア用である。
【００１８】
操作パネル１５は、表示部とキー入力部とを備えており、設定情報又は指示を入力し、選択画面や設定画面などを表示させるためのものである。プリンタ１６は、プリントエンジン、定着器並びに用紙の給紙部、搬送部及び排紙部を備えており、印刷データとして供給されるビットマップデータに基づきプリントエンジンの感光ドラムに静電潜像を形成し、これをトナーで現像し、用紙に転写し定着させた後に排紙する。スキャナ１７は、コピー及びファクシミリ送信での画像入力用である。ＮＩＣ１８は、ネットワーク上のホストコンピュータ及びサーバに結合されてプリントジョブ及び消耗品発注に用いられる。ＦＡＸモデム１９は、ファクシミリ送受信用である。
【００１９】
トナー残量検出器２１は、プリンタ１６用のトナーカートリッジに収容されているトナーの残量を検出してその信号を出力する。ＩＣカードリーダ２２は、所定範囲内に存在するＩＣカードとの間で電波を介し信号を送受して、ユーザのＩＤ及びパスワード情報を読取り、これらを画像形成装置１０に対する認証情報として出力する。電子タグリーダ２３は、トナーカートリッジに固着された電子タグからそのＩＤを読み出して出力する。このＩＤには、トナーカートリッジの型式及びシリアル番号が含まれる。
【００２０】
トナー残量検出器２１及び電子タグリーダ２３の出力は、プログラムに従ってＭＰＵ１１によりそれぞれ定期的に及びトナーカートリッジ装着時に読取られ、図２に示すようにそれぞれToner.Level及びToner.RFIDとしてＤＲＡＭ１４に格納される。
【００２１】
ポート２０に接続されるＵＳＢメモリ２４Ａは、例えばフラッシュメモリチップを備えている。
【００２２】
ホストコンピュータ２５は、そのＮＩＣがハブを介してＮＩＣ１８に結合されるとともに、不図示のルータを介してインターネット２６に結合される。このインターネット２６には、不図示のルータを介してＷｅｂサーバマシン２７が結合されている。一方、画像形成装置１０のＦＡＸモデム１９とＷｅｂサーバマシン２７のＦＡＸモデムとは、公衆回線網２８を介して結合される。
【００２３】
タイマＴＭは、現時刻検出用及びＭＰＵ１１に対するタイマ割込用である。
【００２４】
図７は、本発明の実施例１に係る画像形成装置のソフトウェア階層構造を示す概略ブロック図である。
【００２５】
ＯＳ３０は、そのカーネル、例えばLinuxに、各種ハードウェアのそれぞれに対応したデバイスドライバ３１が組み込まれている。
【００２６】
ＯＳ３０の上層には、ＯＳ３０内の各種機能を利用するためのＡＰＩ３２を介し、ミドルウェアとしての基本サービスプログラム３３が備えられている。基本サービスプログラム３３は、操作パネル制御モジュール３３０と、画像入力モジュールとしてのスキャンモジュール３３１と、入力データを処理するデータ処理モジュールと、処理された画像データを出力する画像出力モジュールとしてのプリントモジュール３３２と、入出力モジュールとを備えている。
【００２７】
操作パネル制御モジュール３３０は、操作パネル１５上に操作釦を表示させ、その押下を検出させるためのものである。入出力モジュールには、ＦＡＸ送受信モジュール３３３、電子メール送受信モジュール３３４及びＨＴＴＰ処理モジュール３３９が含まれる。データ処理モジュールには、ＩＣカード制御モジュール３３５、ＲＦＩＤ制御モジュール３３６、画像データのフォーマットを変換するフォーマット変換モジュール３３７並びに不図示の集約処理モジュール及び頁付モジュール等が含まれる。基本サービスプログラム３３にはさらに、ユーティリティモジュールとして、ファクシミリ及び電子メールの宛先指定に用いられるアドレス帳モジュール３３８が含まれる。
【００２８】
基本サービスプログラム３３の上層には、外部ＡＰＩ３４を介してアプリケーション３５が備えられている。アプリケーション３５は、外部ＡＰＩ３４を介し基本サービスプログラム３３のモジュールを用いて作成されたプログラムである。アプリケーション３５には、コピーモジュール３５０、プリントモジュール３５１、ＦＡＸモジュール３５２、電子メールモジュール３５３、ジョブ管理モジュール３５４及び操作パネルモジュール３５５が含まれている。例えば、コピーモジュール３５０は、スキャンモジュール３３１とプリントモジュール３３２とを組み合わせて構成されている。また、ＦＡＸモジュール３５２は、ＦＡＸ送受信モジュール３３３とアドレス帳モジュール３３８とを組み合わせて構成されている。
【００２９】
画像形成装置１０のソフトウェアはさらに、ユーザアプリケーション３７に対するインタプリタである簡易テキスト言語処理プログラム３８を備えている。このプログラム簡易テキスト言語処理プログラム３８は、ユーザアプリケーション３７の命令文を解釈し、外部ＡＰＩ３４、外部ＡＰＩ３６又はＡＰＩ３２を介してそれぞれ基本サービスプログラム３３、アプリケーション３５又はＯＳ３０に含まれている関数を利用することにより、ユーザアプリケーション３７を実行させるためのものである。
【００３０】
ユーザアプリケーション３７は、例えばホストコンピュータ２５で作成され、文法チェックされ、ＵＳＢメモリ２４Ａ内にコピーされ、ポート２０を介してＤＲＡＭ１４に読み込まれる。ユーザアプリケーション３７は、前処理により、その各行に行番号が付される。図５（Ａ）〜（Ｃ）及び図６（Ａ）〜（Ｃ）はユーザアプリケーション３７の具体例を示す。
【００３１】
ここで、操作パネル１５上には図３（Ａ）に示すようなメインメニュー画面が表示されており、この画面上の"ＵＳＥＲ  ＡＰＰＬＩＣＡＴＩＯＮ"釦をタッチ（押下）すると、図３（Ｂ）の"ＵＳＥＲ  ＡＰＰＬＩＣＡＴＩＯＮ"以外の表示及びこれに関係した処理が図１に示すフローに従って行われる。
【００３２】
図１は、ユーザアプリケーション３７に対する簡易テキスト言語処理プログラム３８の処理を示す概略フローチャートである。
【００３３】
この処理は、タイマ割込により、例えば２０ｍｓｅｃ毎に開始される。以下、括弧内は図中のステップ識別番号である。
【００３４】
（Ｓ０）ユーザアプリケーション３７の次処理対象行番号を示すカウンタＬＣを０に初期設定する。
【００３５】
（Ｓ１）カウンタＬＣが示す行をユーザアプリケーション３７から読み出し、現行カウンタＣＬＣにＬＣの値を代入し、現行カウンタＣＬＣが示す行のステートメントの次のステートメントの行番号を、次行カウンタＬＣに代入する。ステートメントの区切り記号は、Ｃ言語と同様にセミコロン";"又は閉じ括弧"｝"である。図５（Ａ）の場合、ＬＣ＝０の次はＬＣ＝１、その次は、条件文が成立しなければＬＣ＝７、成立すれば、後述のステップＳ１０でＬＣ＝２となる。
【００３６】
（Ｓ２）ステップＳ１で読み込むべき行が存在しなかった場合には処理を終了し、存在した場合にはステップＳ３へ進む。
【００３７】
（Ｓ３）ステートメントがResetEnd文であればステップＳ４へ進み、そうでなければステップＳ７へ進む。
【００３８】
（Ｓ４）消耗品管理終了を示すエンドフラグＥＦが‘０’であればステップＳ１へ戻り、‘１’であればステップＳ５へ進む。
【００３９】
（Ｓ５）ResetEnd文の括弧内に記述された条件式（ＲＥＣ）の成否を判定し、肯定判定した場合にはステップＳ６へ進み、そうでなければ図１の処理を終了する。
【００４０】
（Ｓ６）エンドフラグＥＦをリセットし、操作パネル１５上の、後述の発注済表示をクリアして、ステップＳ１へ戻る。
【００４１】
（Ｓ７）ＣＬＣの行が条件句であればステップＳ８へ進み、そうでなければステップＳ１１へ進む。
【００４２】
図５（Ａ）の場合、ＬＣ＝１の行"If Toner.Level<Level.Low1 {"及びＬＣ＝２の行"Button (120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) {"はいずれも条件句である。
【００４３】
後者は、条件句（釦句）"If Button (120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) is pushed {"を省略記載したものである。この省略記載により、条件文のネスト構造が見かけ上隠蔽されるので、ユーザアプリケーション３７が見易くなるとともに、ユーザアプリケーション３７の作成が容易になる。
【００４４】
（Ｓ８）現行番号ＣＬＣの行が釦句であればその引数に基づいて釦の表示データを作成し、例えば図３（Ｂ）中の釦４０のように、操作パネル１５上に表示させる。
【００４５】
ＬＣ＝２の釦句の場合、引数(120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) のうち、（120, 80）は操作パネル１５上での釦の左上頂点のＸ−Ｙ座標であり、（60, 30）は釦の幅及び高さであり、「カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚」は釦上のテキストである。ここに &は文字の連結演算子であり、 CrLfは復帰改行の制御コードを示しており、Toner.Level.ToPagesは上述のトナー残量検出値を平均印刷枚数で換算したものを示している。釦の表示データ作成処理及び表示処理は、操作パネル制御モジュール３３０及び操作パネルモジュール３５５に含まれる関数を用いて行われる。
【００４６】
この表示処理後に、内部フラグＦを立てておき、次回以降、ステップＳ８でこのフラグＦがセットされていればこの釦表示データ作成処理を省略する。
【００４７】
（Ｓ９）条件句中の条件式の成否を判定し、成立していればステップＳ１０へ進み、そうでなければステップＳ１へ戻る。
【００４８】
（Ｓ１０）次行カウンタＬＣの内容を、条件成立時の行番号に変更する。すなわち、ＬＣ＝ＣＬＣ＋１とする。次に、ステップＳ１へ戻る。
【００４９】
（Ｓ１１）現行番号ＣＬＣの行がＥｎｄ文であればステップＳ１３へ進み、そうでなければステップＳ１２へ進む。
【００５０】
（Ｓ１２）現行番号ＣＬＣの行の内容を処理し、ステップＳ１へ戻る。
【００５１】
（Ｓ１３）エンド文Endを実行して、図１の処理を終了する。すなわち、ステップＳ８で表示した操作パネル１５上の釦をクリアし、上記内部フラグＦをリセットするとともに、エンドフラグＥＦをセットする。
【００５２】
次に、図１の処理の具体例を、ユーザアプリケーション３７が図５（Ａ）に示すものである場合について説明する。なお、エンドフラグＥＦは‘１’に初期設定されている。
【００５３】
（１）タイマ割込により、まず、ステップＳ０でＬＣ＝０となる。ステップＳ１でＬＣ＝０の行ResetEnd(Toner.Level>Level.High)が読み出され、ＣＬＣ＝０、ＬＣ＝１となる。ステップＳ２、Ｓ３及びＳ４を通ってステップＳ５でResetEnd文の条件式"Toner.Level>Level.High"が判定される。カートリッジ交換直後は、この条件式"Toner.Level>Level.High"が成立し、ステップＳ６でＥＦ＝０となる。ここに閾値Level.Highは、後述の閾値Level.Low1、Level.Low2、・・・とともに、図２に示すように予めＰＲＯＭ１３に格納されている。
【００５４】
ステップＳ１へ戻り、ＬＣ＝１の行"If Toner.Level<Level.Low1 {"が読み出され、ＣＬＣ＝１、ＬＣ＝７となる。ステップＳ２、Ｓ３、Ｓ７、Ｓ８を通りステップＳ９で条件式"Toner.Level<Level.Low1"が否定判定されてステップＳ１へ戻る。ステップＳ１でＬＣ＝７の行が読み出され、これがNullであるので、ステップＳ２で肯定判定されて終了する。
【００５５】
（２）次のタイマ割込で、まず、ステップＳ０においてＬＣ＝０となる。ステップＳ１でＬＣ＝０の行"ResetEnd(Toner.Level>Level.High)"が読み出され、ＣＬＣ＝０、ＬＣ＝１となる。ステップＳ２及びＳ３を通ってステップＳ４で肯定判定されステップＳ１へ戻る。ステップＳ１で、ＬＣ＝１の行"If Toner.Level<Level.Low1 {"が読み出され、ＣＬＣ＝１、ＬＣ＝７となる。ステップＳ２、Ｓ３、Ｓ７、Ｓ８を通りステップＳ９で条件式"Toner.Level<Level.Low1"が否定判定されてステップＳ１へ戻る。ＬＣ＝７の行が読み出され、これがNullであるので、ステップＳ２で肯定判定されて終了する。
【００５６】
その後も、ステップＳ９で否定判定されればこのような処理（２）が行われる。
【００５７】
図４に示すように、時間の経過とともにトナー残量Toner.Levelが低下して、これが、予め設定された閾値Level.Low1未満になると、条件"Toner.Level<Level.Low1"が成立する。
【００５８】
（３）タイマ割込により、まず、ステップＳ０でＬＣ＝０となる。ステップＳ１でＬＣ＝０の行"ResetEnd(Toner.Level>Level.High)"が読み出され、ＣＬＣ＝０、ＬＣ＝１となる。ステップＳ２及びＳ３を通ってＳ４で肯定判定されステップＳ１へ戻る。ステップＳ１で、ＬＣ＝１の行"If Toner.Level<Level.Low1 {"が読み出され、ＣＬＣ＝１、ＬＣ＝７となる。ステップＳ２、Ｓ３、Ｓ７、Ｓ８を通りステップＳ９で条件式"Toner.Level<Level.Low1"が肯定判定されてステップＳ１０へ進む。ステップＳ１０でＬＣ＝２となり、ステップＳ１へ戻る。
【００５９】
ステップＳ１で、ＬＣ＝２の行"Button (120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) {"
が取り出され、ＣＬＣ＝２、ＬＣ＝７（文の区切り記号の場合には次の行）となり、ステップＳ２、Ｓ３及びＳ７を通ってステップＳ８で、上述のように釦４０の表示データが作成されてこれが操作パネル１５上に表示されるとともに内部フラグＦがセットされる。まだ釦４０の表示範囲(120, 80, 60, 30)内がタッチ（押下）されていないので、ステップＳ９で否定判定され、ステップＳ１へ戻る。
【００６０】
ステップＳ１で、ＬＣ＝７の行Nullが取り出され、ステップＳ２を通って終了する。
【００６１】
その後も、釦４０が押下されなければ、このような処理（３）が行われる。
【００６２】
（４）釦４０が押下されると、ステップＳ９で肯定判定され、ステップＳ１０でＬＣ＝３となり、ステップＳ１へ戻る。
【００６３】
ステップＳ１で、ＬＣ＝３の行"Order (Toner.RFID To DefaultDealer)"が取り出され、ＣＬＣ＝３、ＬＣ＝４となる。ステップＳ２、Ｓ３、Ｓ７及びＳ１１を通って、ステップＳ１２でＣＬＣ＝３の行が処理される。すなわち、Toner.RFIDに含まれるトナーカートリッジ型式と、Orderには隠蔽されているユーザＩＤとを含むＨＴＴＰリクエストメッセージを生成して、ＮＩＣ１８及びインターネット２６を介し、宛先DefaultDealer（例えば図２に示すhttp://km.com:80）であるＷｅｂサーバマシン２７へ送信する。このメッセージのリクエスト行は例えば、
GET /cgi-bin/order.cgi?UserID=21035&Type=KM102 HTTP/1.0
である。ここにUserID=21035は、図２に示すようにＰＲＯＭ１３に予め格納されている。また、Type=KM102は、Toner.RFIDの内容の一部であるトナーカートリッジ型式である。ＨＴＴＰメッセージの送受信は、ＨＴＴＰ処理モジュール３３９及びＯＳ３０を用いて行われる。
【００６４】
Ｗｅｂサーバマシン２７はこのＨＴＴＰリクエストメッセージに応答して、これに含まれるクエリ文字列UserID=21035&Type=KM102を引数とし該メッセージに含まれるパス名/cgi-bin/order.cgiのＣＧＩプログラムを起動させる。これにより、図８に示すように、受信した日時を受注日時とし、トナーカートリッジ型式、顧客ＩＤ及び発送予定日がテーブルＴＢＬ１に記入される。顧客ＩＤは、上記UserIDと同一である。発送予定日は、該型式をキーとして在庫データベース２９を検索し、その結果得られる在庫状況に基づき決定される。テーブルＴＢＬ１内の完了フラグは、受注時にはリセットされており、発送時にこれがセットされる。
【００６５】
このテーブルＴＢＬ１は、顧客ＩＤ、会社名、住所、担当者名、所属部課名、電話番号、ファクシミリ番号などのフィールドを含む顧客情報テーブルＴＢＬ２とリンクされて、リレーショナルデータベースが構成される。
【００６６】
Ｗｅｂサーバマシン２７は、受注日時を発注日時とし、これとトナーカートリッジの型式と発送予定日とを含むＨＴＴＰリスポンスメッセージを、テンプレートファイルに基づき生成し、画像形成装置１０へ送信する。
【００６７】
画像形成装置１０はこれに応答して、受信したメッセージの内容を、図３（Ｃ）に示すように操作パネル１５に表示させる。
【００６８】
このようなＣＬＣ＝３の行の処理が完了すると、ステップＳ１へ戻り、ＬＣ＝４の行Endが取り出され、ＣＬＣ＝４、ＬＣ＝７となる。ステップＳ２、Ｓ３、Ｓ７及びＳ１１を通って、ステップＳ１３でＣＬＣ＝４の行Endが処理される。すなわち、操作パネル１５上の釦４０の表示がクリアされ、内部フラグＦがリセットされるとともに、エンドフラグＥＦがセットされる。
【００６９】
これにより、トナーカートリッジを交換するまでは、タイマ割込により図１の処理が開始されても、ステップＳ４及びＳ５で共に否定判定され、図３（Ｃ）に示す如く、トナーカートリッジ発注釦４０は操作パネル１５に表示されず、発注済みの表示が維持される。
【００７０】
このような処理（４）の後に、図４に示すようにトナーカートリッジを交換すると、ResetEnd文の条件が成立して、上述の処理（１）が行われ、ステップＳ５からステップＳ６へ進み、ＥＦ＝０となり、操作パネル１５上の発注済みの表示がクリアされる。
【００７１】
トナーカートリッジの在庫があるためトナーカートリッジを発注する必要がない場合、トナーカートリッジ交換時に、上述のように電子タグリーダ２３の出力が、図１とは別のプログラムに従ってＭＰＵ１１によりに読取られ、これが図２に示すToner.RFIDとしてＤＲＡＭ１４に格納される。この際、該プログラムにより、図１のステップＳ１３と同じ処理が行われる。これにより、次にToner.Level<Level.Low1が成立するまでトナーカートリッジ発注釦４０は操作パネル１５に表示されない。
【００７２】
本実施例１によれば、条件付リセットエンド命令ResetEndと、釦４０の属性とOrder命令との組とが記述されたユーザアプリケーションを用い、簡易テキスト言語処理プログラム３８に従って、条件付リセットエンド命令ResetEndの条件成否に応じ釦４０のオンを検出し、該オンの検出に応答してOrder命令を実行するので、条件文が実質的にネストしていても、条件に応じてユーザインターフェイスを変更するユーザアプリケーションの構造が簡単になるという効果を奏する。
【００７３】
また、If文により条件文がさらにネストしても、条件に応じてユーザインターフェイスを変更するユーザアプリケーションの構造が簡単になるという効果を奏する。
【００７４】
また、アイコンとしての釦４０の属性(120, 80, 60, 30, カートリッジ発注 & CrLf & 残り& Toner.Level.ToPages & 枚) と消耗品発注命令Order (Toner.RFID To DefaultDealer)とが対になって記述された簡単なユーザアプリケーションの該属性に基づいて操作パネル１５に釦４０を表示させ、そのオンの検出に応答して、該消耗品発注命令に基づきＮＩＣ１８を介し消耗品発注情報を宛先へ送信させるので、簡単なユーザアプリケーションの記述により、ユーザが容易に消耗品を発注できるとともに、消耗品消耗速度が予測に反して急増し又は急減してもこれに対処できるという効果を奏する。
【００７５】
また釦４０の属性として消耗状態の記述「残り& Toner.Level.ToPages & 枚」が含まれ、検出された消耗状態がこの記述に基づき操作パネル１５に表示されるので、簡単な記述により、適切なタイミングで消耗品を発注できるという効果を奏する。
【００７６】
さらに、釦４０の表示領域(120, 80, 60, 30)内に消耗状態が表示されるので、ユーザの操作性が向上するという効果を奏する。
【００７７】
また、ステップＳ４をステップＳ５の前に配置しているので、エンドフラグＥＦが一旦リセットされればリセットエンド命令ResetEndの条件式が判定されず、トナー残量検出値が機械的振動により変動しても、ユーザアプリケーションを複雑化させることなく釦４０のオン検出を継続して行うことができるという効果を奏する。
【００７８】
また、消耗品発注情報の送信後に、操作パネル１５上に消耗品を発注したことが表示されるので、複数のユーザによる消耗品重複発注を防止できるという効果を奏する。
【００７９】
さらにまた、消耗品発注情報の送信後に、操作パネル１５上の釦４０の表示が削除されるので、操作性が向上するとともに、誤操作や複数のユーザによる消耗品重複発注を防止できるという効果を奏する。
【００８０】
また、ユーザアプリケーションに含まれるエンド命令Endに基づき該削除が行われるので、簡単な記述で該削除を行わせるか否かの選択を行うことができるという効果を奏する。
【００８１】
またトナーカートリッジの型式が電子タグから自動的に読み出されて発注情報として用いられるという効果を奏する。
【００８２】
図５（Ｂ）及び（Ｃ）は、図５（Ａ）と発注形態のみが異なるユーザアプリケーションを示す。
【００８３】
図５（Ｂ）の場合、カートリッジ発注処理として、
"Fax cartridgeOrderFile.pdf to アドレス帳(dealer1, fax)"が、図１のステップＳ１２において、ＦＡＸモジュール３５２を用いて実行される。このステートメントにより、ファイルcartridgeOrderFile.pdfの内容が、宛先へ送信される。この宛先は、関数であるアドレス帳(dealer1,fax)の戻り値となる。アドレス帳には、宛先毎にファクシミリ番号と電子メールアドレスとが記入されており、引数faxは、引数dealer1で示されるレコードのファクシミリ番号がこの関数の戻り値となることを示している。
【００８４】
図５（Ｃ）の場合、カートリッジ発注処理として、"Email cartridgeOrderFile.pdf to アドレス帳(dealer1,email)"が、図１のステップＳ１２において、電子メールモジュール３５３を用いて実行される。このステートメントにより、ファイルcartridgeOrderFile.pdfの内容が、宛先へ送信される。この宛先は、関数であるアドレス帳(dealer1,email)の戻り値である。引数emailは、引数dealer1で示されるレコードの電子メールアドレスがこの関数の戻り値となることを示している。
【００８５】
図１の処理は、消耗品発注とは無関係なユーザアプリケーションにも適用可能であり、その具体例を図６（Ａ）〜（Ｃ）に示す。
【００８６】
次に、図６（Ａ）に示すユーザアプリケーションに対する図１の処理を説明する。
【００８７】
（５）タイマ割込により、まず、ステップＳ０でＬＣ＝０となる。ステップＳ１でＬＣ＝０の行”Button (20, 30, 60, 30, 伝票送信) {”が読み出され、ＣＬＣ＝０、ＬＣ＝５となる。ステップＳ２、Ｓ３及びＳ７を通って、ステップＳ８で図３（Ｂ）に示すような釦４１が表示されるとともに、内部フラグＦがセットされる。まだ釦４１の表示範囲(20, 30, 60, 30)内が押下されていないので、ステップＳ９で否定判定され、ステップＳ１へ戻る。ステップＳ１で、ＬＣ＝５の行Nullが取り出され、ステップＳ２を通って終了する。
【００８８】
その後も、釦４１が押下されなければ、このような処理（５）が行われる。
【００８９】
（６）ユーザが画像形成装置１０の原稿台に原稿を載置して釦４１を押下すると、ステップＳ９で肯定判定され、ステップＳ１０でＬＣ＝１となり、ステップＳ１へ戻る。
【００９０】
ステップＳ１で、ＬＣ＝１の行"file.pdf=Scan"が取り出され、ＣＬＣ＝１、ＬＣ＝２となる。ステップＳ２、Ｓ３、Ｓ７及びＳ１１を通って、ステップＳ１２でＣＬＣ＝１の行が処理される。すなわち、スキャナ１７が動作して原稿画像が読み取られ、そのデータがｐｄｆフォーマットに変換されてfile.pdfにされる。
【００９１】
ステップＳ１へ戻り、ＬＣ＝２の行"Fax file.pdf to アドレス帳(本社経理部, fax)"が読み出され、ＣＬＣ＝２、ＬＣ＝３となる。ステップＳ２、Ｓ３、Ｓ７及びＳ１１を通って、ステップＳ１２でＣＬＣ＝２の行が処理される。すなわち、アドレス帳(本社経理部, fax)の戻り値である宛先へ、ファイルfile.pdfの内容が送信される。
【００９２】
ステップＳ１へ戻り、ＬＣ＝３の行"Email file.pdf to アドレス帳(佐々木太郎, email)"が読み出され、ＣＬＣ＝３、ＬＣ＝５となる。ステップＳ２、Ｓ３、Ｓ７及びＳ１１を通って、ステップＳ１２でＣＬＣ＝３の行が処理される。すなわち、アドレス帳(佐々木太郎, email)の戻り値である宛先へ、ファイルfile.pdfが電子メール送信される。例えば、ファクシミリ送信内容の控えが、自分宛へ送信される。
【００９３】
ステップＳ１へ戻り、ＬＣ＝５のNull行が読み出され、ステップＳ２を通って図１の処理を終了する。釦４１は、操作パネル１５上に表示されたままである。
【００９４】
図６（Ｂ）の場合、上述と同じ処理が行われ、電子メール送信後にさらに、End文が処理されて、ステップＳ１３で操作パネル１５上の釦４１の表示がクリアされ、内部フラグＦがリセットされるとともに、エンドフラグＥＦがセットされる。
【００９５】
図６（Ｃ）の場合、図６（Ｂ）の処理の前に、ステップＳ１２においてＣＬＣ＝１の行"ResetEnd(ICcardID=KM01)"が処理される。すなわち、ユーザのＩＣカード２４Ｂに格納されている、ユーザＩＤとパスワードを暗号化したものとが、電波を介してＩＣカードリーダ２２により読み出される。そして、ＰＲＯＭ１３に登録されている、ユーザＩＤと例えば２回暗号化されているパスワードとが読み出され、後者が１回復号され、両者が照合される。両者のそれぞれが一致し、かつ、ユーザＩＤが、"ICcardID=KM01"のKM01と一致すれば、すなわちIDがKM01のユーザ認証が成功すれば、ResetEnd文の条件が成立したことになり、ステップＳ５で肯定判定され、ステップＳ６でＥＦ＝０となる。その後、図６（Ｂ）の場合と同じ処理が行われる。
【００９６】
前記ユーザ認証が失敗した場合には、ステップＳ５で否定判定されて図１の処理が終了し、釦４１が操作パネル１５上に表示されない。
【００９７】
したがって、特定のユーザのみに対し、毎回、操作パネル１５上に釦４１が表示されて上述のシーケンス処理が行われ、処理が終わると釦４１が操作パネル１５上から消失する。すなわち、簡単なユーザアプリケーションにより、ユーザ毎のユーザインターフェイスを構成できるという効果を奏する。
【００９８】
なお、本発明には外にも種々の変形例が含まれる。
【００９９】
例えば、複数のアプリケーションプログラムを記述し、又は、１つのアプリケーションプログラム中に条件句と処理命令文との組を複数記述することにより、図３（Ｂ）の表示画面に３以上の釦を表示させて、このメニューだけで日常業務を処理できるようにしてもよい。
【０１００】
さらに、操作パネル１５に表示させるアイコンの形状は釦に限定されず、様々な形状のアイコンを用いてもよい。
【０１０１】
また、操作パネル１５の替わりに、画像形成装置の通信インターフェイスを介して結合されたコンピュータシステムの対話型入出力装置、すなわちリモートコンソールを用いる構成であってもよい。この場合、アイコンは例えばマウスのクリックによりオンにされる。
【図面の簡単な説明】
【０１０２】
【図１】本発明の実施例１に係る画像形成装置に格納されている、ユーザアプリケーションに対する簡易テキスト言語処理プログラムの処理を示す概略フローチャートである。
【図２】この画像形成装置のＰＲＯＭ及びＤＲＡＭに格納されているデータの一部説明図である。
【図３】（Ａ）は該画像形成装置の操作パネル上のメインメニュー画面を示す図であり、（Ｂ）は（Ａ）の"ＵＳＥＲ  ＡＰＰＬＩＣＡＴＩＯＮ"釦を押下したときに表示されるメニュー画面を示す図であり、（Ｃ）は（Ｂ）の釦４０を押下した後の画面を示す図である。
【図４】時間の経過に対するトナー残量のグラフを示す、図１の処理説明図である。
【図５】（Ａ）〜（Ｃ）はトナーカートリッジ発注に関するユーザアプリケーションの具体例を示す図である。
【図６】（Ａ）〜（Ｃ）は伝票のスキャン、ファックス送信及び電子メール送信に関するユーザアプリケーションの具体例を示す図である。
【図７】該画像形成装置のソフトウェア階層構造を示す概略ブロック図である。
【図８】該画像形成装置のハードウェア構成を示す概略ブロック図である。
【符号の説明】
【０１０３】
１０  画像形成装置
１１  ＭＰＵ
１２  インタフェース
１３  ＰＲＯＭ
１４  ＤＲＡＭ
１５  操作パネル
１６  プリンタ
１７  スキャナ
１８  ＮＩＣ
１９  ＦＡＸモデム
２０  ポート
２１  トナー残量検出器
２２  ＩＣカードリーダ
２３  電子タグリーダ
２４  ＵＳＢメモリ
２５  ホストコンピュータ
２６  インターネット
２７  Ｗｅｂサーバマシン
２８  公衆回線網
３０  ＯＳ
３１  デバイスドライバ
３２  ＡＰＩ
３３  基本サービスプログラム
３３０  操作パネル制御モジュール
３３１  スキャンモジュール
３３２  プリントモジュール
３３３  ＦＡＸ送受信モジュール
３３４  電子メール送受信モジュール
３３５  ＩＣカードデータ処理モジュール
３３６  ＲＦＩＤデータ処理モジュール
３３７  フォーマット変換モジュール
３３８  アドレス帳モジュール
３３９  ＨＴＴＰ処理モジュール
３４、３６  外部ＡＰＩ
３５  アプリケーション
３５０  コピーモジュール
３５１  プリントモジュール
３５２  ＦＡＸモジュール
３５３  電子メールモジュール
３５４  ジョブ管理モジュール
３５５  操作パネルモジュール
３７  ユーザアプリケーション
３８  簡易テキスト言語処理プログラム
４０、４１  釦
ＴＢＬ１、ＴＢＬ２  テーブル
【図１】
0005059535.tif 000002
【図２】
0005059535.tif 000003
【図３】
0005059535.tif 000004
【図４】
0005059535.tif 000005
【図５】
0005059535.tif 000006
【図６】
0005059535.tif 000007
【図７】
0005059535.tif 000008
【図８】
0005059535.tif 000009