(57)【要約】【課題】期日が近いことを顧客に通知する際、従来の電子メールでは確実性に欠けていた。【解決手段】ｗｅｂベースの情報提供サービスにて、ｗｅｂブラウザにカレンダーを表示し、期日を明示する。期日を示すボタンをクリックすることで、期日の内容の詳細を表示すると共に、顧客が当該情報を閲覧したことを記録するフラグを設定する。また、当該フラグの設定と共に、顧客が表示した画面を擬似キャプチャプログラムにて保存する。顧客管理画面では所定期間内に当該期日に関する情報の閲覧が行われていない顧客を一覧表示する。【選択図】図２
2008158980.tif 000002
【特許請求の範囲】
【請求項１】
複数の登録ユーザを重複のないユーザＩＤにて管理するユーザテーブルと、
前記ユーザＩＤと、期日を監視するレコードであるか否かを示す種別フィールドと、所定の手続きにて記録される期日フィールドと、閲覧未了或は完了を示す閲覧未了フラグフィールドを備えるログ記録テーブルと、
クライアントのアクセスに対し、前記ユーザテーブルを用いてユーザ認証を行った後、前記ログ記録テーブルに基づいて前記種別フィールドが期日を監視するレコードであれば当該レコードの前記期日フィールドに相当する日に所定の表示を行うカレンダー表示画面を作成するコンテンツ送信部と
を備えることを特徴とする情報提供装置。
【請求項２】
前記所定の表示は操作子であり、
前記操作子を操作することにより起動され、前記カレンダー表示画面上に前記操作子に関する前記ログ記録テーブルのレコードの内容を表示する期日情報表示部と
を更に備えることを特徴とする請求項１記載の情報提供装置。
【請求項３】
前記操作子を操作することにより起動され、前記操作子に関する前記ログ記録テーブルの当該レコードの前記閲覧未了フラグフィールドを閲覧済みを示す値に変更するログ記録テーブル更新部と
を更に備えることを特徴とする請求項２記載の情報提供装置。
【請求項４】
前記操作子を操作することにより起動され、前記コンテンツ送信部にて作成される前記クライアントに表示される表示画面のデータを保存するスクリーンキャプチャ部と
を更に備えることを特徴とする請求項２記載の情報提供装置。
【請求項５】
前記ログ記録テーブルにおいて、前記種別フィールドが期日を監視するレコードであることを示し、且つ、前記期日フィールドに記されている期日から所定期間内に至っており、且つ、閲覧未了フラグフィールドが閲覧未了を示しているレコードを列挙表示する管理画面を作成する管理画面送信部と
を更に備えることを特徴とする、請求項１記載の情報提供装置。
【請求項６】
登録ユーザを識別するステップと、
前記登録ユーザの情報と、期日を監視する情報であるか否かを示す種別情報と、所定の手続きにて記録される期日情報と、閲覧未了或は完了を示す情報をログ記録テーブルに保存するステップと、
前記ログ記録テーブルに記録されている情報に基づいて、クライアントに前記期日情報を示す所定の表示を含むカレンダー画面を表示する文書を送信するステップと
よりなることを特徴とする情報提供方法。
【請求項７】
前記所定の表示は操作子であり、
前記操作子を操作することに呼応して、前記カレンダー画面上に前記操作子に関する前記ログ記録テーブルの情報の内容を表示するステップと
を更に含むことを特徴とする請求項６記載の情報提供方法。
【請求項８】
前記操作子を操作することに呼応して、前記操作子に関する前記ログ記録テーブルの当該レコードの前記閲覧未了或は完了を示す情報を閲覧済みを示す値に変更するステップと
を更に含むことを特徴とする請求項７記載の情報提供方法。
【請求項９】
前記操作子を操作することに呼応して、前記クライアントに表示される表示画面のデータを保存するステップと
を更に含むことを特徴とする請求項７記載の情報提供方法。
【請求項１０】
前記ログ記録テーブルにおいて、前記種別情報が期日を監視する情報であることを示し、且つ、前記期日情報に記されている期日から所定期間内に至っており、且つ、閲覧未了或は完了を示す情報が閲覧未了を示している情報を列挙表示する管理画面を作成するステップと
を更に含むことを特徴とする、請求項６記載の情報提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報提供装置及び情報提供方法に関する。
より詳細には、インターネット等を通じて提供するｗｅｂサービスに関する。
【背景技術】
【０００２】
近年のインターネットの普及により、証券取引業界において、株等の商品の売買をｗｅｂブラウザを通じて行う、電子商取引システムが登場している。
なお、特許文献１にコンテンツ配信に関する先行技術文献を記す。
【特許文献１】特開２００６−１２００５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の電子商取引では、例えば、信用取引（顧客が証券会社に委託保証金もしくはその代用の証券を担保として預け、証券会社から株券あるいはお金を借りて、株式の売り買いをする取り引きのこと。）における決済（反対売買若しくは証券の受渡によって、信用取引を弁済すること）の期日が迫っているときに、顧客が忘れることのないように何らかの手段で通知するサービス（以下「アラートサービス」と略す）を行っている。
具体的には、当該期日が迫っていることを、電子メールで顧客に通知する。
ところが、周知のように電子メールはインターネットの性質上、またＳＭＴＰ（simple mail transfer protocol）の仕組み上、確実に顧客に送達される保証がない。また、電子メールは受信者が能動的に閲覧をしなければならない。このとき、サービス提供者（メール送信者）は、メール受信者が当該メールを閲覧したことを確実に知る術はない。
したがって、従来の電子メールベースのアラートサービスは、顧客に情報を伝えるという命題において、確実性に欠けている。
【０００４】
本発明はかかる点に鑑みてなされたものであり、ユーザに対して確実に期日が近いことを告げる、確実なアラートサービスを実現する情報提供装置及び情報提供方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するための本発明は、複数の登録ユーザに情報閲覧サービスの提供を行う情報提供装置である。
この情報提供装置は、登録ユーザを重複のないユーザＩＤにて管理するユーザテーブルと、
ユーザＩＤ、期日を監視するレコードであるか否かを示す種別フィールド、所定の手続きにて記録される期日フィールド、閲覧未了或は完了を示す閲覧未了フラグフィールドを備えるログ記録テーブルを備える。
更に、クライアントのアクセスに対し、ユーザテーブルを用いてユーザ認証を行った後、ログ記録テーブルに基づいて種別フィールドが期日を監視するレコードであれば当該レコードの期日フィールドに相当する日に所定の表示を行うカレンダー表示画面を作成するコンテンツ送信部を備えることを特徴とするものである。
【０００６】
従来、スケジューラというものが周知である。スケジューラは予定を記入するものである。このスケジューラに期日を記録して表示することにより、ユーザに当該期日が近いことを明示することができる。
更に、その期日の内容をユーザ自身の手で表示させ、その動作をフラグで管理することにより、必要な情報の提供を行った事実を明確に記録することができる。
更に、当該期日の内容を閲覧したか否かをフラグで管理しているので、ユーザに情報が伝わっているか否かが明確に判るので、フォローアップのためのサービスも必要なユーザにのみ確実に行うことができる。
【発明の効果】
【０００７】
本発明により、期日管理サービスを的確に行う、ユーザ及び情報提供者にとって利便性の高い情報提供装置及び情報提供方法を提供することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態を、図１〜図１９を参照して説明する。
【０００９】
[概略]
本発明の実施形態を詳述する前に、本実施形態の概略を説明する。
本実施形態は、クライアント・サーバシステムである。
本実施形態の中心は、ｗｅｂサーバよりなる。
ｗｅｂサーバは、複数の登録ユーザのスケジュールや日記等の、登録ユーザに強く依存する情報と、登録ユーザが興味を持ち、継続して提供を受ける情報提供サービスから得られる情報を、日々記録し、ユーザの要求に応じて送信する。
ｗｅｂサーバは、登録ユーザのそれら情報をログ記録する。
登録ユーザはそのログをカレンダーの形式にて一覧表示する。
【００１０】
情報提供サービスから得られる情報の一例としては、ニュース、天気予報、株式情報、就職・転職・人材派遣・アルバイト情報、音楽・テレビ・映画・演劇等の趣味的情報等、様々な情報提供サービスが挙げられる。
ｗｅｂサーバは、情報提供サービス業者との契約に応じて、カレンダー内のコンテンツ表示形態を変更する。
なお、本実施形態において「コンテンツ」とは情報を指す。本実施形態においては、天気予報や音楽のヒットチャート、イベント情報等、コンテンツ提供者によって有償或は無償にて提供される情報も含まれる。コンテンツとは、電子文書の中身ともいえる。
【００１１】
特に、本実施形態では証券会社における、株等の商品を売買するサービスを例示する。
本実施形態のｗｅｂサービスは、信用取引（顧客が証券会社に委託保証金もしくはその代用の証券を担保として預け、証券会社から株券あるいはお金を借りて、株式の売り買いをする取り引きのこと。）における決済（反対売買若しくは証券の受渡によって、信用取引を弁済すること）等の期日を管理し、顧客が忘れることのないように通知するサービスに重きを置いている。
【００１２】
[全体構造]
図１は、本実施の形態の例である、電子商取引システムの概略図である。この電子商取引システム１０１は、その一機能に本発明の一実施形態である、情報提供サービスシステムを含んでいる。
本実施形態の情報提供サービスは、ｗｅｂサーバを中心とする、クライアントへ情報（コンテンツ）を提供する役務である。
証券会社「甲野証券」は、社内にｗｅｂサーバ１０２を備えている。
ｗｅｂサーバ１０２はインターネット１０３を通じて、顧客であるユーザＡ１０４、ユーザＢ１０５及びユーザＣ１０６のパソコン（クライアントＰＣ）に、電子商取引或は情報提供サービスのための画面を表示し、所定のコンテンツを提供する。
一方、ｗｅｂサーバ１０２は甲野証券の社屋内の社内ＬＡＮ１０７にも接続され、顧客担当Ｄ１０８及び顧客担当Ｅ１０９のパソコンに接続されている。
顧客担当Ｄ１０８及び顧客担当Ｅ１０９は自らのパソコンにてｗｅｂサーバ１０２にアクセスして、管理画面を表示し、担当する顧客の期日の監視を行う。顧客が抱える商品の期日が所定の期間内に至ったことを管理画面にて知ると、顧客担当者は当該顧客に電話をして、所定の手続きを促す。
【００１３】
各パソコンはｗｅｂブラウザを内包し、キーボードやマウスを介したユーザの操作によって、インターネット１０３を通じてｈｔｍｌ文書等を受信し、ディスプレイに表示する。なお、ここではｗｅｂサーバに接続するクライアントの端末がパソコンであることを想定しているが、
・インターネット１０３との接続機能を備えていること、
・後述する、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔインタプリタを備え、Ｃｏｏｋｉｅに対応している、ｗｅｂブラウザを内包していること
を満たす機器であれば、パソコンには限られない。上記の条件を満たせば、ｗｅｂブラウザを内包する携帯電話や、ブラウザ機能を持つＰＤＡ（Personal Digital Assistants：個人用の携帯情報端末。）、同じくブラウザ機能を持つ携帯用ゲーム機器等の、ｗｅｂブラウザ機能を備える通信端末であれば何でもよい。
ｗｅｂサーバ１０２は、概略的にはＨＴＴＰ（Hyper Text Transfer Protocol）を用いて、クライアントのｗｅｂブラウザの要求に応じて、クライアントにｈｔｍｌ文書を送信する、周知のｗｅｂサーバである。
【００１４】
一方、ｗｅｂサーバ１０２は図２に示すように、複数のコンテンツ提供者サーバ２２１、２２２及び２２３から有償或は無償のコンテンツの提供を受けている。（コンテンツ提供者サーバを運営するコンテンツ提供者と、ｗｅｂサーバを運営する情報提供サービス業者が同一法人或はグループ会社の場合もある。）そして、ユーザの設定に応じて、それらコンテンツをコンテンツ提供者サーバからインターネット１０３もしくは社内ＬＡＮ１０７を通じて受信し、加工した上でクライアントＰＣへｈｔｍｌ文書と共に送信する。
【００１５】
[ｗｅｂサーバ１０２]
図２はｗｅｂサーバ１０２の機能ブロック図である。
ｗｅｂサーバ１０２は、一般的なネットワークＯＳが稼動するコンピュータである。一例としては、ＦｒｅｅＢＳＤ等のＢＳＤ系、或はＬｉｎｕｘ（登録商標）等のＰＯＳＩＸ（Portable Operating System Interface for UNIX（登録商標））系ＯＳである。
実行制御部２０２は、クライアントから来る要求（コマンド）を受信し、これに応じて、ＨＴＴＰにてｈｔｍｌ文書をクライアントへ送信する機能を提供する。端的にいえばｗｅｂサーバソフトウェアであり、一例としてはＡｐａｃｈｅ(http://www.apache.org/)等である。実行制御部２０２はクライアント（図１のユーザＡ１０４〜ユーザＣ１０６、顧客担当Ｄ１０８、顧客担当Ｅ１０９のパソコン）の要求に応じ、ｃｇｉ（Common Gateway Interface）の実行をも行う。
ｃｇｉは周知のプログラムである。ｃｇｉの実体は標準出力にテキストを出力するプログラムである。ｃｇｉが生成するテキストが、実行制御部２０２によってＨＴＴＰにてクライアントへ送信される。ｃｇｉを構成する要素としては、どのようなプログラミング言語であってもよい。ｐｅｒｌ（http://www.perl.org/）やＰＨＰ（http://php.net/）、ｐｙｔｈｏｎ（http://www.python.org/）、ｒｕｂｙ（http://www.ruby-lang.org/ja/）等のインタプリタ言語に留まらず、ＣやＪａｖａ（登録商標）等のコンパイルを要する言語であってもよい。簡単な内容であればシェルスクリプトであってもよい。
なお、説明の便宜上、本実施形態中のｗｅｂサーバは、図２に示す、ｃｇｉによるｈｔｍｌ文書の生成に留まらず、ユーザ認証、各種テーブルからデータを取得する処理、生成したデータ等を記憶するストレージ等を全て含んでいるものと定義する。勿論、これらの処理は負荷分散のために別個のサーバに分散させることも可能である。
【００１６】
各々のｃｇｉは主にｗｅｂブラウザに表示する画面を作るためのｈｔｍｌ文書を作成する。つまり、ｈｔｍｌ文書はｗｅｂブラウザを通じてＧＵＩ（Graphical User Interface）を作成する手段である。実際のｗｅｂサーバ１０２では、本発明に直接関係しない画面を多数表示するので、図２ではそれらｃｇｉを点線で示している。
なお、図２ではｗｅｂブラウザに表示させる画面毎にｃｇｉが個別に設けられているが、単一のｃｇｉで構成することも可能である。但し、その場合は単一のｃｇｉの中に複数の表示画面を作成する機能が含まれることとなる。
【００１７】
ログイン画面ｈｔｍｌ文書２０３は、クライアントからの要求に応じて実行制御部２０２によって送信され、クライアントにログイン画面４０２を表示する。
認証ｃｇｉ２０４は、ログイン画面４０２を表示しているクライアントから、ログインボタンを押した行為によって発生する要求に応じて、実行制御部２０２によって実行される。
認証ｃｇｉ２０４は、実行されると、クライアントから得られたパラメータであるユーザＩＤとパスワードをユーザテーブル２０５から検索して照合する。
なお、説明の便宜上、本実施形態の説明中、画面内に表示される各種ボタンに対して、マウス等のポインティングデバイスによるクリックを、「押す」と表現する。
【００１８】
ユーザテーブル２０５には、登録ユーザの重複のないユーザＩＤが記録されている。このユーザテーブル２０５は、各登録ユーザのユーザＩＤをパスワードと共に管理するためのものである。
照合の結果、ユーザＩＤとパスワードが合致していれば、正常にログインが完了したことを示すｃｏｏｋｉｅ（クッキー：ｗｅｂサイトの提供者が、ｗｅｂブラウザを通じて訪問者のコンピュータに一時的にデータを書き込んで保存させるしくみ。殆どの場合、アルファベット及び数字の１バイト文字列にて構成される。）を作成すると共に、自動的にカレンダー画面ｃｇｉ２０６に移行するためのｈｔｍｌ文書を作成する。これらは実行制御部２０２を通じてクライアントに送信される。
一方、照合の結果、ユーザＩＤとパスワードが合致していなければ、ログインが失敗したことを示すエラーメッセージを付して、自動的にログイン画面ｈｔｍｌ文書２０３に移行するｈｔｍｌメッセージを作成する。これらは実行制御部２０２を通じてクライアントに送信される。
【００１９】
自動的にカレンダー画面ｃｇｉ２０６に移行するｈｔｍｌメッセージとは、ＨＴＴＰのステータスコードの一種である、転送機能を用いている。この転送機能のステータスコードは、ＨＴＴＰのバージョンによって異なる。
http ver.1.1の場合は「303 See Other」というステータスコードと、カレンダー画面ｃｇｉ２０６のＵＲＩ（Uniform Resource Identifier: インターネット上に存在する情報資源の場所を指し示す記述方式）を、ＨＴＴＰ応答ヘッダに記す。
http ver.1.0の場合は「302 Found」というステータスコードと、カレンダー画面ｃｇｉ２０６のＵＲＩを、ＨＴＴＰ応答ヘッダに記す。
認証ｃｇｉ２０４は、このように構成したＨＴＴＰ応答ヘッダを作成し、クライアントへ送信する。
クライアントのｗｅｂブラウザは、このＨＴＴＰ応答ヘッダを解釈し、直ちに記されているＵＲＩに基づいてカレンダー画面ｃｇｉ２０６をｗｅｂサーバ１０２に要求する。
すなわち、認証ｃｇｉ２０４はｗｅｂブラウザによって表示画面に表示されるｈｔｍｌ文書を作成しない。或は、認証ｃｇｉ２０４がｈｔｍｌ文書を作成しても、ｗｅｂブラウザの機能により、ｗｅｂブラウザがＨＴＴＰ応答ヘッダ中の転送ステータスコードを検出して転送を実行するので、当該作成されたｈｔｍｌ文書はｗｅｂブラウザには表示されない。
ログイン失敗時に自動的にログイン画面ｈｔｍｌ文書２０３に移行するｈｔｍｌメッセージも、同様である。
【００２０】
カレンダー画面ｃｇｉ２０６は、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔプログラムを実行させるタグが多数埋め込まれたｈｔｍｌ文書を作成する。
カレンダー画面ｃｇｉ２０６が作成するｈｔｍｌ文書の内容の一部を図６に示す。
図６に示されるｈｔｍｌ文書６０１は、ｈｔｍｌの文法（フォーマット）に準じてタグが記載されている。「＜ｈｔｍｌ＞」タグ６０２で始まり、「＜／ｈｔｍｌ＞」タグ６０３で終わる。
「＜ｈｔｍｌ＞」タグ６０２と「＜／ｈｔｍｌ＞」タグ６０３の中は、「＜ｈｅａｄ＞」タグ６０４から始まり「＜／ｈｅａｄ＞」タグ６０５で終わるヘッダ部分と、「＜ｂｏｄｙ＞」タグ６０６から始まり「＜／ｂｏｄｙ＞」タグ６０７で終わる本文部分で構成されている。
このうち、ヘッダ部分（図６中の「＜ｈｅａｄ＞」タグ６０４から「＜／ｈｅａｄ＞」タグ６０５まで囲まれた範囲）には、「＜ｓｃｒｉｐｔ  ・・・」にて始まり、「＜／ｓｃｒｉｐｔ＞」にて終了する「ｓｃｒｉｐｔ」タグ６０８が複数行記載されている。これらはｗｅｂサーバ１０２のＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７のＵＲＩを記している。図６においては「ｓｒｃ＝」以降にダブルクォーテーション（「”」）で囲まれた文字列が、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７のＵＲＩを示している。
【００２１】
Ｊａｖａ（登録商標）Ｓｃｒｉｐｔは、Sun Microsystems社とNetscape Communications社が開発した、ｗｅｂブラウザなどでの利用に適した、インタプリタ型のスクリプト言語（簡易プログラミング言語）である。今日の主要なｗｅｂブラウザには、このＪａｖａ（登録商標）Ｓｃｒｉｐｔインタプリタが内蔵されている。
本実施形態の場合、先ず、カレンダー画面ｃｇｉ２０６が作成した図６のｈｔｍｌ文書６０１をｗｅｂブラウザが読み込み、タグの記述を解釈していく。やがて、ヘッダ部分の「ｓｃｒｉｐｔ」タグ６０８に列挙記載されているＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７のＵＲＩをｗｅｂブラウザが解釈し、ｗｅｂサーバ１０２に対して、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７を要求する。ｗｅｂサーバ１０２はクライアントのｗｅｂブラウザの要求に応じて、図示しない不揮発性ストレージに格納されているＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７を送信する。クライアントのｗｅｂブラウザがＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７を読み込むと、ｗｅｂブラウザの内蔵インタプリタがこれを実行し、その結果、ディスプレイにカレンダーが表示される。
【００２２】
図７はｗｅｂブラウザが図６のｈｔｍｌ文書６０１を読み込み、更にＪａｖａ（登録商標）Ｓｃｒｉｐｔを実行した結果がディスプレイに表示された状態を示す。
図７中、点線で囲まれた範囲７０２が、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔの実行結果によって表示された内容である。
より詳細には、Ａｊａｘという技術を用いている。
【００２３】
Ａｊａｘ（「エイジャックス」と読む）は、Asynchronous Java（登録商標）Script + XML の略である。これは、ｗｅｂブラウザに実装されているＪａｖａ（登録商標）ＳｃｒｉｐｔのＨＴＴＰ通信機能を使って、ｗｅｂページのリロードを伴わずに、ｗｅｂサーバ１０２とＸＭＬ形式のデータのやり取りを行って処理を進めていく、対話型ｗｅｂアプリケーションの実装形態である。
従来、ｗｅｂブラウザを使ったｗｅｂアプリケーションでは、データをサーバに通知して処理結果を得るにはページ全体をロードし直さなければならず、通常のアプリケーションソフトウェアのような操作性を得ることは難しかった。Ａｊａｘでは、指定したＵＲＩからＸＭＬ文書を読み込む機能を使い、ユーザの操作や画面描画などと並行してサーバと非同期に通信を行うことで、サーバの存在を感じさせないシームレスなｗｅｂアプリケーションを実現することができる。
本実施形態では、カレンダーを表示するｈｔｍｌ文書を作成する際に、複数のコンテンツ提供サービスにアクセスする場合がある。その際、特定のコンテンツ提供サービスへのアクセスに時間が掛かると、いつまで経ってもカレンダーが表示されない、という不都合を生じる。そこで、ｈｔｍｌ文書の大枠は先に送信し、他の情報提供サイトにアクセスする必要がある箇所の情報は後から取得し、その部分だけ画面に表示すると、仮にコンテンツ取得に時間が掛かってもその他の箇所のボタン操作等は可能になるので、何も操作ができないという最悪の状態だけは免れることができる。
図７においては、表示月変更ボタン５０３及び５０４のいずれかを押すと、点線で囲まれたＡｊａｘ用表示範囲７０２だけが書き換えられる。つまり、ｗｅｂブラウザはｈｔｍｌ文書全体を読み直す（リロードする）必要がなくなるので、ＨＴＴＰのトラフィックが軽減される。そして、ｗｅｂブラウザの画面描画処理も軽くなる。したがって、ｗｅｂブラウザにおいて通常のアプリケーションソフトウェアに近い自然な操作感覚を得ることができる。
【００２４】
Ａｊａｘによるデータの受け渡しはＸＭＬ文書にて行われる。このＸＭＬ文書を作成する機能を提供するものが、Ａｊａｘ用データ送信ｃｇｉ２０８である。Ｊａｖａ（登録商標）Ｓｃｒｉｐｔによるデータ要求に呼応して、カレンダーに表示するコンテンツをＸＭＬ文書の形式にて作成する。
Ａｊａｘ用データ送信ｃｇｉ２０８には、カレンダーに表示するコンテンツとして、オブジェクトテーブル２０９、コンテンツテーブル２１０、コンテンツ配信登録テーブル２１１、コンテンツ蓄積テーブル２１２の各種テーブルが接続されている。
【００２５】
再び図２に戻って説明する。
オブジェクトテーブル２０９は本実施形態の中核をなすテーブルである。オブジェクトテーブル２０９は、ｗｅｂブラウザが提供するサービスの登録ユーザ自身が記入する様々な情報と、コンテンツ提供者サーバから得られるコンテンツを日々記録するものである。
登録ユーザ自身が記入する様々な情報とは、例えばスケジュールや、日記等の情報である。つまり、ユーザ自身の日々の生活等の記録である。
コンテンツ提供者サーバから得られるコンテンツとは、本実施形態の場合は、株価情報や取引の記録、そして各種期日等が該当する。
つまり、オブジェクトテーブル２０９は「個人情報とコンテンツを含む全てのログ」である。
【００２６】
ログ（log）とは、コンピュータの利用状況やデータ通信の記録を取ることや、その記録を指す。操作やデータの送受信が行われた日時と、行われた操作の内容や送受信されたデータの中身などが記録される。本実施形態では、このログの思想を、個人に適用するものである。つまり、日々の生活のイベントを記録し続けるのである。
この「個人のログ」に、証券会社における期日の管理機能を付加したものが、本実施形態である。
【００２７】
補助ストレージ２１３は、データ量が膨大で、オブジェクトテーブル２０９のフィールドに格納するには向かないデータを、ファイルとして格納するための不揮発性ストレージである。
データ量が膨大なデータは、具体的には例えば株価情報が該当する。株価情報は膨大な数値の羅列であるので、これをファイルにして別途保存し、オブジェクトテーブルのフィールドには当該ファイルのフルパスを含むファイル名、すなわち当該ファイルの在り処のみを記す。
補助ストレージ２１３は、物理的には他のｃｇｉやテーブル等と同様に、単一或は幾つかの固定磁気ディスク装置等にて構成されるが、論理的には、プログラムの設計にて定義した、特定のディレクトリ配下が対象となる。
【００２８】
コンテンツテーブル２１０は、ｗｅｂサーバ１０２が外部のコンテンツ提供者サーバ２２１、２２２及び２２３によって得られるサービスを列挙記載したテーブルである。つまり、コンテンツの諸元を示す情報であり、コンテンツの実体ではないことに注意されたい。本実施形態では、特に株や国債等、商品情報が列挙記載されている。
ｗｅｂサーバ１０２を運営する甲野証券は、外部のコンテンツ提供者と契約しており、その契約に基づいてコンテンツ提供者サーバ２２１、２２２及び２２３からコンテンツの提供を受けることができている。
コンテンツ配信登録テーブル２１１は、ユーザがサービスの提供を受けるコンテンツ配信サービスを列挙記載したテーブルである。つまり、ユーザＩＤと契約しているコンテンツとの関係を示すテーブルである。本実施形態では、特にユーザが購入等した商品を指し示す。これが後述する「CONTENTS_NO」フィールドであり、コンテンツテーブルの番号（「NO」）フィールドを指し示す。
コンテンツ蓄積テーブル２１２は、コンテンツ配信サービス（コンテンツ提供者サーバ２２１、２２２及び２２３）を定期的に巡回してコンテンツを取得し、蓄積するためのテーブルである。本実施形態では、複数存在する各証券取引所からの情報提供サービスから得られる株価データを定期的に収集して蓄積する。
定期巡回クライアントプログラム２１４は、コンテンツ蓄積テーブル２１２に定期的にコンテンツを追記するためのプログラムである。一例として、ＰＯＳＩＸ系ＯＳであれば、cronに登録した、非対話型ｗｅｂクライアントソフトウェア等である。
なお、上述の各テーブルのうち、オブジェクトテーブル２０９、コンテンツテーブル２１０、コンテンツ配信登録テーブル２１１のフィールドについては後述する。
【００２９】
スクリーンショットプログラム２１５は、ユーザが期日表示カレンダー表示画面４０６を表示した際に、その表示画面をｈｔｍｌ文書及び画像ファイルとして保存するためのプログラムである。このスクリーンショットを保存しておくことにより、ユーザの閲覧記録を確実に保存できる。スクリーンショットのデータは膨大になるので、これも補助ストレージ２１３に保存される。なお、スクリーンショットプログラム２１５の詳細な動作は後述する。
【００３０】
コンテンツ登録画面ｃｇｉ２１６は、ユーザの求めに応じて、コンテンツ配信登録テーブル２１１及びオブジェクトテーブル２０９にレコードの追加／変更／削除を行うｃｇｉである。図２に図示するように、コンテンツ登録画面ｃｇｉ２１６は複数存在する。
図３は、コンテンツ登録画面ｃｇｉ２１６の詳細な中身を示すブロック図である。
コンテンツ登録画面ｃｇｉ２１６を構成する各種ｃｇｉは、必要に応じて、各種テーブルに対して読み書きを行う。
【００３１】
ウォッチング銘柄登録ｃｇｉ３０２は、株購入はしないものの株価の動向を観察したい場合に、ユーザの求めに応じて表示する画面を作成するｃｇｉである。ユーザテーブル２０５とコンテンツテーブル２１０を読み込み、コンテンツ配信登録テーブル２１１を読み書きする。
株売買ｃｇｉ３０３は、株購入及び売却を行う際に、ユーザの求めに応じて表示する画面を作成するｃｇｉである。ユーザテーブル２０５とコンテンツテーブル２１０を読み込み、コンテンツ配信登録テーブル２１１を読み書きする。
ウォッチング銘柄一覧表示ｃｇｉ３０４は、ウォッチング銘柄登録ｃｇｉ３０２にて登録したウォッチング対象銘柄を、ユーザの求めに応じて一覧表示する画面を作成するｃｇｉである。ユーザテーブル２０５とコンテンツテーブル２１０を読み込み、コンテンツ配信登録テーブル２１１を読み書きする。
購入済商品一覧表示ｃｇｉ３０５は、株売買ｃｇｉ３０３にて登録した購入済み銘柄を、ユーザの求めに応じて一覧表示する画面を作成するｃｇｉである。ユーザテーブル２０５とコンテンツテーブル２１０を読み込み、コンテンツ配信登録テーブル２１１を読み書きする。
期日登録ｃｇｉ３０６は、購入済商品一覧表示ｃｇｉ３０５にて一覧表示した購入済み銘柄のうちの一つをユーザが選択し、期日の設定を行う画面を作成するｃｇｉである。ユーザテーブル２０５とコンテンツテーブル２１０とコンテンツ配信登録テーブル２１１とコンテンツ蓄積テーブル２１２を読み込み、オブジェクトテーブル２０９を読み書きする。
以上、ウォッチング銘柄登録ｃｇｉ３０２、株売買ｃｇｉ３０３、ウォッチング銘柄一覧表示ｃｇｉ３０４、購入済商品一覧表示ｃｇｉ３０５及び期日登録ｃｇｉ３０６は、図１４にて後述するビジネスオブジェクト及び期日監視対象オブジェクトに関するものである。
【００３２】
スケジュール等登録ｃｇｉ３０７は、個人のコンテンツを登録するための表示画面を作成するｃｇｉである。ユーザテーブル２０５を読み込み、オブジェクトテーブル２０９を読み書きする。これは図１４にて後述する個人オブジェクトに関するものである。実際にはスケジュール等登録ｃｇｉ３０７はその内容に応じて多数存在するが、本実施形態の主要部分ではないので詳細な説明は割愛する。
【００３３】
管理画面ｃｇｉ２１７は、顧客担当者が閲覧するためのｃｇｉである。
具体的には、各顧客担当者が担当するユーザ（顧客）について、期日に関するレコードをオブジェクトテーブル２０９から抽出する。そして、ユーザが所定の期間に至っても未だ当該期日の情報を閲覧していないレコードを表形式で列挙表示する。
【００３４】
[画面の遷移と動作の流れ]
図４は、本実施形態の情報提供サービスシステムによってもたらされる、クライアントＰＣ上における画面の遷移状態を示す状態遷移図である。図５は、図４に対応する、表示画面とボタンの遷移状態を示す図である。なお、実際にはｗｅｂサーバ１０２は図５に示した以外に、クライアントＰＣに対して多くの表示画面を提供するのだが、本発明と直接関係しない画面については省略している。
【００３５】
図４及び図５において、ユーザはログイン画面４０２においてユーザＩＤとパスワードを入力して「ログイン」ボタン５０２を押す。すると、ログインに成功したらカレンダー表示画面４０３に推移する。ログインに失敗したら、エラーメッセージを伴って再びログイン画面４０２が表示される。
【００３６】
カレンダー表示画面４０３において、表示月の変更を行うべく表示月変更ボタン５０３及び５０４のいずれかを押すと、ｗｅｂサーバ１０２から当該表示月のコンテンツが送信され、当該表示月がカレンダーとして表示される。
カレンダー表示画面４０３において、「ログアウト」ボタン５０５を押すと、ｗｅｂサーバ１０２内部にてログアウト処理が行われ、ログイン画面４０２が表示される。
カレンダー表示画面４０３において、「ウォッチング」ボタン５０６を押すと、ウォッチング銘柄表示画面４０４が表示される。
カレンダー表示画面４０３において、「株売買」ボタン５０７を押すと、株売買画面４０５が表示される。
なお、期日表示カレンダー表示画面４０６については後述する。
【００３７】
カレンダー表示画面４０３において、「お客様情報」ボタン５０８を押すと、購入済商品一覧表示画面４０７が表示される。
ユーザが既に購入した商品である株の一覧が、表形式で列挙表示される。
各商品のレコードの右端に「カレンダー設定」欄５０９が設けられている。この欄には各レコード毎に「設定」ボタン５１５が設けられている。
この「設定」ボタン５１５を押すと、期日登録画面４０８が表示される。
【００３８】
期日登録画面４０８は、当該レコードの商品について、カレンダーに表示する期日の種類を設定する。
「約定日」チェックボックス５１０、「払込日」チェックボックス５１１及び「決済日」チェックボックス５１２が夫々設けられている。
夫々のチェックボックスをマウスにてクリックすることにより、トグル式でオン／オフ設定がなされる。
所定の設定変更を行った後、マウスにて「ＯＫ」ボタン５１３を押すと、その設定内容がオブジェクトテーブル２０９に反映される。具体的には、オブジェクトテーブル２０９に対し、
・設定される期日の種類をオブジェクトテーブル２０９のTYPE_NOに記し、
・当該株のレコードに対応するコンテンツテーブル２１０のNOフィールドの値をオブジェクトテーブル２０９のCONTENTS_NOフィールドに記し、
・当該期日をオブジェクトテーブル２０９のEND_DATEフィ−ルドに記し、
・UNREADFLAGとCHECKFLAGを立て（値を１にする）た、新規なレコードを追加する。
もし、当該レコードが既に存在していれば、そのレコードの値を変更する。例えば、チェックボックスのチェックを外した場合は、当該レコードを削除せずに、CHECKFLAGを下ろす（値を０にする）。レコードの重複の有無はTYPE_NOとEND_DATEとCONTENTS_NOにて判断する。
【００３９】
期日登録画面４０８において「キャンセル」ボタン５１４を押すと、何らオブジェクトテーブル２０９に対する操作をすることなく、購入済商品一覧表示画面４０７の表示に戻る。
【００４０】
図８は、クライアントＰＣがカレンダー画面ｃｇｉ２０６によってカレンダーを表示するに際して、クライアントとｗｅｂサーバ１０２の間で送受信される情報を記したシーケンス図である。
先ず、クライアントがログインに成功したり、或は他の表示画面からカレンダー画面ｃｇｉ２０６を呼び出す処理を行うと、カレンダー画面ｃｇｉ２０６を実行する要求がクライアントからｗｅｂサーバ１０２へ送信される（Ｓ８０１）。
ｗｅｂサーバ１０２はこの要求を受け、カレンダー画面ｃｇｉ２０６を実行し、カレンダー表示ｈｔｍｌ文書を作成し、クライアントへ送信する（Ｓ８０２）。
クライアントはカレンダー表示ｈｔｍｌ文書を受信し、そのｈｔｍｌタグを解釈する。解釈の結果、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７の送信をｗｅｂサーバ１０２に要求する（Ｓ８０３）。
ｗｅｂサーバ１０２はクライアントから送信されたＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７の要求に応じて、図示しない不揮発性ストレージに格納されているＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７をクライアントへ送信する（Ｓ８０４）。
クライアントはＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７を受信し、内蔵インタプリタにて実行する。実行の結果、ｗｅｂサーバ１０２のＡｊａｘ用データ送信ｃｇｉ２０８に対し、指定期間内のカレンダーに表示するデータを送信すべく要求する（Ｓ８０５）。
ｗｅｂサーバ１０２はこの要求を受け、Ａｊａｘ用データ送信ｃｇｉ２０８を実行する。Ａｊａｘ用データ送信ｃｇｉ２０８は、クライアントから来た要求に含まれている、ユーザＩＤと指定期間のパラメータを解釈し、当該ユーザＩＤについて指定期間内のデータをオブジェクトテーブル２０９から検索し、ＸＭＬ文書にフォーマットを変換した後、クライアントへ送信する（Ｓ８０６）。
クライアントはＪａｖａ（登録商標）Ｓｃｒｉｐｔの機能によってＸＭＬ文書を受信して解釈し、その内容をカレンダーに表示する。
【００４１】
図９から図１３は、前述の図８によって示される処理の流れを詳述するフローチャートである。
図９はログインからカレンダーを表示する、クライアントとｗｅｂサーバ１０２の両方の処理を含めた、全体的な流れを示す。図８のＳ８０１からＳ８０２までの処理に該当する。
処理を開始すると（Ｓ９０１）、ユーザはクライアントのキーボード及びマウスを用いてｗｅｂブラウザを操作して、ｗｅｂサーバ１０２のログイン画面ｈｔｍｌ文書２０３にアクセスする（Ｓ９０２）。
ｗｅｂサーバ１０２は、このクライアントから発される要求に呼応して、ログイン画面ｈｔｍｌ文書２０３を送信する（Ｓ９０３）。
【００４２】
クライアントでは、ユーザがｗｅｂブラウザによって表示されているログイン画面４０２のダイアログボックスにユーザＩＤとパスワードを入力して、「ログイン」ボタンを押す（Ｓ９０４）。すると、「ログイン」ボタンによって、ユーザＩＤ及びパスワードと共に認証ｃｇｉ２０４を起動する要求がｗｅｂサーバ１０２に送信され、認証ｃｇｉ２０４が実行される。認証ｃｇｉ２０４は受信したユーザＩＤとパスワードをユーザテーブル２０５にて照合する（Ｓ９０５）。
照合の結果、ユーザＩＤとパスワードが一致しなければ（Ｓ９０５のＮ）、認証ｃｇｉ２０４はエラーフラグをセットして（Ｓ９０６）、ログイン画面ｈｔｍｌ文書２０３へ転送するｈｔｍｌ文書を作成して送信する。そして、クライアントは再びログイン画面ｈｔｍｌ文書へアクセスする（Ｓ９０２）。つまり、認証が成功するまで繰り返される。なお、セキュリティの向上のために、認証エラーが所定回数に達したら当該ユーザのログイン処理を一定時間拒絶する処理を加えることができる。
照合の結果、ユーザＩＤとパスワードが一致したら、認証ｃｇｉ２０４はカレンダー画面ｃｇｉ２０６を呼び出すｈｔｍｌ文書を作成して送信する。カレンダー画面ｃｇｉ２０６はカレンダー表示ｈｔｍｌを作成し、これが実行制御部２０２によってクライアントへ送信され（Ｓ９０７）、一連の処理は終了する（Ｓ９０８）。
【００４３】
図１０はクライアントのｗｅｂブラウザにおける、カレンダー表示処理の動作を示すフローチャートである。図９のＳ９０７の処理の後に行われる、クライアント上で行われる処理である。図８のＳ８０３からＳ８０４の処理に該当する。
クライアントのｗｅｂブラウザは、ｗｅｂサーバ１０２に対してカレンダー画面ｃｇｉ２０６の実行を要求した後（Ｓ１００１）、ｗｅｂサーバ１０２から送信されるカレンダー表示ｈｔｍｌ文書を受信する（Ｓ１００２）（図９のＳ９０７に相当）。
次に、ｗｅｂブラウザは受信したカレンダー表示ｈｔｍｌ文書内のｈｔｍｌタグをデータの先頭から解析する（Ｓ１００３）。その結果、タグがＪａｖａ（登録商標）Ｓｃｒｉｐｔであれば（Ｓ１００３のＹ）、これを解釈し、ＵＲＩにあるｗｅｂサーバ１０２のＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７を受信すべく、ｗｅｂサーバ１０２に要求する（Ｓ１００４）。そして、受信したＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７を内蔵インタプリタにて実行する（Ｓ１００５）。
タグがＪａｖａ（登録商標）Ｓｃｒｉｐｔでなければ（Ｓ１００３のＮ）、ｈｔｍｌ文法にしたがってこれを解釈し、画面表示を行う（Ｓ１００６）。
ｈｔｍｌタグを解釈し、実行した後、カレンダー表示ｈｔｍｌ文書の終端でなければ（Ｓ１００７のＮ）、ｈｔｍｌ文書の受信と解釈を継続する（Ｓ１００２）。そうでない場合は、処理を終了する（Ｓ１００８）。
【００４４】
図１１は、クライアントにおけるＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７の実行の詳細を示すフローチャートである。図１０のＳ１００５がこれに該当する。図８のＳ８０５からＳ８０６の処理に該当する。
Ｊａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース２０７をｗｅｂブラウザの内蔵インタプリタが実行すると（Ｓ１１０１）、当該Ｊａｖａ（登録商標）Ｓｃｒｉｐｔはｗｅｂブラウザの子プロセス或は別スレッドで稼動する、ＸＭＬ文書を受信するｗｅｂブラウザとしての機能を発揮する。
先ず、ｈｔｍｌ文書のカレンダー部分の領域に表示するコンテンツをｗｅｂサーバ１０２に要求する（Ｓ１１０２）。これがＡｊａｘ要求である。
ｗｅｂサーバ１０２はこれを解釈し、ＸＭＬ文書の形式にてコンテンツを送信する。
Ｊａｖａ（登録商標）Ｓｃｒｉｐｔよりなるｗｅｂブラウザ機能は、ｗｅｂサーバ１０２から送信されたＸＭＬ文書を受信する（Ｓ１１０３）。そして、ＸＭＬ文書のタグを解釈し、タグからデータ（コンテンツ）を抽出し、カレンダーに表示する（Ｓ１１０４）。
この処理を、ＸＭＬ文書の終端まで繰り返す（Ｓ１１０５、Ｓ１１０６）。
【００４５】
図１２は、ｗｅｂサーバ１０２側における、クライアントから発されるＡｊａｘ要求に対する応答の処理を示すフローチャートである。つまり、Ａｊａｘ用データ送信ｃｇｉ２０８の処理内容である。
Ａｊａｘ用データ送信ｃｇｉ２０８が起動されると（Ｓ１２０１）、クライアントからユーザＩＤを受信する（Ｓ１２０２）。なお、ユーザＩＤのみの場合は、カレンダー表示期間（指定期間）にデフォルト値が送信されたものとみなされる。したがって、ユーザがカレンダー表示期間を指定した場合には、ユーザＩＤに加えてカレンダー表示期間を付加して送信することもある。
次に、ユーザＩＤと指定期間をキーに、オブジェクトテーブル２０９を検索し、ヒットしたレコードをＸＭＬ文書のフォーマットに変換して出力し（Ｓ１２０３）、終了する（Ｓ１２０４）。
【００４６】
図１３は、本実施形態において、ｗｅｂサーバ１０２内のＡｊａｘ用データ送信ｃｇｉ２０８の動作の主要部分である、オブジェクトテーブル２０９を検索してＸＭＬ文書を送信するまでの詳細な流れを示すフローチャートである。図１２のＳ１２０３の中身に該当する。特に、このフローは株価情報等の更新動作に関する。
オブジェクトテーブル２０９の検索開始に際し（Ｓ１３０１）、ユーザＩＤと指定期間にてオブジェクトテーブル２０９を検索し、ヒットしたレコードを一旦図示しないｗｅｂサーバ１０２のメモリに保持する（Ｓ１３０２）。
次に、コンテンツ配信登録テーブル２１１のコンテンツ番号（CONTENTS_NOフィールド）をキーにして、コンテンツ配信登録テーブル２１１とコンテンツテーブル２１０を関係付ける（リレーション）。その上で、ユーザＩＤにて検索を行い、ヒットしたレコードの数を変数「Ｎ」に保持する（Ｓ１３０３）。
【００４７】
これ以降はループ処理である。メモリに保持したオブジェクトテーブル２０９のヒットしたレコード群に対し、コンテンツの有無を検索する処理を行う。
最初に、カウンタを構成する変数ｉを１に初期化する（Ｓ１３０４）。
次に、先の検索にてヒットしたコンテンツテーブル２１０のレコードを見て、そのレコードに記録されているコンテンツがメモリに保持したオブジェクトテーブル２０９のヒットしたレコード群にあるか否か、検索して確認する（Ｓ１３０５）。
もしあれば、それは既にコンテンツ蓄積テーブル２１２からコンテンツを取得済みであるので、ヒットしたレコードに記録されているコンテンツをＸＭＬフォーマットに変換して出力する（Ｓ１３０６）。
もしなければ、それは未だコンテンツ蓄積テーブル２１２からコンテンツを取得していないので、コンテンツ蓄積テーブル２１２にアクセスし、コンテンツを取得する（Ｓ１３０７）。そして、オブジェクトテーブル２０９に取得したコンテンツを記録すると共に、当該コンテンツをＸＭＬフォーマットに変換して出力する（Ｓ１３０８）。
【００４８】
以上の処理の後、カウンタを構成する変数ｉをインクリメントする（Ｓ１３０９）。
そして、変数ｉが最大レコード数Ｎを超えたか否かを確認し（Ｓ１３１０）、超えていなければ再び処理を繰り返す（Ｓ１３０５）。超えていれば、処理を終了する（Ｓ１３１１）。
【００４９】
[テーブル]
図１４は、本実施形態のｗｅｂサーバ１０２内に設けられている各種テーブルのうち、本発明に関係するもののフィールド名とその内容を列挙したものである。
【００５０】
オブジェクトテーブル２０９は、ｗｅｂサーバ１０２を利用する登録ユーザが、自らに関係する種々雑多な情報と、コンテンツ配信登録テーブル２１１にて登録した、コンテンツ提供者からのコンテンツを記録するものである。
「CLASS_NO」は分類番号である。記録されるコンテンツを、個人オブジェクト、ビジネスオブジェクト、期日監視対象オブジェクトの三種類に大別する。
「TYPE_NO」はオブジェクト種別である。記録されるコンテンツの内容に応じて、スケジュール、イベント、日記、アルバム、ライフログ、目標、メモ等の個人オブジェクトの種別、そして約定日、払込日、決済日の期日監視対象オブジェクトの種別を記す数値データが記録される。
【００５１】
「NAME」はタイトルである。
「DESCRIPTION」は内容である。
「LINK」はリンク、つまりコンテンツに関係するＵＲＩである。
この三つのフィールドは、個人オブジェクトにおいて登録ユーザが記録するコンテンツの主たる実体である。
【００５２】
「CREATE_DATE」は、当該レコードを新規に追加した時点の日時を記録する。
「UPDATE_DATE」は、当該レコードを更新した時点の日時を記録する。なお、株価データの場合は、このフィールドが一日に何回も更新されることとなる。
「START_DATE」は、カレンダーに表示する期間の開始日を記入する。但し、これは個人オブジェクトにのみ有効であり、ビジネスオブジェクト及び期日監視対象オブジェクトでは期間の開始日としては用いない。ビジネスオブジェクトにおいてはこのフィールドは無視される。期日監視対象オブジェクトにおいては、このフィールドは管理者の検索の便宜のために「期」の開始を表すフィールドとして用いる。
「END_DATE」は、カレンダーに表示する期間の終了日を記入する。但し、これは個人オブジェクトにのみ有効であり、ビジネスオブジェクト及び期日監視対象オブジェクトでは期間の終了日としては用いない。ビジネスオブジェクト及び期日監視対象オブジェクトにおいては、このフィールドは表示日として用いる。
【００５３】
「UNREADFLAG」は閲覧未了フラグである。このフィールドの値が１であれば、閲覧が未だ行われていないことを示す。そして、このレコードにかかるコンテンツを閲覧したらフラグを下げる（値を０にする）。
「CHECKFLAG」はチェック対象フラグである。このフラグが上がっていればUNREADFLAGをチェックする対象とする。
「USERID」はユーザＩＤである。これは後述のテーブルのみならず、ユーザテーブル２０５においても共通である。
「CONTENTS_NO」はコンテンツ番号である。後述するコンテンツテーブル２１０の「NO」のコンテンツ番号と等しい。
【００５４】
コンテンツテーブル２１０は、コンテンツ提供者によるコンテンツ提供サービスの一覧である。
コンテンツテーブル２１０は、コンテンツ提供サービス毎にフィールド名「NO」のコンテンツ番号が付与されている。
「CONTENTS_SRC」は、コンテンツ提供者サーバ２２１、２２２及び２２３からｗｅｂサーバ１０２がコンテンツを取得する際のＵＲＩを記載する。また、ＵＲＩの他に、必要に応じてコンテンツ取得の際のプロトコルやコンテンツを加工するコマンド等も記載する。
【００５５】
コンテンツ配信登録テーブル２１１は、登録ユーザが契約して利用するコンテンツ提供サービスとの関係を示すものである。したがって、「USERID」のユーザＩＤと、「CONTENTS_NO」のコンテンツ番号が記されている。
【００５６】
図１５はオブジェクトテーブル２０９の一例を示す。
あるユーザ（ユーザＩＤ：２４６８）について、オブジェクトテーブル２０９のレコードを抜粋したものである。
CLASS_NOフィールドの値が１のレコードは、個人オブジェクトである。
個人オブジェクトの場合は、START_DATE及びEND_DATEがカレンダーにおける表示期間に相当する。
CLASS_NOフィールドの値が２のレコードは、ビジネスオブジェクトである。ここでは株価データを例示する。株価データは一日、一ヶ月、一年の三種類あり、更にそれらが銘柄毎に存在する。ビジネスオブジェクトの場合は、START_DATEは無視され、END_DATEだけがカレンダーにおける表示期日になる。銘柄はCONTENTS_IDにて区別される。
CLASS_NOフィールドの値が３のレコードは、期日監視対象オブジェクトである。ここでは約定日を例示する。期日監視対象オブジェクトの場合は、START_DATEは無視され、END_DATEだけがカレンダーにおける表示期日になる。銘柄はCONTENTS_IDにて区別される。
【００５７】
[「期日到来」ボタンを押すことで起動される動作]
図１６はカレンダー表示画面４０３である。
個人オブジェクトはその設定次第で複数日に渡って設定できる。図１６では「研修会」ボタン１６０２にて、スケジュールが設定されている。
ビジネスオブジェクトは単数日にのみ設定される。図１６では「株価情報」ボタン１６０３にて、平日に供給される株価情報が設定されている。
期日監視対象オブジェクトは単数日にのみ設定される。図１６では「期日到来」ボタン１６０４にて、当該期日に設定されている。
「期日到来」ボタン１６０４は、オブジェクトテーブル２０９のCHECKFLAGが１のものを表示する。期日登録画面４０８においてチェックボックスを外されることにより、CHECKFLAGが０に設定されると、カレンダー表示画面４０３には表示されなくなる。
【００５８】
図１７は図１６の「期日到来」ボタン１６０４を押したときの、カレンダー表示画面である。これが図４及び図５の期日表示カレンダー表示画面４０６である。つまり、Ａｊａｘの機能にて、カレンダー表示画面に期日表示ウィンドウ１７０２が表示された状態である。このウィンドウが表示されると、オブジェクトテーブル２０９の当該レコードのUNREADFLAGのフラグを下ろし（値を０に設定）、スクリーンショットプログラム２１５を起動する。
【００５９】
図１８は図１６の「期日到来」ボタン１６０４を押したときの、ｗｅｂサーバ１０２の動作を示すフローチャートである。
先ず、オブジェクトテーブル２０９の当該レコードのUNREADFLAGのフラグを下ろす（値を０に設定）（Ｓ１８０１）。
次に、スクリーンショットプログラム２１５を起動する（Ｓ１８０２）。
次に、Ａｊａｘ用データ送信ｃｇｉ２０８の出力データを記録する（Ｓ１８０３）。
そして、出力データを基にスクリーンショット用ｈｔｍｌ文書を作成し、不揮発性ストレージに保存する（Ｓ１８０４）。
そして、ｗｅｂブラウザエミュレータにスクリーンショット用ｈｔｍｌ文書を読み込ませ、擬似スクリーンショットを作成し、保存する（Ｓ１８０５）。
【００６０】
ｗｅｂブラウザエミュレータは、スクリーンショットプログラム２１５の中に含まれている。これはその名の通り、ｗｅｂブラウザの動作を模倣するプログラムである。ｈｔｍｌ文書を読み込み、解釈して実行し、画像データを生成する。ｈｔｍｌ文書の解釈の際に、ｈｔｍｌ文書のタグに書かれている画像データファイルを読み込むと共に、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔインタプリタも内蔵する。
なお、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔインタプリタの代わりに、予めＡｊａｘ要求に対する応答に相当するｈｔｍｌ文書を作成しておき、これにステップＳ１８０３にて得られたＡｊａｘ用データ送信ｃｇｉ２０８の出力データを当てはめる定型処理を代用することもできる。
【００６１】
図１９は顧客管理画面の一部を示す。管理画面ｃｇｉ２１７によって顧客担当のＰＣに表示される画面である。
図示しない担当顧客テーブルに、顧客担当のユーザＩＤと顧客のユーザＩＤが列挙されている。
管理画面ｃｇｉ２１７は当該顧客担当のユーザＩＤをキーとして、担当顧客テーブルのユーザＩＤを検索し、顧客リストを一時的に作成する。この顧客リストを基に、オブジェクトテーブル２０９のレコードを検索する。
レコードの条件は、
・期日監視対象オブジェクト１６０４であること、
・所定期間内であること、
・UNREADFLAGが上がっていること、
・CHECKFLAGが上がっていること
の四つである。
【００６２】
本実施形態には、以下のような応用例が考えられる。
（１）期日表示カレンダー表示画面４０６にて、期日表示ウィンドウ１７０２に表示される期日の内容は、複数に渡ることがある。この場合、期日表示ウィンドウ１７０２の表示面積内で表示しきれない場合は、スクロールバーを生成して、ユーザによるマウスやカーソルキー等の操作で、表示内容をスクロールさせて全部を表示させることができる。
また、スクロールする必要が生じた場合には、全部を表示させて初めて図１８の処理を行うようにするとなおよい。
【００６３】
（２）ｗｅｂサーバ１０２から、ユーザテーブル２０５、オブジェクトテーブル２０９、コンテンツテーブル２１０、コンテンツ配信登録テーブル２１１、コンテンツ蓄積テーブル２１２、補助ストレージ２１３、定期巡回クライアントプログラム２１４、スクリーンショットプログラム２１５、コンテンツ登録画面ｃｇｉ２１６、管理画面ｃｇｉ２１７を夫々別個のサーバに設けることができる。これはセキュリティ上の要請、サーバの負荷分散、フェールセーフ等の設計的事情による。
また、各ｃｇｉはアプリケーションサーバやミドルウェアと呼ばれるソフトウェア製品を用いて構築することもできる。
【００６４】
（３）カレンダーを表示する技術は、Ａｊａｘに限られない。Ａｊａｘを用いずにｈｔｍｌ文書のみでカレンダーを表示することもできる。
また、Ａｊａｘ以外にもＭａｃｒｏｍｅｄｉａ社のＳｈｏｃｋｗａｖｅ（登録商標）やＦｌａｓｈ（登録商標）、或はＪａｖａ（登録商標）アプレット等の技術が利用可能である。
同様に、ｃｇｉが出力する文書は、ｈｔｍｌ文書に限られない。ＸＭＬ文書でもよいし、前述のＳｈｏｃｋｗａｖｅやＦｌａｓｈ、Ｊａｖａ（登録商標）アプレット等が利用可能である。
【００６５】
（４）予め認証を済ませたＣｏｏｋｉｅを抱えているｗｅｂブラウザがアクセスする場合は、ログイン処理をスキップすることができる。すなわち、クライアントがｗｅｂサーバにアクセスすると、ログイン画面を表示するのではなく、Ｃｏｏｋｉｅの存在をｗｅｂサーバが認識して、いきなりカレンダー画面を表示させることができる。
【００６６】
（５）管理画面ｃｇｉ２１７に代えて、図１９に示す内容を印刷出力するプログラムを設けることができる。この場合、管理画面ｃｇｉ２１７のようなインタラクティブなユーザインターフェースにする以外に、夜間バッチ処理に適した非対話型プログラムを設け、担当者毎に一括出力するような実施形態にすることもできる。
【００６７】
（６）ログイン後の表示画面はカレンダー画面に限られない。ユーザの設定に応じて、他の画面を設定することができる。
【００６８】
本実施形態では、証券会社における情報提供サービスシステムを開示した。
顧客が購入している商品の期日をチェックし、当該期日から所定期間内に至っても未だに顧客がその内容を閲覧していない場合は、これを顧客担当者が迅速に把握し、顧客に電話をする等のアクションを起こす。こうして、顧客の払い込み忘れ等の事故を未然に防ぐことができる。また、顧客が当該期日のアラート（alert：警告）内容を閲覧した事実は、ログとしてｗｅｂサーバ１０２に保存される。したがって、顧客がアラート閲覧後に払い込みを忘れた際には閲覧の事実が示せるので、顧客が情報を知らなかったと主張する根拠がなくなり、責任の不在が解消される。
【００６９】
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含むことは言うまでもない。
【図面の簡単な説明】
【００７０】
【図１】本発明の一実施の形態による電子商取引システムの概略図である。
【図２】ｗｅｂサーバの機能ブロック図である。
【図３】コンテンツ登録画面ｃｇｉの詳細な中身を示すブロック図である。
【図４】本実施形態の情報提供サービスシステムによってもたらされる、クライアントＰＣ上における画面の遷移状態を示す状態遷移図である。
【図５】図４に対応する、表示画面とボタンの遷移状態を示す図である。
【図６】カレンダー画面ｃｇｉが作成するｈｔｍｌ文書の内容の一部を示す図である。
【図７】ｗｅｂブラウザがｈｔｍｌ文書を読み込み、更にＪａｖａ（登録商標）Ｓｃｒｉｐｔを実行した結果がディスプレイに表示された状態を示す図である。
【図８】クライアントＰＣがカレンダー画面ｃｇｉによってカレンダーを表示するに際して、クライアントとｗｅｂサーバの間で送受信される情報を記したシーケンス図である。
【図９】ログインからカレンダーを表示する、クライアントとｗｅｂサーバの両方の処理を含めた、全体的な流れを示すフローチャートである。
【図１０】クライアントのｗｅｂブラウザにおける、カレンダー表示処理の動作を示すフローチャートである。
【図１１】クライアントにおけるＪａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソースの実行の詳細を示すフローチャートである。
【図１２】ｗｅｂサーバにおける、クライアントから発されるＡｊａｘ要求に対する応答の処理を示すフローチャートである。
【図１３】ｗｅｂサーバ内のＡｊａｘ用データ送信ｃｇｉの動作の主要部分である、オブジェクトテーブルを検索してＸＭＬ文書を送信するまでの詳細な流れを示すフローチャートである。
【図１４】ｗｅｂサーバ内に設けられている各種テーブルのフィールド名とその内容を列挙した図である。
【図１５】オブジェクトテーブルの内容の一例を示す。
【図１６】カレンダー表示画面を示す図である。
【図１７】図１６の「期日到来」ボタンを押したときの、カレンダー表示画面を示す図である。
【図１８】図１６の「期日到来」ボタンを押したときの、ｗｅｂサーバの動作を示すフローチャートである。
【図１９】顧客管理画面の一部を示す図である。
【符号の説明】
【００７１】
１０１…電子商取引システム、１０２…ｗｅｂサーバ、１０３…インターネット、１０４…ユーザＡ、１０５…ユーザＢ、１０６…ユーザＣ、１０７…社内ＬＡＮ、１０８…顧客担当Ｄ、１０９…顧客担当Ｅ、２０２…実行制御部、２０３…ログイン画面ｈｔｍｌ文書、２０４…認証ｃｇｉ、２０５…ユーザテーブル、２０６…カレンダー画面ｃｇｉ、２０７…Ｊａｖａ（登録商標）Ｓｃｒｉｐｔプログラムソース、２０８…Ａｊａｘ用データ送信ｃｇｉ、２０９…オブジェクトテーブル、２１０…コンテンツテーブル、２１１…コンテンツ配信登録テーブル、２１２…コンテンツ蓄積テーブル、２１３…補助ストレージ、２１４…定期巡回クライアントプログラム、２１５…スクリーンショットプログラム、２１６…コンテンツ登録画面ｃｇｉ、２１７…管理画面ｃｇｉ、２２１、２２２、２２３…コンテンツ提供者サーバ、３０２…ウォッチング銘柄登録ｃｇｉ、３０３…株売買ｃｇｉ、３０４…ウォッチング銘柄一覧表示ｃｇｉ、３０５…購入済商品一覧表示ｃｇｉ、３０６…期日登録ｃｇｉ、３０７…スケジュール等登録ｃｇｉ、４０２…ログイン画面、４０３…カレンダー表示画面、４０４…ウォッチング銘柄表示画面、４０５…株売買画面、４０６…期日表示カレンダー表示画面、４０７…購入済商品一覧表示画面、４０８…期日登録画面、５０２…「ログイン」ボタン、５０３、５０４…表示月変更ボタン、５０５…「ログアウト」ボタン、５０６…「ウォッチング」ボタン、５０７…「株売買」ボタン、５０８…「お客様情報」ボタン、５０９…「カレンダー設定」欄、５１０…「約定日」チェックボックス、５１１…「払込日」チェックボックス、５１２…「決済日」チェックボックス、５１３…「ＯＫ」ボタン、５１４…「キャンセル」ボタン、５１５…「設定」ボタン、６０１…ｈｔｍｌ文書、６０２…「＜ｈｔｍｌ＞」タグ、６０３…「＜／ｈｔｍｌ＞」タグ、６０４…「＜ｈｅａｄ＞」タグ、６０５…「＜／ｈｅａｄ＞」タグ、６０６…「＜ｂｏｄｙ＞」タグ、６０７…「＜／ｂｏｄｙ＞」タグ、６０８…「ｓｃｒｉｐｔ」タグ、７０２…Ａｊａｘ用表示範囲、１６０２…「研修会」ボタン、１６０３…「株価情報」ボタン、１６０４…「期日到来」ボタン、１７０２…期日表示ウィンドウ
【図１】
2008158980.tif 000003
【図２】
2008158980.tif 000004
【図３】
2008158980.tif 000005
【図４】
2008158980.tif 000006
【図５】
2008158980.tif 000007
【図６】
2008158980.tif 000008
【図７】
2008158980.tif 000009
【図８】
2008158980.tif 000010
【図９】
2008158980.tif 000011
【図１０】
2008158980.tif 000012
【図１１】
2008158980.tif 000013
【図１２】
2008158980.tif 000014
【図１３】
2008158980.tif 000015
【図１４】
2008158980.tif 000016
【図１５】
2008158980.tif 000017
【図１６】
2008158980.tif 000018
【図１７】
2008158980.tif 000019
【図１８】
2008158980.tif 000020
【図１９】
2008158980.tif 000021