"商品を購入した顧客に対してポイントを付与するサーバ装置を備えるポイントラリーシステムであって、前記サーバ装置は、前記顧客と、前記商品の産地と、前記商品の数量と、前記商品の単価とを相互に対応づけて記憶した第1のデータベースと、前記商品の所定の産地と、前記商品の購入金額に対して乗じられる還元率とを相互に対応づけて記憶した第2のデータベースと、を備える記憶部と、前記第1のデータベースの個々のレコードについて、前記商品の産地が前記所定の産地と一致するか否かを判別し、一致する場合は、前記数量と前記単価を乗じて前記購入金額を算出し、前記算出した購入金額に前記還元率を乗じてポイントを算出し、前記算出したポイントを前記顧客に対応づけて前記記憶部に記憶する制御部と、を有することを特徴とするポイントラリーシステム。前記記憶部は、前記第1のデータベースに、前記商品が購入された店舗および日付をさらに相互に対応づけて記憶しており、前記第2のデータベースに、前記商品が購入される店舗、前記商品が購入される日付および前記購入金額の閾値をさらに対応づけて記憶しており、前記制御部は、前記商品が購入される所定の店舗、前記商品が購入される所定の期間および前記購入金額の閾値の入力を受け付け、前記第2のデータベースに記憶するキャンペーン登録部を有することを特徴とする、請求項1に記載のポイントラリーシステム。前記制御部は、さらに、前記第1のデータベースの個々のレコードについて、前記店舗が前記所定の店舗と一致するか否かを判別し、一致する場合は、前記前記日付が前記所定の期間に含まれるレコードについて前記ポイントを算出することを特徴とする、請求項2に記載のポイントラリーシステム。前記記憶部は、前記第2のデータベースに、前記数量が前記所定の産地以外の商品を含む商品の数量に占める割合の大小関係に基づく順に対応するポイントを、さらに対応づけて記憶しており、前記制御部は、前記割合の大小関係に基づく順に対応するポイントを、前記顧客に対応づけて前記記憶部に記憶することを特徴とする、請求項3に記載のポイントラリーシステム。前記記憶部は、前記第2のデータベースに、前記購入金額の閾値をさらに対応づけて記憶しており、前記制御部は、前記購入金額と前記閾値との大小関係に基づいて、前記割合の大小関係に基づく順に対応するポイントを記憶するか否かを判別することを特徴とする、請求項4に記載のポイントラリーシステム。前記記憶部は、前記顧客と、前記数量と、前記購入金額と、前記割合と、前記割合の大小関係に基づく順とを相互に対応づけて記憶した第3のデータベースを備える、ことを特徴とする、請求項5に記載のポイントラリーシステム。しかしながら、非特許文献1においては、産地や生産者の把握が可能となり、食の安全安心向上に対しては一定の効果が得られるものと考えられる一方で、地産地消に取り組む購入者に対して割引やポイント付与など、経済的なインセンティブを与えることはできない技術構成となっている。また、特許文献1においては、購入した商品の産地情報の判定に基づくポイント付与やランキングによるポイント付与などの機能は実装されておらず、地産地消の支援を目的としたソフトウェアハードウェア構成を有する本システムとは技術構成が著しく異なる。そこで、本発明は、あらかじめ指定した地域で生産された農作物や水産物、畜産物等、指定した生鮮食品の購入者に対して、ボーナスポイントを付与するシステムを提供することを課題とする。本発明によるポイントラリーシステムは、商品を購入した顧客に対してポイントを付与するサーバ装置を備えるポイントラリーシステムであって、前記サーバ装置は、前記顧客と、前記商品の産地と、前記商品の数量と、前記商品の単価とを相互に対応づけて記憶した第1のデータベースと、前記商品の所定の産地と、前記商品の購入金額に対して乗じられる還元率とを相互に対応づけて記憶した第2のデータベースと、を備える記憶部と、前記第1のデータベースの個々のレコードについて、前記商品の産地が前記所定の産地と一致するか否かを判別し、一致する場合は、前記数量と前記単価を乗じて前記購入金額を算出し、前記算出した購入金額に前記還元率を乗じてポイントを算出し、前記算出したポイントを前記顧客に対応づけて前記記憶部に記憶する制御部と、を有することを特徴とする。本発明によれば、あらかじめ指定した地域で生産された農作物や水産物、畜産物等、指定した生鮮食品の購入者に対して、ボーナスポイントを付与するシステムを提供することが可能になる。以降、本発明を実施するための形態本実施形態というを、図などを参照しながら詳細に説明する。また、本実施形態を説明するための全図において、同一部には原則として同一の符号を付し、その繰り返しの説明は省略する。全体構成図1Aは、本実施形態の概略を説明する図である。本実施形態のポイントラリーシステム100は、サーバ設置エリア201、本社エリア202および店舗エリア203に分かれて実装される。なお、これらのエリアは1つのエリアに集約してもよいし、2つ以上のエリアに分けてもよい。そして、これらのエリアはネットワーク200を介して接続可能である。ここでエリアとは、所定の目的および/または単位で区切られた領域のことをいう。所定の目的とは、例えば、サーバを設置する目的、統括的な業務を行う目的、商品を並べて売る目的などである。所定の単位とは、例えば、建物、フロア階、部屋などである。なお、これらの目的および単位の組み合わせは問わない。ネットワーク200は、各コンピュータを接続する有線または無線の通信網である。サーバ設置エリア201は、アプリケーションサーバ210およびデータベースサーバ220を含んで構成される。アプリケーションサーバ210は、ポイントラリーシステム100を提供するサーバ装置である。アプリケーションサーバ210は、CPUCentralProcessingUnit211、メモリ212、記憶装置213、出力装置217および入力装置218を含んで構成される。CPU211は、メモリ212に記憶されたプログラムを実行することによって各種処理を行う。メモリ212は、CPU211が実行するプログラムを一時的に記憶する。記憶装置213は、CPU211が実行するプログラムを記憶する。出力装置217は、例えばディスプレイであり、アプリケーションサーバ210の操作画面を表示する。入力装置218は、例えばキーボードやマウスであり、アプリケーションサーバ210の操作者からの指示を受け付ける。データベースサーバ220は、各種データベースの運用管理を行うサーバ装置である。データベースサーバ220は、CPU221、メモリ222、記憶装置223、出力装置237および入力装置238を含んで構成される。CPU221は、メモリ222に記憶されたプログラムを実行することによって各種処理を行う。メモリ222は、CPU221が実行するプログラムを一時的に記憶する。記憶装置223は、CPU221が使用するデータを記憶する。出力装置237は、例えばディスプレイであり、データベースサーバ220の操作画面を表示する。入力装置238は、例えばキーボードやマウスであり、データベースサーバ220の操作者からの指示を受け付ける。本社エリア202は、運用管理端末240を含んで構成される詳細後記。店舗エリア203は、店舗1エリア250、店舗2エリア260および店舗Nエリア270に分かれる詳細後記。アプリケーションサーバ図1Bは、アプリケーションサーバ210の構成を説明する図である。アプリケーションサーバ210は、前記のとおり、CPU211、メモリ212、記憶装置213、出力装置217および入力装置218を含んで構成される。記憶装置213は、図1Bに示すように、キャンペーン登録部214、ボーナスポイント算出部215およびランキング集計ランキングボーナスポイント計上部216を含んで構成される。キャンペーン登録部214は、後記する本社エリア202に設置される運用管理端末240のキャンペーン登録画面1500から入力された情報を、後記する各種データベース図1C参照へ記録する。ボーナスポイント算出部215は、各種データベースに記録された情報を基にボーナスポイントを算出して、算出したボーナスポイントを後記するボーナスポイント履歴DB232図1C参照へ記憶する。ランキング集計ランキングボーナスポイント計上部216は、後記する各種データベース図1C参照に記録された情報を基にランキングを特定し、特定したランキングに対応するランキングポイントを付与し、その結果を所定のデータベースへ記憶する。これらの具体的な機能等は、後記する処理説明において詳細に説明する。データベースサーバ図1Cは、データベースサーバ220の構成を説明する図である。データベースサーバ220は、前記のとおり、CPU221、メモリ222、記憶装置223、出力装置237および入力装置238を含んで構成される。記憶装置223は、データベースDB、database224を含んで構成される。データベース224は、店舗マスタDB225、キャンペーン登録DB226、キャンペーン対象店舗DB227、キャンペーンランキングDB228、キャンペーン商品分類DB229、売上明細DB230、商品マスタDB231、ボーナスポイント履歴DB232、購入数購入金額集計ワークDB233、ランキング集計ワークDB234、ランキング集計結果DB235およびランキング最終集計結果DB236を含んで構成される。店舗マスタDB225には、店舗の情報が記憶されている。店舗マスタDB225は、図2に示すように、店舗コード301、店舗名302、都道府県303、市区町村304および住所305を含んで構成される。店舗マスタDB225には、店舗コード301に対応づけて、他の情報が記憶されている。店舗コード301は、店舗を一意に特定する識別子である。店舗名302は、店舗の名称である。都道府県303は、店舗の所在地の都道府県の名称である。市区町村304は、店舗の所在地の市区町村の名称である。住所305は、店舗の所在地の市区町村304より後の住所である。キャンペーン登録DB226には、キャンペーンの情報が記憶されている。キャンペーン登録DB226は、図3に示すように、キャンペーンIDidentifier401、キャンペーン名402、都道府県403、開始日404、終了日405、還元率406および最低購入金額407を含んで構成される。キャンペーン登録DB226には、キャンペーンID401に対応づけて、他の情報が記憶されている。キャンペーンID401は、キャンペーンを一意に特定する識別子である。キャンペーン名402は、キャンペーンの名称である。都道府県403は、キャンペーンの対象となる商品が生産された地域産地の都道府県の名称である。開始日404は、キャンペーンが開始する日付である。終了日405は、キャンペーンが終了する日付である。還元率406は、顧客の購入金額に対して、ポイントを還元する割合である。図3の例では、百分率で表されている。最低購入金額407は、キャンペーンの対象となる購入金額の、最低基準となる金額である。キャンペーン対象店舗DB227には、キャンペーンを行う店舗とキャンペーンの情報が記憶されている。キャンペーン対象店舗DB227は、図4に示すように、店舗コード501およびキャンペーンID502を含んで構成される。キャンペーン対象店舗DB227には、店舗コード501に対応づけて、キャンペーンID502が記憶されている。店舗コード501は、店舗を一意に特定する識別子である。キャンペーンID502は、キャンペーンを一意に特定する識別子である。キャンペーンランキングDB228には、キャンペーンのランキングに関する情報が記憶されている。キャンペーンランキングDB228は、図5に示すように、キャンペーンID601、ランキング602およびボーナスポイント603を含んで構成される。キャンペーンランキングDB228には、キャンペーンID601に対応づけて、他の情報が記憶されている。キャンペーンID601は、キャンペーンを一意に特定する識別子である。ランキング602は、ランキングの順位である。ランキング602には、最上位である1から始まって、下位になるにつれて23のように増加する数字が記憶されている。ボーナスポイント603は、ランキング602に応じて付与されるボーナスポイントである。ボーナスポイント603には、一般的に、上位のランキングが高く、下位になるにつれて低いポイントが記憶されている。キャンペーン商品分類DB229には、キャンペーンの対象となる商品の分類が記憶されている。キャンペーン商品分類DB229は、図6に示すように、キャンペーンID701、JICFSJanItemCodeFileService大中分類702およびJICFS小分類703を含んで構成される。キャンペーン商品分類DB229には、キャンペーンID701に対応づけて、他の情報が記憶されている。キャンペーンID701は、キャンペーンを一意に特定する識別子である。JICFS大中分類702は、JANJapaneseArticleNumberコードとこれに付随する商品情報を一元的に管理するデータベースサービスであるJICFSにおいて、大分類コードおよび中分類コードで特定される区分の名称である。JICFS小分類703は、JICFSにおいて、JICFS大中分類702の大分類コードおよび中分類コードで特定された区分に加え、更に小分類コードで特定される区分の名称である。以降、商品分類と記載した場合は、断りのない限り、JICFS小分類を指すものとする。売上明細DB230には、店舗における商品の売上に関する情報が記憶されている。売上明細DB230は、図7Aに示すように、売上明細コード801、売上コード802、購入店舗コード803、顧客ID804、商品コード805、購入日時806および数量807を含んで構成される。売上明細DB230には、売上明細コード801に対応づけて、他の情報が記憶されている。売上明細コード801は、売上を構成する詳細情報売上明細を一意に特定する識別子である。売上明細DB230のレコード1件が、売上明細に相当する。売上コード802は、売上を一意に特定する識別子である。購入店舗コード803は、商品を購入した店舗を一意に特定する識別子である。顧客ID804は、顧客を一意に特定する識別子である。商品コード805は、商品を一意に特定する識別子である図8にて後記。購入日時806は、商品を購入した日時年月日時分秒である。数量807は、商品の購入数量である。ここで、ある顧客がスーパーマーケットで買い物をした場合を例示して、図7Aを説明する。店舗コード購入店舗コード803がA100000001の店舗において、顧客ID804が20000001の顧客が買い物をした。この顧客は、1回の会計につき、3種類の商品を購入した。その際のレシートには、レシート番号としてA30000001が記載されていた。このレシート番号が、売上明細DB230における売上コード802に相当する。また、このレシートには、購入した商品の商品名、数量および価格が記載されていた。1行目にはなす愛知県産250円×2個と、2行目にはかぼちゃ300円×1個と、3行目にはバナナ200円×1個と記載されていた。このレシートの1行が、売上明細DB230のレコード1件に相当する。商品マスタDB231には、商品に関する情報が記憶されている。商品マスタDB231は、図8に示すように、商品コード901、商品名902、JICFS大中分類903、JICFS小分類904、原産国905、都道府県906および税込価格907を含んで構成される。商品マスタDB231には、商品コード901に対応づけて、他の情報が記憶されている。商品コード901は、商品を一意に特定する識別子である。商品名902は、商品の名称である。JICFS大中分類903は、JANコードとこれに付随する商品情報を一元的に管理するデータベースサービスであるJICFSにおいて、大分類コードおよび中分類コードで特定される区分の名称である。JICFS小分類904は、JICFSにおいて、JICFS大中分類903の大分類コードおよび中分類コードで特定された区分に加え、更に小分類コードで特定される区分の名称である。原産国905は、商品の産地の国名である。都道府県906は、商品の産地の都道府県名である。なお、産地は都道府県単位に限らず、例えば、市町村単位としてもよい。税込価格907は、商品の1個当たりの消費税を含んだ値段である。なお、当該項目は消費税を含まない値段としてもよい。ボーナスポイント履歴DB232には、ボーナスポイントを付与した履歴が記憶されている。ボーナスポイント履歴DB232は、図9に示すように、売上明細コード1001、顧客ID1002、商品コード1003およびボーナスポイント1004を含んで構成される。ボーナスポイント履歴DB232には、売上明細コード1001に対応づけて、他の情報が記憶されている。売上明細コード1001は、ボーナスポイント付与の対象となった売上明細を一意に特定する識別子である。顧客ID1002は、ボーナスポイント付与の対象となった顧客を一意に特定する識別子である。商品コード1003は、ボーナスポイント付与の対象となった商品を一意に特定する識別子である。ボーナスポイント1004は、付与したボーナスポイント数である。購入数購入金額集計ワークDB233には、顧客が購入したキャンペーン対象の商品の数および金額が記憶されている。購入数購入金額集計ワークDB233は、図10に示すように、キャンペーンID1101、顧客ID1102、合計購入数1103および購入金額計1104を含んで構成される。購入数購入金額集計ワークDB233には、キャンペーンID1101および顧客ID1102に対応づけて、他の情報が記憶されている。キャンペーンID1101は、ランキングを特定する対象のキャンペーンを一意に特定する識別子である。顧客ID1102は、ランキングを特定する対象となる顧客を一意に特定する識別子である。合計購入数1103は、ランキングを特定する対象となる商品の購入数の合計である。購入金額計1104は、ランキングを特定する対象となる商品の購入金額の合計である。ランキング集計ワークDB234には、ランキングを特定するために必要な情報が記憶されている。ランキング集計ワークDB234は、図11に示すように、キャンペーンID1201、顧客ID1202、集計日時1203、都道府県1204、購入数1205および購入割合1206を含んで構成される。ランキング集計ワークDB234には、キャンペーンID1201、顧客ID1202および都道府県1204に対応づけて、他の情報が記憶されている。キャンペーンID1201は、ランキングを特定する対象となるキャンペーンを一意に特定する識別子である。顧客ID1202は、ランキングを特定する対象となる顧客を一意に特定する識別子である。集計日時1203は、ランキングを特定するために売上明細DB230を集計した日時である。都道府県1204は、ランキングを特定する対象となる商品の産地の都道府県名である。購入数1205は、ランキングを特定する対象となる商品の購入数である。購入割合1206は、ランキングを特定する対象となる商品の購入金額の、全体の購入金額に対する割合百分率である。ランキング集計結果DB235には、ランキングを特定した結果が記憶されている。ランキング集計結果DB235は、図12に示すように、キャンペーンID1301、顧客ID1302、購入割合1303、ランキング1304、集計日時1305および資格判定1306を含んで構成されている。キャンペーンID1301は、ランキングを特定する対象となるキャンペーンを一意に特定する識別子である。顧客ID1302は、ランキングを特定する対象となる顧客を一意に特定する識別子である。購入割合1303は、ランキングを特定する対象となる商品を購入した金額の、全体の購入金額に対する割合百分率である。ランキング1304は、ランキングの順位である。図12aは、ランキングを特定する前の状態であり、ランキング1304は空欄となっている。図12bは、ランキングを特定した後の状態であり、ランキング1304には順位が記憶されている。集計日時1305は、ランキングを特定するために売上明細DB230を集計した日時である。資格判定1306は、ランキングを特定する対象となる資格の有無である。資格判定1306には、ランキングを特定する対象となる場合は1が、対象とならない場合は0が記憶される。ランキング最終集計結果DB236には、ランキングを特定した結果が記憶されている。ランキング最終集計結果DB236は、図13に示すように、キャンペーンID1401、顧客ID1402、購入割合1403、ランキング1404、集計日時1405および資格判定1406を含んで構成される。ランキング最終集計結果DB236には、キャンペーンID1401および顧客ID1402に対応づけて、他の情報が記憶されている。キャンペーンID1401は、ランキングを特定した対象となるキャンペーンを一意に特定する識別子である。顧客ID1402は、ランキングを特定した対象となる顧客を一意に特定する識別子である。購入割合1403は、ランキングを特定した対象となる商品を購入した金額の、全体の購入金額に対する割合百分率である。ランキング1404は、ランキングの順位である。集計日時1405は、ランキングを特定した日時である。資格判定1406は、ランキングを特定する対象となる資格ランキング特定資格の有無である。資格判定1406には、ランキングを特定する対象となる場合は1が、対象とならない場合は0が記憶される。本社エリア本社エリア202は、前記のとおり、運用管理端末240を含んで構成される。運用管理端末240は、ポイントラリーシステム100を運用管理する管理者が操作する装置である。運用管理端末240は、図1Dに示すように、CPU241、メモリ242、記憶装置243、出力装置245および入力装置246を含んで構成される。CPU241は、メモリ242に記憶されたプログラムを実行することによって各種処理を行う。メモリ242は、CPU241が実行するプログラムを一時的に記憶する。記憶装置243は、CPU241が実行するプログラムを記憶する。記憶装置243は、WEBブラウザ装置244を含んで構成される。WEBブラウザ装置244は、ポイントラリーシステム100の運用管理画面を表示する装置である。当該運用管理画面には、後記するキャンペーン登録画面1500図14参照がある。出力装置245は、例えばディスプレイであり、アプリケーションサーバ210の操作画面を表示する。入力装置246は、例えばキーボードやマウスであり、アプリケーションサーバ210の操作者からの指示を受け付ける。店舗エリア店舗エリア203は、前記のとおり、店舗1エリア250、店舗2エリア260および店舗Nエリア270に分かれる。店舗1エリア250は、図1Eに示すように、POSPointofsalesystemレジスタ251、POSレジスタ252およびPOSレジスタ25Nを含んで構成される。POSレジスタ251、POSレジスタ252およびPOSレジスタ25Nは、商品の販売時に取引を記録する装置である。店舗2エリア260および店舗Nエリア270も、店舗1エリア250と同様の構成である。なお、これらは例示であり、店舗エリアの数およびPOSレジスタの数は図1Eに示すものに限定されない。キャンペーン登録画面次に、キャンペーンの詳細情報を登録する画面について説明する。図14は、キャンペーン登録画面1500の一例を説明する図である。キャンペーン登録は、管理者が本社エリア202の運用管理端末240を操作し、キャンペーン登録画面1500を介してキャンペーンの詳細情報を入力し、各種DBに登録することで実現される。図14を参照して、キャンペーン登録画面1500の構成等について説明する。キャンペーンID1501には、キャンペーンIDが入力される。当該キャンペーンIDは、キャンペーン登録DB226、キャンペーン対象店舗DB227、キャンペーンランキングDB228およびキャンペーン商品分類DB229の同名の項目に対応する。キャンペーン名1502には、キャンペーンの名称が入力される。当該キャンペーン名称は、キャンペーン登録DB226のキャンペーン名402に対応する。キャンペーン開始日1503には、キャンペーンを開始する日付が入力される。当該キャンペーン開始日は、キャンペーン登録DB226の開始日404に対応する。キャンペーン終了日1504には、キャンペーンを終了する日付が入力される。当該キャンペーン終了日は、キャンペーン登録DB226の終了日405に対応する。店舗一覧ボタン1505が押下されると、店舗一覧1508に店舗名が表示される。当該店舗名は、キャンペーン登録部214が店舗マスタDB225から取得した値である。都道府県リストボックス1506から任意の都道府県が選択され、都道府県絞込実行ボタン1507が押下されると、店舗一覧1508に都道府県リストボックス1506で指定した都道府県の店舗名が表示される。店舗一覧1508に表示された店舗名から任意の店舗名が選択され、店舗追加ボタン1509が押下されると、当該選択された店舗名が選択店舗1510に表示される。商品分類選択ボタン1511は、生鮮食品全て指定する商品分類選択ボタン1511aと生鮮食品を任意に選択する商品分類選択ボタン1511bのいずれか一方が選択される。商品分類選択ボタン1511bが選択されると、商品分類選択チェックボックス1512が選択可能となる。商品分類選択ボタン1511および商品分類選択チェックボックス1512で選択された商品分類が、キャンペーン商品分類DB229のJICFS小分類703に対応する。産地リストボックス1513には、商品の産地の都道府県が選択される。当該都道府県が、キャンペーン登録DB226の都道府県403に対応する。還元率1514には、購入金額に対してポイントを還元する割合百分率が入力される。当該還元率は、キャンペーン登録DB226の還元率406に対応する。ランキングボーナスポイント1515には、ランキングの順位によって付与するポイント数が入力される。当該ポイントは、キャンペーンランキングDB228のボーナスポイント603に対応する。また、1位のランキングボーナスポイント1515aを入力した場合は、キャンペーンランキングDB228のランキング602に1が設定される。ランキングボーナスポイント1515d,eのようにポイントを入力しなかった場合は、図5に示すように、対応する順位のレコードがキャンペーンランキングDB228に作成されない。順位追加ボタン1516が押下されると、キャンペーン登録画面1500に現在表示されているランキングの順位よりも下位の順位のポイントを入力するランキングボーナスポイント1515が表示される。図14に示す例では、5位までのポイントが入力できるが、順位追加ボタン1516が押下されると、ランキングボーナスポイント1515eの下に、6位のポイントを入力できるランキングボーナスポイント1515が表示される。順位追加ボタン1516が押下される毎に、7位、8位と、下位の順位のランキングボーナスポイント1515が表示される。最低購入金額1517には、キャンペーンの対象となる購入金額の、最低基準となる金額が入力される。当該金額は、キャンペーン登録DB226の最低購入金額407に対応する。登録ボタン1518が押下されると、キャンペーン登録画面1500に入力した値が、各種DBの対応する項目へ記憶される。キャンペーン登録処理次に、キャンペーン登録処理について、各図を参照して説明する。図15は、キャンペーン登録処理のフローチャートである。ステップS1501において、キャンペーン登録部214は、店舗一覧ボタン1505または都道府県絞込実行ボタン1507のイベントを検知する。当該イベントは、キャンペーン登録画面1500図14参照に表示される各ボタンを、管理者が押下することにより発生する。そして、ステップS1502に進む。ステップS1502において、キャンペーン登録部214は、店舗マスタDB225を検索し、店舗名302を取得する。ステップS1501において店舗一覧ボタン1505のイベントを検知した場合、キャンペーン登録部214は、店舗マスタDB225の店舗名302を全件取得する。ステップS1501において都道府県絞込実行ボタン1507のイベントを検知した場合、キャンペーン登録部214は、都道府県リストボックス1506で選択された都道府県名をキーとして店舗マスタDB225を検索し、都道府県名が一致するレコードに記憶された店舗名302を取得する。そして、ステップS1503に進む。ステップS1503において、キャンペーン登録部214は、ステップS1502において取得した店舗マスタDB225の店舗名302を、キャンペーン登録画面1500の店舗一覧1508に表示する。ステップS1501において店舗一覧ボタン1505のイベントを検知した場合、キャンペーン登録部214は、店舗マスタDB225の店舗名302を全件表示する。ステップS1501において都道府県絞込実行ボタン1507のイベントを検知した場合、キャンペーン登録部214は、ステップS1502において検索して取得した店舗名を表示する。なお、この際、表示した店舗名に対応する店舗コード301をメモリ212に記憶しておくことで、後記するステップS1506のキャンペーン期間重複チェックの処理負荷を軽減することができる。そして、ステップS1504に進む。ステップS1504において、キャンペーン登録部214は、登録ボタン1518のイベントを検知する。当該イベントは、キャンペーン登録画面1500に表示される登録ボタン1518を、管理者が押下することにより発生する。そして、ステップS1505に進む。ステップS1505において、キャンペーン登録部214は、キャンペーンIDの重複チェックを行う。キャンペーン登録部214は、キャンペーンID1501に入力されたキャンペーンIDをキーとして、キャンペーン登録DB226を検索する。キャンペーンIDが一致するレコードが既にキャンペーン登録DB226に存在する場合は、キャンペーンIDが重複するとして、エラーを出力する。そして、ステップS1506に進む。ステップS1506において、キャンペーン登録部214は、キャンペーン期間の重複チェックを行う。キャンペーン登録部214は、キャンペーン開始日1503およびキャンペーン終了日1504で特定される期間内に、選択店舗1510で選択された店舗が他のキャンペーンを行っていないかチェックを行う。具体的には、キャンペーン登録部214は、ステップS1503においてメモリ212に記憶した店舗コード301をキーに、キャンペーン対象店舗DB227を検索する。店舗コードが一致するレコードが存在した場合、当該レコードに記憶されたキャンペーンID502をキーとして、キャンペーン登録DB226を検索する。キャンペーンIDが一致するレコードに記憶された開始日404および終了日405で特定される期間が、キャンペーン開始日1503およびキャンペーン終了日1504で特定された期間と重複する場合、キャンペーン登録部214はエラーを出力する。なお、メモリ212に店舗コード301が記憶されていない場合は、選択店舗1510に表示された店舗名をキーに店舗マスタDB225を検索して、店舗名が一致するレコードに記憶された店舗コード301を取得する。そして、ステップS1507に進む。ステップS1507において、キャンペーン登録部214は、キャンペーン登録画面1500に入力された値入力値を、キャンペーン登録DB226、キャンペーン対象店舗DB227、キャンペーンランキングDB228およびキャンペーン商品分類DB229のそれぞれ対応する項目へ記憶する。なお、入力値の基本的なエラーチェックは、WEBブラウザ装置244で行うことができる。基本的なエラーとは、例えば、1キャンペーンID1501、キャンペーン名1502および選択店舗1510が必須入力指定項目であるにもかかわらず当該項目が未入力未指定であった場合、2キャンペーン開始日1503がキャンペーン終了日1504よりも未来の日付であった場合である。基本的なエラーチェックは、ステップS1504においてキャンペーン登録部214が登録ボタン1518のイベントを検知する前に行うのが好ましい。例えば、当該チェックでエラーが検出されなかった場合にのみ、キャンペーン登録部214へ登録ボタン1518のイベントを通知するようにする。各DBにアクセスする前に基本的なエラーチェックすることにより、処理の負荷を軽減することができる。そして、キャンペーン登録部214は、処理を終了する。ボーナスポイント算出処理次に、ボーナスポイント算出処理について説明する。ボーナスポイント算出処理は、各店舗における売上がキャンペーン対象であるか否かを判定し、ボーナスポイントを算出する処理である。ボーナスポイント算出処理は、各店舗において会計の際にPOSレジスタから入力された売上の情報が、新規レコードとして売上明細DB230に記憶されることを契機に行われる。図16は、ボーナスポイント算出処理のフローチャートである。ステップS1601において、ボーナスポイント算出部215は、売上明細DB230に新規レコードが記憶されたことを検知し、当該レコードを取得する。そして、ステップS1602に進む。ステップS1602において、ボーナスポイント算出部215は、ステップS1601において取得した売上明細DB230のレコードに記憶された購入店舗コード803をキーとして、キャンペーン対象店舗DB227を検索し、店舗コードが一致するレコードに記憶されたキャンペーンID502を取得する。ステップS1603において、ボーナスポイント算出部215は、ステップS1602において取得した件数取得件数が0件であるか否かを判定する。ステップS1602において取得件数が0件であるということは、当該店舗においてキャンペーン情報が登録されていないということである。換言すれば、当該店舗はキャンペーン対象外である、キャンペーンが実施されていないということである。取得件数が0件である場合ステップS1603Yes、処理を終了する。取得件数が0件でない場合ステップS1603No、ステップS1604に進む。ステップS1604において、ボーナスポイント算出部215は、ステップS1602において取得したキャンペーンIDをキーとして、キャンペーン登録DB226を検索し、キャンペーンIDが一致するレコードに記憶された開始日404および終了日405を取得する。そして、ステップS1605に進む。ステップS1605において、ボーナスポイント算出部215は、ステップS1601において取得した売上明細DB230のレコードが、キャンペーン期間内の売上であるか否かを判定する。当該判定は、売上明細DB230の購入日時806の年月日以下、購入日と称す、ステップS1604において取得したキャンペーン登録DB226の開始日404および終了日405を比較することにより行われる。具体的には、開始日≦購入日≦終了日であるか否かを判定する。キャンペーン期間内である場合ステップS1605Yes、ステップS1606に進む。キャンペーン期間外である場合ステップS1605No、処理を終了する。ステップS1606において、ボーナスポイント算出部215は、ステップS1601において取得した売上明細DB230の商品コード805をキーとして、商品マスタDB231を検索し、商品コードが一致するレコードに記憶されたJICFS小分類904を取得する。そして、ステップS1607に進む。ステップS1607において、ボーナスポイント算出部215は、ステップS1602において取得したキャンペーンIDおよびステップS1606において取得したJICFS小分類をキーとして、キャンペーン商品分類DB229を検索する。そして、ステップS1608に進む。ステップS1608において、ボーナスポイント算出部215は、ステップS1607において検索した結果検索結果が0件であるか否かを判定する。ステップS1607において検索結果が0件であるということは、当該店舗で行われているキャンペーンにおいて、当該商品の商品分類JICFS小分類は、キャンペーン対象外であるということである。検索結果が0件である場合ステップS1608Yes、処理を終了する。検索結果が0件でない場合ステップS1608No、ステップS1609に進む。ステップS1609において、ボーナスポイント算出部215は、ステップS1601において取得した売上明細DB230の商品コード805をキーとして、商品マスタDB231を検索し、商品コードが一致するレコードに記憶された都道府県906および税込価格907を取得する。そして、ステップS1610に進む。ステップS1610において、ボーナスポイント算出部215は、ステップS1602において取得したキャンペーンIDをキーとして、キャンペーン登録DB226を検索し、キャンペーンIDが一致するレコードに記憶された都道府県403および還元率406を取得する。そして、ステップS1611に進む。ステップS1611において、ボーナスポイント算出部215は、ステップS1609において取得した都道府県906とステップ1610において取得した都道府県403とが一致するか否かを判定する。両者が一致する場合ステップS1611Yes、ステップS1612に進む。両者が一致しない場合ステップS1611No、処理を終了する。ステップS1612において、ボーナスポイント算出部215は、ボーナスポイントを算出する。ボーナスポイントは、ステップS1601において取得した売上明細DB230のレコードの数量807、ステップS1609において取得した商品マスタDB231の税込価格907およびステップS1610において取得したキャンペーン登録DB226の還元率406を基に算出される。なお、当該還元率406は図3に示すように百分率でキャンペーン登録DB226に記憶されているので、ボーナスポイントを算出する際は、還元率406を100で除算した値を用いる。ボーナスポイントは、下式1で算出される。ボーナスポイント=税込価格×数量×還元率1そして、ステップS1613に進む。ステップS1613において、ボーナスポイント算出部215は、ステップS1601において取得した売上明細DB230のレコードの売上明細コード801、顧客ID804および商品コード805ならびにステップS1612において算出したボーナスポイントを、ボーナスポイント履歴DB232の同名項目へ記憶する。そして、処理を終了する。ランキング集計処理次に、ランキング集計処理について説明する。ランキング集計処理は、顧客毎の購入金額を集計して、ランキングを特定する処理である。ランキング集計処理は、売上情報全件の集計処理を行うため、夜間日次バッチプログラムで行われることが好ましい。図17は、ランキング集計処理のフローチャートである。ステップS1701において、ランキング集計ランキングボーナスポイント計上部216は、購入数購入金額集計ワークDB233およびランキング集計ワークDB234をクリアする。これらのDBはランキング集計処理用の作業領域であり、前回のランキング集計処理のデータが残っている。そのため、当該ステップで初期化をする。そして、ステップS1702に進む。ステップS1702において、ランキング集計ランキングボーナスポイント計上部216は、アプリケーションサーバ210のシステム日付を取得する。そして、ステップS1703に進む。ステップS1703において、ランキング集計ランキングボーナスポイント計上部216は、キャンペーン登録DB226から、キャンペーン期間中のレコードを検索し、取得する。具体的には、ステップS1702において取得したシステム日付ならびにキャンペーン登録DB226の開始日404および終了日405を比較し、下式2を満たすレコードを取得する。なお、取得したレコードをキャンペーン情報一覧と称す。開始日≦システム日付≦終了日2そして、ステップS1704に進む。ステップS1704において、ランキング集計ランキングボーナスポイント計上部216は、ステップS1703において取得した件数取得件数が0件であるか否かを判定する。取得件数が0件であるということは、処理時において実施されているキャンペーンがないということである。取得件数が0件である場合ステップS1704Yes、処理を終了する。取得件数が0件でない場合ステップS1704No、ステップS1705に進む。ステップS1705において、ランキング集計ランキングボーナスポイント計上部216は、キャンペーン対象店舗DB227から、キャンペーン対象の店舗のレコードを検索し、取得する。具体的には、ランキング集計ランキングボーナスポイント計上部216は、ステップS1703において取得したレコードのキャンペーンID401をキーとして、キャンペーン対象店舗DB227を検索し、キャンペーンIDが一致するレコードを取得する。なお、取得したレコードをキャンペーン対象店舗一覧と称す。そして、ステップS1706に進む。ステップS1706において、ランキング集計ランキングボーナスポイント計上部216は、キャンペーン商品分類DB229を検索し、キャンペーン対象の商品分類JICFS小分類703のレコードを検索し、取得する。具体的には、ランキング集計ランキングボーナスポイント計上部216は、ステップS1703において取得したレコードのキャンペーンID401をキーとして、キャンペーン商品分類DB229を検索し、キャンペーンIDが一致するレコードを取得する。なお、取得したレコードをJICFS小分類一覧と称す。そして、ステップS1707に進む。ステップS1707において、ランキング集計ランキングボーナスポイント計上部216は、売上明細DB230および商品マスタDB231を検索し、キャンペーン対象のデータを取得し、編集する。具体的には、ランキング集計ランキングボーナスポイント計上部216は、第1に、キャンペーン対象のデータを取得する。キャンペーン対象のデータとは、下記条件を全て満たす売上明細DB230のレコードである。条件1キャンペーン対象の店舗における売上である。具体的には、購入店舗コード803が、ステップS1705において取得したキャンペーン対象店舗一覧に含まれる。条件2キャンペーン期間内の売上である。具体的には、購入日時806の年月日購入日ならびにステップS1703において取得したレコードの開始日404および終了日405が、下式を満たす。開始日≦購入日≦終了日3条件3購入商品が、キャンペーン対象のキャンペーン対象の商品分類JICFS小分類である。具体的には、まず、ランキング集計ランキングボーナスポイント計上部216は、商品コード805をキーとして商品マスタDB231を検索し、商品コードが一致するレコードに記憶されたJICFS小分類904を取得する。次に、ランキング集計ランキングボーナスポイント計上部216は、商品マスタDB231から取得したJICFS小分類904をキーとして、ステップS1706において取得したJICFS小分類一覧を検索する。JICFS小分類が一致するレコードが存在すれば、当該売上明細DB230のレコードは、キャンペーン対象の商品分類の売上データである。第2に、ランキング集計ランキングボーナスポイント計上部216は、第1の処理で取得したデータの商品コード805をキーとして、商品マスタDB231を検索し、都道府県906および税込価格907を取得する。第3に、ランキング集計ランキングボーナスポイント計上部216は、第1の処理で取得したデータに、第2の処理で取得した都道府県906および税込価格907を結合した編集データを作成する。第4に、ランキング集計ランキングボーナスポイント計上部216は、第3の処理で作成した編集データを顧客ID804、都道府県906の順にソートする。図7Bは、ステップS1707において作成した編集データの一例を説明する図である。そして、ステップS1708に進む。ステップS1708において、ランキング集計ランキングボーナスポイント計上部216は、顧客毎に、合計購入数および購入金額計を算出し、算出結果を購入数購入金額集計ワークDB233図10参照へ記憶する。具体的には、ランキング集計ランキングボーナスポイント計上部216は、ステップS1707において作成した編集データを基に、顧客ID804がブレークするまで、下式により合計購入数および購入金額計を算出する。なお、合計購入数および購入金額計の初期値は0を設定する。この処理を、全顧客分繰り返す。合計購入数=合計購入数数量4購入金額計=購入金額計税込価格×数量5そして、ステップS1709に進む。ステップS1709において、ランキング集計ランキングボーナスポイント計上部216は、顧客毎の都道府県産地別購入数および都道府県産地別購入割合を算出し、算出結果をランキング集計ワークDB234図11参照へ記憶する。具体的には、ランキング集計ランキングボーナスポイント計上部216は、第1に、ステップS1707において作成した編集データおよびステップS1708において算出した合計購入数を基に、都道府県906がブレークするまで、下式により都道府県別購入数および都道府県別購入割合を算出する。なお、都道府県別購入数および都道府県別購入割合の初期値は0を設定する。また、都道府県別購入割合は、小数点第二位で四捨五入する。都道府県別購入数=都道府県別購入数数量6都道府県別購入割合=都道府県別購入数÷合計購入数×1007なお、ランキング集計ワークDB234のキャンペーンID1201には、ステップS1703において取得したレコードのキャンペーンID401が設定される。顧客ID1202には、ステップS1707において作成した編集データの同名項目の値が設定される。集計日時1203には、ステップS1702において取得したシステム日付が設定される。都道府県1204には、ステップS1707において作成した編集データの同名項目の値が設定される。購入数1205には、上式により算出した都道府県別購入数が設定される。購入割合1206には、上式により算出した都道府県別購入割合が設定される。そして、ステップS1710に進む。ステップS1710において、ランキング集計ランキングボーナスポイント計上部216は、顧客IDおよびキャンペーンIDをキーとして、購入数購入金額集計ワークDB233およびランキング集計ワークDB234を結合する。なお、結合したデータをランキング集計ワークDB一覧と称す。ステップS1711において、ランキング集計ランキングボーナスポイント計上部216は、ステップS1703において取得したキャンペーン情報一覧およびステップS1710において作成したランキング集計ワークDB一覧を基に、資格判定処理を行い、処理結果をランキング集計結果DB235へ記憶する。なお、当該ステップは、都道府県1204がステップS1703において取得した都道府県403と一致しないレコードについては、キャンペーン対象外であるため、処理を行わずに読み飛ばす。具体的には、ランキング集計ランキングボーナスポイント計上部216は、キャンペーンID1201、顧客ID1202および購入割合1206をランキング集計結果DB235の同名項目へ記録する。なお、集計日時1305には、システム日付を設定してもよい。資格判定1306には、資格判定処理によって1資格有または0資格無のいずれかが特定され、設定される。図12aは、資格判定処理後のランキング集計結果DB235の一例を説明する図である。資格判定処理は、ランキング集計ワークDB一覧の購入金額計1104およびステップS1703において取得したキャンペーン情報一覧の最低購入金額407を比較することにより行われる。まず、ランキング集計ランキングボーナスポイント計上部216は、ランキング集計ワークDB一覧ランキング集計結果DBのキャンペーンID1201キーとしてキャンペーン情報一覧キャンペーン登録DBを検索し、キャンペーンIDが一致するレコードに記憶された最低購入金額407を取得する。次に、ランキング集計ランキングボーナスポイント計上部216は、購入金額計1104および取得した最低購入金額407を比較した結果に基づき、資格判定1306を特定する。最低購入金額≦購入金額計の場合は、資格判定1306は1と特定される。一方、最低購入金額≦購入金額計でない場合は、資格判定1306は0と特定される。そして、ステップS1712に進む。ステップS1712において、ランキング集計ランキングボーナスポイント計上部216は、ランキングを特定し、ランキング集計結果DB235へ記憶する。図12bは、ランキング特定後のランキング集計結果DB235の一例を説明する図である。具体的には、ランキング集計ランキングボーナスポイント計上部216は、第1に、キャンペーンIDおよび顧客IDをキーとして、ランキング集計結果DB235および購入数購入金額集計ワークDB233を結合する。なお、結合したデータをランキング集計結果DB一覧と称す。ランキング集計ランキングボーナスポイント計上部216は、第2に、第1の処理で結合したデータを、購入割合1206、購入金額計1104の順序でソートし、ランキングを特定する。当該順序でソートすることで、各項目の値が大きいデータが上位のランキングとなる。更に、同一の購入割合のデータが存在する場合は、購入金額計が大きいデータを上位のランキングとすることができる。ランキングの特定は、ランキング対象資格判定1306が1のレコードをカウントすることにより行われる。具体的には、ランキング集計ランキングボーナスポイント計上部216は、資格判定1306が1である場合、ランキング1304をインクリメントした値ランキング=ランキング1を設定する。資格判定1306が0の場合、ランキング1304に-を設定する。なお、ここで特定するランキングはキャンペーン期間中の暫定的なものである。ランキング集計処理において暫定的なランキングを特定し、キャンペーン終了時の最終的なランキングは後記するランキングボーナスポイント計上処理において特定する。そして、ステップS1713に進む。ステップS1713において、ランキング集計ランキングボーナスポイント計上部216は、後記するランキングボーナスポイント計上処理を行う。そして、処理を終了する。ランキングボーナスポイント計上処理次に、ランキングボーナスポイント計上処理について説明する。ランキングボーナスポイント計上処理は、キャンペーン終了時の最終的なランキングを特定し、ランキングに応じたポイントを付与する処理である。ランキングボーナスポイント計上処理は、図17のステップS1713において、ランキング集計結果DB235に新規レコードが記憶されることを契機に行われる。図18は、ランキングボーナスポイント計上処理のフローチャートである。ステップS1801において、ランキング集計ランキングボーナスポイント計上部216は、ランキング集計結果DB235に新規レコードが記憶されたことを検知し、当該レコードを取得する。そして、ステップS1802に進む。ステップS1802において、ランキング集計ランキングボーナスポイント計上部216は、ステップS1801において取得したデータの集計日時1305の年月日集計日と、ステップS1703図17参照において取得したレコードの終了日405とを比較し、集計日が終了日405と等しいか否かを判定する。集計日が終了日405と等しい場合ステップS1802Yes、ステップS1803に進む。集計日が終了日405と等しくない場合ステップS1802No、処理を終了する。ステップS1803において、ランキング集計ランキングボーナスポイント計上部216は、ステップS1801において取得したデータを、ランキング最終集計結果DB236へ記録する。そして、ステップS1804に進む。ステップS1804において、ランキング集計ランキングボーナスポイント計上部216は、ステップS1801において取得したデータのキャンペーンID1301をキーとしてキャンペーンランキングDB228を検索し、キャンペーンIDが一致するレコードを取得する。なお、取得したレコードをキャンペーンランキング一覧と称す。そして、ステップS1805に進む。ステップS1805において、ランキング集計ランキングボーナスポイント計上部216は、キャンペーンIDおよびランキングをキーとして、ランキング最終集計結果DB236およびキャンペーンランキング一覧を結合する。なお、結合したデータをランキング最終集計結果DB一覧と称す。そして、ステップS1806に進む。ステップS1806において、ランキング集計ランキングボーナスポイント計上部216は、ステップS1805において取得したランキング最終集計結果DB一覧を、ボーナスポイント履歴DB232に記録する。ボーナスポイント算出処理で記録したデータ図16のステップS1613と区別をするため、例えば、売上明細コード1001の1桁目がBである一意の連番にしたり、商品コード1003の先頭の2桁にランキングポイントを識別できる文字列としてRPを付与し、どのキャンペーンで付与したボーナスポイントか、識別できる文字列としてキャンペーンIDを付けてRPA00001としたりする。そのように管理することで、過去のキャンペーンで付与したランキングボーナスポイントの履歴を残すことが可能となる。そして、処理を終了する。まとめ本実施形態によれば、あらかじめ指定した地域で生産された農作物や水産物、畜産物等、指定した生鮮食品の購入者に対して、ボーナスポイントを付与するシステムを提供することが可能になる。本実施形態のポイントラリーシステム100は、例えば、スーパーマーケットなど、生鮮食品を販売する小売店への導入が可能である。本実施形態のポイントラリーシステム100は、購入金額に対して一律にポイントを還元するのではなく、指定された産地の生鮮食品の購入金額に対してポイントを還元することで、顧客に対し地産地消の取り組みへの経済的インセンティブを与え、地産地消の促進が期待できる。また、指定された産地の生鮮食品の購入割合に基づいてランキングを特定することにより、顧客間の競争意識を刺激し、地産地消の促進がより期待できる。さらに、最低購入金額を設定することにより、例えば指定された産地の生鮮食品を1つ購入して購入割合が100となる顧客をランキングの対象外とする。そして、最低購入金額以上を購入した顧客をランキングの対象とすることで、ボーナスポイントを公平に付与することができる。その他なお、前記した実施形態は、本発明を実施するための好適なものであるが、その実施形式はこれらに限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々変更することが可能である。"