(57)【要約】１つまたは２つ以上のスプレッドシートのデータを監視および監査するためのシステム、サーバー、およびコンピュータプログラムを開示する。システムは、スプレッドシートデータを含むファイルを格納可能なファイルストアと、データベースと、監視手段とを備えている。監視手段は、ファイルストア内のスプレッドシートデータの変化を検出し、およびその変化をデータベースに記録するようになっている。また、１つまたは２つ以上の文書中のプログラムコードを監視および監査するためのシステム、サーバー、およびコンピュータプログラムを開示する。本発明のこれらの形態は、典型的な実施例では組み合わせとして提供される。
2007522575.tif 000002
【特許請求の範囲】
【請求項１】
１つまたは２つ以上のスプレッドシートのデータを監視および監査するためのシステムであって、スプレッドシートデータを含むファイルを格納し得るファイルストアと、データベースと、監視手段とを備え、該監視手段は前記ファイルストア内のスプレッドシートデータの変更を検出し、その変更を前記データベースに記録するようにしたことを特徴とするシステム。
【請求項２】
前記ファイルストア内のスプレッドシートデータが変更される度毎に変更が検出および記録されることを特徴とする請求項１に記載のシステム。
【請求項３】
前記ファイルストア内のファイルを監視し、および前記ファイルストア内のファイルの変更を検出すると動作を開始するようにしたファイル監視手段を備えたことを特徴とする請求項１または２に記載のシステム。
【請求項４】
前記監視手段は、前記ファイルストア内のファイル（最新ファイル）とそのファイルの前バージョンとを比較するようにした比較手段を備えたことを特徴とする請求項１乃至３のいずれかに記載のシステム。
【請求項５】
前記比較手段は最新ファイルの各セルを前バージョンの対応セルと比較し、およびセルの内容が変更したと判断すればその変更の記録を作成することを特徴とする請求項４に記載のシステム。
【請求項６】
前記記録には変更の性質を分類するデータが含まれていることを特徴とする請求項５に記載のシステム。
【請求項７】
前記変更の性質は：データ追加、データ変更、データ削除、関数追加、関数変更、関数削除、データから関数へ、関数からデータへ、セルエラー、関数再計算、スクリプト変更、外部参照変更、指定範囲変更、リンク変更、パスワード変更、シート追加、シート削除、シート名称変更、スプレッドシート名称変更、スプレッドシート削除、スプレッドシート追加、のうちの１つまたは２つ以上として分類されていることを特徴とする請求項６に記載のシステム。
【請求項８】
前記記録には、変更がなされた時間を示すタイムスタンプが含まれていることを特徴とする請求項５乃至７のいずれかに記載のシステム。
【請求項９】
前記記録には、変更をしたユーザーを特定するデータが含まれていることを特徴とする請求項５乃至８のいずれかに記載のシステム。
【請求項１０】
監視対象のファイルは、前記比較手段によって処理される前に分析され、およびXMLに変換されることを特徴とする請求項５乃至９のいずれかのコーンに記載のシステム。
【請求項１１】
前記監視手段は、前記監視手段が監視するようになっているファイルを生成するネットワーククライアントとは非同期に動作するようにしたことを特徴とする請求項１乃至１０のいずれかに記載のシステム。
【請求項１２】
１つまたは２つ以上の文書中のプログラムコードを監視および監査するためのシステムであって、文書を含むファイルを格納し得るファイルストアと、データベースと、監視手段とを備え、該監視手段はファイルストア内の文書に含まれたコードの変更を検出し、前記データベースにその変更を記録するようにしたことを特徴とするシステム。
【請求項１３】
前記文書は、スプレッドシートと、ワードプロセッサーファイルと、データベースファイルとのうちの１つまたは２つ以上を含んでいることを特徴とする請求項１に記載のプログラムコードを監視および監査するためのシステム。
【請求項１４】
請求項１乃至１２のいずれかに記載のプログラムコードを監視および監査するためのシステムであって、１つまたは２つ以上のスプレッドシートのデータを監視および監査するためのシステムと組み合わされたことを特徴とするシステム。
【請求項１５】
請求項１乃至１２のいずれかに記載のシステムの監視手段を形成し、コンピュータハードウェアにおいて実行可能なコンピュータプログラム製品。
【請求項１６】
１つまたは２つ以上のスプレッドシートのデータを監視および監査するためにネットワークに接続し得るサーバーであって、前記ネットワークはスプレッドシートデータを含むファイルを格納し得るファイルストアとデータベースとを備え、前記サーバーは前記ファイルストア内のスプレッドシートデータの変更を検出しおよび前記データベースにその変更を記録するようにしたことを特徴とするサーバー。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スプレッドシート及び他文書におけるデータ及びコードの変更の監査及びトラッキングに関する。
【背景技術】
【０００２】
スプレッドシートアプリケーションは、ユーザーが２次元および３次元配列データを操作することを可能にするコンピュータプログラムである。スプレッドシートアプリケーションのユーザーには２次元配列のセルが表示され、それぞれのセルには数値データ、テキスト、ソフトウェアオブジェクト、または数式が格納されるようになっている。３次元スプレッドシートは、一定の順序を有するこのような配列を複数備えている。セルが数式を含む場合は、数式が定義する計算の結果が通常表示される。数式は、その入力変数の中に、同じ表または他の表の他のセルの値を含むことができる。もちろん他のセルの値は、当該他のセルが含む数式によって計算される結果であっても構わない。このようなセル間の結合は、いくらでも複雑にすることができる。
【０００３】
スプレッドシートは、個人のデータの迅速な計算を行うために用いられるツールとして開発された。これに対し、組織の運営に重要なデータ及び機能は、従来、特定の管理された動作をこれらデータ上で実行するためにプログラマーが開発してきたコンピュータアプリケーションをサポートするデータベースに保存されるものであった。パーソナルコンピュータのパワーの拡大に伴い、コンピュータスプレッドシートは数多くの組織で遍在的になった。従って実際、多くの組織はこのような従来のデータ管理モデルに従わなくなってきている。かつて、プログラムされたデータベースではできない計算を行うために急いで作られたスプレッドシートが、今ではその作成者の業務に中心的な位置を占める必須のツールとなり、実際、ビジネスの運営においても中心的な位置を占めるようになってきている。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
現状においては、ユーザーにとってスプレッドシートの魅力である機能は、組織全体の視点から見ると歓迎すべきものとはいえない。スプレッドシートは簡単に変更することができる。しかし、スプレッドシートのセルの相互接続性は、そのような変更がどのような結果をもたらすか、予測が難しいということを意味する。これは、スプレッドシートが他の者によって作成されたかもしれない別のスプレッドシートに参照されている場合、特に顕著である。さらに、特定の時点におけるスプレッドシートの内容を特定することができないため、スプレッドシートの内容から導き出された結論の背景を辿ることができないことがある。さらに、現代のパーソナルコンピュータのパワーをもってすれば、スプレッドシートアプリケーションのスクリプト言語でいくらでも複雑な計算、動作を行うことが現実的に可能である。しかし、このようなコードは、従来のプログラム言語のプログラマーにはおなじみのバージョン制御および変更トラッキングを受けない。
【０００５】
明らかに、このような状況は大きな組織にとって容認できるものではない。何故なら、データおよび機能の品質管理が不可能であり、さらに財政不正管理を防ぐために必要な、監査可能なビジネス行為（口座の準備など）をビジネス内に構築するのにも妨げとなるからである。
【０００６】
本発明の目的は、どんな特定の時点におけるスプレッドシートの状態でも再現でき、かつ状態間の変化を質問できるような方法で、スプレッドシートにおいて行われる動作を記録するメカニズムを提供することである。本発明の更なる目的は、スプレッドシートの魅力である本来の柔軟性を失わないようにすることである。
【課題を解決するための手段】
【０００７】
第１の形態に基づく本発明は、１つまたは複数のスプレッドシートのデータを監視および監査するためのシステムを提供し、このシステムは、スプレッドシートデータを含むファイルを格納し得るファイルストアと、データベースと、監視手段とを備え、その監視手段は、ファイルストア内のスプレッドシートデータの変更を検出し、その変更をデータベースに記録するようにする。
【０００８】
データベースに適当なデータを格納することにより、個別のスプレッドシートになされた変更全ての完全な履歴を作成することができる。
ファイルストアは、本発明の様々の実施形態において様々な形態を取り得、様々な要素を含むことができる。例えば、ファイルストアは、ファイルサーバーとワークステーションコンピュータとのうちの１つまたは２つ以上を含むことができる。ファイルストアの要素は、様々な地点に散在しローカルエリアまたはワイドエリアネットワークリンクによって互いに接続されていてもよい。同様に、監視手段も、ローカルエリアまたはワイドエリアのネットワークリンクを用いてファイルストアにアクセスしてもよい。監視手段は、ファイルストア内から監視対象のスプレッドシートを探すファイル位置探索モジュールを含むことが最も好ましい。
【０００９】
典型的な実施例では、監視手段はファイルストア内のファイル（最新ファイル）とそのファイルの前バージョンとを比較するよう動作する比較手段を有する。これによりシステムは、同じファイルの保存されたバージョンとその後のバージョンとの違いを決定することができる。特に、比較手段は、最新ファイルの各セルを前バージョンの該当セルと比較し、もしセルの内容が変更されたと決定されれば、その変更の記録を生成してもよい。このようにして、変更をセル毎に記録することができる。このようにして作成された記録は、変更の性質を特徴づけるデータを含むことが最も望ましい。このような記録を検査することにより、スプレッドシートファイルになされた変更の性質を質的に理解することができる。変更の性質は：データ追加、データ変更、データ削除、関数追加、関数変更、関数削除、データから関数へ、関数からデータへ、セルエラー、関数再計算、スクリプト変更、外部参照変更、指名範囲変更、リンク変更、パスワード変更、シート追加、シート削除、シート名称変更、スプレッドシート名称変更、スプレッドシート削除、スプレッドシート追加、のうちの１つまたは２つ以上に分類することができる。実施例の全てがこれらの分類の全てを有するわけではなく、実施例によっては上記リストにない分類を含んでいてもよい。記録には、いつ変更がなされたかを示すタイムスタンプや変更を行ったユーザーの身元など、追加データが含まれていてもよい。
【００１０】
ここで、二進数フォーマットで格納されたファイルを互いに比較するのが生来困難であることはよく知られている。そこで、本発明のより効果的な実施例においては、監視されているファイルは分析され、テキストベースのフォーマット（XMLなど）等、より処理しやすいフォーマットに変換される。XMLにはさらに、処理を行うツールが多々ある、ならびにテキストベースのシリアル形式及び階層的形式の双方で表示可能である、といった利点もある。
【００１１】
スプレッドシートアプリケーションは、計算ツールとしての発展と並行して、これまでになく強力なスクリプト能力も統合してきた。これにより、今ではスプレッドシートアプリケーションは、強力なプログラミング環境とみなされるまでに発展している。例えば、マイクロソフトエクセルの場合、プログラミング言語であるVisual Basic for Applications (VBA)が高度に複雑なプログラムの実現を可能にするスクリプト言語として備えられている。スプレッドシートデータと同様、これはユーザーに、迅速かつ柔軟にプログラムを作成する能力を提供する。しかしこの柔軟性は、ソフトウェアの開発に対して管理がほぼないことを意味している。特に、バージョンコントロールやソースコード管理のシステムがないため、プログラムコードの変更が何故なされたのか、後から確認することは不可能である。
【００１２】
本発明のさらなる目的は、ユーザーに与えられた柔軟性を限定することなく、スプレッドシートなどの文書に含まれたコードを管理する手段を提供することにある。
別の形態における本発明は、１つまたは複数の文書内のプログラムコードを監視及び監査するためのシステムを提供し、システムは、文書を含むファイルを格納することができるファイルストアと、データベースと、監視手段とを有し、その監視手段は、ファイルストア内の文書に含まれたコードの変更を検出し、そのような変更をデータベースに記録するようにする。
【００１３】
スプレッドシートファイルに関連する実施例のように、データベースはコードになされた変更の履歴を含み、コードの一定期間における発展及び進化を監視及び監査することができるようにする。
【００１４】
本発明の本形態の実施例は、コードを含む様々なタイプの文書に適用可能である。例えば、これら文書にはスプレッドシート、ワードプロセッサー文書、データベースファイルなどが含まれてもよい。
【００１５】
多くの場合、本発明のこれら両形態は、共通のシステムによって提供されている。
別の形態における本発明は、コンピュータのハードウェアで実行可能であり、本発明の第１または第２形態の監視手段を形成するコンピュータプログラム製品を提供する。
さらに別の形態における本発明は、１つまたは複数のスプレッドシートのデータを監視及び監査するためにネットワークに接続するためのサーバーであって、ネットワークは、スプレッドシートデータを含むファイルを格納することができるファイルストアと、データベースとを有し、このサーバーは、ファイルストア内のスプレッドシートデータの変更を検出し、そのような変更をデータベースに記録するようにする。
【００１６】
このようなサーバーは、本発明の第１形態における監視手段を構成してもよい。
【００１７】
上記全ての場合において、本発明の実施例の動作によりクライアントの動作に干渉することは望ましくなく、本実施例の存在はクライアントのユーザーにはできる限り透明であることが望ましい。このため、本発明の実施例は、ネットワークのクライアントとは非同期に動作することがきわめて望ましい。特に、本実施例がファイルストアに格納されたファイルを処理する間、クライアントの動作が遮断されるべきではない。
【発明を実施するための最良の形態】
【００１８】
図１に示すように、本実施例は既存のビジネスデスクトップおよびネットワーク環境と共に機能するシステムである。動作にあたっては、システムはネットワーク内のスプレッドシートファイルの存在を検出し、ビジネスが管理上の目的で選択したファイルを取り込む。次いでシステムは、これらファイルの内容のデータベースを作成する。最初のデータベースが作成されると、システムは管理されているファイルにおきるイベントを探すべく、ネットワークを監視する。スプレッドシートのファイル保存を（排他的にではなく）含む特定のトリガーイベントがおきると、システムはファイルのコピーを検索し、それを要素パーツに分解し、これをデータベースに保持されているオリジナルと比較する。システムは、データベースになされた変更を保存する。ファイルが名称変更された場合、削除された場合、または移動された場合は、それもデータベースに記録する。システムは、データベースが中央で収集したデータをビジネスが閲覧できるようにしている。このシステムは、既存の技術を使ったポータルを用いることによって、データを収集し分析することができる。
【００１９】
図２に示すように、このシステムは、複数のネットワークドメインにアクセスし、管理対象のファイル維持のための作業を行うことができる。システムは、ファイルの内容を拡張可能マークアップ言語、 Extensible Markup Language (XML)での表現に変換し、このフォーマットを用いて比較を行う。システムは、ファイルの保存、ファイル変更のトラッキング及び検出及び取り込みに際しては、もっとも細かいレベルで作業を行う。データベースはこの大変細かいレベルにおいて入力されている。ビジネスユーザーは、自身のレポートツールや分析の選択をデータに適用することができる。本発明は、データに何が行われるかについて限定するものではない。
【００２０】
図３に示すように、システムはアクセスが許されたドメインにて機能することができる。システムは、ファイル、イベントおよびイベント後バージョンのファイルを探知して、データベースを作成する。
【００２１】
図４に示すように、システムはターゲットのネットワーク環境をスキャンし、監視されるべきファイル全てのリストを引き出す。本発明では、前回以降新たに作成されたファイルの存在、削除されたファイルの存在を特定する。このスキャンにより、自動ソフトウェアツールまたはビジネスが処理開始（図１）やファイル維持（図２）のためにファイルの取り込みをトリガーすることができるレポートを作成する。
【００２２】
実施例のより詳しい記述
本発明の本実施例は、コンピュータのネットワーク内で実施される。このネットワーク内には、任意多数のクライアントがあり、これらクライアントはパーソナルコンピュータであり、ユーザーはこれらパーソナルコンピュータでスプレッドシートアプリケーションを実行してスプレッドシートを展開し、使用することができる。ユーザーは、個人のスプレッドシートファイルをこれらコンピュータに格納してもよい。ファイルは、ネットワークにリンクされたどのドライブからでも監視することができる。いつもではないが通常、重要なスプレッドシートは中央ファイルサーバーに置かれている。またネットワークには監視サーバーが置かれており、ユーザーがスプレッドシートに実行した活動を監視し、および記録する役目を負っている。
【００２３】
図５に示すように、組織内のコンピュータネットワークは任意多数のクライアントコンピュータ１０を有している。各クライアントコンピュータ１０はユーザーに用いられて、スプレッドシートを含むパーソナル文書を作成する。典型的には、各クライアントコンピュータは、スプレッドシートに関連する個人的嗜好と作業習慣とを有する１人のユーザーによって使用される。
【００２４】
各クライアントコンピュータ１０は、ネットワーク１２に接続されている。これは、図示のため、図１には統合されたネットワークとして示されている。しかし、実際の実施例では、多数のサブネット、およびローカルエリアネットワークリンクとワイドエリアネットワークリンクとを有することが多い。
【００２５】
ネットワーク１２には、１つまたは２つ以上のファイルサーバー１４が接続されている。ネットワークのポリシーにより、ユーザーはファイルを自身のクライアントマシン１０若しくはファイルサーバー１４に保存することができる。クライアントコンピュータ１０によるローカル保存と、ファイルサーバー１４とで、多様なファイルストアを形成している。
【００２６】
監視サーバー１６は、ネットワーク１２に接続され、オペレーターのポリシーによってファイルストア全体または一部のみにアクセスできるようになっている。本発明によって提供されるプロセスが行われるのは、監視サーバー１６の内部である。監視サーバー１６の構成は、ネットワーク全体の性質に大きく依存する。監視サーバー１６は、クライアント１０で実行されるソフトウェアの動作の遅れが最小になるように、タスクを処理し得なければならない。監視サーバー１６は、場合によっては単一のマシンでもよいし、場合によってはサーバー４４で複数文書のパラレル処理が可能なように制御されたマシンのクラスターであってもよい。これらに関する詳細は後述される。
【００２７】
図６において、ファイルストア内のスプレッドシートファイル全体が２０で示されている。図６の他のアイテムは、監視サーバー１６の論理コンポーネントである。これらのコンポーネントは、ウォッチングサービス２２と、コントローラサービス２４と、メタ格納データベース２６と、非同期フレームワーク３０とを含み、非同期フレームワーク３０は監視サービス３２及びプロセスサービス３４を有する。システム全体の動作は、タスクメッセージを種々の論理コンポーネントの間で回すことにより制御される。これにより、更なるマシンをクラスターに追加し、タスクメッセージをそれらの間で回すことによって、システムの規模を拡大することが可能であるという利点がある。さらに、監視サーバーがスプレッドシートファイル２０をクライアントと非同期に処理することが可能となり、これによりそのユーザーのスプレッドシートプログラムの動作との干渉を最小限に留めることができる。
【００２８】
ウォッチングサービス２２の機能は、スプレッドシートファイル２０を監視し、それらのうちのいずれかが変更されたときにイベントを立ち上げるものである。変更が検出されると、ファイルが読まれ、その現在の内容と前回ファイルが読まれたときのファイル内容とが比較され、そして特定された変更は次いでデータベースに格納される。こうして、ファイルストアのファイルが変更される度に、記録が生成される。従って、ファイルストアにあるままのファイルから始め、記録された変更を逆に適用することによって、その展開途中の以前の状態のファイルにさかのぼることができる。ウォッチングサービス２２を備えることにより、ファイルの変更時に動作をトリガーするためのフックをスプレッドシートプログラムに備えておく必要がなくなる。
【００２９】
総じて、この実施例はMicrosoftのExcelを用いて形成されたスプレッドシート処理に関する。このアプリケーションは、ファイル名拡張子が一般に“XLS”であるファイル（一般に“XLSファイル”と呼ばれる）にスプレッドシートを格納する。これらは、バイナリファイルである。しかし、本発明の原理は、スプレッドシートデータがどのように格納されるかに依らず、他のアプリケーションで作成されたスプレッドシートにも適用可能である。バイナリファイルについて内容分析を行うのが難しいことはよく知られるところであるので、本実施例ではXLSファイルをまず拡張可能マークアップ言語、Extensible Markup Language (XML)形式による表現に転換するアプローチをとっている。他のスプレッドシートプログラム、特にOpenOffice.org Calcは、XMLをネイティブのファイルフォーマットとして使っている。従って、ファイル処理にあたって変換のステップを省くことができる。
上述のように、この実施例はコンピュータのクラスターに対して実施される。サーバーが行う動作は、個別のタスクとして行われる。タスクオブジェクトが形成されると、タスクキューに置かれる。タスクがキューの先頭にくると、クラスター内の最初に処理可能となるマシンによって処理が行われる。
【００３０】
図７は、全てのタスクが導出される基となる親クラスの構造を図示するものである。各タスクオブジェクトにより４つの手法が示されている。それらは、操作タスク、開始タスク、実行タスク、終了タスクである。操作タスクは、非同期フレームワークがオブジェクトを開始するための方法である。またこれは、トレーシングコードへのログ記入も行う。タスクが処理中に用いる状態変数を含むトランザクション状態オブジェクトTransaction State Object（TSO）も入力として受け付ける。開始タスク手法は、実行のコンフィギュレーション変数を設定する。実行タスクは、タスクを完了するための全ての機能を行う。終了タスクは、終了動作を全て行う。
【００３１】
図７に図示されたクラスから導出される主要クラス自身が、図８に示されている。これらは、ファイルストアからのファイル検索、ファイルの内容の変換と比較、マクロの処理、データベース内のストアの操作、及び変更情報の操作を行うためのタスクオブジェクトを含む。これらクラスにつき、簡単に述べる。
ファイル検索：このクラスは、ファイルをターゲットの変更位置からコピーする役目を果たす。
【００３２】
変換：このクラスは、XLSファイルを取得し、ファイルをXMLワークシートに解体する役目を果たす。変換クラスは、全てのデルタオペレーションを行うために比較クラスとマクロクラスとを呼び出す。このクラスは、指名された領域を全て解体し、変更を検出する。またこのクラスは、比較及びマクロ分解タスクを非同期フレームワークに変更する。
比較：このクラスは、最新時点での状態を計算及び分類し、「デルタ」と呼ばれる、XMLの２時点間の変更の記載を行う。このクラスは、全種類の変更および全種類のセルを分類し、デルタ変更をそれぞれ関連する変更で関連付ける。このクラスは、以下のアルゴリズムを用いる。
【００３３】
ポインタを前XMLファイルと現ファイルのXMLファイルとから最初のセルに置く。
【００３４】
２つのセルのセルマトリックス位置（行位置、列位置）を比較する。もし現セル位置と前セル位置とが同じであれば、セルの値及び数式とを比較して違いがないかをみる。この比較によって、変更の種類が特定され、および分類される。もしセルが数式を含んでいれば、そのセルは“数式”の種類によりタグが付けられ、これにより固定値を含むセルと数式評価の結果同じ値が表示されるセルとが明確に区別される。セル変化の違いも確立されている。整数値の場合、差は２つの整数の差である。ストリングの差は、各ストリングの長さに基づいて決められる。日付の差は、日数に基づいて計算される。現セル位置が前セル位置よりも大きい場合、「データ追加」の記録がデルタXMLファイルに追加される。もし前セル位置が現セル位置よりも大きい場合、「データ削除」の記録がデルタXMLファイルに追加される。
【００３５】
ファイルのセルマトリクス位置の最も小さいセルから次のセルを取得し、セルマトリクス位置を比較することによって比較処理を再び始める。
【００３６】
この処理を、前および現XMLファイルが共にファイルの最後まで読まれるまで繰り返す。
【００３７】
この処理が終わると、デルタXMLファイルができる。このファイルは、現時点と前時点との間の違いを分類したものが含まれている。
【００３８】
大量ロード：このクラスは、変換／比較タスクによって生成されたデルタファイルを大量挿入する役目を果たす。
【００３９】
XML格納：このクラスは、文書の変換により生成されたXMLファイルを保存する役目を果たす。このクラスは、生成された現XMLファイルを圧縮し、前ファイルを除去して新しいファイルをデータ保存部にアップロードする。
【００４０】
マクロ解体：このクラスは、２時点における２つのプログラムスクリプトの差を計算する。取り込まれたスクリプトは、既存のソースコード制御システム４０に統合されてもよい。
【００４１】
リミットチェッカー：このクラスは、データストア内の変更の種類を監視し、特定のターゲットに対して警告を発する。
【００４２】
本実施例にウェブベースのインターフェースが備えられ、ユーザーがそこからデータベース内のデータにアクセスできる場合、これによってスプレッドシート動作の全てを監視できる中心ポイントを提供する。監視サーバー１６において実行される処理は、データベースに適用されるクエリーを生成し、これらクエリーの結果を基に、ウェブサーバー３８によってウェブブラウザに提供されるページが生成される。クエリーの範囲と生成されるレポートとには、本質的に制限はない。これらは、システムの特定のユーザーの特定の要求に応じることができる。また。同じインターフェースを、システムの構成と維持とに用いることもできる。ウェブベースのインターフェースをデータベースに設置することは日常的に行われる業務であり、ここではこれ以上の細かい説明は行わない。
【００４３】
さらに、クエリーの結果に基づいて警告を生成することもできる。例えば管理者は、特定のスプレッドシートのある部分につき、一連の禁止行為を規定してもよく、または、特定のセルの値が予め定めた範囲の外に移動したときに警告で知らせるようにしてもよい。システムは、警告が発生されるべきことを検出したときに、電子メールメッセージを生成し、そして予め定めたアドレスに送信してもよい。
【００４４】
他のウェブベースインターフェースによって提供される主要スクリーンのいくつかにつき、簡単に述べる。
【００４５】
図１６は、どのファイルが監視されているかをユーザーが見ることができ、およびファイルがリンクされている場合にはリンクされたファイルのヒエラルキーをユーザーが見ることができるスクリーンを示す。
【００４６】
図１７は、スプレッドシート内の特定のセルの値が、時間を経るにつれどのように変遷したかを、ユーザーが監視することができるスクリーンを示す。このスクリーンでは、値はグラフによって示されている。
【００４７】
図１８は、時間を経るにつれスプレッドシートになされた変更の要旨をユーザーに示すスクリーンを示す。各変更の性質及び変更を行った人が特定されている。
【００４８】
図１９は、本発明のソースコード制御の形態を示している。図１９では、右手側の画面が現バージョンのプログラムコードの一部を表示し、左手側の画面は前バージョンのコードを表示している。
【００４９】
MicrosoftおよびExcelは、マイクロソフト・コーポレーションの商標である。
【図面の簡単な説明】
【００５０】
本発明の実施例を例示として、添付の図面を参照にして詳述する。ここで
【図１】本発明の実施例の概略を示す高レベル模式図である。
【図２】図１の実施例のデータ維持プロセスを示す図である。
【図３】図１の実施例のファイルのキャプチャプロセスを示す図である。
【図４】図１の実施例の部分を示す図である。
【図５】本発明が実施された組織内におけるコンピュータネットワークの全体図である。
【図６】本発明の実施例の主要機能部を示すブロック図である。
【図７】他のタスクのクラスが導出される基となる、基本クラスを示す図である。
【図８】種々のタスクのクラスを示す図である。
【図９】ファイル検索クラスの動作を示す図である。
【図１０】変換クラスの動作を示す図である。
【図１１】ファイル検索クラスの動作を示す図である。
【図１２】マクロ分解クラスの動作を示す図である。
【図１３】比較クラスの動作を示す図である。
【図１４】大量ロードクラスの動作を示す図である。
【図１５】XML保存クラスの動作を示す図である。
【図１６】本実施例の動作中に生成される種々のディスプレイのスクリーン図である。
【図１７】本実施例の動作中に生成される種々のディスプレイのスクリーン図である。
【図１８】本実施例の動作中に生成される種々のディスプレイのスクリーン図である。
【図１９】本実施例の動作中に生成される種々のディスプレイのスクリーン図である。
【図１】
2007522575.tif 000003
【図２】
2007522575.tif 000004
【図３】
2007522575.tif 000005
【図４】
2007522575.tif 000006
【図５】
2007522575.tif 000007
【図６】
2007522575.tif 000008
【図７】
2007522575.tif 000009
【図８】
2007522575.tif 000010
【図９】
2007522575.tif 000011
【図１０】
2007522575.tif 000012
【図１１】
2007522575.tif 000013
【図１２】
2007522575.tif 000014
【図１３】
2007522575.tif 000015
【図１４】
2007522575.tif 000016
【図１５】
2007522575.tif 000017
【図１６】
2007522575.tif 000018
【図１７】
2007522575.tif 000019
【図１８】
2007522575.tif 000020
【図１９】
2007522575.tif 000021
【国際調査報告】
2007522575.tif 000022
2007522575.tif 000023
2007522575.tif 000024