(57)【特許請求の範囲】
【請求項１】
複数の文字列で構成されるデータである入力候補データと、前記入力候補データを構成する複数の文字列を当該文字列ごとに区切るための区切り情報とを記憶する記憶手段と通信可能に接続され、入力フォームに対する入力を支援する情報処理装置であって、
前記入力フォームにおいて、前記入力候補データの表示指示を受け付ける表示指示受付手段と、
前記表示指示受付手段による入力候補データの表示指示の受け付けに応じて、前記入力候補データを構成する文字列であって、前記記憶手段に記憶された区切り情報に基づいて区切られた文字列ごとに選択可能に表示する表示手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、
前記表示手段で表示された前記文字列の選択を受け付ける選択受付手段を更に備え、
前記表示手段は、前記選択受付手段による前記文字列の選択の受け付けに応じて、前記区切り情報に基づいて区切られた次の文字列を選択可能に表示することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記表示手段は、前記選択受付手段で選択を受け付けた文字列に基づいて特定された、前記入力候補データを構成する文字列を選択可能に表示することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記記憶手段は、前記入力候補データに対応する名称である名称データを更に記憶し、
前記表示手段は、前記入力候補データを構成する文字列のうち、最後に選択される文字列を表示する場合には、当該入力候補データに対応する名称データを合わせて表示することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記情報処理装置は、
前記入力フォームに入力された文字列の削除指示を受け付けた場合には、１文字ずつ削除せずに、前記表示された文字列ごとに削除する削除手段を更に備えることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記受付手段は、前記入力フォームにおいて、所定の文字数が入力されることより、前記入力候補データの表示指示を受け付けることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
複数の文字列で構成されるデータである入力候補データと、前記入力候補データを構成する複数の文字列を当該文字列ごとに区切るための区切り情報とを記憶する記憶手段と通信可能に接続され、入力フォームに対する入力を支援する情報処理装置の制御方法であって、
前記情報処理装置の表示指示受付手段が、前記入力フォームにおいて、前記入力候補データの表示指示を受け付ける表示指示受付ステップと、
前記情報処理装置の表示手段が、前記表示指示受付ステップによる入力候補データの表示指示の受け付けに応じて、前記入力候補データを構成する文字列であって、前記記憶手段に記憶された区切り情報に基づいて区切られた文字列ごとに選択可能に表示する表示ステップと
を備えることを特徴とする情報処理装置の制御方法。
【請求項８】
複数の文字列で構成されるデータである入力候補データと、前記入力候補データを構成する複数の文字列を当該文字列ごとに区切るための区切り情報とを記憶する記憶手段と通信可能に接続され、入力フォームに対する入力を支援する情報処理装置の制御方法を実行可能なプログラムであって、
前記情報処理装置を、
前記入力フォームにおいて、前記入力候補データの表示指示を受け付ける表示指示受付手段と、
前記表示指示受付手段による入力候補データの表示指示の受け付けに応じて、前記入力候補データを構成する文字列であって、前記記憶手段に記憶された区切り情報に基づいて区切られた文字列ごとに選択可能に表示する表示手段
として機能させることを特徴とするプログラム。
【請求項９】
複数の文字列で構成されるデータである入力候補データと、前記入力候補データを構成する複数の文字列を当該文字列ごとに区切るための区切り情報とを記憶する記憶手段を備えたサーバ装置と、入力フォームに対する入力を支援する情報処理装置とを含む情報処理システムであって、
前記情報処理装置は、
前記入力フォームにおいて、前記入力候補データの表示指示を受け付ける表示指示受付手段と、
前記表示指示受付手段による表示指示の受け付けに応じて、前記入力候補データの取得要求を前記サーバ装置に送信する取得要求送信手段と、
前記取得要求送信手段による取得要求の送信に応じて前記サーバ装置から送信された、前記入力候補データを構成する文字列を選択可能に表示する表示手段と
を備え、
前記サーバ装置は、
前記情報処理装置から送信された前記入力候補データの取得要求を受信すると、前記記憶手段に記憶された入力候補データを構成する文字列であって、前記記憶手段に記憶された区切り情報に基づいて区切られた文字列を取得する文字列取得手段と、
前記文字列取得手段で取得された文字列を前記情報処理装置に送信する文字列送信手段と
を備えることを特徴とする情報処理システム。
【請求項１０】
前記情報処理装置は、
前記表示手段で表示された前記文字列の選択を受け付ける選択受付手段を更に備え、
前記取得要求送信手段は、前記選択受付手段による前記文字列の選択の受け付けに応じて、前記区切り情報に基づいて区切られた次の文字列の取得要求を送信することを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
複数の文字列で構成されるデータである入力候補データと、前記入力候補データを構成する複数の文字列を当該文字列ごとに区切るための区切り情報とを記憶する記憶手段を備えたサーバ装置と、入力フォームに対する入力を支援する情報処理装置とを含む情報処理システムの制御方法であって、
前記情報処理装置の表示指示受付手段が、前記入力フォームにおいて、前記入力候補データの表示指示を受け付ける表示指示受付ステップと、
前記情報処理装置の取得要求送信手段が、前記表示指示受付ステップによる表示指示の受け付けに応じて、前記入力候補データの取得要求を前記サーバ装置に送信する取得要求送信ステップと、
前記サーバ装置の文字列取得手段が、前記情報処理装置から送信された前記入力候補データの取得要求を受信すると、前記記憶手段に記憶された入力候補データを構成する文字列であって、前記記憶手段に記憶された区切り情報に基づいて区切られた文字列を取得する文字列取得ステップと、
前記サーバ装置の文字列送信手段が、前記文字列取得ステップで取得された文字列を前記情報処理装置に送信する文字列送信ステップと、
前記情報処理装置の表示手段が、前記取得要求送信ステップによる取得要求の送信に応じて前記サーバ装置から送信された、前記入力候補データを構成する文字列を選択可能に表示する表示ステップと
を備えることを特徴とする情報処理システムの制御方法。
【請求項１２】
複数の文字列で構成されるデータである入力候補データと、前記入力候補データを構成する複数の文字列を当該文字列ごとに区切るための区切り情報とを記憶する記憶手段を備えたサーバ装置と、入力フォームに対する入力を支援する情報処理装置とを含む情報処理システムの制御方法を実行可能なプログラムであって、
前記情報処理装置を、
前記入力フォームにおいて、前記入力候補データの表示指示を受け付ける表示指示受付手段と、
前記表示指示受付手段による表示指示の受け付けに応じて、前記入力候補データの取得要求を前記サーバ装置に送信する取得要求送信手段と、
前記取得要求送信手段による取得要求の送信に応じて前記サーバ装置から送信された、前記入力候補データを構成する文字列を選択可能に表示する表示手段
として機能させ、
前記サーバ装置を、
前記情報処理装置から送信された前記入力候補データの取得要求を受信すると、前記記憶手段に記憶された入力候補データを構成する文字列であって、前記記憶手段に記憶された区切り情報に基づいて区切られた文字列を取得する文字列取得手段と、
前記文字列取得手段で取得された文字列を前記情報処理装置に送信する文字列送信手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力候補を提示する仕組みに関し、特に意味のあるまとまりで入力候補を提示することの可能な情報処理装置、その制御方法、及びプログラム、並びに情報処理システム、その制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、様々なアプリケーションやＷｅｂページにおいて情報を入力するための入力フォームが設けられている。この入力フォームに入力された情報は、アプリケーションで利用する情報として登録されたり、Ｗｅｂページの検索に用いられたりしている。
【０００３】
入力フォームに対する入力は、ユーザがキーボードやマウスといった入力装置を用いて行う。よって、繰り返し入力を行ったり、長い文字列を入力したりすることは、ユーザにとって非常に煩わしいものであった。特に、部門コードや科目コードといった記号や数字の羅列を入力する際には、ユーザが誤入力を起こしやすかった。
【０００４】
そこで従来、例えば下記の特許文献１に示すような仕組みが提案されている。下記の特許文献１では、あらかじめＷｅｂページごとによく使用されているキーワード（出現頻度の高いキーワード）を記憶しておき、ユーザから検索キーワードが入力された時に、記憶されたキーワードから関連するものを出現頻度の高い順に表示する仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１４２０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の特許文献１に示すように、ユーザが途中まで入力したキーワードを手掛かりに、ユーザがその後入力するキーワードを予測表示する仕組みとして、サジェスト機能が存在する。このようなサジェスト機能では、ユーザが何か入力を行う度に所定のデータベースと入力データとを比較、参照して、入力候補の予測表示を行う。
【０００７】
しかしながら、入力を行う度に処理を行っているので情報処理装置の処理負荷が高くなってしまう問題があった。特に会計処理を行う業務アプリケーションでは、より素早く入力することで、大量のデータを処理していく必要がある。そのためにサジェスト機能を用いて処理速度の向上を図りたいが、サジェスト機能では前述の通り、情報処理装置の処理負荷が高くなってしまい、逆に作業者の処理速度向上につながらない。
【０００８】
また、会計処理を行う業務アプリケーションにおいてサジェスト機能を使用できたとしても、様々な科目コードが存在し、それらがすべて予測表示の対象となってしまうため、ユーザが望む入力データを見つけにくい問題もある。また、情報処理装置でサジェスト機能により表示される入力候補を抽出しようとすると、当該情報処理装置に負荷がかかってしまう問題もある。ユーザは素早く入力をしていきたいので、こういった情報処理装置の負荷により入力候補を提示するスピードが落ちてしまうのは、好ましくない。特に、このような処理を行う場合には、情報処理装置においてあらかじめ入力候補のすべての科目コードを記憶しておかなくてはならない問題もある。
【０００９】
本発明は上記の課題を鑑みてなされたもので、本発明の目的は、入力フォームに表示される入力候補のうち、ユーザが望む入力候補を容易に選択可能な仕組みを提供することである。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明の情報処理装置は、複数の文字列で構成されるデータである入力候補データと、前記入力候補データを構成する複数の文字列を当該文字列ごとに区切るための区切り情報とを記憶する記憶手段と通信可能に接続され、入力フォームに対する入力を支援する情報処理装置であって、前記入力フォームにおいて、前記入力候補データの表示指示を受け付ける表示指示受付手段と、前記表示指示受付手段による入力候補データの表示指示の受け付けに応じて、前記入力候補データを構成する文字列であって、前記記憶手段に記憶された区切り情報に基づいて区切られた文字列ごとに選択可能に表示する表示手段とを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、入力候補データを所定の文字列ごとに区切り、その区切った単位で入力候補として提示することが可能となるので、情報処理装置の処理負荷を減らしつつ、ユーザにとって選択しやすいサジェスト機能を提供できる効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態における情報処理装置１０１の内部ハードウェア構成の一例を示す構成図である。
【図２】情報処理装置１０１のモジュール構成の一例を示す構成図である。
【図３】情報処理装置１０１による制御方法の処理手順の一例を示すフローチャートである。
【図４】情報処理装置１０１による仕入先入力処理の処理手順の一例を示すフローチャートである。
【図５】情報処理装置１０１によるブロック候補表示処理の処理手順の一例を示すフローチャートである。
【図６】情報処理装置１０１による選択操作処理の処理手順の一例を示すフローチャートである。
【図７】情報処理装置１０１による桁数候補表示処理の処理手順の一例を示すフローチャートである。
【図８】情報処理装置１０１によるブロック削除処理の処理手順の一例を示すフローチャートである。
【図９】コード体系マスタテーブル９００、仕入先マスタテーブル９１０の一例を示す構成図である。
【図１０】情報処理装置１０１において、ブロックごとに入力候補を表示する場合の処理概要を示す模式図である。
【図１１】情報処理装置１０１において、ブロックごとに入力データを削除する場合の処理概要を示す模式図である。
【図１２】仕入先マスタ登録画面１２００の一例を示す構成図である。
【図１３】本願発明の概要の一例を示す模式図である。
【図１４】本発明の第２の実施形態における情報処理システム１００の一例を示す構成図である。
【図１５】本発明の第２の実施形態における情報処理装置１０１及びサーバ装置１０２のモジュール構成の一例を示す構成図である。
【図１６】本発明の第２の実施形態におけるブロック候補表示処理の処理手順の一例を示すフローチャートである。
【図１７】本発明の第２の実施形態における桁数候補表示処理の処理手順の一例を示すフローチャートである。
【図１８】本発明の第２の実施形態における、ブロックごとに入力候補を表示する場合の処理概要を示す模式図である。
【図１９】図１８の模式図の前提となるコード体系マスタテーブル９００の一例を示す構成図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら、本発明の実施形態の一例について説明する。
【００１４】
図１は、本発明の実施形態における情報処理装置１０１のハードウェア構成を示す図である。本発明における情報処理装置１０１は、業務アプリケーションを起動し、ユーザからの入力を受け付ける装置である。本発明の実施形態では、特に会計業務における仕入先データの入力を受け付ける。
【００１５】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００１６】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ(Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ)やオペレーティングシステムプログラム（以下、ＯＳ）や、各種装置の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００１７】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００１８】
また、入力コントローラ（入力Ｃ）２０５は、キーボード２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。
【００１９】
ビデオコントローラ（ＶＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。表示器はＣＲＴだけでなく、液晶ディスプレイでも構わない。
【００２０】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２１】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。本実施形態では、情報処理装置１０１のみで動作する仕組みとして説明するが、情報処理装置１０１とサーバとが通信Ｉ／ＦＣ２０８を通じて通信可能に接続されていてもよい。
【００２２】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２３】
本発明の情報処理装置１０１が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００２４】
次に、情報処理装置１０１のモジュール構成を示す機能構成図について、図２を用いて説明する。尚、図２のモジュール構成は一例であり、用途や目的に応じて様々な構成例がある。
【００２５】
情報処理装置１０１は、記憶モジュール３０１、画面表示モジュール３０２、テーブル管理モジュール３０３、入力受付モジュール３０４、入力候補表示モジュール３０５から構成される。
【００２６】
記憶モジュール３０１（記憶手段）は、各種データや画面、テーブルをＲＯＭ２０２または外部メモリ２１１に記憶するためのモジュールである。情報処理装置１０１に表示する各種データがサーバに記憶管理されている場合には、これらの情報をサーバのＲＯＭ２０２または外部メモリ２１１に記憶させる。情報処理装置１０１は、記憶モジュール３０１を通じて、必要に応じてサーバから各種データや画面、テーブルを取得できる。
【００２７】
画面表示モジュール３０２（表示手段）は、記憶モジュール３０１が記憶した各種画面をユーザからの指示に応じてＣＲＴ２１０に表示するモジュールである。画面表示モジュール３０２は、各種画面を表示する際に、記憶モジュール３０１が記憶した各種データやテーブルを表示内容として設定して表示させることができる。
【００２８】
テーブル管理モジュール３０３は、記憶モジュール３０１が記憶した各種テーブルの管理を行うモジュールである。画面表示モジュール３０２が各種画面を表示する際に、テーブル管理モジュール３０３が、必要なテーブルを記憶モジュール３０１から取得して、画面表示モジュール３０２に渡すことで、画面に各種テーブルの情報を表示させる。
【００２９】
入力受付モジュール３０４は、画面表示モジュール３０２が表示した各種画面に対するデータの入力を受け付けるモジュールである。入力の受け付けは、キーボード２０９やマウス等の入力で倍からの入力を受け付ける。入力されたデータは、画面表示モジュール３０２に渡し、入力フォームに設定した上で画面表示モジュール３０２が表示を行う。
【００３０】
入力候補表示モジュール３０５は、入力受付モジュール３０４で入力を受け付けたデータに基づいて、入力候補（入力候補データ）を表示させるためのモジュールである。入力候補は、テーブル管理モジュール３０３が管理するテーブルから取得して、入力候補として表示する。
【００３１】
尚、前述の通り、情報処理装置１０１がサーバと通信可能に接続され、サーバにおいて各種データの記憶管理を行っていた場合、記憶モジュール３０１とテーブル管理モジュール３０３はサーバも備える。情報処理装置１０１からの要求に応じて、サーバが記憶モジュール３０１とテーブル管理モジュール３０３を用いて、適切なデータを情報処理装置１０１に送信する。
【００３２】
次に、本発明の実施形態における情報処理装置１０１によって行われる一連の処理について、図３に示すフローチャートを用いて説明する。尚、Ｓ１０１乃至Ｓ１０７の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。
【００３３】
尚、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００３４】
ステップＳ１０１では、情報処理装置１０１は、各種データの登録を行うための業務アプリケーションを起動させる。本実施形態では、仕入先マスタの登録を例にとって説明するが、これに限らない。
【００３５】
ステップＳ１０２では、情報処理装置１０１は、仕入先マスタを登録するための仕入先マスタ登録画面１２００をＣＲＴ２１０に表示させ、ユーザからの入力を受け付ける。仕入先マスタ登録画面１２００（図１２参照）では、仕入先入力フォーム１２０１と、検索ボタン１２０２を備える。
【００３６】
ステップＳ１０３では、情報処理装置１０１は、ステップＳ１０２で表示された仕入先入力フォーム１２０１において、仕入先データの入力を受け付ける処理を実行する。仕入先入力処理の詳細は、後述する図４に示す。尚、本実施形態では仕入先入力フォーム１２０１に入力する形態として説明を行うが、どのような入力フォームでも構わない。
【００３７】
ステップＳ１０４では、情報処理装置１０１は、ステップＳ１０３で入力された仕入先データに基づいて検索を行うべく、検索ボタン１２０２が押下されたか否かを判定する。入力された仕入先データで検索することで、登録済みの仕入先マスタを更新することができる。検索ボタン１２０２が押下されたと判定された場合には、ステップＳ１０５に処理を進め、そうでない場合には、ステップＳ１０３に処理を戻す。
【００３８】
ステップＳ１０５では、情報処理装置１０１は、ステップＳ１０３で入力された仕入先データに基づいて仕入先マスタテーブル９１０（図９参照）から情報を取得し、仕入先マスタ登録画面１２００に表示し、仕入先マスタに対する変更の入力を受け付ける。ステップＳ１０６では、情報処理装置１０１は、仕入先マスタ登録画面１２００に備えられた登録ボタンが押下されたか否かを判定する。登録ボタンが押下されたと判定された場合には、ステップＳ１０７に処理を進め、そうでない場合にはステップＳ１０５に処理を戻す。
【００３９】
仕入先マスタテーブル９１０（図９参照）は、仕入先コード９１１（入力候補データ）、仕入先名称９１２（名称データ）、その他仕入先に関する情報から構成される。仕入先コード９１１は、仕入先ごとに一意に割り振られたコードである。後述するが、仕入先コード９１１は、複数の文字列から構成されている。通常、このようなコードはユーザが何かしらの体系に基づいてコードを作成している場合が多い。そのため、複数の文字列を組み合わせて１つのコードとしている。例えば、「２０００ＨＯＫＫＡＩＤＯ０１ＳＨＩＩＲＥ０１」というコードであれば、「２０００」と「ＨＯＫＫＡＩＤＯ」と「０１」と「ＳＨＩＩＲＥ０１」にわけることができ、「２０００」は「２０００年」、「ＨＯＫＫＡＩＤＯ」は「北海道」、「０１」は「０１地区」、「ＳＨＩＩＲＥ０１」は「仕入先０１」をそれぞれ示すようになっている。つまり、これらの複数の文字列から１つのコードが形成されている。仕入先名称９１２は、仕入先コード９１１に対応する仕入先の名称を示す。その他、仕入先ごとに各種情報が記憶管理されている。尚、仕入先コード９１１と仕入先名称９１２はそれぞれテキストデータである。
【００４０】
ステップＳ１０７では、情報処理装置１０１は、入力された仕入先マスタに関する情報を仕入先マスタテーブル９１０に登録する。
【００４１】
次に、本発明の実施形態における情報処理装置１０１によって行われる仕入先入力処理について、図４に示すフローチャートを用いて説明する。尚、Ｓ２０１乃至Ｓ２１２の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００４２】
ステップＳ２０１では、情報処理装置１０１は、入力を受け付ける入力フォームのコード体系マスタテーブル９００（図９参照）を取得する。
【００４３】
コード体系マスタテーブル９００（図９参照、区切り情報）は、コード名称９０１、ブロック番号９０２、表示桁数９０３、入力候補表示桁数９０４（入力候補表示文字数）、背景色９０５から構成される。コード名称９０１は、入力フォームに対応する名称を示す。ブロック番号９０２は、当該入力フォームに入力されるコードを意味のある所定文字数で区切った場合の１つのまとまりを示す。例えば、仕入先コード９１１として、「２０００ＨＯＫＫＡＩＤＯ０１ＳＨＩＩＲＥ０１」というコードがある。基本的に業務アプリケーションにおけるこういったコードはある程度意味のあるまとまりとしてコードを体系化している。この場合では、「２０００ＨＯＫＫＡＩＤＯ」と「０１ＳＨＩＩＲＥ０１」の２つのブロックに区分可能である。前者は、「２０００年度北海道」の意味であり、後者は「０１地区仕入先０１」の意味である。こういったコードの体系はあらかじめコード体系マスタテーブル９００でブロックごとに定義しておく。また、この場合、前者の「２０００ＨＯＫＫＡＩＤＯ」のブロック番号９０２が「１」、後者の「０１ＳＨＩＩＲＥ０１」のブロック番号９０２が「２」となる。ブロックは２つ以上存在してもよい。意味のあるまとまりが複数あれば、その分だけブロック番号９０２を発行しておく。表示桁数９０３は、当該ブロックを構成する文字列が何ケタ（何文字）あるのかを示す。尚、本実施形態では文字列の桁数によってブロックを区切るものとするが、これに限らない。例えば、ハイフン等の記号によってコードを体系化していた場合（「２０００ＨＯＫＫＡＩＤＯ−０１ＳＨＩＩＲＥ０１」等）には、このハイフンの位置を基準としてブロックを区切ればよい。何かしらの情報に基づいて、この入力候補を所定のブロックに区切れればよい。入力候補表示桁数９０４は、ブロック単位で入力候補を表示開始する桁数（文字数）を示す。この桁数に達した場合や超えた場合に、入力候補をブロック単位で表示する。例えば、入力候補表示桁数９０４が「４」となっていた場合には、ユーザから４桁（文字）入力された場合に、１ブロック分、つまり表示桁数９０３が示す１２桁分の表示候補を表示する。「２０００ＨＯＫＫＡＩＤＯ０１ＳＨＩＩＲＥ０１」であれば、「２０００ＨＯＫＫＡＩＤＯ」までが表示される。背景色９０５は、入力フォームで何桁入力すれば、入力候補が表示されるのかを明示するために表示する背景の色である。
【００４４】
ステップＳ２０２では、情報処理装置１０１は、仕入先入力フォーム１２０１の背景色を背景色９０５と入力候補表示桁数９０４に基づいて変更する。例えば、入力候補表示桁数９０４が「４」の場合には、４桁分の背景を背景色９０５で指定された「シアン」に変更する。また、他のブロックについても同様に実行する。ブロック番号９０２が「１」の入力候補表示桁数９０４が「４」で、ブロック番号９０２が「２」の入力候補表示桁数９０４が「２」である場合には、各ブロックの先頭から４桁分、２桁分だけ背景色を変更する。こうすることで、どこまで入力すれば入力候補が表示されるのかがわかりやすくなる。
【００４５】
ステップＳ２０３では、情報処理装置１０１は、キーボード２０９からのキー入力を受け付ける（表示指示受付手段）。ここでは、文字や数字だけでなく、方向キーやＥｎｔｅｒキーなど各種キーの操作を受け付ける。
【００４６】
ステップＳ２０４では、情報処理装置１０１は、仕入先入力フォーム１２０１に対して、キーボード２０９に備えられた下キーの押下がなされたか否かを判定する。本実施形態の下キーは、仕入先入力フォーム１２０１に入力済みの入力データに基づいて、入力候補を表示する処理を実行するキーである。このキーは下キーでなくてもよいし、Ｓｈｉｆｔキーと下キーのように、複数のキーの組み合わせであってもよい。下キーの押下がなされたと判定された場合には、ステップＳ２０５に処理を進める。下キーの押下がなされなかったと判定された場合には、ステップＳ２０６に処理を進める。
【００４７】
ステップＳ２０５では、情報処理装置１０１は、入力中のブロックに対する入力候補を表示する処理を実行する。ブロック候補表示処理の詳細は、後述する図５に示す。
【００４８】
ステップＳ２０６では、情報処理装置１０１は、仕入先入力フォーム１２０１に対してデータの入力がなされたか否かを判定する。データの入力がなされたと判定された場合には、ステップＳ２０７に処理を進め、そうでない場合には、ステップＳ２０８に処理を進める。
【００４９】
ステップＳ２０７では、情報処理装置１０１は、仕入先入力フォーム１２０１に対して所定桁数（文字数）のデータの入力がなされた場合に入力候補を表示する処理を実行する。桁数候補表示処理の詳細は、後述する図７に示す。
【００５０】
ステップＳ２０８では、情報処理装置１０１は、仕入先入力フォーム１２０１に対して、キーボード２０９に備えられたＢａｃｋＳｐａｃｅキーの押下があったか否かを判定する。本実施形態のＢａｃｋＳｐａｃｅキーは、入力済みのデータを１文字削除する処理を実行するキーである。このキーはＢａｃｋＳｐａｃｅキーでなくてもよいし、ＳｈｉｆｔキーとＢａｃｋＳｐａｃｅキーのように、複数のキーの組み合わせであってもよい。ＢａｃｋＳｐａｃｅキーが押下されたと判定された場合には、ステップＳ２０９に処理を進め、そうでない場合には、ステップＳ２１０に処理を進める。
【００５１】
ステップＳ２０９では、情報処理装置１０１は、仕入先入力フォーム１２０１に入力済みのデータを入力フォーカスのある位置に基づいて１文字削除する（削除手段）。
【００５２】
ステップＳ２１０では、情報処理装置１０１は、仕入先入力フォーム１２０１に対して、キーボード２０９に備えられた上キーが押下されたか否かを判定する。本実施形態の上キーは、入力済みのデータを１ブロック削除する処理を実行するキーである。このキーは上キーでなくてもよいし、Ｓｈｉｆｔキーと上キーのように、複数のキーの組み合わせであってもよい。上キーが押下されたと判定された場合には、ステップＳ２１１に処理を進め、そうでない場合には、ステップＳ２１２に処理を進める。
【００５３】
ステップＳ２１１では、情報処理装置１０１は、仕入先入力フォーム１２０１に入力済みのデータを入力フォーカスのあるブロックに基づいて、１ブロック削除する処理を実行する（削除手段）。ブロック削除処理の詳細は、後述する図８に示す。
【００５４】
ステップＳ２１２では、情報処理装置１０１は、キーボード２０９に備えられたＥｎｔｅｒキーが押下されたか否かを判定する。つまり、仕入先入力フォーム１２０１に対する入力が確定したのか否かを判定する。Ｅｎｔｅｒキーが押下されたと判定された場合には、仕入先入力処理を終了して呼び出し元に処理を戻し、そうでない場合には、ステップＳ２０３に処理を戻す。
【００５５】
次に、本発明の実施形態における情報処理装置１０１によって行われるブロック候補表示処理について、図５に示すフローチャートを用いて説明する。尚、Ｓ３０１乃至Ｓ３１１の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００５６】
ブロック候補表示処理は、入力データに基づいた入力候補の表示が指示されたときに、現在入力中のブロックに関する入力候補を表示する処理である。つまり、図９に示す仕入先マスタテーブル９１０の仕入先コード９１１のうち、最初のブロックで当該指示がなされた場合には、「２０００ＨＯＫＫＡＩＤＯ」、「２０００ＨＯＫＵＲＩＫＵ」、「２０１０ＨＯＫＫＡＩＤＯ」、「２０１０ＨＯＫＵＲＩＫＵ」の４つが入力候補として表示されることになる。また、例えば「２０００ＨＯＫＫＡＩＤＯ」が入力された状態で、次のブロックで当該指示がなされると、「２０００ＨＯＫＫＡＩＤＯ」と一致する候補である「０１ＳＨＩＩＲＥ０１」から「０１ＳＨＩＩＲＥ０４」、「０２ＳＨＩＩＲＥ０５」から「０２ＳＨＩＩＲＥ０８」の８つが入力候補として表示されることになる。以下、ブロック候補表示処理の詳細について、説明する。
【００５７】
ステップＳ３０１では、情報処理装置１０１は、仕入先入力フォーム１２０１において何桁目を入力中であるのかを特定する。つまり、入力位置を特定する。例えば、「２０００Ｈ」と入力されていれば５桁目、「２０００ＨＯＫＫＡＩＤＯ０１ＳＨ」と入力されていれば、１６桁目となる。
【００５８】
ステップＳ３０２では、情報処理装置１０１は、ステップＳ３０１で特定された入力位置に基づいて、入力中のブロック番号を特定する。具体的には、入力フォームごとに定められた表示桁数９０３をコード体系マスタテーブル９００から取得し、入力中の入力フォームの何ブロック目を入力中なのか特定する。例えば、仕入先入力フォーム１２０１は、図９のコード体系マスタテーブル９００にも示す通り、１２桁と１０桁の２つのブロックから構成される。つまり、合計２２桁の文字列を入力することになる。そのうち、例えば５桁目を入力中である場合には、ブロック番号９０２が「１」のブロックを入力中であるということになるし、１８桁目を入力中である場合には、ブロック番号９０２が「２」のブロックを入力中であるということになる。
【００５９】
ステップＳ３０３では、情報処理装置１０１は、ステップ３０２で特定されたブロック番号９０２が「１」であるか否かを判定する。ブロック番号９０２が「１」であると判定された場合には、ステップＳ３０４に処理を進め、そうでない場合には、ステップＳ３０５に処理を進める。
【００６０】
ステップＳ３０４では、情報処理装置１０１は、ブロック番号９０２「１」に対応する表示桁数９０３を特定し、当該表示桁数９０３が示す桁数分の文字を仕入先コード９１１に格納された各コードの先頭から取得する。そして、取得した各コードの文字の重複分を取り除き、表示候補とする。つまり、１２桁であれば、仕入先コード９１１に格納された各コードの先頭文字から１２桁分それぞれ取得する。そして、取得した文字列のうち重複する文字列が存在する場合には、重複分を取り除いて、表示候補とする。図９に示す仕入先コード９１１のブロック番号９０２「１」に関する入力候補は、「２０００ＨＯＫＫＡＩＤＯ」、「２０００ＨＯＫＵＲＩＫＵ」、「２０１０ＨＯＫＫＡＩＤＯ」、「２０１０ＨＯＫＵＲＩＫＵ」の４つとなる。
【００６１】
一方、ステップＳ３０５では、情報処理装置１０１は、ステップＳ３０２で特定されたブロック番号９０２までに入力されたデータを取得する。例えば、ブロック番号９０２「２」であるということは、ブロック番号９０２「１」までに入力されたデータがあるはずである。よって、それらの入力されたデータを取得する。
【００６２】
ステップＳ３０６では、情報処理装置１０１は、ステップＳ３０５で取得したデータと、ステップＳ３０２で特定されたブロック番号９０２に基づいて、入力候補を取得する。具体的には、ステップＳ３０４と同様にブロック番号９０２に対応する表示桁数９０３を特定し、当該表示桁数９０３が示す桁数分の文字を仕入先コード９１１に格納された各コードの先頭から取得する。そして、取得した各コードの文字の重複分を取り除き、ステップＳ３０５で取得したデータと一致する入力候補を取得する。つまり、特定されたブロック番号９０２よりも前に入力されたデータと一致する入力候補で、かつ特定されたブロック番号９０２に対応する表示桁数９０３が示す桁数分の文字を取得することになる。例えば、図９に示す仕入先マスタテーブル９１０の仕入先コード９１１のうち、ブロック番号９０２「１」に「２０００ＨＯＫＫＡＩＤＯ」と入力されている状態だった場合には、ブロック番号９０２「１」が「２０００ＨＯＫＫＡＩＤＯ」となっているコードを抽出し、当該コードのブロック番号９０２「２」が示す表示桁数９０３分だけ入力候補として取得する。つまり、後述するステップＳ３０７では、「０１ＳＨＩＩＲＥ０１」から「０１ＳＨＩＩＲＥ０４」、「０２ＳＨＩＩＲＥ０５」から「０２ＳＨＩＩＲＥ０８」までの８つが入力候補として表示されることになる。
【００６３】
ステップＳ３０７では、情報処理装置１０１は、ステップＳ３０２で特定したブロック番号９０２が最終ブロックであるか否かを判定する。最終ブロックか否かは、コード体系マスタテーブル９００に格納されたコード名称９０１とブロック番号９０２から判定するようにしてもよいし、コード名称９０１ごとに最終ブロックが定義されており、その情報を使用して判定するようにしてもよい。最終ブロックであると判定された場合には、ステップＳ３０９に処理を進め、そうでない場合には、ステップＳ３０８に処理を進める。
【００６４】
ステップＳ３０８では、情報処理装置１０１は、ステップＳ３０４またはステップＳ３０６で取得した入力候補を選択可能に一覧表示する。
【００６５】
一方、ステップＳ３０９では、情報処理装置１０１は、ステップＳ３０４またはステップＳ３０６で取得した入力候補に対応する仕入先名称９１２を仕入先マスタテーブル９１０から取得する。そして、ステップＳ３１０では、情報処理装置１０１は、ステップＳ３０４またはステップＳ３０６で取得した入力候補と、ステップＳ３０９で取得した仕入先名称９１２を対応づけて一覧表示する。入力候補はブロックごとに選択可能であるので、最終ブロックが選択されるまで仕入先名称９１２が確定しない。よって、入力候補に対応する仕入先名称９１２を合わせて表示することができないが、最終ブロックにおける入力候補の表示であれば、仕入先コード９１１が一意に特定できるので、仕入先名称９１２も合わせて表示させることができる。このようにすることで、ユーザに選択させやすくする効果がある。
【００６６】
ステップＳ３１１では、情報処理装置１０１は、ステップＳ３０８またはステップＳ３１０で表示された入力候補を選択する処理を実行する。選択操作処理の詳細は、後述する図６に示す。
【００６７】
次に、本発明の実施形態における情報処理装置１０１によって行われる選択操作処理について、図６に示すフローチャートを用いて説明する。尚、Ｓ４０１乃至Ｓ４０８の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００６８】
ステップＳ４０１では、情報処理装置１０１は、前述したステップＳ３０７で表示された入力候補を選択するためのキー入力操作を受け付ける（選択受付手段）。
【００６９】
ステップＳ４０２では、情報処理装置１０１は、キーボード２０９に備えられた下キーの押下がなされたか否かを判定する。下キーが押下されたと判定された場合には、ステップＳ４０３に処理を進め、そうでない場合には、ステップＳ４０４に処理を進める。
【００７０】
ステップＳ４０３では、情報処理装置１０１は、前述したステップＳ３０７で表示された入力候補の選択位置を一つ下に移動させる。表示された入力候補のうち、一番下の入力候補が選択されている状態で下キーが押下された場合には、移動させなくてもよいし、一番上の入力候補に選択位置を移動させてもよい。
【００７１】
ステップＳ４０４では、情報処理装置１０１は、キーボード２０９に備えられた上キーの押下がなされたか否かを判定する。上キーが押下されたと判定された場合には、ステップＳ４０５に処理を進め、そうでない場合には、ステップＳ４０６に処理を進める。
【００７２】
ステップＳ４０５では、情報処理装置１０１は、前述したステップＳ３０７で表示された入力候補の選択位置を一つ上に移動させる。表示された入力候補のうち、一番上の入力候補が選択されている状態で上キーが押下された場合には、移動させなくてもよいし、一番下の入力候補に選択位置を移動させてもよい。
【００７３】
ステップＳ４０６では、情報処理装置１０１は、ステップＳ４０３またはステップＳ４０５において入力候補が選択された状態で、キーボード２０９に備えられたＥｎｔｅｒキーの押下がなされたか否かを判定する。Ｅｎｔｅｒキーが押下されたと判定された場合には、ステップＳ４０７に処理を進め、そうでない場合には、ステップＳ４０１に処理を戻す。
【００７４】
ステップＳ４０７では、情報処理装置１０１は、選択中の入力候補を仕入先入力フォーム１２０１に設定する。具体的には、仕入先入力フォーム１２０１に選択された入力候補を入力し、表示させる。
【００７５】
ステップＳ４０８では、情報処理装置１０１は、前述したステップＳ３０７で表示された入力候補一覧を閉じて、選択操作処理を終了し、呼び出し元に処理を戻す。
【００７６】
次に、本発明の実施形態における情報処理装置１０１によって行われる桁数候補表示処理について、図７に示すフローチャートを用いて説明する。尚、Ｓ５０１乃至Ｓ５１１の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００７７】
桁数候補表示処理では、所定桁数（文字数）が入力された場合に、当該ブロックの入力候補を検索し、表示する処理である。図１３に示すように、従来では１文字入力するごとに情報処理装置１０１が入力候補の検索を行い、入力候補一覧として表示させていた。しかし、これでは情報処理装置１０１の処理負荷が高い上、ユーザが多くの入力候補から検索しなくてはならないので非効率的である。よって、本願発明では、入力フォームに設定された所定桁数が入力されて初めて入力候補を検索し、表示するようにしている。以下、桁数候補表示処理の詳細について説明する。
【００７８】
ステップＳ５０１及びステップＳ５０２は、前述したステップＳ３０１及びステップＳ３０２と同様であるので、説明を省略する。
【００７９】
ステップＳ５０３では、情報処理装置１０１は、ステップＳ５０２で特定されたブロック番号９０２に対応する入力候補表示桁数９０４をコード体系マスタテーブル９００から取得する。例えば、図９に示すコード体系マスタテーブル９００でブロック番号９０２が「１」の場合、取得する入力候補表示桁数９０４は、「４」である。
【００８０】
ステップＳ５０４では、情報処理装置１０１は、仕入先入力フォーム１２０１に入力された文字列がステップＳ５０３で取得した入力候補表示桁数９０４に達しているか否かを判定する。入力候補表示桁数９０４に達していると判定された場合には、ステップＳ５０５に処理を進め、そうでない場合には、桁数候補表示処理を終了し、呼び出し元に処理を戻す。
【００８１】
ステップＳ５０５では、情報処理装置１０１は、ステップＳ５０１で特定された入力位置までに入力されたデータを取得する。つまり、入力候補表示桁数９０４を満たす桁数分だけ文字の入力があったはずなので、そのデータを取得する。または、当該データと、ステップＳ５０３で特定されたブロック番号９０２までに入力されたデータとを取得する。
【００８２】
ステップＳ５０６では、情報処理装置１０１は、ステップＳ５０５で取得した入力データと、ステップＳ５０３で特定されたブロック番号９０２に対応する表示桁数９０３に応じて、仕入先マスタテーブル９１０の仕入先コード９１１から入力候補を取得する。具体的には、まず、ステップＳ５０３で特定されたブロック番号９０２に対応する表示桁数９０３だけ仕入先コード９１１から文字列を取得する。例えば、ブロック番号９０２が「１」だった場合には、表示桁数９０３は「１２桁」なので先頭文字から１２桁分取得する。ブロック番号９０２が「２」だった場合には、表示桁数９０３は「１０桁」なので、ブロック番号９０２「１」の次の文字から１０桁分取得する。そして、取得した仕入先コード９１１のうち、重複するものは除外する。つまり、ブロック番号９０２が「１」だった場合には、先頭から１２桁分取得するが、「２０００ＨＯＫＫＡＩＤＯ」が８つ、「２０００ＨＯＫＵＲＩＫＵ」が３つ、「２０１０ＨＯＫＫＡＩＤＯ」が８つ、「２０１０ＨＯＫＵＲＩＫＵ」が３つ取得できてしまう。つまり、重複分があるのでこれらを取り除いて、「２０００ＨＯＫＫＡＩＤＯ」、「２０００ＨＯＫＵＲＩＫＵ」、「２０１０ＨＯＫＫＡＩＤＯ」、「２０１０ＨＯＫＵＲＩＫＵ」の４つとする。次に、ステップＳ５０５で取得した入力データ、つまり入力候補表示桁数９０４まで入力された入力データと、重複分を取り除いた入力候補とを比較し、先頭４桁が一致する入力データを取得する。入力候補表示桁数９０４まで入力された入力データとして、「２０００」と入力されていれば、「２０００ＨＯＫＫＡＩＤＯ」、「２０００ＨＯＫＵＲＩＫＵ」の２つのテキストデータが入力候補となる。
【００８３】
ステップＳ５０７では、情報処理装置１０１は、ステップＳ５０２で特定したブロック番号９０２が最終ブロック（最後に選択される文字列）であるか否かを判定する。最終ブロックか否かは、コード体系マスタテーブル９００に格納されたコード名称９０１とブロック番号９０２から判定するようにしてもよいし、コード名称９０１ごとに最終ブロックが定義されており、その情報を使用して判定するようにしてもよい。最終ブロックであると判定された場合には、ステップＳ５０９に処理を進め、そうでない場合には、ステップＳ５０８に処理を進める。
【００８４】
ステップＳ５０８では、情報処理装置１０１は、ステップＳ５０６で取得した入力候補を選択可能に一覧表示する（表示手段）。
【００８５】
一方、ステップＳ５０９では、情報処理装置１０１は、ステップＳ５０６で取得した入力候補に対応する仕入先名称９１２を仕入先マスタテーブル９１０から取得する。そして、ステップＳ５１０では、情報処理装置１０１は、ステップＳ５０６で取得した入力候補と、ステップＳ５０９で取得した仕入先名称９１２を対応づけて一覧表示する。入力候補はブロックごとに選択可能であるので、最終ブロックが選択されるまで仕入先名称９１２が確定しない。よって、入力候補に対応する仕入先名称９１２を合わせて表示することができないが、最終ブロックにおける入力候補の表示であれば、仕入先コード９１１が一意に特定できるので、仕入先名称９１２も合わせて表示させることができる。このようにすることで、ユーザに選択させやすくする効果がある。
【００８６】
ステップＳ３１１では、情報処理装置１０１は、ステップＳ３０８またはステップＳ３１０で表示された入力候補を選択する処理を実行する。選択操作処理の詳細は、前述の通りである。
【００８７】
ここで図１０を参照して、図７の桁数候補表示処理の具体例の説明を行う。説明例１００１は、前述したステップＳ２０２で初期化された初期表示状態の仕入先入力フォーム１２０１である。入力候補表示桁数９０４が示す桁数分だけ背景色が変更されている。次に、仕入先入力フォーム１２０１に対してユーザが文字列を入力していく。説明例１００２に示す通り、ブロック１の入力候補表示桁数９０４に達していなければ、入力候補は表示されない。一方、説明例１００３に示す通り、入力候補表示桁数９０４に達すると、入力候補の検索と表示がなされ、ブロック番号９０２が「１」の分だけ入力候補が表示される。このようにすることで、無駄なサジェスト機能を実行せずに済む。続いて、説明例１００４に示す通り、引き続き入力を行い、ブロック２の入力候補表示桁数９０４が示す桁数に到達するまでは入力候補が表示されない。そして、説明例１００５に示す通り、ブロック２の入力候補表示桁数９０４に達すると、ブロック１で選択された入力データと入力候補表示桁数９０４まで入力された入力データとに基づいて、ブロック２の入力候補が表示される。ここで、最終ブロックだった場合には、説明例１００６に示す通り、仕入先名称９１２も合わせて表示させる。説明例１００７と説明例１００８に示す通り、表示された入力候補が選択されると入力が確定され、仕入先入力フォーム１２０１にデータが入力される。このように、表示桁数９０３のような区切り情報に基づいて、入力候補を構成するブロックごとに選択可能に表示させれば、似たようなコードが一覧表示されるよりも、ユーザが望むコードを容易に選択できる効果を奏する。
【００８８】
次に、本発明の実施形態における情報処理装置１０１によって行われるブロック削除処理について、図８に示すフローチャートを用いて説明する。尚、Ｓ６０１乃至Ｓ６０３の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされているアプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００８９】
ブロック削除処理では、前述したステップＳ２０９のように仕入先入力フォーム１２０１に入力された入力データを１文字ずつ削除するのではなく、ブロックごとに削除するための処理である。以下、ブロック削除処理の詳細について説明する。
【００９０】
ステップＳ６０１では、情報処理装置１０１は、仕入先入力フォーム１２０１において削除指示された時のカーソル位置が何桁目であるのかを特定する。例えば、「２０００Ｈ」で削除指示があった場合には５桁目、「２０００ＨＯＫＫＡＩＤＯ０１ＳＨ」で削除指示があった場合には、１６桁目となる。
【００９１】
ステップＳ６０２では、情報処理装置１０１は、ステップＳ６０１で特定された削除位置に基づいて、削除指示のあったブロック番号を特定する。具体的には、入力フォームごとに定められた表示桁数９０３をコード体系マスタテーブル９００から取得し、削除指示のあった入力フォームが何ブロック目なのか特定する。例えば、仕入先入力フォーム１２０１は、図９のコード体系マスタテーブル９００にも示す通り、１２桁と１０桁の２つのブロックから構成される。つまり、合計２２桁の文字列を入力することになる。そのうち、例えば５桁目を入力中である場合には、ブロック番号９０２が「１」のブロックであるということになるし、１８桁目を入力中である場合には、ブロック番号９０２が「２」のブロックであるということになる。
【００９２】
ステップＳ６０３では、情報処理装置１０１は、ステップＳ６０２で特定したブロック番号９０２に基づいて、入力データを削除する。つまり、ステップＳ６０２で特定されたブロック番号９０２が「２」であった場合には、ブロック２以降（ブロック２、ブロック３、ブロック４・・・）の各ブロックに入力された入力データを削除する。
【００９３】
例えば、図１１の説明例１１０１に示すような入力データが入力されている状態で、ブロック削除の指示（例えば上キーの押下）がなされた場合、削除指示がなされたのは、ブロック２であるので、説明例１１０２に示すようにブロック２の入力データを削除する。更に削除指示があった場合には、ブロック１で削除指示がなされたことになるので、説明例１１０３に示す通り、ブロック１の入力データを削除する。このようにすることで、１文字ずつ削除せずに、入力候補を表示するまとまりで入力データの削除ができ、より効率的な入力が可能となる。
【００９４】
以上説明したように、本実施形態によれば、入力フォームに設定された所定桁数分ごとに入力候補を提示することができるので、情報処理装置の処理負荷を減らしつつ、ユーザにとって選択しやすいサジェスト機能を提供でき、入力フォームに対する入力を支援できる効果を奏する。
【００９５】
次に、本発明の第２の実施形態について説明を行う。
【００９６】
第２の実施形態では、情報処理装置１０１と、サーバ装置１０２から構成される情報処理システム１００を用いて説明する。情報処理システム１００は、Ｗｅｂアプリケーションシステムであり、サーバ装置１０２は、Ｗｅｂアプリケーションサーバである。情報処理装置１０１は、ユーザからの操作に基づいて、入力フォームを備えた所定の画面の取得要求をサーバ装置１０２に出すと、サーバ装置１０２から当該画面が送信される。そして、入力フォームにおける入力候補（以下、入力候補データ）の表示指示をユーザから受け付けると、情報処理装置１０１はサーバ装置１０２に対して入力候補データの取得要求を出す。サーバ装置１０２は、その要求に基づいて、現在入力中のブロックの入力候補データを抽出し、情報処理装置１０１に送信する。情報処理装置１０１は、この入力候補データを受信し、ユーザからの選択が可能となるよう、一覧表示する。そして、入力候補データが選択されると、次のブロックの入力候補データを表示すべく、サーバ装置１０２に入力候補データの取得要求を送信する。
【００９７】
これを繰り返すことで、入力候補データの抽出をサーバ装置１０２に行わせることができるので、情報処理装置１０１の負荷を軽減することができる。更に、前述した実施形態では情報処理装置１０１にあらかじめ入力候補データを保持しておく必要があったが、第２の実施形態ではその必要性がなくなる。また、前述した実施形態と同様に、ユーザは入力候補データをブロックごとに選択することができるようになるので、容易に入力候補データを探索することが可能となる。以下、この第２の実施形態について説明を行う。
【００９８】
図１４は、第２の実施形態における情報処理システム１００のシステム構成の一例を示す図である。第２の実施形態における情報処理システム１００は、情報処理装置１０１、サーバ装置１０２が設置されており、それら装置はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク１０３を介して相互にデータ通信可能に接続されている。図１のネットワーク１０３上に接続される各種端末あるいはサーバの構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【００９９】
情報処理装置１０１は、パーソナルコンピュータ（以下、ＰＣ）のようなクライアント端末である。情報処理装置１０１にはＷｅｂブラウザがインストールされており、当該Ｗｅｂブラウザを通じて、サーバ装置１０２から取得した画面（ＨＴＭＬ等）を表示する。サーバ装置１０２は、情報処理装置１０１と通信可能に接続されたＷｅｂアプリケーションサーバである。Ｗｅｂアプリケーションが動作しており、情報処理装置１０１からの要求に応じて、必要な情報を情報処理装置１０１に送信する。情報処理装置１０１とサーバ装置１０２が動作することにより、Ｗｅｂシステムとして機能する。
【０１００】
尚、第２の実施形態では、情報処理装置１０１をＰＣとして説明を行うが、これに限らない。情報処理装置１０１は、タッチパネルを備えたタブレット型端末であってもよいし、携帯端末であってもよい。また、Ｗｅｂシステムのような形態だけでなく、クライアント・サーバシステムであってもよい。
【０１０１】
情報処理装置１０１とサーバ装置１０２のハードウェア構成は、前述した実施形態と同様である。つまり、図２で説明した内容と同様である。
【０１０２】
次に、情報処理装置１０１とサーバ装置１０２のモジュール構成を示す機能構成図について、図１５を用いて説明する。尚、図１５のモジュール構成は一例であり、用途や目的に応じて様々な構成例がある。
【０１０３】
情報処理装置１０１は、記憶モジュール３０１、Ｗｅｂブラウザモジュール１５０１、テーブル管理モジュール３０３、入力受付モジュール３０４、入力候補表示モジュール３０５から構成される。このうち、記憶モジュール３０１、テーブル管理モジュール３０３、入力受付モジュール３０４、入力候補表示モジュール３０５については、前述した実施形態と同様であるので、説明を省略する。尚、情報処理装置１０１は、コード体系マスタテーブル９００を記憶している。
【０１０４】
Ｗｅｂブラウザモジュール１５０１は、ＨＴＭＬ等の画面を表示可能なＷｅｂブラウザを制御するモジュールである。サーバ装置１０２から送信された画面を受信すると、Ｗｅｂブラウザモジュール１５０１を用いて、当該画面を表示し、ユーザからの入力を受け付ける。
【０１０５】
サーバ装置１０２は、記憶モジュール１５１１、入力候補生成モジュール１５１２、入力候補送信モジュール１５１３から構成される。
【０１０６】
記憶モジュール１５１１（記憶手段）は、各種データや画面、テーブルをＲＯＭ２０２または外部メモリ２１１に記憶するためのモジュールである。情報処理装置１０１に表示する各種データがサーバに記憶管理されている場合には、これらの情報をサーバのＲＯＭ２０２または外部メモリ２１１に記憶させる。情報処理装置１０１は、記憶モジュール３０１を通じて、必要に応じてサーバから各種データや画面、テーブルを取得できる。より具体的には、サーバ装置１０２ではコード体系マスタテーブル９００と仕入先マスタテーブル９１０を記憶している。
【０１０７】
入力候補生成モジュール１５１２は、情報処理装置１０１からの要求に応じて、所定の入力フォームに入力された文字列の入力位置や入力済みの文字列から、入力候補データを抽出し、前述した実施形態と同様にブロックごとに区切るためのモジュールである。同じ入力候補データがあった場合に、重複分を削除する処理についても、入力候補生成モジュール１５１２が実行する。入力候補送信モジュール１５１３では、入力候補生成モジュール１５１２で生成された複数の入力候補データを、情報処理装置１０１に送信するためのモジュールである。入力候補送信モジュール１５１３で送信された入力候補データを情報処理装置１０１が受信し、Ｗｅｂブラウザモジュール１５０１で表示された画面に供えられた入力フォームに入力候補として一覧表示する流れである。
【０１０８】
次に、第２の実施形態における情報処理装置１０１及びサーバ装置１０２によって行われる一連の処理について説明する。尚、第２の実施形態は第１の実施形態の変形例であるため、前述した実施形態の図３及び図４の各処理は、第２の実施形態においても同様である。第２の実施形態では、図４のステップＳ２０５で実行されるブロック候補表示処理と、同じくステップＳ２０７で実行される桁数候補表示処理における処理内容が第１の実施形態と異なるため、この２つの処理について、詳細に説明する。
【０１０９】
まず、第２の実施形態における情報処理装置１０１及びサーバ装置１０２によって行われるブロック候補表示処理について、図１６を用いて説明する。尚、ステップＳ７０１乃至ステップＳ７０３、ステップＳ７０８乃至ステップ７１０、ステップＳ７１３乃至ステップＳ７１５の各ステップは、情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。また、ステップＳ７０４乃至ステップＳ７０７、ステップＳ７１１、ステップＳ７１２の各ステップは、サーバ装置１０２におけるＣＰＵ２０１の制御の下、処理が行われる。
【０１１０】
ステップＳ７０１では、情報処理装置１０１は、仕入先入力フォーム１２０１において現在ユーザが入力している文字列の位置を特定する。例えば、入力された文字列の桁数がいくつかを特定する。「２０００Ｈ」と入力されていれば５桁目であるし、「２０００ＨＯＫＫＡＩＤＯ０１ＳＨ」と入力されていれば、１６桁目である。
【０１１１】
ステップＳ７０２では、情報処理装置１０１は、ステップＳ７０１で特定された入力位置に基づいて、入力中のブロック番号を特定する。ブロック番号のより具体的な特定方法は、ステップＳ３０２で前述した通りであるので、説明を省略する。
【０１１２】
ステップＳ７０３では、情報処理装置１０１は、仕入先入力フォーム１２０１に入力された入力データと、ステップＳ７０２で特定したブロック番号とを含めて、サーバ装置１０２に対して入力候補データの取得要求を送信する（取得要求送信手段）。
【０１１３】
ステップＳ７０４では、サーバ装置１０２は、情報処理装置１０１から送信された入力候補データの取得要求を受信する。そして、ステップＳ７０５では、サーバ装置１０２は、仕入先マスタテーブル９１０を取得し、受信した取得要求に含まれる入力データとブロック番号に応じて、仕入先マスタテーブル９１０から入力候補データを取得する（文字列取得手段）。より具体的には、例えば、受信した入力データが「２０００」でブロック番号が「１」だった場合、コード体系マスタテーブル９００の表示桁数９０３に基づいて、仕入先マスタテーブル９１０から入力候補データを抽出すると、「２０００ＨＯＫＫＡＩＤＯ」と「２０００ＨＯＫＵＲＩＫＵ」が抽出される。つまり、すでに入力されたデータ「２０００」に合致するもので、更にブロック番号が「１」に対応する桁数分の「１２桁」を抽出。そして重複分を削除すると、この２つが残る。このようにして、サーバ装置１０２で入力中のブロックの入力候補データを抽出することができる。
【０１１４】
尚、第２の実施形態では、情報処理装置１０１で入力中のブロックの特定を行い、サーバ装置１０２で特定されたブロックの入力候補データを抽出する形態を示しているが、入力中のブロックの特定もサーバ装置１０２で行うようにしてもよい。つまり、情報処理装置１０１は、仕入先入力フォーム１２０１に入力されたデータをサーバ装置１０２に送信し、サーバ装置１０２は当該データを受信すると、その入力データからステップＳ７０１と同様に入力位置を特定する。そして、ステップＳ７０２と同様に入力位置から入力中のブロック番号を特定する。あとは、ステップＳ７０５と同様に処理をすることで、更に情報処理装置１０１の負荷を軽減することができる。
【０１１５】
ステップＳ７０６では、サーバ装置１０２では、入力中のブロック番号が最終ブロックであるか否かを判定する。最終ブロックか否かは、コード体系マスタテーブル９００に格納されたコード名称９０１とブロック番号９０２から判定するようにしてもよいし、コード名称９０１ごとに最終ブロックが定義されており、その情報を使用して判定するようにしてもよい。最終ブロックであると判定された場合には、ステップＳ７１１に処理を進め、最終ブロックでないと判定された場合には、ステップＳ７０７に処理を進める。
【０１１６】
ステップＳ７０７では、サーバ装置１０２では、ステップＳ７０５で取得した入力候補データを情報処理装置１０１に送信する（文字列送信手段）。
【０１１７】
ステップＳ７０８では、情報処理装置１０１では、サーバ装置１０２から送信された入力候補データを受信し、ステップＳ７０９では、受信した入力候補データを仕入先入力フォーム１２０１の下部に選択可能に一覧表示させる。そして、ステップＳ７１０では、情報処理装置１０１は、ステップＳ７０９で一覧表示された入力候補データの選択をユーザから受け付ける処理を実行する。選択操作処理の詳細は、図６で前述した通りである。選択操作処理が終了すると、ステップＳ７０１に処理を戻す。つまり、ユーザが何かしらの入力候補データを選択すると、情報処理装置１０１から次のブロックの入力候補データの取得要求が送信されることになる。すなわち、入力候補データを次々に選択していくだけで、ユーザが望む入力候補を仕入先入力フォーム１２０１に入力することが可能となる。
【０１１８】
一方、ステップＳ７１１では、サーバ装置１０２は、最終ブロックであると判定されたので、ステップＳ７０５で抽出された入力候補データに対応する仕入先名称９１２を仕入先マスタテーブル９１０から取得する。そして、ステップＳ７１２では、サーバ装置１０２は、ステップＳ７０５で取得した入力候補データと、ステップＳ７１１で取得した当該入力候補データに対応する仕入先名称９１２を情報処理装置１０１に送信する。
【０１１９】
ステップＳ７１３では、情報処理装置１０１は、サーバ装置１０２から送信された入力候補データとそれに対応する仕入先名称９１２を受信し、ステップＳ７１４では、受信した入力候補データと仕入先名称９１２とを合わせて、仕入先入力フォーム１２０１の下部に選択可能に一覧表示させる。尚、仕入先名称９１２については、入力候補データである仕入先コード９１１とは異なるフォームに表示するようにする。この表示をする際には、仕入先コード９１１に対応する仕入先名称９１２が同じ行に表示されるようにする。そして、ユーザが選択操作処理で一覧表示された入力候補データにフォーカスを移動させると、対応する仕入先名称９１２もフォーカスされるようにする。このようにすることで、どの入力候補データ（仕入先コード９１１）がどの仕入先名称９１２を示すのかをユーザに識別させることができる。
【０１２０】
ステップＳ７１５では、情報処理装置１０１は、ステップＳ７１４で一覧表示された入力候補データの選択をユーザから受け付ける処理を実行する。選択操作処理の詳細は、図６で前述した通りである。選択操作処理が終了すると、最終ブロックまで選択が完了したので、ブロック候補表示処理を終了する。
【０１２１】
次に、図１８と図１９を用いて、図１６に示すブロック候補表示処理について説明する。図１８は、第２の実施形態におけるブロック候補表示処理の概要を示す図である。図１８を説明する前提として、コード体系マスタテーブル９００は、図１９に示すものを用いる。つまり、ブロックは３つに区切られるものとして説明を行う。図１９に示すように、ブロック１は、「１２桁」まで、ブロック２は更に「２桁」まで、ブロック３は更に「８桁」までと区切られている。尚、説明の便宜上、入力候補表示桁数９０４は使用しないため「ＮＵＬＬ」となっている。仕入先マスタテーブル９１０は図９に示すものを用いる。
【０１２２】
まず、１８０１に示すように、仕入先入力フォーム１２０１には最初は何も表示されていない。この仕入先入力フォーム１２０１においてユーザから下キーの入力を情報処理装置１０１が受け付けると、情報処理装置１０１からサーバ装置１０２に対して入力候補データの取得要求を送信する。すると、サーバ装置１０２においてブロック１の入力候補データの抽出を行い、抽出した入力候補データを情報処理装置１０１に送信する。情報処理装置１０１は、当該入力候補データを受信し、１８０２に示すようにユーザから選択可能に一覧表示させる。ここでは、何も入力せずに入力候補データの取得要求を送信したので、入力データによってブロック１の入力候補データが絞り込まれずに、表示されている。
【０１２３】
次に、１８０３で示すようにユーザから入力候補データの選択操作を受け付ける。ここでは、一覧表示された中から「２０００ＨＯＫＫＡＩＤＯ」が選択されたものとして説明する。「２０００ＨＯＫＫＡＩＤＯ」が選択されると、次のブロックの入力候補データを表示すべく、選択された「２０００ＨＯＫＫＡＩＤＯ」を含めて、入力候補データの取得要求をサーバ装置１０２に送信する。サーバ装置１０２は、入力候補データの取得要求を受信すると、「２０００ＨＯＫＫＡＩＤＯ」に合致するブロック２の入力候補データを抽出する。ここでは、「０１」と「０２」の２つが抽出されることになる。サーバ装置１０２は、再び情報処理装置１０１に対して、抽出した入力候補データを送信し、情報処理装置１０１は、これを受信する。
【０１２４】
１８０４では、サーバ装置１０２から送信されたブロック２の入力候補データを選択可能に一覧表示する。前述した実施形態では、図１０に示すようにブロック１も含めた入力候補データを一覧表示していたが、１８０４に示すように、ブロック２だけを表示するようにしてもよい。すでに選択されたブロック１は表示しないようにすることで、入力候補データに対するユーザの視認性を更に向上させることができる。
【０１２５】
１８０５に示すように「０１」が選択されたものとして続く説明を行う。「０１」が選択されると、再び、次のブロックの入力候補データの取得要求をサーバ装置１０２に送信する。当該送信でも、すでに入力されている「２０００ＨＯＫＫＡＩＤＯ０１」を含めて、サーバ装置１０２に送信する。サーバ装置１０２では、入力候補データの取得要求を受信すると、「２０００ＨＯＫＫＡＩＤＯ０１」に合致する最終ブロックであるブロック３の入力候補データを抽出する。そして、抽出された入力候補データに対応する仕入先名称９１２も合わせて抽出し、情報処理装置１０１に送信する。情報処理装置１０１はこれを受信し、１８０６に示すような形態で受信した入力候補データを一覧表示させる。仕入先名称９１２については、当該仕入先名称が表示されるフォームの下部に表示するようにすることで、仕入先コードと仕入先名称をユーザに明確に区別させるようにしてもよい。
【０１２６】
そして、１８０７に示すように、ユーザから「ＳＨＩＩＲＥ０１」が選択されると、それに対応する仕入先名称９１２である「２０００年度北海道０１地区仕入先０１」も合わせて選択状態となる。この状態でユーザからＥｎｔｅｒキーが押下されると、入力が確定し、１８０８に示すように入力が完了する。このような一連の流れを実現することで、ユーザは希望の入力候補データをブロックごとに次々に選択していくだけで、他の入力候補データを表示する指示を行わずとも、データの入力を行うことができる。また、入力候補データを選択するとごとに、サーバ装置１０２から次のブロックの選択に必要な入力候補データだけを受信することができるので、情報処理装置１０１にすべての入力候補データをあらかじめ保持しておく必要がなくなる。また、サーバ装置１０２で入力候補データの抽出処理等を行うことができるので、情報処理装置１０１の負荷も軽減することができるようになる。
【０１２７】
次に、第２の実施形態における情報処理装置１０１及びサーバ装置１０２によって行われる桁数候補表示処理について、図１７を用いて説明する。尚、ステップＳ８０１乃至ステップＳ８０５の各ステップは、情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。また、前述した図１６と同様の番号が振られているステップにおける処理の主体は、図１６と同様であるので説明を省略する。
【０１２８】
ステップＳ８０１では、情報処理装置１０１は、仕入先入力フォーム１２０１において現在ユーザが入力している文字列の位置を特定する。例えば、入力された文字列の桁数がいくつかを特定する。「２０００Ｈ」と入力されていれば５桁目であるし、「２０００ＨＯＫＫＡＩＤＯ０１ＳＨ」と入力されていれば、１６桁目である。
【０１２９】
ステップＳ８０２では、情報処理装置１０１は、ステップＳ８０１で特定された入力位置に基づいて、入力中のブロック番号を特定する。ブロック番号のより具体的な特定方法は、ステップＳ３０２で前述した通りであるので、説明を省略する。
【０１３０】
ステップＳ８０３では、情報処理装置１０１は、ステップＳ８０２で特定されたブロック番号に対応する入力候補表示桁数９０４を取得する。図９の例でいえば、ステップＳ８０２で特定されたブロック番号が「１」だったなら、取得できる入力候補表示桁数９０４は「４」である。
【０１３１】
そして、ステップＳ８０４では、情報処理装置１０１は、仕入先入力フォーム１２０１に入力された文字列（入力データ）の桁数が、ステップＳ８０３で取得した入力候補表示桁数９０４が示す桁数に達しているか否かを判定する。入力候補表示桁数９０４が示す桁数が入力されるまで入力候補データの表示は行わないので、ステップＳ８０４でこのような判定を行っている。入力された文字列の桁数が入力候補表示桁数９０４の示す桁数に達していると判定された場合には、ステップＳ８０５に処理を進める。入力された文字列の桁数が入力候補表示桁数９０４の示す桁数に達していないと判定された場合には、桁数候補表示処理を終了する。あらためてユーザから文字列が入力された場合には、再度桁数候補表示処理が実行されるので、その時に再度入力候補表示桁数９０４に達しているかどうかを判定する。
【０１３２】
ステップＳ８０５では、情報処理装置１０１は、入力候補データの一覧表示を行うべく、仕入先入力フォーム１２０１に入力済みの入力データと、ステップＳ８０２で特定されたブロック番号とを含めて、サーバ装置１０２に対して入力候補データの取得要求を送信する。以後の動作は、前述した図１６で示すステップＳ７０４乃至ステップＳ７１５と同様である。ただ、ステップＳ７１０は、図１６とは異なり、選択操作処理が終了すると、桁数候補表示処理も終了する。桁数候補表示処理は、ブロックごとに入力候補データの表示を開始する桁数が定められているので、所定のブロックにおける選択が完了したら、その次のブロックの所定の桁数が入力されるまで入力候補データの表示は行われない。こうすることで、不要な入力候補データの表示を避け、処理負荷を低減することができるようになる。
【０１３３】
以上説明したように、第２の実施形態によれば、ユーザが入力候補データを選択する操作を行うだけで、追加の指示を行うことなく次のブロックの入力候補データを表示することができ、更に入力候補データを選択するごとに、次のブロックの入力候補データをサーバ装置１０２から取得するので、あらかじめすべての入力候補データを情報処理装置１０１に保持しておく必要がなく、更にサーバ装置１０２で処理を代替させることで情報処理装置１０１の処理負荷を軽減することのできる効果を奏する。
【０１３４】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１３５】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１３６】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１３７】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１３８】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１３９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１４０】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１４１】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１４２】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１４３】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１４４】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１４５】
１０１  情報処理装置
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆ（インターフェース）コントローラ
２０９  入力装置
２１０  ディスプレイ装置
２１１  外部メモリ
【図１】
0005585695.tif 000002
【図２】
0005585695.tif 000003
【図３】
0005585695.tif 000004
【図４】
0005585695.tif 000005
【図５】
0005585695.tif 000006
【図６】
0005585695.tif 000007
【図７】
0005585695.tif 000008
【図８】
0005585695.tif 000009
【図９】
0005585695.tif 000010
【図１０】
0005585695.tif 000011
【図１１】
0005585695.tif 000012
【図１２】
0005585695.tif 000013
【図１３】
0005585695.tif 000014
【図１４】
0005585695.tif 000015
【図１５】
0005585695.tif 000016
【図１６】
0005585695.tif 000017
【図１７】
0005585695.tif 000018
【図１８】
0005585695.tif 000019
【図１９】
0005585695.tif 000020