(57)【要約】    【課題】  ユーザオペレーションとは非同期に発生するイベントであっても、マクロ機能を確実に動作させることができる画像処理装置、並びにその制御方法、プログラム、及び記憶媒体を提供する。    【解決手段】  画像処理装置としてのＭＦＰ１００は、コピー機能を動作させるスキャナ１０４及びプリンタ１０５と、マクロ機能を動作させるマクロ制御部２４５及びマクロ機能部３４０とを備える。マクロ制御部２４５は、ユーザオペレーションと、該ユーザオペレーションによって発生するイベントとを対として管理する。マクロ機能では、ユーザオペレーションに基づいた操作操作から複数のスクリプトから成るマクロファイル７００を作成する記録処理と、該操作操作を再生する再生処理とが実行される。マクロファイル７００には、コピースタートのスクリプトを記録した次の行に、コピージョブ実行の完了を待つというイベントに対応するスクリプトが記録される。【選択図】      図７
2006067328.tif 000002
【特許請求の範囲】
【請求項１】
操作者による操作を受け付ける操作手段を有し、前記操作手段を用いた操作者による操作手順を記録し、この記録した操作手順を再生するマクロ機能を備えた画像処理装置において、
前記操作手段を用いた操作者による操作手順を順次記録する第１の記録手段と、
前記操作手段による操作とは非同期に発生する前記画像処理装置のステータスに関する情報を記録する第２の記録手段と、
前記第１の記録手段で記録した操作手順及び前記第２の記録手段で記録した情報を、その記録順序に従って再生する再生手段とを有することを特徴とする画像処理装置。
【請求項２】
前記ステータスは前記操作手段を用いた操作に伴う応答を含み、前記第２の記録手段が記録する前記ステータスに関する情報は、前記操作手段を用いた操作に対して行った処理が完了した旨の応答を待機する待機処理を含むことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記第２の記録手段で記録されるべきステータスを登録する登録手段を有し、前記第２の記録手段は前記ステータスのうち前記登録手段で登録されているステータスに関する情報を記録することを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記第２の記録手段は前記第１の記録手段で記録した操作が前記ステータスに関する情報を取得した後に次の操作に移るべきものである場合に当該ステータスに関する情報を記録することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記操作手段は所定の情報を表示する表示手段を含み、前記表示手段は前記操作手順に応じて表示内容を遷移させ、前記再生手段は前記表示内容の遷移を再生することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記再生手段による再生中にその再生を一時停止する手段を有し、当該一時停止中に前記操作手段を介して前記第１の記録手段で記録した操作手順以外の操作を実行可能であることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記ステータスを擬似的に発生するための擬似ステータス発生手段を有し、前記第２の記録手段は前記擬似ステータス発生手段で発生させたステータスを記録することを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記第２の記録手段で記録されたステータスが発生したことを検知した場合に前記再生手段による再生を開始する手段を有することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記第１の記録手段及び前記第２の記録手段による記録中に所定のステータスを検知した場合に当該ステータスに関する情報を前記第２の記録手段で記録させるか否かを選択する手段を有することを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
操作者による操作を受け付ける操作手段を有し、前記操作手段を用いた操作手順を記録し、この記録した操作手順を再生するマクロ機能を備えた画像処理装置の制御方法であって、
前記操作手段を用いた操作者による操作手順を順次記録する第１の記録ステップと、
前記操作手段による操作とは非同期に発生する前記画像処理装置のステータスに関する情報を記録する第２の記録ステップと、
前記第１の記録ステップで記録した操作手順及び前記第２の記録ステップで記録した情報を、その記録順序に従って再生する再生ステップとを有することを特徴とする画像処理装置の制御方法。
【請求項１１】
前記ステータスは前記操作手段を用いた操作に伴う応答を含み、前記第２の記録ステップが記録する前記ステータスに関する情報は、前記操作手段を用いた操作に対して行った処理が完了した旨の応答を待機する待機処理を含むことを特徴とする請求項１０記載の画像処理装置の制御方法。
【請求項１２】
前記第２の記録ステップで記録されるべきステータスを登録する登録ステップを有し、前記第２の記録ステップでは前記ステータスのうち前記登録ステップで登録されたステータスに関する情報を記録することを特徴とする請求項１０又は１１記載の画像処理装置の制御方法。
【請求項１３】
前記第２の記録ステップでは前記第１の記録ステップで記録した操作が前記ステータスに関する情報を取得した後に次の操作に移るべきものである場合に当該ステータスに関する情報を記録することを特徴とする請求項１０乃至１２のいずれか１項に記載の画像処理装置の制御方法。
【請求項１４】
前記操作手段は所定の情報を表示するとともに操作者による操作に応じて表示内容を遷移させる表示手段を含み、前記再生ステップでは前記表示内容の遷移を再生することを特徴とする請求項１０乃至１３のいずれか１項に記載の画像処理装置の制御方法。
【請求項１５】
前記再生ステップにおける再生中にその再生を一時停止するステップを有し、当該一時停止中に前記操作手段を介して前記第１の記録ステップで記録した操作手順以外の操作を受け付け可能であることを特徴とする請求項１０乃至１４のいずれか１項に記載の画像処理装置の制御方法。
【請求項１６】
前記ステータスを擬似的に発生するための擬似ステータス発生ステップを有し、前記第２の記録ステップでは前記擬似ステータス発生ステップで発生させたステータスを記録することを特徴とする請求項１０乃至１５のいずれか１項に記載の画像処理装置の制御方法。
【請求項１７】
前記第２の記録ステップで記録されたステータスが発生したことを検知した場合に前記再生ステップにおける再生を開始することを特徴とする請求項１０乃至１６のいずれか１項にに記載の画像処理装置の制御方法。
【請求項１８】
前記第１の記録ステップ及び前記第２の記録ステップにおける記録中に所定のステータスを検知した場合に当該ステータスに関する情報を前記第２の記録ステップで記録させるか否かを選択するステップを有することを特徴とする請求項１０乃至１７のいずれか１項に記載の画像処理装置の制御方法。
【請求項１９】
請求項１０乃至１８のいずれか１項に記載の画像処理装置の制御方法をコンピュータに実行させるための実行モジュールを備えることを特徴とするプログラム。
【請求項２０】
請求項１９記載のプログラムを格納することを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、並びにその制御方法、プログラム、及び記憶媒体に関し、特に、操作者による操作を受け付ける操作手段を用いた操作者による操作手順を記録し、この記録した操作手順を再生するマクロ機能を有する画像処理装置、並びにその制御方法、プログラム、及び記憶媒体に関する。
【背景技術】
【０００２】
近年のＭＦＰ（Multi Function Printer）には、所定のキー押下などのユーザによる操作（ユーザオペレーション）手順を順次記録して、該記録された処理を再生するためのマクロ機能を有するものがある（例えば、特許文献１参照）。
【０００３】
ユーザオペレーションに基づいて実行される操作には、ユーザオペレーションに同期して連動するイベント（処理）だけでなく、ユーザオペレーションとは非同期に発生するイベントを待って開始される処理もある。非同期に発生するイベントを待って開始される処理には、例えば、所定のデータの送信に際してディレクトリサービスにアクセスするためのクライアントサーバプロトコルであるＬＤＡＰ（Lightweight Directory Access Protocol）を用いて、ＭＦＰに接続された外部サーバで所定のアドレスを検索したときに、該外部サーバからその応答（アドレス）をＭＦＰが受信するＬＤＡＰ受信処理がある。即ち、送信処理に関する操作手順をマクロとして記録しようとした場合に、ＬＤＡＰ受信処理によって所望のアドレスを得た後に最終的にそのアドレスへの送信を実行するための記録することが考えられる。このＬＤＡＰ受信処理においては、外部サーバからの応答に要する時間がユーザオペレーションと非同期である。
【０００４】
上記ＭＦＰは、マクロ機能において再生処理を実行するときに、ユーザオペレーションに同期して連動するイベントを問題なく処理することができるが、ＬＤＡＰ受信処理などのユーザオペレーションとは非同期に発生するイベントを問題なく処理することができない。これは、ＬＤＡＰ受信処理の開始を指示してから実際にＭＦＰがアドレスを受信するまでの間にネットワークの混み具合や外部サーバの都合等によって時間がかかってしまうことがあるからである。
【０００５】
そこで、マクロ機能を問題なく動作させるために、記録されるイベントの間に所定時間待機するためのプログラムであるウェイト（wait）を記録する方法があり、例えば、イベントの処理時間をユーザが予測して所定時間のウェイトを記録する方法が考えられる。
【特許文献１】特開２０００−２２２１００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記所定時間のウェイトを記録する方法では、マクロの再生時にイベントが規定された時間以内に処理された場合でも記録されているウェイトの時間分だけ待機処理を行うことになり無駄な待ち時間が発生してしまう。一方、待機時間を短くして記録してしまった場合には得るべき情報を得る前に次の手順に移ってしまうおそれがあり適切な再生が実行できない可能性がある。
【０００７】
したがって、ユーザの操作性を向上させるために、ウェイトの記録方法をユーザがより詳細にカスタマイズできるようにＭＦＰが構成されていることが求められている。また、ユーザオペレーションとは非同期に発生するイベントを伴う手順を用いた場合であっても、マクロ機能を確実に動作させることができることが求められている。
【０００８】
本発明の目的は、ユーザオペレーションとは非同期に発生するイベントを伴う手順を用いた場合であっても、マクロ機能を確実に動作させることができる画像処理装置、並びにその制御方法、プログラム、及び記憶媒体を提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１記載の画像処理装置は、操作者による操作を受け付ける操作手段を有し、前記操作手段を用いた操作者による操作手順を記録し、この記録した操作手順を再生するマクロ機能を備えた画像処理装置において、前記操作手段を用いた操作者による操作手順を順次記録する第１の記録手段と、前記操作手段による操作とは非同期に発生する前記画像処理装置のステータスに関する情報を記録する第２の記録手段と、前記第１の記録手段で記録した操作手順及び前記第２の記録手段で記録した情報を、その記録順序に従って再生する再生手段とを有することを特徴とする。
【００１０】
上記目的を達成するために、請求項１０記載の画像処理装置の制御方法は、操作者による操作を受け付ける操作手段を有し、前記操作手段を用いた操作手順を記録し、この記録した操作手順を再生するマクロ機能を備えた画像処理装置の制御方法であって、前記操作手段を用いた操作者による操作手順を順次記録する第１の記録ステップと、前記操作手段による操作とは非同期に発生する前記画像処理装置のステータスに関する情報を記録する第２の記録ステップと、前記第１の記録ステップで記録した操作手順及び前記第２の記録ステップで記録した情報を、その記録順序に従って再生する再生ステップとを有することを特徴とする。
【００１１】
上記目的を達成するために、請求項１９記載のプログラムは、上記画像処理装置の制御方法をコンピュータに実行させるための実行モジュールを備えることを特徴とする。
【００１２】
上記目的を達成するために、請求項２０記載の記憶媒体は、上記プログラムを格納することを特徴とする。
【発明の効果】
【００１３】
請求項１記載の画像処理装置、請求項１０記載の画像処理装置の制御方法、請求項１９記載のプログラム、及び請求項２０記載の記憶媒体によれば、マクロ機能において操作手順の記録とともに非同期に発生するステータスに関する情報を記録し、これらを記録順序に従って再生するので、ユーザオペレーションとは非同期に発生するイベントを伴う手順を用いた場合であっても、マクロ機能を確実に動作させることができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
【００１５】
図１は、本発明の実施の形態に係る画像処理装置の内部の構成を概略的に示すブロック図である。
【００１６】
図１において、本発明の実施の形態に係る画像処理装置としてのＭＦＰ１００は、ＭＦＰ１００全体を制御するＣＰＵ１０１と、ＣＰＵ１０１が実行するプログラムが格納されたハードディスクドライブ（ＨＤＤ）１０２と、ＣＰＵ１０１のワークメモリから成るＲＡＭ１０３と、原稿の画像を読み取り、その画像データをＲＡＭ１０３に格納するスキャナ１０４と、ＲＡＭ１０３に格納されている画像データを印刷するプリンタ１０５と、画像データや画面データに対応する画像をその表示画面に表示する液晶表示装置（ＬＣＤ）１０６に接続されたＬＣＤコントローラ１０７と、ハードキー１０８と、タッチパネル１０９に接続されたタッチパネルコントローラ１１０と、ＬＣＤコントローラ１０７に接続されたビデオＲＡＭ（ＶＲＡＭ）１１１と、これらを接続するＣＰＵバス１１２とを備える。ＶＲＡＭ１１１は、ＬＣＤ１０６に表示するための画面データを書き込むためのバッファである。
【００１７】
ハードキー１０８は、数値を入力するためのテンキーと、入力値をクリアするためのクリアキーと、設定をリセットするためのリセットキーと、ユーザによる設定に基づいてジョブ実行を開始するためのスタートキーと、実行中のジョブを中止するためのストップキーとを備え（不図示）、これらのキーの押下に基づいた情報はＣＰＵ１０１に入力される。
【００１８】
ＣＰＵ１０１は、必要に応じてＨＤＤ１０２に格納されているプログラムを読出して実行する。タッチパネル１０８は、ＬＣＤ１０６の表示画面に表示されたソフトキーに対応する。
【００１９】
図１において、ＣＰＵ１０１は、ＬＣＤ１０６の表示画面を構成する画像データや画面データをＨＤＤ１０２から読み出し、ＶＲＡＭ１１１において、表示すべき表示画面のデータを構成し、これをＬＣＤコントローラ１０７がＬＣＤ１０６の表示画面に表示する。
【００２０】
図２は、図１におけるＨＤＤ１０２の内部構成を概略的に示すブロック図である。
【００２１】
図２に示すように、ＨＤＤ１０２には、ＯＳ（オペレーションシステム）及びＢＩＯＳ（Basic Input/Output System）から成るＯＳ／ＢＩＯＳ２１０と、ＣＰＵ１０１がスキャナ１０４及びプリンタ１０５において給紙トレイから給紙された記録紙にコピー処理を施すためのプログラムから成るコピー用アプリケーション（Copy Application）２２０と、ＣＰＵ１０１が所定のメールアドレス又はファクス番号を有する送信先に電子メール又はファクスを送信するための送信処理を実行するためのプログラムから成る送信／ファクス用アプリケーション（Send Application）２３０と、ＣＰＵ１０１がユーザインターフェース（ＵＩ）に所定の画像を表示したりＵＩを介してユーザからの入力を受け付けたりするためのプログラムから成るＵＩ用アプリケーション（UI Application）２４０とが格納されている。ＯＳ／ＢＩＯＳ２１０は、上記アプリケーション２２０，２３０，２４０に関連付けられており、必要に応じてこれらのアプリケーションのいずれかを読み出して実行する。
【００２２】
図３は、図２におけるＵＩ用アプリケーション２４０と図１のＭＦＰ１００の機能との関係を示すために用いられるブロック図である。
【００２３】
図３に示すように、ＵＩ用アプリケーション２４０には、ＵＩフレームワーク２４１が設定されており、ＵＩ用アプリケーション２４０は、ＵＩフレームワーク２４１を介して、ＭＦＰ１００の機能部に関連付けられるように構成されている。ＭＦＰ１００の複数の機能部には、図２におけるコピー用アプリケーション２２０を実行するためのコピー機能部（Copy Function）３２０、図２における送信／ファクス用アプリケーション２３０を実行するための送信機能部（Send Function）３３０、後述するマクロ処理を実行するマクロ機能部（Macro Function）３４０、及びボックス機能部（Box Function）３５０がある。
【００２４】
ＵＩフレームワーク２４１には、ハードキー１０８に関連付けられたハードキー制御部（Hard Key Ctrl）２４２と、タッチパネル１０９のソフトキーに関連付けられたタッチキー制御部（Touch Key Ctrl）２４３と、ＬＣＤ１０６に関連付けられたビュー制御部（View Ctrl）２４４と、ＭＦＰ１００が有するマクロ機能に関連付けられたマクロ制御部（Macro Ctrl）２４５とが設定されている。
【００２５】
以下、図１のＭＦＰ１００の作動を図２及び図３を用いて説明する。
【００２６】
図１において、タッチパネル１０９のソフトキーの所定のキーが押下された場合は、ＣＰＵ１０１は、押下されたタッチパネル１０９のソフトキーを表示しているＬＣＤ１０６の表示画面上における座標を読み取り、この座標に相当する有効なキーが存在するか否かを判別する。その座標に相当する有効なキーが存在するときはそのキーに対応するキーコードを生成する。ハードキー１０８の所定のキーが押下された場合は、ＣＰＵ１０１は、押下されたハードキー１０８のキーコードを生成する。
【００２７】
ハードキー１０８又はタッチパネル１０９の所定のキー（以下、単に「キー」という）に対応するキーコードが生成されると、ＯＳ／ＢＩＯＳ２１０のＢＩＯＳは、生成したキーコードをＵＩフレームワーク２４１に送信する。ＵＩフレームワーク２４１は、ハードキー制御部２４２又はタッチキー制御部２４３を介して、ＭＦＰ１００で動作中の機能部にそのキーコードを通知する。キーコードを受けたＭＦＰ１００の機能部は、そのキーコードに対応するキーの押下が有効であれば、そのキーコードを用いて実行されることが予め登録されているプログラム、即ちキー入力イベントリスナ登録されているプログラムを読み出して実行する。
【００２８】
次いで、ＢＩＯＳは、キーの押下に応じてＬＣＤ１０６の表示画面を書き換える必要があると判別した場合は、所定の画面データを生成してビュー制御部２４４に表示要求を出す。ビュー制御部２４４は、表示要求に応答して、画面データをＶＲＡＭ１１１に書き込むと共に、ＬＣＤコントローラ１０７に表示更新を指示する。
【００２９】
また、図１におけるＣＰＵ１０１は、プリンタ１０５からその状態を示す情報であるプリンタステータスが通知されると、まず、これを各アプリケーション２２０，２３０に関連付けられた制御部３２０，３３０や、アプリケーション２４０に関連付けられたＵＩフレームワーク２４１に通知する。また、ＵＩフレームワーク２４１は、図３に示すように、受信したプリンタステータスを各機能部３２０，３３０，３４０，３５０に通知する。
【００３０】
各機能部３２０，３３０，３４０，３５０及びＵＩフレームワーク２４１の各制御部２４２〜２４５は、受信したプリンタステータスに含まれる情報に応じて、行うべき処理を判別し、所定のプログラムを実行する。
【００３１】
例えば、ビュー制御部２４４は、受信したプリンタステータスに含まれる情報に応じて、所定の画面表示を行う。具体的には、ビュー制御部２４４は、ＬＣＤ１０６の表示画面において、動作中の機能部を、動作中でない機能部と区別するために、後述するタグ４１０，４２０，４３０，４４０を用いて識別表示する。この識別表示は、動作中の機能部がビュー制御部２４４に要求することによって行われる。
【００３２】
ＭＦＰ１００が有する４つの機能のいずれか１つの機能を動作させるときは、その機能に対応する基本画面をＬＣＤ１０６の表示画面に表示される。これらの基本画面を図４〜図６を用いて説明する。
【００３３】
図４は、図１におけるＬＣＤ１０６に表示されるコピー基本画面の構成を示す図である。
【００３４】
図４に示すコピー基本画面４００は、上部に設けられた、ＭＦＰ１００が有する４つの機能に対応する４つのタブ、即ち「コピー」タブ４１０、「送信／ファクス」タブ４２０、「ボックス」タブ４３０、及び「マクロ」タブ４４０と、下部に設けられたステータス表示行４５０とから構成されている。ステータス表示行４５０は、上記４つのタブ４１０，４２０，４３０，４４０とは独立して表示され、ＭＦＰ１００のステータスを常時表示する。このコピー基本画面４００は、コピー機能以外の機能が動作中である場合に、コピー機能を動作させるためにユーザが「コピー」タブ４１０を押下するとＬＣＤ１０６の表示画面に表示される。
【００３５】
また、コピー基本画面４００の略中央部には、ソータを用いてソート処理を行うための「ソータ」ボタン４１１や、原稿の画像を縮小してコピーする場合において記録紙に印刷するときのレイアウトを設定する縮小レイアウトなどを行うための「応用モード」ボタン４１２が設けられている。
【００３６】
ＭＦＰ１００は、ユーザがコピー基本画面４００を介して指定した設定内容に従って、スキャナ１０４及びプリンタ１０５並びにコピー機能部３２０を介してコピー処理を行う。なお、ユーザによって指定される設定内容には、ソート処理の実行、倍率変更処理の実行などがある。
【００３７】
図５は、図１におけるＬＣＤ１０６において送信／ファクス機能実行時に表示される送信基本画面を説明するために用いられる図である。
【００３８】
図５に示す送信基本画面５００は、図４のコピー基本画面４００と同様に、上部に設けられたタブ４１０，４２０，４３０，４４０と、ステータス行４５０とから構成されている。この送信基本画面５００は、送信／ファクス機能以外の機能が動作中である場合に、送信／ファクス機能を動作させるためにユーザが「送信／ファクス」タブ４２０を押下するとＬＣＤ１０６の表示画面に表示される。
【００３９】
ＭＦＰ１００は、ユーザが送信基本画面５００を介して指定した設定内容に従って電子メール送信処理又はファクス送信処理を行う。
【００４０】
図６は、図１におけるＬＣＤ１０６においてマクロ機能実行時に表示されるマクロ基本画面を説明するために用いられる図である。
【００４１】
図６に示すマクロ基本画面６００は、図４及び図５のコピー基本画面４００，５００と同様に、上部に設けられたタブ４１０，４２０，４３０，４４０と、ステータス行４５０とから構成されている。このマクロ基本画面６００は、マクロ機能以外の機能が動作中である場合に、マクロ機能を動作させるためにユーザが「マクロ」タブ４４０を押下するとＬＣＤ１０６の表示画面に表示される。
【００４２】
また、図６に示すように、マクロ基本画面６００の略中央部には、後述する図７のマクロファイル７００を作成したり、作成されたマクロファイル７００を呼び出すためのマクロファイルキー４４１と、マクロファイルキー７００を作成するために記録処理を開始するための「記録開始」キー４４２と、マクロファイルキー４４１に名称を付与したり、付与されている名称を変更するための「名称」キー４４３と、作成されたマクロファイル７００を削除するための「削除」キー４４４と、呼び出されたマクロファイル７００に記録されている処理（ステップ）の内容を確認するための「ステップ」キー４４５と、呼び出されたマクロファイル７００に記録されている処理（ステップ）の内容を再生を開始するための「再生」キー４４６と、呼び出されたマクロファイル７００に記録されている内容などの情報を表示するマクロ情報表示領域４４７とが設けられている。
【００４３】
なお、マクロファイルキーは、図６に示すように複数個表示されており、各マクロファイルキーに１つのマクロファイルが関連付けられており、ＲＡＭ１０３には、これらの複数個のマクロファイルを管理するためのマクロファイルキー管理テーブルが格納されている。ユーザは、複数のマクロファイルキーの中から、１つのマクロファイルキーを選択することにより、１つのマクロファイルを選択する。
【００４４】
上記キー４４２〜４４６の押下は、マクロファイルキーが選択されていない状態では無効となるように、マクロファイルキーが選択されている状態では有効となるように構成されており、また、上記キー４４３〜４４６の押下は、マクロファイルが選択（作成）されていない状態では無効となるように、マクロファイルが選択（作成）されている状態では有効となるように構成されている。
【００４５】
ＭＦＰ１００は、ユーザがマクロ基本画面６００を介して指定した設定内容に従って、以下に詳述するマクロ処理を行う。
【００４６】
マクロ処理は、図３におけるマクロ機能部３４０によって、ＭＦＰ１００におけるコピー機能及び送信／ファクス機能においてユーザオペレーションに基づいて実行された処理の操作手順をスクリプト（プログラム）として後述する図７のマクロファイル７００に記録する記録処理と、該マクロファイル７００に記録されたスクリプトを実行することにより、該操作手順の各処理をＬＣＤ１０６上の表示内の遷移とともに再生する再生処理とで構成される。
【００４７】
第１に、マクロ機能動作時に実行される記録処理を説明する。なお、本記録処理により、例えば、両面印刷された原稿の画像を縮小レイアウトして所定の記録紙の両面に印刷し、このようにして出力された複数の記録紙をソートして所定のトレイに排紙し、これらの処理を完了した旨を所定のユーザに通知するための完了通知電子メールを所定のアドレスに送信するという一連の操作が記録される。
【００４８】
図６のマクロ基本画面６００における作動を説明する。
【００４９】
図６のマクロ基本画面６００において、マクロファイルが作成されていないマクロファイルキー４４１が選択され、「記録開始」キー４４２が押下されると、ＭＦＰ１００は、マクロファイル７００を作成する記録処理を開始する。なお、「記録開始」キー４４２の押下の前に、「名称」キー４４３を介して新規に作成されたマクロファイル７００に名称を付与してもよい。
【００５０】
図７は、図３におけるマクロ機能部３４０によって作成されたマクロファイル７００の一例を説明するために用いられる図である。
【００５１】
図７のマクロファイル７００は、図３におけるマクロ機能部３４０によりマクロ処理における記録処理の実行中に、例えばスクリプト言語の１つであるPnutsを用いて作成され、ＭＦＰ１００が備えるメモリ、例えばＲＡＭ１０３に登録されたものの一例を示す。スクリプト言語は、テキスト形式で記述され、所定のアプリケーションの機能を補完するためのプログラムである。
【００５２】
マクロファイル７００は、１行内に記述された１つのスクリプトが第１行目〜第１９行目に亘って配列されて構成された複数のプログラムから成り、各行のプログラムは、上記アプリケーション２２０，２３０，２４０などの機能を補完する。
【００５３】
以下、図７のマクロファイル７００の各行に記述されたプログラムを説明する。
【００５４】
第１行目のスクリプトにおいて、「import(“jmmf.macro.*”)」は、マクロファイル７００の１行目に無条件に記述されるスクリプトであり、マクロファイル７００とは異なるファイルであって、名称が「“jmmf.macro.*”」である外部ファイルをこのマクロファイル７００にインポートすることを指示するプログラムである。
【００５５】
上記外部ファイルにおいては、後述する第２行目〜第１５行目及び第１７行目〜第１８行目のスクリプトにおいて記述されている関数push、同第１６行目における関数wait、同第１９行目における関数quitなどの関数がそれぞれ定義されている。
【００５６】
上記外部ファイルにおいては、例えば、関数pushは、ハードキー１０８又はタッチパネル１０９の所定のキーの押下を意味することが定義されており、さらに、関数pushには、引数として、ファンクション、クラス、及びインスタンスが定義されている。ファンクションは、ＭＦＰ１００の各機能を特定するための機能ＩＤから成り、クラスは、その機能が動作中であるときのＬＣＤ１０６の表示画面、又はそのサブ画面を特定するための画面ＩＤから成り、インスタンスは、画面ＩＤで特定された所定の表示画面における所定のキーを特定するキーＩＤから成る。即ち、これらの引数を使用することにより、記録処理においてユーザにより押下されたキー、即ち再生処理においてＭＦＰ１００が押下すべきキーを一意に特定することができる。そして、ユーザが操作を行うごとにファンクション、クラス、及びインスタンスの内容を判別し、その内容をスクリプトとして順次記述していくものである。
【００５７】
また、関数waitは、ユーザオペレーションによって発生するイベントと対となるイベントとして、直前の操作が所定のステータスの受信を伴い、次の操作に移るべきものである場合、所定の機能部又は図１におけるＭＦＰ１００の所定の構成要素からのそのステータス（以下、「装置ステータス」という）の受信待ちを行うことが定義されている。
【００５８】
さらに、関数waitには、引数として、ファンクション、クラス、及びインスタンスが定義されている。ファンクションは、ＭＦＰ１００の機能を動作させるためのプログラムを実行すべき機能部を特定するための機能部ＩＤから成り、クラスは、その機能部が実行すべきプログラムの種別を特定する種別ＩＤから成り、インスタンスは、そのプログラムの実行状態を特定するステータスＩＤから成る。即ち、これらの引数を使用することにより、機能部が実行すべきプログラムの実行状態を一意に特定することができる。
【００５９】
なお、関数waitにおいては、上記のように装置ステータスに代えて所定時間待機するための時間を設定することも可能である。
【００６０】
上記外部ファイルにおいて、関数quitは、マクロ処理における記録処理の実行終了、即ちマクロファイル７００の作成終了が定義されている。
【００６１】
なお、図７のマクロファイル７００における第２行目〜第１９行目の各スクリプトについては、後述する。
【００６２】
このように本実施形態においては、マクロファイル７００は、関数としてpush、wait、及びquitを、引数としてファンクション、クラス、及びインスタンスを用いるという簡易な構成とされているので、マクロ機能における記録及び再生が容易であるとともに、画像処理装置の仕様に依存する部分を極力減らすことができ、例えばファンクション、クラス、及びインスタンスが適合するように変更するのみで他の装置への移植が容易となる。
【００６３】
図８は、図７のマクロファイル７００の作成中又は再生中に表示されるマクロ操作パネルの構成を示す図であり、図９は、図４のコピー基本画面４００に図８のマクロ操作パネルの一部が重畳して表示されている場合を示す図である。
【００６４】
図８のマクロ操作パネル８００は、その一部又は全部がマクロ処理における記録処理実行中及び／又は再生処理実行中にＬＣＤ１０６の表示画面に表示される。マクロ操作パネル８００は、マクロファイル７００における所定のスクリプトに対応する処理（ステップ）の再生を停止させるポーズを指示するポーズキー８１０と、ポーズキー８１０によって指示されたポーズの解除を指示する再生キー８２０と、記録処理の実行を完了して作成されたマクロファイル７００のＲＡＭ１０３への登録を指示する登録キー８３０と、記録処理又は再生処理の実行のキャンセルを指示するキャンセルキー８４０と、マクロファイル７００に登録されている次のユーザオペレーション（次の行のスクリプト）を実行した後にポーズするステップ実行キー８５０とから構成されている。
【００６５】
ＬＣＤ１０６の表示画面は、マクロ処理における記録処理実行中においては、ポーズキー８１０、登録キー８３０、及びキャンセルキー８４０が表示され、「再生」キー４４６の押下による再生処理実行中においては、キャンセルキー８４０が表示され、「ステップ」キー４４５の押下による再生処理実行中においては、再生キー８２０、登録キー８３０、及びキャンセルキー８４０、ステップ実行キー８５０が表示されるように構成されている。
【００６６】
図６のマクロ基本画面６００において、マクロ操作画面８００が表示された状態で、ユーザが「コピー」タグ４１０を押下すると、マクロ操作画面８００が表示されたまま、図４のコピー基本画面４００が表示されて図９に示すような構成の表示画面に遷移する。
【００６７】
図９におけるコピー基本画面４００において、ユーザオペレーションに基づいてコピー機能が動作すると、ＵＩフレームワーク２４１は、ユーザオペレーション、即ちキー押下によって発生したイベントを上記キー入力イベントリスナ登録されているプログラムに関連付けられた機能部に通知すると同時に、マクロ制御部２４５にも同じ情報を通知する。マクロ制御部２４５は、ユーザオペレーション及び該ユーザオペレーションによって発生したイベントを順次スクリプト化し、以下に説明するようなスクリプトから成るマクロファイル７００の作成が完了する。
【００６８】
図７のマクロファイル７００において、第２行目のスクリプトは、クラス及びインスタンスの各ＩＤが特定されていない（none）特殊なスクリプトであって、マクロ処理における記録処理実行中に、ＭＦＰ１００の動作中の所定の機能、例えばマクロ機能からコピー機能へ切り換え操作があったこと、即ち、ユーザが「コピー」タブ４１０を押下したことを示し、これと同一の処理を再生処理時に実行するためのプログラムを構成する。以下の各スクリプトも同様に、ユーザオペレーション又は該ユーザオペレーションによって発生するイベントと同一の処理を実行するためのプログラムを構成する。
【００６９】
第３行目は、ファンクションが「copy」であるコピー機能において、動作開始時に表示されるクラスが「base」である基本画面、即ちコピー基本画面４００上でインスタンスが「ソータ（sorter）」であるキー、即ち「ソータ」キー４１１を押下することを示す。
【００７０】
第４行目は、コピー機能において「ソータ」キー４１１の押下によりＬＣＤ１０６の表示画面に表示される図１０のソータ画面１０００上で、トレイに排紙された所定枚数の記録紙１部ごとにソート処理を行うための「ソート」キー１００１を押下することを示す。なお、ソータ画面１０００において、「ソート」キー１００１をデフォルトで選択するようにして、記録処理実行中におけるユーザの押下を省略してもよい。
【００７１】
図１０のソータ画面１０００には、「ソート」キー１００１以外に、トレイに排紙された複数部の記録紙を各ページごとにグループ化するグループ化処理を行うための「グループ」キー１００２と、トレイに排紙された所定枚数の記録紙に対してソート処理を施し、該ソート処理された複数枚の記録紙にステイプル処理を行うための「ステイプルソート」キー１００３とが設けられている。
【００７２】
第５行目は、上記ソータ画面１０００上での「ＯＫ」キー１００４の押下を示す。
【００７３】
この「ＯＫ」キー１００４の押下により、ＬＣＤ１０６の表示画面は、図１１に示すコピー基本画面４００’に遷移する。このコピー基本画面４００’は、図９のコピー基本画面４００に、図１０のソータ画面１０００を介して設定された設定内容１１００、即ちソート処理を１部ごとに行う旨が追加的に表示されている。
【００７４】
第６行目は、上記コピー基本画面４００’上での、インスタンスが「special」である「応用モード」キー４１２の押下を示す。
【００７５】
第７行目は、上記応用モードキー４１２の押下によりＬＣＤ１０６の表示画面に表示される図１２に示す応用モード画面１２００上での、例えばインスタンスが「Nin1」である「縮小レイアウト」キー１２０１の押下を示す。
【００７６】
第８行目は、「縮小レイアウト」キー１２０１の押下によりＬＣＤ１０６の表示画面に表示されるクラスが「special_Nin1」である縮小レイアウト画面１３００（図１３）上での、例えばインスタンスが「docDup」である「両面原稿」キー１３０１の押下を示す。
【００７７】
なお、図１３に示す縮小レイアウト画面１３００は、原稿に関する情報を設定するための画面であって、ユーザは、この応用モード画面１２００上で、原稿のサイズと、画像が両面に印刷された両面原稿であるか、又は画像が一面にのみ印刷された片面原稿であるかを指定する。応用モード画面１２００におけるデフォルトは、原稿のサイズが「Ａ４」サイズであり、且つ片面原稿である。したがって、上記「両面原稿」キー１３０１の押下により、原稿のサイズが「Ａ４」サイズであることも指定される。
【００７８】
第９行目は、「両面原稿」キー１３０１の押下によりＬＣＤ１０６の表示画面に表示されるクラスが「special_Nin1_docDup」である両面原稿画面１４００（図１４）上での「ＯＫ」キー１４０３の押下を示す。なお、両面原稿画面１４００では、原稿が見開きの状態で左右のページに分かれている左右開きであることを指定するための「左右開き」キー１４０１、及び同様に上下開きを指定するための「上下開き」キー１４０２のうち、「左右開き」キー１４０１がデフォルトとして選択されている。したがって、「ＯＫ」キー１４０３の押下により、原稿が左右開きであることが指定されると共に、ＬＣＤ１０６の表示画面には、「両面原稿」キー１３０１が選択された状態にある縮小レイアウト画面１３００が表示される。
【００７９】
第１０行目は、上記縮小レイアウト画面１３００上での「次へ」キー１３０２の押下を示す。これにより上記縮小レイアウト画面１３００のサブ画面であるレイアウト画面１５００（図１５）がＬＣＤ１０６の表示画面に表示される。
【００８０】
図１５に示すレイアウト画面１５００は、出力条件を入力するための設定画面であり、記録紙に何ページ分の原稿の画像を印刷するかを指定するための「２ in １」キー１５０１、「４ in １」キー１５０２、及び「８ in １」キー１５０３や、Ｚ配置やＮ配置といった出力のパターン及び記録紙の印刷面が片面であるのか両面であるのかを指定するための「両面コピー」キー１５０４及び「詳細設定」キー１５０５などが設けられている。
【００８１】
第１１行目は、上記レイアウト画面１５００（図１５）上での「４ in １」キー１５０２の押下を示し、第１２行目は、上記縮小レイアウト画面１５００上での、インスタンスが「prntDup」である「両面コピー」キー１５０４の押下を示す。これらにより、記録紙の片面に４ページ分の原稿の画像を印刷し、記録紙の印刷面が両面であることが指定される。
【００８２】
第１３行目は、上記「両面コピー」キー１５０４の押下により表示される、縮小レイアウト画面１５００のサブ画面である両面コピー画面１６００（図１６）上での「ＯＫ」キー１６０１の押下を示す。なお、両面コピー画面１６００は、記録紙の印刷面を指定するための画面であり、「左右開き」キー１６０２がデフォルトとして選択されている。上記「ＯＫ」キー１６０１の押下により、記録紙の印刷面が左右開きであることが指定されると共に、両面コピー画面１６００が上記応用モード画面１２００に遷移する。
【００８３】
第１４行目は、上記応用モード画面１２００上での「閉じる」キー１２０２の押下を示す。「閉じる」キー１２０２の押下により、ＬＣＤ１０６の表示画面は、図１１に示したようなコピー基本画面４００’に遷移する。
【００８４】
第１５行目は、上記コピー基本画面４００’の表示中におけるハードキー１０８のスタートキーの押下を示す。このスタートキー１０６の押下により、コピー機能において実行すべきコピージョブの設定が確定し、スキャナ１０４及びプリンタ１０５並びにコピー機能部３２０によるコピージョブの実行が開始される（コピースタート）。
【００８５】
第１６行目には、コピージョブ実行の完了待ちを行うというイベントが記録される。このイベントは、コピースタートしたときに発生することがＭＦＰ１００に予め登録されている。即ち、第１５行目で記録した操作がコピースタートのための操作であり、この操作に対して、第１６行目の操作は、コピージョブの完了時にＣＰＵ１０１で生成された応答（コピージョブの完了）をマクロ制御部３４０で受信するためのものである。このように、ある操作に対して生成される種々のステータスのうち、マクロファイルに記録すべきステータスを予めＭＦＰ１００のＲＡＭ１０３に直前の操作とそれに伴うステータスの組として登録しておく。マクロ制御部３４０は、ＲＡＭ１０３に登録されている操作がなされた場合に、それに伴うステータスの発生をマクロとして記録するものである。
【００８６】
コピージョブの実行の開始から完了までの間には、図１７に示すようなプリント実行中画面１７００がコピー基本画面４００’の上に重畳してＬＣＤ１０６の表示画面に表示される。プリント実行中画面１７００には、「プリント状況」プログレスバー１７０１などにより、コピージョブの実行状態が表示される。コピージョブの実行が完了したときは、プリント実行中画面１７００が削除される。なお、これらの処理をスクリプト化してマクロファイル７００に記録してもよい。
【００８７】
コピージョブの実行が完了するときには、ＣＰＵ１０１がコピージョブ完了ステータスを生成し、そのコピージョブ完了ステータスをマクロ制御部３４０が受信する。
【００８８】
コピージョブの実行が完了した後には、ユーザが「送信／ファクス」タグ４２０を押下することにより、ＬＣＤ１０６の表示画面を図５の送信基本画面５００に切り換える。したがって、マクロファイル７００における第１７行目は、ファンクションが「send」である送信／ファクス機能への切換えを示す。「送信／ファクス」タグ４２０の押下により、ＬＣＤ１０６の表示画面には、送信基本画面５００と、その上に重畳して表示されたマクロ操作パネル８００とが表示される（図１８）。
【００８９】
図１８に示す送信基本画面５００は、電子メールやＦＡＸなどの送信処理に関して送信ジョブの設定や、送信ジョブの実行の開始を行うためのものであり、典型的な業務に関する設定が予め設定された定型業務ボタン５２１や、デフォルトで選択される「完了メール」キー５２２が設けられている。「完了メール」キー５２２は、所定のジョブが完了したときに、その旨を所定の送信先に電子メールを用いて通知することを指定するためのものである。
【００９０】
第１８行目は、図１８に示す送信基本画面５００の表示中におけるハードキー１０８のスタートキーの押下を示す。このスタートキーの押下により、送信ジョブの実行が開始される。送信ジョブの実行中においては、送信基本画面５００の下部に設けられているステータス行４５０に送信ジョブの実行中である旨が表示される。
【００９１】
送信ジョブの実行中に、ユーザがマクロ操作パネル８００上の登録キー８３０を押下することにより、図１９に示すようなマクロファイル７００を登録する旨の確認を行うための登録確認画面１９００が表示される。
【００９２】
登録確認画面１９００において、ユーザが「はい」キー１９０１を押下した場合には、マクロファイル７００における第１９行目に、マクロファイル７００の作成終了を示すスクリプトを生成する。これにより、本記録処理の実行を終了すると共に、作成されたマクロファイル７００をＲＡＭ１０３に登録する。
【００９３】
一方、登録確認画面１９００において、ユーザが「いいえ」キー１９０２を押下した場合には、本記録処理の実行を継続する。なお、ユーザが、マクロ操作パネル８００上のキャンセルキー８４０を押下した場合には、マクロファイル７００を破棄する旨の確認を行うための破棄確認画面２０００（図２０）を表示し、ユーザが「はい」キー２００１を押下した場合には、本記録処理の実行をキャンセルすると共に、マクロファイル７００をＲＡＭ１０３に登録することなくマクロファイルキー管理テーブルから削除する破棄を行う一方、「いいえ」キー２００２を押下した場合には、本記録処理の実行を継続する。
【００９４】
上記マクロ処理における記録処理によれば、図７のマクロファイル７００には、両面印刷された原稿の画像を縮小レイアウトして所定の記録紙の両面に印刷し、このようにして出力された複数の記録紙をソートして所定のトレイに排紙し、これらの処理を完了した旨の完了メールを所定のアドレスに送信するという一連のユーザオペレーションが記録されるので、マクロ処理における再生処理を実行することによって、ユーザは容易に実行した処理と同一の処理を実行することができる。
【００９５】
また、図７のマクロファイル７００によれば、マクロ処理における再生処理時に、第１５行目のスクリプトによって、コピー基本画面４００の表示中におけるスタートキーの押下によるコピースタートを行い、第１６行目のスクリプトによって、コピージョブ実行の完了を待つというイベントが発生する。即ち、マクロ制御部２４５は、ユーザオペレーションと、該ユーザオペレーションによって発生するイベントとを対として管理しており、記録処理において、予め登録されているユーザオペレーションのスクリプトを所定の行に生成し、その次の行に、該ユーザオペレーションの対となるイベントのスクリプトを生成する。これにより、ユーザオペレーションとは非同期に発生するイベントであっても、当該イベントの処理時間に拘わらず、そのイベントの処理完了に応答して即座に次の行の再生に移行して、マクロ処理における再生処理を確実に実行することができる。また、ユーザがユーザオペレーションとは非同期に発生するイベントの処理時間を考慮することがないので、ユーザの操作性を向上させることができる。
【００９６】
また、マクロ処理における記録処理において、ユーザが、完了メール送信ジョブの実行中に登録キー８３０を押下することにより、完了メール送信ジョブの実行の完了待ちのスクリプトを生成することをなくすことができるので、ユーザがより詳細にマクロ機能をカスタマイズすることができ、もって、ユーザの操作性を向上させることができる。
【００９７】
なお、上記記録処理によって作成されるマクロファイル７００における第１８行目及び第１９行目間に、完了メール送信ジョブ実行の完了待ちの関数waitを挿入するようにしてもよい。これにより、マクロ処理における再生処理をより確実に実行することができる。
【００９８】
図２１は、図６のマクロ基本画面６００において表示されるマクロファイル７００の内容を示す図である。
【００９９】
図２１において、マクロファイル７００の内容は、簡略化されてマクロ情報表示領域４４７に表示される。この表示は、図６のマクロ基本画面６００上において、ユーザがマクロファイルキー４４１を押下し、ＣＰＵ１０１が、ＲＡＭ１０３のマクロファイルキー管理テーブルにマクロファイル７００のマクロファイルの名称であるファイルハンドルを登録することによって行われる。また、マクロファイルキー４４１により、図２１に示すマクロ基本画面６００では、「ステップ」実行キー４４５及び「再生」キー４４６が押下可能に表示される。
【０１００】
また、図２１に示すように、マクロファイルキー４４１の名称は、ユーザにより、「名称」キー４４３を介して、「２ in １」に変更されている。これにより、ユーザは、マクロファイル７００に記録されている内容を特定することが容易になり、ユーザの操作性を向上させることができる。
【０１０１】
図２２は、図１におけるＬＣＤ１０６に表示される警告画面の一例の構成を示す図である。
【０１０２】
図２２に示す警告画面２２００は、図２１のマクロ基本画面６００上に重畳されて表示されており、図２１のマクロ基本画面６００において「記録開始」キー４４２が押下されたときに表示される。この警告画面２２００は、例えば、名称が「２ in １」であるマクロファイル７００が登録されているマクロファイルキー４４１が選択されている状態で、「記録開始」キー４４２が押下されると表示される。
【０１０３】
図２２の警告画面２２００において、ユーザが「はい」キー２２０１を押下すると、ＭＦＰ１００は、マクロファイルキー４４１に登録されているマクロファイル７００をＲＡＭ１０３から削除して、他のマクロファイルの作成を開始する一方、「いいえ」キー２２０２を押下すると、他のマクロファイルの作成をキャンセルする。
【０１０４】
図２３は、図１におけるＬＣＤ１０６に表示される警告画面の他の例の構成を示す図である。
【０１０５】
図２３に示す警告画面２３００は、図２１のマクロ基本画面６００上に重畳されて表示されている。この警告画面２３００は、マクロ基本画面６００表示中に、例えば、名称が「２ in １」であるマクロファイル７００が登録されているマクロファイルキー４４１が選択されている状態で、「削除」キー４４４が押下されると表示される。
【０１０６】
図２３の警告画面２３００において、ユーザが「はい」キー２３０１を押下すると、ＭＦＰ１００は、マクロファイルキー４４１に登録されているマクロファイル７００をＲＡＭ１０３のマクロファイルキー管理テーブルから削除する削除処理の実行を開始する一方、「いいえ」キー２３０２を押下すると、削除処理の実行開始をキャンセルして、図２１のマクロ基本画面６００をＬＣＤ１０６に表示する。
【０１０７】
図２４は、図１におけるＬＣＤ１０６に表示される確認画面の一例の構成を示す図である。
【０１０８】
図２４に示す確認画面２４００は、図２１のマクロ基本画面６００上に重畳されて表示されている。この警告画面２４００は、マクロ基本画面６００の表示中に、例えば、名称が「２ in １」であるマクロファイル７００が登録されているマクロファイルキー４４１が選択されている状態で、「再生」キー４４６が押下されると表示される。
【０１０９】
図２４の確認画面２４００において、ユーザが「はい」キー２４０１を押下すると、ＭＦＰ１００は、マクロ情報表示領域４４７の表示内容と同様の表示内容をＬＣＤ１０６とは異なる他の表示装置（不図示）などに表示すると共に、図２５の再生開始画面２５００をＬＣＤ１０６の表示画面に表示する一方、「いいえ」キー２４０２を押下すると、上記再生開始画面２５００をＬＣＤ１０６の表示画面に表示する。なお、図２４の確認画面２４００を表示することなく、図２５の再生開始画面２５００をＬＣＤ１０６の表示画面に表示するように構成してもよい。
【０１１０】
また、図２５に示すように、再生開始画面２５００には、プログレスバー２５０１が設けられており、マクロファイル７００のスクリプトの数、即ち全ステップ数を１００％として実行済みのステップの数の割合を表示する。また、図２５の再生開始画面２５００上には、マクロ操作パネル８００上のキャンセルキー８４０が重畳して表示されている。
【０１１１】
第２に、マクロ機能動作時に、「再生」キー４４６の押下によって実行が開始される再生処理を説明する。本再生処理では、上記記録処理により登録されたマクロファイル７００に記録されているスクリプトを読み出して同一の動作を実行する。これにより、ユーザは、マクロファイル７００を選択するだけで同一の操作を再生することができるので、ユーザの操作性を向上させることができる。
【０１１２】
マクロ制御部２４５は、マクロファイル７００に記録されているスクリプトをＢＩＯＳを介して順次読み出す。
【０１１３】
まず、第１行目のスクリプトを実行することにより、外部ファイルにおいて定義された関数push、関数wait、及び関数quitに関する情報を取得する。
【０１１４】
続く第２行目〜第１８行目のスクリプトを、取得した関数push、及び関数waitに関する情報と、それら関数の引数とに基づいて順次実行する。ユーザがハードキー１０８やタッチパネル１０９を操作することなく、スクリプトがＣＰＵ１０１に入力されるので、上記記録処理において実行したコピー機能及び送信／ファクス機能における処理（コピージョブ及び送信ジョブ）と同一の処理が実行される（再生処理）。各スクリプトの実行によってＬＣＤ１０６の表示画面を切り換えたときは、ポーズ画面が表示され、その後、次の行のスクリプトが実行される。なお、ポーズ画面とは、切換えた表示画面の状態のまま、所定の時間、例えば０．５秒間待機するための表示画面をいう。これにより、ユーザはマクロ処理における再生処理において実行中の処理を確認することができる。また、さらにボタン操作によってポーズ（マクロの再生を一時停止）し、その間にコピー部数等の数値等の情報が記録されていれば、これらの変更を行うことも可能とする。これによりマクロとして登録しておいたものを再生する際に若干の変更を行って実行させることが可能となるものである。
【０１１５】
また、このポーズのための操作を自動で行わせるために、関数waitに一時停止する時間を引数として設定しておき、その時間内に変更処理を行うことを可能としてもよい。
【０１１６】
これらの再生処理を実行しているときには、ＬＣＤ１０６の表示画面には、キャンセルキー８４０が重畳して表示されている。これにより、ユーザはマクロ処理が実行中であることを容易に視認することができると共に、実行中のマクロ処理をキャンセルすることができ、ユーザの操作性を向上させることができる。また、キャンセルキー８４０の押下のみが許可されるように、キャンセルキー８４０以外のキーの押下が不許可となるように設定されている。この設定を行うことにより、マクロ処理中におけるコピー処理及び送信／ファクス処理時の誤動作を防止することができる。もちろん、上記のようにユーザの操作によるポーズ処理を行う場合はキャンセルキー８４０に加え、ポーズキーを設け、これらのキー以外の操作を不許可とする。
【０１１７】
なお、第１６行目のスクリプトは、関数waitによりプリンタ１０５がコピージョブの実行を完了すると、コピージョブの実行完了した旨のステータスを、ＵＩフレームワーク２４１及びマクロ制御部２４５に通知することが定義されている。マクロ制御部２４５は、該発行された通知を受信したときは、関数waitが設定されたスクリプトに基づく、装置ステータス受信待ちの状態を解除し、以降の行のスクリプトを実行する。
【０１１８】
その後、マクロファイル７００の最終行である第１９行目のスクリプトを実行し、本再生処理を終了する。該再生処理の終了は、マクロ制御部２４５に通知される。
【０１１９】
上記再生処理では、キャンセルキー８４０（あるいは加えてポーズキー）以外のキーの押下が不許可となるように設定されているとしたが、許可となるように設定されているか、又は許可とするように設定可能に構成されていてもよい。さらには、上記設定は、マクロ処理の実行が完了した後や、マクロ処理中においてポーズ画面を表示している間には、自動的に解除されるように構成してもよい。これにより、ユーザの操作性を向上させることができる。この場合、ユーザは、上記再生処理中において実行すべき処理の設定を変更することが可能である。これにより、マクロ機能をカスタマイズして、ユーザの操作性を向上させることができる。
【０１２０】
具体的には、例えば、第４行目のスクリプトの実行によって、キャンセルキー８４０が重畳表示された図１０の表示画面１０００のポーズ画面が表示されているときに、ユーザは「グループ」キー１００２を押下することができる。グループキー１００２の押下があっても、第５行目以降のスクリプトは、マクロファイル７００における順序などが変わらないからである。
【０１２１】
一方、「グループ」キー１００２に代えて「ステープルソート」キー１００３を押下したときには、トレイに排紙された複数の記録紙のどこにステープルを行うかの設定画面をＬＣＤ１０６に表示するためのスクリプトをマクロファイル７００に第４行目及び第５行目のスクリプト間に挿入する必要があるので、マクロファイル７００における順序などが変わり、以降のスクリプトを実行できなくなる。
【０１２２】
図２６は、図１におけるＬＣＤ１０６に表示される確認ポップアップ画面２６００の構成を示す図である。
【０１２３】
図２６の確認ポップアップ画面２６００は、以降の行のスクリプトが実行できなくなるようなキーの押下があった場合にＬＣＤ１０６にポップアップ表示され、該キーの押下によって変更された設定を保持して、以降の行のスクリプトの実行をキャンセルするための「はい」キー２６０１と、該キーの押下によって変更された設定を保持することなく、リセットを行う「いいえ」キー２６０２とが設けられている。即ち、「はい」キー２６０１及び「いいえ」キー２６０２のいずれを押下しても、実行中であったマクロ処理における再生処理が中止されると共に、マクロ操作パネル８００の表示も削除される。
【０１２４】
「はい」キー２６０１を押下した場合には、それまでに実行した再生処理における設定及び上記キーの押下によって変更された設定に基づいて処理を継続して実行することができる。「いいえ」キー２６０２を押下した場合には、それまでの実行した再生処理における設定及び上記キーの押下によって変更された設定を破棄して予め設定されているデフォルト値に変更され、ＬＣＤ１０６の表示画面には、リセット時に表示される所定の初期画面が表示される。
【０１２５】
第３に、図６における「ステップ」実行キー４４５の押下によって実行が開始される再生処理を説明する。
【０１２６】
図２７は、図１におけるＬＣＤ１０６に表示されるフィニッシング処理画面の一例の構成を示す図である。
【０１２７】
図２７のフィニッシング処理画面２７００は、図６における「ステップ」実行キー４４５の押下によって、マクロファイル７００の第２行目のスクリプトに対応するステップを実行した場合の画面を示しており、その画面上にはマクロ操作パネル８００が重畳して表示されている。図２７に示すフィニッシング処理画面２７００において、ユーザがステップ実行キー８５０の押下する度に、マクロファイル７００の各ステップが順次実行され、実行した状態でポーズ画面が表示される。再生キー８２０を押下すると、上述した「再生」キー４４７の押下による再生処理と同様に連続的にマクロファイル７００の各ステップを実行する。キャンセルキー８４０を押下すると、実行中の再生処理をキャンセルする。これらにより、ユーザは、より詳細な確認を行いながら、マクロ処理における再生処理を実行したり、その実行をキャンセルしたりすることができ、ユーザの操作性を向上させることができる。
【０１２８】
図２８は、図８のマクロ操作パネル８００の変形例を示す図である。
【０１２９】
これまで説明したものは所定の装置ステータスをマクロファイルに記録するに際して、実際に該当するステータスへと変化するのを待ってそれを記録するものとしたが、以下に説明する変形例は実際のステータスではなくユーザによるキー操作によって該当するステータスを擬似的に発生させてそれを記録するものである。そしてマクロ再生時はこの擬似的なステータスとして記録したものを実際のステータスへの変化に対応させて再生するものである。
【０１３０】
図２８のマクロ操作パネル８００’は、図８のマクロ操作パネル８００に「擬似ステータス」キー８６０が追加されたものであり、他の構成要素に関しては、マクロ操作パネル８００と同一であるので、それらの説明を省略する。
【０１３１】
マクロ操作パネル８００’は、マクロ機能における記録処理中にＬＣＤ１０６に表示される。なお、キャンセルキー８４０（あるいは加えてポーズキー）以外のキーの押下が許可されているときは、再生処理中に表示されてもよい。
【０１３２】
「擬似ステータス」キー８６０は、実際には発生していないステータスを発生したことに擬制するための擬似ステータスを選択するための後述する図２９の擬似ステータス生成画面２９００をＬＣＤ１０６の表示画面に表示させるためのものである。
【０１３３】
図２９は、図１におけるＬＣＤ１０６に表示される擬似ステータス生成画面２９００の構成を示す図である。
【０１３４】
図２９に示す擬似ステータス生成画面２９００は、図２８における「擬似ステータス」キー８６０の押下によってＬＣＤ１０６に表示され、例えば１０個の擬似ステータスに対応する設定キー２９０１〜２９１０と、各設定キーの押下に対してそれに対応する擬似ステータスの設定を許可するための「ＯＫ」キー２９１１と、不許可にするための「設定取り消し」キー２９１２とが設けられている。
【０１３５】
上記１０個の設定キー２９０１〜２９１０は、ジャムが発生したと擬制するための「ジャム発生」キー２９０１、トナーの残量がないと擬制するための「トナーなし」キー２９０２、トナーの残量が少ないと擬制するための「トナー少量」キー２９０３、記録紙が給紙トレイにないと擬制するための「用紙なし」キー２９０４、排紙された記録紙にステープル用の針がないと擬制するための「ステープルなし」キー２９０５、コピージョブの実行が完了したと擬制するための「コピー完了」キー２９０６、電子メール又はファクスの送信ジョブの実行が完了したと擬制するための「送信完了」キー２９０７、実行中のコピージョブを中断したと擬制するための「コピー中断」キー２９０８、実行中の電子メール又はファクスの送信ジョブにおいてエラーが発生したと擬制するための「送信エラー」キー２９０９、及びＬＤＡＰを用いてＭＦＰに接続された外部サーバなどから所定の情報を受信したと擬制するための「ＬＤＡＰ受信」キー２９１０から成る。
【０１３６】
上記のような擬似ステータスのうち、コピージョブや送信ジョブの完了、ＬＤＡＰ受信による情報の受信等、ユーザの操作に伴って取得されるべきステータスについてのマクロファイルの再生は、前述の例のようにユーザの操作によるマクロ再生指示に従って実行され、擬似ステータスは実際のステータスの取得に従って実行すればよい。
【０１３７】
ただし、トナーなし、トナー少量、ステープルなしなどユーザの操作とは関係なく、あるいはマクロ再生中でなくても発生し得るステータスに関しては、通常動作時に当該ステータスの発生を検知した場合にそれに対応するマクロファイルを自動的に再生するようにしてもよい。
【０１３８】
以下、マクロ機能において、トナーの残量が少量になった場合に所定のアドレスに電子メールを送信するためのマクロファイルを作成するための記録処理について説明する。
【０１３９】
まず、図６に示すマクロ基本画面６００において、所定のマクロファイルキー４４１’を選択し、「記録開始」キー４４２を押下し、マクロファイル７００’の作成を開始する。
【０１４０】
次いで、ユーザは、擬似ステータス生成画面２９００を表示させ、「トナー少量」キー２９０３を選択して「ＯＫ」キー２９１１を押下する。これにより、ＣＰＵ１０１は、コピー機能部３２０のステータスとしてトナー少量ステータスを生成し、マクロ制御部２４５は、そのトナー少量ステータスを受信して、トナー少量ステータス受信したことを、作成中のマクロファイル７００’に記録する。「ＯＫ」キー２９１１の押下後のＬＣＤ１０６の表示画面は、擬似ステータス生成画面２９００が削除され、実行中の機能に対応する画面である。
【０１４１】
その後、ユーザは、「送信／ファクス」タブ４２０を押下し、送信基本画面５００上の定型業務ボタン５２１の押下によってＬＣＤ１０６の表示画面に表示される図３０に示すような定型業務登録編集／画面３０００において、件名が「トナー少量」である定型業務を選択するか又は登録して、その定型業務の選択又は登録を許可するための「はい」キー３００１を押下する。これにより、図５の送信基本画面５００には、図３１に示すように「トナー少量」定型業務キー３１０１が表示される。
【０１４２】
図３１の送信基本画面５００において、ユーザは、「トナー少量」定型業務キー３１０１を押下して、例えば、電子メールの送信先のアドレスとして業務課の電子メールアドレスを入力すると共に、電子メールの本文として「トナーの発注を依頼する」を登録する。これにより、「トナー少量」定型業務キー３１０１には、「ＭＦＰ１００のトナーの残量が少なくなった場合には、業務課に電子メールで、トナーの発注を依頼する」という定型業務の情報が関連付けられる。その後、ユーザは、「トナー少量」定型業務キー３１０１を押下して、ハードキー１０８のスタートキーを押下する。ここで、ユーザは、マクロ操作パネル８００’上の登録キー８３０を押下する。これにより、「トナー少量」に係る定型業務が関連付けられたマクロファイル７００’を作成する記録処理を完了する。
【０１４３】
なお、上記記録処理では、「トナー少量」定型業務キー３１０１に「ＭＦＰ１００のトナーの残量が少なくなった場合には、業務課に電子メールで、トナーの発注を依頼する」という定型業務の情報が関連付ける処理をマクロファイル７００’に記録したが、予め「トナー少量」定型業務キー３１０１を送信基本画面５００上に作成してから、記録開始キー４４２を押下することにより、マクロファイル７００”を作成してもよい。これにより、マクロファイル７００”に記録されるステップの数をマクロファイル７００’よりも少なくすることができる。
【０１４４】
図３２は、図６のマクロ基本画面６００において、図３１の「トナー少量」キー３１０１が関連付けられたマクロファイルキー４４１’が選択されているときの状態を示す図である。
【０１４５】
図３２のマクロ基本画面６００において、そのマクロ情報表示領域４４７に概略的に表示されているように、名称が「トナー少量報告」であるマクロファイルキー４４１’に対応する上記マクロファイル７００”は、トナー少量ステータスを受信するステップと、送信／ファクス機能に切換えるステップと、「トナー少量」定型業務キー３１０１を選択するステップと、ハードキー１０８のスタートキーを押下するステップとから主として成る。
【０１４６】
実際に、トナーの残量が少なくなったときは、ＣＰＵ１０１がトナー少量ステータスを発生し、操作部であるタッチパネル１０８がそのステータスを受信すると共に、該トナー少量ステータスを受信した旨をマクロ機能部３４０にも通知する。マクロ機能部３４０は、まず、ＲＡＭ１０３に登録されている複数のマクロファイルのうちいずれか１つのマクロファイルが再生中であるか否かを判別し、再生中でないときは、登録されている複数のマクロファイルのうち、装置ステータスの受信から始まるマクロファイルがあるか否かを判別し、装置ステータスの受信から始まるマクロファイルがあるときは、装置ステータスがトナー少量ステータスであるか否かを判別する。この場合には、トナー少量ステータスの受信から始まるマクロファイル７００”がＲＡＭ１０３に登録されているので、ＭＦＰ１００は、マクロファイル７００”に基づいてマクロ処理における再生処理を自動的に開始する。
【０１４７】
なお、上記実施の形態では、マクロ制御部２４５は、ユーザオペレーションと、該ユーザオペレーションによって発生するイベントとを対として管理しているとしたが、全てのユーザオペレーションによって発生するイベントを管理する必要はなく、必要なイベントが管理される。例えば、ジャム発生によって発生するイベントであるジャム解消待ちのスクリプトを生成しないように構成してもよいし、該ジャム解消待ちのスクリプトを生成するか否かをユーザに確認するように構成してもよい。
【０１４８】
また、マクロファイルの記録処理中にマクロファイルに記録し得るステータスを検知することも考えられ、その場合、このステータスに関する情報を現在記録中のマクロファイルに記録してしまうことも考えられる。そこで、このようにマクロ記録中にマクロファイルに記録し得るステータスの検知を行った場合は、当該ステータスをマクロファイルに記録するか否かをＬＣＤ１０６に表示して、ユーザに選択させるようにする。また、同じくマクロ記録中にマクロファイルに記録し得るステータスを検知した場合、記録中のマクロの手順と検知したステータスに矛盾がないか否かを判断して、その結果に応じてマクロファイルに記録するか否かのいずれかに切り替えるようにしてもよい。そして、マクロに記録しない場合に上述のようなマクロの自動再生処理に移る。
【０１４９】
また、以上の実施の形態では、マクロファイルの記録と再生をＭＦＰ１００内で行わせるようにしたが、これに限らずＭＦＰ１００の外部にパーソナルコンピュータ等を接続し、それによってＭＦＰ１００側の操作手順のマクロファイルの記録と再生を行わせるようにしてもよい。
【０１５０】
また、ＭＦＰ１００で作成したマクロファイルを他の装置に転送して同様の操作手順を他の装置で再生させるようなことも可能である。
【０１５１】
また、操作手順はユーザによる手動操作のほか、音声認識機能等、他の操作方法を応用させることも可能である。
【０１５２】
また、本発明の目的は、上記実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。
【０１５３】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１５４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることはいうまでもない。
【０１５５】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることはいうまでもない。
【０１５６】
また、上記プログラムは、上述した実施の形態の機能をコンピュータで実現することができればよく、その形態は、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給されるスクリプトデータなどの形態を有するものでもよい。
【０１５７】
プログラムを供給する記録媒体としては、例えば、ＲＡＭ、ＮＶ−ＲＡＭ、フロッピー（登録商標）ディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ）、磁気テープ、不揮発性のメモリカード、他のＲＯＭなどの上記プログラムを記憶できるものであればよい。或いは、上記プログラムは、インターネット、商用ネットワーク、若しくはローカルエリアネットワークなどに接続される不図示の他のコンピュータやデータベースなどからダウンロードすることにより供給される。
【産業上の利用可能性】
【０１５８】
本発明の実施の形態に係る画像処理装置は、ＭＦＰ１００だけでなく、マクロ機能を有する画像処理装置に適用することができる。
【図面の簡単な説明】
【０１５９】
【図１】本発明の実施の形態に係る画像処理装置の内部の構成を概略的に示すブロック図である。
【図２】図１におけるＨＤＤの内部構成を概略的に示すブロック図である。
【図３】図２におけるＵＩ用アプリケーションと図１のＭＦＰの機能との関係を示すために用いられるブロック図である。
【図４】図１におけるＬＣＤに表示されるコピー基本画面の構成を示す図である。
【図５】図１におけるＬＣＤにおいて送信／ファクス機能実行時に表示される送信基本画面を説明するために用いられる図である。
【図６】図１におけるＬＣＤにおいてマクロ機能実行時に表示されるマクロ基本画面を説明するために用いられる図である。
【図７】図３におけるマクロ機能部によって作成されたマクロファイルの一例を説明するために用いられる図である。
【図８】図７のマクロファイルの作成中又は再生中に表示されるマクロ操作パネルの構成を示す図である。
【図９】図４のコピー基本画面に図８のマクロ操作パネルの一部が重畳して表示されている場合を示す図である。
【図１０】図１におけるＬＣＤに表示されるソータ画面の構成を示す図である。
【図１１】図９のコピー基本画面に図１０のソータ画面を介して設定された設定内容が追加的に表示されている場合を示す図である。
【図１２】図１におけるＬＣＤに表示される応用モード画面の構成を示す図である。
【図１３】図１におけるＬＣＤに表示される縮小レイアウト画面の構成を示す図である。
【図１４】図１におけるＬＣＤに表示される両面原稿画面の構成を示す図である。
【図１５】図１におけるＬＣＤに表示されるレイアウト画面の構成を示す図である。
【図１６】図１５の縮小レイアウト画面のサブ画面である両面コピー画面の構成を示す図である。
【図１７】図１におけるＬＣＤに表示されるプリント実行中画面の構成を示す図である。
【図１８】図８のマクロ操作パネルの一部が重畳して表示された送信基本画面の構成を示す図である。
【図１９】図７のマクロファイルを登録する旨の確認を行うための登録確認画面の構成を示す図である。
【図２０】図７のマクロファイルを破棄する旨の確認を行うための破棄確認画面の構成を示す図である。
【図２１】図６のマクロ基本画面において表示されるマクロファイルの内容を示す図である。
【図２２】図１におけるＬＣＤに表示される警告画面の一例の構成を示す図である。
【図２３】図１におけるＬＣＤに表示される警告画面の他の例の構成を示す図である。
【図２４】図１におけるＬＣＤに表示される確認画面の一例の構成を示す図である。
【図２５】図１におけるＬＣＤに表示される再生開始画面の構成を示す図である。
【図２６】図１におけるＬＣＤに表示される確認ポップアップ画面の構成を示す図である。
【図２７】図１におけるＬＣＤに表示されるフィニッシング処理画面の一例の構成を示す図である。
【図２８】図８のマクロ操作パネルの変形例を示す図である。
【図２９】図１におけるＬＣＤに表示される擬似ステータス生成画面の構成を示す図である。
【図３０】図１におけるＬＣＤに表示される定型業務登録編集／画面の構成を示す図である。
【図３１】図５の送信基本画面５００において所定の定型業務キーが表示されているときの状態を示す図である。
【図３２】図６のマクロ基本画面においてマクロファイルキーが選択されているときの状態を示す図である。
【符号の説明】
【０１６０】
１００  ＭＦＰ（Multi Function Printer）
１０４  スキャナ
１０５  プリンタ
１０８  ハードキー
２４０  ＵＩ用アプリケーション
２４１  ＵＩフレームワーク
２４５  マクロ制御部
３４０  マクロ機能部
４４１，４４１’  マクロファイルキー
７００，７００’，７００”  マクロファイル
８００，８００’  操作パネル
【図１】
2006067328.tif 000003
【図２】
2006067328.tif 000004
【図３】
2006067328.tif 000005
【図４】
2006067328.tif 000006
【図５】
2006067328.tif 000007
【図６】
2006067328.tif 000008
【図７】
2006067328.tif 000009
【図８】
2006067328.tif 000010
【図９】
2006067328.tif 000011
【図１０】
2006067328.tif 000012
【図１１】
2006067328.tif 000013
【図１２】
2006067328.tif 000014
【図１３】
2006067328.tif 000015
【図１４】
2006067328.tif 000016
【図１５】
2006067328.tif 000017
【図１６】
2006067328.tif 000018
【図１７】
2006067328.tif 000019
【図１８】
2006067328.tif 000020
【図１９】
2006067328.tif 000021
【図２０】
2006067328.tif 000022
【図２１】
2006067328.tif 000023
【図２２】
2006067328.tif 000024
【図２３】
2006067328.tif 000025
【図２４】
2006067328.tif 000026
【図２５】
2006067328.tif 000027
【図２６】
2006067328.tif 000028
【図２７】
2006067328.tif 000029
【図２８】
2006067328.tif 000030
【図２９】
2006067328.tif 000031
【図３０】
2006067328.tif 000032
【図３１】
2006067328.tif 000033
【図３２】
2006067328.tif 000034