(57)【特許請求の範囲】
【請求項１】
読取対象である複数の紙文書全てにそれぞれ付され、前記紙文書を一意に特定するための識別情報を読み取る読取装置から、１以上の紙文書のそれぞれから前記読取装置が読み取った識別情報を取得し、取得した識別情報と当該識別情報の取得の順番を表す情報とを第１記憶手段に登録する登録ステップと、
順序付けされた複数の紙文書のそれぞれに付された識別情報のうち、前記第１記憶手段に未登録の識別情報を特定する特定ステップと、
をコンピュータに実行させ、
前記特定ステップは、
前記順序付けされた複数の紙文書の順番を飛ばして識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報と、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番に相当する取得の順番で前記第１記憶手段に登録された識別情報と、を比較する比較処理を行い、前記比較処理の対象の２つの識別情報の不一致を検出するまで、前記読取装置からの前記識別情報の取得および前記比較処理を繰り返す、第１モード処理ステップと、
前記第１モード処理ステップにおいて前記比較処理の対象の２つの識別情報の不一致を検出した場合に、前記順序付けされた複数の紙文書において、前記不一致が検出された識別情報の紙文書と、前記不一致が検出された識別情報の取得の１回前に前記読取装置から取得された識別情報の紙文書と、の間に配置された紙文書について、１つずつ順に識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置によって読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報を前記未登録の識別情報として特定する第２モード処理ステップと、
を含む、
ことを特徴とするプログラム。
【請求項２】
請求項１に記載のプログラムにおいて、
前記第２モード処理ステップにおいて、前記順序付けされた複数の紙文書について、前記不一致が検出された識別情報の紙文書から１つずつ順番を遡って識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報と、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す情報と、を関連付けて第２記憶手段に登録する、
ことを特徴とするプログラム。
【請求項３】
請求項２に記載のプログラムにおいて、
前記第２モード処理ステップにおいて、
前記読取装置により読み取りされて取得された識別情報が前記第１記憶手段に登録されている場合に、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す値から、当該識別情報に関連付けて前記第１記憶手段に登録された順番を表す値を減算した結果の値を、前記第２モード処理ステップの処理対象の紙文書のうち識別情報が前記第１記憶手段に登録されていない紙文書の数として保持し、
前記第２記憶手段に識別情報が登録されるたびに、前記登録されていない紙文書の数として保持された値を１だけ減少させ、
前記保持された値が０であり、かつ、前記第２記憶手段に登録された識別情報の数が１つの場合には、前記第２記憶手段に登録された識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直し、
前記保持された値が０であり、かつ、第２記憶手段に登録された識別情報の数が複数の
場合には、前記第２記憶手段に登録された識別情報のうち最も早い順番に関連付けられた識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直す処理を前記第２記憶手段に登録された識別情報のすべてが削除されるまで繰り返す、
ことを特徴とするプログラム。
【請求項４】
請求項３に記載のプログラムにおいて、
前記特定ステップの開始時に、特定すべき識別情報の総数の、利用者による入力を受け付け、
前記第２モード処理ステップにおいて、さらに、
前記第２記憶手段に識別情報が登録されるたびに、前記総数を１だけ減少させ、
前記総数または前記保持された値が０であり、かつ、前記第２記憶手段に登録された識別情報の数が１つの場合には、前記第２記憶手段に登録された識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直し、
前記総数または前記保持された値が０であり、かつ、第２記憶手段に登録された識別情報の数が複数の場合には、前記第２記憶手段に登録された識別情報のうち最も早い順番に関連付けられた識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直す処理を前記第２記憶手段に登録された識別情報のすべてが削除されるまで繰り返す、
ことを特徴とするプログラム。
【請求項５】
請求項３または４に記載のプログラムにおいて、
前記第２モード処理ステップにおいて、前記第２記憶手段に登録された識別情報のすべてが前記第２記憶手段から削除されて前記第１記憶手段に登録された場合に、前記第１モード処理ステップを前記コンピュータに実行させる、
ことを特徴とするプログラム。
【請求項６】
請求項１から５のいずれか１項に記載のプログラムにおいて、
前記第１モード処理ステップにおいて、前記読取装置から取得した識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す値が、前記第１記憶手段に登録された識別情報の数と一致する場合に、前記コンピュータに、前記第１モード処理ステップの実行を終了させ、かつ、前記登録ステップを実行させる、
ことを特徴とするプログラム。
【請求項７】
請求項１に記載のプログラムにおいて、
前記第２モード処理ステップにおいて、前記順序付けされた複数の紙文書について、前記不一致が検出された識別情報の取得の１回前に前記読取装置から取得された識別情報の紙文書から１つずつ順番に識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報を、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直す、
ことを特徴とするプログラム。
【請求項８】
読取対象である複数の紙文書全てにそれぞれ付され、前記紙文書を一意に特定するための識別情報を読み取る読取装置から、１以上の紙文書のそれぞれから前記読取装置が読み取った識別情報を取得し、取得した識別情報と当該識別情報の取得の順番を表す情報とを第１記憶手段に登録する登録手段と、
順序付けされた複数の紙文書のそれぞれに付された識別情報のうち、前記第１記憶手段に未登録の識別情報を特定する特定手段と、
を備え、
前記特定手段は、
前記順序付けされた複数の紙文書の順番を飛ばして識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報と、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番に相当する取得の順番で前記第１記憶手段に登録された識別情報と、を比較する比較処理を行い、前記比較処理の対象の２つの識別情報の不一致を検出するまで、前記読取装置からの前記識別情報の取得および前記比較処理を繰り返す、第１モード処理手段と、
前記第１モード処理手段において前記比較処理の対象の２つの識別情報の不一致を検出した場合に、前記順序付けされた複数の紙文書において、前記不一致が検出された識別情報の紙文書と、前記不一致が検出された識別情報の取得の１回前に前記読取装置から取得された識別情報の紙文書と、の間に配置された紙文書について、１つずつ順に識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置によって読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報を前記未登録の識別情報として特定する第２モード処理手段と、
を含む、
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムおよび情報処理装置に関する。
【背景技術】
【０００２】
特許文献１には、入力済みのデータを再度入力し、最初に入力したデータと再入力したデータとを比較することで、入力データの正否を確認する機能（「ベリファイ」と呼ばれる）を備えるデータエントリ装置が開示されている。特許文献１に記載の技術では、さらに、ベリファイの処理による比較の結果、最初に入力したデータと再入力したデータとが一致しない部分を対象として、再度、ベリファイの処理を行う。
【０００３】
特許文献２には、データ入力装置において、原稿から文字情報をＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ，光学式文字読取装置）で読み取って認識した文字認識データと、当該原稿上の文字情報をキーボードで入力したキー入力データとの一致を判定し、一致の確認されたデータと一致の確認されなかったデータとを異なる態様で表示させる技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２９３２９９号公報
【特許文献２】特開平５−２７４４６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、各文書に識別情報を付与して文書を管理するシステムにおいて、文書の内容を印刷した紙文書に当該文書の識別情報が機械読取可能な態様で付加されることがある。また、このような紙文書に対する処理を行う場合に、当該紙文書に付された識別情報を、システムの利用者が読取装置により読み取りさせてシステムに入力することもある。複数の紙文書の識別情報を利用者が１つずつ手動で読み取りさせて入力する場合、識別情報の入力漏れが生じる可能性がある。識別情報を入力する対象の紙文書の数が予めわかっている場合、読み取り作業の終了後に、システムに入力された識別情報の数と紙文書の数とを比較して、入力された識別情報の数の方が少なければ、入力漏れが生じていることがわかる。しかし、入力された識別情報の数と紙文書の数との比較によっては、どの紙文書の識別情報の入力が漏れているかを特定することはできない。
【０００６】
本発明は、複数の紙文書それぞれに付された識別情報の利用者による入力作業において、入力対象の紙文書のすべてについて１つずつ入力漏れの有無を確認する場合と比較して、より少ない手順で入力漏れが発生した紙文書を特定するプログラムおよび情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１に係る発明は、読取対象である複数の紙文書全てにそれぞれ付され、前記紙文書を一意に特定するための識別情報を読み取る読取装置から、１以上の紙文書のそれぞれから前記読取装置が読み取った識別情報を取得し、取得した識別情報と当該識別情報の取得の順番を表す情報とを第１記憶手段に登録する登録ステップと、順序付けされた複数の紙文書のそれぞれに付された識別情報のうち、前記第１記憶手段に未登録の識別情報を特定する特定ステップと、をコンピュータに実行させ、前記特定ステップは、前記順序付けされた複数の紙文書の順番を飛ばして識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報と、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番に相当する取得の順番で前記第１記憶手段に登録された識別情報と、を比較する比較処理を行い、前記比較処理の対象の２つの識別情報の不一致を検出するまで、前記読取装置からの前記識別情報の取得および前記比較処理を繰り返す、第１モード処理ステップと、前記第１モード処理ステップにおいて前記比較処理の対象の２つの識別情報の不一致を検出した場合に、前記順序付けされた複数の紙文書において、前記不一致が検出された識別情報の紙文書と、前記不一致が検出された識別情報の取得の１回前に前記読取装置から取得された識別情報の紙文書と、の間に配置された紙文書について、１つずつ順に識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置によって読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報を前記未登録の識別情報として特定する第２モード処理ステップと、を含む、ことを特徴とするプログラムである。
【０００８】
請求項２に係る発明は、請求項１に係る発明において、前記第２モード処理ステップにおいて、前記順序付けされた複数の紙文書について、前記不一致が検出された識別情報の紙文書から１つずつ順番を遡って識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報と、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す情報と、を関連付けて第２記憶手段に登録する。
【０００９】
請求項３に係る発明は、請求項２に係る発明において、前記第２モード処理ステップにおいて、前記読取装置により読み取りされて取得された識別情報が前記第１記憶手段に登録されている場合に、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す値から、当該識別情報に関連付けて前記第１記憶手段に登録された順番を表す値を減算した結果の値を、前記第２モード処理ステップの処理対象の紙文書のうち識別情報が前記第１記憶手段に登録されていない紙文書の数として保持し、前記第２記憶手段に識別情報が登録されるたびに、前記登録されていない紙文書の数として保持された値を１だけ減少させ、前記保持された値が０であり、かつ、前記第２記憶手段に登録された識別情報の数が１つの場合には、前記第２記憶手段に登録された識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直し、前記保持された値が０であり、かつ、第２記憶手段に登録された識別情報の数が複数の場合には、前記第２記憶手段に登録された識別情報のうち最も早い順番に関連付けられた識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直す処理を前記第２記憶手段に登録された識別情報のすべてが削除されるまで繰り返す。
【００１０】
請求項４に係る発明は、請求項３に係る発明において、前記特定ステップの開始時に、特定すべき識別情報の総数の、利用者による入力を受け付け、前記第２モード処理ステップにおいて、さらに、前記第２記憶手段に識別情報が登録されるたびに、前記総数を１だけ減少させ、前記総数または前記保持された値が０であり、かつ、前記第２記憶手段に登録された識別情報の数が１つの場合には、前記第２記憶手段に登録された識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直し、前記総数または前記保持された値が０であり、かつ、第２記憶手段に登録された識別情報の数が複数の場合には、前記第２記憶手段に登録された識別情報のうち最も早い順番に関連付けられた識別情報を前記第２記憶手段から削除すると共に、当該識別情報を、当該順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直す処理を前記第２記憶手段に登録された識別情報のすべてが削除されるまで繰り返す。
【００１１】
請求項５に係る発明は、請求項３または４に係る発明において、前記第２モード処理ステップにおいて、前記第２記憶手段に登録された識別情報のすべてが前記第２記憶手段から削除されて前記第１記憶手段に登録された場合に、前記第１モード処理ステップを前記コンピュータに実行させる。
【００１２】
請求項６に係る発明は、請求項１から５のいずれか１項に係る発明において、前記第１モード処理ステップにおいて、前記読取装置から取得した識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す値が、前記第１記憶手段に登録された識別情報の数と一致する場合に、前記コンピュータに、前記第１モード処理ステップの実行を終了させ、かつ、前記登録ステップを実行させる。
【００１３】
請求項７に係る発明は、請求項１に係る発明において、前記第２モード処理ステップにおいて、前記順序付けされた複数の紙文書について、前記不一致が検出された識別情報の取得の１回前に前記読取装置から取得された識別情報の紙文書から１つずつ順番に識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報を、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番を表す情報に関連付けて前記第１記憶手段に登録し、当該順番以降の順番を表す情報に関連付けて前記第１記憶手段に登録済であった各識別情報を、それぞれ１つ後の順番を表す情報に関連付けて登録し直す。
【００１４】
請求項８に係る発明は、読取対象である複数の紙文書全てにそれぞれ付され、前記紙文書を一意に特定するための識別情報を読み取る読取装置から、１以上の紙文書のそれぞれから前記読取装置が読み取った識別情報を取得し、取得した識別情報と当該識別情報の取得の順番を表す情報とを第１記憶手段に登録する登録手段と、順序付けされた複数の紙文書のそれぞれに付された識別情報のうち、前記第１記憶手段に未登録の識別情報を特定する特定手段と、を備え、前記特定手段は、前記順序付けされた複数の紙文書の順番を飛ばして識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置により読み取りされて取得された識別情報と、当該識別情報が付された紙文書の前記順序付けされた複数の紙文書における順番に相当する取得の順番で前記第１記憶手段に登録された識別情報と、を比較する比較処理を行い、前記比較処理の対象の２つの識別情報の不一致を検出するまで、前記読取装置からの前記識別情報の取得および前記比較処理を繰り返す、第１モード処理手段と、前記第１２モード処理手段において前記比較処理の対象の２つの識別情報の不一致を検出した場合に、前記順序付けされた複数の紙文書において、前記不一致が検出された識別情報の紙文書と、前記不一致が検出された識別情報の取得の１回前に前記読取装置から取得された識別情報の紙文書と、の間に配置された紙文書について、１つずつ順に識別情報の読み取りを行うことを利用者に促す情報を出力し、この出力に応じて前記読取装置によって読み取りされて取得された識別情報が前記第１記憶手段に登録されていない場合に、当該識別情報を前記未登録の識別情報として特定する第２モード処理手段と、を含む、ことを特徴とする情報処理装置である。
【発明の効果】
【００１５】
請求項１または８に係る発明によると、複数の紙文書それぞれに付された識別情報の利用者による入力作業において、入力対象の紙文書のすべてについて１つずつ入力漏れの有無を確認する場合と比較して、より少ない手順で入力漏れが発生した紙文書を特定することができる。
【００１６】
請求項２に係る発明によると、順序付けされた複数の紙文書を飛ばして読み取りさせた識別情報の紙文書を起点として１つずつ遡って、識別情報の入力漏れの有無を確認できる。
【００１７】
請求項３に係る発明によると、第２モード処理ステップの処理対象の紙文書のうち識別情報の入力漏れが発生した紙文書のすべてを特定した時点で、特定した紙文書の識別情報を、登録済の識別情報を登録の順番と共に記憶した記憶手段において対応する順番の位置に挿入して登録できる。
【００１８】
請求項４に係る発明によると、入力漏れが生じた紙文書の総数が利用者により把握されている場合に、入力漏れが発生した紙文書を当該総数だけ第２モード処理ステップで特定した時点で、特定した紙文書の識別情報を、登録済の識別情報を登録の順番と共に記憶した記憶手段において対応する順番の位置に挿入して登録できる。
【００１９】
請求項５に係る発明によると、順序付けされた複数の紙文書のうち第２モード処理ステップの処理対象となった紙文書の他の紙文書について、さらに、識別情報の入力漏れの有無を確認できる。
【００２０】
請求項６に係る発明によると、順序付けされた複数の紙文書のうち識別情報の入力漏れの有無が確認された紙文書の他の紙文書の識別情報を、登録済の識別情報に加えてさらに記憶手段に登録できる。
【００２１】
請求項７に係る発明によると、識別情報の入力漏れが発生した紙文書を特定するたびに、当該特定した紙文書の識別情報を、登録済の識別情報を登録の順番と共に記憶した記憶手段において対応する順番の位置に挿入して登録できる。
【図面の簡単な説明】
【００２２】
【図１】文書を管理するシステムの構成の例を示すブロック図である。
【図２】クライアント端末の内部構成の概略の例を示すブロック図である。
【図３】ＩＤ記憶部のデータ内容の例を示す図である。
【図４】読取モードが通常モードに設定されている場合にクライアント端末が行う処理の例を示す図である。
【図５】探索処理の部分的な手順の例を示す図である。
【図６】探索処理の部分的な手順の例を示す図である。
【図７】探索処理の部分的な手順の例を示す図である。
【図８】探索処理の部分的な手順の例を示す図である。
【図９Ａ】ＩＤ一時記憶部のデータ内容の例を示す図である。
【図９Ｂ】ＩＤ一時記憶部のデータ内容の他の例を示す図である。
【図１０Ａ】ＩＤ記憶部のデータ内容の他の例を示す図である。
【図１０Ｂ】ＩＤ記憶部のデータ内容のさらに他の例を示す図である。
【図１０Ｃ】ＩＤ記憶部のデータ内容のさらに他の例を示す図である。
【図１１】コンピュータのハードウエア構成の例を示す図である。
【発明を実施するための形態】
【００２３】
図１は、文書を管理するシステムの構成の例を示すブロック図である。図１の例のシステムは、クライアント端末１０ａ，１０ｂ，…（以下、「クライアント端末１０」と総称する）とサーバ３０とがネットワーク４０で接続された構成を備える。
【００２４】
クライアント端末１０は、文書に関する処理を行う端末装置である。各クライアント端末１０は、有線または無線により読取装置２０に接続される。クライアント端末１０のユーザは、例えば紙文書５００を用いて何らかの作業を行う場合、紙文書５００の文書ＩＤ５０２を読取装置２０で読み取りさせる。クライアント端末１０は、例えば、読取装置２０で読み取りされた文書ＩＤ５０２をサーバ３０に登録させる処理を行う。クライアント端末１０の詳細については後述する。
【００２５】
読取装置２０は、紙文書５００に付された文書ＩＤ５０２を読み取ってクライアント端末１０に渡す装置である。文書ＩＤ５０２は、紙文書５００の識別情報であり、機械読取可能な態様で紙文書５００に付される。例えば、バーコードや、ＱＲコード（登録商標）などの２次元コードのような機械読取可能な符号に符号化した文書ＩＤ５０２が紙文書５００に印刷される。また例えば、ＯＣＲに適したフォントで、文書ＩＤ５０２を表す文字列（文字、数字、および記号のうち少なくとも１種類以上を含む）を紙文書５００に印刷してもよい。あるいは、例えば、文書ＩＤ５０２を記録したＩＣタグを紙文書５００に貼付してもよい。読取装置２０は、紙文書５００に付された文書ＩＤ５０２の態様に応じた読取機能を備えるものとする。例えば、文書ＩＤ５０２がバーコードまたは２次元コードで紙文書５００に印刷されている場合、読取装置２０として、バーコードリーダまたは２次元コードリーダを用いる。文書ＩＤ５０２を表す文字列が紙文書５００に印刷されている場合、光学文字読取装置を読取装置２０として用いる。また、文書ＩＤ５０２を記録したＩＣタグが紙文書５００に貼付されている場合、ＩＣタグリーダを読取装置２０として用いればよい。
【００２６】
サーバ３０は、本システムで利用される文書を管理するサーバ装置である。サーバ３０は、文書管理部３２および文書情報ＤＢ（データベース）３４を備える。文書管理部３２は、文書の管理に関する処理を行う。例えば、文書管理部３２は、各クライアント端末１０から、当該クライアント端末１０に接続された読取装置２０により読み取りされた文書ＩＤを取得し、文書情報ＤＢ３４に登録する。このとき、文書管理部３２は、文書ＩＤに関連付けて、当該文書ＩＤの読み取りの履歴を表す履歴情報を文書情報ＤＢ３４に登録してもよい。この履歴情報は、例えば、当該文書ＩＤの取得元のクライアント端末１０の識別情報、当該文書ＩＤの読取操作を行ったユーザの識別情報、および当該文書ＩＤの読み取りが行われた時間を表す情報などを含むものであってよい。また、文書管理部３２は、文書ＩＤの読み取りの履歴だけでなく、クライアント端末１０で文書に対して行われた操作の履歴情報を、操作対象の文書の文書ＩＤと共にクライアント端末１０から取得して文書情報ＤＢ３４に登録してもよい。文書に対する操作の例として、電子文書の閲覧、編集、複製、および印刷や、紙文書のスキャンおよび複製などが挙げられる。文書管理部３２は、さらに、文書のアクセス権の管理を行ってもよい。
【００２７】
文書情報ＤＢ３４は、サーバ３０の管理対象の文書に関する情報を記憶するデータベースである。文書情報ＤＢ３４は、例えば、文書ＩＤごとに、当該文書ＩＤの文書に関する情報を記憶する。上述の文書ＩＤの読み取りの履歴情報および文書に対する操作の履歴情報は、文書情報ＤＢ３４に記憶される、文書に関する情報の例である。文書情報ＤＢ３４は、各文書の履歴情報だけでなく、文書の属性情報（例えば、文書の名称、種類、保存場所、作成者、作成日時など）および文書のアクセス権の情報などを各文書の文書ＩＤに関連付けて記憶しておいてもよい。
【００２８】
ネットワーク４０は、装置間の通信を可能とする通信手段であり、例えば、インターネットやＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワークであってよい。
【００２９】
図１では図示を省略するが、読取装置２０に接続されていないクライアント端末１０がネットワーク４０に接続されていてもよい。このようなクライアント端末１０は、例えば、サーバ３０の管理対象の電子文書に対する操作を行うと、この操作の履歴を当該電子文書の文書ＩＤと共にサーバ３０に通知する。
【００３０】
図２を参照し、クライアント端末１０の内部構成の例を説明する。なお、以下の説明では、文書ＩＤを単に「ＩＤ」とも呼ぶ。クライアント端末１０は、ＩＤ受付部１００、読取モード記憶部１１０、モード設定部１２０、ＩＤ登録部１３０、ＩＤ記憶部１４０、探索処理部１５０、ＩＤ一時記憶部１６０、出力処理部１７０、およびＩＤ送信部１８０を備える。
【００３１】
ＩＤ受付部１００は、紙文書から読取装置２０が読み取ったＩＤを受け付ける。言い換えると、ＩＤ受付部１００は、読取装置２０で読み取りされたＩＤを読取装置２０から取得する。ＩＤ受付部１００は、読取モード記憶部１１０に記憶された読取モードに応じて、受け付けたＩＤをＩＤ登録部１３０または探索処理部１５０に渡す。
【００３２】
読取モード記憶部１１０は、現在の読取モードを記憶する記憶手段である。本実施形態の例では、「通常モード」、「スキップモード」、および「シーケンシャルモード」の３種類のうちの１つを表す情報が読取モード記憶部１１０に記憶される。ＩＤ受付部１００は、読取モード記憶部１１０に記憶された読取モードが通常モードであれば、受け付けたＩＤをＩＤ登録部１３０に渡し、スキップモードまたはシーケンシャルモードであれば、受け付けたＩＤを探索処理部１５０に渡す。通常モードは、読み取りされたＩＤを、読み取りの順番にＩＤ記憶部１４０に登録する処理モードである。スキップモードおよびシーケンシャルモードは、通常モードで複数のＩＤを受け付けてＩＤ記憶部１４０に受付の順（つまり、読取の順）に登録させた後、特定の順番で配置された複数の紙文書のうち、ＩＤ記憶部１４０に未登録のＩＤの紙文書を探索するための処理モードである。スキップモードでは、上述の複数の紙文書の順番を飛ばして（スキップして）ＩＤをユーザに読み取りさせ、読み取りされたＩＤをＩＤ記憶部１４０に登録済みのＩＤと比較することで、未登録のＩＤの紙文書が存在する範囲を特定する処理が行われる。シーケンシャルモードでは、スキップモードの処理によって特定された範囲の紙文書のＩＤを１つずつ順番にユーザに読み取りさせ、読み取りされたＩＤをＩＤ記憶部１４０に登録済みのＩＤと比較して、未登録のＩＤを特定する処理が行われる。このように特定されたＩＤの紙文書は、上述の複数の紙文書のＩＤをユーザが通常モードで読み取りさせた際に、ＩＤの入力漏れが生じていた紙文書である。スキップモードおよびシーケンシャルモードの処理により、ＩＤの入力漏れが発生した紙文書が特定される。
【００３３】
モード設定部１２０は、読取モードを設定する処理を行う。モード設定部１２０は、例えば、キーボードやマウスなどの入力装置（図示しない）を介して、ユーザによる読取モードの指定を受け付けて、指定された読取モードを表す情報を読取モード記憶部１１０に書き込む。また、モード設定部１２０は、予め設定された条件が満たされた場合に、ユーザの入力によらず自動的に読取モードの切替を行うこともある。例えば、通常モードでのＩＤの読み取りの後、ＩＤの入力漏れが発生した紙文書を探索する処理の開始をユーザが入力装置を用いて指示した場合に、モード設定部１２０は、読取モードを通常モードからスキップモードに切り替える。また例えば、スキップモードの処理により、特定の順番に配置された複数の紙文書において入力漏れが発生した紙文書の存在する範囲が特定された場合に、スキップモードからシーケンシャルモードに切り替えることもある。また、シーケンシャルモードの処理により、スキップモードの処理で特定された範囲において入力漏れが発生した紙文書が特定された場合に、シーケンシャルモードからスキップモードに切り替えることもある。シーケンシャルモードからスキップモードに切り替えられた場合、スキップモードの処理により、さらに他の範囲でのＩＤの入力漏れの有無が確認される。本実施形態の例において、読取モードの切替は、読取モード記憶部１１０において現在の読取モードを表す情報を書き換えることで行われる。
【００３４】
ＩＤ登録部１３０は、ＩＤ受付部１００から受け取ったＩＤをＩＤ記憶部１４０に登録すると共に、当該ＩＤの登録の順番を表す情報をＩＤ記憶部１４０に登録する。ＩＤ登録部１３０がＩＤ受付部１００から受け取るＩＤは、通常モードで読み取りされて受け付けられたＩＤである。また、ＩＤ記憶部１４０へのＩＤの登録の順番は、通常モードにおいて読取装置２０でＩＤが読み取りされてＩＤ受付部１００で受け付けられた順番であると言える。
【００３５】
ＩＤ記憶部１４０は、通常モードで読み取りされたＩＤを、その登録の順に記憶する記憶手段である。図３に、ＩＤ記憶部１４０のデータ内容の例を示す。図３の例の表では、各ＩＤと当該ＩＤの登録の順番とが互いに関連付けられている。図３は、ＩＤ１，ＩＤ２，…，ＩＤ２０のＩＤがそれぞれ付され、ＩＤの番号の昇順に配置された２０部の紙文書について、ユーザが通常モードでＩＤの読み取りを行う場合の例である。本例において、ユーザは、紙文書の配置の順番に１部ずつ、通常モードで読取装置２０を用いてＩＤを読み取りさせ、このとき、ＩＤ９，ＩＤ１１，ＩＤ２０の紙文書について、ＩＤの読み取りを飛ばしてしまったとする。つまり、ＩＤ９，ＩＤ１１，ＩＤ２０の紙文書について、ＩＤの入力漏れが発生したとする。図３を参照し、最初に入力漏れが発生したＩＤ９の直前のＩＤ８までは、順番「１」〜「８」にそれぞれ対応する番号のＩＤが登録されている。順番「９」には、ＩＤ９を飛ばしてＩＤ１０が関連付けられている。さらに、次の順番「１０」には、ＩＤ１１を飛ばしてＩＤ１２が関連付けられている。また、順番「１１」〜「１７」には、それぞれ、ＩＤ１３〜ＩＤ１９が関連付けられている。なお、最後に入力漏れが発生したＩＤ２０は、図３の例の表に登録されていない。
【００３６】
図２の説明に戻り、探索処理部１５０は、特定の順番で配置された複数の紙文書のＩＤのうち、通常モードの処理においてＩＤの入力漏れが発生した紙文書を探索するための処理を行う。例えば図３を参照する上述の例の場合、ＩＤを入力すべき２０部の紙文書のうち、ＩＤの入力漏れが発生した、ＩＤ９，ＩＤ１１，ＩＤ２０の紙文書を探索するための処理を行う。探索処理部１５０は、スキップモード処理部１５２およびシーケンシャルモード処理部１５４を備える。
【００３７】
スキップモード処理部１５２は、読取モードがスキップモードに設定されている場合に処理を行う。読取モードは、例えば、探索処理部１５０が探索処理の開始を指示するユーザの入力を受け付けた場合に、スキップモードに設定される。スキップモード処理部１５２は、出力処理部１７０に依頼して複数の紙文書の順番をスキップして読み取りされたＩＤを、ＩＤ受付部１００を介して取得し、取得したＩＤとＩＤ記憶部１４０に登録済みのＩＤとを比較することで、ＩＤの入力漏れが発生した紙文書の存在する範囲を特定する。図３を参照する上述の例の場合に、スキップモードにおいて、例えば、２０部の紙文書を先頭の文書（ＩＤ１）から予め設定された部数（本例では１０部）だけスキップした文書（１１部目，ＩＤ１１）のＩＤをユーザが読み取りさせて、ＩＤ受付部１００がＩＤ１１を受け付けたとする。スキップモード処理部１５２は、このように受け付けられたＩＤ１１とＩＤ記憶部１４０に記憶された順番「１１」のＩＤ１３とを比較し、両者が異なることから、ＩＤ１の文書とＩＤ１１の文書との間に、入力漏れが発生した紙文書が存在することを特定する。スキップモード処理部１５２の処理の詳細は後述する。
【００３８】
シーケンシャルモード処理部１５４は、読取モードがシーケンシャルモードに設定されている場合に処理を行う。読取モードは、例えば、スキップモード処理部１５２において入力漏れが発生した紙文書の存在する範囲が特定された場合に、シーケンシャルモードに設定される。シーケンシャルモード処理部１５４は、スキップモード処理部１５２が特定した範囲の紙文書について１部ずつ順に読み取りされたＩＤを、ＩＤ受付部１００を介して取得し、取得したＩＤとＩＤ記憶部１４０に登録済みのＩＤとを比較することで、ＩＤの入力漏れが発生した紙文書を特定する。シーケンシャルモード処理部１５４は、特定した紙文書のＩＤをＩＤ一時記憶部１６０に登録する。例えば、図３を参照する上述の例において、スキップモード処理部１５２によってＩＤ１の文書からＩＤ１１の文書までの間で入力漏れが発生していると特定された場合に、シーケンシャルモード処理部１５４は、ＩＤ１１の文書から順に遡って１部ずつ読み取りされたＩＤがＩＤ記憶部１４０に登録済であるか否かを確認する。例えば、ＩＤ１１は、ＩＤ記憶部１４０に登録済でないことが確認され、ＩＤ１１の文書から１部遡って読み取りされるＩＤ１０は、ＩＤ記憶部１４０に登録済であることが確認される。このため、ＩＤ記憶部１４０に登録済でないＩＤ１１がＩＤ一時記憶部１６０に登録される。シーケンシャルモード処理部１５４の処理の詳細は後述する。
【００３９】
ＩＤ一時記憶部１６０は、シーケンシャルモード処理部１５４によって特定された、入力漏れが発生した紙文書のＩＤを一時的に記憶しておく記憶手段である。探索処理部１５０は、特定の順番で配置された複数の紙文書のうち、ＩＤの入力漏れが発生した紙文書がすべて特定されて一時記憶部１６０に登録されると、ＩＤ一時記憶部１６０に記憶されたＩＤをＩＤ記憶部１４０に移す（つまり、ＩＤ記憶部１４０に登録する）処理を行う。なお、ＩＤの入力漏れが発生した紙文書が「すべて」特定されたか否かを判定する条件および手順については後述する。
【００４０】
出力処理部１７０は、クライアント端末１０における処理の経過や結果を表す情報を出力する。出力処理部１７０は、また、クライアント端末１０における処理においてユーザに対して何らかの操作を促す必要がある場合に、その旨を表す情報を出力することもある。例えば、上述のスキップモードの処理において、文書の順番をスキップしてＩＤの読み取りを行うことをユーザに促す情報を出力したり、上述のシーケンシャルモードの処理において、１部ずつ順番に文書のＩＤの読み取りを行うことをユーザに促す情報を出力したりする。出力処理部１７０による出力は、例えば、出力の対象の情報を、図示しない表示装置に表示させることであってよい。
【００４１】
ＩＤ送信部１８０は、ＩＤ記憶部１４０に記憶されたＩＤをサーバ３０へ送信する。ＩＤ送信部１８０は、例えば、ＩＤ記憶部１４０に新たなＩＤが登録されるたびに、当該ＩＤをサーバ３０に対して送信すればよい。あるいは、例えば、通常モードの処理により複数のＩＤがＩＤ記憶部１４０に登録され、さらに、探索処理部１５０による処理が行われて、ＩＤ一時記憶部１６０に記憶されたＩＤがＩＤ記憶部１４０に登録された後、ＩＤ記憶部１４０に記憶された複数のＩＤを纏めてサーバ３０へ送信してもよい。ＩＤ送信部１８０は、ＩＤだけでなく、各ＩＤのＩＤ記憶部１４０への登録の順番を表す情報をさらにサーバ３０へ送信してもよい。また、各ＩＤの読み取りを指示したユーザ（つまり、クライアント端末１０の操作者）の識別情報、クライアント端末１０の識別情報、および各ＩＤが読み取りされた時間などを含む履歴情報を各ＩＤと共にサーバ３０に送信してもよい。
【００４２】
以下、クライアント端末１０で行われる処理の例を説明する。以下の説明において、クライアント端末１０のユーザは、特定の順番に配置された複数の紙文書それぞれのＩＤを読み取りさせ、これらの複数の紙文書の複数のＩＤをサーバ３０へ登録させるよう、クライアント端末１０に対して指示するものとする。本例において、ユーザは、まず、入力装置を介して、クライアント端末１０に対し、通常モードによるＩＤの読み取りの開始を指示する。この指示に応じて、モード設定部１２０は、通常モードを表す情報を読取モード記憶部１１０に書き込むことで、読取モードを通常モードに設定する。さらに、ユーザは、読取装置２０を用いて、複数の紙文書それぞれのＩＤを、紙文書が配置された順番で１つずつ読み取りさせる。
【００４３】
図４は、読取モードが通常モードに設定されている場合にクライアント端末１０が実行する処理の手順の例を示すフローチャートである。クライアント端末１０は、例えば、通常モードによるＩＤの読み取りの開始を指示するユーザの入力に応じて、モード設定部１２０により読取モードを通常モードに設定した後、図４の例の手順の処理を開始する。
【００４４】
図４を参照し、クライアント端末１０のＩＤ受付部１００は、読取装置２０が紙文書から読み取ったＩＤを読取装置２０から渡されるのを待ち受ける（ステップＳ１０でＮＯ判定、かつステップＳ２２でＮＯ判定のループ）。ＩＤの読取を待ち受けている間に、図示しない入力装置を介してユーザがＩＤ読み取りの終了を指示する入力を行うと（ステップＳ２２でＹＥＳ）、出力処理部１７０は、現時点でＩＤ記憶部１４０に登録済のＩＤの数を図示しない表示装置に表示させ（ステップＳ２４）、図４の例の手順の処理は終了する。
【００４５】
ユーザが読取装置２０を用いて紙文書のＩＤを読み取りさせ、読み取りされたＩＤをＩＤ受付部１００が受け付けると（ステップＳ１０でＹＥＳ）、ＩＤ受付部１００は、受け付けたＩＤをＩＤ登録部１３０に渡し、ＩＤ登録部１３０は、受け取ったＩＤと、当該ＩＤのＩＤ記憶部１４０への登録の順番を表す情報と、を関連付けてＩＤ記憶部１４０に登録する（ステップＳ１２）。例えば、ＩＤ記憶部１４０を参照して、今回受け取ったＩＤの登録の前にすでにＩＤ記憶部１４０に登録済のＩＤの個数を特定し、この個数に１だけ加えた数を、受け取ったＩＤの登録の順番とすればよい。一具体例として、ＩＤ記憶部１４０に図３の例のデータ内容が記憶されている場合に、新たにＩＤを受け付けたとすると、登録済のＩＤのうち最も大きい値の順番「１７」の次の順番「１８」に関連付けて、受け付けたＩＤをＩＤ記憶部１４０に登録すればよい。
【００４６】
ステップＳ１２の後、クライアント端末１０は、現在、ＩＤの入力漏れが発生した紙文書の探索処理を実行中であるか否かを判定する（ステップＳ１４）。探索処理中であれば（ステップＳ１４でＹＥＳ）、ステップＳ１６に進む。ステップＳ１６，Ｓ１８，Ｓ２０の処理については、探索処理の手順の例と併せて後述する。探索処理中でなければ（ステップＳ１４でＮＯ）、ステップＳ１０に戻って、さらなるＩＤの受け付けを待ち受ける。
【００４７】
複数の紙文書について順番に１部ずつ、通常モードで読取装置２０を用いてユーザがＩＤの読み取りを行うと、探索処理中でなければ、ステップＳ１０でＹＥＳ判定されてステップＳ１２でＩＤ記憶部１４０へのＩＤの登録が行われ、ステップＳ１４でＮＯ判定されてステップＳ１０に戻るループ処理により、複数のＩＤが順番にＩＤ記憶部１４０に登録される。このループ処理により、上述の図３の例のようなデータ内容がＩＤ記憶部１４０に登録される。
【００４８】
図３に例示するデータ内容がＩＤ記憶部１４０に登録されていて、ＩＤ受付部１００がＩＤの受付を待ち受けている間（図４のステップＳ１０でＮＯかつステップＳ２２でＮＯのループ）に、ユーザが、ＩＤの読み取りの終了を指示する入力を行ったとする。この場合、ステップＳ２２でＹＥＳ判定され、クライアント端末１０の出力処理部１７０は、ステップＳ２４で、ＩＤ記憶部１４０に登録済のＩＤの数を図示しない表示装置に表示させる。図３を参照する本例では、最後に登録されたＩＤ１９の順番「１７」を登録済のＩＤの個数として表示させる。ステップＳ２４では、登録済のＩＤの個数だけでなく、登録済のＩＤとその登録の順番とを表示させてもよい。つまり、図３の例の表自体を表示させてもよい。ステップＳ２４の表示を確認したユーザは、ＩＤを入力すべき紙文書の合計部数（本例では２０部）を知っていれば、ＩＤ記憶部１４０に１７個のＩＤしか登録されていないことから、３部の紙文書についてＩＤの入力漏れが発生していることを把握する。そこで、ユーザは、入力漏れの発生した紙文書を探索する探索処理の実行をクライアント端末１０に対して指示する。この指示に応じて、クライアント端末１０の探索処理部１５０は探索処理を実行する。図５〜図８は、探索処理の手順の例を示すフローチャートである。また、上述の図４の例の手順におけるステップＳ１０〜Ｓ２０の処理も、探索処理の一部として実行され得る。
【００４９】
探索処理部１５０は、探索処理の実行をユーザから指示されると、まず、図５の例の手順の処理を開始する。
【００５０】
探索処理部１５０は、ＩＤを入力すべき紙文書の全体においてＩＤの入力漏れが発生している紙文書の数を表す全体入力漏れ文書数Ａｎの値を設定する（ステップＳ３０）。ステップＳ３０では、例えば、ユーザが把握している全体入力漏れ文書数Ａｎの値の入力を受け付けて設定すればよい。図３を参照する上述の例では、３部の紙文書についてＩＤの入力漏れが発生していることをユーザが把握しているため、ステップＳ３０で、ユーザにより「３」が入力され、全体入力漏れ文書数Ａｎの値は「３」に設定される。ユーザが全体入力漏れ文書数Ａｎの値を把握していない場合、探索処理部１５０は、その旨を表すユーザの入力を受け付けて、Ａｎの値を「不明」に設定しておけばよい。
【００５１】
次に、探索処理部１５０は、探索文書インデックスＩｓに初期値「１」を設定する（ステップＳ３２）。探索文書インデックスＩｓは、ユーザの手元にある複数の紙文書のうち、何番目の紙文書を処理中であるかを表すインデックスである。ステップＳ３２は、探索文書インデックスＩｓの初期化処理である。
【００５２】
さらに、探索処理部１５０は、モード設定部１２０に依頼して、読取モードをスキップモードに設定させる（ステップＳ３４）。モード設定部１２０は、スキップモードを表す情報を読取モード記憶部１１０に書き込むことで、読取モードをスキップモードに設定する。
【００５３】
ステップＳ３４の後の処理は、読取モードがスキップモードの他のモードに変更されるまでは、探索処理部１５０のスキップモード処理部１５２が実行する。
【００５４】
スキップモード処理部１５２は、ＩＤ記憶部１４０に登録済のＩＤの数が探索文書インデックスＩｓと一致するか否かを判定する（ステップＳ３６）。一致すれば（ステップＳ３６でＹＥＳ）、ステップＳ３８に進み、一致しなければ（ステップＳ３６でＮＯ）、ステップＳ４２に進む。ここでは、ステップＳ４２以降の処理を先に説明する。例えば、探索文書インデックスＩｓが初期値「１」であり、図３の例のデータ内容がＩＤ記憶部１４０に登録されている場合、登録済のＩＤの数は「１７」であり、探索文書インデックスＩｓ「１」と異なるので、ステップＳ３６でＮＯ判定されてステップＳ４２に進む。
【００５５】
ステップＳ４２で、スキップモード処理部１５２は、出力処理部１７０に依頼して、文書をＮ部だけスキップしてＩＤの読み取りを行うようユーザに促す情報を表示装置に表示させる。Ｎの値としては、予め設定された数を用いればよい。例えば、Ｎ部の紙文書の大半について後述のシーケンシャルモードにおいて１部ずつ紙文書のＩＤをユーザが読取装置２０を用いて読み取りさせる作業を行ったとしても、ユーザの負担感が比較的少ないと予想される数にＮの値を予め設定しておけばよい。以下の説明では、Ｎは「１０」に予め設定されているとする。なお、本実施形態の例では、ＩＤ記憶部１４０に登録済のＩＤの個数から探索文書インデックスＩｓの値を減算した結果が、Ｎの値として予め設定された数よりも小さい場合、予め設定された数ではなく当該減算した結果をＮとして用いる。この場合、探索文書インデックスＩｓが表す現在処理中の紙文書の後に配置された紙文書の部数が前述の予め設定された数より小さい（つまり、予め設定された数の部数だけスキップできない）と考えられるためである。探索文書インデックスＩｓの値が「１」であり、ＩＤ記憶部１４０に登録済のＩＤの数が「１７」である上述の例の場合、「１７」から「１」を減算した結果「１６」は、予め設定された数「１０」よりも大きいので、Ｎの値として「１０」を用いる。
【００５６】
ステップＳ４２の後、スキップモード処理部１５２は、探索文書インデックスＩｓの値をＮだけ増加させ（ステップＳ４４）、ＩＤ受付部１００によるＩＤの受付を待ち受ける（ステップＳ４６でＮＯ判定のループ）。
【００５７】
ステップＳ４２の表示を確認したユーザが、紙文書の順番をＮ部だけスキップして読取装置２０でＩＤの読み取りを行うと、ＩＤ受付部１００により当該ＩＤが受け付けられてスキップモード処理部１５２に渡される。
【００５８】
ＩＤ受付部１００がＩＤを受け付けてスキップモード処理部１５２に渡すと（ステップＳ４６でＹＥＳ）、スキップモード処理部１５２は、受け取ったＩＤと、ＩＤ記憶部１４０において探索文書インデックスＩｓが表す順番で登録されたＩＤと、が一致するか否かを判定する（ステップＳ４８）。一致すれば（ステップＳ４８でＹＥＳ）、処理はステップＳ３６に戻り、一致しなければ（ステップＳ４８でＮＯ）、処理はステップＳ５０に進む。
【００５９】
図３を参照する上述の例において、探索文書インデックスＩｓが初期値「１」である場合を例にとり、ステップＳ４２，Ｓ４４，Ｓ４６，Ｓ４８の具体例を説明する。本具体例において、ステップＳ４２，Ｓ４４のＮは「１０」であり、ステップＳ４６で受け付けられるＩＤは、紙文書の先頭から１０部スキップした、１１部目の紙文書のＩＤ１１である。また、このときの探索文書インデックスＩｓの値は、ステップＳ４４で１１（＝１＋１０）に設定されている。よって、ステップＳ４８では、スキップモード処理部１５２は、ＩＤ記憶部１４０において順番「１１」に関連付けられたＩＤ１３と、ステップＳ４６で受け付けられたＩＤ１１と、を比較し、両者が一致しないことからＮＯ判定する。両者が一致しないということは、Ｎ部だけスキップした先の紙文書とスキップの起点の紙文書との間に、入力漏れが発生している紙文書が存在すると言える。したがって、ステップＳ４８でＮＯ判定すると、スキップモード処理部１５２は、ステップＳ４４における更新前の探索文書インデックスＩｓが示す紙文書から更新後の探索文書インデックスＩｓまでの範囲を、入力漏れが発生している紙文書の範囲として特定する。本具体例では、ＩＤ１の紙文書からＩＤ１１の紙文書までの範囲が入力漏れの発生の範囲として特定される。
【００６０】
ステップＳ４８でＮＯ判定した後、スキップモード処理部１５２は、モード設定部１２０に依頼して、読取モードをシーケンシャルモードに設定させる（ステップＳ５０）。モード設定部１２０は、シーケンシャルモードを表す情報を読取モード記憶部１１０に登録する。ステップＳ５０の後、読取モードがシーケンシャルモードの他のモードに設定されるまでの処理は、探索処理部１５０のシーケンシャルモード処理部１５４によって実行される。
【００６１】
ステップＳ５０の後、処理は図６のステップＳ５２に進む。ステップＳ５２で、シーケンシャルモード処理部１５４は、スキップモード処理部１５２が特定した範囲においてＩＤの入力漏れが発生している紙文書の数を表す範囲内入力漏れ文書数Ｒｎを「不明」に設定する。
【００６２】
次に、シーケンシャルモード処理部１５４は、図５のステップＳ４６で受け付けたＩＤがＩＤ記憶部１４０に登録済であるか否かを判定する（ステップＳ５４）。ステップＳ５４の判定は、受け付けたＩＤとＩＤ記憶部１４０に登録済の各ＩＤとを比較することで行えばよい。ＩＤ記憶部１４０に登録済のＩＤのうち受け付けたＩＤに一致するものがある場合、登録済と判定して（ステップＳ５４でＹＥＳ）、ステップＳ５６に進む。ＩＤ記憶部１４０に登録済のＩＤのうち受け付けたＩＤに一致するものがない場合、登録済でないと判定して（ステップＳ５４でＮＯ）、図７のステップＳ７０に進む。図７の例の手順は後述する。
【００６３】
ステップＳ５４でＹＥＳ判定された後、範囲内入力漏れ文書数Ｒｎが不明であれば（ステップＳ５６でＹＥＳ）、探索文書インデックスＩｓの値から、ステップＳ５４で登録済と判定されたＩＤのＩＤ記憶部１４０への登録の順番を減算した値を、範囲内入力漏れ文書数Ｒｎに設定する（ステップＳ６０）。探索文書インデックスＩｓの値は、ステップＳ５４でＩＤ記憶部１４０に登録済と判定されたＩＤが付与された紙文書が、ユーザの手元にある複数の紙文書において何番目に配置された文書であるかを表す。よって、探索文書インデックスＩｓの値と、当該登録済と判定されたＩＤのＩＤ記憶部１４０への登録の順番との差が、現在の処理対象の範囲内でＩＤの入力漏れが発生している紙文書の部数を表すＲｎの値となる。
【００６４】
ステップＳ６０の後、または、範囲内入力漏れ文書数Ｒｎが不明でない場合（ステップＳ５６でＮＯ）、シーケンシャルモード処理部１５４は、範囲内入力漏れ文書数Ｒｎが０であるか否かを判定する（ステップＳ６２）。０であれば（ステップＳ６２でＹＥＳ）、処理は図８のステップＳ８２に進み、０でなければ（ステップＳ６２でＮＯ）、処理はステップＳ６４に進む。
【００６５】
ステップＳ６４で、シーケンシャルモード処理部１５４は、探索文書インデックスＩｓの値を１だけ減少させる。
【００６６】
その後、シーケンシャルモード処理部１５４は、出力処理部１７０に依頼して、前回ＩＤの読み取りを行った紙文書よりも１部だけ前の文書のＩＤを読み取ることをユーザに促す情報を表示装置に表示させ（ステップＳ６６）、ＩＤ受付部１００によるＩＤの受け付けを待ち受ける（ステップＳ６８でＮＯ判定のループ）。ＩＤ受付部１００がＩＤを受け付けてシーケンシャルモード処理部１５４に渡すと（ステップＳ６８でＹＥＳ）、処理はステップＳ５４に戻り、ステップＳ６８で受け付けたＩＤがＩＤ記憶部１４０に登録済であるか否かを判定する。
【００６７】
上述のステップＳ５４〜ステップＳ６８を含むループ処理によって、シーケンシャルモード処理部１５４は、スキップモード処理部１５２が特定した範囲で最後に配置された紙文書から１部ずつ遡って読み取りされるＩＤのうち、ＩＤ記憶部１４０に登録済でないものを検索する。ＩＤ記憶部１４０に登録済でないＩＤが発見されると、ステップＳ５４でＮＯ判定され、図７のステップＳ７０の処理により、発見されたＩＤのＩＤ一時記憶部１６０への登録が行われる。
【００６８】
以下、図７の例の手順の処理を説明する。図７のステップＳ７０で、シーケンシャルモード処理部１５４は、図６のステップＳ５４でＩＤ記憶部１４０に登録済でないと判定されたＩＤ（図５のステップＳ４６または図６のステップＳ６８で受け付けたＩＤである）を、現在の探索文書インデックスＩｓの値に関連付けて、ＩＤ一時記憶部１６０に登録する。
【００６９】
ステップＳ７０の後、シーケンシャルモード処理部１５４は、全体入力漏れ文書数Ａｎを１だけ減少させる（ステップＳ７２）。入力漏れが発生している紙文書のＩＤを１つ特定してステップＳ７０でＩＤ一時記憶部１６０に登録したことから、入力漏れが発生している紙文書の部数が１だけ減るためである。
【００７０】
ステップＳ７２で減少させた結果のＡｎが０であれば（ステップＳ７４でＹＥＳ）、図８のステップＳ８２に進み、０でなければ（ステップＳ７４でＮＯ）、ステップＳ７６に進む。
【００７１】
ステップＳ７６では、範囲内入力漏れ文書数Ｒｎが不明であるか否かを判定する。不明であれば（ステップＳ７６でＹＥＳ）、図６のステップＳ６４に進む。
【００７２】
範囲内入力漏れ文書数Ｒｎが不明でなければ（ステップＳ７６でＮＯ）、Ｒｎを１だけ減少させる（ステップＳ７８）。入力漏れが発生していた紙文書のＩＤを１つ特定してステップＳ７０でＩＤ一時記憶部１６０に登録したことから、現在の処理対象の範囲内において入力漏れが発生している紙文書の部数が１だけ減るためである。
【００７３】
ステップＳ７８で減少させた結果のＲｎの値が０であれば（ステップＳ８０でＹＥＳ）、処理は図８のステップＳ８２に進み、０でなければ（ステップＳ８０でＮＯ）、図６のステップＳ６４に進む。
【００７４】
ステップＳ７６でＹＥＳ判定された後、または、ステップＳ８０でＮＯ判定された後に、図６のステップＳ６４に進むと、シーケンシャルモード処理部１５４は、現在処理中の紙文書（探索文書インデックスＩｓが示す紙文書）から１部だけ遡って読み取りされたＩＤの受付を待ち受け（ステップＳ６４，Ｓ６６，Ｓ６８）、受け付けられたＩＤについて上述のステップＳ５４以下の処理を繰り返す。
【００７５】
以上で説明した図６および図７の例の手順の処理の具体例として、図３の例のデータ内容がＩＤ記憶部１４０に登録されており、ＩＤ１からＩＤ１１までの範囲がスキップモード処理部１５２により特定された場合を考える。図６のステップＳ５２で範囲内入力漏れ文書数Ｒｎが「不明」に設定された後、特定された範囲の最後のＩＤ１１（図５のステップＳ４６で受け付けられたＩＤ）がＩＤ記憶部１４０に登録済でないことから、ステップＳ５４でＮＯ判定されて図７のステップＳ７０に進む。ステップＳ７０では、このＩＤ１１と現時点での探索文書インデックスＩｓの値「１１」とが関連付けられてＩＤ一時記憶部１６０に登録される。図９Ａに、この時点でのＩＤ一時記憶部１６０のデータ内容の例を示す。
【００７６】
ステップＳ７０の後、ステップＳ７２で、全体入力漏れ文書数Ａｎを１だけ減少させる。本例では、図５のステップＳ３０を参照して説明したとおり、Ａｎは「３」に設定されているとする。よって、ステップＳ７２で減少させた結果のＡｎの値は「２」であり、０でないため、ステップＳ７４でＮＯ判定されてステップＳ７６に進む。この時点で、範囲内入力漏れ文書数Ｒｎの値は「不明」であるため、ステップＳ７６でＹＥＳ判定され、図６のステップＳ６４に進む。ステップＳ６４で探索文書インデックスＩｓの値が「１１」から「１０」に減少させられ、現在処理中の紙文書から１部だけ遡ってＩＤの読み取りを行うことをユーザに促す（ステップＳ６６）。ＩＤ１１の紙文書から１部だけ遡って読み取りされたＩＤ１０が受け付けられると（ステップＳ６８でＹＥＳ）、ステップＳ５４で、ＩＤ記憶部１４０に登録済であるか否かが判定される。
【００７７】
図３を参照し、ＩＤ１０は、順番「９」に関連付けてＩＤ記憶部１４０に登録されているため、ステップＳ５４でＹＥＳ判定されてステップＳ５６に進む。ここで、範囲内入力漏れ文書数Ｒｎは、未だ「不明」であるため、ステップＳ５６でＹＥＳ判定されてステップＳ６０に進む。ステップＳ６０では、現在の探索文書インデックスＩｓの値「１０」から、ＩＤ記憶部１４０に登録済であるとステップＳ５４で判定されたＩＤ１０のＩＤ記憶部１４０への登録の順番「９」を減算した値「１」を、範囲内入力漏れ文書数Ｒｎの値として設定する。ステップＳ６０で設定されたＲｎの値「１」は、０でないため、ステップＳ６２でＮＯ判定されてステップＳ６４に進む。すでに説明したのと同様のステップＳ６４〜Ｓ６８の処理により、探索文書インデックスＩｓが１だけ減少されて「１０」から「９」に変更され、ＩＤ１０の紙文書から１部だけ遡った紙文書のＩＤ９が読み取りされて受け付けられる。ＩＤ９は、ＩＤ記憶部１４０に登録済でないため、ステップＳ５４でＮＯ判定されて図７のステップＳ７０に進み、現在の探索文書インデックスＩｓの値「９」とＩＤ９とが関連付けられてＩＤ一時記憶部１６０に登録される。この時点でのＩＤ一時記憶部１６０のデータ内容の例を図９Ｂに示す。図９Ｂを参照し、すでにＩＤ一時記憶部１６０に登録されたＩＤ１１と探索文書インデックスＩｓ「１１」との組に加えて、ＩＤ９と探索文書インデックスＩｓ「９」との組が登録されている。
【００７８】
ＩＤ９のＩＤ一時記憶部１６０への登録の後、図７のステップＳ７２で、全体入力漏れ文書数Ａｎの値が現在の「２」から「１」に変更される。Ａｎは０でないので、ステップＳ７４でＮＯ判定されてステップＳ７６に進む。この時点で、範囲内入力漏れ文書数Ｒｎの値は「１」に設定されており、「不明」ではないため、ステップＳ７６でＮＯ判定されて、ステップＳ７８で、Ｒｎの値は「１」から１だけ減少させられて「０」に変更される。これにより、スキップモード処理部１５２で特定された範囲においてＩＤの入力漏れが発生している紙文書の数は０となる。Ｒｎが０なので、ステップＳ８０ではＹＥＳ判定され、処理は図８のステップＳ８２に進む。
【００７９】
以上、図６および図７を参照して説明した例のシーケンシャルモード処理部１５４の処理により、スキップモード処理部１５２が特定した範囲で最後に配置された紙文書から１部ずつ遡ってＩＤの読み取りが行われ、ＩＤ記憶部１４０に登録済でないＩＤがＩＤ一時記憶部１６０に登録される。また、全体入力漏れ文書数Ａｎまたは範囲内入力漏れ文書数Ｒｎが０になった時点で、図６および図７の例の手順におけるループ処理から外れて、処理は図８のステップＳ８２に進む。
【００８０】
図８は、ＩＤ一時記憶部１６０に登録されたＩＤをＩＤ記憶部１４０に移す処理の手順の例を示す。図８の例の手順の処理は、ＩＤを入力すべき複数の紙文書の全体において、あるいは、スキップモード処理で特定された範囲において、入力漏れが発生している紙文書のＩＤのすべてが特定されてＩＤ一時記憶部１６０に登録された場合に行われる処理である。図８の例の手順の処理は、引き続きシーケンシャルモード処理部１５４によって行われる。
【００８１】
図８を参照し、シーケンシャルモード処理部１５４は、まず、ＩＤ一時記憶部１６０中にＩＤが登録されているか否かを判定する（ステップＳ８２）。登録されていれば（ステップＳ８２でＹＥＳ）、ＩＤ一時記憶部１６０において最後に登録されたＩＤと探索文書インデックスＩｓの値との組をＩＤ一時記憶部１６０から取得する（ステップＳ８４）。例えば、図９Ｂの例のデータ内容がＩＤ一時記憶部１６０に登録されている場合、最後に登録されたＩＤ９と探索文書インデックスＩｓの値「９」との組を取得する。
【００８２】
その後、シーケンシャルモード処理部１５４は、ステップＳ８４で取得したＩＤと探索文書インデックスＩｓの値との組を、ＩＤ一時記憶部１６０から削除する（ステップＳ８６）。ＩＤ９とＩｓの値「９」との組をステップＳ８４で取得する上述の例の場合、ステップＳ８６の処理の結果、ＩＤ一時記憶部１６０のデータ内容は、図９Ａの例のとおりになる。
【００８３】
次に、シーケンシャルモード処理部１５４は、ステップＳ８４で取得したＩＤを、ＩＤ記憶部１４０において、ステップＳ８４で取得した探索文書インデックスＩｓの値が表す順番の位置に挿入して登録する（ステップＳ８８）。例えば、ＩＤ記憶部１４０において、ステップＳ８４で取得した探索文書インデックスＩｓの値が表す順番以降の順番に関連付けて登録されている各ＩＤについて、１つずつ順番を後にずらした順番に関連付けて登録し直す。そして、ステップＳ８４で取得した探索文書インデックスＩｓの値が表す順番に関連付けて、ステップＳ８４で取得したＩＤをＩＤ記憶部１４０に登録する。図３の例のデータ内容がＩＤ記憶部１４０に登録されており、ステップＳ８４でＩＤ９とＩｓ「９」との組が取得される例の場合、探索処理部１５０は、図３の例の表で順番「９」以降のＩＤ１０，ＩＤ１２，ＩＤ１３，…，ＩＤ１９の順番を１つずつ後にずらすと共に、順番「９」に関連付けてＩＤ９をＩＤ記憶部１４０に登録する。この結果のＩＤ記憶部１４０のデータ内容の例を図１０Ａに示す。図１０Ａの例の表では、順番「９」に関連付けてＩＤ９が登録されており、順番「１０」，「１１」，「１２」，…，「１８」に関連付けてＩＤ１０，ＩＤ１２，ＩＤ１３，…，ＩＤ１９が登録されている。
【００８４】
ステップＳ８８の後、処理はステップＳ８２に戻り、さらにＩＤ一時記憶部１６０中に登録されたＩＤの有無を判定する。ＩＤ９とＩｓ「９」との組が削除された結果の図９Ａの例のデータ内容がＩＤ一時記憶部１６０に登録されている上述の例では、再度、ステップＳ８２でＹＥＳ判定されて、ステップＳ８４で、ＩＤ１１とＩｓ「１１」との組がＩＤ一時記憶部１６０から取得される。そして、ステップＳ８６で、ＩＤ１１とＩｓ「１１」との組がＩＤ一時記憶部１６０から削除されてＩＤ一時記憶部１６０のデータ内容は空（なし）となる。ステップＳ８８では、ＩＤ９に関して上述したのと同様に、Ｉｓ「１１」以降の順番に関連付けてＩＤ記憶部１４０に登録された各ＩＤの順番が１つずつ後にずらされて、順番「１１」に関連付けてＩＤ１１がＩＤ記憶部１４０に登録される。これにより、ＩＤ記憶部１４０のデータ内容は、図１０Ａの例の表から図１０Ｂに例示する内容に変化する。
【００８５】
ステップＳ８２，Ｓ８４，Ｓ８６，Ｓ８８を含む上述の例のループ処理により、ＩＤ一時記憶部１６０に記憶されたＩＤは、ＩＤ一時記憶部１６０から削除され、ＩＤ記憶部１４０において、該当する順番の位置に登録される。このループ処理においては、ＩＤ一時記憶部１６０において最後に登録されたＩＤとＩｓの値との組から順に処理する（ステップＳ８４参照）。図６および図７を参照して上記で説明したシーケンシャルモードの処理では、スキップモードで特定された範囲の最後の紙文書から順に一部ずつ遡って入力漏れのＩＤを特定してＩＤ一時記憶部１６０に登録するため、ＩＤ一時記憶部１６０に最後に登録されたＩＤは、最も早い順番の紙文書のＩＤである。ＩＤ一時記憶部１６０に登録されたＩＤのうち最も早い順番の紙文書のＩＤに対して、ステップＳ８８でＩＤ記憶部１４０の該当する順番の位置に当該ＩＤを挿入して登録する処理を行うと、当該順番よりも前のＩＤについては、ＩＤ記憶部１４０中で順番のずれが生じていない状態となる。したがって、ステップＳ８４では、ＩＤ一時記憶部１６０において最後に登録されたＩＤとＩｓの値との組をステップＳ８６，Ｓ８８の処理対象として取得する。
【００８６】
ステップＳ８２，Ｓ８４，Ｓ８６，Ｓ８８を含む上述の例のループ処理により、ＩＤ一時記憶部１６０に登録されたすべてのＩＤについてＩＤ記憶部１４０への登録が完了すると、ＩＤ一時記憶部１６０のデータ内容は空となる。この場合、ＩＤ一時記憶部１６０に登録されたＩＤの有無を判定するステップＳ８２でＮＯ判定され、処理はステップＳ９０に進む。ステップＳ９０で、シーケンシャルモード処理部１５４は、全体入力漏れ文書数Ａｎが０であるか否かを判定する。全体入力漏れ文書数Ａｎが０であれば（ステップＳ９０でＹＥＳ）、探索処理を終了し、０でなければ（ステップＳ９０でＮＯ）、図５のステプＳ３４に進む。
【００８７】
ＩＤ１〜ＩＤ２０がそれぞれ付された２０部の紙文書のＩＤの読み取りを行う本例において、上述の図８のステップＳ８２〜Ｓ８８の例のループ処理により図１０Ｂに例示するデータ内容がＩＤ記憶部１４０に登録された時点では、全体入力漏れ文書数Ａｎは「１」である。このため、本例では、図８のステップＳ８２から図５のステップＳ３４に進む。図５のステップＳ３４では、探索処理部１５０は、モード設定部１２０に依頼して、読取モードをシーケンシャルモードからスキップモードに設定させる。次に、ステップＳ３６で、探索処理部１５０は、ＩＤ記憶部１４０に登録済のＩＤの数と現在の探索文書インデックスＩｓの値とが一致するか否かを判定する。本例では、ＩＤ記憶部１４０に登録済のＩＤの数は「１９」である（図１０Ｂ参照）。また、現在の探索文書インデックスＩｓの値は、図６および図７を参照して上述した例のシーケンシャルモードの処理において最後にＩＤ一時記憶部１６０に登録されたＩＤ９に対応するＩｓの値「９」である。よって、ここでは、登録済のＩＤの数と現在のＩｓの値とが異なることから、ステップＳ３６でＮＯ判定され、ステップＳ４２に進む。ステップＳ４２では、上記で説明したとおり、文書をＮ部だけスキップしてＩＤの読み取りを行うようユーザに促す情報を表示装置に表示させる。Ｎの値としては、予め設定された数「１０」を用いる。これは、ＩＤ記憶部１４０に登録済のＩＤの数「１９」から現在の探索文書インデックスＩｓの値「９」を減算した結果が「１０」であり、予め設定された数「１０」部以上の紙文書がＩｓ「９」に対応する紙文書の後に配置されている（１０部だけスキップできる）と考えられるためである。その後、ステップＳ４４で探索文書インデックスＩｓの値「９」をＮ＝１０だけ増加させて「１９」に設定し、Ｉｓ「９」に対応するＩＤ９の紙文書から１０部だけスキップした紙文書のＩＤ１９が受け付けられると（ステップＳ４６でＹＥＳ）、受け付けたＩＤ１９と探索文書インデックスＩｓ「１９」の順番に関連付けてＩＤ記憶部１４０に登録されたＩＤ１９とが一致するため、ステップＳ４８でＹＥＳ判定されてステップＳ３６に戻る。今回は、ＩＤ記憶部１４０に登録済のＩＤの数「１９」と探索文書インデックスＩｓの値「１９」とが等しいことから、ステップＳ３６でＹＥＳ判定されて処理はステップＳ３８に進む。
【００８８】
ステップＳ３８で、探索処理部１５０は、モード設定部１２０に依頼して、読取モードを通常モードに設定させる。次に、出力処理部１７０に依頼して、残りの紙文書があればそのＩＤを読み取るようユーザに促す情報を、図示しない表示装置に表示させる（ステップＳ４０）。ステップＳ４０の後、処理は図４のステップＳ１０に進み、ＩＤの受付を待ち受ける。２０部の紙文書のＩＤの読み取りを行う本例において、ユーザが最初に通常モードでＩＤの読み取りを行った際にＩＤ２０の紙文書について入力漏れが生じていたため、図５のステップＳ４０から図４のステップＳ１０に進んだ時点で、ユーザの手元には、ＩＤ１９の紙文書の後に、２０部目の紙文書（ＩＤ２０）が未処理の紙文書として残ることになる。そこで、ユーザは、残りの紙文書である２０部目の紙文書のＩＤ２０を読取装置２０により読み取りさせる。すると、ＩＤ２０が受け付けられてステップＳ１０からステップＳ１２に進み、ＩＤ記憶部１４０において、ＩＤ２０が、その登録の順番「２０」に関連付けられて登録される。この結果のＩＤ記憶部１４０のデータ内容の例を図１０Ｃに示す。図１０Ｃを参照し、２０部の各紙文書の各ＩＤ１〜ＩＤ２０が、ＩＤの番号の昇順に各順番「１」〜「２０」に関連付けて登録されている。
【００８９】
ステップＳ１２の後、ステップＳ１４において、現在、探索処理中であるか否かが判定される。ステップＳ１４の判定は、例えば、全体入力漏れ文書数Ａｎに１以上の値が設定されているか否かによって行えばよい。Ａｎに１以上の値が設定されていれば探索処理中であると判定し、１以上の値が設定されていなければ（つまり、Ａｎの値が０または不明であれば）探索処理中でないと判定する。あるいは、例えば、ステップＳ１０でＩＤを受け付けた時点で、図示しない表示装置において図５のステップＳ４０による表示が行われていれば探索処理中であると判定し、当該表示が行われていなければ探索処理中でないと判定してもよい。
【００９０】
図４のステップＳ１２でＩＤ２０をＩＤ記憶部１４０に登録する本例では、探索処理中であることから、ステップＳ１４でＹＥＳ判定されて、ステップＳ１６に進む。なお、本例において、現在の全体入力漏れ文書数Ａｎは「１」である（図７のステップＳ７０でＩＤ９をＩＤ一時記憶部１６０に登録した後のステップＳ７２の上記の説明を参照）。
【００９１】
ステップＳ１６では、探索処理部１５０により、全体入力漏れ文書数Ａｎを１だけ減少させる。その結果のＡｎの値が０であれば（ステップＳ１８でＹＥＳ）、探索処理を終了させ（ステップＳ２０）、ＩＤの読取終了の指示またはＩＤの受け付けを待ち受ける（ステップＳ２２，Ｓ１０）。Ａｎの値が０でなければ（ステップＳ１８でＮＯ）、ステップＳ１０の判定に戻る。Ａｎの値が「１」である本例では、ステップＳ１６でＡｎの値が「０」となり、ステップＳ２０で探索処理が終了される。
【００９２】
以上で説明した実施形態の例では、通常モードで複数の紙文書についてＩＤの入力を行う場合であってＩＤの入力漏れが発生した場合に、ＩＤの入力の対象である複数の紙文書の部数よりも少ない数の紙文書のＩＤを読み取りさせることで、入力漏れが発生している紙文書が特定される。例えば、２０部の紙文書（ＩＤ１〜ＩＤ２０）のＩＤの入力を行う上述の例では、通常モードでＩＤの入力を行ってＩＤ記憶部１４０に図３の例のデータ内容が登録された後、探索処理において、ＩＤ１１，ＩＤ１０，ＩＤ９，ＩＤ１９，ＩＤ２０の５個のＩＤの読み取りを行うだけで、入力漏れが発生した紙文書（ＩＤ１１，ＩＤ９，ＩＤ２０）が特定され、入力漏れが解消される。
【００９３】
以上で説明した実施形態の例は、本発明の実施の形態を限定するものではなく、上述の実施形態の例の他にも各種の変形例があってよい。例えば、上述の実施形態の例では、シーケンシャルモードの処理によりＩＤ一時記憶部１６０に登録されたＩＤをＩＤ記憶部１４０に移して登録した後で、スキップモードの処理に戻る場合（図８のステップＳ９０から図５のステップＳ５４に戻る場合）、その時点での探索文書インデックスＩｓの値に対応する紙文書を起点にＮ部だけスキップした紙文書のＩＤを受け付ける（図５のステップＳ３６，Ｓ４２〜Ｓ４６）。変形例では、スキップモードの処理に戻った時点での探索文書インデックスＩｓに対応する紙文書ではなく、前回のスキップモードの処理において最後に受け付けられたＩＤに対応する紙文書を起点にＮ部だけスキップした紙文書のＩＤを受け付けてもよい。例えば、上述の実施形態の例の説明において参照した具体例では、最初のスキップモードの処理でＩＤ１１を受け付けた後、シーケンシャルモードの処理でＩＤ１１の紙文書から１部ずつ遡ってＩＤ１０，ＩＤ９を受け付け、ＩＤ一時記憶部１６０に登録したＩＤ１１，ＩＤ９をＩＤ記憶部１４０に移した後、ＩＤ９の紙文書を起点としてＮ部（１０部）だけスキップした紙文書のＩＤ１９を受け付ける。本変形例の場合、ＩＤ９ではなく、スキップモードで最後に処理したＩＤ１１の紙文書を起点にＮ部だけスキップした紙文書のＩＤを受け付ける。本変形例では、例えば、スキップモードの処理からシーケンシャルモードの処理に移る時点（図５のステップＳ４８でＮＯ）での探索文書インデックスＩｓの値を記録しておき、図８のステップＳ９０でＮＯ判定された後、図５のステップＳ３４またはステップＳ３６の実行の前に、現在の探索文書インデックスＩｓを、前述のように記録しておいた探索文書インデックスＩｓの値に変更する。
【００９４】
また、上述の実施形態の例では、シーケンシャルモードの処理において、スキップモードで最後に受け付けられたＩＤの紙文書から１部ずつ遡ってＩＤを受け付ける。変形例では、シーケンシャルモードの処理において、その直前のスキップモードで特定された範囲の最初の紙文書に戻って、１部ずつＩＤの読み取りを行うことをユーザに促してもよい。例えば、上述の実施形態の例の説明において参照した具体例では、入力漏れが発生している紙文書の存在する範囲としてＩＤ１の紙文書からＩＤ１１の紙文書までの範囲がスキップモードの処理で特定され、シーケンシャルモードの処理で、ＩＤ１１の紙文書から１部ずつ遡ってＩＤ１０，ＩＤ９が受け付けられる。本変形例の場合、シーケンシャルモードの処理において、ＩＤ１１の紙文書から１部ずつ遡る代わりに、特定された範囲の最初の紙文書から順に、ＩＤ１，ＩＤ２，…を受け付けて、ＩＤ記憶部１４０に登録済であるか否かを確認していく。このとき、探索文書インデックスＩｓの値は、特定された範囲の最初の紙文書の順番を表す値「１」から順に、ＩＤの読み取りのたびに１ずつ増加させていけばよい。登録済でないＩＤが発見されると、当該ＩＤをＩＤ一時記憶部１６０に登録することなく、ＩＤ記憶部１４０の該当する順番（つまり、現在の探索文書インデックスＩｓの値）に関連付けて登録する。例えば、図３を参照する上述の具体例の場合、ＩＤ１から順にＩＤの読み取りを行って最初に発見される、登録済でないＩＤは、ＩＤ９であり、ＩＤ９が受け付けられた時点での探索文書インデックスＩｓの値は「９」である。このＩＤ９とＩｓの値「９」との組に対し、図８の例のステップＳ８８と同様の処理により、ＩＤ記憶部１４０において、順番「９」以降の登録済のＩＤの順番を１ずつ後にずらした上で、順番「９」に関連付けてＩＤ９を登録する。さらに、ＩＤ９の紙文書の次の紙文書のＩＤ１０を読み取りさせてＩＤ記憶部１４０に登録済であることを確認し、その次の紙文書のＩＤ１１（特定された範囲の最後の紙文書）を読み取りさせてＩＤ記憶部１４０に登録済でないことから、ＩＤ記憶部１４０において、ＩＤ１１に対応する順番「１１」の位置に挿入してＩＤ１１を登録する。その後、シーケンシャルモードの処理からスキップモードの処理に戻り、入力漏れが発生している範囲のさらなる検索を行う。本変形例では、スキップモードの処理において特定された範囲の最初の紙文書から順にＩＤがＩＤ記憶部１４０に登録済であるか否かを確認するため、登録済でないＩＤが発見された時点で、当該ＩＤの紙文書よりも前の順番の紙文書については、ＩＤ記憶部１４０においてＩＤと順番との組合せのずれが生じていないことになる。このため、本変形例では、ＩＤ一時記憶部１６０への登録を省略して、登録済でないＩＤの発見の時点でＩＤ記憶部１４０への登録を行ってよい。
【００９５】
以上で説明したクライアント端末１０は、典型的には、汎用のコンピュータにて上述のクライアント端末１０の各部の機能または処理内容を記述したプログラムを実行することにより実現される。コンピュータは、例えば、ハードウエアとして、図７に示すように、ＣＰＵ（中央演算装置）８０、メモリ（一次記憶）８２、各種Ｉ／Ｏ（入出力）インタフェース８４等がバス８６を介して接続された回路構成を有する。また、そのバス８６に対し、例えばＩ／Ｏインタフェース８４経由で、ＨＤＤ（ハードディスクドライブ）８８やＣＤやＤＶＤ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ９０が接続される。このようなドライブ８８または９０は、メモリに対する外部記憶装置として機能する。実施形態の処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、またはネットワーク経由で、ＨＤＤ８８等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されＣＰＵにより実行されることにより、実施形態の処理が実現される。サーバ３０についても同様である。
【符号の説明】
【００９６】
１０ａ，１０ｂ  クライアント端末、２０  読取装置、３０  サーバ、３２  文書管理部、３４  文書情報ＤＢ、４０  ネットワーク、８０  ＣＰＵ、８２  メモリ、８４  Ｉ／Ｏインタフェース、８６  バス、８８  ＨＤＤ、９０  ディスクドライブ、１００  ＩＤ受付部、１１０  読取モード記憶部、１２０  モード設定部、１３０  ＩＤ登録部、１４０  ＩＤ記憶部、１５０  探索処理部、１５２  スキップモード処理部、１５４  シーケンシャルモード処理部、１６０  ＩＤ一時記憶部、１７０  出力処理部、１８０  ＩＤ送信部。
【図１】
0005768488.tif 000002
【図２】
0005768488.tif 000003
【図３】
0005768488.tif 000004
【図４】
0005768488.tif 000005
【図５】
0005768488.tif 000006
【図６】
0005768488.tif 000007
【図７】
0005768488.tif 000008
【図８】
0005768488.tif 000009
【図９Ａ】
0005768488.tif 000010
【図９Ｂ】
0005768488.tif 000011
【図１０Ａ】
0005768488.tif 000012
【図１０Ｂ】
0005768488.tif 000013
【図１０Ｃ】
0005768488.tif 000014
【図１１】
0005768488.tif 000015