<画像形成装置のハードウェア構成について>
まず、本実施例に係る画像形成装置のハードウェア構成について、図1を用いて説明する。図1は、本発明の実施例1に係る画像形成装置のハードウェア構成を示す図である。
図1に示すように、画像形成装置は、制御部101、主記憶部102、補助記憶部103、ネットワークI/F104、外部記憶装置I/F105、入力部106、表示部107、印刷部108、スキャナ部109、外部装置I/F110などにより構成されている。
制御部101は、コンピュータの中で、各装置の制御やデータの演算、加工を行うCPUである。制御部101は、主記憶部102に記憶されたプログラムを実行する演算装置で、入力装置や記憶装置からデータを受け取り、演算、加工した上で、出力装置や記憶装置に出力する。
主記憶部102は、ROM(Read Only Memory)やRAM(Randam Access Memory)などであり、制御部101が実行する基本ソフトウェアであるOSやアプリケーションソフトウェアなどのプログラムやデータを記憶又は1次保存する記憶装置である。
補助記憶部103は、HD(Hard Disk)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。また、補助記憶部103には、画像形成装置が管理する各種情報(例えば、ユーザ情報など)が格納され、データベース(DB:DataBase)、ファイルシステム(FS:File System)などの機能により管理される。
ネットワークI/F104は、有線及び/又は無線回線などのデータ伝送路により構築されたLAN(Local Area Network)、WAN(Wide Area Network)などのネットワークを介して接続された通信機能を有する周辺機器と当該画像形成装置などのインタフェースである。
外部記憶装置I/F105は、USB(Universal Serial Bus)などのデータ伝送路を介して接続された外部記憶装置111(例えば、記憶メディアドライブなど)と当該画像形成装置とのインタフェースである。
入力部106や表示部107は、キースイッチ(ハードキー)とタッチパネル機能(GUIのソフトウェアキーを含む:Graphical User Interface)を備えたLCD(Liquid Crystal Display)とから構成され、画像形成装置が有する機能を利用する際のUI(User Interface)として機能する表示及び/又は入力装置である。
印刷部108は、C(シアン)、M(マゼンダ)、Y(イエロー)、K(ブラック)からなる画像データを受け取ると、レーザービームを用いた電子写真プロセス(露光、潜像、現像及び転写のプロセス)を用いて、受け取った画像データを転写紙(印刷用紙)に出力(印刷)するプロッタ装置である。
スキャナ部109は、CCD(Charge Coupled Devices)光電変換素子からなるラインセンサとA/Dコンバータとこれらを駆動する駆動回路を備え、原稿読み取り面(コンタクトガラス上)にセットされた原稿をスキャンすることでRGB各8ビットのデジタル画像データを生成(原稿から情報を読み取り電子化)する読取装置である。
外部装置I/F110は、USBなどのデータ伝送路を介して接続された外部装置112(例えば、デジタルカメラなど)のやり取り(送受信や読み込み/書込み)を行っている。
このように、画像形成装置は、主記憶部102や補助記憶部103などの記憶装置に格納されたプログラムを制御部101で実行し、制御信号(制御命令)を各装置へ送出すること(各装置を制御すること)で、画像形成装置が有するコピー、ファックス、スキャナ、プリンタなどのアプリケーションを実現し、画像形成装置で管理する情報、又は画像形成装置が接続されたシステム内で管理する情報を処理することができる。
<画像形成装置の機能ブロック構成について>
次に、本実施例1に係る画像形成装置の機能ブロック構成について図2を用いて説明する。図2は、本実施例に係る画像形成装置の機能ブロック構成を示す図である。
実施例1における画像形成装置の機能は、UI層201、アクティビティ層202、フィルタ層203からなるレイヤ構造より構成される。
ユーザインタフェース(UI)層201は、アプリケーション(例えば、コピー、ファックス、スキャナ、プリント)の実行要求を受け付けるためのUI機能が実装されている部分である。また、UI層201は、操作部デバイス211、UI212より構成される。
操作部デバイス211は、オペレーションパネルに付随する装置(キー、LCD、Light Emitting Diode:LED、ブザー等)を制御するデバイスドライバの役割を果たす。UI212は、オペレーションパネルを介して入力される要求を受け付ける。UI212は、具体的には読取UI213、編集UI214、印刷UI215、アクティビティUI216などがある。
読取UI213は、画像形成装置のスキャナ部109を制御するための要求を受け付けるUIである。編集UI214は、画像形成装置内の図示しない画像処理ユニット(Image Processing Unit:IPU)を制御するための要求を受け付けるUIである。印刷UI215は、画像形成装置の印刷部108を制御するための要求を受け付けるUIである。アクティビティUI216は、アプリケーションの実行を制御するための要求を受け付けるUIである。
アクティビティ層202は、要求されたアプリケーションに応じて、後述するフィルタ層203が有する各フィルタをパイプで接続し、接続されたフィルタに基づいてアプリケーションの実行を制御するための機能を実装した部分である。
アクティビティ221は、各フィルタの動作制御をすることで、例えば送信動作などの機能をユーザーに提供する。
フィルタ層203は、画像形成装置において提供される機能の一部を実現する部品(フィルタ)群と、各フィルタから共通に利用される下位機能が実装されている部分である。
フィルタ層203は、読取フィルタ231、編集フィルタ232、送信フィルタ233、個人情報管理234、装置情報管理235、データ管理236、認証237などが含まれる。
読取フィルタ231は、スキャナ部109による画像データの読み取りを制御し、読み取られた画像データを出力する。編集フィルタ232は、画像形成装置内の図示しない画像処理ユニット(IPU)により編集された画像データを出力する。送信フィルタ233は、入力されたデータを例えばFAX送信、メール送信する。
個人情報管理234は、画像形成装置のユーザー情報を管理する。装置情報管理235は、画像形成装置の装置情報を管理する。データ管理236は、画像形成装置の情報を永続化する。認証237は、画像形成装置にログインするユーザーの情報を管理する。
プラグイン管理204は、画像形成装置へのモジュールのインストールまたはアンインストールを制御する。
<画像形成装置のマクロに関する機能ブロック構成について>
図3は、画像形成装置のマクロに関する機能ブロック構成を示す図である。画像形成装置300は、マクロデータ入力手段301、マクロデータ設定手段302、記憶手段303、マクロ読込手段309、条件値取得手段310を含んで構成される。
マクロデータ入力手段301は、マクロを実行するためのマクロデータに含まれる動作条件の条件値などが入力又は選択(以下、入力等という)される。このとき、マクロデータ入力手段301は、入力等されたマクロデータを有するマクロを登録する指示があれば、入力等されたマクロデータをマクロデータ設定手段302に出力する。
マクロデータ設定手段302は、入力等されたマクロデータに含まれる条件値が、記憶手段303に記憶されている情報管理データ305に含まれる条件値と一致するか否かを判定する。また、マクロデータ設定手段302は、一致すると判定した場合、一致すると判定した条件値を相対的に表すための変数を記憶手段303から取得する。
ここで、相対的な変数とは、後述する情報管理データ305が有するデータなどから条件値を一意に特定できる変数のことをいう。
また、マクロデータ設定手段302は、記憶手段303から変数を取得すると、ユーザーに対して、条件値を変数に変換するか否かの問合せを行なう。問合せの結果、条件値を変数に変換すると指示されれば、条件値を変数に変換してマクロデータを設定する。また、問合せの結果、条件値を変数に変換しないと指示されれば、条件値自体をマクロデータに設定する。設定が終了したマクロデータは記憶手段303に記憶される。
なお、ここでは、条件値を変数に変換できる場合にユーザーに確認をとるようにしたが、ユーザーに確認をとることなく、変数に変換する構成にしてもよい。
記憶手段303は、マクロデータ304、情報管理データ305、ユーザー特定情報308などのデータを記憶する。情報管理データ305は、個人情報管理データ306、装置情報管理データ307を有する。
ここで、マクロデータ304について、図4を用いて具体的に説明する。図4は、送信用のマクロを登録する場合のマクロデータのデータ構造の一例を示す図である。図4に示すマクロデータは、動作条件、条件値、記憶型、特定先、定義名からなる。
動作条件は、送信用のマクロを実行するために必要な動作条件を示す。ここでは、送信するための動作条件として、宛先、送信時刻、ファイル形式、圧縮などがある。条件値は、動作条件の設定値を示す。例えば、動作条件が「宛先」の条件値は、後述する変数である「上司」と設定されている。また、動作条件が「送信時刻」の条件値は、ユーザーなどが設定した条件値自体の「10分後」と設定されている。
記憶型は、設定された条件値が、マクロデータ304とは異なる情報管理データ305から条件値を取得する相対的な値なのか、あるいはマクロデータ304に設定されている条件値自体を示す絶対的な値なのかを示す。図4に示す例では、条件値が変数である「上司」であれば、記憶型は「相対」、条件値が条件値自体である「10分後」であれば、記憶型は「絶対」が設定されている。
特定先は、条件値が記憶手段303のどの情報管理データに格納されているかを示す。図4に示す例では、特定先が「個人情報管理」であれば、個人情報管理データ306に条件値が含まれており、特定先が「装置情報管理」であれば、装置情報管理データ307に条件値が含まれていることを示す。
定義名は、マクロデータに含まれる条件値を情報管理データから参照するために用いられる識別子を示す。図4に示す例では、記憶型が「相対」である動作条件「圧縮」の定義名は、「DEFAULT SEND COMP」である。この定義名「DEFAULT SEND COMP」から、同じ定義名を持つ情報管理データの条件値を参照すればよいことになる。
図3に戻り、情報管理データ305について説明する。情報管理データ305は、マクロデータに含まれる条件値を相対的な変数として変換可能であるようなデータを有している。
ここで、情報管理データ305が有する個人情報管理データ306、装置情報管理データ307を図5、図6を用いて説明する。図5は、個人情報管理データ306の例を示す図である。図5に示すように、個人情報管理データは、個人情報と、グループ情報とに別れ、それぞれ、項目、定義名、条件値からなる。
図6は、スキャナ機能の読み取り条件と送信条件の初期設定値の装置情報管理データを示す図である。図6に示すように、装置情報管理データは、読み取り条件と送信条件とを有する。
読み取り条件、送信条件は、それぞれ項目、条件値、定義名からなる。例えば、読み取り条件の項目「濃度」の初期設定値は、「濃い」に設定されており、送信条件の項目「圧縮」の初期設定値は、「する」に設定されている。
なお、情報管理データ305は、定義名から条件値を一意に特定できるのであれば、必ずしも、個人情報管理データ306、装置情報管理データ307に分けて記憶しなくてもよい。
図3に戻り、ユーザー特定情報308は、装置にログインしたユーザーを特定できる情報である。たとえば、図4に示す「A」が装置にログインした場合には、「A」であることがわかる情報がユーザー特定情報となる。
以上がマクロデータを記憶手段303に記憶するまでの構成であり、以下に記憶手段303に記憶されたマクロデータ304を読み込んでマクロを実行する構成を説明する。
マクロ読込手段309は、記憶手段303よりマクロデータ304を読み込んで、読み込んだマクロデータ304を取得手段に出力する。
条件値取得手段310は、マクロ読込手段309よりマクロデータ304を取得して、マクロデータ304に含まれる記憶型に「相対」があるか否か判定する。記憶型に「相対」がある場合は、特定先に示されている情報管理データ305から、定義名と変数とに基づいて条件値を取得(ロード)する。
さらに、特定先が「個人管理情報」である場合には、さらにユーザー特定情報308を取得して、取得したユーザー特定情報308と定義名と変数とに基づいて、個人情報管理データ306から条件値を取得する。また、条件値取得手段310は、マクロ読込手段309から取得したマクロデータ、記憶手段303から取得した条件値をマクロデータ設定手段302に出力する。
マクロデータ設定手段302は、条件値取得手段310より取得したマクロデータと条件値とに基づいて、実行しようとするマクロのマクロデータを設定する。マクロデータが設定された後は、図示しないマクロ実行手段によりマクロが実行される。
なお、図3では、上記のような機能構成にしたが、上記に説明した機能を有するのであれば、図3に示す構成に限らず、複数の構成を組み合わせて1つの構成としてもよい。その際、組み合わせた構成間のデータの入力、出力は不要になることは言うまでもない。
<画像形成装置のマクロを設定する手順について>
次に、図7を用いて実施例1におけるマクロデータが設定されるまでの手順を説明する。図7は、「上司へメール」というメール送信用のマクロに含まれるマクロデータ(図4参照)が記憶されるシーケンス図である。
なお、図7に示す例は、図5、図6を参照しながら図4に示すマクロデータが最終的に設定されるまでの手順を示している。また、「上司へメール」というタイトルはユーザーにとって、マクロが何かを認識できるのであれば、どんなタイトルでも良い。
まず、ステップS101において、「A」は、装置にログインする。次に、ステップS102〜S109において、「A」は、タッチパネルなどの表示画面からデータを入力等することにより、送信条件の条件値を設定する。図8を用いて、ユーザーにより入力等された具体的な条件値の一例を示す。図8は、ユーザーにより入力等された条件値を含むマクロデータを表示する表示画面の一例を示す図である。図8に示すように、ユーザーは、宛先に「bbb@xxx.co.jp」、送信時刻に「00:10」、ファイル形式に「TIFF」、圧縮に「する」と設定する。
次に、ステップS110において「A」は、設定した送信条件のマクロデータを有するマクロを登録すると指示したとする。このとき、ステップS111において、アクティビティ221は、設定された条件値が変数として変換できないか情報管理データ305のデータを用いて問合せを行なう(マクロデータ設定手段302)。
宛先「bbb@xxx.co.jp」が、相対的な変数として変換できないかを判定する場合について説明する。まず、マクロデータ設定手段302は、宛先「bbb@xxx.co.jp」について、特定先の「個人情報管理」データから、定義名「USER ADDRESS」に基づいて、「bbb@xxx.co.jp」という条件値を変数で変換できないか判定する。このとき、特定先が「個人情報管理」データを示すので、マクロデータ設定手段302は、ユーザー特定情報308「A」も判定に用いる。
ステップS112、S113において、図5に示す個人情報管理データの個人情報から、ログインしているユーザーはユーザー特定情報308から「A」だとわかり、次に「A」のグループは「あ」であることがわかる。次に、グループ情報からグループ「あ」の上司は「B」だとわかり、「B」のアドレスを調べると、「bbb@xxx.co.jp」であるとわかる。
つまり、「A」が設定した宛先「bbb@xxx.co.jp」は、上司「B」のアドレスだと判定できる。ステップS114において、アクティビティ221は、宛先の条件値である「bbb@xxx.co.jp」は相対的な変数である「上司」としてマクロデータに設定できると判定する(マクロデータ設定手段302)。
次に、ステップS115において、アクティビティ302は、ユーザーに対して、条件値「bbb@xxx.co.jp」を相対的な変数「上司」として設定するか問合せを行なう(マクロデータ設定手段302)。図9は、ユーザーに問い合わせを行なうための表示画面の一例を示す図である。ステップS116において、ユーザーにより、変数として設定すると指示されれば、設定された条件値を「上司」に変換してマクロデータに設定する(マクロデータ設定手段302)。
次に、送信時刻「10分後」が、相対的な変数として変換できないか判定する場合について説明する。まず、ステップS117において、アクティビティ221は、送信時刻「10分後」について、特定先の「装置情報管理」データから、定義名「MACHINE SEND TIME」に基づいて、「10分後」という条件値を変数で変換できないか判定する。
図6に示す装置情報管理データには、定義名「MACHINE SEND TIME」はないので、ステップS118において、アクティビティ221は、変数として変換できないと判定する。
次に、ファイル形式「TIFF」が、相対的な変数として変換できないか判定する場合について説明する。まず、ステップS119において、アクティビティ221は、ファイル形式「TIFF」について、特定先の「装置情報管理」データから、定義名「DEFAULT READ FILETYPE」に基づいて、「TIFF」という条件値を変数で変換できないか判定する。
図6に示す装置情報管理データから、定義名「DEFAULT READ FILETYPE」に対応する条件値を調べると「PDF」であることがわかる。よって、ステップS120において、設定されたファイル形式の条件値である「TIFF」は、相対的な変数「初期設定値」としてマクロデータに設定できないと判定される。
次に、圧縮「する」が、相対的な変数として変換できないか判定する場合について説明する。まず、ステップS121において、アクティビティ221は、圧縮「する」について、特定先の「装置情報管理」データから、定義名「DEFAULT SEND COMP」に基づいて、「する」という条件値を変数で変換できないか判定する。
図6に示す装置情報管理データから、定義名「DEFAULT SEND COMP」に対応する条件値を調べると「する」であることがわかる。よって、圧縮の条件値である「する」は相対的な変数「初期設定値」としてマクロデータに設定できると判定する。なお、装置情報管理データが有する条件値に基づいて、相対的な変数で変換できる場合は、全て「初期設定値」という変数で変換されるとする。
ここで、ステップS123において、アクティビティ221は、ユーザーに対して、条件値「する」を相対的な変数「初期設定値」として設定するか問合せを行なう。ステップS124において、ユーザーにより変数として設定すると指示されれば、設定された条件値を「初期設定値」に変換してマクロデータに設定する。
図10は、条件値を変数に変換して設定された後のマクロデータを示す図である。宛先、圧縮がそれぞれ変数「上司」、「初期設定値」としてマクロデータに設定されている。なお、上記構成によれば、入力等された条件値は全て、相対的な変数に変換できるか否かの判定を行なっていたが、条件値が個人情報管理データ、基本機能の初期設定値に関する装置情報管理データの場合にだけ、係る判定を行なうようにしてもよい。
図4に示すマクロデータの場合、送信時刻の特定先は「装置情報管理」であるが、定義名に「DEFAULT」がついていないため、初期設定値に関するデータではないことが判断でき、この場合は、係る判定を行なわず、記憶型「絶対」として、条件値自体をマクロデータに設定する。これより、画像形成装置の処理負荷を軽減することができる。
<画像形成装置のマクロを呼び出す手順について>
画像形成装置のマクロを呼び出す手順について図11を用いて説明する。図11は、図7の「A」が登録したマクロ「上司へメール」を「C」が呼び出す場合のシーケンス図である。
まず、ステップS101において、「C」が装置内にログインする。次に、ステップS201、S202において、「C」が、「A」により登録された「上司へメール」のマクロを実行するため、マクロIDなどを使って「A」が登録した「上司へメール」のマクロを呼び出す。このとき、ステップS203において、アクティビティ221は、マクロデータの記憶型に「相対」があるため、情報管理データから条件値を取得する必要がある。ここで、特定先が「個人情報管理」データなので、ユーザー特定情報も用いて条件値を取得する。
次に、ステップS204、S205、S206において、個人情報管理234は、変数「上司」、特定先「個人情報管理」、定義名「USER ADDRESS」、ユーザー特定情報「C」に基づいて条件値を取得する(条件値取得手段310)。具体的に説明すると、まず、図5に示す個人情報管理データの個人情報から、ログインしたユーザー「C」のグループは「い」であることがわかる。
次に、個人情報管理データのグループ情報から、グループ「い」の「上司」は、「D」であることがわかる。よって、ステップS206において、条件値取得手段310は、変数「上司」に設定されるアドレスとして、「C」の上司である「D」のアドレス「ddd@xxx.co.jp」を取得する。
次に、ステップS207において、アクティビティ221は、記憶型が「相対」である変数「初期設定値」の条件値を取得する。つまり、条件値取得手段310は、特定先「装置情報管理」データ、定義名「DEFAULT SEND COMP」に基づいて、条件値を取得する。
このとき、図6に示す装置情報管理データが図13に示す装置情報管理データに設定変更されていたとする。図13は、図6に示す装置情報管理データの別の一例を示す図である。図13では、圧縮の条件値が「しない」となっている。
よって、ステップS208において、装置情報管理235は、圧縮の変数「初期設定値」に対する条件値として、「しない」を装置情報管理データから取得する(条件値取得手段310)。
次に、ステップS209において、アクティビティ221は、取得した条件値「ddd@xxx.co.jp」、「しない」をそれぞれマクロデータに設定して送信フィルタ233に出力する。
ここで、上記は「C」が「A」のマクロ「上司へメール」を呼び出す場合の例について説明したが、「E」が「A」のマクロ「上司へメール」を呼び出す場合の例について図12を用いて説明する。
図12は、「E」が「A」のマクロ「上司へメール」を呼び出す場合のシーケンス図である。図11と同様の処理を行なう処理は説明を省略する。図12で問題となるのが、図4に示すように、個人情報管理データの個人情報には、「E」のグループが設定されていないことである。よって、変数「上司」に対して、一意に特定できるアドレスはないので、条件値としては「該当なし」となる(S301)。このとき、ユーザーが送りたい先のアドレスを表示画面から入力等できるようにすればよい(S302)。
上記は、マクロ「上司へメール」の呼び出しの例について説明してきたが、次に、装置情報として機種ごとに異なる最高画質のコピーに関するマクロの例を用いてマクロ呼び出しを説明する。
図14は、装置ごとに決まっているコピー機能の性能に関する装置情報管理データの例を示す図である。コピー機能に関する装置情報管理データには、例えば読み取り性能データ、印刷設定データがある。
読み取り性能データには、解像度がMAX、MINなどの項目があり、それぞれ条件値、定義名と対応付けられて記憶されている。印刷性能データには、カラーモードが最多色数、最小色数などの項目があり、それぞれ条件値、定義名と対応付けられて記憶されている。
ここで、印刷画質を最高にするマクロについて図15を用いて説明する。図15は、印刷画質を最高にするマクロのマクロデータを示す図である。図15に示すマクロデータは、動作条件として解像度、カラーモードが設定されている。また、このマクロデータは、解像度を「MAX」という変数で、カラーモードは「最多色数」という変数で条件値が設定されている。
このとき、印刷画質最高のマクロを呼び出すとき、マクロでデータの記憶型が解像度、カラーモードともに「相対」であるため、特定先のデータから条件値を取得する必要がある。
条件値取得手段310は、解像度については、定義名「MODE READ RESOLUTION MAX」と変数「MAX」とに基づいて、装置情報管理データから条件値「1200dpi」を取得できる。また、条件値取得手段310は、カラーモードについては、定義名「MODE PRINT COLOR HIGH」と変数「最多色数」とに基づいて、装置情報管理データから条件値「フルカラー」を取得できる。
よって、条件値「1200dpi」、「フルカラー」が設定されているマクロデータに基づいて、印刷画質を最高にするマクロによるコピーを行なうことができる。
以上、実施例1によれば、具体値でなく概念により規定できるマクロデータを有するマクロを登録することで、画像形成装置の装置構成や装置内の管理データなどに変化が発生しても、利用者による煩雑な処理を必要とせず、マクロを概念的に利用できる
また、情報管理データ305を個人情報管理データ306、装置情報管理データ307に分けることにより、ログインしたユーザー特定情報が必要な場合のみ、ユーザー特定情報を取得することができる。
また、条件値が相対的な変数として変換できると判断された場合、条件値を変数に変換してマクロデータに登録するか否かをユーザーに確認する構成にすることにより、さらに、ユーザーの所望するマクロを登録することができる。
次に、実施例2に係る画像形成装置について説明する。実施例2に係る画像形成装置は、マクロデータが変数であるためマクロ呼出を行ったとき、変数に対する条件値が複数存在する場合であっても、一意に条件値を特定することができる。
図16は、画像形成装置のマクロに関する機能ブロック構成を示す図である。画像形成装置400は、マクロデータ入力手段301、マクロデータ設定手段403、記憶手段401、マクロ読込手段309、条件値取得手段406を含んで構成される。図16における機能において、図3に示す機能と同様のものは同じ符号を付し、その説明を省略する。
実施例2では、記憶手段401に格納されるマクロデータ304に特定情報403が含まれる。図17は、実施例2におけるマクロデータの一例を示す図である。図17に示すように、実施例1と比べてマクロデータ304には特定情報403が追加されている。ここで、特定情報403とは、記憶型が「相対」の「変数」から条件値を取得する場合、条件値が複数あるときに条件値を一意に特性するための情報のことを言う。
図17に示す例では、「グループ長宛先」の条件値が複数存在する場合に、特定情報「ID12」に基づいて条件値を一意に特定する。具体的には、特定情報「ID12」の定義先「DECISION FACTOR」を参照することで条件値を一意に特定できる(図17(B)参照)。この「DECISION FACTOR」には、条件値を一意に特定できる情報が記憶されている。例えば、グループ長が第一階層、第二階層と複数存在する場合に、この「DECISION FACTOR」に「第X階層」と記憶しておけば、どの階層の上司であるかを一意に特定することができる。
図18は、グループの組織構造の一例を示した概念図である。図18に示すように、「グループA」は、「Aリーダー」、「Suzuki」、「Satoh」、「Murata」を含んで構成される。また、「グループB」は、「Bリーダー」、「Satoh」、「Sasaki」、「Nakamura」を含んで構成される。また、「グループC」は、「Cリーダー」、「グループA」、「グループB」を含んで構成される。
また、「グループD」は、「Dリーダー」、「Yamada」、「Miyamoto」、「Hoshino」を含んで構成される。また、「グループE」は、「Eリーダー」、「グループD」を含んで構成される。
図19は、グループCのデータ構造の一例を示した図である。図19(A)は、グループAのデータ構造の一例を示した図である。図19(B)は、グループBのデータ構造の一例を示した図である。図19(C)は、グループCのデータ構造の一例を示した図である。
図20は、グループEのデータ構造の一例を示した図である。図20(A)は、グループDのデータ構造の一例を示した図である。図20(B)は、グループEのデータ構造の一例を示した図である。
図19、図20に示すデータによって、グループの構成員とリーダーとの関係が分かるようになっている。なお、図19、図20に示すデータは、個人情報管理データ306である。
例えば、図19に示す「Satoh」は「グループA」、「グループB」両方に所属するため、図4に示すマクロデータを呼び出した場合、「Aリーダー」、「Bリーダー」、又は「Cリーダー」どのグループ長を使ってよいかわからない。
そこで、マクロデータの「ID1」のグループ長の宛先は「ID12」に示される特定情報を使い特定する。実施例2では、この特定情報をマクロデータに含める。図17に示すマクロデータを呼び出した際、特定情報の定義先「DECISION_FACTOR」を参照し、「Aリーダー」か「Bリーダー」か「Cリーダー」を特定する。「DECISION_FACTOR」には、「Aリーダー」か「Bリーダー」か「Cリーダー」を特定する情報が含まれている。例えば、あるリーダーの「MEMBER ID」が含まれていてもよいし、「過去の送信回数が多い方」や「構成メンバーが多い方」など間接的に一意に特定できる情報が含まれていてもよい。
特定情報「DECISION_FACTOR」は、この図17のマクロデータに含まれて保持されていても良いし、他のデータ領域に置いて、このデータ領域を参照することで特定情報を呼び出すようにしても良い。
図16に戻り、マクロデータ設定手段403に含まれる特定情報設定手段404は、ユーザーによりマクロデータを登録される際、変数に対してどのような特定情報を設定すればよいかを判定し、判定結果を特定情報に設定する。あるユーザーに上司が2人以上いる場合でも、マクロデータに設定されているアドレスから第何階層の上司かを判定して、特定情報に設定する。
特定情報選択手段405は、変数に対する条件値が複数ある場合、どのような特定情報を設定すればよいかを選択可能とする。例えば、ユーザーに特定情報一覧を表示し、その中から1つ特定情報を選択させ、選択された特定情報をマクロデータに登録する。
条件値取得手段406の条件値特定手段407は、マクロを読み込む際、マクロデータの変数に特定情報が設定されている場合は、その特定情報を用いて条件値を特定する。
条件値選択手段408は、条件値特定手段407により選択されていない他の条件値をユーザーに提示し、他の条件値も選択可能とする。これより、システムにより自動で特定した条件値以外にもユーザーの指定により条件値を選択可能とすることで、ユーザー所望のマクロを柔軟に実行することができる。
<マクロを登録する手順例1>
図21は、実施例2におけるマクロ登録の手順例1を示すシーケンス図である。ここで、図18に示すようなグループ構成の場合、「Suzuki」の上司は「Aリーダー」でも「Cリーダー」でもあり得る。よって、各上司を特定するために、直属の上司である「Aリーダー」を「第1階層の上司」とし、「Cリーダー」は、「Aリーダー」の1階層上の上司を意味する「第2階層の上司」とする。かかる場合、特定情報として「階層」を情報として持つことで上司を一意に特定することができる。
図21に示すように、「Suzuki」が第2階層の上司である「Cリーダー」にメールを送信する処理を行うマクロを登録する例について説明する。
ステップS401において、「Suzuki」が第2階層の上司である「Cリーダー」を選択しマクロ登録を行うと、ステップS402において、アクティビティ221(マクロデータ設定手段404)は、個人情報管理234に選択した宛先の相対情報を問い合わせる。
ステップS403〜S405において、個人情報管理234(特定情報設定手段405)は、ログイン者(「Suzuki」)に対して第何階層の上司のマクロ登録が要求されたのかを図19、図20に示す個人情報管理データを使用して判定する。
次に、ステップS406において、個人情報管理234(特定情報設定手段405)は、相対情報である「上司」と何階層目の上司なのかを示す「特定情報」とをアクティビティ221に返す。ここでは特定情報として「第2階層」という情報が返る。次に、ステップS407において、アクティビティ221(マクロデータ設定手段404)は、マクロデータの情報を記憶手段401に格納する。
これより、マクロデータを呼び出すとき変数に対応する条件値が複数ある場合でも、特定情報を階層構造の上位又は下位として表し、特定情報をマクロデータに登録しておくことで、条件値を一意に特定することができる。
<マクロの呼び出し手順例1>
図22は、実施例2におけるマクロ呼び出しの手順例1を示すシーケンス図である。図22に示す例は、図18に示す「グループD」の「Yamada」が図21で登録したマクロを呼び出す場合の例である。
ステップS501において、「Yamada」は、装置内にログインを行う。ステップS502において、「Yamada」は、「Suzuki」が登録したマクロ(上司へメール)の呼び出しを要求する。ステップS503において、アクティビティ221は、要求されたマクロ(上司へメール)を記憶手段401から呼び出す(マクロ読込手段309)。
ステップS504において、アクティビティ221は、マクロデータに設定されている相対情報の変数に基づいて絶対情報を問い合わせる(条件値取得手段406)。このとき、相対情報に特定情報が含まれていれば特定情報(第2階層)を指定する。ステップS403、404を経てユーザー情報「Yamada」が取得されると、ステップS505において、個人情報管理234は、図20に示す個人情報管理データ306を用いて「Yamada」の「第2階層」の「上司」である「Eリーダー」を特定する(条件値特定手段407)。
ステップS506において、個人情報管理234は、記憶手段401から「Eリーダー」の宛先(アドレス)を取得し、取得した宛先(「e@xxx.co.jp」)をアクティビティ221に出力する(条件値取得手段310)。ステップS507において、アクティビティ221は、取得した宛先を送信フィルタ233に設定する(マクロデータ設定手段403)。
これより、他人が作成したマクロデータを呼び出す際に、複数の条件値が考えられる場合でも、特定情報を用いることで一意に条件値を設定することができる。
また、図18に示す「Aリーダー」が「グループA」のグループアドレスを選択しマクロ登録を行った場合でも、図21と同様のシーケンスとなる。この場合、宛先の変数として「グループ」の階層構造は「第−1階層」として登録される。
次に、「Aリーダー」が登録したマクロを「Cリーダー」が呼び出した場合は、図22と同様のシーケンスとなり、「Cリーダー」の配下にある「Cグループ」のグループアドレスが展開され、「Cグループ」のメンバー全員にメールが送信されることとなる。
<マクロの呼び出し手順例2>
図23は、実施例2におけるマクロ呼び出しの手順例2を示すシーケンス図である。図23に示す例は、図18に示す「グループA」の「Suzuki」が宛先に「Aリーダー」(第1階層の上司)を選択して登録したマクロデータを「Satoh」が呼び出す場合の例である。
ここで、図18に示すように、「Satoh」の第1階層の上司は「Aリーダー」でもあり、「Bリーダー」でもある。このような場合、特定情報として前述した「階層」だけでは上司を特定できない。よって、さらに特定情報を付加することで上司を一意に決定することができる。さらに付加する特定情報としては、「送信回数優先」や「本文検索ヒット回数優先」などがある。このマクロを登録するためのシーケンスは図21と同様である。
但し、変数が、条件値として複数の可能性がある情報(上司、グループなど)である場合、複数の候補があった場合の振る舞いをマクロ情報ID13として自動的に付加する(図24参照)。図24は、実施例2におけるマクロデータの別の例を示す図である。図24に示すように、ID13には条件値を確実に一意に特定できる情報が記憶されている。このID13に記憶される情報は初期設定として用意されてもよいし、ユーザーにより設定されてもよい。
図25は、特定情報の一例を示す図である。図25に示すように、例えばID13の特定情報2として「送信回数優先」、「本文検索ヒット回数優先」、「マクロ呼出時に選択」を含む。図25に示す例では、「送信回数優先」が初期設定されており、条件値が複数ある場合には、送信回数が優先され、送信回数が多い宛先に設定されることを意味している。
図23に示す処理において、図22に示す処理と同様の処理を行うものは同じ符号を付しその説明を省略する。ステップS505により、個人情報管理234が、あて先(上司)を特定した結果、アクティビティ221には「Aリーダー」と「Bリーダー」の二つのアドレスが返ることになる。
ステップS601において、アクティビティ221は、複数の条件値(この場合はアドレス)をどのようにして決定するかの決定方式を確認する。決定方式については図26を用いて説明する。図26は、条件値の決定方式の一例を示す図である。図26に示すように、決定方式として、複数の条件値からユーザーに選択させて決定する「手動決定」、特定情報を用いてシステムにより自動で決定し、ユーザーに確認させない「自動決定(確認しない)」、特定情報を用いてシステムにより自動で決定し、ユーザーに確認させる「自動決定(確認する)」などがある。なお、この決定方式は予め設定されているものとする。
図23に示す例では、この決定方式は「自動決定(確認する)」になっているとする(S601)。次にステップS602において、アクティビティ221は、ID13に記憶されている情報からどのようにして一意に条件値を特定するかを決める。図23に示す例では、「送信回数優先」がID13に記憶されていたとする。
次に、ステップS603〜605において、アクティビティ221は、「Aリーダー」、「Bリーダー」両方の送信回数を送信フィルタ233に問合せ、「Aリーダー」と「Bリーダー」との送信回数を比較する(条件値特定手段407)。ここでは「Aリーダー」の方が、送信回数が多いとする。
ステップS606において、アクティビティ221は、ステップS601で確認した決定方式が「自動(確認する)」であったので、ユーザーに「Aリーダー」でよいかの問合せ(確認)を行う。図27は、ユーザーに対する問合せ画面の一例を示す図である。図27に示すようにシステムで特定された条件値が他の条件値と区別できるように表示される。また、条件値選択手段408により、図27に示すような表示画面から他の条件値(「Bリーダー」のアドレス)が選択できるようになっている。なお、決定方式が「自動(確認しない)」であれば、ユーザー問合せを行わず、宛先を「Aリーダー」のアドレスに設定する。
ステップS607において、アクティビティ221は、ユーザーにより確認された宛先(「Aリーダー」のアドレス)を送信フィルタ233に設定する。
以上より、システム内で複数の条件値から優先的に1つの条件値を特定したうえで、他の条件値も選択可能とすることにより、ユーザーが複数の条件値から選ぶ手間を省くことができる。また、優先的に特定された条件値を修正したい場合は、他の条件値を選択することで簡易に修正を行うことができる。
ここで、図28は、図23に示すシーケンスの別の例を示すシーケンス図である。図28に示す例では、ID13に記憶されている情報が「マクロ呼出時に選択」であった場合の例である。
図28に示すように、ステップS701において、アクティビティ221は、ID13に記憶されている情報からどのようにして一意に条件値を特定するかを決める。図28に示す例では、「マクロ呼出時に選択」がID13に記憶されていたとする。
ステップS702において、アクティビティ221は、自動で条件値を特定する方式についてユーザーに問い合わせる。図29は、条件値を特定する方式を選択させる表示画面の一例を示す図である。図29に示すように、ユーザーにより「送信回数優先」、「本文検索回数ヒット優先」を選択させる(特定情報選択手段405)。
ステップS703において、ユーザーは「送信回数優先」を選択し、確認ボタンを押下する。以降の処理は図23と同様である。
次に、図30は、条件値決定方式として「マクロ呼出時に選択」を設定した時の処理の一例を示すフローチャートである。なお、図30に示す処理は主にアクティビティ221(条件値取得手段406等)により行われる。
図30に示すように、ステップS801において、特定情報を用いて条件値を特定する手段を利用するか否かを判定する。ステップS801の判定は、図26に示す「手動決定」がシステム内に設定されていれば(NO)ステップS802に進み、図26に示す「自動決定(確認しない)」又は「自動決定(確認する)」が設定されていれば(YES)ステップS803に進む。
ステップS802において、ユーザーは、手動で条件値(例えば宛先アドレス)を特定する。ステップS803において、特定情報を参照する。次に、ステップS804に進み、特定情報の選択が可能か否かを判定する。図25に示す「マクロ呼出時に選択」が設定されていれば(YES)ステップS805に進み、図25に示す「マクロ呼出時に選択」以外が設定されていれば(NO)S806に進む。
ステップS805において、ユーザーにより特定情報が選択される。つまり、条件値決定方式として「マクロ呼出時に選択」を設定しておくことで、ユーザーがマクロを呼び出す度に、所望の特定情報を選択することができる。ステップS806において、設定されている特定情報に決定する。ステップS807において、特定情報に基づき条件値を特定する。
ステップS808において、特定された条件値を確認するか否かを判定する。図26に示す「自動決定(確認する)」であれば(YES)ステップS809に進み、図26に示す「自動決定(確認しない)」であれば(NO)処理を終了する。
ステップS809において、ユーザーに条件値を確認させる。このとき、ユーザーにより他の条件値を選択可能とし、条件値の修正ができるようにする。
以上、実施例2によれば、マクロデータを呼び出す際に、変数に対応する条件値が複数ある場合でも、特定情報を用いることにより、条件値を一意に特定することができる。また、特定情報は階層構造を示す情報としてもよい。また、条件値を一意に特定した場合、特定されなかった条件値もユーザーに提示することで、ユーザーによる修正の機会を与えることができる。
さらに、実施例2では、特定情報を予めシステムに設定したり、その都度特定情報を選択させたりすることを事前にユーザーに設定させることもできる。また、特定情報により一意に特定された条件値をユーザーに確認させるか否かを、事前にユーザーに設定させることもできる。
(変形例)
次に、実施例1の変形例1に係る画像形成装置について説明する。なお、以下では実施例1の各変形例について説明するが、実施例2の変形例についても同様に実施することができるため説明を省略する。変形例1に係る画像形成装置は、他の画像形成装置に対してマクロデータを書き出し、又は、他の画像形成装置からマクロデータを読み込むための送受信手段をさらに備えている。
以下、画像形成装置同士でマクロ構成とマクロデータのデータ構造が同一であることがわかっているため、マクロデータのみを送受信(書き出し、読み込み)する前提で図16を用いて変形例1の画像形成装置を説明する。また、マクロデータのデータ構造が同一であることしか分かっていない場合は、マクロも含めてマクロデータと共に送受信するようにすればよい。
図31は、図4に示すマクロデータを画像形成装置間で送受信する例を示す図である。装置Aが記憶するマクロデータは、記憶型が「相対」の条件値を含んでいる。装置Aが記憶しているマクロデータを装置Bで利用できるようにするため、このマクロデータを装置Bに送信する。
このとき、装置Aと装置Bはパーソナルコンピュータなどの情報機器にてネットワークを介してマクロデータを送受信しても良いし、装置内で動作するWeb画面を利用して送受信しても良いし、専用アプリケーションを利用して送受信しても良い。また、直接装置同士を接続して送受信するようにしても良い。
装置Bは、装置Aから送信されたマクロデータを受信し、記憶型が「相対」の動作条件がある場合、装置B内の情報管理データから定義名が同一のものを探し、定義名に対応する条件値を取得して、取得した条件値を受信したマクロデータの条件値に設定する。仮に、定義名が同一のものがなかった場合、一番類似する定義名の条件値を取得するようにしても良いし、マクロが誤動作しないように不定のままとして無視しても良い。
これより、マクロデータを変更、追加などする必要なく、装置Aでは、ファイルを圧縮せずに送信することができ、装置Bでは、ファイルを圧縮して送信することができる。つまり、本発明にかかるマクロデータのデータ構造を有していれば、装置A、Bで機能の初期設定値などが異なっていたとしても、同一のマクロを実行することができる。
次に、変形例1の他の例について図32を用いて説明する。図32は、図15に示すマクロデータを画像形成装置間で送受信する例を示す図である。装置Aが記憶しているマクロデータは、記憶型が「相対」の条件値を含んでいる。装置Aが記憶しているマクロデータを装置Bで利用できるようにするため、このマクロデータを装置Bに送信する。
装置Bは、装置Aから送信されたマクロデータを受信し、記憶型が「相対」である変数「MAX」、「最多色数」について、装置B内の情報管理データから定義名が同一のものを探し、定義名に対応する条件値「600dpi」、「白黒」を取得して、取得した条件値「600dpi」、「白黒」を受信したマクロデータに設定する。
これより、基本機能の性能が異なる装置間においても、マクロデータを変更することなく、装置Aでは、解像度「1200dpi」、カラーモード「フルカラー」のコピーを行なうことができ、装置Bでは、解像度「600dpi」、カラーモード「白黒」のコピーを行うことができる。
よって、同じマクロ構造、同じマクロデータ構造を持つことが分かっていれば、マクロデータのみを送受信(書き出し、読み込み)することで、装置間で問題なくマクロを利用することができる。
なお、変形例1における画像形成装置は、マクロデータを送受信する前に、装置IDや先に受信した相手のマクロデータに基づいて、相手の画像形成装置が自装置と同じマクロデータのデータ構造を有しているか否かを判定してから、マクロデータを送信してもよい。
次に、実施例1の変形例2における画像形成装置について図33を用いて説明する。変形例2では、アドレスなど他のユーザーに情報を提供したくない場合に、条件値を変数でしか設定できないようにしている。
図33は、変形例2におけるマクロデータのデータ構造の例を示す図である。前述のマクロデータと異なるところは、禁止設定のデータが追加されていることである。禁止設定が「する」になっている場合は、条件値は変数として設定する。これより、他人がこのマクロデータを利用するときには、本人が設定した条件値自体は相手に知られることはない。
また、設定した条件値が情報管理データにない場合、又は、一意に特定できる変数がない場合、条件値を変数に変換して設定できないことになる。しかし、禁止設定が「する」になっている場合は、条件値を情報管理データに記憶できない。よって、係る場合、マクロとしては無意味である旨をユーザーに表示したり、条件値が未選択、又は未入力のままマクロデータに設定されたりする構成とすればよい。
以上より、変形例2における画像形成装置では、他のユーザーに個人情報など、知られたくない情報がある場合には、禁止設定データにより、記憶型を「絶対」として条件値を記憶することを防ぐことができる。
次に、実施例1の変形例3における画像形成装置について図34を用いて説明する。図34は、情報管理データから取得した条件値のみを表示する表示画面の例を示す図である。図34では、宛先の条件値「ddd@xxx.co.jp」と、圧縮の条件値「なし」とが情報管理データから取得された条件値であることを示している。また、変数ではない条件値自体と、情報管理データから取得した条件値とを別画面で表示するようにしてもよい。
以上より、変形例3における画像形成装置では、ユーザーが意図していない条件値で設定されていないかを確認することができる。
なお、このとき、情報管理データから取得した条件値が、ユーザーが意図しない条件値であった場合、例えば、情報管理データのデータが更新されておらず、昔の上司のアドレスが表示された場合には、この条件値を修正できるようにしてもよい。これより、さらに、ユーザーが意図する条件値でマクロを実行することができる。
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、上記変形例以外にも種々の変形・変更が可能である。
なお、各実施例及び各変形例において説明した処理内容をプログラムとし、このプログラムをコンピュータに実行させて前述した処理を画像形成装置に実行させることも可能である。また、このプログラムを記録媒体に記録し、このプログラムが記録された記録媒体をコンピュータに読み取らせて、前述した処理を画像形成装置に実行させることも可能である。