(57)【要約】【課題】過去の業務において参照した文書を、新たな業務に活用すれば、業務効率が改善される。しかし、その文書を効率良く探し出す手段がこれまでにはなかった。【解決手段】アクティブウィンドウとなっているアプリケーションプログラムが読んでいる文書の名称を、現在遂行している業務の名称と関連付けて、ログ記録する。記録したログを基に、業務名称から文書の名称を検索するプログラムを設ける。【選択図】図１１
2008108202.tif 000002
【特許請求の範囲】
【請求項１】
入力フォーカスが当たっているプログラムが読んでいるコンテンツの名称と、前記コンテンツに対応する業務の情報をフィールドに備える業務履歴テーブルに対して、前記業務の情報にて検索を行う機能と、
前記検索によって条件に合致するレコードの前記コンテンツの名称を、前記コンテンツの名称及び前記業務の情報が同一であるレコードとの重複を排除した上で列挙表示する機能と
よりなることを特徴とする業務履歴検索プログラム。
【請求項２】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み始めた日時或は前記プログラムに入力フォーカスが当たった日時のフィールドを更に備え、
前記検索を行う機能は、前記日時のフィールドに対して指定した日時或は日時の範囲にて検索を行う機能を含むことを特徴とする、請求項１記載の業務履歴検索プログラム。
【請求項３】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み続けた時間或は入力フォーカスが当たっていた時間のフィールドを更に備え、
前記列挙表示する機能は、前記時間のフィールドから読み取った前記時間の情報によって並び替えて列挙表示することを特徴とする、請求項１記載の業務履歴検索プログラム。
【請求項４】
入力フォーカスが当たっているプログラムが読んでいるコンテンツの名称と、前記コンテンツに対応する業務の情報をフィールドに備える業務履歴テーブルに対して、前記業務の情報にて検索を行う機能と、
前記検索によって条件に合致するレコードの前記コンテンツの名称を、前記コンテンツの名称及び前記業務の情報が同一であるレコードとの重複を排除した上で、所定の記憶装置に記録する機能と
よりなることを特徴とする業務履歴検索プログラム。
【請求項５】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み始めた日時或は前記プログラムに入力フォーカスが当たった日時のフィールドを更に備え、
前記検索を行う機能は、前記日時のフィールドに対して指定した日時或は日時の範囲にて検索を行う機能を含むことを特徴とする、請求項４記載の業務履歴検索プログラム。
【請求項６】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み続けた時間或は入力フォーカスが当たっていた時間のフィールドを更に備え、
前記列挙表示する機能は、前記時間のフィールドから読み取った前記時間の情報によって並び替えて列挙表示することを特徴とする、請求項４記載の業務履歴検索プログラム。
【請求項７】
業務の履歴に関する情報を記憶する業務履歴テーブルと、
入力フォーカスが当たっているプログラムが読んでいるコンテンツの名称と、前記コンテンツに対応する業務の情報を前記業務履歴テーブルに記録する業務履歴記録部と、
前記業務履歴テーブルに対して、前記業務の情報にて検索を行い、条件に合致するレコードの前記コンテンツの名称を、前記コンテンツの名称及び前記業務の情報が同一であるレコードとの重複を排除した上で列挙表示する機能を備える業務履歴検索部と
よりなることを特徴とする業務履歴検索装置。
【請求項８】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み始めた日時或は前記プログラムに入力フォーカスが当たった日時のフィールドを更に備え、
前記業務履歴検索部は、前記日時のフィールドに対して指定した日時或は日時の範囲にて検索を行う機能を含むことを特徴とする、請求項７記載の業務履歴検索装置。
【請求項９】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み続けた時間或は入力フォーカスが当たっていた時間のフィールドを更に備え、
前記業務履歴検索部の前記列挙表示する機能は、前記時間のフィールドから読み取った前記時間の情報によって並び替えて列挙表示することを特徴とする、請求項７記載の業務履歴検索装置。
【請求項１０】
クライアントからアップロードされる情報を蓄積し、所定のプロトコルにてクライアントに提供する情報共有サーバと、
業務の履歴に関する情報を記憶する業務履歴テーブルと、
入力フォーカスが当たっているプログラムが読んでいるコンテンツの名称と、前記コンテンツに対応する業務の情報を前記業務履歴テーブルに記録する業務履歴記録部と、
前記業務履歴テーブルに対して、前記業務の情報にて検索を行い、条件に合致するレコードの前記コンテンツの名称を、前記コンテンツの名称及び前記業務の情報が同一であるレコードとの重複を排除した上で、前記情報共有サーバにアップロードする機能を備える業務履歴検索部と
よりなるクライアントと、
よりなることを特徴とする業務履歴検索システム。
【請求項１１】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み始めた日時或は前記プログラムに入力フォーカスが当たった日時のフィールドを更に備え、
前記業務履歴検索部は、前記日時のフィールドに対して指定した日時或は日時の範囲にて検索を行う機能を含むことを特徴とする、請求項１０記載の業務履歴検索システム。
【請求項１２】
前記業務履歴テーブルは、前記入力フォーカスが当たっているプログラムが前記コンテンツを読み続けた時間或は入力フォーカスが当たっていた時間のフィールドを更に備え、
前記業務履歴検索部の前記列挙表示する機能は、前記時間のフィールドから読み取った前記時間の情報によって並び替えて列挙表示することを特徴とする、請求項１０記載の業務履歴検索システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、業務履歴検索プログラム、業務履歴検索装置及び業務履歴検索システムに関する。
より詳細には、パソコン上で業務を遂行した履歴を、業務の遂行に有効な情報として活用する技術に関する。
【背景技術】
【０００２】
今日、デスクワークと呼ばれる業務体系に属する労働者の大多数が、パソコンを使用して日々の業務を遂行している。
そのような中、日々の業務の進捗状況を上長に報告するために、週報、或は日報という形態で、所定期間内に行った業務内容を要約して報告する業務形態が多く見受けられる。
【特許文献１】特開２００４−３２６４９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来、日報或は週報の作成は、あくまでも当該労働者自身の自己申告によるものであった。それらの作成は、労働者自身が、業務の節目や一日の終わり等のタイミングに、それまで遂行した業務を手作業で記録し、報告書の作成の際に参照するか、或は記憶を頼りに報告書を作成する、等の作業を生じていた。
多忙な者程、このような報告書作成作業が貴重な時間や労力を消費することは理解できるだろう。また、日報作成は人によっては苦痛を伴う作業でもある。
なお、特許文献１には日報を集約して月報を作成するシステムが開示されているが、本発明とは直接的には関連しない。
【０００４】
本発明はかかる点に鑑みてなされたものであり、日報の作成の自動化を実現する過程において得られた情報から、業務の遂行に有効な情報として活用するプログラム、装置そしてシステムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するための本発明は、アクティブウィンドウに対応するプログラムが読んでいるコンテンツの名称と、現在の業務の情報と関連付けてログ記録される業務履歴テーブルに対し、業務の名称で検索を行い、コンテンツの名称を得る、業務履歴検索プログラムに関するものである。
【０００６】
発明者は、日々の業務を自動的に記録してくれるものはないか、思案した。そして、日報の根拠となる対象は「文書」であることに気付いた。したがって、日々の業務で扱った文書をリアルタイムで記録する仕組みを作成すれば、自分だけがわかる業務履歴を作成できる。
しかし、日報は上長に報告するものであるから、第三者が見てわかるようにしなければならない。つまり、文書の名称をリアルタイムに記録するだけでは日報の根拠としては不足であり、業務の名称を一緒に記録する必要があることに気付いた。
ここに、日報作成支援の仕組み（フレームワーク）が完成したのである。
更に、過去の業務に関する文書をログ記録した業務履歴は、新たに遂行する、類似する業務の効率化に寄与する。そこで、業務履歴テーブルを業務の名称で検索する仕組みを設けた。
【発明の効果】
【０００７】
本発明により、労働者の業務の遂行を大幅に効率化する、業務履歴検索プログラム、業務履歴検索装置及び業務履歴検索システムを提供できる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態を、図１〜図１２を参照して説明する。
【０００９】
図１は、本発明の実施形態にかかる、業務履歴記録装置のブロック図及び外観図である。しかしながら、ハードウェアはごく一般的なパソコンであるので、図１（ａ）に示すブロック図も、（ｂ）に示す外観図も、本発明の実施に際して特別に目立つ特徴がある訳ではない。
業務履歴記録装置を構成するパソコン１０１は、ＣＰＵ１０２、ＲＯＭ１０３とＲＡＭ１０４を中心として、これらがバス１０６に接続されている。また、バスには不揮発性ストレージ１０５、ディスプレイインターフェース１０７を通じてディスプレイ１０８、シリアルインターフェース（ＵＳＢ：Universal Serial Bus）１０９を通じてキーボード１１０及びマウス１１１、ネットワークインターフェース（Network Interface 、以下「ＮＩＣ」と略す）１１２が接続されている。ＮＩＣ１１２はネットワーク１１３に接続されている。
本発明の実施形態が業務履歴記録装置であるが故に、本実施形態は主に会社等のオフィスにて、デスクワークに従事する会社員或はこれに準ずる者が使用する。
【００１０】
本実施形態は、それ自身がソフトウェアプログラムから構成されている。
図２は、本実施形態にかかる業務履歴記録装置を機能的に見たブロック図である。
これ以降の説明は、説明の都合上、マイクロソフト社のＷｉｎｄｏｗｓ（登録商標）において実施されることを想定して説明する。但し、本実施形態はＯＳを制限するものではない。このことについては後述する。
業務履歴記録装置２０１は、その殆どがソフトウェアが提供する機能にて構成される。
ＯＳ２０２は、第１プログラム２０３、第２プログラム２０４及び日報プログラム２０５の実行を制御する。また、ＯＳ２０２はそれらプログラムの実行状態を、内部の表示制御部２０８を通じてディスプレイ１０８にウィンドウの形態で表示する。ＯＳ２０２は、使用者にＧＵＩ（Graphical User Interface）の機能を提供する。
ＯＳ２０２の内部には入力フォーカス指定部２０６がある。入力部２０７の指示によって第１プログラム２０３と第２プログラム２０４のいずれかに入力フォーカスが当たると、その結果、当該プログラムはアクティブウィンドウになり、表示制御部２０８によってウィンドウのタイトル部分の表示色が変化する。
【００１１】
第１プログラム２０３及び第２プログラム２０４は、ＯＳ２０２の制御によってマルチタスクにて実行される。これらプログラムはそれぞれコンテンツ２１０を読み込み、また必要に応じてそれを編集することができる。
ここで、コンテンツとは広義のデータである。ワープロであれば文書ファイルであり、表計算ソフトであればワークシートファイルである。また、ｗｅｂブラウザであればｗｅｂサイト上のｈｔｍｌ文書である場合があれば、またｃｇｉ（Common Gateway Interface）による動的に変化するｈｔｍｌ文書である場合もある。この場合、ｈｔｍｌ文書とはいうが、厳密にはファイルではなくネットワークを通じて得られるストリームデータであり、これをローカル（パソコン自身）の不揮発性ストレージ内の一時記憶領域において一時的にファイル化して、それを表示しているに過ぎない。
すなわち、現在のネットワークに接続されるパソコンは、稼動するプログラムが扱うデータの所在がどこにあるかは定まっていない。
本実施形態ではそのような様々な所在のデータを「コンテンツ」と広く定義する。日報プログラム２０５はこのコンテンツを業務と関連付けて記録するものである。
【００１２】
日報プログラム２０５は本実施形態の中核をなすプログラムであり、大まかには業務履歴を記録する機能、業務履歴から日報を作成する機能、そして業務履歴から所定の情報をサーバへ送信する機能を備えている。
日報プログラム２０５は、入力フォーカス指定部２０６から得られるアクティブウィンドウの情報を取り込み、実行結果を、適宜表示制御部２０８を通じてウィンドウとして表示させたり、業務マスター２１１と業務履歴テーブル２１２の読み書きを行う。カレンダクロック２１３はパソコン内部のハードウェアであり、本来ならＯＳ２０２を通じて日時情報を得るものではあるが、ここでは説明の便宜上、日報プログラム２０５がカレンダクロック２１３から日時情報を得るものとして、簡略化して書いている。
【００１３】
業務マスター２１１はテーブルであり、会社員である使用者が、自らに与えられている業務を逐一記録するものである。
業務履歴テーブル２１２は、日報プログラム２０５がアクティブウィンドウの切り替わり等を検出して、現在使用者が関与しているコンテンツ２１０を追加記録するものである。なお、この追加記録の際には、日報プログラム２０５は業務マスター２１１のレコードと、カレンダクロック２１３から得られる現在時刻を参照して、コンテンツのレコードに追加する。
【００１４】
なお、説明の便宜のため、図３以降の説明は、「コンテンツ」という名称に代えて「文書」という名称を使用する。ｗｅｂブラウザによって参照されるコンテンツは「ｗｅｂ文書」ともいうからである。また、これ以降の説明ではＣＡＤ等の図形データの、「文書」とはいえない形式のデータは説明しないが、これらが「コンテンツ」に含まれることはいうまでもない。
【００１５】
図３は日報プログラム２０５のメインウィンドウ画面である。
メインウィンドウ３０１の上半分にある業務欄３０２は、現在の業務を表示すると共に、業務情報を入力し、編集する欄である。
部門、テーマ、名称（大）、名称（中）、名称、仕事明細という細かなフィールド名は、細分化される業務の分類に便利なように設けられている。勿論、これらフィールドに代えて、単一の業務名のみのフィールドであってもよい。
メインウィンドウ３０１の下半分にある履歴欄３０３は、今日或は指定した日の業務履歴テーブル２１２を表示すると共に、必要に応じて業務履歴テーブル２１２の指定したレコードの指定したフィールドの編集もできる欄である。
【００１６】
「ＳｔａｒｔＴｉｍｅ」フィールド３０４は、アクティブウィンドウとなったプログラムが文書へのアクセスを開始した時間である。
「所要時間＿分」フィールド３０５は、アクティブウィンドウとなったプログラムが文書へのアクセスを行った時間である。より正確には、当該プログラムがその文書を読み込んだままで、アクティブウィンドウの状態を維持していた時間である。
「テーマ名称」フィールド３０６、「名称＿大」フィールド３０７、「名称＿中」フィールド３０８、「名称」フィールド３０９、「ＪｏｂＮＡＭＥ」フィールド３１０は、業務を示すフィールドである。実際には、業務履歴テーブル２１２内には業務マスター２１１の該当するレコードへのポインタのみが記録されており、履歴欄３０３ではそのポインタを用いて業務マスター２１１の該当レコードのフィールドを読み込んで表示している。
「Ｄｏｃｕｍｅｎｔ」フィールド３１１は文書の名称である。アプリケーションによっては文書のフルパス名やＵＲＩ（Uniform Resource Identifier）も記録され得る。
【００１７】
日報プログラム２０５は、起動されると、最初にメインウィンドウ３０１を表示する。使用者はこれから行う業務を業務欄３０２に設定し、メインウィンドウ３０１を最小化する。このとき、使用者が業務を指定する操作によって、日報プログラム２０５内部にある図示しないポインタが、業務マスター２１１内の該当する業務のレコードを指し示すべく書き換えられる。
この操作により、これ以降に新規作成される文書は、業務欄３０２に設定した業務に属する文書として、業務履歴テーブル２１２にレコードが追加される。
【００１８】
図４は、アクティブウィンドウの指定が変わることにより、業務履歴テーブル２１２にレコードが追加される有り様を示す概略図である。
図４（ａ）はディスプレイ１０８を概略的に表示する。
ディスプレイ１０８内には二つのウィンドウが表示されており、ｗｅｂブラウザ４０２のウィンドウよりもワープロ４０３のウィンドウが前面に出ている。ワープロ４０３のウィンドウに入力フォーカスが当たっているので、アクティブウィンドウとなっている。
マウスでｗｅｂブラウザ４０２の任意の箇所を左クリックすると、（ａ）の表示から一転してｗｅｂブラウザ４０２のウィンドウがワープロ４０３のウィンドウよりも前面に出る。ｗｅｂブラウザ４０２のウィンドウに入力フォーカスが当たっているので、アクティブウィンドウとなっている。逆にワープロ４０３のウィンドウは入力フォーカスが外れ、インアクティブウィンドウ（Inactive Window: イナクティブウィンドウともいう）となる。
日報プログラム２０５は、以上のようなアクティブウィンドウの操作を検出して、業務履歴テーブル２１２に新たなレコードを追加する。すなわち、図４（ｃ）に示す業務履歴テーブル２１２は、図４（ｄ）のように新たなレコード４０５が追加される。
【００１９】
ここで、ある会社員が一日を会社内で過ごし、与えられた業務を遂行する場面を考える。
会社員には複数の業務が与えられている。会社員はそれら複数の業務のそれぞれについて、文書を作成し、編集する。
多くの場合、複数の業務が時間毎に細かく遂行される。その結果、一日の中で、ある文書を参照する時間が複数回生じる。そして、このような業務の遂行が毎日続く。
以上のような業務の遂行は、業務履歴テーブル２１２に逐一記録される。
このため、業務履歴テーブル２１２には、一日の中で同じ業務且つ同じ文書のレコードが複数記録される。
後述する日報作成、検索、そして文書情報の共有において、この重複を削除する処理が必要になる。
また、重複を削除する際には、「所要時間＿分」フィールド３０５内の時間を累積加算して、当該業務にどれくらい時間をかけたかを算出する処理が必要になる場合がある。
【００２０】
図５はアクティブウィンドウが切り替わった際に表示されるアシストウィンドウ５０２を示す図である。
図４（ａ）から図４（ｂ）のようにアクティブウィンドウが切り替わると、所定の条件を満たした場合に、図５（ａ）のようにアシストウィンドウ５０２がディスプレイ１０８内に表示される。
図５（ｂ）はアシストウィンドウ５０２を示す。
アシストウィンドウ５０２は日報プログラム２０５が所定の条件を検出したときにディスプレイ１０８に表示させるもので、使用者が業務の切り替えを入力する手間をできるだけ軽減するために設けられたものである。
つまり、本来なら、使用者は、新たに文書を作成したり、文書の参照や編集作業等を切り替えた時に、その文書が属する業務が変わっている場合には、その情報を日報プログラム２０５に通知しなければならない。しかし、このような作業は極めて煩雑であり、使用者にとって重い負担である。業務効率の悪化をも招来する。そこで、できるだけ業務の切り替えの際にキーボードのキー操作やマウスの操作等を軽減するために、当該文書の過去の業務を検索して候補を表示したり、業務の切り替えを行わないようにする等の工夫を行っている。
アシストウィンドウ５０２上には、「しばらく変更」ボタン５０３、「他の候補表示」ボタン５０４、「今だけ変更」ボタン５０５と「閉じる」ボタン５０６が設けられている。また、業務候補表示欄５０７と、現在の業務表示欄５０８がある。
【００２１】
使用者はアシストウィンドウ５０２が業務候補表示欄５０７に表示する業務候補を見て、該当するなら「しばらく変更」ボタン５０３を押す。つまり、これから業務候補表示欄５０７に表示されている業務に切り替えるなら、「しばらく変更」ボタン５０３を押す。
すると、現在の業務が業務候補表示欄５０７に表示されている業務に切り替わる。内部的には、日報プログラム２０５の内部に保持している、業務マスター２１１の該当業務レコードを指し示すポインタを書き換える。
その後、業務履歴テーブル２１２には現在の文書のレコードが追加される。
【００２２】
使用者はアシストウィンドウ５０２が業務候補表示欄５０７に表示する業務候補を見て、業務を切り替えることにはなるが、これから行おうとする業務が業務候補表示欄５０７に表示された業務候補ではないなら、「他の候補表示」ボタン５０４を押す。
すると、業務候補が別ウィンドウにて一覧表示される。図６は、その業務選択ウィンドウ６０２を示す。
使用者は、業務選択ウィンドウ６０２上に表示されている業務候補の一覧から、該当する業務を選択し、マウスでクリックするか、キーボードのリターンキーを押す等の選択操作を行う。
すると、現在の業務が選択した業務に切り替わる。内部的には、日報プログラム２０５の内部に保持している、業務マスター２１１の該当業務レコードを指し示すポインタを書き換える。
その後、業務履歴テーブル２１２には現在の文書のレコードが追加される。
【００２３】
使用者はアシストウィンドウ５０２が業務候補表示欄５０７に表示する業務候補を見て、業務を切り替えるつもりはないが、当該文書についてこれから行おうとする業務が業務候補表示欄５０７に表示された業務候補であるなら、「今だけ変更」ボタン５０５を押す。
すると、現在の業務はそのまま保持される。内部的には、日報プログラム２０５の内部に保持している、業務マスター２１１の該当業務レコードを指し示すポインタはそのまま維持される。
その後、業務履歴テーブル２１２には現在の文書のレコードが追加される。
【００２４】
使用者はアシストウィンドウ５０２が業務候補表示欄５０７に表示する業務候補を見て、
- 現在の業務表示欄５０８に表示されている現在の業務を切り替えるつもりはなく、
- 当該文書について、これから行おうとする業務が業務候補表示欄５０７に表示された業務候補ではない
場合は、「閉じる」ボタン５０６を押す。或は、「しばらく変更」ボタン５０３、「他の候補表示」ボタン５０４、「今だけ変更」ボタン５０５の、いずれか以外の「閉じる」ボタン５０６を含む、アシストウィンドウ５０２上の任意の箇所をクリックする。また、単にアシストウィンドウ５０２に対して何ら操作を行わず放置してもよい。この場合は１０秒経過するとアシストウィンドウ５０２は自動的に消去される。
すると、現在の業務はそのまま保持される。内部的には、日報プログラム２０５の内部に保持している、業務マスター２１１の該当業務レコードを指し示すポインタはそのまま維持される。
その後、業務履歴テーブル２１２には現在の文書のレコードが追加される。
【００２５】
図７及び図８は、日報プログラム２０５の動作を示すフローチャートである。
図７は通常の状態からアクティブウィンドウが切り替わった等の動作に対応する処理を示す。図８は、その後アシストウィンドウ５０２が表示されてから以降の動作に対応する処理を示す。
図７及び図８の各処理の終端は「ＲＥＴＵＲＮ」である。すなわち、日報プログラム２０５の処理がループ状に継続される処理であることを示す。
なお、以降の説明で「ログ記録」とは、業務履歴テーブル２１２に新規レコードを追加する動作を指す。
【００２６】
日報プログラム２０５が通常動作を開始すると（Ｓ７０１）、日報プログラム２０５は
アクティブウィンドウが切り替わったか（Ｓ７０２）、
同一ウィンドウ内で文書が切り替わったか（Ｓ７０３）、
操作者のキーボード操作又はマウス操作がなくなってから１０分以上経過したか（Ｓ７０４）の検出を続ける（Ｓ７０５）。つまり、何もイベントがなければ１０分間はＳ７０１からＳ７０５の間をループ処理している。
アクティブウィンドウが切り替わった場合（Ｓ７０２のＹ）は、当該ウィンドウのプログラムが、図示しない除外リストにないアプリケーションであるか否か検証する（Ｓ７０７）。例えば、ＯＳ全体の設定やプリンタの設定等を調整するユーティリティを起動した場合、これを業務としてログ記録してもあまり意味はないので、予め除外リストにログ記録しないアプリケーションソフトウェアを登録しておく。当該ウィンドウに掛かるプログラムが、除外リストにあるログ記録対象外アプリケーションである場合は、ログ記録を行わないので再び検出動作に戻る（Ｓ７０８）。
切り替わったアクティブウィンドウが除外リストにないアプリケーションである場合（Ｓ７０７のＹ）、同一ウィンドウ内で文書が切り替わった場合（Ｓ７０３のＹ）、１０分間のタイムアウトを迎えた場合（Ｓ７０４のＹ）は、文書の切り替わりが発生したと判断する。なお、１０分のタイムアウトが発生した場合は、日報プログラム２０５内部で「架空の文書」が発生したものと位置づける（Ｓ７０６）。これは、使用者がパソコンを触らなくなった時間をログ記録するために、空白の時間を記録するための「架空の文書」を設定するものである。
【００２７】
文書の切り替わりが発生したら（Ｓ７０７のＹ、Ｓ７０３のＹ、Ｓ７０４のＹ）、アクティブウィンドウのウィンドウタイトルを取得する（Ｓ７０９）。多くのアプリケーションプログラムでは、ウィンドウタイトルに文書名とアプリケーションプログラム名が表示されているので、これをログ記録すると、その日その時間に何を行ったのかが、概略ではあるが判る。つまり、このステップＳ７０９は、業務履歴テーブル２１２にログ記録するフィールドデータを取得する動作である。
次に、取得した文書名をキーにして、業務履歴テーブル２１２を検索する（Ｓ７１０）。
検索にヒットしなかったら（Ｓ７１１のＮ）、現在使用者が扱っている文書は、業務履歴テーブル２１２の記録にはない、新規の文書である。そこで、業務欄３０２に設定された業務に属する文書として、ログ記録される（Ｓ７１２）。すなわち、業務履歴テーブル２１２にレコードが追加される。
検索にヒットしたら（Ｓ７１１のＹ）、現在使用者が扱っている文書は、業務履歴テーブル２１２の記録にある、既存の文書である。そこで、次に当該文書は現在業務欄３０２に設定されている業務に属する文書であるか否か、一致の検証が行われる（Ｓ７１４）。検証の結果、過去の業務と全く同じであれば、これを維持するだけでよいので、検索にヒットしたレコードのまま、新たな日時にてログ記録される（Ｓ７１５）。すなわち、業務履歴テーブル２１２にレコードが追加される。なお、検索にヒットするレコードは複数得られる場合が多々あるので、その際は最新のレコードの業務との比較を行う。
レコードの追加が終わったら（Ｓ７１２、Ｓ７１５）、文書の切り替わりを検出する動作に戻る（Ｓ７１３）。
【００２８】
新規文書でなく、且つ現在の業務とも一致していない場合（Ｓ７１４のＮ）は、業務を切り替える必要が生じる可能性がある。そこで、検索にヒットしたレコードから、業務についてランク付けを行う。具体的には、複数ヒットしたレコードの、業務のフィールドのみを抽出して、ソート（sort: 並べ替え）し、同一の業務がある場合はその件数をカウントする。そして、最も多い業務を業務候補表示欄５０７に設定して、アシストウィンドウ５０２を表示し（Ｓ８１６）、使用者に対し、業務選択のための、マウス等の操作による入力を待つ（Ｓ８１７）。
日報プログラム２０５はアシストウィンドウ５０２を表示している間、使用者が
「しばらく変更」ボタン５０３を押したか（Ｓ８１８）、
「他の候補表示」ボタン５０４を押したか（Ｓ８１９）、
「今だけ変更」ボタン５０５を押したか（Ｓ８２０）、
「閉じる」ボタン５０６或はアシストウィンドウ５０２の任意の箇所へのクリックを行ったか（Ｓ８２１）、
或は１０秒のタイムアウトに至ったか（Ｓ８２２）、
検出を続ける（Ｓ８１７）。
【００２９】
使用者が「しばらく変更」ボタン５０３を押した場合（Ｓ８１８のＹ）は、日報プログラム２０５は、現在の業務を業務候補表示欄５０７に表示されている業務に切り替える（Ｓ８２３）。内部的には、日報プログラム２０５の内部に保持している、業務マスター２１１の該当業務レコードを指し示すポインタを、業務候補表示欄５０７に表示している内容に該当するレコードを指すべく書き換える。
次に、検索にヒットしたレコードの内容を一旦保持し、日時のフィールドだけ書き換えて、新たなレコードとして業務履歴テーブル２１２に追加する（Ｓ８２４）。
【００３０】
使用者が「他の候補表示」ボタン５０４を押した場合（Ｓ８１９のＹ）は、日報プログラム２０５は、検索ヒットした業務の一覧を設定して、業務選択ウィンドウ６０２を表示し、使用者の選択入力を待つ（Ｓ８２６）。使用者が変更したいと希望する業務を選択したら、日報プログラム２０５は、現在の業務を使用者によって選択された業務に切り替える（Ｓ８２７）。内部的には、日報プログラム２０５の内部に保持している、業務マスター２１１の該当業務レコードを指し示すポインタを、使用者によって選択された内容に該当するレコードを指すべく書き換える。
次に、検索にヒットしたレコードの内容を一旦保持し、日時と業務のフィールドを書き換えて、新たなレコードとして業務履歴テーブル２１２に追加する（Ｓ８２８）。
【００３１】
使用者が「今だけ変更」ボタン５０５を押した場合（Ｓ８２０のＹ）は、日報プログラム２０５は、現在の業務には一切タッチせず、検索にヒットしたレコードの内容を一旦保持し、日時のフィールドだけ書き換えて、新たなレコードとして業務履歴テーブル２１２に追加する（Ｓ８２４）。
【００３２】
使用者が「閉じる」ボタン５０６或はアシストウィンドウ５０２の任意の箇所へのクリックを行った場合（Ｓ８２１のＹ）或は１０秒のタイムアウトに至った場合（Ｓ８２２のＹ）は、日報プログラム２０５は、現在の業務には一切タッチせず、検索にヒットしたレコードの内容を一旦保持し、日時と業務のフィールドを書き換えて、新たなレコードとして業務履歴テーブル２１２に追加する（Ｓ８２９）。
なお、この動作は特に使用者がパソコンの操作を行わなくなった場合に、ステップＳ７０４から始まり、ステップＳ８２２を経由して、現在の業務内容にて「架空の文書」がログ記録されることとなる。使用者の手がパソコンから離れている時は、直前の業務を継続中である、という仮定をして、空白時間を記録する。
【００３３】
以上、４パターンの条件（Ｓ８１８のＹ、Ｓ８１９のＹ、Ｓ８２０のＹ、Ｓ８２１及びＳ８２２のＹ）にてログ記録が行われた後（Ｓ８２４、Ｓ８２８、Ｓ８２９）は、アシストウィンドウ５０２を閉じて最初のイベント検出ルーチンへ戻る（Ｓ８２５）。
なお、アシストウィンドウ５０２は使用者の作業を邪魔しないように、インアクティブウィンドウとして表示される。
【００３４】
操作者が一日の終わりに日報プログラム２０５のメインウィンドウ３０１を表示させて「工数結果表示」ボタンを押すと、日報プログラム２０５は、業務履歴テーブル２１２からその日一日の業務履歴に該当するレコードを検索した後、業務毎に集計して、日報を作成する。
【００３５】
日報プログラム２０５は、業務履歴テーブル２１２単体でも一日の業務を集計して、日報を作成することができる。
しかし、より精緻な日報を作成するには、使用者がパソコンから離れている間に行っている業務をも記録することが望ましい。
図９は業務履歴記録装置２０１の日報作成機能を説明する概略図である。
図９（ａ）は社内のネットワークを概略的に示す。
ＬＡＮ９０４には社員のパソコン９０２と、サーバ９０３が接続されている。
サーバ９０３はスケジューラ機能を提供するｗｅｂサーバであり、内部には複数の社員のパソコンから読み書きが可能なスケジューラテーブル９０５を備えている。
スケジューラテーブル９０５は社員単位で検索することにより、所定の日付における当該社員のスケジュールの記録を取り出すことができる。
【００３６】
社員のパソコン９０２に含まれている、日報プログラム２０５によって作成された業務履歴テーブル２１２から、その日一日の業務ログ（レコード群）を取り出す。そして、これをスケジューラテーブル９０５の当該日付における当該社員のスケジュール記録（レコード群）と合併処理する。このような手順で、ある社員の一日の業務記録を作成することができる。
図１０は、この日報作成の際の合併処理の様子をより詳細に説明するための概略図である。
一日分の業務履歴テーブル２１２は時間の流れを伴う記録となっている。
これに、スケジューラテーブル９０５の内容を上書きする。
具体的には、業務履歴テーブル２１２中の、スケジューラテーブル９０５に記録されている時間帯の記録を、スケジューラテーブル９０５の内容で置換する。
置換対象は多くの場合、「架空の文書」として記録されていた時間帯になる。
つまり、使用者が席を立ち、パソコンから離れている間、日報プログラム２０５は当該時間帯を「架空の文書」として記録している。
こうして作成した一日の業務記録は、業務毎に時間を集計して、重複を排除し、日報を作成する。
日報の形式は様々である。一番簡単なプレインテキスト形式でもよいし、表計算ソフトやデータベースソフト等に読み込みが容易にできるカンマ区切り形式テキストでもよい。出力形態をどのようにするかは設計的事項である。
【００３７】
以上のように蓄積した業務履歴テーブルは、日報の自動作成を実現する際に必要なテーブルである。
しかし、業務履歴テーブルに蓄積された情報は、単に日報を自動作成する用途に限られない。
業務履歴テーブルには、今まで作成したり参照したりした文書の情報が、業務と関連付けられた上で、時系列にて記録されている。更には、当該文書がどの程度の時間だけ参照されたのかも把握できる。
つまり、業務履歴テーブルに含まれている情報は、過去の文書の参照を容易にする。
例えば、過去の業務に類似する業務を受けた時、その過去の業務で作成したり参照したりした文書をもう一度見たい、と思うことが往々にしてある。
業務履歴テーブルに対して所定の検索等を行えば、業務名称や日付、参照時間の長さ等で絞込みができる。
文書名がフルパスのファイル名或はＵＲＩを含んでいるなら、直接当該文書を参照することができる。ｗｅｂブラウザのヒストリ機能をより便利にしたものと考えて頂ければよいだろう。
文書名だけの場合は、手作業で当該文書を探すことになるが、それでも当該業務に関する文書を集積するフォルダ（ディレクトリ）を探せばよいので、文書を探す作業の効率が極めてよくなる。
【００３８】
図１１は業務履歴テーブルを検索するツールの表示画面（ユーザインターフェース）である。
検索ツール１１０１は、業務履歴テーブルをユーザが指定した条件にて検索し、ヒットしたレコードを参照時間の長い順から列挙表示するプログラムである。
検索ツール１１０１の表示画面１１０２には、指定日入力欄１１０３と業務名入力欄１１０４と文書名入力欄１１０５が設けられている。
これらユーザが入力した検索条件にて、業務履歴テーブルを検索する。
なお、検索の技術は周知であるので、詳細は割愛する。
検索結果は、業務の名称と文書の名称が重複するレコード群の重複を除去すると共に、当該文書のアクセス時間を集計した上で、参照時間の長い順から列挙表示される。
【００３９】
業務履歴テーブルはそれ自身が文書へアクセスした履歴であることから、ｗｅｂブラウザのヒストリ機能を代用することも不可能ではない。文書名と共に文書のフルパス名或はＵＲＩが記録されていれば、ｗｅｂブラウザによって過去の文書を目的とする業務毎に見たい文書を参照することができる。この時、一日毎に同一業務名且つ同一文書名のレコードの重複を削除する処理が必要になる。
或は、もっと簡単に、業務履歴テーブル全体から同一業務名且つ同一文書名のレコードの重複を削除する処理を行った後、ｈｔｍｌ文書ファイルに変換し、ストレージ等に置いて、ｗｅｂブラウザからこれを参照することでも、同等の効果を奏する。
なお、重複を削除する範囲は、一日に限らない。一週間、一ヶ月、或は任意の日数等、ユーザが求める利便性に応じて、設定は自由である。
【００４０】
日報の記録は社員が上長に勤務内容を報告するものである。
しかし、業務履歴テーブル２１２が記録した内容は、それだけに留まる性質のものではない。
業務履歴テーブル２１２には、日々の業務で扱った文書が記録されている。業務履歴テーブル２１２は業務ログであると共に、扱った文書のログでもある。
そこで、扱った文書の情報を会社内で共有すれば、業務効率の向上に寄与することが期待できる。
同じ業務に携わる複数の社員同士の情報の共有がよりスムーズになる。
図１２は、業務履歴テーブル２１２から情報共有を行うシステムを概略的に示す。
図１２（ａ）は図９（ａ）と同様に、会社内のネットワークを模式的に示す図である。
複数の社員のパソコン１２０２及び１２０３には、それぞれ業務履歴テーブル１２１２及び１２１３が含まれている。
一方、サーバ１２０４は複数のユーザから参照可能なｗｅｂサーバであり、内部にはナレッジテーブル１２１４が保持されている。
【００４１】
社員ａのパソコン１２０２及び社員ｂのパソコン１２０３のそれぞれにて稼動している日報プログラム２０５は、文書のログ記録が発生したら、当該文書と業務の組み合わせがナレッジテーブルに記録済みであるか否かを見る。そして、未記録であれば、サーバ１２０４に対し、ナレッジテーブル１２１４への登録を行うべく、当該文書と業務のデータを送信する。サーバ１２０４は受信した文書と業務のデータを、送信元の担当者名を追加して、ナレッジテーブル１２１４に追加記録する。
こうして作成されるナレッジテーブル１２１４の概略を図１２（ｂ）に示す。
業務履歴テーブルと大きく異なる点は、担当者のフィールドがある点と、各レコードは業務と文書の組み合わせについて重複を排除している点である。なお、重複を排除するために日時に関する情報を省いているが、これは最初に文書を扱った日時を記録してもよい。
このナレッジテーブル１２１４を基に、社員は業務遂行の際に参照したい文書を迅速に見つけることができる。
なお、ナレッジテーブル１２１４へ情報をアップロードする際には、予め業務履歴テーブル２１２から重複を削除する処理が加わっている。この点が、図１１の検索ツール１１０１における表示処理と異なる点である。
【００４２】
このナレッジテーブル１２１４は、既存のｗｅｂブラウザの履歴機能を大幅に強化したものと考えることもできる。もし、ナレッジテーブル１２１４に記録されている文書がｗｅｂブラウザで参照したｗｅｂ文書であるならば、業務遂行の際に参照したｗｅｂ文書を、業務をキーとして絞り込むことが容易にできることとなる。
ナレッジテーブル１２１４をどのような形態で実現するかは全くの任意である。
データベースのテーブルとして作成し、個々の社員がデータベースソフトでこれを読み込んで参照するだけでなく、表計算ソフトのワークシートファイルでも同等のことが実現できるだろう。
図１１にて詳述した、個人ベースの情報活用と同様に、ｗｅｂブラウザのヒストリの代用として、利用することも可能である。
また、ｗｅｂサーバのｃｇｉとして実装すると便利であろう。
ファイルサーバの特定ディレクトリに文書のフルパス名或はＵＲＩへのショートカット、或はシンボリックリンクを記録する形式であってもよいだろう。
ＬＤＡＰ（Lightweight Directory Access Protocol：ＴＣＰ／ＩＰネットワークでディレクトリデータベースサービスを実現するプロトコル）サーバを設け、これに各文書へのフルパス名或はＵＲＩ等を記録する形式であってもよい。
極端な例では、レコード及び各フィールドの記入のルールさえきちんと定めれば、プレーンテキストファイルであってもよい。
また、ナレッジテーブル１２１４の参照方法も任意である。
【００４３】
本実施形態には、以下のような応用例が考えられる。
（１）上述の実施形態では文書名の取得にウィンドウタイトルを取得していた。この代わりに、またはこれに追加して、文書の本当のファイル名、或はＵＲＩ等を記録することができる。これら情報の取得には様々な方法が考えられる。ｗｅｂブラウザならアプリケーションプログラムが備えるアプリケーションインターフェース等を呼び出すこととなるだろう。対象がファイルであるなら、ＯＳが備えるファイルシステムをフックして、ファイルシステムが現在排他制御（ロック）しているファイル名を取得する等も考えられる。
（２）ステップＳ７０４の１０分、及びステップＳ８２２の１０秒のタイムアウトは、使用者の要求に応じてその時間長を変更することができる。
（３）ＯＳは必ずしもマルチタスクでなければならない訳ではない。ＯＳはシングルタスクで、アプリケーションプログラム自身がマルチタスクの機能を備える場合でも、本実施形態と同様の機能や環境を実現できる。
また、実施形態ではＷｉｎｄｏｗｓを前提に説明したが、ＵＮＩＸ（登録商標）の系列に属するＯＳ等でも、上述の実施形態と同等の機能や環境を実現できる。
（４）図７及び図８のタイムアウト検出処理であるステップＳ７０４及びＳ８２２は、最初の１０分間を超えてスクリーンセーバが稼動していれば、これを検出して常に架空文書を設定（Ｓ７０６）し、現在の業務を業務履歴テーブルに追加する（Ｓ８２９）処理をしてもよい。
つまり、スクリーンセーバが稼動しているときは、使用者がパソコンに触れていないことは自明であるので、ステップＳ８２９の処理を行うものである。
【００４４】
本実施形態においては、日報プログラムを開示した。日報プログラムは、主にデスクワークに従事する会社員等が使用するパソコンにて、使用者が扱った文書を、対応する業務と関連付けてログ記録する。「常駐アプリケーションプログラム」ともいえる。
日報プログラムが備える、ログ記録した内容を一日の終わりに集計する機能によって、使用者は容易に日報を作成できる。上長への日報提出に際して正確な内容で報告ができるだけでなく、日報作成の手間を大幅に省力化できる。
更に、ログ記録した文書の情報を業務の名称で検索する仕組みを用意することで、過去の業務の資産を現在の業務の遂行に迅速且つ容易に役立てることができるので、業務効率の大幅な改善が期待できる。
また、ログ記録した文書の情報を仕事仲間と共有する仕組みを用意することで、共同作業による業務遂行において情報を共有でき、業務効率の大幅な改善が期待できる。
【００４５】
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含むことは言うまでもない。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施形態にかかる業務履歴記録装置のブロック図及び外観図である。
【図２】業務履歴記録装置を機能的に見たブロック図である。
【図３】日報プログラムのメインウィンドウ画面である。
【図４】アクティブウィンドウの指定が変わることにより、業務履歴テーブルにレコードが追加される有り様を示す概略図である。
【図５】アクティブウィンドウが切り替わった際に表示されるアシストウィンドウを示す図である。
【図６】業務選択ウィンドウを示す図である。
【図７】日報プログラムの動作を示すフローチャートである。
【図８】日報プログラムの動作を示すフローチャートである。
【図９】業務履歴記録装置の日報作成機能を説明する概略図である。
【図１０】日報作成の際の合併処理の様子を説明するための概略図である。
【図１１】検索プログラムの表示画面を示す図である。
【図１２】業務履歴テーブルから情報共有を行うシステムを示す概略図である。
【符号の説明】
【００４７】
１０１…パソコン、１０８…ディスプレイ、２０１…業務履歴記録装置、２０２…ＯＳ、２０３…第１プログラム、２０４…第２プログラム、２０５…日報プログラム、２０６…入力フォーカス指定部、２０７…入力部、２０８…表示制御部、３０１…メインウィンドウ、３０２…業務欄、３０３…履歴欄、５０２…アシスト
ウィンドウ、６０２…業務選択ウィンドウ
【図１】
2008108202.tif 000003
【図２】
2008108202.tif 000004
【図４】
2008108202.tif 000005
【図７】
2008108202.tif 000006
【図８】
2008108202.tif 000007
【図９】
2008108202.tif 000008
【図１０】
2008108202.tif 000009
【図１１】
2008108202.tif 000010
【図１２】
2008108202.tif 000011
【図３】
2008108202.tif 000012
【図５】
2008108202.tif 000013
【図６】
2008108202.tif 000014