(57)【特許請求の範囲】
【請求項１】
データ入力手段と、データ加工手段と、データ出力手段とを有し、前記データ入力手段と、前記データ加工手段と、前記データ出力手段とを連携して動作させることで１つのアプリケーションが有する機能を実現する画像処理装置であって、
前記データ入力手段、前記データ加工手段、及び前記データ出力手段により実行される入力・加工・出力の各作業手順からなる作業工程を示す、少なくとも１つ以上のアクティビティから構成されるマクロに関する情報の登録及び削除指示を受け付けるインタフェースと、
前記インタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記マクロの識別情報と、前記マクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を識別する条件識別情報と、該条件識別情報に対応するマクロ条件とが設定されたマクロ情報を記憶装置に格納するマクロ登録手段と、
前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ登録手段により前記記憶装置へ格納した前記マクロ情報を削除し、削除されるマクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定を削除するマクロ削除手段とを有することを特徴とする画像処理装置。
【請求項２】
当該画像処理装置が、
前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段を識別する識別情報と、前記各動作条件設定とを関連付ける管理情報を有し、
前記マクロ登録手段は、
前記マクロ情報を登録するときに、
登録する前記マクロ情報を基に、前記管理情報を更新することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記マクロ登録手段は、
前記インタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を受け付けるユーザインタフェースの画面を作成するマクロ条件設定画面作成手段と、
前記マクロ条件設定画面作成手段により作成された前記ユーザインタフェースの画面から入力された、前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定値に基づいて、前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各パラメータであるマクロ条件を設定するマクロ条件設定手段と、
前記マクロ条件設定手段により設定した前記マクロ条件を前記記憶装置へ格納するマクロ条件格納手段とを有し、
前記マクロ条件格納手段により、前記マクロ条件を前記記憶装置へ格納するときに、
前記マクロ条件を基に、前記管理情報の前記各動作条件設定を更新することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記マクロ削除手段は、
前記管理情報を基に、前記マクロ情報を削除することを特徴とする請求項１ないし３のいずれか一項に記載の画像処理装置。
【請求項５】
前記マクロ削除手段は、
前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ情報に含まれる前記マクロ構成情報を取得するマクロ構成情報取得手段と、
前記マクロ構成情報取得手段により取得した前記マクロ構成情報を解析するマクロ構成情報解析手段と、
前記マクロ構成情報解析手段により解析され抽出した前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の識別情報を基に、前記マクロ条件を削除するマクロ条件削除手段とを有することを特徴とする請求項１ないし４のいずれか一項に記載の画像処理装置。
【請求項６】
前記マクロ削除手段は、
前記マクロ構成情報解析手段により解析され抽出した前記条件識別情報を基に、対応する前記マクロ条件を前記記憶装置から読み出すマクロ条件読み出し手段と、
当該画像処理装置が有する機能毎に、前記マクロ条件読み出し手段により読み出した前記マクロ条件の設定内容の表示や、前記マクロの削除指示を行う前記ユーザインタフェースの画面を作成するマクロ削除確認画面作成手段とを有し、
前記マクロ削除確認画面作成手段により作成した前記ユーザインタフェースの画面から受け付けた前記マクロ削除指示に従って、前記マクロ条件削除手段により前記マクロ条件を削除することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
データ入力手段と、データ加工手段と、データ出力手段とを有し、前記データ入力手段と、前記データ加工手段と、前記データ出力手段とを連携して動作させることで１つのアプリケーションが有する機能を実現する画像処理装置におけるマクロ情報管理方法であって、
前記データ入力手段、前記データ加工手段、及び前記データ出力手段により実行される入力・加工・出力の各作業手順からなる作業工程を示す、少なくとも１つ以上のアクティビティから構成されるマクロに関する情報の登録及び削除指示を受け付けるインタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記マクロの識別情報と、前記マクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を識別する条件識別情報と、該条件識別情報に対応するマクロ条件とが設定されたマクロ情報を記憶装置に格納するマクロ登録手順と、
前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ登録手順により前記記憶装置へ格納した前記マクロ情報を削除し、削除されるマクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定を削除マクロ削除手順を有することを特徴とするマクロ情報管理方法。
【請求項８】
前記画像処理装置が、
前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段を識別する識別情報と、前記各動作条件設定とを関連付ける管理情報を有し、
前記マクロ登録手順は、
前記マクロ情報を登録するときに、
登録する前記マクロ情報を基に、前記管理情報を更新することを特徴とする請求項７に記載のマクロ情報管理方法。
【請求項９】
前記マクロ削除手順は、
前記管理情報を基に、前記マクロ情報を削除することを特徴とする請求項７又は８に記載のマクロ情報管理方法。
【請求項１０】
データ入力手段と、データ加工手段と、データ出力手段とを有し、前記データ入力手段と、前記データ加工手段と、前記データ出力手段とを連携して動作させることで１つのアプリケーションが有する機能を実現する画像処理装置におけるマクロ情報管理プログラムであって、
コンピュータを、
前記データ入力手段、前記データ加工手段、及び前記データ出力手段により実行される入力・加工・出力の各作業手順からなる作業工程を示す、少なくとも１つ以上のアクティビティから構成されるマクロに関する情報の登録及び削除指示を受け付けるインタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記マクロの識別情報と、前記マクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を識別する条件識別情報と、該条件識別情報に対応するマクロ条件とが設定されたマクロ情報を記憶装置に格納するマクロ登録手段と、
前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ登録手段により前記記憶装置へ格納した前記マクロ情報を削除し、削除されるマクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定を削除する削除手段として機能させるマクロ情報管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マクロ情報の登録・削除を行い、マクロ情報を管理する画像処理装置、画像処理装置におけるマクロ情報管理方法及びマクロ情報管理プログラムに関するものである。
【背景技術】
【０００２】
近年の画像処理装置を代表するデジタル複合機（MFP：Multifunction Peripheral）は、コピー、ファクシミリ、スキャナ、プリンタといった基本機能に加えて、通信装置（例えば、NIC：Network Interface Cardなど。）を介した電子メール配信機能や大容量記憶装置（例えば、HD：Hard Diskなど。）を用いた文書蓄積機能などの拡張機能を有しており、利用者のオフィスワークの効率化を図ることを目的とした多機能化が進んでいる。これに伴って、画像処理装置の利用者は、多機能化により増大した各機能の動作条件を、当該画像処理装置が備える表示部（例えば、操作パネルなど。）において設定しなければならい。
【０００３】
一方、利用者のオフィスワークの中には、画像処理装置が有する機能を利用した定型業務が存在する。このような定型業務は、１日の中で繰り返し行われ、オフィスワークの中で頻度の高いワークフローである。
【０００４】
このように、オフィスワークの中で頻度の高いワークフローにおいても、画像処理装置の利用者が、当該画像処理装置が備える表示部において各機能の動作条件を設定しなければならない状態では、利用者のオフィスワークの効率化を図れない。
【０００５】
このような問題点を解決する画像処理装置として、特許文献１には、ワークフロー実現のため利用する各機能の動作条件設定を、予めマクロ情報として当該画像処理装置に登録しておき、利用者が必要に応じて登録したマクロ情報を読み出し実行することで、画像処理装置が有する機能を利用したワークフローを簡便に行うことができるマクロ実行機能を有する画像処理装置が開示されている。
【特許文献１】特開２００６−０５９２７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の画像処理装置が有するマクロ実行機能では、予め想定したワークフローを実現するために必要な各機能の動作条件設定をマクロ情報として登録しておく構成となっているため、画像処理装置に新規機能が追加された場合には、追加される機能の動作条件設定をマクロ情報として、当該画像処理装置に登録しなければならない。すなわち、従来の画像処理装置では、新規機能が追加された場合に、実装されているマクロ実行機能を実現するプログラムモジュールや関連するデータの構成などを変更しなければならず、その作業は、開発者にとって煩雑である。よって、従来のマクロ実行機能では、新規機能追加に柔軟に対応できない問題点がある。
【０００７】
また、現在では、画像処理装置が利用される用途や目的などの変化に伴い、多様化するユーザのニーズに応えるために、画像処理装置が有する機能を実現する様々なアプリケーションソフトウェアが、開発メーカー（以下、「ベンダ」という。）から提供されている。
【０００８】
このような背景から、画像処理装置では、画像処理装置を製造・販売するベンダが開発したアプリケーションソフトウェア以外に、サードベンダが開発したアプリケーションソフトウェアを利用するマクロの実行を可能としなければならない。
【０００９】
このように、画像処理装置の搭載機能環境に柔軟に対応可能なマクロ実行機能を実現するためには、搭載機能環境の変化に柔軟に対応するマクロ情報管理・運用機能が必要である。
【００１０】
そこで新たに問題となるのは、画像処理装置が、搭載機能を自由に取り外し可能な環境を有している場合に、搭載機能を実現するソフトウェア部品に関連するデータは、ソフトウェア部品によって管理されている点である。
【００１１】
このことから、マクロ実行のときに使用されるソフトウェア部品は、自らの処理に関連する動作条件などが設定されているマクロ情報も管理しなければならない。しかし、ソフトウェア部品は、自由に取り外し可能なため、ソフトウェア部品が画像処理装置から取り外された場合に、ソフトウェア部品に関連するデータがマクロ情報に残存してしまう。すなわち、ソフトウェア部品の取り外しと連動して、マクロ情報から関連するデータが削除されず、その結果、記憶領域を無駄に使用してしまうこととなる。
【００１２】
本発明では、上記従来技術の問題点を鑑み、当該画像処理装置の搭載機能環境の変化に応じたマクロ情報の管理を実現することができる画像処理装置、マクロ情報管理方法及びマクロ情報管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するため、本発明の画像処理装置は、データ入力手段と、データ加工手段と、データ出力手段とを有し、前記データ入力手段と、前記データ加工手段と、前記データ出力手段とを連携して動作させることで１つのアプリケーションが有する機能を実現する画像処理装置であって、
前記データ入力手段、前記データ加工手段、及び前記データ出力手段により実行される入力・加工・出力の各作業手順からなる作業工程を示す、少なくとも１つ以上のアクティビティから構成されるマクロに関する情報の登録及び削除指示を受け付けるインタフェースと、
前記インタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記マクロの識別情報と、前記マクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を識別する条件識別情報と、該条件識別情報に対応するマクロ条件とが設定されたマクロ情報を記憶装置に格納するマクロ登録手段と、
前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ登録手段により前記記憶装置へ格納した前記マクロ情報を削除し、削除されるマクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定を削除するマクロ削除手段とを有することを特徴とする。
【００１４】
これによって、本発明の画像処理装置は、当該装置の機能を実現するソフトウェア部品によるマクロ情報に含まれる関連データを削除する機能を、機能実現するソフトウェア部品と別のソフトウェア部品によって実現する構成したことにより、機能実現するソフトウェア部品に依存することなくマクロ情報を管理・運用することが可能となり、搭載機能環境の変化に応じたマクロ情報管理を実現することができる。その結果、登録マクロ情報による無駄な記憶リソース消費を防ぐことができる。
また、本発明の画像処理装置は、機能実現するソフトウェア部品に依存しない管理情報に基づいて、機能実現するソフトウェア部品の取り外しと連動して、マクロ情報から関連するデータが削除することができる。
【００１５】
また、上記目的を達成するため、本発明の画像処理装置は、前記アクティビティ、前記データ入力手段、前記データ加工手段及び前記データ出力手段を識別する識別情報と、前記各動作条件設定とを関連付ける管理情報を有し、前記マクロ登録手段において、前記マクロ情報を登録するときに、登録する前記マクロ情報を基に、前記管理情報を更新する。
【００１６】
より具体的には、前記マクロ登録手段は、前記インタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を受け付けるユーザインタフェースの画面を作成するマクロ条件設定画面作成手段と、
前記マクロ条件設定画面作成手段により作成された前記ユーザインタフェースの画面から入力された、前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定値に基づいて、前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各パラメータであるマクロ条件を設定するマクロ条件設定手段と、
前記マクロ条件設定手段により設定した前記マクロ条件を前記記憶装置へ格納するマクロ条件格納手段とを有し、
前記マクロ条件格納手段により、前記マクロ条件を前記記憶装置へ格納するときに、
前記マクロ条件を基に、前記管理情報の前記各動作条件設定を更新する。
【００１７】
これによって、本発明の画像処理装置は、機能実現するソフトウェア部品と別のソフトウェア部品によってマクロ情報を管理するときに必要な情報を一元管理することができる。
【００１８】
また、上記目的を達成するため、本発明の画像処理装置は、前記マクロ削除手段において、前記管理情報を基に前記マクロ情報を削除する。前記マクロ削除手段は、前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ情報に含まれる前記マクロ構成情報を取得するマクロ構成情報取得手段と、
前記マクロ構成情報取得手段により取得した前記マクロ構成情報を解析するマクロ構成情報解析手段と、
前記マクロ構成情報解析手段により解析され抽出した前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の識別情報を基に、前記マクロ条件を削除するマクロ条件削除手段とを有する。
【００１９】
更に、前記マクロ削除手段は、前記マクロ構成情報解析手段により解析され抽出した前記条件識別情報を基に、対応する前記マクロ条件を前記記憶装置から読み出すマクロ条件読み出し手段と、当該画像処理装置が有する機能毎に、前記マクロ条件読み出し手段により読み出した前記マクロ条件の設定内容の表示や、前記マクロの削除指示を行う前記ユーザインタフェースの画面を作成するマクロ削除確認画面作成手段とを有し、前記マクロ削除確認画面作成手段により作成した前記ユーザインタフェースから受け付けた前記マクロ削除指示に従って、前記マクロ条件削除手段により前記マクロ条件を削除する。
【００２０】
これによって、本発明の画像処理装置は、機能実現するソフトウェア部品に依存しない管理情報に基づいて、機能実現するソフトウェア部品の取り外しと連動して、マクロ情報から関連するデータが削除することができる。
【００２１】
上記目的を達成するため、本発明の画像処理装置におけるマクロ情報管理方法は、当該装置が有するデータ入力手段と、データ加工手段と、データ出力手段とを有し、前記データ入力手段と、前記データ加工手段と、前記データ出力手段とを連携して動作させることで１つのアプリケーションが有する機能を実現する画像処理装置におけるマクロ情報管理方法であって、
前記データ入力手段、前記データ加工手段、及び前記データ出力手段により実行される入力・加工・出力の各作業手順からなる作業工程を示す、少なくとも１つ以上のアクティビティから構成されるマクロに関する情報の登録及び削除指示を受け付けるインタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記マクロの識別情報と、前記マクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を識別する条件識別情報と、該条件識別情報に対応するマクロ条件とが設定されたマクロ情報を記憶装置に格納するマクロ登録手順と、
前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ登録手順により前記記憶装置へ格納した前記マクロ情報を削除するマクロ削除手順とを有し、
前記マクロ削除手順は、削除されるマクロの識別情報に基づいて、削除されるマクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定を削除することを特徴とする。
【００２２】
これによって、本発明の画像処理装置におけるマクロ情報管理方法は、当該装置の機能を実現するソフトウェア部品によるマクロ情報に含まれる関連データを削除する機能を、機能実現するソフトウェア部品と別のソフトウェア部品によって実現する構成したことにより、機能実現するソフトウェア部品に依存することなくマクロ情報を管理・運用することが可能となり、搭載機能環境の変化に応じたマクロ情報管理を実現することができる。その結果、登録マクロ情報による無駄な記憶リソース消費を防ぐことができる。
【００２３】
また、上記目的を達成するため、本発明の画像処理装置におけるマクロ情報管理方法は、当該装置が、前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段を識別する識別情報と、前記各動作条件設定とを関連付ける管理情報を有し、前記マクロ登録手順は、前記マクロ情報を登録するときに、
登録する前記マクロ情報を基に、前記管理情報を更新する。また、前記マクロ削除手順において、前記管理情報を基に、前記マクロ情報を削除する。
【００２４】
これによって、本発明の画像処理装置におけるマクロ情報管理方法は、マクロ情報を、搭載機能環境の変化に応じて管理・運用することができる。
【００２５】
上記目的を達成するため、本発明の画像処理装置におけるマクロ情報管理プログラムは、当該装置が有するデータ入力手段、前記データ加工手段、及び前記データ出力手段により実行される入力・加工・出力の各作業手順からなる作業工程を示す、少なくとも１つ以上のアクティビティから構成されるマクロに関する情報の登録及び削除指示を受け付けるインタフェースから受け付けた前記マクロに関する情報の登録指示に従って、前記マクロの識別情報と、前記マクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件設定を識別する条件識別情報と、該条件識別情報に対応するマクロ条件とが設定されたマクロ情報を記憶装置に格納するマクロ登録手段と、
前記インタフェースから受け付けた前記マクロに関する情報の削除指示に従って、前記マクロ登録手段により前記記憶装置へ格納した前記マクロ情報を削除するマクロ削除手段として機能させ、
前記マクロ削除手段は、削除されるマクロの識別情報に基づいて、削除されるマクロを構成する前記アクティビティ、該アクティビティを構成する前記データ入力手段、前記データ加工手段及び前記データ出力手段の各動作条件の設定を削除する削除手段として機能させる。
【００２６】
これによって、本発明の画像処理装置におけるマクロ情報管理プログラムは、コンピュータを、搭載機能環境の変化に応じたマクロ情報管理機能を搭載した装置として動作させることができる。
【発明の効果】
【００２７】
本発明によれば、当該画像処理装置の搭載機能環境の変化に応じたマクロ情報管理を実行可能な画像処理装置、マクロ情報管理方法及びマクロ情報管理プログラムを提供することができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の好適な実施の形態（以下、「実施形態」と言う。）について、図面を用いて詳細に説明する。
【００２９】
［第１の実施形態］
＜画像処理装置のハードウェア構成について＞
まず、本実施形態に係る画像処理装置のハードウェア構成について、図１を用いて説明する。
【００３０】
図１は、本発明の第１の実施形態に係る画像処理装置１００のハードウェア構成の一例を示す図である。
【００３１】
図１に示すように、画像処理装置１００は、制御部１１、主記憶部１２、補助記憶部１３、ネットワークI/F１４、外部記憶装置I/F１５、外部装置I/F１６、表示部（パネル表示）１９、入力部（操作部）２０、印刷部（プロッタ部）２１及びスキャナ部（原稿読み取り部）２２などにより構成されている。
【００３２】
制御部（CPU：Central Processing Unit）１１は、コンピュータの中で、各装置の制御やデータの演算・加工を行う。主記憶部１２に記憶されたプログラムを実行する装置で、入力装置や記憶装置からデータを受け取り、演算・加工した上で、出力装置や記憶装置に出力する。
【００３３】
主記憶部（ROM：Read Only Memory、RAM：Random Access Memory）１２は、制御部１１が実行するプログラムやデータを記憶する装置である。
【００３４】
補助記憶部（HD：Hard Disk）１３は、基本ソフトウェアであるOS（Operating System）やアプリケーションソフトウェアなどを関連するデータとともに記憶する装置である。また、補助記憶部１３には、画像処理装置１００が管理する各種情報が格納され、データベース（DB：database）やファイルシステム（FS：File System）などにより管理される。
【００３５】
ネットワークI/F１４は、有線又は／及び無線回線などのデータ伝送路により構築されたLAN（Local Area Network）、WAN（Wide Area Network）などのネットワークを介して接続された通信機能を有する周辺機器と当該画像処理装置１００とのインタフェースである。
【００３６】
外部記憶装置I/F１５は、USB（Universal Serial Bus）などのデータ伝送路を介して接続された外部記憶装置（例えば、記憶メディアドライブなど。）と当該画像処理装置１００とのインタフェースである。
【００３７】
外部装置I/F１６は、USBなどのデータ伝送路を介して接続された外部入力装置（例えば、デジタルカメラなど。）と当該画像処理装置１００とのインタフェースである。
【００３８】
画像処理装置１００は、これらのインタフェースを介して、外部と各種データのやり取り（送受信や読み込み／書き込み）を行っている。
【００３９】
表示部（パネル表示）１９及び入力部（操作部）２０は、キースイッチ（ハードキーとGUI（Graphical User Interface）のソフトウェアキーを含む。）とタッチパネル機能を備えたLCD（Liquid Crystal Display）とから構成され、画像処理装置１００が有する機能を利用する際のUI（User Interface）として機能する装置である。
【００４０】
印刷部（プロッタ部）２１は、CMYKからなる画像データを受け取ると、レーザービームを用いた電子写真プロセス（露光、潜像、現像及び転写のプロセス）を用いて、転写紙（印刷用紙）に受け取った画像データを出力（印刷）する装置である。
【００４１】
スキャナ部（原稿読み取り部）２２は、CCD（Charge Coupled Devices）光電変換素子からなるラインセンサとA/Dコンバータとこれらを駆動する駆動回路を備え、原稿読み取り面（コンタクトガラス上）にセットされた原稿をスキャンすることでRGB各8ビットのデジタル画像データを生成（原稿から情報を読み取り電子化）する装置である。
【００４２】
このように、画像処理装置１００は、主記憶部１２や補助記憶部１３などの記憶装置に格納されたプログラムを実行し、各装置を制御することで、画像処理装置１００が有するコピー、ファックス、スキャナ、プリンタなどの機能を実現している。
【００４３】
＜画像処理装置１００のソフトウェア構成及び基本処理手順について＞
次に、画像処理装置１００が有するコピー、ファックス、スキャナ、プリンタなどの機能を実現するため、どのように実装され動作するのかについて、本実施形態におけるソフトウェア構成及び基本処理手順について、図２〜５を用いて説明する。
【００４４】
図２は、本発明の第１の実施形態に係る画像処理装置１００のソフトウェア構成の一例を示す図である。
【００４５】
図２に示されるように、本実施形態におけるソフトウェアは、ユーザインタフェース層１０１、コントロール層１０２、アプリケーションロジック層１０３、デバイスサービス層１０４及びデバイス制御層１０５などにより構成されている。なお、図中における各層の上下関係は、基本的に上にある層が下の層を呼び出す関係に基づいている。
【００４６】
ユーザインタフェース層１０１は、機能（例えば、コピー、ファックス、スキャナ、プリンタなどのアプリケーション機能）の実行要求を受け付けるための機能が実装されている部分であり、例えば、非図示のユーザ端末などからネットワーク経由で要求を受け付ける通信サーバ部や、表示部１９及び入力部２０を介して入力される要求を受け付けるローカルユーザインタフェース（ローカルUI）部などが含まれる。ユーザインタフェース層１０１において受け付けられた要求は、コントロール層１０２に伝えられる。
【００４７】
コントロール層１０２は、要求された機能を実現するための処理を制御するための機能が実装されている部分である。具体的には、要求された機能に応じて、アプリケーションロジック層１０３における各フィルタを接続し、接続されたフィルタに基づいて機能の実行を制御する。なお、本実施形態において「画像処理装置１００の機能」とは、画像処理装置１００がユーザに対して提供する1つのまとまった単位（要求が入力されて最終的な出力が得られるまで）のサービスと同義であり、ソフトウェア的には1つのまとまった単位のサービスを提供するアプリケーションと同義である。
【００４８】
アプリケーションロジック層１０３は、それぞれが画像処理装置１００において提供される機能の一部を実現する部品群が実装されている部分である。すなわち、アプリケーションロジック層１０３における部品を組み合わせることにより1つの機能が実現される。本実施形態では、各部品を「フィルタ」と呼ぶ。これは、画像処理装置１００のソフトウェアアーキテクチャが「パイプ＆フィルタ」と呼ばれる考え方に基づくものである。
【００４９】
図３は、本発明の第１の実施形態に係るパイプ＆フィルタの概念及びフィルタの構成要素の一例を示す図である。図３（a）には、パイプ＆フィルタの概念を示し、図３（b）には、フィルタの構成要素の一例を示す。
【００５０】
まず、パイプ＆フィルタの概念について説明する。図３（a）において、「Ｆ」はフィルタを示し、「Ｐ」はパイプを示す。図中に示されるように、各フィルタはパイプによって接続される。フィルタは、入力されたデータに対して変換を施し、その結果を出力する。パイプは、フィルタから出力されたデータを次のフィルタに伝達する。すなわち、本実施形態における画像処理装置１００では、各機能を、画像処理装置１００内部で管理する情報（例えば、ユーザ情報や文書データなど。）に対する「変換」の連続として捉える。画像処理装置１００の各機能は、画像処理装置１００内部で取り扱う情報の入力、加工及び出力によって構成されるものとして一般化することができる。そこで「入力」、「加工」及び「出力」を「変換」として捉え、1つの「変換」を実現するソフトウェア部品がフィルタとして構成される。入力を実現するフィルタを特に「入力フィルタ１０３a（データ入力手段）」と言う。また、加工を実現するフィルタを特に「変換フィルタ１０３b（データ加工手段）」と言う。更に、出力を実現するフィルタを特に「出力フィルタ１０３c（データ出力手段）」と言う。なお、各フィルタは独立しており、フィルタ間における依存関係（呼び出し関係）は基本的に存在しない。従って、フィルタ単位で追加（インストール）又は削除（アンインストール）が可能とされている。
【００５１】
図２に戻り、アプリケーションロジック層１０３には、入力フィルタ１０３aとして、スキャナ部２２による画像データの読み取りを制御し、読み取られた画像データを出力する読取フィルタ、補助記憶部１３に保管されている文書データ（画像データ）を読み出し、読み出されたデータを出力する保管文書読出フィルタ、電子メールの受信し、当該電子メールに含まれているデータを出力するメール受信フィルタ、FAX受信を制御し、受信されたデータを出力するFAX受信フィルタ、非図示のユーザ端末（PC：Personal Computer）から印刷データを受信し、受信された印刷データを出力するPC文書受信フィルタ、画像処理装置１００の設定情報や履歴情報などを、例えば表形式に整形されたデータとして出力するレポートフィルタなどが含まれている。
【００５２】
また、変換フィルタ１０３bとしては、入力されたデータに所定の画像変換処理（集約、拡大、又は縮小など）を施し、出力する文書加工フィルタ、入力されたPostScriptデータをビットマップデータに変換して出力する（レンダリング処理を実行する）文書変換フィルタなどが含まれている。
【００５３】
また、出力フィルタ１０３cとしては、入力されたデータを印刷部２１に出力（印刷）させる印刷フィルタ、入力されたデータを補助記憶部１３に保存する保管文書登録フィルタ、入力されたデータを電子メールに添付して送信するメール送信フィルタ、入力されたデータをFAX送信するFAX送信フィルタ、入力されたデータを、非図示のユーザ端末（PC）に送信するPC文書送信フィルタ、入力されたデータを表示部１９にプレビュー表示させるプレビューフィルタなどが含まれている。
【００５４】
デバイスサービス層１０４は、アプリケーションロジック層１０３における各フィルタから共通に利用される下位機能が実装されている部分であり、例えば、或るフィルタからの出力データを次のフィルタに伝達するパイプの機能を実現する画像パイプ１０４a、ユーザ情報が登録されたデータベースや文書又は画像データなどが蓄積されるデータベースなどの各種のデータベースを表現するデータ管理部などが含まれている。
【００５５】
デバイス制御層１０５は、デバイス（ハードウェア）を制御するドライバと呼ばれるプログラムモジュール群が実装されている部分であり、例えば、スキャナ制御部、プロッタ制御部、メモリ制御部、Tel回線制御部及びネットワーク制御部などが含まれる。各制御部は、当該制御部の名前に付けられているデバイスを制御する。
【００５６】
フィルタについて更に詳しく説明する。図３（b）は、フィルタの構成要素の一例を示す図である。図３（b）に示されるように、各フィルタは、フィルタ設定用UI、フィルタロジック、フィルタ固有下位サービス及び永続記憶領域情報などにより構成されている。このうち、フィルタ設定用UI、フィルタ固有下位サービス及び永続記憶領域情報については、フィルタによって必ずしも構成要素に含まれない。
【００５７】
フィルタ設定用UIは、フィルタの実行条件などを設定させるための画面を表示部１９などに表示させるプログラムである。例えば、読取フィルタであれば、解像度、濃度、画像種別などを設定させる画面が相当する。なお、表示部１９の表示がHTML（HyperText Markup Language）データやスクリプトに基づいて行われることを考えると、フィルタ設定用UIはHTMLデータやスクリプトであってもよい。
【００５８】
フィルタロジックは、フィルタの機能を実現するためロジックが実装されたプログラムである。すなわち、フィルタの構成要素としてのフィルタ固有下位サービスやデバイスサービス層１０４又はデバイス制御層１０５などを利用して、フィルタ設定用UIを介して設定された実行条件に応じてフィルタの機能を実現する。例えば、読取フィルタであれば、スキャナ部２２による原稿の読み取り制御のためのロジックが相当する。
【００５９】
フィルタ固有下位サービスは、フィルタロジックを実現するために必要な下位機能（ライブラリ）である。すなわち、デバイスサービス層１０４又はデバイス制御層１０５に相当する機能であるが、他のフィルタから使用されないものについては、フィルタの一部として実装されてもよく、当該一部がフィルタ固有下位サービスに相当する。例えば、読取フィルタであれば、スキャナ部２２を制御するための機能が相当するが、本実施形態では、デバイス制御層１０５においてスキャナ制御部として実装されている。従って、読取フィルタにおいて、フィルタ固有下位サービスの実装は必ずしも必要ではない。
【００６０】
永続記憶領域情報は、フィルタに対する設定情報（例えば、実行条件のデフォルト値など。）など、不揮発メモリに保存する必要があるデータのスキーマ定義が相当する。当該スキーマ定義は、フィルタのインストール時にデータ管理部に登録される。
【００６１】
次に、本実施形態のソフトウェア構成により実行される基本処理手順について、図４及び５を用いて説明する。
図４及び５は、本発明の第１の実施形態に係る画像処理装置１００の基本処理手順の一例（その１、その２）を示すフローチャートである。ここで言う、基本処理手順とは、画像処理装置１００が1つの機能を実現する際の処理手順ことを示す。
【００６２】
まず、ユーザによって入力フィルタが選択され（Ｓ１１）、選択された入力フィルタの実行条件が設定される（Ｓ１２）。同様に、変換フィルタ又は出力フィルタについても選択が行われ（Ｓ１３）、フィルタ間の接続が指定され（Ｓ１４）、実行条件が設定される（Ｓ１５）。
【００６３】
上記の操作は、ユーザインタフェース層１０１のローカルUI部の制御の基、例えば、以降に説明する図７に示したような入力、変換及び出力フィルタの設定画面３１bが表示されたUIを介して行われる。図７の入力画面は、図中の破線で示す「入力」、「加工」及び「出力」などの各選択領域により構成されている。「入力」は、入力フィルタ１０３aを選択する領域であり、「加工」は、変換フィルタ１０３bを選択する領域であり、「出力」は、出力フィルタ１０３cを選択する領域である。それぞれの選択領域において、選択するソフトウェアキーが用意されている。図中では、便宜上、「入力」には、読み取りと保管文書の入力フィルタ、また、「加工」には、文書加工と文書変換の変換フィルタ、また、「出力」には、印刷、保管及び送信の出力フィルタの各ソフトウェアキーが表示されている。
【００６４】
なお、入力フィルタ１０３a、変換フィルタ１０３b及び出力フィルタ１０３cは、１つの機能に対してそれぞれ複数個の選択が可能である。例えば、文書変換した文書データを印刷及び送信する際に、変換後の文書データを用紙へ印刷するとともに電子メールやFAXを用いて特定の宛先へデータ送信するというたように、2つの出力フィルタ１０３c（印刷フィルタ及びメール送信フィルタ）が選択されることになる。
【００６５】
図４に戻り、フィルタの選択が完了し（Ｓ１６がYESの場合）、スタートボタンが押下されると、ユーザインタフェース層１０１からコントロール層１０２に対して、要求内容（例えば、フィルタの種別と当該フィルタに対する設定情報など。）が通知される。
【００６６】
コントロール層１０２は、ユーザインタフェース層１０１からの要求内容を受けて、選択された各フィルタ間をパイプによって接続する（Ｓ１７）。パイプの実体はメモリ（補助記憶部１３（HD：Hard Disk）も含む。）であるが、パイプの両端のフィルタに応じて利用するメモリの種類が異なり、その対応関係は、例えば、画像処理装置１００の補助記憶部１３内に予め定義されている。従って、コントロール層１０２は、定義された対応関係に基づいて、各フィルタ間を特定のパイプで接続する。続いて、コントロール層１０２は、各フィルタに対して並列的に実行要求を出力する（Ｓ１８）。すなわち、フィルタの呼び出しはフィルタの接続順ではなく、全てのフィルタに対してほぼ同時に行われる。フィルタ間の同期はパイプによってとられるからである。すなわち、コントロール層１０２からの実行要求を受けて、各フィルタは自分の入力側のパイプにデータが入力されるまで待機する。但し、入力フィルタ１０３aには、入力側にパイプは存在しない。従って、入力フィルタ１０３aは実行要求に応じて処理を開始する。
【００６７】
図５に移って、まず、入力フィルタ１０３aは、入力デバイスよりデータを入力し（Ｓ２１）、当該データを、出力側に接続されているパイプに出力する（Ｓ２２）。なお、データが複数回に分けて入力される場合（複数枚の原稿がスキャンされる場合など）は、データの入力とパイプへの出力が繰り返される。全ての入力データについて処理が終了すると（Ｓ２３がYESの場合）、入力フィルタ１０３aの処理は終了する。
【００６８】
変換フィルタ１０３bは、入力側に接続されているパイプに対するデータの入力を検知すると処理を開始する。まず、当該パイプからデータを読み込み（Ｓ３１）、データに対して画像処理を施す（Ｓ３２）。続いて、処理結果としてのデータを出力側に接続されているパイプに出力する（Ｓ３３）。入力側のパイプに入力された全てのデータについて処理が終了すると（Ｓ２４がYESの場合）、変換フィルタ１０３bの処理は終了する。
【００６９】
出力フィルタ１０３cは、入力側に接続されているパイプに対するデータの入力を検知すると処理を開始する。まず、当該パイプからデータを読み込み（Ｓ４１）。続いて、読み込まれたデータを出力デバイスを利用して出力する（Ｓ４２）。入力側のパイプに入力された全てのデータについて処理が終了すると（Ｓ４３がYESの場合）、出力フィルタ１０３cの処理は終了する。
【００７０】
＜ワークフローの構成要素について＞
次に、これまで説明した「パイプ＆フィルタ」のソフトウェア構成及び基本処理手順を踏まえて、本実施形態が想定している画像処理装置１００が有するコピー、ファックス、スキャナ、プリンタなどの機能を利用したワークフローの構成要素について、図６を用いて説明する。
【００７１】
図６は、本発明の第１の実施形態に係るワークフローの構成要素の一例を示す図である。
【００７２】
一般的に、ワークフローは、手続き上の作業手順を規定し、規定された作業手順に従って、業務を円滑に遂行することを目的とした流れになっている。このことから、本実施形態では、少なくとも1つ以上の作業手順からなる作業工程の組み合わせで構成されるワークフローを想定している。例えば、画像処理装置１００が有するコピー機能について考えてみると、「原稿読み取り→画像処理→印刷」と言う「入力→加工→出力」の作業手順が自動的に行われる。そのため、コピー機能も1つのアクティビティ（作業工程）となる。また、画像処理装置１００が有する機能を利用したワークフローを考えてみると、例えば、原稿を読み取り、読み取った原稿を印刷及び送信する際のワークフローは、コピー機能とファクシミリ機能との2つのアクティビティから構成される。
【００７３】
このように、画像処理装置１００が有する機能を利用したワークフローは、図６に示すように、画像処理装置１００の基本動作である「入力→加工→出力」が作業手順に相当し、これらの作業手順からなるアクティビティが組み合わされて構成（少なくとも1つ以上のアクティビティで構成）される。
【００７４】
このようなワークフローを、「パイプ＆フィルタ」のソフトウェア構成において実行する場合、アクティビティを構成する「入力→加工→出力」の各作業手順は、入力／変換（加工）／出力の各フィルタによって実現される。
【００７５】
本実施形態では、このようなワークフローを構成するアクティビティ、更にアクティビティを構成するフィルタなどに関する情報を含むマクロ情報を、画像処理装置１００に登録し、必要に応じて登録したマクロ情報を読み出し、読み出したマクロ情報を基に、マクロを実行することでワークフローを実現可能である。
【００７６】
＜マクロ登録について＞
ここでは、本実施形態におけるマクロ情報の登録について、図７及び８を用いて説明する。
【００７７】
図７は、本発明の第１の実施形態に係るマクロ登録時のUIの画面表示例（その１）を示す図である。
【００７８】
マクロ登録と言っても、UIから行う登録手順は、実現するワークフローによって異なる。例えば、画像処理装置１００が有する機能のうち特定の機能を利用したワークフローの場合は、図７に示すように、表示部１９に表示されたアプリケーション選択画面３１の［コピー］ボタンによりコピー機能を選択すると、次にコピーアクティビティ画面３１aを表示し、新しいUIが作成され、コピー機能（コピーアクティビティ）の動作条件設定を行うことができる。また、画像処理装置１００が有する機能のうち複数の機能を利用したワークフローの場合は、図３に示すように、表示部１９に表示されたアプリケーション選択画面３１の［マルチ］ボタンからマルチ機能を選択すると、次にマルチアクティビティ画面３１bを表示し、新しいUIが作成され、画像処理装置１００が有する機能のうちから、入力、加工及び出力の作業手順である各フィルタを選択し（図中では、入力に「保管文書」、加工に「文書変換」、出力に「印刷」と選択した例を示す）、各フィルタの動作条件設定を行うことができうる。このようにして、まず、マクロ情報登録では、マクロを実行する際の動作条件設定を各アクティビティ及び各フィルタ（各作業手順）単位で行う。
【００７９】
次に、画面上の［マクロ登録］ボタンにタッチすると、図８に示すマクロパラメータ設定画面３２を表示部１９に表示し、UIを作成する。
【００８０】
図８は、本発明の第１の実施形態に係るマクロ登録時のUIの画面表示例（その２）を示す図である。
【００８１】
マクロを実行する際の動作条件設定を行った後、図８に示すように、マクロID、マクロ名及び作成者名などの情報を、UIから入力し、画面上の［実行］ボタンにタッチすることで、マクロ情報を登録することができる。その他、画面上の［確認／設定内容］ボタンをタッチすると、登録前の各アクティビティ及び各フィルタの動作条件設定の内容を確認することができる。
【００８２】
＜マクロ情報について＞
次に、本実施形態におけるマクロ情報について、図９〜１２を用いて説明する。
【００８３】
図９は、本発明の第１の実施形態に係るマクロ情報４１を構成するデータの関係の一例を示すクラス図である。このクラス図では、マクロ情報４１を構成するデータ間の関係を示している。
【００８４】
図９に示すように、本実施形態のマクロ情報４１は、マクロヘッダ情報４１１とマクロボディ情報４１２から構成されている。更に、マクロヘッダ情報４１１は、マクロ構成情報４１４で構成され、マクロボディ情報４１２は、少なくとも1つ以上のアクティビティ条件４１３（作業工程に関する条件）で構成され、アクティビティ条件４１３は、少なくとも1つ以上の作業手順条件４１５で構成されている。また、マクロ構成情報４１４は、少なくとも1つ以上のアクティビティ条件４１３で構成されている。
【００８５】
では、図１０を用いて、より具体的なマクロ情報の構成要素について説明する。
図１０は、本発明の第１の実施形態に係るマクロ情報４１を構成するデータ項目の一例を示す図である。
【００８６】
本実施形態のマクロ情報４１を構成するマクロヘッダ情報４１１の構成要素であるデータ項目には、マクロを識別するための情報である「マクロID」、マクロに付けられた名前である「マクロ名」、マクロを作成した作成者名である「作成者名」、マクロに対するアクセス可／不可を規定する情報である「アクセス制御リスト」、マクロを構成しているアクティビティ及びそのアクティビティを構成するフィルタ（作業手順）に関する情報である「マクロ構成情報４１４」がある。
【００８７】
更に、「マクロ構成情報４１４」の構成要素であるデータ項目には、マクロを構成するアクティビティ及びそのアクティビティを構成するフィルタの名前である「アクティビティ／フィルタ名」、マクロを構成するアクティビティ及びそのアクティビティを構成するフィルタのマクロ条件を識別するための情報（以下、条件識別情報と言う。）である「マクロ条件ID」がある。
【００８８】
また、本実施形態のマクロ情報４１を構成するマクロボディ情報４１２の構成要素であるデータ項目には、マクロを構成するアクティビティ及びアクティビティを構成するフィルタの動作条件を基に設定される情報である「マクロ条件」がある。
【００８９】
これらのデータ項目のうち、「マクロID」、「マクロ名」、「作成者名」は、図８に示したように、マクロ情報設定画面３２を表示部１９に表示し作成したUIからデータ入力され、該当する項目に設定される。また、「アクティビティ／フィルタ名」や「マクロ条件」は、図７に示すように、コピーアクティビティ画面３１a（特定のアクティビティ画面）やマルチアクティビティ画面３１bを表示部１９に表示し作成したUIからタッチ入力され、該当する項目に設定される。
【００９０】
図１０に戻り、このように、表示部１９の画面に表示し作成されたUIから入力し、マクロ情報として設定可能なデータ項目は、「マクロID」、「マクロ名」、「作成者名」、「アクティビティ／フィルタ名」及び「マクロ条件」である。
【００９１】
例えば、図７に示すように、マルチアクティビティ画面３１bを表示部１９に表示し作成したUIから、「保管文書」、「文書変換」及び「印刷」の各フィルタを選択し、［マクロ登録］ボタンをタッチした場合、図１１に示すようなマクロ構成情報４１４となる。登録途中のマクロ構成情報４１４は、「アクティビティ／フィルタ名」が設定され、「アクティビティ／フィルタ名」に対応する「マクロ条件ID」は未設定となる。
【００９２】
「マクロ条件ID」の設定は、図８に示したマクロ情報設定画面３２の［実行］ボタンをタッチし、マクロ登録を指示した後に自動的に行われる。
【００９３】
その結果、図１２に示すような「マクロ条件ID」が設定されたマクロ情報４１が構成され、画像処理装置１００に登録される（図中に示す太字の数字が設定された「マクロ条件ID」を示している）。
【００９４】
＜登録データ構成情報について＞
また、画像処理装置１００は、登録対象となるアクティビティやフィルタに対して「どのような動作条件が設定され登録されているのか」を示す管理情報を有している。この管理情報について、以下の図１３を用いて説明する。
【００９５】
図１３は、本発明の第１の実施形態に係る登録データ構成情報４２を構成するデータ項目の一例を示す図である。
【００９６】
本実施形態に係る登録データ構成情報４２を構成するデータ項目には、登録されたアクティビティやフィルタの名前を示す「コンポーネント名」、また、登録されたアクティビティやフィルタに設定された動作条件を含む登録データの構成を示す「登録データ構成」がある。「登録データ構成」のデータ項目には、例えば、図１３に示すように、アクティビティの場合、アクティビティの属性や、アクティビティが機能実現するときに使用する各フィルタのマクロ条件ＩＤなどがデータとして管理される。また、フィルタの場合、フィルタの属性が管理される。
【００９７】
また、登録データ構成情報４２は、図１３に示すように、「コンポーネント名」と「登録データ構成」の各データ項目が一意に対応付けられている。これによって、例えば、登録されているアクティビティ名をキーに、登録データ構成情報４２を参照すると、該当する「登録データ構成」のデータ項目で管理する情報（機能属性や動作条件識別子）を取得することができる。
【００９８】
上記登録データ構成情報４２は、マクロ登録を行うときに追加・更新される。
【００９９】
＜マクロ削除について＞
次に、本実施形態におけるマクロ情報４１の削除について、図１４を用いて説明する。
【０１００】
図１４は、本発明の第１の実施形態に係るマクロ削除時のUIの画面表示例を示す図である。
【０１０１】
マクロ削除は、まず、アプリケーション選択画面３１の［マクロ］ボタンからマクロ削除機能を選択すると、次に登録マクロ一覧画面３３を表示部１９に表示し、新しいUIが作成され、既に登録されたマクロの一覧から削除するマクロを選択することができる。図中の登録マクロ一覧画面３３では、［1］〜［n］と言った登録マクロに対応付けられたマクロキー（ショートカットキー）が表示されている。例えば、［1］〜［3］までのマクロキーに対応付けられた登録マクロがコピーアクティビティに関するマクロ（A〜C）であった場合に、画面上の［1］〜［3］までのいずれか１つのマクロキーによって削除するマクロを選択し、［削除］ボタンをタッチすると、削除対象として選択されたコピーアクティビティを構成するフィルタ（作業手順）の動作条件などを含むマクロ情報４１を確認可能なコピーアクティビティ画面３３aを表示部１９に表示し、新しいUIを作成する。
【０１０２】
利用者は、表示部１９に表示されたマクロ情報４１を確認し、［削除］ボタンをタッチすると、削除の最終確認を通知するマクロ削除確認画面３４が表示され、［削除］ボタンをタッチすることで、マクロ削除の実行を指示することができる。
【０１０３】
このようにして、マクロ削除は、削除対象となっているマクロのマクロ情報４１を確認する画面や、削除実行を行う前の最終的な実行確認画面など、利用者による誤ったマクロ削除を未然に防ぐために、複数の確認段階を経た後に、マクロ削除確認画面３４の画面上の［削除］ボタンをタッチすることでマクロ削除指示を受け付け、登録されているマクロのマクロ条件など、登録データ構成情報４２を基に削除する。
【０１０４】
＜マクロ登録・削除に必要なコンポーネントについて＞
ここからは、これまでに説明したマクロ登録・削除機能を、どのようなコンポーネント群（プログラムモジュール群）の構成によって実現しているのかについて、図１５〜１７を用いて説明する。
【０１０５】
図１５は、本発明の第１の実施形態に係るコンポーネント５１を構成するモジュールの関係の一例を示す図である。
【０１０６】
まず、マクロ登録・削除機能を構成するコンポーネント５１の基本構造について説明する。図１５に示すように、コンポーネント５１は、処理を実行するモジュールの動作条件を基に、そのモジュールのパラメータを設定及び設定されたパラメータを保持する機能である条件５１１と、処理を実行する機能であるジョブ５１２とから構成されている。条件５１１の説明からも分かるように、条件５１１が設定・保持するパラメータは、ジョブ５１２を実行する際に用いられるパラメータであるため、条件５１１は、ジョブ５１２と集約関係がある。このように、条件５１１が設定・保持するパラメータを基にジョブ５１２が実行される。
【０１０７】
また、コンポーネント５１は、条件５１１とジョブ５１２とから構成されるが、必ずしも1つ以上の条件５１１とジョブ５１２とで構成される必要はない。すなわち、コンポーネント５１は、必要に応じて、条件５１１とジョブ５１２とを構成要素とすることができる（必要でなければ、構成要素としなくてもよい）。
【０１０８】
図１６は、本発明の第１の実施形態に係るマクロ登録・削除時に必要なコンポーネントの構成の一例を示す図である。
【０１０９】
本実施形態のマクロ登録・削除を行うために必要なコンポーネントは、ローカル／リモートUI６１、アクティビティに関するコンポーネント群６２、リクエスト定義に関するコンポーネント群６３、リクエスト管理６４、フィルタに関するコンポーネント群６５及びデータ管理６６から構成されている。更に、アクティビティに関するコンポーネント群６２は、アクティビティUI６２１とアクティビティロジック６２２とから構成され、リクエスト定義に関するコンポーネント群６３は、リクエスト定義UI６３１とリクエスト定義ロジック６３２とで構成され、フィルタに関するコンポーネント群６５は、フィルタUI６５１とフィルタロジック６５２で構成されている。また、アクティビティに関するコンポーネント群６２、リクエスト定義に関するコンポーネント群６３及び、フィルタに関するコンポーネント群６５は、図１５に示した機能で構成されたコンポーネントである。
【０１１０】
以下に、マクロ登録時における上記コンポーネント５１間の関係について、処理手順（１−１）〜（１−６）を基に説明する。
【０１１１】
（１―１）マクロ登録指示受け付け
マクロ登録の指示は、図７のアプリケーション選択画面３１からのタッチ入力をローカル／リモートUI６１が受け付ける。受け付けたマクロ登録指示に従って、ローカル／リモートUI６１は、アクティビティUI６２１に対して、次のUI画面作成の要求を行う。アクティビティUI６２１は、画面作成要求に応じて、図７のコピーアクティビティ画面３１aやマルチアクティビティ画面３１bのようなアクティビティ及びフィルタの動作条件を入力するUI画面を作成し、表示部１９に表示する。アクティビティUI６２１は、リクエスト定義UI６３１に対して、アクティビティ及びフィルタの動作条件を入力するUI画面を作成するために必要な要素（部品）の取得を要求し、リクエスト定義UI６３１により、アクティビティやフィルタなどの必要な画面要素を作成し、作成した画面要素を基に、動作条件を入力するUI全体の画面を作成する。
【０１１２】
（１−２）アクティビティ及びフィルタの動作条件設定
アクティビティUI６２１は、作成したUI画面から入力されるアクティビティ及びフィルタの動作条件の設定値を受け付け、UI画面の［マクロ登録］ボタンがタッチされた後に、受け付けた動作条件の設定値をアクティビティロジック６２２及びフィルタロジック６５２へ渡す。
アクティビティロジック６２２は、受け取った動作条件の設定値のうち、アクティビティの動作条件の設定値を自らが確保したRAM上に保持する。また、フィルタロジック６５２は、受け取ったフィルタの動作条件の設定値を自らが確保したRAM上に保持する。
【０１１３】
（１−３）マクロパラメータ設定
ローカル／リモートUI６１は、アクティビティUI６２１が作成したUI画面の［マクロ登録］ボタンがタッチされた後に、図８のマクロパラメータ設定画面３２のようなマクロID、マクロ名、作成者名などの登録するマクロを識別する情報を入力するUI画面を作成し、表示部１９に表示する。ローカル／リモートUI６１は、UI画面から入力されるマクロパラメータを受け付け、リクエスト定義UI６３１へ渡す。
リクエスト定義UI６３１は、受け取ったマクロパラメータであるマクロID、マクロ名、作成者名を、リクエスト定義ロジック６３２が管理するマクロ情報４１のマクロヘッダ情報４１１に設定する。
【０１１４】
（１−４）マクロ登録実行指示受け付け
アクティビティUI６２１は、作成したUI画面の［実行］ボタンがタッチされた後に、アクティビティロジック６２２に対して、マクロ登録処理を行うジョブ５１２の作成を要求する。アクティビティロジック６２２は、ジョブ作成要求に従って、ジョブ５１２を作成し、マクロ登録処理の実行をリクエスト管理６４に指示する。
リクエスト管理６４は、マクロ登録処理の実行指示に従って、マクロ登録処理の実行スケジュールを基に、アクティビティロジック６２２にマクロ登録実行を要求する。
【０１１５】
（１−５）マクロ条件保存及び条件識別情報（マクロ条件ID）設定
アクティビティロジック６２２は、マクロ登録実行要求に応じて、マクロ登録の対象となるアクティビティを構成する各フィルタに対応するフィルタロジック６５２に対して、マクロ情報４１のマクロ条件の設定を要求する。
フィルタロジック６５２は、マクロ条件設定要求に従って、RAM上に保持している動作条件の設定値に基づいたマクロ条件を、マクロ情報４１のマクロボディ情報４１２を管理するデータ管理６６へ設定する。また、フィルタロジック６５２は、自らの名前（フィルタ名）と、データ管理６６に設定したマクロ条件とを、登録データ構成情報４２に追加登録する。
データ管理６６は、設定されたマクロ条件を、補助記憶部１３などに格納し、永続的に保管する。また、データ管理６６は、マクロ条件を保管した際に、マクロ条件を識別する条件識別情報（マクロ条件ID）を発行し、フィルタロジック６５２に渡す。
フィルタロジック６５２は、受け取った条件識別情報を、アクティビティロジック６２２へ渡し、アクティビティロジック６２２は、受け取った条件識別情報を、リクエスト定義ロジック６３２に設定する。
アクティビティロジック６２２は、アクティビティを構成する各フィルタに対応するフィルタロジック６５２全てが、データ管理６６へマクロ条件を設定・保管し、条件識別情報を発行し終えた後、マクロ条件設定要求に従って、RAM上に保持している動作条件の設定値に基づいたマクロ条件をデータ管理６６へ設定する。また、アクティビティロジック６２２は、自らの名前（アクティビティ名）と、データ管理６６に設定したマクロ条件とを、登録データ構成情報４２に追加登録する。更に、アクティビティロジック６２２は、データ管理６６から発行される条件識別情報を受け取り、リクエスト定義ロジック６３２に設定する。
【０１１６】
（１−６）マクロ情報登録
アクティビティロジック６２２は、リクエスト定義ロジック６３２に対して、マクロ情報４１の登録を要求する。
リクエスト定義ロジック６３２は、マクロ情報構成・保管要求に応じて、これまでに設定した情報を基に、マクロヘッダ情報４１１を構成し、構成したマクロヘッダ情報４１１をデータ管理６６へ渡す。
データ管理６６は、受け取ったマクロヘッダ情報４１１とマクロボディ情報４１２とを基にマクロ情報４１を、補助記憶部１３などに格納し、永続的に保管する。また、データ管理６６は、マクロ情報４１を保管した際に、マクロ情報４１を識別する情報（マクロID）を、リクエスト定義ロジック６３２に渡す。
【０１１７】
図１７は、本発明の第１の実施形態に係るマクロ削除時に必要なコンポーネントの構成の一例を示す図である。
【０１１８】
本実施形態のマクロ削除を行うために必要なコンポーネントは、ローカル／リモートUI６１、アクティビティに関するコンポーネント群６２、リクエスト定義に関するコンポーネント群６３、リクエスト管理６４、フィルタに関するコンポーネント群６５、データ管理６６及びマクロアクティビティに関するコンポーネント群６７から構成されている。更に、アクティビティに関するコンポーネント群６２は、アクティビティUI６２１とアクティビティロジック６２２とから構成され、リクエスト定義に関するコンポーネント群６３は、リクエスト定義UI６３１とリクエスト定義ロジック６３２とで構成され、フィルタに関するコンポーネント群６５は、フィルタロジック６５２で構成され、マクロアクティビティに関するコンポーネント群６７は、マクロアクティビティUI６７１とマクロアクティビティロジック６７２とで構成されている。また、アクティビティに関するコンポーネント群６２、リクエスト定義に関するコンポーネント群６３、フィルタに関するコンポーネント群６５、及びマクロアクティビティに関するコンポーネント群６７は、図１５に示した機能で構成されたコンポーネントである。
【０１１９】
以下に、マクロ削除時における上記コンポーネント５１間の関係について、処理手順（２−１）〜（２−６）を基に説明する。
【０１２０】
（２―１）マクロ削除指示受け付け
マクロ削除の指示は、図１４のアプリケーション選択画面３１からのタッチ入力をローカル／リモートUI６１が受け付ける。受け付けたマクロ削除指示に従って、ローカル／リモートUI６１は、マクロアクティビティUI６７１に対して、次のUI画面作成の要求を行う。マクロアクティビティUI６７１は、画面作成要求に応じて、図１４の登録マクロ一覧画面３３のような削除するマクロを選択するUI画面を作成し、表示部１９に表示する。マクロアクティビティUI６７１は、リクエスト定義UI６３１に対して、登録されているマクロのうち、実行可能なマクロを選択するUI画面を作成するために必要な要素（部品）の取得を要求し、リクエスト定義UI６３１により、マクロキーなどの必要な画面要素を作成し、作成した画面要素を基に、削除対象のマクロを選択するUI全体の画面を作成する。
【０１２１】
（２−２）マクロ削除実行指示受け付け
マクロアクティビティUI６７１は、作成したUI画面の［削除］ボタンがタッチされ、削除するマクロを識別するマクロIDを受け付けた後に、マクロアクティビティロジック６７２に対して、受け付けたマクロIDを渡し、マクロ削除処理を行うジョブ５１２の作成を要求する。マクロアクティビティロジック６７２は、ジョブ作成要求に従って、ジョブ５１２を作成し、マクロ削除処理の実行をリクエスト管理６４に指示する。
リクエスト管理６４は、マクロ削除処理の実行指示に従って、マクロ削除処理の実行スケジュールを基に、マクロアクティビティロジック６７２にマクロ削除実行を要求する。
【０１２２】
（２−３）マクロヘッダ情報取得
マクロアクティビティロジック６７２は、受け付けたマクロIDを基に、リクエスト定義ロジック６３２に対して、該当するマクロヘッダ情報４１１の取得を要求する。マクロアクティビティロジック６７２は、取得要求の結果をマクロアクティビティUI６７１へ渡す。
マクロアクティビティUI６７１は、取得結果を基に、マクロアクティビティロジック６７２が取得したマクロヘッダ情報４１１を取得する。マクロアクティビティUI７６１は、取得したマクロヘッダ情報４１４を基に、該当するアクティビティに対応するアクティビティUI６２１、及びアクティビティを構成するフィルタに対応するフィルタUI６５１に対して、アクティビティ及びフィルタの動作条件の設定値を表示するUI画面作成の要求を行う。
アクティビティUI６２１及びフィルタUI６５１は、画面作成要求に応じて、まず、動作条件項目の画面要素を作成し、表示部１９に表示する。
【０１２３】
（２−４）マクロ構成情報解析
マクロアクティビティUI６７１は、取得したマクロヘッダ情報４１１を解析し、該当するアクティビティや、アクティビティを構成するフィルタなどについて調べ、マクロヘッダ情報４１１からマクロ構成情報４１４を読み取る。その後、マクロアクティビティUI６７１は、マクロアクティビティロジック６７２に対して、データ管理６６が保管しているマクロ条件を読み出す要求を行う。
マクロアクティビティロジック６７２は、マクロ条件読み出し要求に応じて、該当するアクティビティロジック６２２に対して、同じ要求を行う。
【０１２４】
（２−５）マクロ条件読み出し
アクティビティロジック６２２は、マクロ条件読み出し要求に応じて、要求時に受け取ったマクロ構成情報４１４のマクロ条件IDを基に、データ管理６６を参照し、アクティビティのマクロ条件を取得する。取得したマクロ条件は、アクティビティUI６２１に渡され、アクティビティの動作条件の設定値として、表示部１９に表示される。また、アクティビティロジック６２２は、受け取ったマクロ条件読み出し要求を、アクティビティを構成するフィルタに対応するフィルタロジック６５２へ行う。
フィルタロジック６５２は、マクロ条件読み出し要求に応じて、要求時に受け取ったマクロ構成情報４１４のマクロ条件IDを基に、データ管理６６を参照し、フィルタのマクロ条件を取得する。取得したマクロ条件は、フィルタUI６５１に渡され、フィルタの動作条件の設定値として、表示部１９に表示される。
【０１２５】
（２−６）マクロ削除
アクティビティロジック６２２は、リクエスト定義ロジック６３２に対して、マクロ情報４１の削除を要求する。
リクエスト定義ロジック６３２は、登録データ構成取得・削除要求に応じて、マクロ構成情報の解析によって得たアクティビティの名前を基に、登録データ構成情報４２を参照し、該当する名前に対応付けられている登録データ構成情報４２（アクティビティの属性情報やアクティビティを構成する各フィルタ情報など）を取得する。リクエスト定義ロジック６３２は、取得した登録データ構成情報４２を基に、データ管理６６へマクロ条件の削除を指示する。
データ管理６６は、削除指示に応じて、補助記憶部１３などに永続的に保管されている、削除対象として選択されたアクティビティやフィルタなどの動作条件の設定値を削除する。
【０１２６】
＜マクロ登録を行う主要機能を構成する手段について＞
本実施形態に係るマクロ登録を実現するために必要な機能を構成する手段について、図１８及び１９を用いて説明する。
【０１２７】
図１８は、本発明の第１の実施形態に係るマクロ登録の主要機能構成の一例を示す図である。
【０１２８】
図１８に示すように、本実施形態に係るマクロ登録は、マクロ登録手段７０によって行う。マクロ登録手段７０は、マクロ登録を実現するために必要な複数の機能によって構成されている。
【０１２９】
マクロ登録手段７０を構成する主要機能は、マクロ条件設定画面作成手段７１、マクロ条件設定手段７２、マクロ条件格納手段７３、マクロ条件識別情報管理手段７４、マクロ情報構成手段７５及びマクロ情報格納手段７６である。
【０１３０】
なお、図中の参照符号１０３a、１０３b及び１０３cは、入力フィルタ１０３a、変換フィルタ１０３b及び出力フィルタ１０３cを示している。
【０１３１】
マクロ条件設定画面作成手段７１は、アクティビティや入力・加工・出力の各フィルタ１０３の動作条件を入力するUI画面を作成し、表示部１９に表示する。
【０１３２】
マクロ条件設定画面作成手段７１は、図７に示すようなコピーアクティビティ画面３１bやマルチアクティビティ３１bなどのUI画面を作成し、表示部１９に表示する。マクロ条件設定画面作成手段７１は、設定可能な動作条件項目を基に、動作条件を入力するUI画面を作成するために必要な画面要素を作成し、作成した画面要素を基に、動作条件を入力するUI６１全体の画面を作成する。設定可能な動作条件項目は、図７に示すようなアプリケーション選択画面３１を基に選択された「特定アクティビティ」か「マルチアクティビティ（作業工程の組み合わせ）」かの違いによって、必要な項目が異なる。そのため、作成する画面要素も違ってくるため、マクロ条件設定画面作成手段７１は、設定可能な動作条件項目を基に、画面要素を作成する。
【０１３３】
また、マクロ条件設定画面作成手段７１は、アクティビティやフィルタ毎に機能する。すなわち、アクティビティを構成する入力・加工・出力の各フィルタ１０３のマクロ条件設定画面作成手段７１毎に、それぞれの動作条件を入力する画面要素を作成し、作成した各画面要素をアクティビティのマクロ条件設定画面作成手段７１に渡す。アクティビティのマクロ条件設定画面作成手段７１は、各画面要素を基に、UI６１の全体の画面を作成する。
【０１３４】
マクロ条件設定画面作成手段７１は、図１６に示すコンポーネント群のうち、ローカル／リモートUI６１、アクティビティUI６２１、リクエスト定義UI６３１などが行う機能である。
【０１３５】
次に、マクロ条件設定手段７２は、アクティビティ、入力・加工・出力の各フィルタ１０３の動作条件の設定値に基づいて、アクティビティ、入力・加工・出力の各フィルタ１０３のパラメータであるマクロ条件を設定する。
【０１３６】
マクロ条件設定画面作成手段７１によって作成したUI画面から入力されたアクティビティ、入力・加工・出力の各フィルタ１０３の動作条件の設定値は、RAM上に保持されている。
【０１３７】
マクロ条件設定手段７２は、図８に示すようなマクロパラメータ設定画面３２の［実行］ボタンがタッチされ、マクロ登録実行要求された際に、要求に応じて、RAM上に保持された、アクティビティ、入力・加工・出力の各フィルタ１０３の動作条件の設定値に基づいたマクロ条件を、マクロ情報４１のマクロボディ情報４１２へ設定する。
【０１３８】
図１９は、本発明の第１の実施形態に係るマクロ登録時のマクロ情報設定の一例を示す図である。
【０１３９】
マクロ条件設定手段７２は、マクロ条件設定画面作成手段７１によって作成したUI画面から入力されRAM上に保持された動作条件の設定値に基づいて、図１９に示すように、入力・加工・出力の各フィルタ１０３などの動作条件であるフィルタ条件（１）、アクティビティのアクティビティ条件（２）などのマクロ条件を設定する。
【０１４０】
図１８に戻り、マクロ条件設定手段７２は、アクティビティやフィルタ毎に機能する。すなわち、アクティビティ、入力・加工・出力の各フィルタ１０３のマクロ条件設定手段７２毎に、それぞれのマクロ条件を設定する。
【０１４１】
マクロ条件設定手段７２は、図１６に示すコンポーネント群のうち、アクティビティロジック６２２、フィルタロジック６５２などが行う機能である。
【０１４２】
次に、マクロ条件格納手段７３は、アクティビティ、入力・加工・出力の各フィルタ１０３のマクロ条件の設定値を画像処理装置１００が有する補助記憶部１３の所定の記憶領域に格納する。
【０１４３】
マクロ条件格納手段７３は、マクロ条件設定手段７２により設定した、アクティビティ、入力・加工・出力の各フィルタ１０３のマクロ条件を、補助記憶部１３などに格納し、永続的に保管する（マクロ条件のデータを永続化する）。マクロ条件格納手段７３は、例えば、図１９に示すように、マクロ条件設定手段７２により設定した、入力・加工・出力の各フィルタ１０３のフィルタ条件（１）、アクティビティのアクティビティ条件（２）などのマクロ条件を、マクロ情報４１のマクロボディ情報４１２を構成するマクロ条件のレコードに書き込む（図中に示す（１）'や（２）'）。その際、発行した条件識別情報も、アクティビティ条件ID、フィルタ条件IDとして書き込まれる。
【０１４４】
図１８に戻り、マクロ条件格納手段７３は、マクロ条件を保管した際に、アクティビティ、入力・加工・出力の各フィルタ１０３のマクロ条件を識別する条件識別情報を発行する。
【０１４５】
また、マクロ条件格納手段７３は、アクティビティ、入力・加工・出力のフィルタ１０３毎に機能する。すなわち、アクティビティ、入力・加工・出力の各フィルタ１０３のマクロ条件格納手段７３毎に、それぞれのマクロ条件を、補助記憶部１３などに格納し、永続的に保管する（マクロ条件のデータを永続化する）。この時、アクティビティのマクロ条件格納手段７３は、入力・加工・出力の各フィルタ１０３のマクロ条件格納手段７３によって、マクロ条件が保管及び条件識別情報発行後に、自らのマクロ条件を保管する。
【０１４６】
更に、マクロ条件格納手段７３は、永続的に保管するマクロ条件を、対応するアクティビティ、入力・加工・出力の各フィルタ１０３の各コンポーネント名（アクティビティ名やフィルタ名）とともに、登録されるアクティビティやフィルタの属性情報として登録データ構成情報４２に追加登録する。
【０１４７】
マクロ条件格納手段７３は、図１６に示すコンポーネント群のうち、アクティビティロジック６２２、フィルタロジック６５２、データ管理６６などが行う機能である。
【０１４８】
次に、マクロ条件識別情報管理手段７４は、マクロ条件を格納する際に発行される条件識別情報を管理する。
【０１４９】
マクロ条件識別情報管理手段７４は、マクロ条件格納手段７３によりマクロ条件を保管する際に、アクティビティ、入力・加工・出力の各フィルタ１０３に対して、どの条件識別情報が発行されたかを対応付けて管理する。マクロ条件識別情報管理手段７４は、例えば、図１９の（４）、（５）のアプリケーション定義に示すように、フィルタ名前とフィルタ条件ID（例えば、図１９の（４）に示す"10"。）とを対応付け、また、アクティビティの名前とアクティビティ条件ID（例えば、図１９の（５）に示す"456"。）とを対応付け、て、条件識別情報（マクロ条件ID）を管理する。すなわち、マクロ条件識別情報管理手段７４は、マクロ情報４１のマクロヘッダ情報４１１を構成するマクロ構成情報４１４を生成する。
【０１５０】
図１８に戻り、マクロ条件識別情報管理手段７４は、図１６に示すコンポーネント群のうち、リクエスト定義ロジック６３２が行う機能である。
【０１５１】
次に、マクロ情報構成手段７５は、登録するマクロヘッダ情報４１１を構成する。
【０１５２】
マクロ情報構成手段７５は、マクロ条件識別情報管理手段７４からのマクロ情報４１の構成及び保管要求に従って、図８に示すようなマクロパラメータ設定画面３２が表示部１９に表示されたUI６１から入力された登録するマクロを識別する情報と、マクロ条件識別情報管理手段７４により管理するマクロ構成情報４１４とを基に、マクロヘッダ情報４１１を構成する。マクロ情報構成手段７５は、例えば、図１９に示すように、マクロID、マクロ名及び作成者名などの登録するマクロを識別する情報（３）と、アプリケーション定義（４）、（５）であるマクロ構成情報４１４とを基に、マクロヘッダ情報（６）を構成する。すなわち、マクロ情報構成手段７５は、マクロ条件識別情報管理手段７４が管理するマクロ構成情報４１４と、登録するマクロを識別する情報とを対応付け、マクロ構成情報４１４が、登録されたどのマクロの構成情報かを識別する情報を付加する。
【０１５３】
図１８に戻り、マクロ情報構成手段７５は、図１６に示すコンポーネント群のうち、リクエスト定義ロジック６３２が行う機能である。
【０１５４】
次に、マクロ情報格納手段７６は、登録するマクロヘッダ情報４１１を画像処理装置１００が有する補助記憶部１３の所定の記憶領域へ格納する。
【０１５５】
マクロ情報格納手段７６は、マクロ条件識別情報管理手段７４からのマクロ情報４１の構成及び保管要求に従って、マクロ情報構成手段７５により構成したマクロヘッダ構成情報４１１を、補助記憶部１３などに格納し、永続的に保管する。マクロ情報格納手段７６は、図１９の（３）、（４）及び（５）に示すマクロヘッダ情報４１１の各項目値を、マクロ情報４１のマクロヘッダ情報４１１を構成する項目のレコードに書き込む（図中に示す（６））。これによって、マクロ条件格納手段７３により保管されたマクロボディ情報４１２とあわせて、全てのマクロ情報４１が保管されたことになる（マクロ情報４１として永続化する）。
【０１５６】
図１８に戻り、マクロ情報格納手段７６は、マクロヘッダ情報４１１を保管した際に、マクロ情報４１を識別する情報（マクロID）を発行し、マクロ情報４１の保管要求を行ったマクロ条件識別情報管理７６へ、保管結果として渡す。
【０１５７】
マクロ情報格納手段７６は、図１６に示すコンポーネント群のうち、リクエスト定義ロジック６３２、データ管理６６などが行う機能である。
【０１５８】
このように、本実施形態に係る画像処理装置１００は、マクロ登録手段７０において、マクロ条件設定画面作成手段７１、マクロ条件設定手段７２及びマクロ条件格納手段７３とを有することで、新規機能の動作条件を設定する場合や既存機能の新規動作条件を設定する場合など、動作条件の設定値を、マクロを実行する際のパラメータであるマクロ条件として保管することができる。
【０１５９】
また、画像処理装置１００は、マクロ登録手段７０において、マクロ条件識別情報管理手段７４、マクロ情報構成手段７５及びマクロ情報格納手段７６とを有することで、マクロ条件として保管している各機能の動作条件設定を、動作条件設定毎に識別する条件識別情報で管理し、マクロを実行する際に読み出すマクロ情報４１に実行する機能の動作条件設定に対応する条件識別情報を設定し保管することができる。よって、画像処理装置１００は、実行する機能の動作条件設定の詳細を知らなくても、マクロ情報４１を構成することができる。
【０１６０】
また、画像処理装置１００は、マクロ登録手段７０において、マクロ条件設定画面作成手段７１、マクロ条件設定手段７２及びマクロ条件格納手段７３を、機能毎に有することで、新規機能を追加する場合においても、既存のシステムに新しいロジックを実装することなく機能毎の動作条件設定を行うことができる（新規機能をインストールするだけで柔軟に対応することができる）。
【０１６１】
＜マクロ削除を行う主要機能を構成する手段について＞
本実施形態に係るマクロ削除を実現するために必要な機能を構成する手段について、図２０を用いて説明する。
【０１６２】
図２０は、本発明の第１の実施形態に係るマクロ削除の主要機能構成の一例を示す図である。
【０１６３】
図２０に示すように、本実施形態に係るマクロ削除は、マクロ削除手段８０によって行う。マクロ削除手段８０は、マクロ削除を実現するために必要な複数の機能によって構成されている。
【０１６４】
マクロ削除手段８０を構成する主要機能は、マクロ構成情報取得手段８１、マクロ構成情報解析手段８２、マクロ条件読み出し手段８３、マクロ条件読み出し画面作成手段８４及びマクロ削除手段８５である。
【０１６５】
マクロ構成情報取得手段８１は、登録されたマクロ情報４１からマクロ構成情報４１４を取得する。
【０１６６】
マクロ構成情報取得手段８１は、図１４に示すような登録マクロ一覧画面３３のUI６１画面の［削除］ボタンがタッチされ、マクロ削除実行要求された際に、要求に応じて、要求時に受け取ったマクロを識別する情報（マクロID）を基に、補助記憶部１３などに格納されたマクロ情報４１のうち、図１９の（６）に示すようなマクロヘッダ情報４１１を取得する。更に、マクロ構成情報取得手段８１は、取得したマクロヘッダ情報４１１（６）からマクロ構成情報４１４（４）、（５）を取得する。
【０１６７】
図２０に戻り、マクロ構成情報取得手段８１は、図１６に示すコンポーネント群のうち、マクロアクティビティUI６７１、マクロアクティビティロジック６７２が行う機能である。
【０１６８】
次に、マクロ構成情報解析手段８２は、取得したマクロ構成情報４１４を解析し、マクロ構成情報４１４に含まれる条件識別情報を抽出する。
【０１６９】
マクロ構成情報解析手段８２は、マクロ構成情報取得手段８１により取得したマクロ構成情報４１４を基に、読み出したマクロを構成するアクティビティ、入力・加工・出力の各フィルタ１０３などについて解析し、入力・加工・出力の各フィルタ１０３のフィルタ条件ID（例えば、図１９の（４）に示す"10"。）、アクティビティのアクティビティ条件ID（例えば、図１９の（５）に示す"456"。）など、マクロを構成する作業工程及び作業手順の各動作条件設定に対応する条件識別情報を抽出する。
【０１７０】
マクロ構成情報解析手段８２は、図１６に示すコンポーネント群のうち、マクロアクティビティUI６７１、マクロアクティビティロジック６７２、アクティビティロジック６２２、フィルタロジック６５２などが行う機能である。
【０１７１】
次に、マクロ条件読み出し手段８３は、抽出した条件識別情報を基に、対応するマクロ条件を画像処理装置１００が有する補助記憶部１３から読み出す。
【０１７２】
マクロ条件読み出し手段８３は、マクロ構成情報解析手段８２により解析され抽出した条件識別情報を基に、アクティビティ、入力・加工・出力の各フィルタ１０３の動作条件であるマクロ条件が格納された補助記憶部１３などを参照し、該当するマクロ条件を読み出す。マクロ条件読み出し手段８３は、図１９に示すようなマクロ構成情報４１４（４）、（５）から抽出した条件識別情報（アクティビティ条件ID、フィルタ条件ID）（例えば、図１９の（４）に示す"10"や（５）に示す"456"。）を基に、補助記憶部１３などに格納されたマクロ情報４１を構成するマクロボディ情報４１２（１）'、（２）'のレコードを参照し、各動作条件設定であるマクロ条件を読み出す。
【０１７３】
図２０に戻り、マクロ条件読み出し手段８３は、アクティビティ、入力・加工・出力のフィルタ１０３毎に機能する。すなわち、アクティビティ、入力・加工・出力の各フィルタ１０３のマクロ条件読み出し手段８３毎に、それぞれのマクロ条件を、補助記憶部１３から読み出す。この時、アクティビティのマクロ条件読み出し手段８３は、入力・加工・出力の各フィルタ１０３のマクロ条件読み出し手段８３によって、マクロ条件が読み出された後に、自らのマクロ条件を読み出す。
【０１７４】
マクロ条件読み出し手段８３は、図１６に示すコンポーネント群のうち、アクティビティロジック６２２、フィルタロジック６５２などが行う機能である。
【０１７５】
次に、マクロ条件画面作成手段８４は、動作条件の設定値の表示や動作条件の変更、マクロ削除指示を行うUI画面を作成し、表示部１９に表示する。
【０１７６】
マクロ削除確認画面作成手段８４は、図１４に示すようなコピーアクティビティ画面３３aなどのUI画面を作成し、表示部１９に表示する。マクロ削除確認画面作成手段８４は、マクロ条件読み出し手段８３により読み出された、アクティビティ、入力・加工・出力の各フィルタ１０３のマクロ条件を基に、各動作条件を表示するUI画面を作成するために必要な画面要素を作成し、作成した画面要素を基に、動作条件を表示するUI６１全体の画面を作成する。
【０１７７】
また、マクロ削除確認画面作成手段８４は、アクティビティ、入力・加工・出力のフィルタ１０３毎に機能する。すなわち、アクティビティを構成する入力・加工・出力の各フィルタ１０３のマクロ削除確認画面作成手段８４毎に、それぞれの動作条件を表示する画面要素を作成し、作成した各画面要素をアクティビティのマクロ削除確認画面作成手段８４に渡す。アクティビティのマクロ削除確認画面作成手段８４は、各画面要素を基に、UI６１の全体の画面を作成する。
【０１７８】
また、マクロ条件読み出し手段８３により読み出されたマクロ条件から作成できる画面要素は、アクティビティ、入力・加工・出力の各フィルタ１０３の動作条件の設定値を表示する画面である。よって、マクロ削除確認画面作成手段８４は、動作条件の設定値だけでなく、対応する作業工程や作業手順などの項目についても表示するように、マクロ構成情報解析手段８２によりマクロ構成情報４１４を解析した際に、読み取ったアクティビティ、入力・加工・出力の各フィルタ１０３の名前（各コンポーネント名）を基に、予め画面要素を作成しておき、マクロ条件読み出し手段８３によりマクロ条件を読み出した後に、動作条件の設定値の画面要素を作成する。
【０１７９】
更に、マクロ削除確認画面作成手段８４は、上記の方法により利用者が表示されたマクロ条件の内容を確認後、［削除］ボタンをタッチすると、図１４に示すマクロ削除確認画面３４のような最後の動作実施確認を促す情報を表示部１９に表示する。
【０１８０】
マクロ削除確認画面作成手段８４は、図１６に示すコンポーネント群のうち、ローカル／リモートUI６１、アクティビティUI６２１、フィルタUI６５１などが行う機能である。
【０１８１】
次に、マクロ削除手段８５は、選択指示されたマクロを削除する。
【０１８２】
マクロ削除手段８５は、まず、マクロ構成情報解析手段８２によりマクロ構成情報４１４を解析した際に、読み取ったアクティビティの名前を基に、登録データ構成情報４３を参照し、該当する名前に対応付けられている登録データ構成に関する情報（アクティビティの属性情報や各フィルタの条件識別情報など）を取得する。次いで、マクロ削除手段８５は、取得したデータ構成に関する情報を基に、補助記憶部１３などに永続的に保管されている、削除対象として選択されたアクティビティの動作条件の設定値を削除する。また、マクロ削除手段８５は、登録データ構成情報４２から取得した各フィルタの条件識別情報を基に、アクティビティに関連する各フィルタの動作条件の設定値も削除する。
【０１８３】
このように、本実施形態に係る画像処理装置１００は、マクロ削除手段８０において、マクロ構成情報取得手段８１、マクロ構成情報解析手段８２、マクロ条件読み出し手段８３、マクロ削除確認画面作成手段８４及びマクロ削除手段８５とを有することで、登録したマクロ情報４１に含まれるマクロ構成情報４１４を取得し、取得したマクロ構成情報４１４の条件識別情報（マクロ条件ID）を基に、実行する機能の動作条件設定であるマクロ条件を読み出し、読み出したマクロ条件を表示部１９に表示し、利用者が削除対象としたマクロの詳細情報を削除前に確認することができる。よって、利用者による誤ったマクロ削除を未然に防止することができる。
【０１８４】
また、画像処理装置１００は、マクロ登録時に追加更新される登録データ構成情報４３により、登録されているマクロとその動作条件などの属性との対応関係をデータ化し、一元管理することによって、アクティビティやフィルタと言ったコンポーネント５１の追加・削除（インストール／アンインストール）に依存することなく、これらのコンポーネント５１に関連する情報を容易に削除することができる。よって、コンポーネント５１の実体が削除され、関連する情報のみが残存している場合においても、登録データ構成情報４３をコンポーネント名をキーに参照することで、残存した情報を削除可能となり、無駄なデータによる記憶装置のリソース消費を防ぐことができる。
【０１８５】
このように、本実施形態に係る画像処理装置１００は、機能追加・削除に柔軟に対応したマクロ登録・削除機能を実現することができる。
【０１８６】
＜マクロ登録・削除の処理手順について＞
これまで説明したマクロ登録・削除の処理手順について、図２１及び２２を用いて説明する。
【０１８７】
図２１は、本発明の第１の実施形態に係るマクロ登録の処理手順の一例を示すフローチャートである。
【０１８８】
画像処理装置１００は、マクロ実行において利用する利用コンポーネントであるフィルタに関するコンポーネント群６５や、マクロにおける対象コンポーネントであるアクティビティに関するコンポーネント群６２の動作条件設定（入力、加工及び出力フィルタ、アクティビティの動作条件設定）を、ローカル／リモートUI６１のコピーアクティビティ画面３１aやマルチアクティビティ画面３１bなどのような設定画面（図７に示す）を介して行う（Ｓ１０１）〜（Ｓ１０２）。
【０１８９】
画像処理装置１００は、ローカル／リモートUI６１の画面上の［マクロ登録］ボタンのタッチを検知するまで、各動作条件設定を行う画面を表示部１９に表示する（Ｓ１０３）。
【０１９０】
画像処理装置１００は、［マクロ登録］ボタンのタッチを検知すると、ローカル／リモートUI６１の画面をマクロパラメータ設定画面３２（図８に示す）に遷移し、マクロID、マクロ名及び作成者などのマクロを識別する情報を設定する（Ｓ１０４）。
【０１９１】
画像処理装置１００は、ローカル／リモートUI６１の画面上の［マクロ登録実行］ボタンのタッチを検知するまで、各マクロパラメータ設定を行う画面を表示部１９に表示する（Ｓ１０５）。
【０１９２】
画像処理装置１００は、［マクロ登録実行］ボタンのタッチを検知すると、Ｓ１０１で設定したフィルタ（及び／又はインフォメーション）に関するコンポーネント群６５の動作条件設定（入力、加工及び出力フィルタの動作条件設定）をマクロ条件（フィルタ条件４１５）として、補助記憶部１３などに格納し永続化する（マクロボディ情報４１２の各フィルタ条件４１５のレコードに書き込む）（Ｓ１０６）。
【０１９３】
画像処理装置１００は、マクロ条件を補助記憶部１３などに格納する（マクロボディ情報４１２の各フィルタ条件４１５のレコードに書き込む）際に発行される、マクロ条件（フィルタ条件４１５）を識別する条件識別情報（マクロ条件ID：フィルタ条件ID）を、マクロ条件が対応するフィルタと対応付けて設定する（Ｓ１０７）。
【０１９４】
画像処理装置１００は、永続的に保管するマクロ条件を、対応するアクティビティやフィルタの各コンポーネント名（アクティビティ名やフィルタ名）とともに、登録されるアクティビティやフィルタの属性情報として登録データ構成情報４２に追加登録し、情報を更新する（Ｓ１０８）。
【０１９５】
画像処理装置１００は、アクティビティを構成する全てのフィルタに関するコンポーネント群６５の動作条件設定（入力、加工及び出力フィルタの動作条件設定）が、補助記憶部１３などに格納され永続化し、条件識別情報（マクロ条件ID：フィルタ条件ID）が発行されたか否かを判断する（Ｓ１０９）。
【０１９６】
画像処理装置１００は、全てが格納され永続化し、条件識別情報が発行された場合（Ｓ１０９がYESの場合）、Ｓ１０２で設定したアクティビティに関するコンポーネント群６３の動作条件設定（アクティビティの動作条件設定）をマクロ条件（アクティビティ条件４１３）として、補助記憶部１３などに格納し永続化する（マクロボディ情報４１２のアクティビティ条件４１３のレコードに書き込む）（Ｓ１１０）。
【０１９７】
画像処理装置１００は、マクロ条件を補助記憶部１３などに格納する際に発行される、マクロ条件を識別する条件識別情報（マクロ条件ID：アクティビティ条件ID）を、マクロ条件が対応するアクティビティと対応付けて設定する（Ｓ１１１）。
【０１９８】
また、画像処理装置１００は、全てが格納されていない場合（Ｓ１０９がNOの場合）、Ｓ１０６の処理手順に戻り、全てのフィルタに関するコンポーネント群６５の動作条件設定が、補助記憶部１３などに格納され永続化し、条件識別情報が発行されるまで処理を繰り返す。
【０１９９】
図２２は、本発明の第１の実施形態に係るマクロ削除の処理手順の一例を示すフローチャートである。
【０２００】
画像処理装置１００は、ローカル／リモートUI６１の登録マクロ一覧画面３３（図１４に示す）のような画面上のマクロキーにより削除するマクロを選択し、マクロを識別する情報（マクロID）を設定する（Ｓ２０１）。
【０２０１】
画像処理装置１００は、ローカル／リモートUI６１の登録マクロ一覧画面３３（図１４に示す）のような画面上の［削除］ボタンのタッチを検知するまで、削除するマクロの選択を行う画面を表示部１９に表示する（Ｓ２０２）。
【０２０２】
画像処理装置１００は、［削除］ボタンのタッチを検知すると、マクロ情報４１が格納された補助記憶部１３からマクロIDに合致するマクロヘッダ情報４１１のレコードを読み出す（Ｓ２０３）。
【０２０３】
画像処理装置１００は、読み出したマクロヘッダ情報４１１のマクロ構成情報４１４から、マクロを構成するアクティビティに関するコンポーネント群６３を特定する（Ｓ２０４）。
【０２０４】
画像処理装置１００は、マクロ構成情報４１４のアクティビティ名を基に、登録データ構成情報４３を参照し、アクティビティ名に対応するアクティビティの属性情報を含む登録データ構成に関する情報を取得する（Ｓ２０５）。
【０２０５】
画像処理装置１００は、取得したアクティビティのマクロ条件ID（アクティビティ条件４１３）を基に、マクロ情報４１が格納された補助記憶部１３から合致するマクロボディ情報４１２のレコードを削除する（Ｓ２０６）。
【０２０６】
画像処理装置１００は、読み出したマクロヘッダ情報４１１のマクロ構成情報４１４から、アクティビティを構成するフィルタに関するコンポーネント群６５を特定する（Ｓ２０７）。
【０２０７】
画像処理装置１００は、マクロ構成情報４１４のフィルタ名を基に、登録データ構成情報４３を参照し、フィルタ名に対応するフィルタの属性情報を含む登録データ構成に関する情報を取得する（Ｓ２０８）。
【０２０８】
画像処理装置１００は、取得したフィルタのマクロ条件ID（フィルタ条件４１５）を基に、マクロ情報４１が格納された補助記憶部１３から合致するマクロボディ情報４１２のレコードを削除する（Ｓ２０９）。
【０２０９】
画像処理装置１００は、アクティビティを構成する全てのフィルタに関するコンポーネント群６５のマクロ条件（入力、加工及び出力フィルタの各フィルタ条件４１５）を、マクロ情報４１が格納された補助記憶部１３から削除されたか否かを判断する（Ｓ２１０）。
【０２１０】
画像処理装置１００は、全てが削除された場合（Ｓ２１０がYESの場合）、処理を終了する。
【０２１１】
また、画像処理装置１００は、全てが削除されていない場合（Ｓ２１０がNOの場合）、Ｓ２０７の処理手順に戻り、全てのフィルタに関するコンポーネント群６５のマクロ条件が、補助記憶部１３から削除されるまで処理を繰り返す。
【０２１２】
次に、マクロ登録を実現するために必要なコンポーネント５１間の具体的な処理手順について、図２３及び２４を用いて説明する。
【０２１３】
図２３は、本発明の第１の実施形態に係るマクロ登録におけるコンポーネント５１間の処理手順の一例（その１）を示すシーケンス図である。
【０２１４】
（１―１）マクロ登録指示受け付け
画像処理装置１００は、マクロ登録の指示を、図７のアプリケーション選択画面３１からのタッチ入力によりローカル／リモートUI６１が受け付ける。受け付けたマクロ登録指示に従って、ローカル／リモートUI６１は、マルチアクティビティUI６２１に対して、次のUI画面作成の要求を行う（Ｓ３０１）。マルチアクティビティUI６２１は、画面作成要求に応じて、図７のマルチアクティビティ画面３１bのようなアクティビティ及びフィルタの動作条件を入力するUI画面を作成し、表示部１９に表示する。
【０２１５】
マルチアクティビティUI６２１は、リクエスト定義UI６３１に対して、アクティビティ及びフィルタの動作条件を入力するUI画面を作成するために必要な要素（部品）の取得を要求する（Ｓ３０２）。
【０２１６】
リクエスト定義UI６３１は、リクエスト定義ロジック６３２に対して、アクティビティやフィルタなどの動作条件が設定可能な条件の取得を要求し（Ｓ３０３）、リクエスト定義ロジック６３２によって、要求された条件がリクエスト定義UI６３１に返され（Ｓ３０４）、アクティビティやフィルタなどの必要な画面要素を作成し（Ｓ３０５）、作成した画面要素を、マルチアクティビティUI６２１に渡す（Ｓ３０６）。
【０２１７】
マルチアクティビティUI６２１は、リクエスト定義UI６３１が作成した画面要素を基に、動作条件を入力するUI全体の画面を作成し（Ｓ３０７）、表示部１９に表示する（Ｓ３０８）。
【０２１８】
（１−２）アクティビティ及びフィルタの動作条件設定
次に、マルチアクティビティUI６２１は、作成したUI画面から入力されるアクティビティ及びフィルタの動作条件の設定値を受け付け、UI画面の［マクロ登録］ボタンがタッチされた後に、受け付けた動作条件の設定値をマルチアクティビティロジック６２２及びフィルタロジック６５２へ渡す。
【０２１９】
マルチアクティビティロジック６２２は、受け取った動作条件の設定値のうち、アクティビティの動作条件の設定値を自らが確保したRAM上に保持する。また、フィルタロジック６５２は、受け取ったフィルタの動作条件の設定値を自らが確保したRAM上に保持する。
【０２２０】
（１−３）マクロパラメータ設定
次に、ローカル／リモートUI６１は、マルチアクティビティUI６２１が作成したUI画面の［マクロ登録］ボタンがタッチされた後に、図８のマクロパラメータ設定画面３２のようなマクロID、マクロ名、作成者名などの登録するマクロを識別する情報を入力するUI画面を作成し、表示部１９に表示する。ローカル／リモートUI６１は、UI画面から入力されるマクロパラメータを受け付け、リクエスト定義UI６３１へ渡す（Ｓ３０９）。
【０２２１】
リクエスト定義UI６３１は、受け取ったマクロパラメータであるマクロID、マクロ名、作成者名を、リクエスト定義ロジック６３２が管理するマクロ情報４１のマクロヘッダ情報４１１に設定する（Ｓ３１０）。
【０２２２】
（１−４）マクロ登録実行指示受け付け
次に、マルチアクティビティUI６２１は、作成したUI画面の［実行］ボタンがタッチされた後に、マルチアクティビティロジック６２２に対して、マルチアクティビティUI６２１を介してマクロ登録処理を行うジョブ５１２の作成を要求する（Ｓ３１１）〜（Ｓ３１２）。
【０２２３】
マルチアクティビティロジック６２２は、ジョブ作成要求に従って、ジョブ５１２を作成し（Ｓ３１３）、マクロ登録処理の実行をリクエスト管理６４に指示する（Ｓ３１４）。
【０２２４】
図２４は、本発明の第１の実施形態に係るマクロ登録におけるコンポーネント５１間の処理手順の一例（その２）を示すシーケンス図である。以下に説明する処理手順は、図２３で説明した処理手順の続きである。
【０２２５】
（１−５）マクロ条件保存及びマクロ条件ID設定
画像処理装置１００は、リクエスト管理６４により、マクロ登録処理の実行指示に従って、マクロ登録処理の実行スケジュールを基に、アクティビティロジック６２２にマクロ登録実行を要求する（Ｓ４０１）。
【０２２６】
アクティビティロジック６２２は、マクロ登録実行要求に応じて、マクロ登録の対象となるアクティビティを構成する各フィルタに対応するフィルタロジック６５２に対して、マクロ情報４１のマクロ条件の設定を要求する（Ｓ４０２）。
【０２２７】
フィルタロジック６５２は、マクロ条件設定要求に従って、RAM上に保持している動作条件の設定値に基づいたマクロ条件を、マクロ情報４１のマクロボディ情報４１２を管理するデータ管理６６へ設定する。その結果、データ管理６６は、設定されたマクロ条件を、補助記憶部１３などに格納し、永続的に保管する（Ｓ４０３）。また、データ管理６６は、マクロ条件を保管した際に、マクロ条件を識別する条件識別情報（マクロ条件ID：フィルタ条件ID）を発行し、フィルタロジック６５２に渡す（Ｓ４０４）。このとき、フィルタロジック６５２は、永続的に保管するマクロ条件を、対応するフィルタ名とともに、登録されるフィルタの属性情報として登録データ構成情報４２に追加登録し、情報を更新する（Ｓ４０５）。
【０２２８】
フィルタロジック６５２は、受け取った条件識別情報（マクロ条件ID：フィルタ条件ID）を、アクティビティロジック６２２へ渡し（Ｓ４０６）、アクティビティロジック６２２は、受け取った条件識別情報を、リクエスト定義ロジック６３２に設定する（Ｓ４０７）。ここで、Ｓ４０２〜Ｓ４０７までの処理手順を、アクティビティを構成する各フィルタに対応するフィルタロジック６５１の数分だけ繰り返し処理する（Ｓ４０８）〜（Ｓ４１９）。
【０２２９】
アクティビティロジック６２２は、アクティビティを構成する各フィルタに対応するフィルタロジック６５２全てが、データ管理６６へマクロ条件を設定・保管し、条件識別情報（マクロ条件ID）を発行し終えた後（Ｓ４１９までの処理手順を行った後）、マクロ条件設定要求に従って、RAM上に保持している動作条件の設定値をマクロ情報４１のマクロボディ情報４１２を管理するデータ管理６６へ設定する。その結果、データ管理６６は、設定されたマクロ条件を、補助記憶部１３などに格納し、永続的に保管する（Ｓ４２０）。また、データ管理６６は、マクロ条件を保管した際に、マクロ条件を識別する条件識別情報を発行し、アクティビティロジック６２２に渡す（Ｓ４２１）。
【０２３０】
アクティビティロジック６２２は、受け取った条件識別情報を、リクエスト定義ロジック６３２に設定する（Ｓ４２２）。
【０２３１】
（１−６）マクロ情報登録
アクティビティロジック６２２は、リクエスト定義ロジック６３２に対して、マクロ情報４１の登録を要求する（Ｓ４２３）。
【０２３２】
リクエスト定義ロジック６３２は、マクロ情報構成・保管要求に応じて、これまでに設定した情報を基に、マクロヘッダ情報４１１を構成し、構成したマクロヘッダ情報４１１をデータ管理６６へ渡す（Ｓ４２４）。
【０２３３】
データ管理６６は、受け取ったマクロヘッダ情報４１１とマクロボディ情報４１２とを基にマクロ情報４１を、補助記憶部１３などに格納し、永続的に保管する。また、データ管理６６は、マクロ情報４１を保管した際に、マクロ情報４１を識別する情報（マクロID）を、リクエスト定義ロジック６３２に渡す（Ｓ４２５）。
【０２３４】
このように、画像処理装置１００は、Ｓ４０７、Ｓ４１３及びＳ４１９によって、未設定となっているフィルタ条件IDが設定され、例えば、図２４では、入力フィルタ条件IDには"125"、加工フィルタ条件IDには"571"、出力フィルタ条件IDには"836"が設定されている。また、Ｓ４２３によって、未設定となっているアクティビティ条件IDが設定され、例えば、図２４では、アクティビティ条件IDには"1452"が設定されている。
【０２３５】
次に、マクロ削除を実現するために必要なコンポーネント５１間の具体的な処理手順について、図２５を用いて説明する。
【０２３６】
図２５は、本発明の第１の実施形態に係るマクロ削除時のコンポーネント５１間の処理手順の一例を示すシーケンス図である。
【０２３７】
（２−６）マクロ削除
画像処理装置１００は、ローカル／リモートUI６１の登録マクロ一覧画面３３（図１４に示す）のような画面上のマクロキーにより削除するマクロが選択され、選択されたマクロを識別する情報（マクロID）を、リクエスト定義UI６３１により取得し、取得したマクロを識別する情報（マクロID）を基に、リクエスト定義ロジック６３２にマクロ削除実行を要求する（Ｓ５０１）。このとき、リクエスト定義ロジック６３２では、マクロIDを基に、データ管理６６にマクロIDに合致するマクロヘッダ情報４１１の取得が要求され、その結果、データ管理６６から、マクロ情報４１が格納された補助記憶部１３からマクロIDに合致するマクロヘッダ情報４１１が、リクエスト定義ロジック６３２へ応答される。
【０２３８】
リクエスト定義ロジック６３２は、マクロヘッダ情報４１１のマクロ構成情報４１４から、マクロを構成するアクティビティに関するコンポーネント群６３を特定し、マクロ構成情報４１４のアクティビティ名を基に、登録データ構成情報４３を参照し（Ｓ５０２）、アクティビティ名に対応するアクティビティの属性情報を含む登録データ構成に関する情報を取得する（Ｓ５０３）。
【０２３９】
リクエスト定義ロジック６３２は、取得したアクティビティのマクロ条件ID（アクティビティ条件４１３）を基に、データ管理６６にマクロ条件IDに合致するマクロボディ情報４１１の削除を要求する（Ｓ５０４）。その結果、データ管理６６は、マクロ情報４１が格納された補助記憶部１３から合致するマクロボディ情報４１２のレコードを削除する。
【０２４０】
リクエスト定義ロジック６３２は、マクロヘッダ情報４１１のマクロ構成情報４１４から、アクティビティを構成するフィルタに関するコンポーネント群６５を特定し、マクロ構成情報４１４のフィルタ名を基に、登録データ構成情報４３を参照し（Ｓ５０５）、フィルタ名に対応するフィルタの属性情報を含む登録データ構成に関する情報を取得する（Ｓ５０６）。
【０２４１】
リクエスト定義ロジック６３２は、取得したフィルタのマクロ条件ID（フィルタ条件４１５）を基に、データ管理６６にマクロ条件IDに合致するマクロボディ情報４１１の削除を要求する（Ｓ５０７）。その結果、データ管理６６は、マクロ情報４１が格納された補助記憶部１３から合致するマクロボディ情報４１２のレコードを削除する。ここで、Ｓ５０５〜Ｓ５０７までの処理手順を、アクティビティを構成する各フィルタに対応するフィルタロジック６５１の数分だけ繰り返し処理する（Ｓ５０９）〜（Ｓ５１３）。
【０２４２】
＜まとめ＞
以上のように、本発明の第１の実施形態によれば、本実施形態に係る画像処理装置１００は、当該装置の機能を実現するソフトウェア部品によるマクロ情報に含まれる関連データを削除する機能を、機能実現するソフトウェア部品と別のソフトウェア部品によって実現する構成したことにより、機能実現するソフトウェア部品に依存することなくマクロ情報を管理・運用することが可能となり、搭載機能環境の変化に応じたマクロ情報管理を実現することができる。その結果、登録マクロ情報による無駄な記憶リソース消費を防ぐことができる。
【０２４３】
第１の実施形態に基づき本発明の説明を行ってきたが、本発明の各実施形態に係る画像処理装置１００が有する「マクロ情報管理機能」は、図２１から図２５に示した各処理手順を、当該装置の動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムとしてコンピュータで実行することで実現することができる。よって、本発明の各実施形態に係る画像処理装置１００が有するマクロ情報管理プログラムは、コンピュータが読み取り可能な記憶媒体（非図示）に格納することができる。
【０２４４】
すなわち、マクロ情報管理プログラムは、フロッピー（登録商標）ディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）、メモリカードなどの記録媒体に記憶させることによって、これらの記憶媒体を読み取り可能な外部記憶装置I/F１５に接続された各種メディアドライブを介して記録媒体から、画像処理装置１００にインストールすることができる。また、画像処理装置１００は、ネットワークI/F１４を有していることから、インターネットを用いてオペレーション実行プログラムをダウンロードし、インストールすることもできる。
【０２４５】
また、本実施形態では、登録データ構成情報４３について説明を行ったが、本発明は、そのデータ形式に限定されるものではない。本実施形態では、アクティビティやフィルタなどのコンポーネントと、それらに設定された動作条件設定とを一意に対応付けることが可能なデータ形式の一例を示したものであって、上記対応付けが可能な形式であれば良い。
【０２４６】
最後に、上記各実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【図面の簡単な説明】
【０２４７】
【図１】本発明の第１の実施形態に係る画像処理装置のハードウェア構成の一例を示す図である。
【図２】本発明の第１の実施形態に係る画像処理装置のソフトウェア構成の一例を示す図である。
【図３】本発明の第１の実施形態に係るパイプ＆フィルタの概念及びフィルタの構成要素の一例を示す図である。
【図４】本発明の第１の実施形態に係る画像処理装置の基本処理手順（その１）の一例を示すフローチャートである。
【図５】本発明の第１の実施形態に係る画像処理装置の基本処理手順（その２）の一例を示すフローチャートである。
【図６】本発明の第１の実施形態に係るワークフローの構成要素の一例を示す図である。
【図７】本発明の第１の実施形態に係るマクロ登録時のユーザインタフェースの画面表示例（その１）を示す図である。
【図８】本発明の第１の実施形態に係るマクロ登録時のユーザインタフェースの画面表示例（その２）を示す図である。
【図９】本発明の第１の実施形態に係るマクロ情報を構成するデータの関係の一例を示すクラス図である。
【図１０】本発明の第１の実施形態に係るマクロ情報を構成するデータ項目の一例を示す図である。
【図１１】本発明の第１の実施形態に係る登録途中のマクロ情報の一例を示す図である。
【図１２】本発明の第１の実施形態に係る登録されるマクロ情報の一例を示す図である。
【図１３】本発明の第１の実施形態に係る登録データ構成情報を構成するデータ項目の一例を示す図である。
【図１４】本発明の第１の実施形態に係るマクロ削除時のユーザインタフェースの画面表示例を示す図である。
【図１５】本発明の第１の実施形態に係るコンポーネントを構成するモジュールの一例を示す図である。
【図１６】本発明の第１の実施形態に係るマクロ登録時のコンポーネントを構成するモジュールの一例を示す図である。
【図１７】本発明の第１の実施形態に係るマクロ削除時のコンポーネントを構成するモジュールの一例を示す図である。
【図１８】本発明の第１の実施形態に係るマクロ登録の主要機能構成の一例を示す図である。
【図１９】本発明の第１の実施形態に係るマクロ登録時のマクロ情報設定の一例を示す図である。
【図２０】本発明の第１の実施形態に係るマクロ削除の主要機能構成の一例を示す図である。
【図２１】本発明の第１の実施形態に係るマクロ登録の処理手順の一例を示すフローチャートである。
【図２２】本発明の第１の実施形態に係るマクロ削除の処理手順の一例を示すフローチャートである。
【図２３】本発明の第１の実施形態に係るマクロ登録時のコンポーネント間の処理手順の一例（その１）を示すシーケンス図である。
【図２４】本発明の第１の実施形態に係るマクロ登録時のコンポーネント間の処理手順の一例（その２）を示すシーケンス図である。
【図２５】本発明の第１の実施形態に係るマクロ削除時のコンポーネント間の処理手順の一例を示すシーケンス図である。
【符号の説明】
【０２４８】
１１  制御部（CPU）
１２  主記憶部（ROM,RAM）
１３  補助記憶部（HD）
１４  ネットワークI/F
１５  外部記憶装置I/F
１６  外部装置I/F
１７  出力装置I/F
１８  入力装置I/F
１９  表示部（パネル表示）
２０  入力部（操作部）
２１  印刷部（プロッタ部）
２２  スキャナ部（画像読み取り部）
３１  アプリケーション選択画面
３２  マクロパラメータ設定画面
３３  登録マクロ一覧画面
３４  マクロ削除確認画面
４１  マクロ情報
４１１  マクロヘッダ情報
４１２  マクロボディ情報
４１３  アクティビティ条件（作業工程条件）
４１４  マクロ構成情報
４１５  フィルタ条件（作業手順条件）
４２  登録データ構成情報
５１  コンポーネント
５１１  条件（パラメータ設定・保持機能）
５１２  ジョブ（処理実行機能）
６１  ローカル／リモートユーザインタフェース（UI）
６２  アクティビティに関するコンポーネント群
６２１  アクティビティユーザインタフェース（UI）
６２２  アクティビティロジック
６３  リクエスト定義に関するコンポーネント群
６３１  リクエスト定義ユーザインタフェース（UI）
６３２  リクエスト定義ロジック
６４  リクエスト管理
６５  フィルタに関するコンポーネント群
６５１  フィルタユーザインタフェース（UI）
６５２  フィルタロジック
６６  データ管理
６７  マクロアクティビティに関するコンポーネント群
６７１  マクロアクティビティユーザインタフェース（UI）
６７２  マクロアクティビティロジック
７０  マクロ登録手段
７１  マクロ条件設定画面作成手段
７２  マクロ条件設定手段
７３  マクロ条件格納手段
７４  マクロ条件識別情報管理手段
７５  マクロ情報構成手段
７６  マクロ情報格納手段
８０  マクロ削除手段
８１  マクロ構成情報取得手段
８２  マクロ構成情報解析手段
８３  マクロ条件読み出し手段
８４  マクロ削除確認画面作成手段
８５  マクロ削除手段
１００  画像処理装置
１０１  ユーザインタフェース層
１０２  コントロール層
１０３  アプリケーションロジック層（a：入力、b：変換（加工）、c：出力フィルタ）
１０４  デバイス層（a：画像パイプ）
１０５  デバイス制御層
【図１】
0005041973.tif 000002
【図２】
0005041973.tif 000003
【図３】
0005041973.tif 000004
【図４】
0005041973.tif 000005
【図５】
0005041973.tif 000006
【図６】
0005041973.tif 000007
【図７】
0005041973.tif 000008
【図８】
0005041973.tif 000009
【図９】
0005041973.tif 000010
【図１０】
0005041973.tif 000011
【図１１】
0005041973.tif 000012
【図１２】
0005041973.tif 000013
【図１３】
0005041973.tif 000014
【図１４】
0005041973.tif 000015
【図１５】
0005041973.tif 000016
【図１６】
0005041973.tif 000017
【図１７】
0005041973.tif 000018
【図１８】
0005041973.tif 000019
【図１９】
0005041973.tif 000020
【図２０】
0005041973.tif 000021
【図２１】
0005041973.tif 000022
【図２２】
0005041973.tif 000023
【図２３】
0005041973.tif 000024
【図２４】
0005041973.tif 000025
【図２５】
0005041973.tif 000026