(57)【要約】【課題】同期停止後、同期していた最新のデータを利用することを目的とする。【解決手段】サーバー装置とのデータの同期処理の停止指示が受け付けられた場合、同期対象のデータをサーバー装置より取得し、取得したデータを反映させる反映手段と、反映手段によるデータの反映後、サーバー装置に同期処理を停止する要求を送信する送信手段と、を有する。【選択図】図９
2018195882.tif 000002
【特許請求の範囲】
【請求項１】
サーバー装置とのデータの同期処理の停止指示が受け付けられた場合、同期対象のデータを前記サーバー装置より取得し、取得したデータを反映させる反映手段と、
前記反映手段による前記データの反映後、前記サーバー装置に前記同期処理を停止する要求を送信する送信手段と、
を有するクライアント装置。
【請求項２】
前記サーバー装置とのデータの同期処理の停止指示を受け付ける受付手段を更に有し、
前記受付手段により前記停止指示が受け付けられた場合、前記反映手段は、前記同期対象のデータを前記サーバー装置より取得し、取得したデータを反映させる請求項１記載のクライアント装置。
【請求項３】
前記反映手段は、登録されているユーザーを示す一覧に基づいて、前記一覧に含まれるユーザーのデータを前記同期対象のデータとして前記サーバー装置より取得し、取得したデータを反映させる請求項１又は２記載のクライアント装置。
【請求項４】
前記クライアント装置に記憶されている前記一覧を取得する第１の取得手段を更に有し、
前記反映手段は、前記第１の取得手段により取得された前記一覧に基づいて、前記一覧に含まれるユーザーのデータを前記同期対象のデータとして前記サーバー装置より取得する請求項３記載のクライアント装置。
【請求項５】
前記サーバー装置より前記一覧を取得する第２の取得手段を更に有し、
前記反映手段は、前記第２の取得手段により取得された前記一覧に基づいて、前記一覧に含まれるユーザーのデータを前記同期対象のデータとして前記サーバー装置より取得する請求項３記載のクライアント装置。
【請求項６】
前記第２の取得手段により取得された前記一覧に基づいて前記サーバー装置よりデータを取得するユーザーを選択する第１の選択画面を表示する第１の表示手段を更に有し、
前記反映手段は、前記第１の選択画面を介して選択されたユーザーのデータを前記同期対象のデータとして前記サーバー装置より取得する請求項５記載のクライアント装置。
【請求項７】
前記反映手段によるデータの反映の際に前記クライアント装置に保存可能な容量を超えた場合、容量を超えたことを示す画面を表示する第２の表示手段を更に有する請求項３乃至６何れか１項記載のクライアント装置。
【請求項８】
前記第２の表示手段は、前記容量を超えたためデータの反映が完了していないユーザーの情報を前記画面に表示する請求項７記載のクライアント装置。
【請求項９】
前記反映手段によるデータの反映の際に前記クライアント装置に保存可能な容量を超えた場合、データを反映するユーザーを選択する第２の選択画面を表示する第３の表示手段を更に有する請求項３乃至６何れか１項記載のクライアント装置。
【請求項１０】
前記一覧は、登録されているユーザーのユーザーリストである請求項３乃至９何れか１項記載のクライアント装置。
【請求項１１】
前記一覧は、登録されている一人以上のユーザーを含むグループのグループリストである請求項３乃至９何れか１項記載のクライアント装置。
【請求項１２】
前記クライアント装置は、画像形成装置である請求項１乃至１１何れか１項記載のクライアント装置。
【請求項１３】
クライアント装置が実行する情報処理方法であって、
サーバー装置とのデータの同期処理の停止指示が受け付けられた場合、同期対象のデータを前記サーバー装置より取得し、取得したデータを反映させる反映工程と、
前記反映工程によるデータの反映後、前記サーバー装置に前記同期処理を停止する要求を送信する送信工程と、
を含む情報処理方法。
【請求項１４】
コンピュータを、請求項１乃至１２何れか１項記載のクライアント装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアント装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、情報処理装置間でデータを同期する場合に、サーバーとの通信状態にかかわらずにユーザーから変更された設定値を利用可能にし、設定値の変更のために生成されたジョブに従いサーバーに対して同期処理を行う方法が提案されている（特許文献１参照）。クライアントは、サーバーから最新のデータを取得するための方法として、定期ポーリングにより更新データを取得する方法がある。他にもクライアントが動作する情報処理装置がデジタル複合機である場合には利用可能なＨＤＤやメモリ等の資源が限られているため常に全データを取得せずに、ユーザーのログインを契機にユーザーデータを取得する方法がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１２１９８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし何れにおいてもある時点でクライアントに存在するデータがサーバー上の最新のデータであることが保障されていない。例えば定期ポーリングによるデータ取得を行っている場合には、前回のポーリングから現時点の間に他のクライアントがデータの更新をサーバーに対して行っていた場合にはそのデータが反映されない可能性がある。またユーザーのログインを契機にデータの取得を行っている場合には、前回のログイン以降に他の情報処理装置からデータの構成がサーバーに対して行われている場合にはデータが最新の状態ではなくなっている可能性がある。
以上のような状態で、１台のクライアントの同期を停止し、データの同期を行っていた同期環境から切り離して利用しようとした場合、クライアントに存在するデータが最新に更新されていない状態となってしまう可能性がある。そのため同期環境から切り離した後にユーザーがクライアントを利用すると以前設定したはずのデータや設定が古い状態に戻ったように見えてしまう可能性がある。
【課題を解決するための手段】
【０００５】
本発明のクライアント装置は、サーバー装置とのデータの同期処理の停止指示が受け付けられた場合、同期対象のデータを前記サーバー装置より取得し、取得したデータを反映させる反映手段と、前記反映手段による前記データの反映後、前記サーバー装置に前記同期処理を停止する要求を送信する送信手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、同期停止後、同期していた最新のデータを利用することができる。
【図面の簡単な説明】
【０００７】
【図１】データ同期システムのシステム構成の一例を示す図である。
【図２】デジタル複合機のハードウェア構成の一例を示す図である。
【図３】サーバーＰＣのハードウェア構成の一例を示す図である。
【図４】サーバーアプリ等の一例を示す図である。
【図５】クライアントアプリ等の一例を示す図である。
【図６】データ同期開始処理の一例を示すフローチャートである。
【図７】データ同期管理画面の一例を示す図である。
【図８】データ同期処理の一例を示すフローチャートである。
【図９】実施形態１の同期状態変更処理の一例を示すフローチャートである。
【図１０】データ取得処理の一例を示すフローチャートである。
【図１１】データ同期管理画面等の一例を示す図である。
【図１２】実施形態２の同期状態変更処理の一例を示すフローチャートである。
【図１３】ユーザーリスト取得処理の一例を示すフローチャートである。
【図１４】ユーザーデータ選択画面の一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
図１は、データ同期システムのシステム構成の一例を示す図である。データ同期システムでは、データの同期を行う情報処理装置としてデジタル複合機（ＭＦＰ）１１０ａ、デジタル複合機１１０ｂ、サーバー１２０、ＰＣ１３０がネットワーク１００を介して互いに通信可能に接続されている。サーバー１２０は、コンピュータ等であってもよいし、ＭＦＰ等であってもよい。デジタル複合機は、画像形成装置の一例である。
【００１０】
図２は、デジタル複合機１１０内のハードウェア構成の一例を示す図である。デジタル複合機１１０は、コントローラユニット２００、操作部２２０、スキャナ２３０、プリンタ２４０を含んでいる。コントローラユニット２００には、操作部２２０が接続されると共に、画像入力デバイスであるスキャナ２３０や画像出力デバイスであるプリンタ２４０が接続される。
コントローラユニット２００は、より具体的には、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０２を有する。ＣＰＵ２０２は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０６に格納されているブートプログラムによりＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を立ち上げる。コントローラユニット２００は、このＯＳ上で、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０５に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。このＣＰＵ２０２の作業領域としてはＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３が用いられる。ＨＤＤ２０５は、アプリケーションプログラムや各種データを格納する。
ＣＰＵ２０２には、システムバス２１０を介して、ＲＯＭ２０６及びＲＡＭ２０３と共に、操作部Ｉ／Ｆ２０１、デバイスＩ／Ｆ２０４、Ｎｅｔｗｏｒｋ  Ｉ／Ｆ２０７、画像処理２０８が接続される。
操作部Ｉ／Ｆ２０１は、タッチパネルを有する操作部２２０とのインタフェースである。操作部Ｉ／Ｆ２０１は、操作部２２０に表示する各種データ等の情報を送出したり、ユーザーにより入力された情報をＣＰＵ２０２に送出したりする。デバイスＩ／Ｆ２０４には、スキャナ２３０及びプリンタ２４０が接続され、データや制御信号の入出力が行われる。Ｎｅｔｗｏｒｋ  Ｉ／Ｆ２０７は、ネットワーク１００に接続され、ネットワーク１００を介してネットワーク１００上の各情報処理装置との間で情報の入出力を行う。画像処理２０８では、スキャナからの入力画像処理やプリンタへの出力画像処理、画像回転、画像圧縮、解像度変換、色空間変換、階調変換等の処理が行われる。
【００１１】
図３は、サーバー１２０内のハードウェア構成の一例を示す図である。サーバー１２０は、ＣＰＵ３０１、ＲＡＭ３０２、ＲＯＭ３０３、Ｎｅｔｗｏｒｋ  Ｉ／Ｆ３０４、ＶＲＡＭ３０５、ＫＢＣ３０７、ＨＤＤ３０９を含んでおり、それぞれバス３００を介して接続されている。また、Ｄｉｓｐｌａｙ３０６はＶＲＡＭ３０５を介してバス３００に接続されている。ＫＢ３０８はＫＢＣ３０７を介したバス３００に接続されている。
ＣＰＵ３０１は、サーバー１２０の演算・制御を司る。ＲＡＭ３０２は、ＣＰＵ３０１の主メモリとして、及び、実行プログラムの領域、プログラムの実行エリア並びにデータエリアとして機能する。ＲＯＭ３０３にはサーバー１２０の機器制御を行う基本ソフト（ＯＳ）のプログラムを記録したプログラムＲＯＭと、システムを稼働するために必要な情報等が記録されているデータＲＯＭと、がある。また、ＲＯＭ３０３の代わりに、後述のＨＤＤ３０９が用いられる場合もある。Ｎｅｔｗｏｒｋ  Ｉ／Ｆ３０４は、ネットワーク１００を介して外部装置とのデータ送受信等の通信を行う。ＶＲＡＭ（ＶｉｄｅｏＶＲＡＭ）３０５は、サーバー１２０のＤｉｓｐｌａｙ３０６の画面に表示させるための画像を展開し、Ｄｉｓｐｌａｙ３０６の表示の制御を行う。Ｄｉｓｐｌａｙ３０６は、ディスプレイ等の表示装置である。ＫＢＣ３０７は、ＫＢ３０８からの入力信号を制御するためのコントローラである。ＫＢ３０８は、利用者が行う操作を受け付けるための外部入力装置であり、例えばキーボードやマウス等のポインティングデバイスが用いられる。ＨＤＤ３０９は、ハードディスクドライブ（ＨＤＤ）であり、アプリケーションプログラムや各種データの保存に用いられる。バス３００は、上述した各ユニット間を接続するための伝送バス（アドレスバス、データバス、入出力バス、及び制御バス）である。
【００１２】
本実施形態では、サーバー１２０上でデータ同期サーバーアプリケーション（以下、サーバーアプリという）４００が動作するものとする。また、デジタル複合機１１０ａ及びデジタル複合機１１０ｂ上でデータ同期クライアントアプリケーション（以下、クライアントアプリ）５００が動作するものとする。但し、このことは本実施の形態を制限するものではない。例えば、デジタル複合機１１０ａでサーバーアプリ４００が動作するようにしてもよい。
サーバー１２０のＣＰＵ３０１がサーバー１２０のＨＤＤ３０９又はＲＯＭ３０３に記憶されているサーバーアプリ４００のプログラムに基づき処理を実行することによってサーバーアプリ４００の機能がサーバー１２０で実現される。デジタル複合機１１０ａのＣＰＵ２０２がデジタル複合機１１０ａのＨＤＤ２０５又はＲＯＭ２０６に記憶されているクライアントアプリ５００のプログラムに基づき処理を実行することによってクライアントアプリ５００の機能がデジタル複合機１１０ａで実現される。同様にデジタル複合機１１０ｂのＣＰＵ２０２がデジタル複合機１１０ｂのＨＤＤ２０５又はＲＯＭ２０６に記憶されているクライアントアプリ５００のプログラムに基づき処理を実行することによってクライアントアプリ５００の機能がデジタル複合機１１０ｂで実現される。各種アプリケーション５１０、データ同期管理アプリケーション５２０も同様である。即ちデジタル複合機１１０ａのＨＤＤ２０５又はＲＯＭ２０６に記憶されている各々のアプリケーションのプログラムをデジタル複合機１１０ａのＣＰＵ２０２が実行することによって各々のアプリケーションの機能がデジタル複合機１１０ａにおいて実現される。またデジタル複合機１１０ｂのＨＤＤ２０５又はＲＯＭ２０６に記憶されている各々のアプリケーションのプログラムをデジタル複合機１１０ｂのＣＰＵ２０２が実行することによって各々のアプリケーションの機能がデジタル複合機１１０ｂにおいて実現される。以下に示す図６、図８〜図１０、図１２、図１３のフローチャートの処理はデジタル複合機１１０ａ、デジタル複合機１１０ｂのクライアントアプリ５００の処理である。即ちフローチャートの処理は、デジタル複合機１１０ａ、デジタル複合機１１０ｂのＣＰＵ２０２がデジタル複合機１１０ａ、デジタル複合機１１０ｂのＨＤＤ２０５又はＲＯＭ２０６に記憶されているクライアントアプリ５００のプログラムに基づき処理を実行することによって実現される。
【００１３】
図４は、サーバーアプリ４００等の一例を示す図である。サーバーアプリ４００は、通信処理部４０１、制御部４０２、要求解析部４０３、データアクセス部４０４を含む。通信処理部４０１は、デジタル複合機１１０ａ、１１０ｂ等からの処理要求を受信し、処理結果を送信する。制御部４０２は、処理の制御を行う。要求解析部４０３は、通信処理部４０１で受付けた処理要求を解析する。データアクセス部４０４は、処理要求に応じてデータベース４１０にアクセスして、データの作成／更新／削除／参照を実行する。データベース４１０で保持するデータは、ＨＤＤ２０５又はＲＡＭ２０３等に保存される。
【００１４】
図５は、クライアントアプリ５００等の一例を示す図である。クライアントアプリ５００は、処理受付部５０１、制御部５０２、ジョブ管理部５０３、通信処理部５０４を含む。処理受付部５０１は、コピーやＦＡＸ等の各種アプリケーション５１０からの処理要求を受信する。制御部５０２は、処理の制御を行う。ジョブ管理部５０３は、処理受付部５０１で受付けた処理要求をジョブとして管理する。通信処理部５０４は、Ｎｅｔｗｏｒｋ  Ｉ／Ｆ２０７を介してサーバー１２０上のサーバーアプリ４００と通信を行う。ジョブ管理部５０３で管理する情報は、ＨＤＤ２０５又はＲＡＭ２０３等に保存される。各種アプリケーション５１０は、操作部２２０に表示するデータを管理し、操作部２２０でユーザーから入力されたデータを保持すると共に、処理受付部５０１にデータ更新内容を通知する。
データ同期管理アプリケーション５２０は、データ同期の開始や終了を行うためのユーザーインターフェースをデジタル複合機１１０ａの管理者に提供するための管理アプリケーションである。データ同期管理アプリケーション５２０は、操作部２２０で操作された情報を処理受付部５０１へ送信したり、制御部５０２から指示された内容に基づき表示する表示内容を決定し操作部２２０へデータ同期管理画面を表示したりする。
【００１５】
デジタル複合機１１０ｂで、ユーザー操作やコピー／ＦＡＸ等のアプリケーション処理実行によってデータに変更が発生した場合、クライアントアプリ５００が変更内容をサーバーアプリ４００に送信する。また、クライアントアプリ５００は、サーバーアプリ４００にデータ更新があるかどうかを定期的、又はユーザーがログインしたタイミング等に必要に応じて問い合わせる。更新されたデータがあれば、クライアントアプリ５００は、差分データとして取得して、各種アプリケーション５１０に差分データを反映する。
例えばアドレス帳のＦＡＸ番号等のアドレスデータを、サーバーアプリ４００が管理しているとする。アドレスデータをデジタル複合機１１０ａ、デジタル複合機１１０ｂで共に使用する場合、アドレスデータの同期処理は以下のように処理される。各種アプリケーション５１０に含まれるアドレス帳アプリケーション等は、デジタル複合機１１０ａでアドレスデータＡを変更した場合、変更したアドレスデータＡをクライアントアプリ５００に通知する。クライアントアプリ５００は、サーバー１２０上のサーバーアプリ４００に変更されたアドレスデータＡを送信する。サーバーアプリ４００は、受信したアドレスデータＡをデータベース４１０に保存する。その後、デジタル複合機１１０ｂのクライアントアプリ５００は、サーバー１２０上のサーバーアプリ４００に対して更新の問い合わせを行う。サーバーアプリ４００は、先ほどのアドレスデータＡを更新データとしてクライアントアプリ５００に送信する。クライアントアプリ５００は、アドレスデータＡを受信したら、アドレスデータを管理するアドレス帳アプリケーションに受信したアドレスデータＡを渡して、デジタル複合機１１０ｂ内のデータを更新する。
同期されるデータとしてアドレスデータを例に説明したが、他のデータでも同様に処理されることでデータの差分同期が実現される。
【００１６】
次に図６、図７を用いてデジタル複合機１１０ａ、１１０ｂ上で動作するクライアントアプリ５００が、サーバー１２０上で動作するサーバーアプリ４００との同期を開始するための処理について説明する。
図６は、デジタル複合機１１０ａで制御部５０２により実行されるデータ同期開始処理の一例を示すフローチャートである。また図７は、デジタル複合機１１０ａの操作部２２０、又はデジタル複合機１１０ａに対してネットワーク１００を介して接続されたＰＣ１３０等の情報機器のＷｅｂブラウザ上へ表示されたデータ同期の管理画面の一例を示す図である。
Ｓ６０１において、制御部５０２は、処理受付部５０１より、デジタル複合機１１０ａの管理者やユーザーの操作に基づくデータ同期管理画面７０１の表示要求を検知する。そして制御部５０２は、データ同期管理アプリケーション５２０へ、操作部２２０に対するデータ同期管理画面７０１の表示を依頼する。
Ｓ６０２において、制御部５０２は、データ同期管理画面７０１上の、開始７０２、又は停止７０３がユーザーにより選択され、実行ボタン７０４が選択されたことを示す同期開始イベントを、処理受付部５０１より受信する。
Ｓ６０３において、同期開始イベントを受信した制御部５０２は、ジョブ管理部５０３に対して同期開始処理に必要な同期開始ジョブの生成を依頼する。
Ｓ６０４において、制御部５０２は、通信処理部５０４に対して同期開始ジョブに従い、サーバー１２０上で動作するサーバーアプリ４００への同期開始要求を送信する。
【００１７】
同期開始要求にはデジタル複合機１１０ａの機種のシリアル番号、ソフトウェアバージョン等の情報と共に機器の現在時刻が含まれる。このことにより、それ以降の同期処理における機器の特定と差分同期における順序保障とに必要となる機器情報をサーバー１２０に登録することができる。サーバーアプリ４００への機器情報の登録が成功すると、制御部５０２は、次にデバイスの設定値や、ユーザー毎に管理する個人設定情報やグループ毎に管理されるアドレス帳等の設定情報等の同期対象のデータをサーバー１２０に送信する。ここではサーバー１２０のデータベース４１０に存在しないユーザーやグループのデータのみをサーバー１２０へ送信する必要がある。そのためデータの送信前に、制御部５０２は、サーバー１２０上のデータベース４１０へ登録済みのユーザーやグループのリスト情報の取得を実施し、サーバー１２０上に存在しないユーザーやグループのみのデータをサーバー１２０へ送信する。
次に必要に応じて、制御部５０２は、サーバー１２０から最新のデータの取得を実施する。例えば定期ポーリングにより同期しているデータに関しては、制御部５０２は、この時点で最新のデータをサーバー１２０から取得しておく。一方、デジタル複合機１１０ａ上のＨＤＤ２０５は一般的なパソコンに比べ容量が小さい。そのためデジタル複合機１１０ａ上で管理できるデータ数はサーバー１２０で管理できるデータ数よりも少ない場合がある。そのような場合には、制御部５０２は、利用時等、必要になったタイミングでサーバー１２０からデータを取得するとしてもよい。この場合、制御部５０２は、サーバー１２０へデータの送信が完了した後に一旦、デジタル複合機１１０ａに存在するデータを消去し、ユーザーがログインした際等に、必要に応じてサーバー１２０からデータを取得する。
以上の処理によりデジタル複合機１１０ａ上で動作するクライアントアプリ５００と、サーバー１２０上で動作するサーバーアプリ４００とで差分同期を行うための準備が整ったこととなる。
【００１８】
＜実施形態１＞
次に実施形態１におけるデジタル複合機１１０ａ上で動作するクライアントアプリ５００が、サーバー１２０上で動作するサーバーアプリ４００との同期処理を停止する際の処理について説明する。
表Ａは実施形態１において同期を停止する直前のサーバー１２０で管理されているユーザーリストと各ユーザーが個人設定情報として持つ個人アドレス帳とを表した表である。表Ｂは実施形態１において同期を停止するデジタル複合機１１０ａで管理されているユーザーリストとユーザーが個人設定情報として持つ個人アドレス帳とを表した表である。ユーザーリストの表には登録されているユーザーのユーザーＩＤとユーザー名とが保存され、個人アドレス帳には各ユーザーＩＤが持つ個人アドレス帳の番号と、そのアドレス帳に登録されている宛先の氏名と宛先と最終更新時刻とが登録されている。
【００１９】
【表１】
2018195882.tif 000003
【００２０】
【表２】
2018195882.tif 000004
【００２１】
ここで表Ａと表Ｂとの個人アドレス帳を比較した場合には、表ＢのユーザーＩＤが０２、０３の宛先に差異があることが確認できる。また最終更新時刻からもサーバー１２０上で管理されている宛先よりも、デジタル複合機１１０ａで管理されている値が古いことが分かる。例えばデジタル複合機１１０ａにユーザーがログインしたタイミングでサーバー１２０から最新の個人アドレス帳を取得するとしている場合には、ＵｓｅｒＢ、ＵｓｅｒＣのログインがあるまではデジタル複合機１１０ａの個人アドレス帳は古いままとなる。そのような場合には表Ａ、表Ｂで示されたように差異が発生した状態となってしまう。
【００２２】
本実施形態では表Ａ、表Ｂの状態の不整合を解消した後に停止処理を実行する方法の一例について図８、図９、図１０を用いて説明する。
図８は、図６で示した同期開始処理が完了した後の、同期状態においてクライアント同期アプリケーション５００の制御部５０２により実行される処理の一例を示すフローチャートである。
Ｓ８０１において、制御部５０２は、ユーザーがデータ同期管理画面７０１から開始７０２又は停止７０３を選択し、実行ボタン７０４が選択されたことを示すイベントを処理受付部５０１より受信する。Ｓ８０１で受信するイベントとしては、例えば、デジタル複合機のシャットダウン、スリープに関する状態の変化を示すイベント、個人アドレス帳等の設定値が変更されたことを示す同期処理要求のイベント等がある。また、Ｓ８０１で受信するイベントとしては、サーバーとの同期処理状態を変更する同期停止に関するイベント等も含む。
Ｓ８０２において、制御部５０２は、Ｓ８０１で受信したイベントが同期状態変更イベントか否かを判定する。制御部５０２は、同期状態変更イベントであると判定した場合（Ｓ８０２においてＹｅｓ）、Ｓ８０３へ進み、同期状態変更イベントでないと判定した場合（Ｓ８０２においてＮｏ）、Ｓ８０４へ進む。同期状態変更イベントは、サーバー１２０とのデータの同期処理の停止指示の一例である。
Ｓ８０３の処理の詳細については図９を用いて後述する。制御部５０２は、Ｓ８０３の処理が終了するとＳ８０８へ進む。
Ｓ８０８において、制御部５０２は、Ｓ８０１で受信したイベントがデジタル複合機１１０ａのシャットダウンイベントか否かを判定する。受信したイベントがデジタル複合機１１０ａのシャットダウンイベントでない場合、制御部５０２は、イベント受信ループを続けると判定し（Ｓ８０８においてＮｏ）、再びイベント受信ループの先頭に戻る。そして再び、制御部５０２は、処理受付部５０１よりイベントを受信するのを待つこととなる。受信したイベントがデジタル複合機１１０ａのシャットダウンイベントである場合、制御部５０２は、イベント受信ループを終了すると判定し（Ｓ８０８においてＹｅｓ）、図８に示すフローチャートの処理を終了する。
【００２３】
Ｓ８０４において、制御部５０２は、受信したイベントが同期ジョブ要求か否かを判定する。制御部５０２は、同期ジョブ要求であると判定した場合（Ｓ８０４においてＹｅｓ）、Ｓ８０５へ進み、同期ジョブ要求でないと判定した場合（Ｓ８０４においてＮｏ）、Ｓ８０６へ進む。
Ｓ８０５において、制御部５０２は、同期ジョブの実行処理が実行する。より具体的に説明すると、制御部５０２は、通信処理部５０４を介しサーバー１２０で動作するサーバーアプリ４００へ同期要求を送信する。
Ｓ８０６において、制御部５０２は、受信したイベントが装置状態変更要求か否かを判定する。制御部５０２は、例えば、受信したイベントがデジタル複合機１１０ａのスリープの要求やシャットダウンの要求であれば装置状態変更要求と判定する。制御部５０２は、受信したイベントが装置状態変更要求であると判定した場合（Ｓ８０６においてＹｅｓ）、Ｓ８０７に進み、受信したイベントが装置状態変更要求でないと判定した場合（Ｓ８０６においてＮｏ）、Ｓ８０８に進む。
Ｓ８０７において、制御部５０２は、装置状態変更要求に応じて必要なクライアントアプリ５００の処理を実行する。シャットダウンの要求であれば、制御部５０２は、イベント受信を終了するための内部状態を有効化し、Ｓ８０８へ進む。そして、Ｓ８０８で、制御部５０２は、イベント受信ループを抜けることとなる。
【００２４】
次に図９を用いて図８のＳ８０３の同期状態変更処理の詳細について説明する。
Ｓ９０１において、制御部５０２は、クライアントアプリ５００からサーバーアプリ４００へのデータ同期処理が完了しているか否かを判定する。制御部５０２は、クライアントアプリ５００からサーバーアプリ４００へのデータ同期処理が完了していると判定した場合（Ｓ９０１においてＹｅｓ）、Ｓ９０３に進む。また、制御部５０２は、クライアントアプリ５００からサーバーアプリ４００へのデータ同期処理が完了していないと判定した場合（Ｓ９０１においてＮｏ）、Ｓ９０２に進む。例えば、デジタル複合機１１０ａ上で同期の停止を指示したユーザーとは異なるユーザーがデータを変更していたが、まだサーバーへの反映が完了していない場合、制御部５０２は、データ同期処理が完了していないと判定する。
Ｓ９０２において、制御部５０２は、同期処理の完了を待つ。同期が完了したら制御部５０２は、Ｓ９０３に進む。
Ｓ９０３において、制御部５０２は、データ取得処理を実行する。データ取得処理の詳細は、後述する図１０を用いて説明する。制御部５０２は、データ取得処理が終了すると、Ｓ９０４に進む。
Ｓ９０４において、制御部５０２は、同期停止要求を通信処理部５０４へ依頼する。通信処理部５０４は、サーバーアプリ４００に対して同期停止要求を送信する。同期停止要求を受信したサーバーアプリ４００は、データベース４１０に登録されている、Ｓ６０４で登録されたデジタル複合機１１０ａのデバイスを特定するための機器情報を削除しデジタル複合機１１０ａとの同期処理を停止する。Ｓ９０４の処理は、データの反映後、サーバー１２０に同期処理を停止する要求を送信する処理の一例である。
【００２５】
次にＳ９０３のデータ取得処理の詳細について図１０を用いて説明する。本実施形態では、データの一例としてユーザーデータを用いて説明しているがユーザーデータに限定するものではなく、他にはグループデータや装置の設定値、その他の設定値であってもよい。
図１０のフローチャートでは、制御部５０２は、表Ｂのユーザーリストに基づき全ユーザー分のデータ取得処理をデータ取得処理ループにて実施する。制御部５０２は、全ユーザーのデータ取得処理が完了すると、データ取得処理ループを抜けデータ取得処理を終了する。ユーザーリストは、一覧の一例である。一覧は、登録されているユーザーのユーザーリストであってもよいし、登録されている一人以上のユーザーを含むグループのグループリストであってもよい。制御部５０２が、表Ｂのユーザーリストを取得する処理は、デジタル複合機１１０ａに記憶されている一覧を取得する第１の取得処理の一例である。
Ｓ１００１において、制御部５０２は、通信処理部５０４に対して、サーバー１２０上で動作するサーバーアプリ４００に対する取得要求を送信する処理を依頼する。
Ｓ１００２において、制御部５０２は、通信処理部５０４から取得した通信結果に基づいて、サーバー１２０との通信エラーが発生したか否かを判定する。制御部５０２は、通信エラーが発生したと判定した場合（Ｓ１００２においてＹｅｓ）、Ｓ１０１１に進み、通信エラーが発生していないと判定した場合（Ｓ１００２においてＮｏ）、Ｓ１００３に進む。
Ｓ１００３において、制御部５０２は、リトライ回数を初期化する。リトライ回数は後述するＳ１０１１でリトライ回数の上限に達したかを判定するために利用される値である。例えば、リトライ回数は、ＲＡＭ２０３等に保持される。
Ｓ１００４において、制御部５０２は、通信処理部５０４から取得した取得要求に対応するデータをアプリケーション５１０へ渡しデータを反映させる。Ｓ１００４の処理は、同期対象のデータをサーバー１２０より取得し、取得したデータを反映させる反映処理の一例である。反映処理には、サーバー１２０より取得した同期対象のデータで、取得した同期対象のデータに対応するデジタル複合機１１０ａの同期対象のデータを更新する更新処理が含まれる。また、反映処理には、取得した同期対象のデータに対応するデジタル複合機１１０ａの同期対象のデータが存在しない場合、取得した同期対象のデータを登録する処理が含まれる。
【００２６】
Ｓ１００５において、制御部５０２は、Ｓ１００４にてデータを反映した際の反映結果をアプリケーション５１０より取得し、容量の制限を超えたか否かを判定する。これは、デジタル複合機１１０ａは一般的なパソコンに比べ利用可能なＨＤＤ２０５の容量に制限があり、容量の制限を超えてしまう可能性があるからである。容量の制限を超えてしまった場合には表Ｂのユーザーリストに存在する全ユーザー分のデータの取得を行うことができないこととなる。制御部５０２は、容量の制限を超えたと判定すると（Ｓ１００５においてＹｅｓ）、Ｓ１００６に進み、容量の制限を超えていないと判定すると（Ｓ１００５においてＮｏ）、データ取得処理のループを抜ける。
Ｓ１００６において、制御部５０２は、図１１（Ａ）で示す容量制限エラー画面１１００を操作部２２０又は、デジタル複合機１１０ａへ接続されたＰＣ等の情報処理装置のＷｅｂブラウザへ表示する。
制御部５０２は、容量制限エラー画面１１００に、デジタル複合機１１０ａに保存可能な容量を超えてしまったことや、容量の制限に達したため更新されなかったユーザー名を表示するようにしてもよい。容量の制限に達したため更新されなかったユーザー名は、容量を超えたためデータの反映が完了していないユーザーの情報の一例である。更に制御部５０２は、更新するユーザーを選択した後に再度データ更新を行うか、それともデータを更新せずに同期を停止するかを選択するためのラジオボタン１１０１、１１０２を選択可能に表示してもよい。Ｓ１００６の処理は、データの反映の際にデジタル複合機１１０ａに保存可能な容量を超えた場合、容量を超えたことを示す画面を表示する第２の表示処理の一例である。
Ｓ１００７において、制御部５０２は、処理受付部５０１から、ユーザーが容量制限エラー画面１１００にて選択したラジオボタン１１０１、１１０２の情報を取得する。制御部５０２は、取得した情報に基づき、「ユーザーを選択しデータを更新」が選択されたか否かを判定する。制御部５０２は、ラジオボタン１１０１が選択された場合、「ユーザーを選択しデータを更新」が選択されたと判定する。制御部５０２は、「ユーザーを選択しデータを更新」が選択されたと判定すると（Ｓ１００７においてＹｅｓ）、Ｓ１００８に進む。また、制御部５０２は、「ユーザーを選択しデータを更新」が選択されていないと判定すると（Ｓ１００７においてＮｏ）、データ取得処理のループを抜ける。
【００２７】
Ｓ１００８において、制御部５０２は、図１１（Ｂ）で示すユーザーデータ選択画面１１１０を操作部２２０又は、デジタル複合機１１０ａへ接続されたＰＣ等の情報処理装置のＷｅｂブラウザへ表示する。Ｓ１００８の処理は、データを反映するユーザーを選択する第２の選択画面を表示する第３の表示処理の一例である。
図１１（Ｂ）のユーザーデータ選択画面１１１０にはデジタル複合機１１０ａに存在するユーザーのユーザーリストが表示される。また、ユーザーデータ選択画面１１１０には各ユーザーの左端にあるチェックボックス１１１１が含まれる。操作者は、チェックボックス１１１１をクリックし、更新するユーザーを選択する。ユーザーデータ選択画面１１１０には全ユーザーを選択する選択ボタン１１１２や選択を解除する解除ボタン１１１３、ユーザーを並び替える並び替えボタン１１１４を設けてもよい。また並び替えボタン１１１４が選択された際には、制御部５０２は、並び替えの方法としてユーザー名順、最終ログイン日時順等に並び替えるための表示制御を行うようにしてもよい。又は、制御部５０２は、現在、デジタル複合機１１０ａに存在するユーザー毎のデータ容量を表示しユーザー選択の際の判断条件に利用できるようにしてもよい。
Ｓ１００９において、制御部５０２は、処理受付部５０１から、更新ボタン１１１５がユーザーにより選択されたことを示す通知を待つ。制御部５０２は、通知を受信するとＳ１０１０へ進む。
Ｓ１０１０において、制御部５０２は、現在、デジタル複合機１１０ａに存在し、ユーザーデータ選択画面１１１０にてチェックボックス１１１１がチェックされていないユーザーのユーザーデータに対して削除処理を実施する。制御部５０２は、削除処理の実行後、再度、データ取得処理ループの最初から処理をやり直す。
【００２８】
次にＳ１００２の処理において通信エラーが発生したと判定した場合の処理について説明する。
Ｓ１０１１において、制御部５０２は、リトライ回数があらかじめ設定されたリトライ上限回数以下であるか否かを判定する。制御部５０２は、リトライ回数があらかじめ設定されたリトライ回数上限以下であれば（Ｓ１０１１においてＮｏ）、Ｓ１０１２へ進み、リトライ回数があらかじめ設定されたリトライ回数上限以下でなければ（Ｓ１０１１においてＹｅｓ）、Ｓ１０１３へ進む。
Ｓ１０１２において、制御部５０２は、リトライ回数を増やした後に再度、Ｓ１００１へ進む。そして、制御部５０２は、データ取得要求を送信する処理を実行する。
Ｓ１０１３において、制御部５０２は、図１１（Ｃ）の通信エラー画面１１２０を操作部２２０又は、デジタル複合機１１０ａへ接続されたＰＣ１３０等の情報処理装置のＷｅｂブラウザへ表示する。そして、制御部５０２は、ユーザーが選択したラジオボタン１１２１、１１２２の情報を取得する。
Ｓ１０１４において、制御部５０２は、取得した情報に基づき、「リトライせずに同期を停止」が選択されたか否かを判定する。制御部５０２は、ラジオボタン１１２１が選択された場合、「リトライせずに同期を停止」が選択されたと判定する。制御部５０２は、「リトライせずに同期を停止」が選択されたと判定すると（Ｓ１０１４においてＹｅｓ）、図１０に示すデータ取得処理を終了する。制御部５０２は、「リトライせずに同期を停止」が選択されていないと判定すると（Ｓ１０１４においてＮｏ）、Ｓ１０１５に進む。
Ｓ１０１５において、制御部５０２は、リトライ回数を初期化し、再びＳ１００１へ戻る。そして、制御部５０２は、データ取得要求を送信する処理を実行する。
【００２９】
以上の処理によりデジタル複合機１１０ａにおいてデータの同期処理を停止しようとした場合に表Ｂに示されるようにデジタル複合機１１０ａが最新のデータに更新されていない場合であっても、同期処理の停止前に全データの更新が実行される。その結果、デジタル複合機の管理者はデータの同期処理を停止する場合に特に意識をせずに停止をするだけでサーバーのデータと同じ状態にクライアントのデータを更新し同期処理を停止することができる。よって、データを同期する環境で利用していたデジタル複合機を、その環境から切り離し利用したい場合等において今まで利用していた環境と同等の設定値を切り離した環境でも利用することができる。
【００３０】
＜実施形態２＞
実施形態１では、制御部５０２は、同期停止の指示を受け付けた際に、デジタル複合機１１０ａ上のユーザーリストを基に全ユーザーのユーザーデータの取得処理を実施し、その後、同期の停止処理を実行した。実施形態２では、制御部５０２は、同期停止の指示を受け付けた際に、同期の停止処理実行前にユーザーリストをサーバー１２０から取得し、そのユーザーリストに基づいて選択されたユーザーのユーザーデータの更新処理を実行する。
表Ｃは実施形態２において同期を停止する直前のサーバー１２０で管理されているユーザーリストとユーザーが個人設定情報として持つ個人アドレス帳とを表した表である。表Ｄは実施形態２において同期を停止するデジタル複合機１１０ａで管理されているユーザーリストとユーザーが個人設定情報として持つ個人アドレス帳とを表した表である。
【００３１】
【表３】
2018195882.tif 000005
【００３２】
【表４】
2018195882.tif 000006
【００３３】
ここで表Ｃと表Ｄとの個人アドレス帳を比較した場合には、表ＣにはユーザーＩＤが０１、０２、０３、０４、０５のユーザーが存在しているが、表ＤにはユーザーＩＤが０１、０２、０３しか存在していないことが確認できる。本実施形態においてユーザーがデジタル複合機１１０ａや１１０ｂにログインしたことを処理受付部５０１が受信する。すると制御部５０２は、通信処理部５０４に対してユーザーデータの取得要求を実施する。そのためサーバー１２０に接続されているデジタル複合機が１１０ａ、１１０ｂの２台存在するが、ユーザーＩＤが０４、０５であるＵｓｅｒＤ、ＵｓｅｒＥはデジタル複合機１１０ｂにしかログイン処理を実施していない場合にこのような状況となってしまう。またＵｓｅｒＢ、ＵｓｅｒＣの宛先表のデータも表Ｃと表Ｄとでは差異があり、サーバー１２０に存在する最新のユーザーデータで更新されていないことが確認できる。
【００３４】
ここでデジタル複合機１１０ａの管理者がデータ同期処理を停止する操作等を行った場合の処理について説明する。
実施形態２において実施形態１と同様、制御部５０２は、図８のフローチャートにおいて、処理受付部５０１からのイベントを待つ。そして、制御部５０２は、イベントに応じた処理を実行する。
図８のＳ８０３に相当する実施形態２における処理を示した図が図１２である。図１２の処理は、実施形態１の図９とほとんどが同様の処理となるため差分であるＳ１２０１、Ｓ１２０２、Ｓ１２０３の処理等を主に説明する。
Ｓ１２０１において、制御部５０２は、サーバー１２０からユーザーリストを取得する。Ｓ１２０１の処理は、サーバー１２０より一覧を取得する第２の取得処理の一例である。
Ｓ１２０１の処理は、ユーザーリストの取得処理であり、サーバー１２０から停止時に更新するユーザーのリスト（ユーザーリスト）を取得する処理である。Ｓ１２０１で取得するデータとして、本実施形態ではユーザーリストを例に説明しているがユーザーリストに限定するものではなく、例えばグループのリスト情報等、すべてのデータの同期を実施せずに、部分的なデータの更新を可能にするための情報であればよい。
Ｓ１２０１の処理の詳細は、後述する図１３を用いて説明する。
Ｓ１２０２において、制御部５０２は、Ｓ１２０１でユーザーリストの取得が成功したか否かを判定する。制御部５０２は、ユーザーリストの取得が成功していると判定した場合（Ｓ１２０２においてＹｅｓ）、Ｓ９０３へ進み、ユーザーリストの取得が成功していないと判定した場合（Ｓ１２０２においてＮｏ）、Ｓ１２０３へ進む。本実施形態のＳ９０３では、後述する図１４で選択されたユーザーのユーザーデータが取得される。本実施形態のＳ９０３の処理は、第１の選択画面を介して選択されたユーザーのデータをサーバー１２０より取得する処理の一例である。
Ｓ１２０３において、制御部５０２は、そのまま同期を停止するか、再度、ユーザーリストの取得を実施するかを判定する。このとき、制御部５０２は、図１１（Ｃ）のように管理者が選択した値、又はあらかじめ定められた設定値に基づき判定を実施する。制御部５０２は、そのまま同期を停止すると判定した場合（Ｓ１２０３においてＹｅｓ）、Ｓ９０４に進み、再度リトライを実施すると判定した場合（Ｓ１２０３においてＮｏ）、Ｓ１２０１へ進む。そして、制御部５０２は、再度、ユーザーリストの取得処理を実施する。
【００３５】
次に図１３を用いてＳ１２０１のユーザーリスト取得処理の詳細について説明する。
Ｓ１３０１において、制御部５０２は、通信処理部５０４に対して、サーバー１２０に対するユーザーリストの取得要求の送信を依頼する。サーバー１２０のサーバーアプリ４００は、ユーザーリストの取得要求を受信するとデータベース４１０で管理しているユーザーリストを返却する。停止処理時にサーバー１２０へ送信するユーザーリストの取得要求は停止処理直前に実行する専用のリクエストとしてもよい。サーバー１２０の制御部４０２は、専用のリクエストを受信した場合にのみ返却するユーザーリストを別途定義しておき、このユーザーリストを返却するようにしてもよい。
図１４は、ユーザーデータ選択画面１４００の一例を示した図である。制御部５０２は、サーバー１２０より取得したユーザーリストを基に図１４の画面を生成し、操作部２２０に表示する。又は、制御部５０２は、図１４の画面をデジタル複合機１１０ａへ接続されたＰＣ等の情報処理装置のＷｅｂブラウザへ表示するようにしてもよい。この処理は、一覧に基づいてサーバー１２０よりデータを取得するユーザーを選択する第１の選択画面を表示する第１の表示処理の一例である。データを更新するユーザーのチェックボックス１４０１にチェックし、決定ボタン１４０２を選択することでデータを更新するユーザーを設定する。ユーザーデータ選択画面１４００には全ユーザーを選択する選択ボタン１４０３や選択を解除する解除ボタン１４０４、ユーザーを並び替える並び替えボタン１４０５を設けてもよい。
Ｓ１３０１のユーザーリスト取得要求の処理が終了すると、制御部５０２は、Ｓ１３０２へ進む。
【００３６】
Ｓ１３０２において、制御部５０２は、通信処理部５０４から取得した通信結果に基づいて、通信エラーが発生したか否かを判定する。制御部５０２は、通信エラーが発生していないと判定した場合（Ｓ１３０２においてＮｏ）、ユーザーリストが正しく取得できたので、図１３に示すフローチャートの処理を終了する。一方、制御部５０２は、通信エラーが発生したと判定した場合（Ｓ１３０２においてＹｅｓ）、Ｓ１３０３へ進む。
Ｓ１３０３において、制御部５０２は、最大リトライ回数に達したか否かを判定する。制御部５０２は、最大リトライ回数に達していないと判定した場合（Ｓ１３０３においてＮｏ）、Ｓ１３０５へ進み、最大リトライ回数に達しと判定した場合（Ｓ１３０３においてＹｅｓ）、Ｓ１３０４へ進む。
Ｓ１３０４において、制御部５０２は、リトライエラーを操作部２２０又は、デジタル複合機１１０ａへ接続されたＰＣ等の情報処理装置のＷｅｂブラウザへ表示する。そして、制御部５０２は、図１３に示すフローチャートの処理を終了する。この場合、図１２のＳ１２０２において、制御部５０２は、ユーザーリストの取得に失敗したと判定し、Ｓ１２０３の判定処理に進む。
Ｓ１３０５において、制御部５０２は、リトライ回数を増加する。そして、制御部５０２は、Ｓ１３０１へ進み、再度、ユーザーリスト取得要求を送信する処理を実行する。
【００３７】
以上の処理によりデジタル複合機１１０ａにおいてデータの同期処理を停止しようとした場合にサーバー１２０からユーザーリストを取得し、そのユーザーリストに基づき最新の状態にするユーザーを選択してから停止をすることができる。このようにすることで、データを同期する環境で利用していたデジタル複合機を、同期環境から切り離したい場合において、特定のユーザーを指定し、デジタル複合機１１０ａを今まで利用していないユーザーに関しても最新のデータに更新することができる。
【００３８】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００３９】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
上述したデジタル複合機１１０、サーバー１２０は、共に１つのＣＰＵがＲＯＭ又はＨＤＤに記憶されたプログラムに基づき処理を実行するものとして説明を行った。しかし、デジタル複合機１１０、サーバー１２０は、複数のＣＰＵ（又はプロセッサ）が複数のＲＡＭ、ＨＤＤ等を共同させてプログラムに基づき処理を実行するようにしてもよい。また、デジタル複合機１１０、サーバー１２０のソフトウェア構成の一部又は全てをハードウェアとしてデジタル複合機１１０、サーバー１２０に実装するようにしてもよい。
また、制御部５０２は、実施形態２に示したようにサーバー１２０に対してユーザーリストの取得を要求しユーザーリストを取得できない場合、実施形態１の処理を実行するようにしてもよい。
【００４０】
以上、上述した実施形態によれば、同期停止後、同期していた最新のデータを利用することができる。
【符号の説明】
【００４１】
１１０ａ  ＭＦＰ
１２０    サーバーＰＣ
２０２    ＣＰＵ
２０５    ＨＤＤ
２２０    操作部
【図１】
2018195882.tif 000007
【図２】
2018195882.tif 000008
【図３】
2018195882.tif 000009
【図４】
2018195882.tif 000010
【図５】
2018195882.tif 000011
【図６】
2018195882.tif 000012
【図７】
2018195882.tif 000013
【図８】
2018195882.tif 000014
【図９】
2018195882.tif 000015
【図１０】
2018195882.tif 000016
【図１１】
2018195882.tif 000017
【図１２】
2018195882.tif 000018
【図１３】
2018195882.tif 000019
【図１４】
2018195882.tif 000020