(57)【要約】      （修正有）【課題】大量のデータから検索条件に応じたデータを抽出することができるようにする。【解決手段】ホストコンピュータ２０は、マスタファイル２３１に記憶されているマスタデータに含まれる項目の値に対する条件が指定された検索依頼データを受け付け、検索依頼データに応じて検索プログラムを作成する。検索プログラムは、マスタデータに含まれる項目の値が、検索依頼データに指定される検索条件を満たすか否かを判定し、検索条件を満たすマスタデータに基づく検索データを出力するためのプログラムである。ホストコンピュータ２０は、作成した検索プログラムを実行することにより、検索依頼データに応じた検索データを出力することができる。【選択図】図３
2010211768.tif 000002
【特許請求の範囲】
【請求項１】
データを検索する装置であって、
検索対象のデータを記憶するデータ記憶部と、
前記検索対象のデータに含まれる項目の値に対する条件が指定された検索依頼データを受け付ける検索依頼データ受付部と、
前記検索依頼データに応じて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定し、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するための検索プログラムを生成するプログラム生成部と、
前記データ記憶部に記憶されている前記検索対象のデータを順次読み出し、前記読みだした検索対象のデータを入力として前記検索プログラムを実行するプログラム実行部と、
を備えることを特徴とするデータ検索装置。
【請求項２】
請求項１に記載のデータ検索装置であって、
前記データ記憶部が記憶する前記検索対象のデータは、バッチ処理により生成されるバッチデータであること、
を特徴とするデータ検索装置。
【請求項３】
請求項１に記載のデータ検索装置であって、
複数の前記検索依頼データを受け付けた場合に、前記プログラム生成部は、前記検索依頼データごとに、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定するとともに、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するように設定した１つの前記検索プログラムを生成すること、
を特徴とするデータ検索装置。
【請求項４】
請求項１に記載のデータ検索装置であって、
前記検索依頼データには、複数の前記項目について、前記項目の値が含まれており、
前記検索プログラムは、前記検索対象のデータに含まれる前記複数の項目の全てについて、前記項目の値が、前記検索依頼データに含まれる前記項目の値に一致するか否かにより前記条件を満たすか否かを判定するためのものであること、
を特徴とするデータ検索装置。
【請求項５】
請求項４に記載のデータ検索装置であって、
前記検索プログラムは、ある項目について前記検索依頼データに第１および第２の値が指定されている場合に、当該第１および第２の値が指定された項目である範囲指定項目以外の前記項目の全てについて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに含まれる前記項目の値に一致し、かつ、前記検索対象のデータに含まれる前記範囲指定項目の値が、前記範囲指定項目について前記検索依頼データに指定された前記第１の値から前記第２の値までの間であることにより前記条件を満たすことを判定するものであること、
を特徴とするデータ検索装置。
【請求項６】
請求項１に記載のデータ検索装置であって、
前記検索プログラムの実行により出力される前記出力情報に基づいて帳票を出力する帳票出力部を備えること、
を特徴とするデータ検索装置。
【請求項７】
請求項１に記載のデータ検索装置であって、
前記検索依頼データには、前記検索対象のデータの検索を依頼する依頼者を特定する依頼者特定情報が含まれ、
前記検索プログラムは、前記出力情報に、前記検索依頼データに含まれる前記依頼者特定情報を付帯させて出力するものであること、
を特徴とするデータ検索装置。
【請求項８】
請求項７に記載のデータ検索装置であって、
前記出力情報を記憶する出力情報記憶部と、
前記検索依頼データごとに、前記検索依頼データに含まれる前記依頼者特定情報に対応する前記出力情報を前記出力情報記憶部から読み出し、前記読み出した出力情報に基づいて帳票を出力する帳票出力部と、
を備えることを特徴とするデータ検索装置。
【請求項９】
請求項１に記載のデータ検索装置であって、
前記プログラム生成部は、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定する条件式と、前記条件式が真と評価された場合に前記出力情報を出力する命令文とを含むｉｆ文を、所定のプログラミング言語により記述した前記検索プログラムを生成すること、
を特徴とするデータ検索装置。
【請求項１０】
データを検索する方法であって、
前記検索対象のデータを記憶するデータ記憶部を有するコンピュータが、
前記検索対象のデータに含まれる項目の値に対する条件が指定された検索依頼データを受け付け、
前記検索依頼データに応じて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定し、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するための検索プログラムを生成し、
前記データ記憶部に記憶されている前記検索対象のデータを順次読み出し、前記読みだした検索対象のデータを入力として前記検索プログラムを実行すること、
を特徴とするデータ検索方法。
【請求項１１】
データを検索するためのプログラムであって、
前記検索対象のデータを記憶するデータ記憶部を有するコンピュータに、
前記検索対象のデータに含まれる項目の値に対する条件が指定された検索依頼データを受け付けるステップと、
前記検索依頼データに応じて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定し、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するための検索プログラムを生成するステップと、
前記データ記憶部に記憶されている前記検索対象のデータを順次読み出し、前記読みだした検索対象のデータを入力として前記検索プログラムを実行するステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ検索装置、データ検索方法およびプログラムに関する。
【背景技術】
【０００２】
大量のデータから複雑な検索式を記載することなく必要なものを抽出することが求められており、特許文献１には、リレーショナルデータベースに格納されているデータを抽出するためのＳＱＬ文を、ハイパーテキストに記載された情報に基づいて自動生成する仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−６７０７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、例えば金融機関などでは、大量のデータを一括に処理するバッチ処理により作成されたバッチデータが蓄積されている。このようなバッチデータは、処理の順に順次蓄積されていっており、リレーショナルデータベース管理システム（ＲＤＢＭＳ）により管理可能な形式で蓄積されていない。しかしながら、特許文献１では、リレーショナルデータベースの形でデータが蓄積されることを前提としており、また、生成したＳＱＬ文に基づいてどのようにデータを抽出するのかについては記載されておらず、データの抽出処理はＲＤＢＭＳに依存している。
【０００５】
本発明は、このような背景を鑑みてなされたものであり、大量のデータから検索条件に応じたデータを抽出することのできるデータ検索装置、データ検索方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するための本発明の主たる発明は、データを検索する装置であって、検索対象のデータを記憶するデータ記憶部と、前記検索対象のデータに含まれる項目の値に対する条件が指定された検索依頼データを受け付ける検索依頼データ受付部と、前記検索依頼データに応じて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定し、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するための検索プログラムを生成するプログラム生成部と、前記データ記憶部に記憶されている前記検索対象のデータを順次読み出し、前記読みだした検索対象のデータを入力として前記検索プログラムを実行するプログラム実行部と、を備えることとする。
【０００７】
また、本発明のデータ検索装置では、前記データ記憶部が記憶する前記検索対象のデータは、バッチ処理により生成されるバッチデータであることとしてもよい。
【０００８】
また、本発明のデータ検索装置では、複数の前記検索依頼データを受け付けた場合に、前記プログラム生成部は、前記検索依頼データごとに、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定するとともに、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するように設定した１つの前記検索プログラムを生成するようにしてもよい。
【０００９】
また、本発明のデータ検索装置では、前記検索依頼データには、複数の前記項目について、前記項目の値が含まれており、前記検索プログラムは、前記検索対象のデータに含まれる前記複数の項目の全てについて、前記項目の値が、前記検索依頼データに含まれる前記項目の値に一致するか否かにより前記条件を満たすか否かを判定するためのものであることとしてもよい。
【００１０】
また、本発明のデータ検索装置では、前記検索プログラムは、ある項目について前記検索依頼データに第１および第２の値が指定されている場合に、当該第１および第２の値が指定された項目である範囲指定項目以外の前記項目の全てについて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに含まれる前記項目の値に一致し、かつ、前記検索対象のデータに含まれる前記範囲指定項目の値が、前記範囲指定項目について前記検索依頼データに指定された前記第１の値から前記第２の値までの間であることにより前記条件を満たすことを判定するものであることとしてもよい。
【００１１】
また、本発明のデータ検索装置は、前記検索プログラムの実行により出力される前記出力情報に基づいて帳票を出力する帳票出力部を備えるようにしてもよい。
【００１２】
また、本発明のデータ検索装置では、前記検索依頼データには、前記検索対象のデータの検索を依頼する依頼者を特定する依頼者特定情報が含まれ、前記検索プログラムは、前記出力情報に、前記検索依頼データに含まれる前記依頼者特定情報を付帯させて出力するものであることとしてもよい。
【００１３】
また、本発明のデータ検索装置は、前記出力情報を記憶する出力情報記憶部と、前記検索依頼データごとに、前記検索依頼データに含まれる前記依頼者特定情報に対応する前記出力情報を前記出力情報記憶部から読み出し、前記読み出した出力情報に基づいて帳票を出力する帳票出力部と、を備えるようにしてもよい。
【００１４】
また、本発明のデータ検索装置では、前記プログラム生成部は、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定する条件式と、前記条件式が真と評価された場合に前記出力情報を出力する命令文とを含むｉｆ文を、所定のプログラミング言語により記述した前記検索プログラムを生成するようにしてもよい。
【００１５】
また、本発明の他の態様は、データを検索する方法であって、前記検索対象のデータを記憶するデータ記憶部を有するコンピュータが、前記検索対象のデータに含まれる項目の値に対する条件が指定された検索依頼データを受け付け、前記検索依頼データに応じて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定し、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するための検索プログラムを生成し、前記データ記憶部に記憶されている前記検索対象のデータを順次読み出し、前記読みだした検索対象のデータを入力として前記検索プログラムを実行することとする。
【００１６】
また、本発明の他の態様は、データを検索するためのプログラムであって、前記検索対象のデータを記憶するデータ記憶部を有するコンピュータに、前記検索対象のデータに含まれる項目の値に対する条件が指定された検索依頼データを受け付けるステップと、前記検索依頼データに応じて、前記検索対象のデータに含まれる前記項目の値が、前記検索依頼データに指定される前記条件を満たすか否かを判定し、前記検索対象のデータの前記項目の値が前記条件を満たす場合に、前記検索対象のデータに基づく出力情報を出力するための検索プログラムを生成するステップと、前記データ記憶部に記憶されている前記検索対象のデータを順次読み出し、前記読みだした検索対象のデータを入力として前記検索プログラムを実行するステップと、を実行させることとする。
【００１７】
その他本願が開示する課題やその解決方法については、発明の実施形態の欄及び図面により明らかにされる。
【発明の効果】
【００１８】
本発明によれば、大量のデータから検索条件に応じたデータを抽出することができる。
【図面の簡単な説明】
【００１９】
【図１】本実施形態の帳票システムの全体構成を示す図である。
【図２】ホストコンピュータ２０のハードウェア構成を示す図である。
【図３】ホストコンピュータ２０のソフトウェア構成を示す図である。
【図４】マスタファイル２３１に登録されるマスタデータの構成例を示す図である。
【図５】検索依頼データ記憶部２３２に記憶される検索依頼データの構成例を示す図である。
【図６】検索データ記憶部２３５に記憶される検索データの構成例を示す図である。
【図７】ヘッダ情報記憶部２３３に記憶されるヘッダ情報の一例を示す図である。
【図８】検索プログラムの作成処理の流れを示す図である。
【図９】検索プログラム５０の一例を示す図である。
【図１０】帳票作成部２１４による帳票の出力処理の流れを示す図である。
【図１１】出力される帳票６０の一例を示す図である。
【発明を実施するための形態】
【００２０】
以下、本発明の一実施形態に係る帳票システムについて説明する。本実施形態の帳票システムは、金融機関において、金融商品に関する取引履歴を本店のホストコンピュータ２０が集中管理し、支店や営業所の店舗端末１０から送られてくる所定の条件を指定したデータ（以下、「検索依頼データ」という。）に応じて、ホストコンピュータ２０が帳票を作成するものである。
【００２１】
本実施形態では、ホストコンピュータ２０が管理する取引履歴は、大量の処理を一括して行うバッチ処理により生成されるデータ（以下、「バッチデータ」）であることを前提とし、ホストコンピュータ２０では、大量のバッチデータがバッチ処理による処理順に、マスタファイルに蓄積されているものとする。また、マスタファイルに対しては、検索のためのインデックス等は構築されていないものとする。
【００２２】
＝＝システム構成＝＝
図１は、本実施形態に係る帳票システムの全体構成を示す図である。本実施形態の帳票システムは、店舗端末１０とホストコンピュータ２０とを含んで構成される。店舗端末１０とホストコンピュータ２０とは通信ネットワーク３０を介して互いに通信可能に接続されている。通信ネットワーク３０は、例えば、インターネットやＷＡＮ（Wide Area Network）、ＬＡＮ（Local Area Network）、ＶＡＮ（Value Added Network）なである。通信ネットワーク３０は、例えば、専用電話回線や公衆電話回線網、イーサネット（登録商標）、無線回線網などにより構築される。
【００２３】
店舗端末１０は、金融機関の支店や営業所などの店舗に設置される、例えば、パーソナルコンピュータやワークステーション、ＰＤＡ（Personal Digital Assistant）などのコンピュータである。店舗端末１０は、ホストコンピュータ２０が管理するマスタファイルから取引履歴を検索するための条件（以下、「検索条件」という。）の入力を受け付け、ホストコンピュータ２０に対して、検索条件にマッチする取引履歴に関する帳票の作成を依頼する。本実施形態では、帳票作成の依頼は、店舗端末１０が、受け付けた検索条件を指定した、帳票の出力をホストコンピュータ２０に依頼するためのデータ（以下、「検索依頼データ」という。）をホストコンピュータ２０に送信することにより行われるものとする。
【００２４】
ホストコンピュータ２０（本発明の「バッチデータ検索装置」に該当する。）は、金融機関の本店に設置され、金融商品に係る取引履歴を一元的に管理する、例えば、ワークステーションや汎用機、オフィスコンピュータ、パーソナルコンピュータなどのコンピュータである。ホストコンピュータ２０は、金融商品の取引に係るバッチ処理を行い、そのバッチ処理により生成されるデータ（バッチデータ）をマスタファイルとして管理しているものとする。本実施形態では、ホストコンピュータ２０は、店舗端末１０からの依頼を受け、バッチ処理として帳票の作成を行うものとする。
【００２５】
＝＝ハードウェア＝＝
図２は、ホストコンピュータ２０のハードウェア構成を示す図である。ホストコンピュータ２０は、ＣＰＵ２０１、メモリ２０２、記憶装置２０３、通信インタフェース２０４、入力装置２０５、出力装置２０６を備えている。記憶装置２０３は、各種のデータやプログラムを記憶する、例えば、ハードディスクドライブやフラッシュメモリ、磁気テープドライブ、光ディスクドライブなどである。ＣＰＵ２０１は、記憶装置２０３に記憶されているプログラムをメモリ２０２に読み出して実行することにより各種の機能を実現する。通信インタフェース２０４は、通信ネットワーク３０に接続するためのインタフェースであり、例えば、電話回線に接続するためのモデムやイーサネット（登録商標）に接続するためのアダプタ、無線通信器などである。入力装置２０５は、オペレータからデータの入力を受け付ける、例えば、キーボードやマウス、トラックボール、タッチパネル、マイクロフォンなどである。出力装置２０６は、データを出力する、例えば、ディスプレイやスピーカなどである。
【００２６】
＝＝ソフトウェア＝＝
図３は、ホストコンピュータ２０のソフトウェア構成を示す図である。ホストコンピュータ２０は、検索依頼データ受信部２１１、検索プログラム作成部２１２、検索プログラム実行部２１３、帳票作成部２１４、マスタファイル２３１、検索依頼データ記憶部２３２、ヘッダ情報記憶部２３３、検索プログラム記憶部２３４、検索データ記憶部２３５を備えている。
【００２７】
なお、検索依頼データ受信部２１１、検索プログラム作成部２１２、検索プログラム実行部２１３、帳票作成部２１４は、ホストコンピュータ２０が備えるＣＰＵ２０１が記憶装置２０３に記憶されているプログラムをメモリ２０２に読み出して実行することにより実現される。また、マスタファイル２３１、検索依頼データ記憶部２３２、ヘッダ情報記憶部２３３、検索プログラム記憶部２３４、検索データ記憶部２３５は、ホストコンピュータ２０が備えるメモリ２０２や記憶装置２０３が提供する記憶領域として実現される。
【００２８】
マスタファイル２３１は、金融商品の取引履歴を示すバッチデータ（以下、「マスタデータ」という。）を記憶する。図４は、マスタファイル２３１に登録されるマスタデータの構成例を示す図である。同図に示すように、マスタデータには、取引日、お客様番号、店番、口座番号、コース番号、取引内容が含まれる。もちろん、マスタデータには、これら以外の項目を含めるようにしてもよい。取引日は、金融商品の取引が行われた日付であり、お客様番号は、取引に係る顧客を特定するための情報である。店番は、取引を取り扱った店舗を特定するための情報である。口座番号は、取引において用いられた顧客の口座を特定する情報である。コース番号は、取引の対象となった金融商品を特定する情報である。取引内容は取引に関する情報である。本実施形態では、マスタファイル２３１は、ホストコンピュータ２０において動作するオペレーティングシステムが提供するファイルシステムにおけるファイルとして実現されるものとする。
【００２９】
検索依頼データ受信部２１１は、店舗端末１０から送信される検索依頼データを受信する。検索依頼データ受信部２１１は、受信した検索依頼データを検索依頼データ記憶部２３２に登録する。図５は、検索依頼データ記憶部２３２に記憶される検索依頼データの構成例を示す図である。同図に示すように、検索依頼データには、店番、口座番号、コース番号、検索開始年月日、検索終了年月日、還元店番が含まれている。店番、口座番号およびコース番号には、マスタデータの各項目に一致させるための値が含まれる。また、検索開始年月日および検索終了年月日は、マスタデータの取引日の範囲を指定するための情報である。後述するように、マスタデータのうち、マスタデータの店番、口座番号およびコース番号と、検索依頼データの店番、口座番号およびコース番号とが一致するもののうち、マスタデータの取引日が、検索依頼データの検索開始年月日から検索終了年月日までの間に含まれるものが抽出される。還元店番は、マスタデータの検索を依頼した店舗を特定する店番であり、後述するように、還元店番ごとに、マスタデータに係る帳票が出力される。
【００３０】
検索データ記憶部２３５は、検索依頼データに応じてマスタデータを検索した際に出力されるデータ（以下、「検索データ」という。本発明の「出力情報」に該当する。）を記憶する。図６は、検索データ記憶部２３５に記憶される検索データの構成例を示す図である。同図に示すように、本実施形態では、検索データは、還元店番、出力取引日、出力お客様番号、出力店番、出力口座番号、出力コース番号、出力取引内容を含む。還元店番は、検索依頼データに含まれていた還元店番であり、出力取引日、出力お客様番号、出力店番、出力口座番号、出力コース番号および出力取引内容はそれぞれ、検索依頼データにマッチするマスタデータの取引日、お客様番号、店番、口座番号、コース番号および取引内容である。本実施形態では、検索データ記憶部２３５は、ホストコンピュータ２０において動作するオペレーティングシステムが提供するファイルシステムにおけるファイルとして実現されるものとする。
【００３１】
ヘッダ情報記憶部２３３は、検索依頼データに指定された検索条件にマッチするマスタデータを抽出するためのプログラム（以下、「検索プログラム」という。）に必要な情報（以下、「ヘッダ情報」という。）を記憶する。ヘッダ情報は、マスタファイルのファイル名やマスタデータのフォーマット、出力先のファイル（本実施形態では後述する検索データ記憶部２３５である。）のファイル名、検索データのフォーマットなどの指定を行うステップを所定のプログラム言語で記述したものである。図７は、ヘッダ情報記憶部２３３に記憶されるヘッダ情報の一例を示す図である。図７の例では、マスタファイル２３１のファイル名を「ＭＡＳＴＥＲＦＩＬＥ」として、レコードの各項目について、開始位置やデータ長などの定義が記述され、また検索データ記憶部２３５のファイル名を「ＯＵＴＦＩＬＥ」として、出力用のレコードである検索データの各項目について、開始位置やデータ長などの定義が記述されている。
【００３２】
検索プログラム作成部２１２は、検索依頼データに基づいて検索プログラムを作成する。本実施形態では、検索プログラム作成部２１２は、所定のプログラム言語で検索プログラムを記述したファイル（以下、「プログラムファイル」という。）を作成し、作成したプログラムファイルを検索プログラム記憶部２３４に登録するものとする。本実施形態において、検索プログラム作成部２１２は、例えば１日に１度のバッチ処理により帳票出力を行う直前に、検索依頼データに基づいて検索プログラムを作成することを想定している。図８は、検索プログラムの作成処理の流れを示す図である。
【００３３】
検索プログラム作成部２１２は、検索プログラム記憶部２３４にプログラムファイルを新たに作成する（Ｓ４０１）。検索プログラム作成部２１２は、ヘッダ情報記憶部２３３に記憶されているヘッダ情報を読み出し（Ｓ４０２）、読み出したヘッダ情報をプログラムファイルに書き込む（Ｓ４０３）。検索プログラム作成部２１２は、検索依頼データ記憶部２３２に記憶されている各検索依頼データについて以下の処理を行う。
【００３４】
検索プログラム作成部２１２は、条件分岐を行うためのＩＦ文を示す命令を追記するように、「ＩＦ」をプログラムファイルに書き込む（Ｓ４０４）。検索プログラム作成部２１２は、マスタデータの店番、口座番号およびコース番号の各項目について、マスタデータの項目が検索依頼データに含まれる当該項目の値と一致することを示す条件をＡＮＤ条件として追記するように、「項目名＝検索依頼データの値  ＡＮＤ」としてプログラムファイルに書き込む（Ｓ４０５）。検索プログラム作成部２１２は、マスタデータの取引日が、検索依頼データの検索開始年月日以後、検索終了年月日以前であることを示す条件をＡＮＤ条件として追記するように、「取引日＞＝検索依頼データの検索開始年月日  ＡＮＤ  取引日＜＝検索依頼データの検索終了年月日」としてプログラムファイルに書き込む（Ｓ４０６）。以上により、ＩＦ文の条件文がプログラムファイルに記述される。
【００３５】
次に、検索プログラム作成部２１２は、検索データの還元店番に、検索依頼データの還元店番を設定するように、「還元店番＝検索依頼データの還元店番」としてプログラムファイルに書き込む（Ｓ４０７）。検索プログラム作成部２１２は、マスタデータの取引日、お客様番号、店番、口座番号、コース番号および取引内容の各項目について、検索データの項目に、マスタデータの項目を設定するように、「検索データの項目名＝マスタデータの項目名」としてプログラムファイルに書き込む（Ｓ４０８）。
【００３６】
検索プログラム作成部２１２は、検索データを検索データ記憶部２３５に登録するように、「ＰＵＴ  ＯＵＴＦＩＬＥ」をプログラムファイルに書込み（Ｓ４０９）、ＩＦ文のブロックの終端を示す、「ＥＮＤＩＦ」をプログラムファイルに書き込む（Ｓ４１０）。
【００３７】
以上の処理を各検索依頼データについて繰り返すことにより、検索プログラムが検索プログラム作成部２１２に作成される。
【００３８】
図９は、上記処理により検索プログラム２１２により作成される検索プログラム５０の一例を示す図である。同図に示すように、検索プログラム５０は、ヘッダ部５１とロジック部分５２とを含む。ヘッダ部５１は、ヘッダ情報記憶部２３３に記憶されているヘッダ情報である。ロジック部５２は、マスタファイル２３１からマスタデータを抽出するためのステップを記述したものであり、検索依頼データに依存する。ロジック部５２は、１つ以上のＩＦ文５３を含む。ＩＦ文５３の条件式５３１には、マスタデータに含まれる項目のうち、店番、口座番号およびコース番号のそれぞれについて、検索依頼データに指定されている値と一致することがＡＮＤ条件として接続されて記述され、また、取引日が検索依頼データに指定される検索開始年月日以後であることと、取引日が検索依頼データに指定される検索終了年月日以前であることともＡＮＤ条件として接続されて記述される。ＩＦ文５３の条件式５３１が真と評価された場合に実行されるステートメント（以下、「真文」という。）５３２には、検索データの還元店番に、検索依頼データに設定されていた還元店番の値を設定するステップと、他の検索データの項目に、対応するマスタデータの項目の値を設定するステップと、検索データを検索データ記憶部２３５に書き出すステップとが記述される。
【００３９】
検索プログラム実行部２１３は、検索プログラム記憶部２３４に記憶されている検索プログラムを起動する。なお、検索プログラムは、ホストコンピュータ２０が備えるＣＰＵ２０１によって実行されることになる。検索プログラム実行部２１３は、例えば、検索プログラム記憶部２３４に記憶されている、所定のプログラム言語で記述された検索プログラムをＣＰＵ２０１が実行可能なオブジェクトコードに変換（コンパイル）し、コンパイルしたオブジェクトコードが実行されるように、ホストコンピュータ２０が実行しているオペレーティングシステムに指示を与えることにより、検索プログラムを実行することができる。また、検索プログラム実行部２１３は、所定のプログラム言語で記述された検索プログラムを読み込みながら記述に応じた処理を実行していく、いわゆるインタプリタとして実現するようにしてもよい。検索プログラムが実行されることにより、検索依頼データに応じたマスタデータが検索されて、検索データ記憶部２３５に登録される。検索プログラム実行部２１３は、例えば、オペレータからの指示に応じて検索プログラムを実行するようにしてもよいし、所定の時間（例えば、半日、１日、３日、１週間など）ごとの定期的に検索プログラムを実行するようにしてもよい。
【００４０】
帳票作成部２１４は、検索データ記憶部２３５に記憶されている検索データに基づいて帳票を作成する。図１０は、帳票作成部２１４による帳票６０の出力処理の流れを示す図であり、図１１は、出力される帳票６０の一例を示す図である。なお、帳票作成部２１４は、一般的な方法により帳票を作成するようにしてもよい。
【００４１】
帳票作成部２１４は、検索依頼データ記憶部２３２に記憶されている検索依頼データのそれぞれについて、以下の処理を行う。すなわち、帳票作成部２１４は、まず新規の帳票出力の開始処理を行う（Ｓ５２１）。帳票出力の開始処理としては、例えば、プリンタに帳票６０を出力する場合にプリンタに対して初期設定値を含む印刷開始命令を送信する処理や、電子データとして帳票を作成する場合に電子データを格納するためのファイルを作成し、ヘッダの書込む処理などを行うことができる。もちろん、開始処理が不要な場合には、ステップＳ５２１を省略してもよい。
【００４２】
帳票作成部２１４は、検索依頼データに指定された検索条件を出力する。すなわち、帳票作成部２１４は、検索依頼データの各項目を出力する（Ｓ５２２）。図１１の例では、帳票６０のヘッダ部分６１に検索依頼データに含まれる還元店番、店番、口座番号、コース番号、検索開始年月日および検索終了年月日が出力されている。
【００４３】
次に、帳票作成部２１４は、検索データ記憶部２３５に記憶されている検索データのそれぞれについて、検索データの還元店番と、検索依頼データの還元店番とが一致する場合（Ｓ５２３：ＹＥＳ）、当該検索データの各項目を出力する（Ｓ５２４）。図１１の例では、検索データのリスト６２に、還元店番の一致する検索データの各項目が出力されている。なお、検索データを所定の形式に整形してから出力するようにしてもよい。
【００４４】
帳票作成部２１４は、全ての検索データについて上記処理を行った後、帳票出力の終了処理を行う（Ｓ５２５）。帳票出力の終了処理としては、例えば、プリンタに帳票を出力する場合における余白部分の紙送りをプリンタに命令する処理や、電子データとして帳票を作成する場合におけるデータのトレーラの書込みなどを行うことができる。もちろん、終了処理が不要な場合にはステップＳ５２５の処理を省略してもよい。  
以上の処理を各検索依頼データについて行うことにより、還元店番ごとの帳票を作成することができる。
【００４５】
以上説明したように、本実施形態の帳票システムによれば、検索条件が指定された検索依頼データに基づいて、マスタデータが検索条件にマッチするか否かを判定し、マッチするマスタデータを出力するための検索プログラムを生成することができる。したがって、検索プログラムを実行することにより、マスタファイル２３１からマスタデータを順次読みだし、読みだしたマスタデータが検索条件にマッチするか否かを判定するようにすることができる。よって、大量のマスタデータから必要なものを容易に抽出することが可能となる。
【００４６】
また、本実施形態の帳票システムによれば、マスタデータを順次読み出していき、１度読みだしたマスタデータについては、読み出す度に、各検索依頼データの検索条件にマッチするか否かを判定していくことができる。したがって、例えば、リレーショナルデータベース管理システムなどのオンライン処理のように、検索依頼データごとにマスタデータの検索を行うとすると、各検索依頼データについて、検索条件にマッチするマスタデータを抽出すべく、マスタデータの全てにアクセスする必要があるところ、本実施形態の帳票システムでは、全てのマスタデータに１度アクセスすれば必要なデータを抽出することが可能である。一方、バッチ処理において、検索依頼データとマスタデータとをマッチングさせる場合には、一般に、検索依頼データとマスタデータとをともにソートしておき、マッチングを行う必要があるところ、本実施形態の帳票システムでは、マスタデータや検索依頼データをソートする必要がないので、ソート処理に係る処理負荷を低減するとともに、大量のマスタデータをソートする際に必要な作業領域を省略することもできる。よって、効率的にマスタデータを検索することができる。
【００４７】
また、本実施形態の帳票システムによれば、マスタデータが検索条件にマッチするか否かを、プログラム内における判断処理として予め記述しておくことができる。したがって、検索時に、検索依頼データから検索条件を抽出する処理を行う必要がないので、効率的な検索を行うことができる。
【００４８】
また、本実施形態の帳票システムによれば、検索依頼データには、マスタデータの店番、口座番号およびコース番号に一致する値を設定し、取引日の範囲を示す検索開始年月日および検索終了年月日を設定するのみで、検索条件を指定することができる。したがって、店舗の従業員は複雑な条件式を入力する必要はなく、上記各項目についての値を入力するだけでよいので、条件式の指定を容易に行うことが可能となる。
【００４９】
また、本実施形態の帳票システムによれば、マスタデータが複数の検索依頼データの検索条件にマッチする場合、検索依頼データの数に合わせて複数の検索データを出力するようにすることができる。したがって、店舗から依頼されたマスタデータを漏れなく抽出することが可能となる。またこれにより、検索依頼データに指定されている各項目の値がマスタデータの項目の値に一致することはＡＮＤ条件により接続されているが、同一の還元店番を設定した複数の検索依頼データを用意することで、いずれかの検索依頼データの検索条件を満たすマスタデータについて検索データが出力されるようにすることができる。つまり、ＯＲ条件による検索をも可能としている。
【００５０】
なお、本実施形態の帳票システムでは、ホストコンピュータ２０は、通信ネットワーク３０を介して店舗端末１０と通信可能に接続されているものとしたが、ホストコンピュータ２０は独立して設置されていてもよい。この場合、ホストコンピュータ２０の検索依頼データ受信部２１１は、例えば、オペレータからキーボードを介して入力を受け付けてもよいし、紙媒体に記載された検索条件をＯＣＲ（Optical Character Reader）などにより読み取るようにしてもよい。
【００５１】
また、本実施形態では、ホストコンピュータ２０がマスタファイル２３１を管理しているものとしたが、ホストコンピュータ２０とは異なるコンピュータがマスタファイル２３１を管理し、ホストコンピュータ２０がマスタファイル２３１を管理するコンピュータにリクエストを送信してマスタデータを順次取得するようにしてもよい。
【００５２】
また、本実施形態では、ヘッダ情報記憶部２３３にヘッダ情報が記憶されているものとしたが、これに限らず、検索プログラム作成部２１２が所定のヘッダ情報をプログラムファイルに書き出すようにしてもよい。
【００５３】
また、検索プログラム作成部２１２は、店舗ごとに異なる形式の検索データを出力するような検索プログラムを作成するようにしてもよい。この場合、検索プログラム作成部２１２は、検索依頼データに含まれる還元店番に応じて、形式の異なる検索データを作成して検索データ記憶部２３５に出力するように、ＩＦ文の真文を記述するようにする。またこの場合には、店番に対応付けて、出力用のヘッダ情報と、マスタデータに基づいて検索データを作成する真文とを予めヘッダ情報記憶部２３３などに格納しておき、検索プログラム作成部２１２は、検索依頼データに含まれる還元店番に対応するヘッダ情報および真文をヘッダ情報記憶部２３３から読み出してプログラムファイルに書き出すようにすることができる。
【００５４】
また、検索プログラム作成部２１２は、検索依頼データ記憶部２３２に記憶されている検索依頼データに基づいて検索プログラムを作成して検索プログラム記憶部２３４に登録した場合に、検索依頼データ記憶部２３２から、使用した検索依頼データを削除するようにしてもよい。この場合、検索プログラム作成部は、検索依頼データに含まれる還元店番を重複なくメモリ２０２や記憶装置２０３に記憶しておき、帳票作成部２１４は、記憶しておいた還元店番ごとに、対応する検索データを検索データ記憶部２３５から読み出して帳票を作成するようにすることができる。また、検索プログラム実行部２１３は、検索プログラム記憶部２３４に記憶されている検索プログラムを実行し、マスタデータの検索処理が終わった後、実行した検索プログラムを検索プログラム記憶部２３４から削除するようにしてもよい。
【００５５】
また、検索プログラムは、本実施形態とは異なるコンピュータ言語で記述するようにしてもよい。すなわち、検索プログラム作成部２１２は、他のコンピュータ言語によって、各検索依頼データについて、還元店番、検索開始年月日および検索終了年月日以外の全項目の値が、マスタデータの項目の値と一致し、かつ、マスタデータの取引日が検索開始年月日から検索終了年月日までに含まれていることを条件式とするＩＦ文を記述するとともに、条件式が真と評価された場合に、還元店番とマスタデータの各項目の値とを検索データ記憶部２３５に出力する命令文を記述するようにすればよい。
【００５６】
また、本実施形態では、検索条件にマッチするマスタデータは、還元店番を付与するのみでそのまま検索データとして検索データ記憶部２３５に出力するものとしたが、これに限らず、マスタデータを変換したり、マスタデータに基づく演算を行ったりした結果を検索データに設定するようにしてもよい。また、還元店番ごとに、異なるファイル（例えば、還元店番をファイル名として作成するファイル）として検索データを作成し、帳票作成部２１４が、各ファイルについて帳票を出力するようにしてもよい。また、検索データに検索依頼データを付帯させて記録するようにしてもよい。
【００５７】
また、本実施形態では、検索依頼データには、マスタデータの値と一致させる店番、口座番号およびコース番号と、マスタデータの取引日の範囲を設定するための検索開始年月日および検索終了年月日とが含まれるものとしたが、これに限らず、お客様番号や取引内容などと一致させるための値を設定してもよい。この場合、検索プログラム作成部２１２は、図８の処理のステップＳ４０５を、検索依頼データに含まれている、検索開始年月日、検索終了年月日および還元店番以外の各項目について行うようにしてもよい。また、検索依頼データに含まれる各項目は省略することもできる。また、取引日についても、検索依頼データに取引日を設定し、マスタデータの取引日と一致させるようにしてもよい。
【００５８】
また、本実施形態では、取引日についてのみ範囲を指定するものとしたが、その他の項目についても範囲を指定するようにしてもよい。この場合、例えば、検索依頼データは、項目についての条件を示す情報（以下、「条件情報」という。）を１つ以上含み、条件情報は、項目名、範囲指定フラグ、第１値および第２値を含むようにすることができる。範囲指定フラグが真である場合、項目名が示すマスタデータの項目の値が、第１値から第２値までの間であることを条件とし、範囲指定フラグが偽である場合、条件情報には第２値が省略され、項目名が示すマスタデータの項目の値が第１値に一致することを条件とする。なお、この場合、取引日についても、検索開始年月日および検索終了年月日に代えて、項目名を「取引日」とし、範囲指定フラグを真として、第１値に検索開始年月日を指定し、第２値に検索終了年月日を指定するようにする。検索プログラム作成部２１２は、図８の処理のステップＳ４０５〜Ｓ４０６において、検索依頼データに含まれる各条件情報について、範囲指定フラグが真であれば、項目名が第１値以上であり、かつ、項目名が第２値以下である旨を示す、例えば「項目名＞＝第１値  ＡＮＤ  項目名＜＝第２値」との条件式をプログラムファイルに書き出し、範囲指定フラグが偽であれば、項目名が第１値に一致することを示す、例えば「項目名＝第１値」との条件式をプログラムファイルに書き出すようにする。また、検索プログラム作成部２１２は、最後の条件情報以外の条件情報については、「ＡＮＤ」をさらに書き出すようにする。このようにして、検索依頼データには項目の範囲を指定するようにすることもできる。
【００５９】
また、本実施形態では、検索データはまとめて検索データ記憶部２３５に登録するものとしたが、検索依頼データごとに、検索データを格納するファイルを作成し、作成したファイルに検索データを書き出すようにすることもできる。この場合、ヘッダ情報記憶部２３３には、マスタファイル２３１についてのファイル名やデータ型などのフォーマットに係る定義を含む第１ヘッダ情報と、検索データのフォーマットについての定義を含む第２ヘッダ情報とを記憶しておき、検索プログラム作成部２１２は、第１ヘッダ情報をプログラムファイルに書き込んだ後、検索依頼データごとに出力するファイル名を作成し、決定した出力するファイル名を出力先とするような定義とともに第２ヘッダ情報をプログラムファイルに書き込むとともに、真文５３２において、各検索依頼データに対応するファイルに検索データを書き出す命令を、プログラムファイルに書き込むようにすることができる。
【００６０】
以上、本実施形態について説明したが、上記実施形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【符号の説明】
【００６１】
１０    店舗端末
２０    ホストコンピュータ
３０    通信ネットワーク
２０１  ＣＰＵ
２０２  メモリ
２０３  記億装置
２０４  通信インタフェース
２０５  入力装置
２０６  出力装置
２１１  検索依頼データ受信部
２１２  検索プログラム作成部
２１３  検索プログラム実行部
２１４  帳票作成部
２３１  マスタファイル
２３２  検索依頼データ記憶部
２３３  ヘッダ情報記憶部
２３４  検索プログラム記憶部
２３５  検索データ記憶部
【図１】
2010211768.tif 000003
【図２】
2010211768.tif 000004
【図３】
2010211768.tif 000005
【図４】
2010211768.tif 000006
【図５】
2010211768.tif 000007
【図６】
2010211768.tif 000008
【図７】
2010211768.tif 000009
【図８】
2010211768.tif 000010
【図９】
2010211768.tif 000011
【図１０】
2010211768.tif 000012
【図１１】
2010211768.tif 000013