(57)【特許請求の範囲】
【請求項１】
ネットワークを介して一台以上の他の機器と接続された画像形成装置であって、
当該画像形成装置のユーザのユーザ情報を記憶するユーザ情報記憶手段と、
前記他の機器が記憶するユーザ情報のうち、予め定められたソートキーが指定するユーザ情報の属性値を要求するソート用属性値要求手段と、
自機のユーザ情報の属性値と、前記他の機器から取得した属性値をマージし前記ソートキーにてソートして、第一のキャッシュを作成する第一のキャッシュ作成手段と、
ユーザ情報を表示する画面の画面遷移情報及び画面毎に表示対象のユーザ情報の範囲を指定するユーザ表示情報が登録された画面構成情報の記憶手段と、
現在表示中の画面から遷移しうる画面毎に表示されるユーザ情報を、前記第一のキャッシュにおける属性値の順番と前記画面構成情報に基づき特定するユーザ情報特定手段と、
前記ユーザ情報特定手段が特定したユーザ情報を前記他の機器に要求するユーザ情報要求手段と、
前記他の機器から取得したユーザ情報を第一のキャッシュと同じ順番にソートして第二のキャッシュを作成する第二のキャッシュ作成手段と、
を有することを特徴とする画像形成装置。
【請求項２】
前記ユーザ情報要求手段は、前記ユーザ情報特定手段が特定した画面毎に表示されるユーザ情報を取得すると、前記第二のキャッシュに記憶された旨を画面毎にキャッシュ有無テーブルに登録し、
前記ユーザ情報要求手段は、前記キャッシュ有無テーブルに基づき、ユーザ情報を前記他の機器に要求するか否かを判定する、ことを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記ユーザ情報特定手段は、前記ユーザ表示情報が定める一画面に表示可能なユーザ情報の上限数、及び、前記第一のキャッシュに記憶されたユーザ情報のうち前記ユーザ表示情報が定める一画面の表示対象のユーザ情報の数に基づき、一画面のページ数を決定し、
前記ユーザ情報要求手段は、ページ毎に、前記第二のキャッシュにユーザ情報が記憶されたか否かを前記キャッシュ有無テーブルに登録する、
ことを特徴とする請求項２記載の画像形成装置。
【請求項４】
前記ユーザ情報特定手段は、現在の画面が表示するページに基づき前記キャッシュ有無テーブルを参照し、次ページ又は前ページのユーザ情報が前記第二のキャッシュに記憶されているか否かを判定する、ことを特徴とする請求項３記載の画像形成装置。
【請求項５】
前記第二のキャッシュ作成手段は、前記第二のキャッシュが実装されるメモリに空きがなくなると、前記第二のキャッシュに記憶されたユーザ情報を消去する、
ことを特徴とする請求項１〜４いずれか１項記載の画像形成装置。
【請求項６】
前記ユーザ情報要求手段は、現在表示中の画面から遷移しうる画面で表示されるユーザ情報の少なくとも一部を、遷移しうる画面の全てについて表示要求が受け付けられるまでに前記他の機器に要求し、
前記第二のキャッシュ作成手段は、遷移しうる画面の全てについて表示要求が受け付けられるまでに、前記他の機器から取得した少なくとも一部のユーザ情報を前記第二のキャッシュに記憶する、ことを特徴とする請求項１〜５いずれか１項記載の画像形成装置。
【請求項７】
前記ユーザ情報は、電子メールのメールアドレス、ＦＡＸ番号、又は、フォルダ情報である、ことを特徴とする請求項１〜６いずれか１項記載の画像形成装置。
【請求項８】
前記ソートキーが指定する属性はユーザの名前である、ことを特徴とする請求項１〜７いずれか１項記載の画像形成装置。
【請求項９】
前記第一のキャッシュ作成手段は、前記ソートキーが指定する属性の属性値と共に、前記他の機器の識別情報を取得し、前記第一のキャッシュに前記属性値と対応づけて記憶する、ことを特徴とする請求項１〜８いずれか１項記載の画像形成装置。
【請求項１０】
ユーザ情報の選択を受け付けた場合、ユーザ毎に利用頻度を記録する利用頻度記録手段と、
前記利用頻度に基づき前記他の機器に該ユーザのユーザ情報の移管を要求するか否かを判定する移管要求判定手段と、
移管要求に対し、前記他の機器が移管を許可した場合に、前記他の機器から取得したユーザ情報を自機に登録する登録手段と、
を有することを特徴とする請求項１〜９いずれか１項記載の画像形成装置。
【請求項１１】
前記利用頻度は、所定の時間内のユーザ情報へのアクセス回数であること、を特徴とする請求項１０記載の画像形成装置。
【請求項１２】
前記所定の時間の設定を受け付ける時間設定受け付け手段を有する、ことを特徴とする請求項１１記載の画像形成装置。
【請求項１３】
前記移管要求判定手段は、前記他の機器からユーザ情報の移管を要求するか否かの判定基準を取得する、ことを特徴とする請求項１０〜１２いずれか１項記載の画像形成装置。
【請求項１４】
前記移管要求判定手段は、ユーザ情報の選択を受け付ける毎に、前記他の機器に該ユーザのユーザ情報の移管を要求するか否かを判定する、
ことを特徴とする請求項１０〜１３いずれか１項記載の画像形成装置。
【請求項１５】
前記移管要求判定手段は、予め定められたタイミングになると、前記他の機器に該ユーザのユーザ情報の移管を要求するか否かを判定する、
ことを特徴とする請求項１０〜１３いずれか１項記載の画像形成装置。
【請求項１６】
請求項１０〜１５いずれか１項記載の画像形成装置から移管要求を取得する画像形成装置であって、
前記移管要求のあったユーザ情報が一定の期間、移管されたことがない場合、移管を許可する移管可否判定手段を有する、ことを特徴とする画像形成装置。
【請求項１７】
前記移管可否判定手段は、前記移管要求のあったユーザ情報に対し自機が所定の時間内に受け付けたアクセス要求と閾値を比較して、移管を許可するか否かを判定する、
ことを特徴とする請求項１６記載の画像形成装置。
【請求項１８】
前記移管可否判定手段は、前記移管要求を送信した画像形成装置の操作者がすでに認証済みであることを示す認証情報を受信した場合、又は、当該画像形成装置による前記移管要求を送信した画像形成装置の認証が成立した場合、移管を許可すると判定する、
ことを特徴とする請求項１６記載の画像形成装置。
【請求項１９】
前記移管可否判定手段が移管を許可した場合、移管要求された当該画像形成装置が記憶するユーザ情報にテンポラリーデータであることを示す情報を付加するデータ操作手段を有する、ことを特徴とする請求項１６記載の画像形成装置。
【請求項２０】
ネットワークを介して一台以上の機器が接続された機器システムであって、
第一の機器は、
当該第一の機器のユーザのユーザ情報を記憶するユーザ情報記憶手段と、
第二の機器が記憶するユーザ情報のうち、予め定められたソートキーが指定するユーザ情報の属性値を要求するソート用属性値要求手段と、
自機のユーザ情報の属性値と、前記第二の機器から取得した属性値をマージし前記ソートキーにてソートして、第一のキャッシュを作成する第一のキャッシュ作成手段と、
ユーザ情報を表示する画面の画面遷移情報及び画面毎に表示されるユーザ情報が指定されたユーザ表示情報が登録された画面構成情報の記憶手段と、
現在表示中の画面から遷移しうる画面と該画面で表示されるユーザ情報を、前記第一のキャッシュにおける属性値の順番と前記画面構成情報に基づき特定するユーザ情報特定手段と、
前記ユーザ情報特定手段が特定したユーザ情報を前記第二の機器に要求するユーザ情報要求手段と、
前記第二の機器から取得したユーザ情報を第一のキャッシュと同様に並び替えて第二のキャッシュを作成する第二のキャッシュ作成手段と、を有し、
前記第二の機器は、前記第一の機器から要求されたユーザ情報を前記第一の機器に送信する、ことを特徴とする機器システム。
【請求項２１】
前記第一の機器は、
ユーザ情報の選択を受け付けた場合、ユーザ毎に利用頻度を記録する利用頻度記録手段と、
前記利用頻度に基づき前記第二の機器に該ユーザのユーザ情報の移管を要求するか否かを判定する移管要求判定手段と、
移管要求に対し、前記第二の機器が移管を許可した場合に、前記第二の機器から取得したユーザ情報を自機に登録する登録手段と、
を有することを特徴とする請求項２０記載の機器システム。
【請求項２２】
ネットワークを介して一台以上の他の機器と接続され、装置のユーザのユーザ情報を記憶するユーザ情報記憶手段と、ユーザ情報を表示する画面の画面遷移情報及び画面毎に表示されるユーザ情報が指定されたユーザ表示情報が登録された画面構成情報の記憶手段と、を有する装置の情報収集方法であって、
ソート用属性値要求手段が、前記他の機器が記憶するユーザ情報のうち、予め定められたソートキーが指定するユーザ情報の属性値を要求するステップと、
第一のキャッシュ作成手段が、自機のユーザ情報の属性値と、前記他の機器から取得した属性値をマージし前記ソートキーにてソートして、第一のキャッシュを作成するステップと、
ユーザ情報特定手段が、現在表示中の画面から遷移しうる画面と該画面で表示されるユーザ情報を、前記第一のキャッシュにおける属性値の順番と前記画面構成情報に基づき特定するステップと、
ユーザ情報要求手段が、前記ユーザ情報特定手段が特定したユーザ情報を前記他の機器に要求するステップと、
第二のキャッシュ作成手段が、前記他の機器から取得したユーザ情報を第一のキャッシュと同様に並び替えて第二のキャッシュを作成するステップと、
を有することを特徴とする情報収集方法。
【請求項２３】
ネットワークを介して一台以上の他の機器と接続され、装置のユーザのユーザ情報を記憶するユーザ情報記憶手段と、ユーザ情報を表示する画面の画面遷移情報及び画面毎に表示されるユーザ情報が指定されたユーザ表示情報が登録された画面構成情報の記憶手段と、を有する装置に、
前記他の機器が記憶するユーザ情報のうち、予め定められたソートキーが指定するユーザ情報の属性値を要求するソート用属性値要求ステップと、
自機のユーザ情報の属性値と、前記他の機器から取得した属性値をマージし前記ソートキーにてソートして、第一のキャッシュを作成する第一のキャッシュ作成ステップと、
現在表示中の画面から遷移しうる画面と該画面で表示されるユーザ情報を、前記第一のキャッシュにおける属性値の順番と前記画面構成情報に基づき特定するユーザ情報特定ステップと、
前記ユーザ情報特定ステップにより特定されたユーザ情報を前記他の機器に要求するユーザ情報要求ステップと、
前記他の機器から取得したユーザ情報を第一のキャッシュと同様に並び替えて第二のキャッシュを作成する第二のキャッシュ作成ステップと、を実行させるプログラム。
【請求項２４】
前記装置に、
ユーザ情報の選択を受け付けた場合、ユーザ毎に利用頻度を記録する利用頻度記録ステップと、
前記利用頻度に基づき前記他の機器に該ユーザのユーザ情報の移管を要求するか否かを判定する移管要求判定ステップと、
移管要求に対し、前記他の機器が移管を許可した場合に、前記他の機器から取得したユーザ情報を自機に登録する登録ステップと、を実行させる請求項２３記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続された複数の機器が記憶するユーザ情報を共有可能な画像形成装置、機器システム、情報収集方法及びプログラムに関する。
【背景技術】
【０００２】
複数のＭＦＰ（Multifunction Peripheral）をネットワークに接続して、ＭＦＰ同士が情報を共有する機器連携と呼ばれる機能が知られている。ＭＦＰは、例えばプリンタ機能やコピー機能だけでなく、スキャナ装置やＦＡＸ装置を有しており、ユーザは自機Ａを操作して他機Ｂが記憶するユーザ情報を呼び出し、他機Ｂが記憶するユーザのアドレスを選択してＥメールやＦＡＸを送信することができる。
【０００３】
機器連携のためにはこのようにユーザ情報を共有しておいた方が操作性を向上させることが多く、各ＭＦＰが機器連携の対象の他のＭＦＰのユーザ情報を互いに保持する（以下、「キャッシュする」という）ことが考えられている。
【０００４】
機器連携の対象のＭＦＰが増えると、１台のＭＦＰがキャッシュすべきユーザ情報も増えてしまう。しかし、ＭＦＰのメモリには制限あるので、この制限が機器連携可能なＭＦＰの数を制限するという状況が生じてしまう。ＭＦＰのメモリ容量を大きくすることはできるが、コスト増になってしまう。
【０００５】
そこでＭＦＰがキャッシュするユーザ情報を低減する技術が考案されている（例えば、特許文献１参照。）。特許文献１には、ユーザ情報の一部のみを限定して取得する画像形成装置が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された画像形成装置は、ユーザが必要な情報（例えば、名前に"あいう"がつく）を指定してキャッシュするので、別のユーザにとってその情報が有用であるとは限らないという問題がある。また、一度はユーザが必要な情報を指示する必要があるので、操作性が低下するおそれもある。
【０００７】
本発明は、上記課題に基づき、ユーザが望むユーザ情報へのアクセス速度を低下させることなく、メモリ容量の増大を抑制できる画像形成装置、機器システム、情報収集方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、ネットワークを介して一台以上の他の機器と接続された画像形成装置であって、当該画像形成装置のユーザのユーザ情報を記憶するユーザ情報記憶手段と、前記他の機器が記憶するユーザ情報のうち、予め定められたソートキーが指定するユーザ情報の属性値を要求するソート用属性値要求手段と、自機のユーザ情報の属性値と、前記他の機器から取得した属性値をマージし前記ソートキーにてソートして、第一のキャッシュを作成する第一のキャッシュ作成手段と、ユーザ情報を表示する画面の画面遷移情報及び画面毎に表示対象のユーザ情報の範囲を指定するユーザ表示情報が登録された画面構成情報の記憶手段と、現在表示中の画面から遷移しうる画面毎に表示されるユーザ情報を、前記第一のキャッシュにおける属性値の順番と前記画面構成情報に基づき特定するユーザ情報特定手段と、前記ユーザ情報特定手段が特定したユーザ情報を前記他の機器に要求するユーザ情報要求手段と、前記他の機器から取得したユーザ情報を第一のキャッシュと同じ順番にソートして第二のキャッシュを作成する第二のキャッシュ作成手段と、を有することを特徴とする。
【発明の効果】
【０００９】
ユーザが望むユーザ情報へのアクセス速度を低下させることなく、メモリ容量の増大を抑制できる画像形成装置、機器システム、情報収集方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】ＭＦＰ（Multifunction Peripheral）を説明する図の一例である。
【図２】機器連携を説明する図の一例である。
【図３】機器連携機能を利用する際のアプリケーションとサービスを模式的に説明する図の一例である。
【図４】機器システムの概略構成図の一例である。
【図５】ユーザ情報をキャッシュした機器システムの概略構成図の一例である。
【図６】ＭＦＰのハードウェア構成図の一例である。
【図７】操作パネルの一例である。
【図８】ＭＦＰの機能ブロック図の一例である。
【図９】ＭＦＰのより詳細な機能ブロック図の一例である。
【図１０】各ＭＦＰのユーザ情報の一例を示す図である。
【図１１】ユーザが操作するＭＦＰ＿Ａがユーザ情報を取得するシーケンス図の一例を示す。
【図１２】連携対象機器登録画面の一例を示す図である。
【図１３】ソートキーの設定画面の一例を示す図である。
【図１４】ソート用キャッシュの一例を示す図である。
【図１５】画面構成情報、一覧表示用キャッシュの一例を示す図である。
【図１６】一覧表示用キャッシュを画面に表した図の一例である。
【図１７】アドレス情報管理部がソート用キャッシュと一覧表示用キャッシュを生成する手順を示すフローチャート図の一例である。
【図１８】ある画面が表示されている間に、生成される一覧表示用キャッシュの生成手順の一例を示すフローチャート図の一例である。
【図１９】画面ＩＤリストアップテーブルの一例である。
【図２０】画面ＩＤリストアップテーブルの一例である。
【図２１】ユーザがアドレス情報の詳細情報を表示させるための画面の一例である。
【図２２】「メールアドレス」タグが押下された場合に表示される画面の一例を示す。
【図２３】機器システムの機能ブロック図の一例である。
【図２４】アドレス情報の詳細情報を表示する手順を示すシーケンス図の一例である。
【図２５】ＭＦＰ＿ＡとＭＦＰ＿Ｂのアドレス情報の一例を説明する図である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【実施例１】
【００１２】
図１は、本実施形態のＭＦＰ（Multifunction Peripheral）の概略を説明する図の一例である。図１の画面は、ユーザが「送信」という機能を利用する際にＭＦＰが表示する画面の一例を示す。「送信」の機能では、電子メールやフォルダ宛の送信が可能なので、「メール」タブ・「フォルダ」タブが表示されている。
【００１３】
この画面は、ユーザによる電子メールのメールアドレスの入力を支援するため、常用のユーザ名の一覧が表示されている。ユーザはユーザ名を選択することができ、ＭＦＰは選択されたユーザ名に紐付けられたメールアドレスを記憶手段から読み出す。
【００１４】
このようなユーザ情報を提供可能な画面において、本実施形態のＭＦＰは表示中の画面から遷移しうる画面で表示するユーザ情報のみを、連携対象のＭＦＰから取得してキャッシュする。例えば常用の画面からは、ユーザは「あ」「か」「さ」「た」「な」「は」「ま」「や」「ら」「わ」のいずれかのボタンを選択できるので、この画面（常用）からは、
名前の先頭が「あ」行のユーザ名の一覧画面
名前の先頭が「か」行のユーザ名の一覧画面
名前の先頭が「さ」行のユーザ名の一覧画面
名前の先頭が「た」行のユーザ名の一覧画面
名前の先頭が「な」行のユーザ名の一覧画面
名前の先頭が「は」行のユーザ名の一覧画面
名前の先頭が「ま」行のユーザ名の一覧画面
名前の先頭が「や」行のユーザ名の一覧画面
名前の先頭が「ら」行のユーザ名の一覧画面
名前の先頭が「わ」行のユーザ名の一覧画面
のいずれかに遷移しうる。このため、ＭＦＰは、名前の先頭が「あ」〜「わ」行のユーザの上位１２件のユーザ情報のみを連携対象のＭＦＰから取得してキャッシュする。１２件とは１画面に表示されるユーザ名の数の一例であり、このＭＦＰは１３件以上のユーザ名を一度に表示できないものとする。
【００１５】
ＭＦＰは次に遷移しうる画面のユーザ情報をキャッシュしているので、ユーザが「あ」〜「わ」のいずれかのボタンを押下した場合、他のＭＦＰに問い合わせることなくユーザ情報からユーザ名の一覧を表示することができる。また、ＭＦＰがこのようにユーザ情報をキャッシュしても、遷移しうる画面で提供されるユーザ情報しかキャッシュしないので、大きなメモリ容量を必要とすることもない。例えば、最大でも１２×１０件のユーザ情報をキャッシュできればよい。また、ユーザ情報にはメールアドレス、ＦＡＸ番号、宛先フォルダ等、「送信」の機能で使用する以外の情報（後述する詳細情報）が含まれるが、キャッシュする情報はＭＦＰが利用するユーザ情報の一部とすることができるので、メモリ容量が増大することを抑制できる。
【００１６】
〔機器連携について〕
機器連携について説明する。機器連携という言葉は、ＭＦＰ＿Ａが、ＭＦＰ＿Ｂが記憶する情報を利用するだけの態様も含むし、ＭＦＰ＿ＡがＭＦＰ＿Ｂの機能を利用してユーザにサービスを提供する態様も含む。ＭＦＰ＿Ａが、ＭＦＰ＿Ｂが記憶する情報を利用すると共に、ＭＦＰ＿ＡがＭＦＰ＿Ｂの機能を利用してユーザにサービスを提供する態様もある。本実施形態は、主にＭＦＰ＿Ａが、ＭＦＰ＿Ｂが記憶するユーザ情報を利用する際のユーザ情報のキャッシュ方法に特徴があるが、ＭＦＰ＿ＡがＭＦＰ＿Ｂの機能を利用してサービスを提供する態様について説明しておく。
【００１７】
図２は、機器連携を説明する図の一例である。ＭＦＰ１００はアプリケーション毎に動作することが一般的である。ＭＦＰ１００のアプリケーションとは、ＭＦＰ１００が備える複数の入力手段の１つと複数の出力手段の１つの組み合わせに応じて、一連の処理を提供するソフトウェアである。アプリケーションは、ＭＦＰ１００の「機能」とほぼ同じ意味である。
【００１８】
アプリケーションには種々のものがあるが、図２では、ＭＦＰ＿Ａがコピーアプリを、ＭＦＰ＿Ｂがコピーアプリ及び送信アプリを有する。例えば、コピーアプリの入力手段はスキャナエンジンによる原稿の読み取り、出力手段はプロッタエンジンによる紙媒体への印刷である。また、例えば、送信アプリの入力手段は、スキャナエンジンによる原稿の読み取り、出力手段は画像データの記憶装置（ＰＣのフォルダなど）への記憶、電子メールによる送信、又は、ＦＡＸによる送信である。このように、入力手段と出力手段の組み合わせにより、ＭＦＰ１００は種々のアプリケーションをユーザに提供できる。
【００１９】
図２のようなスタンドアロン型のＭＦＰ＿Ａ，Ｂのアプリケーションは、アプリケーションとして動作するために必要ないくつかのサービスを組み合わせて実行する。ＭＦＰ＿Ａにはコピーアプリに必要な、読取りサービス及び印刷サービスが登録されている。ＭＦＰ＿Ｂにはこれらに加えさらに、送信アプリに必要な送信サービスが登録されている。
【００２０】
ＭＦＰ＿ＡとＭＦＰ＿Ｂのアプリケーションやサービスは、同一の設計思想で設計されている。この結果、各アプリケーションは、ＡＰＩを介して各種のサービスを呼び出すことで、サービスを利用できるようになっている。図２のＭＦＰ＿Ａ、Ｂのコピーアプリは、自機の読み取りサービスを利用して原稿を読み取り、自機の印刷サービスを利用して生成した画像データを用紙に印刷する。また、ＭＦＰ＿Ｂの送信アプリは、自機の読み取りサービスを利用して原稿を読み取り、自機の送信サービスを利用して生成した画像データをフォルダに送信する。ＭＦＰ＿Ｂにおいて、コピーアプリとフォルダ送信アプリは同じ読取りサービスを利用する。
【００２１】
このようなＭＦＰ内のサービスの利用関係を、ＭＦＰ間で可能にするのが機器連携機能である。図３は、機器連携機能を利用する際のアプリケーションとサービスを模式的に説明する図の一例を示す。図３において図２と同一部には同一の符号を付しその説明は省略する。ＭＦＰ＿Ａでは送信アプリ及び送信サービスが利用可能でないため、ＭＦＰ＿ＡはＭＦＰ＿Ｂの送信アプリ及び送信サービスを利用する。
【００２２】
ユーザはまずＭＦＰ＿Ａを操作してＭＦＰ＿Ｂを連携対象に指定する。この時点で、ＭＦＰ＿ＡはＭＦＰ＿Ｂからユーザ情報をキャッシュする。そして、ユーザがＭＦＰ＿Ａを操作して例えば"連携アプリ"を起動すると、連携対象のＭＦＰ＿Ｂの機能（アプリケーション）の選択画面等を表示することができる。
【００２３】
ユーザはＭＦＰ＿Ｂの送信アプリを選択すると、送信先を指定することができるので、ここでキャッシュしたユーザ情報を利用して送信先（例えばフォルダ名（＝ユーザ名）、メールアドレス、ＦＡＸ番号）を指定する。ＭＦＰ＿Ｂの送信アプリは、ＭＦＰ＿Ａの読み取りサービスを利用して画像データを生成し、ＭＦＰ＿Ｂの送信サービスを利用して画像データを指定されたユーザの送信先に送信する。
【００２４】
このように、ユーザはＭＦＰ＿Ａを操作するだけで、連携可能なＭＦＰ＿Ｂの機能を利用してサービスの提供を受けることが可能になる。機器連携には他に、例えば以下のような態様がある。
・ＭＦＰ＿Ａの読み取りサービスが読み取って生成した画像データを、ＭＦＰ＿Ｂの印刷サービスが印刷する。
・ＭＦＰ＿Ａの読み取りサービスが読み取って生成した画像データを、ＭＦＰ＿Ｂの読み取りサービスが所定のフォーマットに変換し、ＭＦＰ＿Ａの送信サービスが送信する。
・ＭＦＰ＿Ａの読み取りサービスが読み取って生成した画像データを、ＭＦＰ＿Ｂが記憶するユーザ情報のユーザを宛先に、ＭＦＰ＿Ａの送信サービスが送信する。
【００２５】
〔構成〕
図４は、機器システム２００の概略構成図を示す。４つのＭＦＰ（区別する場合、ＭＦＰ＿Ａ〜ＭＦＰ_Ｄという）１００がネットワークを介して接続されている。ネットワークは、ＬＡＮ、ＶＬＡＮ（Virtual LAN）、ＷＡＮ、又は、インターネットなどであり、有線か無線かは問わない。
【００２６】
ＭＦＰ１００は、コピー機、プリンタ、スキャナ装置、ＦＡＸ装置又はこれらの装置の一つ以上の機能を備えた画像形成装置と呼ばれるものである。ＭＦＰ＿Ａ〜Ｄは連携機能を有していれば、同じ装置でも異なる装置でもよい。
【００２７】
各ＭＦＰ＿Ａ〜Ｄは、それぞれアドレス情報（以下、区別する場合、アドレス情報Ａ〜Ｄという）及びアカウント情報（区別するアカウント情報Ａ〜Ｄという）を記憶している。アドレス情報とアカウント情報（これらを併せてそれぞれユーザ情報１２Ａ〜１２Ｄという）については後述する。
【００２８】
ＭＦＰ＿ＡにてユーザがＭＦＰ＿Ｂ〜Dのユーザ情報１２Ｂを利用できるようにするため、ＭＦＰ＿Ａは、ユーザ情報１２Ａとユーザ情報１２Ｂ〜Dをマージしてキャッシュする。同様に、ＭＦＰ＿Ｂは、ユーザ情報１２Bとユーザ情報１２Ａ、１２Ｃ，１２Ｄをマージしてキャッシュし、ＭＦＰ_Ｃは、ユーザ情報１２Ｃとユーザ情報１２Ａ、１２Ｂ、１２Ｄをマージしてキャッシュし、ＭＦＰ_Ｄは、ユーザ情報１２Ｄとユーザ情報１２Ａ〜１２Ｃをマージしてキャッシュする。
【００２９】
図５は、ユーザ情報１２Ａ〜１２Ｄをキャッシュした機器システム２００の概略構成図の一例を示す。図示するように、ＭＦＰ＿Ａ〜Dがそれぞれユーザ情報１２Ａ〜Ｄをマージしキャッシュするので、ＭＦＰ＿Ａ〜Dが同じキャッシュ情報１１をキャッシュすることになる。キャッシュ情報１１は、後述するソート用キャッシュと一覧表示用キャッシュである。
【００３０】
ユーザがＭＦＰ＿Ａに機器連携を指示した場合、ユーザがＭＦＰ＿Ｂ〜Dを操作して機器連携によるサービスを要求する可能性も高くなるので、ＭＦＰ＿Ａ〜Dがそれぞれ同じキャッシュ情報１１をキャッシュすることで、ユーザがＭＦＰ＿Ｂ〜Dを操作した場合もデータアクセスを高速化できる。
【００３１】
なお、ユーザが操作したＭＦＰ＿Ａだけがユーザ情報１２Ａ〜１２Ｄをキャッシュしてもよい。ユーザが機器連携のために操作したＭＦＰ１００だけがユーザ情報１２Ａ〜１２Ｄをキャッシュするか、機器連携の対象のＭＦＰ１００もユーザ情報１２Ａ〜１２Ｄをキャッシュするかは、予め各ＭＦＰ毎に設定できるようになっている。例えば、出力専用のＭＦＰ１００がある場合、ユーザはそのＭＦＰ１００を操作しないので、キャッシュさせる必要がない。
【００３２】
図６は、ＭＦＰ１００のハードウェア構成図の一例を示す。ＭＦＰ１００は、コントローラ１２０と、操作パネル１３０と、ＦＣＵ（ファクシミリコントロールユニット）１４０と、スキャナエンジン１５０及びプロッタエンジン１６０が有する。
【００３３】
コントローラ１２０は、ＣＰＵ１０１と、ＡＳＩＣ１１３と、ＮＢ（ノースブリッジ）１０２と、ＳＢ（サウスブリッジ）１０６と、ＭＥＭ−Ｐ（システムメモリ）１０３と、ＭＥＭ−Ｃ（ローカルメモリ）１０４と、ＨＤＤ（ハードディスクドライブ）２７と、メモリカードスロット１１１と、ＮＩＣ（ネットワークインタフェースコントローラ）１０７と、ＵＳＢデバイス１０８と、ＩＥＥＥ１３９４デバイス１０９と、セントロニクスデバイス１１０とを有する。
【００３４】
ＣＰＵ１０１は、種々の情報処理を実行するためのＩＣであり、アプリケーションプログラムやサービスを提供するプログラムをＵＮＩＸ（登録商標）等のＯＳによりプロセス単位で並列的に実行する。ＡＳＩＣ１１３は、画像処理用のＩＣである。ＮＢ１０２は、ＣＰＵ１０１とＡＳＩＣ１１３を接続するためのブリッジである。ＳＢ１０６は、ＮＢ１０２と周辺機器等を接続するためのブリッジである。ＡＳＩＣ１１３とＮＢ１０２は、ＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ Ｇｒａｐｈｉｃｓ Ｐｏｒｔ）を介して接続されている。
【００３５】
ＭＥＭ−Ｐ１０３は、ＮＢ１０２に接続されたメモリである。ＭＥＭ−Ｃ１０４は、ＡＳＩＣ１１３に接続されたメモリである。ＨＤＤ２７は、ＡＳＩＣ１１３に接続されたストレージであり、画像データ蓄積・文書データ蓄積・プログラム蓄積・フォントデータ蓄積・フォームデータ蓄積等を行うために使用される。図ではＨＤＤ２７にユーザ情報管理プログラム１１５のみ示した。
【００３６】
メモリカードスロット１１２は、ＳＢ１０６に接続され、メモリカード１１２をセット（挿入）するために使用される。メモリカード１１２は、ＵＳＢメモリ等のフラッシュメモリであり、ユーザ情報管理プログラム１１５を配布するために使用される。また、ユーザ情報管理プログラム１１５は所定のサーバからＭＦＰ１００にダウンロードして配布することもできる。
【００３７】
ＮＩＣ１０７は、ネットワーク等を介してＭＡＣアドレス等を使用したデータ通信を行うためのコントローラである。ＵＳＢデバイス１０８は、ＵＳＢ規格に準拠したシリアルポートを提供するためのデバイスである。ＩＥＥＥ１３９４デバイス１０９は、ＩＥＥＥ１３９４規格に準拠したシリアルポートを提供するためのデバイスである。セントロニクスデバイス１１０は、セントロニクス仕様に準拠したパラレルポートを提供するためのデバイスである。ＮＩＣ１０７と、ＵＳＢデバイス１０８と、ＩＥＥＥ１３９４デバイス１０９と、セントロニクスデバイス１１０と、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ Ｃｏｍｐｏｎｅｎｔ Ｉｎｔｅｒｃｏｎｅｃｔ）バスを介してＮＢ１０２とＳＢ１０６に接続されている。
【００３８】
操作パネル１３０は、ユーザがＭＦＰ１００に入力を行うためのハードウェア（操作部）であると共に、ＭＦＰ１００がオペレータに可視情報を提供するためのハードウェア（表示部）である。操作パネル１３０は、ＡＳＩＣ１１３に接続されている。ＦＣＵ１４０と、スキャナエンジン１５０と、プロッタエンジン１６０は、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ Ｃｏｍｐｏｎｅｎｔ Ｉｎｔｅｒｃｏｎｅｃｔ）バスを介してＡＳＩＣ１１３に接続されている。
【００３９】
スキャナエンジン１５０は、コンタクトガラスに載置された原稿を光学的に走査して、その反射光をＡ／Ｄ変換して画像処理を施し、所定の解像度のデジタルデータ（以下、画像データという）を生成する。
【００４０】
プロッタエンジン１６０は、例えばタンデム型の感光ドラムを有し、上記の画像データやユーザＰＣから受信したＰＤＬデータに基づきレーザビームを変調し感光ドラムを走査して潜像を形成する。潜像にトナーを付着して現像した１ページ毎の画像を用紙に熱と圧力で転写する。
【００４１】
ＦＣＵ１４０は、ＮＩＣ１０７を介してネットワークに接続し例えばＴ.３７，Ｔ.３８の規格に対応した通信手順、又は、公衆通信網に接続し例えばＧ３、Ｇ４規格に対応した通信手順、に従い画像データの送受信を行う。また、ＭＦＰ１００の電源がＯＦＦのときに画像データを受信しても、プロッタエンジン１６０を起動して画像データを用紙に印刷することができる。
【００４２】
図７は、操作パネル１３０の一例を示す。操作パネル１３０は、固定されたハードキーである、初期設定キー１３１、コピーキー１４２、スキャナキー１４３、プリンタキー１４４、送信キー１４５、Ｄ−Ｂｏｘキー１４６、テンキー１３６、クリア／ストップキー１３５、スタートキー１３７、及び、液晶表示部１３２を有する。
【００４３】
液晶表示部１３２は、タッチパネルを一体に有し、タッチパネルには各種の画面（ＵＩ）に応じてボタンが形成される。液晶表示部１３２の表示原理は液晶にかぎられることなく、例えば有機ＥＬ等でもよい。
【００４４】
初期設定キー１３１は、各アプリケーション毎にユーザが画面表示や機能の初期値を設定したり、認証機能のオン／オフ等をしたり、各種設定をするために使用される。コピーキー１４２、スキャナキー１４３、プリンタキー１４４、送信キー１４５、及び、Ｄ−Ｂｏｘキー１４６は、各アプリケーションを切り替えるためのキーである。
【００４５】
テンキー１３６は印刷枚数やＦＡＸ番号やメールアドレス等の宛先をユーザが入力するためのキーである。クリア／ストップキー１３５は、入力した数値を取り消したり、読み取りや印刷を中断するためのキーである。スタートキー１３７は、コピーの実行やＦＡＸ送信を開始するための実行キーである。
【００４６】
図８は、ＭＦＰ１００の機能ブロック図の一例を示す。ＭＦＰ１００は、操作パネル１３０、ＵＩ表示制御部２２、アドレス情報管理部２３、ＲＡＭ２６、ＨＤＤ２７、ネットワーク通信部２４及びローカル保存データ管理部２５を有する。
【００４７】
ＵＩ表示制御部２２は、操作パネル１３０への画面表示を制御する。ＵＩ表示制御部２２は、操作パネル１３０が受け付けたユーザの操作に応じて、アドレス情報管理部２３に表示用データの取得を要求する。アドレス情報管理部２３は、キャッシュ情報１１を管理する。すなわち、機器連携のため、他機と自機のＨＤＤ２７からユーザ情報を取得し，データアクセス高速化のためにキャッシュする。ＵＩ表示制御部２２から要求があると、キャッシュしているユーザ情報の一部をＵＩ表示制御部２２に出力する。
【００４８】
ネットワーク通信部２４は、NICやプロトコルスタックであり、TCP／IPによる他のＭＦＰ等との通信を提供する。なお、これより上層のプロトコルの処理は各アプリケーションが受け持つ。
【００４９】
ローカル保存データ管理部２５は、ＨＤＤ２７に保存されたデータ（特にユーザ情報１２Ａ〜１２Ｄ）の読み書きを行う。ＨＤＤ２７はＭＦＰ１００がローカルに有する不揮発メモリの一例であり、例えばフラッシュメモリで構成することもできる。ＨＤＤ２７には各ＭＦＰが個別に有するユーザ情報A〜Dの１つが記憶されている。また、ＨＤＤ２７には後述する画面構成情報３３が記憶されている。
【００５０】
ＲＡＭ２６は、ユーザ情報１２Ａ〜１２Ｄをキャッシュするための揮発性メモリの一例である。図６では例えばＭＥＭ−Ｐ１０３が相当する。ＲＡＭ２６にはキャッシュされたキャッシュ情報１１が記憶される。図６では説明のため、キャッシュ情報１１を一覧表示用キャッシュ３２とした。キャッシュ情報１１をキャッシュするメモリを揮発性メモリとしたのはアクセスが高速なためであるので、アクセスが高速であれば不揮発性のメモリにキャッシュ情報１１をキャッシュしてもよい。
【００５１】
図９は、ＭＦＰ１００のより詳細な機能ブロック図の一例である。これらの機能は、ユーザ情報管理プログラム１１５により実現され、例えばアドレス情報管理部２３が有する。ＭＦＰ１００は、ソート用属性値要求手段４１、ソート用キャッシュ作成手段４２、ユーザ情報特定手段４３、ユーザ情報要求手段４４、及び、一覧表示用キャッシュ作成手段４５、を有する。
【００５２】
ソート用属性値要求手段４１は、他のＭＦＰ１００に対し、ソートキーが指定する属性の属性値のみを要求する。ソート用キャッシュ作成手段４２は、自機のユーザ情報１２の属性値と、他のＭＦＰ１００から取得した属性値をマージしてソートキーにてソートすることでソート用キャッシュ３１を作成する。
【００５３】
ユーザ情報特定手段４３は、現在表示中の画面から遷移しうる画面と画面で表示されるユーザ情報を、ソート用キャッシュ３１における属性値の順番と画面構成情報３３に基づき特定する。ユーザ情報要求手段４４は、ユーザ情報特定手段４３が特定したユーザ情報を他のＭＦＰ１００に要求する。一覧表示用キャッシュ作成手段４５は、他のＭＦＰ１００から取得したユーザ情報から一覧表示用キャッシュ３２を作成する。
【００５４】
〔ユーザ情報の一例〕
図１０は、各ＭＦＰ１００のユーザ情報１２Ａ〜１２Ｄの一例を示す図である。ユーザ情報のうち、アドレス情報には、ＦＡＸ送信やメール送信時の画像データの宛先を示す宛先情報が登録されており、アカウント情報には、ＭＦＰ１００へのログインに使用する「ＩＤ」「パスワード」や各機能で設定可能な設定値がまとめて登録されている。
【００５５】
図１０では、アドレス情報として、ＦＡＸ番号又はメールアドレスの少なくとも一方が登録されているが、ユーザＰＣのＩＰアドレスやフォルダ情報でもよい。「名前」「ＦＡＸ番号」や「メールアドレス」を「属性」と呼ぶ場合がある。
【００５６】
また、図１０では、アカウント情報として、「ＩＤ」「名前」「ＦＡＸ設定値」「フォルダ送信設定値」等が登録されている。「名前」「ＦＡＸ設定値」「フォルダ送信設定値」も属性と呼ぶ場合がある。なお、アカウント情報には、必須の属性と、ＭＦＰ１００が備える機能毎に登録の有無が異なる属性がある。
【００５７】
ＭＦＰ＿Ａのアドレス情報には、ＭＦＰ＿Ａ内で一意のＩＤに対応づけて「名前」「ＦＡＸ番号」が、アカウント情報にはＭＦＰ＿Ａ内で一意のＩＤに対応づけて「名前」「ＦＡＸ設定値」が、それぞれ対応づけられている。
【００５８】
なお、アドレス情報とアカウント情報は必ずセットで存在するとは限らず、ＭＦＰ１００がアドレス情報のみ又はアカウント情報のみを有する場合もある。アドレス情報とアカウント情報がセットで存在する場合、ＭＦＰ１００内では同じＩＤに同じ「名前」が対応づけられる。
【００５９】
ＭＦＰ＿Ｂ〜Dについても同様であり、ＭＦＰ＿Ｂ〜Dは「ＩＤ」「名前」及び各属性のアドレス情報と、「ＩＤ」「名前」及び各属性のアカウント情報を有している。
【００６０】
このように、各ＭＦＰ＿Ａ〜Ｄは個別にユーザ情報を管理している。ＭＦＰ＿Ａ〜Ｄが個別に記憶しているユーザ情報を「ローカルの」ユーザ情報という場合がある。本実施形態のＭＦＰ１００は機器連携の際、これらのローカルのユーザ情報１２Ａ〜Ｄをマージすることで、ＭＦＰ＿ＡのユーザがＭＦＰ＿Ｂ〜Ｄのユーザ情報１２Ｂ〜１２Ｄを利用することを可能にする。
【００６１】
〔機器連携の全体的な手順〕
図１１は、ユーザが操作するＭＦＰ＿Ａがユーザ情報１２Ａ〜１２Ｄを取得するシーケンス図の一例を示す。以下では、ユーザはＭＦＰ＿Ａを操作するとして説明するが、ＭＦＰ＿Ｂ〜Ｄを操作する場合も同様である。
【００６２】
まず、ユーザは、機器連携するＭＦＰ１００を登録する（Ｓ１）。このため、ユーザは例えば初期設定キー１３１や液晶表示部１３２のソフトキーを押下して、機器連携するＭＦＰ１００を登録するための連携対象機器登録画面２０１を操作パネル１３０に表示させる。
【００６３】
図１２は連携対象機器登録画面２０１の一例を示す図である。ＵＩ表示制御部２２は、操作パネル１３０が連携対象登録画面２０１の表示要求を受け付けると、ネットワークに接続されたＭＦＰ１００から機器連携するＭＦＰ＿Ｂ〜Ｄを検索する。ＭＦＰ＿Ａに、予め機器連携可能なＭＦＰ＿Ｂ〜ＤのＩＰアドレスが登録されていてもよいし、ＭＦＰ＿Ａが同報的にＭＦＰ＿Ｂ〜Ｄに機器連携が可能かを問い合わせ、応答の有無により機器連携可能なＭＦＰ＿Ｂ〜Ｄをリストアップしてもよい。
【００６４】
連携対象機器登録画面２０１は、選択可能機器欄２０２、連携機器欄２０３、連携機能選択ボタン２０６、追加ボタン２０４、削除ボタン２０５、決定ボタン２０７、及び、戻るボタン２０８が表示されている。選択可能機器欄２０２は、機器連携可能なＭＦＰ１００のＩＰアドレスの一覧が表示される。ＩＰアドレスは一例であって、ＭＦＰ１００の名前や商品名がＩＰアドレスの代わりに又はＩＰアドレスと共に表示されてもよい。
【００６５】
ユーザが、選択可能機器欄２０２のＭＦＰ１００のＩＰアドレスに触れることで反転表示させ、追加ボタン２０４を押下すると、反転表示されたＭＦＰ１００のＩＰアドレスが連携機器欄２０３に表示される。また、一度、連携機器欄２０３に表示されたＭＦＰ１００のＩＰアドレスは、ユーザが、連携機器欄２０３のＭＦＰ１００のＩＰアドレスに触れることで反転表示させ、削除ボタン２０５を押下することで、連携機器欄２０３から削除できる。このような操作を繰り返して、ユーザは連携機器欄２０３に機器連携させるＭＦＰ１００のＩＰアドレスを表示することができる。図では４つのＩＰアドレスが表示されている。このような操作が図１０の、連携機器の登録（Ｓ１）である。
【００６６】
図１２にて、ユーザが決定ボタン２０７を押下すると、ＭＦＰ＿Ａは、連携機器欄２０３にＩＰアドレスが表示されているＭＦＰ１００を連携対象のＭＦＰ１００に決定する。ＭＦＰ＿Ａは連携対象のＭＦＰ１００をＨＤＤ２７等に記憶する（Ｓ１−１）。連携対象のＭＦＰ１００が記憶されていれば、例えば、ＭＦＰ＿Ａの起動によりユーザが操作することなく自動的にＭＦＰ＿ＡがＭＦＰ＿Ｂ〜Dと機器連携することもできる。
【００６７】
ユーザが決定ボタン２０７を押下するとＭＦＰ＿Ａは、連携対象のＭＦＰ＿Ｂ〜Ｄに機器連携を要求する（Ｓ２−１，Ｓ２−２，Ｓ２−３）。この機器連携の要求は例えば、ＭＦＰ＿Ｂ〜Ｄの連携アプリの起動要求をするものである。
【００６８】
この機器連携の要求と共に（又は、この後の不図示の処理でもよい）、ＭＦＰ＿Ａは連携対象のＭＦＰ＿Ｂ〜Ｄに後述するソートキーを送信する。
【００６９】
ＭＦＰ＿Ｂ〜Dは例えばこの機器連携の要求に対し、自機が有するユーザ情報１２Ｂ〜１２Ｄのうち、ソートキーが指示する属性値のみをＭＦＰ＿Ａに送信する（Ｓ３−１、Ｓ３−２、Ｓ３−３）。すなわち、次述するようにＭＦＰ＿Ｂ〜Ｄが送信するのはユーザ情報うちある属性だけである。
【００７０】
ＭＦＰ＿Ａのアドレス情報管理部２３はこのユーザ情報１２Ａ〜１２Ｄの一部の属性からソート用キャッシュを生成する。
【００７１】
次に、ＭＦＰ＿Ａのアドレス情報管理部２３はソート用キャッシュと画面構成情報３３を用いて、最初の画面で表示するユーザ情報を、連携対象のＭＦＰ_Ｂ〜Ｄから取得する（Ｓ５-１〜５-３）。
【００７２】
また、最初の画面を表示した後は、ＭＦＰ＿Ａのアドレス情報管理部２３はソート用キャッシュと画面構成情報３３を用いて、表示中の画面から遷移しうる画面で表示するユーザ情報のみを、連携対象のＭＦＰから取得してキャッシュする（Ｓ６-１〜６-３）。
【００７３】
ＭＦＰ＿Ａのアドレス情報管理部２３は、取得したユーザ情報を用いて一覧表示用キャッシュを生成する（Ｓ７）。
【００７４】
〔ユーザ情報のマージ・ソート〕
以降では説明のため、アドレス情報を例に説明するが、アカウント情報についても同様に処理することができる。
【００７５】
アドレス情報管理部２３は、データアクセスの高速化とＲＡＭ容量を削減するため２つのキャッシュを作成する。１つは「ソート用キャッシュ」もう１つは「一覧表示用キャッシュ」である。
【００７６】
・ソート用キャッシュ
ＭＦＰ＿Ａが表示するユーザ情報は特定の属性によってデータがソートされていることが一般的である。ソートされていないとユーザが所望のユーザのアドレス情報を探すのに時間がかかるなど操作性が低下してしまう。ソートキーとなる属性は、ユーザが設定することができる。
【００７７】
図１３はアドレス情報のソートキーの設定画面の一例を示す。このような画面は初期設定画面の１つとして表示される。ユーザは所望のソートキーを選択することができる。図では３つのソートキーが選択可能であるが、上のソートキーほど優先度が高いことを意味している。本実施例では、アドレス情報の属性のどれをソートキーとしてもよいが、「名前」が選択されたとして説明する。ユーザが選択したソートキーはＨＤＤ２７等に記憶される。
【００７８】
ソートキーがあれば、ソート用キャッシュ作成手段４１はアドレス情報をソートすることができる。ＭＦＰ＿Ａのソート用属性値要求手段４１は、アドレス情報のうちソートキーの属性値だけをＭＦＰ＿Ｂ〜Ｄから取得する。
【００７９】
なお、ＭＦＰ＿Ａがキャッシュしたアドレス情報をローカルに記憶するＭＦＰ１００を特定するため、ＭＦＰ＿Ｂ〜Ｄは「名前」だけでなくＩＰアドレスとＩＤをＭＦＰ＿Ａに送信する。ＭＦＰ＿Ａは、アドレス情報のあるレコードがどのＭＦＰ１００に記憶されているかをIPアドレスにより特定でき、さらに該ＭＦＰ１００のどのレコードかをＩＤにより特定できる。以上から、ＭＦＰ＿Ｂ〜ＤがＭＦＰ＿Ａに送信する情報は次のようになる。
【００８０】
｛名前（ソートキー）、ＩＰアドレス、ＩＤ｝
なお、ＩＰアドレスは、アドレス情報のレコード毎に送信する必要はなく、一台のＭＦＰ１００が１回だけ送信すればよい。
【００８１】
このように、ＭＦＰ＿Ｂ〜DがＭＦＰ＿Ａに送信するデータを制限することで、ＭＦＰ＿ＡのＲＡＭ容量を節約できる。そして、ＭＦＰ＿Ｂ〜DがＭＦＰ＿Ａに送信したアドレス情報とＭＦＰ＿Ａが記憶するアドレス情報がソート用キャッシュ３１である。ソート用キャッシュ作成手段４２はソート用キャッシュ３１を名前をキーにして昇順にソートする。この時、重複しているレコードの破棄などを行う。ソートされたソート用キャッシュ３１はＲＡＭ２６に記憶される。
【００８２】
図１４（ａ）はソート用キャッシュ３１の一例を、図１４（ｂ）は比較用に示した単に複数のアドレス情報をマージした場合のアドレス情報の一例を示す。図１４（ｂ）は実際にはＭＦＰ＿Ａが記憶することも、表示することもない。
図１４（ａ）ではすでにアドレス情報が「名前」をソートキーにしてソートされている。図１４（ａ）と図１４（ｂ）を比較すると明かなように、ソート用キャッシュ３１をソートに必要なデータのみとすることで、ＭＦＰ＿Ａが取り扱うデータ量を大幅に低減できる。
【００８３】
なお、図１４（ａ）では「名前」をソートキーとしているが、ＦＡＸ番号やメールアドレスとすることもできる。また、図１３に示したように２つの属性をソートキーとすることもできる。ソートキー以外の属性は、「名前」属性のソート結果と同じ順番で表示されることになる。多くの場合は、他の属性はソートキーである名前と共に表示される。
【００８４】
なお、図１４（ａ）で図示されたソート用キャッシュ３１のＩＤは、ソートのために新たに付与されたＭＦＰ＿Ａ内で一意のＩＤである。図１４（ａ）のＩＤにはＭＦＰ＿Ａ〜Ｄがローカルに記憶するアドレス情報のＩＤが対応づけられているので、ユーザ情報特定部４３は、図１４（ａ）のＩＤに対応づけられたアドレス情報を自機から読み出し、また、ＭＦＰ＿Ｂ〜Ｄに要求することができる。
【００８５】
・一覧表示用キャッシュ３２
一覧表示用キャッシュ３２は、データアクセスを高速化するため次の２つの特徴がある。
（１）一覧表示の速度を向上させるために、一覧表示に必要な属性のみキャッシュする。
（２）キャッシュするレコードの件数は、全件ではなく、すぐに一覧表示に使用されるデータ（ある画面から１操作で遷移可能な画面のデータ）に限定する。
【００８６】
このような工夫により、一覧表示の速度を維持したままＲＡＭ容量を削減できる。
【００８７】
アドレス情報管理部２３は、（１）と（２）を達成するための画面構成情報を有する。
図１５（ａ）は画面構成情報３３の一例を示す。画面構成情報３３は例えばＨＤＤ２７に予め記憶されている。
【００８８】
画面構成情報３３では画面ＩＤに対応づけて、「画面」「最初の画面」「必要データ」「遷移可能画面ＩＤ」「一覧表示に必要な属性」が登録されている。
「画面ＩＤ」は、ＭＦＰ１００がアドレス情報を使って表示する画面に付与された一意のＩＤである。「画面」は、開発者用又は説明用のフィールドで、画面の名称が登録されている。「最初の画面」は、ユーザが例えば送信アプリなどアドレス情報を要する機能を起動した際に、一番最初に表示される画面を示す。「必要なデータ」はその画面を表示するために必要なアドレス情報の範囲（数）を示す。例えば、「常用」の画面では全ての一覧の上位１２件のユーザのアドレス情報であり、「あ」から「わ」行の画面では名前の先頭が各行の文字に当たるユーザのアドレス情報の「上位１２件」である。
【００８９】
「遷移可能画面ＩＤ」は、その画面から１操作で遷移可能な画面の画面ＩＤが登録されている。例えば、画面ＩＤ＝１の常用のユーザのアドレス情報一覧画面からは、画面ＩＤ＝２〜ｘの画面に１操作で遷移可能であり、画面ＩＤ＝２の名前の先頭が「あ」行のユーザのアドレス情報一覧画面からは、画面ＩＤ＝１，３〜ｘの画面に１操作で遷移可能であり、…、画面ＩＤ＝ｘの名前の先頭が「わ」行のユーザのアドレス情報一覧画面からは、画面ＩＤ＝１〜ｘ−１の画面に１操作で遷移可能である。「必要データ」と「遷移可能画面ＩＤ」により上記（２）を達成できる。
【００９０】
「一覧表示に必要な属性」は、一覧表示する属性である。どの属性を一覧表示するかは画面構成により決まっている。例えば、送信アプリでは送信先の宛先なので、「メールアドレス」「ＦＡＸ」「送信先フォルダ」などである。図１５では「ＦＡＸ」が例示されているが、機器連携を用いても、ユーザがＦＡＸ機能を利用できなければ、「一覧表示に必要な属性」に「ＦＡＸ」が表示されない。
【００９１】
また、「名前」がないと表示された番号がだれのＦＡＸ番号が不明なので、図では「名前」も「一覧表示に必要な属性」に登録されている。「一覧表示に必要な属性」により上記（１）を達成できる。
【００９２】
ユーザ情報要求手段４４は、現在表示している画面の画面ＩＤに基づき画面構成情報３３の「遷移可能画面ＩＤ」を特定し、各画面毎に「一覧表示に必要な属性」と「必要データ」を特定し、ＭＦＰ＿Ｂ〜Ｄに要求する。例えば、画面ＩＤ＝１の画面を表示中の場合、「遷移可能画面ＩＤ」は２〜ｘなので、画面ＩＤ＝２の「一覧表示に必要な属性」に基づき「名前」「ＦＡＸ」を特定し、また、画面ＩＤ＝２の「必要データ」に基づき「あ」行の上位１２件が必要であることを特定する。よって、ユーザ情報要求手段４４は、ＭＦＰ＿Ｂ〜Dに対し、ソート用キャッシュ３１の「あ」行の上位１２件のアドレス情報のレコードのうち「名前」「ＦＡＸ」の属性だけを要求する。
【００９３】
図１４（ａ）を例にすれは、「あ」行の上位１２件のアドレス情報のレコードは、ＩＤ＝００１〜００３である。また、ソート用キャッシュ３１には「機器のＩＰ」が登録されているので、アドレス情報管理部２３はＩＤ＝００１〜００３のレコード毎に、アドレス情報を要求すべきＭＦＰ１００を特定できる。このようにしてユーザ情報要求手段４４は一覧表示用キャッシュ３２に必要なアドレス情報を収集し生成する。
【００９４】
一覧表示用キャッシュ作成手段４５は、ＭＦＰ＿Ｂ〜Ｄから取得した上位１２件の一覧表示に必要な属性のみを含むアドレス情報と、ＭＦＰ＿Ａが有する上位１２件の一覧表示に必要な属性のみを含むアドレス情報とをマージして、順番を並べ替える。すでに順番はソート用キャッシュ３１にて決定されている。一覧表示用キャッシュ作成手段４５は、ソート用キャッシュ３１のＩＤの順番に、ＭＦＰ＿Ａ〜Ｄから収集したアドレス情報を並べ替える。改めて、名前をソートキーにＭＦＰ＿Ａ〜Ｄから収集したアドレス情報をソートしてもよい。
【００９５】
図１５（ｂ）は、一覧表示用キャッシュ３２の一例を示す。一覧表示用キャッシュ３２は、例えばＲＡＭ２６に記憶される。アドレス情報管理部２３は、「遷移可能画面ＩＤ」の全ての画面について同様の処理を行い一覧表示用キャッシュ３２を生成する。
【００９６】
このように、一覧表示用キャッシュ３２を、一覧表示に必要な属性のみに限定し、キャッシュするレコードの件数を１操作で遷移可能な画面のデータに限定することで、データアクセスを高速にしたまま、ＲＡＭ容量の増大を抑制できる。
【００９７】
図１６は、一覧表示用キャッシュ３２を画面に表した図の一例である。左側のＭＦＰ＿Ａは、現在、常用の画面を表示している。この状態でアドレス情報管理部２３は、ユーザが何も操作しなくても、１操作で遷移可能な画面で表示されるアドレス情報の一覧表示用キャッシュ３２を生成する。
【００９８】
ユーザが「あ」〜「わ」のボタンを押下すれば、ＵＩ表示制御部２２は押下されたボタンに対応したアドレス情報をアドレス情報管理部２３に要求する。アドレス情報管理部２３は要求されたアドレス情報を一覧表示用キャッシュ３２から読み出し、ＵＩ表示制御部２２に送出する。ＵＩ表示制御部２２はアドレス情報を用いて１つの画面を表示する。よって、ユーザはほとんど待つことなく、押下したボタンに対応したユーザのアドレス情報を見ることができる。
【００９９】
〔動作手順〕
図１７は、アドレス情報管理部２３がソート用キャッシュ３１と一覧表示用キャッシュ３２を生成する手順を示すフローチャート図の一例である。この手順では、アドレス情報を表示する機能（例えば送信アプリ）の最初の画面のソート用キャッシュ３１と一覧表示用キャッシュ３２が生成される。
【０１００】
まず、ソート用属性値要求手段４１は、ＭＦＰ＿Ｂ〜Ｄからアドレス情報のＩＤとソートキーが指示する属性値を取得する（Ｓ１１０）。
【０１０１】
そして、ソート用キャッシュ作成手段４２は取得した属性値の昇順にアドレス情報をソートしてソート用キャッシュ３１を生成する（Ｓ１２０）。
【０１０２】
そして、ユーザ情報特定手段４３が必要とするユーザ情報を特定し、ユーザ情報要求手段４４が、最初の画面のアドレス情報を他機から取得する（Ｓ１３０）。具体的にはユーザ情報特定手段４３は画面構成情報３３を参照して、「最初の画面」の「必要データ」に基づきアドレス情報のレコードを、「一覧表示に必要な属性」に基づきアドレス情報の属性をそれぞれ特定する。
【０１０３】
一覧表示用キャッシュ作成手段４５は、他機から取得したアドレス情報を、ソート用キャッシュ３１のソート結果に従い順番を変えて、一覧表示用キャッシュ３２を生成する（Ｓ１４０）。
【０１０４】
図１８は、ある画面が表示されている間に、生成される一覧表示用キャッシュ３２の生成手順の一例を示すフローチャート図の一例である。
【０１０５】
図１７処理により、図１６の左の画面の一覧表示用キャッシュ３２が生成されたので、ユーザが操作を行うとＵＩ表示制御部２２が一覧表示用キャッシュ３２を用いて画面を表示する（Ｓ２１０）。
【０１０６】
ステップＳ２２０以降の処理はバックグラウンドで行われる。
まず、ユーザ情報特定手段４３は画面構成情報３３の「遷移可能画面ＩＤ」を参照して、表示している画面から遷移可能な画面の画面ＩＤを特定する（Ｓ２２０）。
【０１０７】
遷移可能な画面がある場合（Ｓ２３０のＹｅｓ）、ユーザ情報特定手段４３は「遷移可能画面ＩＤ」に登録された画面ＩＤをリストアップする（Ｓ２４０）。
図１９（ａ）は画面ＩＤリストアップテーブルの一例である。ＵＩ表示制御部２２が現在表示している画面から、遷移可能な画面の画面ＩＤが登録される。また、画面ＩＤリストアップテーブルには、画面毎のページ数を示す「ページ情報」、ページ毎にキャッシュ済みか否かを示す「キャッシュ済み」、及び、現在表示しているページ番号を示す「現在ページ」が登録される。画面ＩＤリストアップテーブルに登録された直後の画面ＩＤの「キャッシュ済み」にはキャッシュされていないことを示す「×」が登録される。
【０１０８】
ユーザ情報特定手段４３は前ページがある場合（Ｓ２５０のＹｅｓ）、前ページに必要なデータを画面ＩＤリストアップテーブルに登録する（Ｓ２６０）。前ページに必要なデータは、例えば、そのページ番号と「キャッシュ済み」に登録される「×」である。
【０１０９】
これまでは１２件のアドレス情報を１つの画面に表示できるとしたが、ソート用キャッシュ３１の１つの画面用のデータが１３件以上あった場合、ユーザはページを変えてアドレス情報を表示する必要が生じる。ステップＳ２５０〜Ｓ２８０は、１つの画面に表示しきれないアドレス情報が存在した場合に対応するための処理である。
【０１１０】
ＵＩ表示制御部２２が、常に、１ページ目から画面を表示する場合、前ページがあるのはユーザが２ページ目以降を表示させた場合である。この場合、ＵＩ表示制御部２２が２ページ目以降を表示したことは、すでに表示したページよりも前のページのアドレス情報が一覧表示用キャッシュ３２にキャッシュされていることを意味する。このため、ステップＳ２５０，Ｓ２６０の処理はスキップすることも可能であるが、ＵＩ表示制御部２２が、例えば中央のページや最後のページから画面を表示する場合、前ページがありかつアドレス情報がキャッシュされていないページが存在することになる。したがって、ステップＳ２５０，Ｓ２６０は、ＵＩ表示制御部２２が表示するページの順番を柔軟にできる点で有用である。
【０１１１】
ステップＳ２６０では、ユーザ情報特定手段４３は前ページに必要なデータとして、現在の画面のページが１より大きければ、現在のページよりも前のページを画面ＩＤリストアップテーブルに登録する。１つの画面が何ページかは、ソート用キャッシュ３１の「あ」〜「わ」行のそれぞれのユーザのユーザ数を１２で割り、小数点以下を繰り上げることで求められる。このページ数と現在のページを比較すれば、前ページがあるか否かを判定できる。
【０１１２】
したがって前ページがあるとは、画面ＩＤリストアップテーブルにおいて、例えば「現在ページ」が「２」や「３」の時に１ページ目や２ページがあることが相当する。
【０１１３】
同様に、ユーザ情報特定手段４３は次ページがある場合（Ｓ２７０のＹｅｓ）、次ページに必要なデータを画面ＩＤリストアップテーブルに登録する（Ｓ２８０）。ユーザ情報特定手段４３は、ページ数と現在のページを比較して、次ページがあるか否かを判定する。例えば１ページ目を表示中で、かつ、ある画面のアドレス情報が１３件以上ある場合は、次ページがあることになる。次ページに必要なデータも同様に、例えばそのページ番号と「キャッシュ済み」に登録される「×」である。
【０１１４】
次に、アドレス情報管理部２３は画面ＩＤリストアップテーブルにてキャッシュ済みでない画面を特定する（Ｓ２９０）。１操作で遷移しうる画面（次ページ・前ページを含む）でキャッシュされていない画面は「キャッシュ済み」に「×」が登録されているので、「×」が登録されている画面がキャッシュされていない画面である。
【０１１５】
次に、ユーザ情報要求手段４４は、未キャッシュのアドレス情報があるか否かを判定する（Ｓ３００）。図１９（ａ）では画面ＩＤ=２〜ｘの画面の1ページ目のアドレス情報がキャッシュされていないことが分かる。
【０１１６】
未キャッシュのアドレス情報がある場合（Ｓ３００のＹｅｓ）、ユーザ情報要求手段４４は、未キャッシュのアドレス情報を他機から取得して一覧表示用キャッシュ３２を更新する（Ｓ３１０）。具体的には、ユーザ情報要求手段４４は、「キャッシュ済み」に「×」が登録されている画面ＩＤとページを特定し、画面構成情報３３の該当する画面ＩＤの「必要データ」及び「一覧表示に必要な属性」をＭＦＰ＿Ｂ〜Ｄに要求する。
【０１１７】
この処理により、例えば最初の画面が表示された状態で、アドレス情報管理部２３は画面ＩＤ=２〜ｘの例えば1ページ目のアドレス情報を取得でき、画面ＩＤリストアップテーブルは図１９（ｂ）のような状態になる。ユーザが「あ」〜「わ」のいずれのボタンを押下しても、ＵＩ表示制御部２２はすぐに画面を表示することができる。
【０１１８】
例えば、ユーザが「あ」のボタンを押下した場合、画面ＩＤリストアップテーブルは図２０（ａ）のようになる。ユーザ情報特定手段４３はユーザの操作を検出して「現在ページ」を更新する。「あ」のボタンには画面ＩＤ=２の画面が対応するので、「現在ページ」は例えば「１」となる。
【０１１９】
ページが変わると処理はＳ２１０に戻り、アドレス情報管理部２３は図１８の処理を再度実行する。画面ＩＤ＝２の場合、画面構成情報３３によれば遷移可能な画面は画面ＩＤ=１，３〜ｘである（Ｓ２２０）。
【０１２０】
遷移可能な画面があるが、図２０（ａ）を見ると分かるようにいずれの画面も画面ＩＤリストアップテーブルにリストアップされているので、新たに画面ＩＤをリストアップする必要はない（Ｓ２３０，Ｓ２４０）。
【０１２１】
また、現在ページが画面ＩＤ＝２の画面の「１」ページ目なので、ユーザ情報特定手段４３は前ページはないと判定する（Ｓ２５０，Ｓ２６０）。
【０１２２】
しかし、現在ページが画面ＩＤ＝２の画面の「１」ページ目なので、ユーザ情報特定手段４３は次ページがあると判定する（Ｓ２７０）。このため、ユーザ情報特定手段４３は、次ページである「２」ページ目をキャッシュ対象のページとして特定する（Ｓ２８０）。このため、ユーザ情報特定手段４３は、画面ＩＤ=2の「２」ページ目の「キャッシュ済み」に「×」を登録する。
【０１２３】
次に、ユーザ情報要求手段４４は画面ＩＤリストアップテーブルにてキャッシュ済みでない画面を特定する（Ｓ２９０）。すでに画面ＩＤ＝１、３〜ｘの1ページ目のアドレス情報はキャッシュされているので、ユーザ情報要求手段４４は画面ＩＤ＝２の「２」ページ目が未キャッシュであると判定する（Ｓ３００）。
【０１２４】
このため、ユーザ情報要求手段４４は、画面ＩＤ＝２の「２」ページ目のアドレス情報をＭＦＰ＿Ｂ〜Ｄから取得し、一覧表示用キャッシュ作成手段４５は一覧表示用キャッシュ３２を更新する（Ｓ３１０）。２ページ目のアドレス情報は、ソート用キャッシュ３１の「あ」行のデータのうち、１３番目から２４番目のデータである。
【０１２５】
これにより、アドレス情報管理部２３は、次の1つの操作で遷移しうる全ての画面又はページのアドレス情報をキャッシュすることができた。ユーザ情報要求手段４４は画面ＩＤリストアップテーブルを更新するので、画面ＩＤリストアップテーブルは図２０（ｂ）のようになる。
【０１２６】
なお、ユーザが画面遷移やページ送りを繰り返すと、次々に一覧表示用キャッシュ３２にアドレス情報が記憶されるので、ＲＡＭ２６の空きがなくなるおそれがある。このような場合、一覧表示用キャッシュ作成手段４５は、例えば最も古くキャッシュされたユーザ情報又は一度も表示されていないユーザ情報から削除する。このような制御は、キャッシュされた時刻や表示された時刻を画面ＩＤリストアップテーブルに記録することで実現できる。
【０１２７】
以上説明したように、本実施形態のＭＦＰ１００は、１つの操作で遷移しうる画面のアドレス情報をキャッシュしているので、ユーザが「あ」〜「わ」のいずれかのボタンを押下した場合、ユーザを待たせることなくユーザ名の一覧を表示することができる。また、遷移しうる画面で提供される1ページのアドレス情報しかキャッシュしないので、大きなメモリ容量を必要とすることもない。
【実施例２】
【０１２８】
本実施例では、アドレス情報をキャッシュした後、あるＭＦＰ１００がローカルに記憶しているアドレス情報をユーザがよく使う別のＭＦＰ１００に移管する機器システム２００について説明する。
【０１２９】
アドレス情報のうち、メールアドレスやＦＡＸ番号は、実施例１で説明したキャッシュにより、各ＭＦＰ１００がユーザを待たせることなくユーザに提供することができる。しかし、アドレス情報には、メールアドレスやＦＡＸ番号以外に詳細情報が登録されており、詳細情報はキャッシュ対象外なので、ユーザが操作しているＭＦＰ＿Ａに記憶されていないユーザのアドレス情報は、ＭＦＰ＿Ａが表示するまで時間がかかる。本実施例のＭＦＰ１００はこのような詳細情報についても、メモリ容量を増大することなく、高速にアクセスすることを可能にする。
【０１３０】
図２１はユーザがアドレス情報の詳細情報を表示させるための画面の一例を示す。詳細情報を表示する状況としては、主に管理者がユーザに関する情報を変更したい場合である。図２１の画面は初期設定画面の１つで、アドレス情報を変更するための画面である。この画面では、あるユーザについて「名前」「ヨミガナ」「キー表示名」「登録番号」が変更か能になっている。管理者は「名前」欄３０１、「ヨミガナ」欄３０３、「キー表示名」欄３０２、「登録番号」欄３０４の「変更」ボタンを押下して、ソフトキーボードを表示することで、それぞれを変更することができる。
【０１３１】
また、図２１には「ファックス」ボタン３０５、「メールアドレス」ボタン３０６、「フォルダ」ボタン３０７が表示されている。ユーザはボタンを選択することで、ＦＡＸ番号、メールアドレス、及び、送信先のフォルダの変更画面を選択することができる。
【０１３２】
図２２は、「メールアドレス」ボタン３０６が押下された場合に表示される画面の一例である。この画面により管理者は「メールアドレス」を変更することができる。「メールアドレス」の入力欄４０１の「変更」ボタンを押下して、管理者はソフトキーボードを表示することで、メールアドレスを変更することができる。
【０１３３】
図２１のような詳細情報は、ＭＦＰ＿Ａにキャッシュされていないが、名前などユーザを特定する情報はキャッシュされている。これを利用して、管理者は詳細情報を表示させることができる。
【０１３４】
図２３は、本実施例の機器システム２００の機能ブロック図の一例を示す。ＭＦＰ＿ＡとＭＦＰ＿Ｂで保有する機能が違っているが、ＭＦＰ＿ＡはＭＦＰ＿Ｂの機能を、ＭＦＰ＿ＢはＭＦＰ＿Ａの機能をそれぞれ有する。また、ＭＦＰ＿Ｃ〜Ｄは省略したが、ＭＦＰ＿Ｂと同様の機能を有する。
【０１３５】
ＭＦＰ＿Ａは、利用頻度記録手段５１、移管要求判定手段５２、登録手段５３及び時間設定受け付け手段５４を有する。利用頻度記録手段５１は、ＭＦＰ＿Ａ又はＭＦＰ＿Ｂ〜Ｄのユーザ情報の選択を受け付けた場合、アドレス情報毎に利用頻度（利用回数）を記録する。ユーザ毎に利用頻度を記録してもよい。移管要求判定手段５２は、ユーザ情報の利用頻度に基づきＭＦＰ＿Ｂ〜Ｄにユーザ情報の移管を要求するか否かを判定する。登録手段５３は、ＭＦＰ＿Ｂ〜Ｄが移管を許可した場合に、ＭＦＰ＿Ｂ〜Ｄから取得したユーザ情報を自機のＨＤＤ２７にローカルに登録する。時間設定受け付け手段５４は、利用頻度をカウントする時間の設定を受け付ける。
【０１３６】
ＭＦＰ＿Ｂは移管可否判定手段５６及びデータ操作手段５７を有する。移管可否判定手段５６は、移管要求のあったユーザ情報が過去の一定期間に移管されたことがあるか否か等に基づき、移管を許可するかどうかを判定する。データ操作手段５７は、移管可否定手段が移管を許可した場合、移管要求された当該ＭＦＰ＿Ｂが記憶するユーザ情報にテンポラリーデータであることを示す情報を付加する。
【０１３７】
図２４は、アドレス情報の詳細情報を表示する手順を示すシーケンス図の一例である。また、図２５(ａ)（ｅ）は、初期のＭＦＰ＿ＡとＭＦＰ＿Ｂのアドレス情報の一例を説明する図である。
【０１３８】
管理者が操作パネル１３０からアドレス情報の詳細を表示する操作を行うと、キャッシュされているアドレス情報からあるユーザ（図ではＡ氏）を特定し、詳細情報を表示させる操作を入力する（Ｓ１）。詳細情報の表示操作は、図２１などを表示させる操作であり予め決まっている。
【０１３９】
利用頻度記録手段５１は、一覧表示用キャッシュ３２を参照して、詳細情報が要求された名前を特定し、その名前に対応づけられたＭＦＰ１００のＩＰと自機のＩＰを比較して、詳細情報が自機に記憶されているか否かを判定する。自機に登録されている場合、ＭＦＰ＿Ａが移管する必要はないので詳細情報を表示して処理は終了する。なお、詳細情報とは、「ヨミガナ」「キー表示名」「登録番号」の他、事業所名、住所などキャッシュされていない全ての情報を言う。
【０１４０】
自機に登録されていない場合、アドレス情報管理部２３は、一覧表示用キャッシュ３２の名前に対応づけられたＭＦＰ１００のＩＰに基づき、ＭＦＰ＿Ｂにユーザ（A氏）の詳細情報を要求する（Ｓ２）。
【０１４１】
ＭＦＰ＿Ｂのアドレス情報管理部２３は、要求に応じてＨＤＤ２７からユーザ（A氏）の詳細情報を読み出し、ＭＦＰ＿Ａに送信する（Ｓ３）。
【０１４２】
ＭＦＰ＿Ａのアドレス情報管理部２３は、ＭＦＰ＿Ｂから受信したユーザ（A氏）の詳細情報をいったんＲＡＭ２６に記憶して、ＵＩ表示制御部２２に送出する。これにより、ＵＩ表示制御部２２はユーザ（A氏）の詳細情報を操作パネルに表示する（Ｓ４）。図２５（ｂ）に示すように、ＭＦＰ＿ＡのＲＡＭ２６にユーザ（Ａ氏）のアドレス情報が記憶される。この時点では、ＭＦＰ＿Ｂのアドレス情報に変更はない。
【０１４３】
表示により管理者の要求が満たされ、管理者はユーザ（A氏）の詳細情報を確認したり変更することができる。また、変更した場合は、ＭＦＰ＿ＡのＲＡＭ２６の詳細情報が変更される。
【０１４４】
そして、利用頻度記録手段５１は、取得したアドレス情報についてアクセス頻度の重み付けを行う（Ｓ５）。重み付けは、例えばＭＦＰ＿Ａが詳細情報にアクセスした回数である。アクセス頻度の判定のため、例えば、過去の数時間、電源オンからオフの間、過去の数週間、又は、過去の数ヶ月等、アクセス履歴を日時情報に対応づけて記憶しておく。
【０１４５】
そして、移管要求判定手段５２は、アクセス頻度が所定の閾値を超えているか判定する（Ｓ６）。
【０１４６】
この閾値は例えば以下のようなものである。
ａ）単位時間内のアクセス回数がＮ回
単位時間とは、例えば、現在から遡って1時間以内、電源がＯＮされてからＯＦＦされるまでのような所定の時間である。すなわち、アドレス情報に対するアクセスから時間が経つとアクセス回数にカウントされないアクセスが生じるので、最後のアクセスから時間が経つと判定がＮｏとなる可能性が高くなる。
【０１４７】
なお、この時間は、初期設定画面などから管理者が設定できる。時間設定受け付け手段５４は、単位時間及びアクセス回数を設定する画面を表示し、管理者の設定を受け付ける。
ｂ）閾値を依頼先のＭＦＰ＿Ｂから取得する
次述するように移管要求を出すことは要求元（ＭＦＰ＿Ａ）の自由だが、要求先（ＭＦＰ＿Ｂ）が許可するとは限らない。すなわち、ＭＦＰ＿Ａが、ＭＦＰ＿Ｂが記憶するユーザ（Ａ氏）への単位時間内のアクセス回数を問い合わせ、その回数かそれよりも大きい回数を閾値とする。ＭＦＰ＿ＢよりもＭＦＰ＿Ａの方がアクセス回数が多い場合、ＭＦＰ＿Ｂが移管を許可する設定の場合に、要求先（ＭＦＰ＿Ｂ）が移管を許可することになるので、要求したが却下されるなどの無駄をなくすことができる。
【０１４８】
さらに、ＭＦＰ＿Ａの移管要求判定手段５２が、アクセス頻度が所定の閾値を超えているか否かを判定するタイミングは以下のようなタイミングがある。
ａ）アドレス帳情報にアクセスする度
アクセスの度にＭＦＰ＿Ａが判定するので処理が簡単である。
ｂ）バッチ処理化
すなわち、ある時刻（夜間など）に、定期的に実施すれば判定回数を1日1回（又は数回）に限定できるので、トランザクションを減らせて移管処理を効率化できる。
【０１４９】
そして、アクセス頻度が所定の閾値を超えている場合、登録手段５３は、ユーザ（Ａ氏）のアドレス情報の全体をアクセス頻度の高いＭＦＰ＿Ａ上のローカルはＨＤＤ２７へ再配置するために、アドレス情報の移管依頼をＭＦＰ＿Ｂへ発行する（Ｓ７）。
【０１５０】
ＭＦＰ＿Ｂの移管可否判定手段５６は、移管の可否を判定する（Ｓ８）。アドレス情報の移管要求に対する移管の可否の判定は、データ保持の公平性およびセキュリティの観点からアドレス情報を保持しているＭＦＰ＿Ｂが行うことが望ましい。判断基準は例えば以下のとおりである。
【０１５１】
ａ）一定期間の移管が発生していないこと
すなわち、移管が一度発生したら、そのユーザのアドレス情報の移管は一定期間禁止する判断基準である。こうすることで、移管が頻発することを防止できる。
【０１５２】
ｂ）単位時間内のアクセス回数がＭ回以下
例えば、ＭＦＰ＿Ｂにおいて、現在から遡って1時間以内、電源がONされてからOFFされるまでのような所定の時間のアクセス回数が、Ｍ回以下である場合、移管を許可する。したがって、ＭＦＰ＿Ａの判定と同様に、移管要求のあるユーザのアドレス情報に対するアクセスから時間が経つと、アドレス情報を所有し続ける権利が小さくなることになる。
【０１５３】
ｃ）ユーザ認証、連携機器の認証
管理者が、ＭＦＰ＿Ａにログインする際、認証が成立していることをもって、ＭＦＰ＿Ｂが移管を許可する判定基準である。こうすることで、管理者の要求が正当であると判定でき、アドレス情報の消失することを防止できる。また、ＭＦＰ＿ＢがＭＦＰ＿Ａを認証することで、移管を要求したＭＦＰ＿Ａが不正な装置でなく、連携対象のＭＦＰ１００など正当なＭＦＰ１００であることが確認できるので、アドレス情報が不正な装置に盗難されることを防止できる。
【０１５４】
なお、管理者用の強制移管は認められることが好ましい。メンテナンスやバックアップの際に、必ず管理者が移管できるので操作性が向上する。なお、管理者のユーザ認証はシングルサインオン(一度の認証処理によって複数のコンピュータのリソースが利用可能になる認証方法)を採用することが好ましい。こうすることで、ＭＦＰ＿Ａにログインできた管理者は、ＭＦＰ＿Ｂにもログインできるので、管理者が強制的に移管する権利を有することが保証される。
【０１５５】
ＭＦＰ＿Ｂの移管可否判定手段５６は、上記ａ）及びｂ）を組み合わせ、又は、いずれか一方の判定基準で、移管の可否を判定し、依頼元のＭＦＰ＿Ａへ応答を返す（Ｓ９）。
【０１５６】
移管を許可された場合、ＭＦＰ＿Ａの登録手段５３は、ＲＡＭ２６に記憶したユーザ（Ａ氏）のアドレス情報の全体をローカルのＨＤＤ２７に記憶する（Ｓ１０）。図２５（ｃ）に示すように、新たにユーザ（Ａ氏）のアドレス情報が、ＨＤＤ２７に記憶される。なお、この時点ではユーザ（Ａ氏）のレコードに「※」のようなフラグによりアドレス情報の移管が途中であることを登録しておく。
【０１５７】
そして、正常に保存できたらＭＦＰ＿Ａの登録手段５３はＭＦＰ＿Ｂに結果を通知する（Ｓ１１）。ＭＦＰ＿Ｂのデータ操作手段５７は、アドレス情報の重複を防ぐため、ＭＦＰ＿ＢのＨＤＤ２７に記憶されているユーザ（Ａ氏）のアドレス情報を削除する（Ｓ１２）。
【０１５８】
図２５（ｆ）は、ＭＦＰ＿Ｂのアドレス情報からユーザ（Ａ氏）のアドレス情報が削除される際のアドレス情報の一例を示す。図示するようにＭＦＰ＿Ｂは、ＭＦＰ＿Ｂのアドレス情報からユーザ（Ａ氏）のレコードを削除するのではなく、テンポラリ情報であることを示すマーク「＃」を付して残しておくことが好ましい。テンポラリで残しておけば、ＭＦＰ＿Ｂがキャッシュとして利用できる。この場合、テンポラリであるユーザ（Ａ氏）のアドレス情報は、例えば、ＭＦＰ＿ＢのＨＤＤ２７の空き容量が少なくなってきた際に削除する。
【０１５９】
ＭＦＰ＿Ｂは、削除した旨をＭＦＰ＿Ａに通知する（Ｓ１３）。これにより、ＭＦＰ＿Ａのアドレス情報管理部２３は、ユーザ（Ａ氏）のアドレス情報の保存を確定する（Ｓ１４）。図２５（ｄ）に示すように、「※」のフラグが削除され、ユーザ（Ａ氏）のアドレス情報がＭＦＰ＿Ａにローカルに保存されたことになる。
【０１６０】
この確定の意味は、ＭＦＰ＿Ｂの削除とＭＦＰ＿Ａの記憶を一体のトランザクションとして扱うことを意味している。すなわち、ＭＦＰ＿Ｂが削除に失敗した場合、ＭＦＰ＿Ａが記憶すると重複データが生じるので、ＭＦＰ＿Ｂから削除の完了通知を受信しない場合、ＭＦＰ＿Ａは保存したユーザ（Ａ氏）のアドレス情報を削除したり、テンポラリ情報「※」を付したままなどにして、ネットワーク内のデータの整合性を保つ。あるユーザのアドレス情報を1つのトランザクションとして処理することで、移管対象のユーザのアドレス情報の一意性を保障することができる。
【０１６１】
例えば、ＭＦＰ＿Ａにおいてユーザ（Ａ氏）のレコードに「※」が付されたままの場合（Ｓ１１のままの状態がずっと続く場合）、ＭＦＰ＿ＡはＭＦＰ＿Ｂにトランザクションの中止を求め、再度、移管を求めることができる。この場合、ＭＦＰ＿Ａはユーザ（Ａ氏）のレコードを消去し、ＭＦＰ＿Ｂはテンポラリ情報であることを示すマーク「＃」だけを消去する。こうすることで、ネットワークからユーザ（Ａ氏）のレコードが失われることを防止できる。
【０１６２】
以上で移管が完了した。管理者が再度、Ａ氏のアドレス情報の詳細情報を表示しようとした場合（Ｓ２１）、ＭＦＰ＿ＡのＵＩ表示制御部２２はＭＦＰ＿ＡがＨＤＤ２７に記憶しているアドレス情報を表示すればよい（Ｓ２２）。
【０１６３】
すなわち、ネットワークを介してＭＦＰ＿Ｂからアドレス情報を取得する必要がないため、アドレス情報の表示を高速化できる。アクセス高速化のためのキャッシュが不要となるため、ＭＦＰ＿ＡのＲＡＭ２６をキャッシュとして消費することもないので、少ないＲＡＭの容量で実現できる。
【０１６４】
なお、本実施例ではＭＦＰ＿Ａが詳細情報にアクセスした回数に基づき移管の有無を判定したが、キャッシュされたアドレス情報へのアクセス回数に基づき移管の有無を判定してもよい。ユーザがキャッシュされたアドレス情報を使用する限り、ユーザが待たされることはないが、キャッシュされたアドレス情報を数多く使用することは、詳細情報にアクセスする可能性が高いことを意味する。したがって、詳細情報だけでなくキャッシュ情報へのアクセス回数にカウントすることで、詳細情報へのアクセスが少なくてもアドレス情報を移転することができ、早期にユーザの待ち時間を短縮できるようになる。
【０１６５】
また、詳細情報とキャッシュされたアドレス情報への重み付けを変えてカウントする（例えば、詳細情報への重み付けをより大きくする）ことで、移管の必要性を適切に判定することができる。
【符号の説明】
【０１６６】
１２      ユーザ情報
２２      ＵＩ表示制御部
２３      アドレス情報管理部
２４      ネットワーク通信部
２５      ローカル保存データ管理部
２６      ＲＡＭ
２７      ＨＤＤ
３１      ソート用キャッシュ
３２      一覧表示用キャッシュ
３３      画面構成情報
１００    ＭＦＰ
１３０    操作パネル
２００    機器システム
【先行技術文献】
【特許文献】
【０１６７】
【特許文献１】特開２００４−２３６２１２号公報
【図１】
0005609437.tif 000002
【図２】
0005609437.tif 000003
【図３】
0005609437.tif 000004
【図４】
0005609437.tif 000005
【図５】
0005609437.tif 000006
【図６】
0005609437.tif 000007
【図７】
0005609437.tif 000008
【図８】
0005609437.tif 000009
【図９】
0005609437.tif 000010
【図１０】
0005609437.tif 000011
【図１１】
0005609437.tif 000012
【図１２】
0005609437.tif 000013
【図１３】
0005609437.tif 000014
【図１４】
0005609437.tif 000015
【図１５】
0005609437.tif 000016
【図１６】
0005609437.tif 000017
【図１７】
0005609437.tif 000018
【図１８】
0005609437.tif 000019
【図１９】
0005609437.tif 000020
【図２０】
0005609437.tif 000021
【図２１】
0005609437.tif 000022
【図２２】
0005609437.tif 000023
【図２３】
0005609437.tif 000024
【図２４】
0005609437.tif 000025
【図２５】
0005609437.tif 000026