(57)【要約】      （修正有）【課題】例えば、表計算アプリケーションにおけるセルという概念がない帳票データを対象としても、複数のデータ範囲を任意に指定することで、指定された複数のデータ範囲の関係と、該帳票における世代間の関係から、適切な演算を指示することができ、指示された演算処理を実行させる。【解決手段】帳票データ内の集計対象となるデータ項目のデータ範囲が複数選択されている場合に、選択されているデータ範囲のデータ項目から演算可能な第１の演算候補を演算候補テーブルから抽出し、その第１の演算候補から複数世代の帳票間で演算可能な第２の演算候補を決定してクライアント装置に表示し、演算候補が選択されると、演算処理が行われて、クライアント装置に演算結果が表示される。【選択図】図３
2010271958.tif 000002
【特許請求の範囲】
【請求項１】
帳票データの表示を行うクライアント装置と、該帳票データを記憶する帳票サーバとが通信可能な帳票表示システムであって、  前記帳票サーバは、  複数の世代の帳票データと、当該帳票データ内の集計対象となるデータ項目と該データ項目ごとのデータ範囲の座標値との関係を示す項目座標テーブルと、当該集計対象となる複数のデータ範囲のデータ間の演算処理に対する演算候補と計算式の関係を示す演算候補テーブルとを記憶する記憶手段と、  前記クライアント装置からの要求に応じて、前記記憶手段に格納されている帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを、前記クライアント装置に返送する返送手段と、  前記クライアント装置から送信される演算要求に含まれる複数の世代間の帳票の演算が必要な演算候補に対する演算処理を、前記クライアント装置で選択された帳票データにおけるデータ範囲のデータと、当該帳票データと異なる世代の帳票データにおけるデータ範囲のデータとを用いて実行する演算処理手段と、  前記演算処理手段により実行された演算処理の結果を前記クライアント装置に送信する処理結果送信手段とを備え、  前記クライアント装置は、  前記帳票サーバから、前記帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを受信する受信手段と、  前記受信手段で受信されて表示部に表示された帳票データ内の集計対象となるデータ項目のデータ範囲の選択と、演算候補の表示指示とを受け付ける受付手段と、  前記受付手段で受け付けたデータ範囲と前記項目座標テーブルの座標値とに基づいて、選択されているデータ範囲のデータ項目を特定する特定手段と、  前記特定手段により特定された複数のデータ項目と、前記演算候補テーブルとに基づいて、前記特定された複数のデータ項目のデータ間の演算処理に対する第１の演算候補を抽出し、かつ、第１の演算候補を用いた前記複数の世代の帳票データにおける第２の演算候補を決定して、前記第２の演算候補をメニュー画面に表示する演算候補抽出手段と、  前記演算候補抽出手段により前記メニュー画面に表示された前記第２の演算候補の中から選択された１つの前記第２の演算候補と、当該第２の演算候補に対する演算処理で必要なデータ項目に対する前記複数の世代の帳票データにおけるそれぞれのデータ範囲のデータに対して実行するための演算指示とを含む演算要求を、前記帳票サーバに送信する演算要求手段と、  前記帳票サーバから受信する、前記演算要求に対する演算処理の結果を前記表示部に表示する処理結果表示手段とを備えることを特徴とする帳票表示システム。
【請求項２】
前記受付手段により３つ以上のデータ範囲の選択を受け付けた場合、前記演算候補抽出手段は、当該３つ以上のデータ範囲に対するデータ項目のデータ間で演算可能な全ての演算候補を前記演算候補テーブルから抽出することを特徴とする請求項１に記載の帳票表示システム。
【請求項３】
前記クライアント装置の演算要求手段は、前記演算候補抽出手段により抽出された演算候補の中から選択された１つの演算候補と、当該演算候補に対する演算処理で必要なデータ項目に対する前記選択されたデータ範囲の座標値とを、前記帳票サーバに送信し、  前記帳票サーバの演算処理手段は、前記クライアント装置で選択されたデータ範囲の座標値と前記項目座標テーブルとから、当該データ範囲のデータを特定して、該特定された複数のデータ範囲のデータに対して、前記クライアント装置から送信される演算候補に対する演算処理を実行することを特徴とする請求項１に記載の帳票表示システム。
【請求項４】
帳票データの表示を行うクライアント装置と通信可能な該帳票データを記憶する帳票サーバとして機能する情報処理装置であって、  複数の世代の帳票データと、当該帳票データ内の集計対象となるデータ項目と該データ項目ごとのデータ範囲の座標値との関係を示す項目座標テーブルと、当該集計対象となる複数のデータ範囲のデータ間の演算処理に対する演算候補と計算式の関係を示す演算候補テーブルとを記憶する記憶手段と、  前記クライアント装置からの要求に応じて、前記記憶手段に格納されている帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを、前記クライアント装置に返送する返送手段と、  前記クライアント装置から送信される演算要求に含まれる複数の世代間の帳票の演算が必要な演算候補に対する演算処理を、前記クライアント装置で選択された帳票データにおけるデータ範囲のデータと、当該帳票データと異なる世代の帳票データにおけるデータ範囲のデータとを用いて実行する演算処理手段と、  前記演算処理手段により実行された演算処理の結果を前記クライアント装置に送信する処理結果送信手段を備えることを特徴とする情報処理装置。
【請求項５】
帳票データを記憶する帳票サーバと通信可能なクライアント装置として機能する情報処理装置であって、  前記帳票サーバから、前記帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを受信する受信手段と、  前記受信手段で受信されて表示部に表示された帳票データ内の集計対象となるデータ項目のデータ範囲の選択と、演算候補の表示指示とを受け付ける受付手段と、  前記受付手段で受け付けたデータ範囲と前記項目座標テーブルの座標値とに基づいて、選択されているデータ範囲のデータ項目を特定する特定手段と、  前記特定手段により特定された複数のデータ項目と、前記演算候補テーブルとに基づいて、前記特定された複数のデータ項目のデータ間の演算処理に対する第１の演算候補を抽出し、かつ、第１の演算候補を用いた前記複数の世代の帳票データにおける第２の演算候補を決定して、前記第２の演算候補をメニュー画面に表示する演算候補抽出手段と、  前記演算候補抽出手段により前記メニュー画面に表示された前記第２の演算候補の中から選択された１つの前記第２の演算候補と、当該第２の演算候補に対する演算処理で必要なデータ項目に対する前記複数の世代の帳票データにおけるそれぞれのデータ範囲のデータに対して実行するための演算指示とを含む演算要求を、前記帳票サーバに送信する演算要求手段と、  前記サーバ装置から受信する、前記演算要求に対する演算処理の結果を前記表示部に表示する処理結果表示手段とを備えることを特徴とする情報処理装置。
【請求項６】
帳票データの表示を行うクライアント装置と通信可能な該帳票データを記憶する帳票サーバとして機能する情報処理装置で実行されるプログラムであって、  前記情報処理装置を、  複数の世代の帳票データと、当該帳票データ内の集計対象となるデータ項目と該データ項目ごとのデータ範囲の座標値との関係を示す項目座標テーブルと、当該集計対象となる複数のデータ範囲のデータ間の演算処理に対する演算候補と計算式の関係を示す演算候補テーブルとを記憶する記憶手段と、  前記クライアント装置からの要求に応じて、前記記憶手段に格納されている帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを、前記クライアント装置に返送する返送手段と、  前記クライアント装置から送信される演算要求に含まれる複数の世代間の帳票の演算が必要な演算候補に対する演算処理を、前記クライアント装置で選択された帳票データにおけるデータ範囲のデータと、当該帳票データと異なる世代の帳票データにおけるデータ範囲のデータとを用いて実行する演算処理手段と、  前記演算処理手段により実行された演算処理の結果を前記クライアント装置に送信する処理結果送信手段として機能させることを特徴とするコンピュータで実行可能なプログラム。
【請求項７】
帳票データを記憶する帳票サーバと通信可能なクライアント装置として機能する情報処理装置で実行されるプログラムであって、  前記情報処理装置を、  前記帳票サーバから、前記帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを受信する受信手段と、  前記受信手段で受信されて表示部に表示された帳票データ内の集計対象となるデータ項目のデータ範囲の選択と、演算候補の表示指示とを受け付ける受付手段と、  前記受付手段で受け付けたデータ範囲と前記項目座標テーブルの座標値とに基づいて、選択されているデータ範囲のデータ項目を特定する特定手段と、  前記特定手段により特定された複数のデータ項目と、前記演算候補テーブルとに基づいて、前記特定された複数のデータ項目の
データ間の演算処理に対する第１の演算候補を抽出し、かつ、第１の演算候補を用いた前記複数の世代の帳票データにおける第２の演算候補を決定して、前記第２の演算候補をメニュー画面に表示する演算候補抽出手段と、  前記演算候補抽出手段により前記メニュー画面に表示された前記第２の演算候補の中から選択された１つの前記第２の演算候補と、当該第２の演算候補に対する演算処理で必要なデータ項目に対する前記複数の世代の帳票データにおけるそれぞれのデータ範囲のデータに対して実行するための演算指示とを含む演算要求を、前記帳票サーバに送信する演算要求手段と、  前記サーバ装置から受信する、前記演算要求に対する演算処理の結果を前記表示部に表示する処理結果表示手段として機能させることを特徴とするコンピュータ実行可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関し、特に、帳票データから複数の任意の範囲を選択し、その選択された複数の範囲内に属するデータに対して適切な演算を指示することを可能とする技術に関するものである。
【背景技術】
【０００２】
フォームに対して入力データ情報を重ね合わせて画像としてディスプレイ表示したり、印刷を行う電子帳票システムにおいて一般に利用される帳票は、その帳票の設計時に帳票設計者が必要と考えた部分に各明細の合計値等が予め表示出力されている。  
【０００３】
しかしながら、その予め出力された合計値等以外の計算結果を一般の端末利用者が取得するためには、１．計算値を取得したい部分の選択、２．その部分のテキストファイル等への出力、３．表計算アプリケーションへの読み込み、４．表計算アプリケーション上での計算式の設定、といった手順の操作が必要となり、非常に煩雑である。  
【０００４】
表計算アプリケーションにおいては、フォーム（スプレッドシート）と入力データ（数値）の表示関係は上記電子帳票システムと一見似ているが、表計算アプリケーションのセル同士の演算はセルに含まれる数値情報同士をセル単位で演算するものであり、電子帳票システムで作成される合成後の表示用帳票データにおいてはセルのような概念が利用できないため、電子帳票システムでは、簡単に領域を特定して領域内の数値の演算が行うことが困難であった。  
【０００５】
また、帳票上に計算結果を取得したいデータが連続した位置にない場合や、ページをまたいで計算結果を取得したい場合などには、表計算アプリケーションで読み込み後、データを整形するなどの必要が生じてしまう。  
【０００６】
その煩雑さの軽減のため、表計算アプリケーションにおけるセルという概念がない帳票データを対象としても、範囲を任意に指定してその範囲内に含まれる情報に対する演算処理を可能とする方法が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−１６５４５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１では、データ範囲は複数選択することも可能であるが、１つのデータ範囲に関する計算をそれぞれ行うものであるため、合計や平均の算出というように計算方法が限られてしまう。  
【０００９】
そのため、帳票上の他の領域（データ範囲）を用いた複雑な計算、例えば売上げと原価から利益率計算をすることができない。また、計算式の候補は固定的に決まっており、計算式の候補を登録することもできない。  
【００１０】
そして、従来の技術では、このような複数のデータ範囲を用いた計算を更に、複数の電子帳票データ（上記帳票のこと）にまたがって計算することができない。例えば、「売り上げ金額」と「原価」という複数の項目を用いた計算により「原価率」に関して、更に複数世代間の演算である、「原価率の前月比」がそれにあたる。  
【００１１】
そこで、本発明は、例えば、表計算アプリケーションにおけるセルという概念がない帳票データを対象としても、複数のデータ範囲を任意に指定することで、指定された複数のデータ範囲の関係と該帳票における世代間の関係から、適切な演算を指示することができ、指示された演算処理を実行させることを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、帳票データの表示を行うクライアント装置と、該帳票データを記憶する帳票サーバとが通信可能な帳票表示システムであって、前記帳票サーバは、複数の世代の帳票データと、当該帳票データ内の集計対象となるデータ項目と該データ項目ごとのデータ範囲の座標値との関係を示す項目座標テーブルと、当該集計対象となる複数のデータ範囲のデータ間の演算処理に対する演算候補と計算式の関係を示す演算候補テーブルとを記憶する記憶手段と、前記クライアント装置からの要求に応じて、前記記憶手段に格納されている帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを、前記クライアント装置に返送する返送手段と、前記クライアント装置から送信される演算要求に含まれる複数の世代間の帳票の演算が必要な演算候補に対する演算処理を、前記クライアント装置で選択された帳票データにおけるデータ範囲のデータと、当該帳票データと異なる世代の帳票データにおけるデータ範囲のデータとを用いて実行する演算処理手段と、前記演算処理手段により実行された演算処理の結果を前記クライアント装置に送信する処理結果送信手段とを備え、前記クライアント装置は、前記帳票サーバから、前記帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを受信する受信手段と、前記受信手段で受信されて表示部に表示された帳票データ内の集計対象となるデータ項目のデータ範囲の選択と、演算候補の表示指示とを受け付ける受付手段と、前記受付手段で受け付けたデータ範囲と前記項目座標テーブルの座標値とに基づいて、選択されているデータ範囲のデータ項目を特定する特定手段と、前記特定手段により特定された複数のデータ項目と、前記演算候補テーブルとに基づいて、前記特定された複数のデータ項目のデータ間の演算処理に対する第１の演算候補を抽出し、かつ、第１の演算候補を用いた前記複数の世代の帳票データにおける第２の演算候補を決定して、前記第２の演算候補をメニュー画面に表示する演算候補抽出手段と、前記演算候補抽出手段により前記メニュー画面に表示された前記第２の演算候補の中から選択された１つの前記第２の演算候補と、当該第２の演算候補に対する演算処理で必要なデータ項目に対する前記複数の世代の帳票データにおけるそれぞれのデータ範囲のデータに対して実行するための演算指示とを含む演算要求を、前記帳票サーバに送信する演算要求手段と、前記帳票サーバから受信する、前記演算要求に対する演算処理の結果を前記表示部に表示する処理結果表示手段とを備える。  
【００１３】
また、本発明は、前記受付手段により３つ以上のデータ範囲の選択を受け付けた場合、前記演算候補抽出手段は、当該３つ以上のデータ範囲に対するデータ項目のデータ間で演算可能な全ての演算候補を前記演算候補テーブルから抽出する。  
【００１４】
また、本発明は、前記クライアント装置の演算要求手段は、前記演算候補抽出手段により抽出された演算候補の中から選択された１つの演算候補と、当該演算候補に対する演算処理で必要なデータ項目に対する前記選択されたデータ範囲の座標値とを、前記帳票サーバに送信し、前記帳票サーバの演算処理手段は、前記クライアント装置で選択されたデータ範囲の座標値と前記項目座標テーブルとから、当該データ範囲のデータを特定して、該特定された複数のデータ範囲のデータに対して、前記クライアント装置から送信される演算候補に対する演算処理を実行する。  
【００１５】
また、本発明は、帳票データの表示を行うクライアント装置と通信可能な該帳票データを記憶する帳票サーバとして機能する情報処理装置であって、複数の世代の帳票データと、当該帳票データ内の集計対象となるデータ項目と該データ項目ごとのデータ範囲の座標値との関係を示す項目座標テーブルと、当該集計対象となる複数のデータ範囲のデータ間の演算処理に対する演算候補と計算式の関係を示す演算候補テーブルとを記憶する記憶手段と、前記クライアント装置からの要求に応じて、前記記憶手段に格納されている帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを、前記クライアント装置に返送する返送手段と、前記クライアント装置から送信される演算要求に含まれる複数の世代間の帳票の演算が必要な演算候補に対する演算処理を、前記クライアント装置で選択された帳票データにおけるデータ範囲のデータと、当該帳票データと異なる世代の帳票データにおけるデータ範囲のデータとを用いて実行する演算処理手段と、前記演算処理手段により実行された演算処理の結果を前記クライアント装置に送信する処理結果送信手段を備える。  
【００１６】
また、本発明は、帳票データを記憶する帳票サーバと通信可能なクライアント装置として機能する情報処理装置であって、前記帳票サーバから、前記帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを受信する受信手段と、前記受信手段で受信されて表示部に表示された帳票データ内の集計対象となるデータ項目のデータ範囲の選択と、演算候補の表示指示とを受け付ける受付手段と、前記受付手段で受け付けたデータ範囲と前記項目座標テーブルの座標値とに基づいて、選択されているデータ範囲のデータ項目を特定する特定手段と、前記特定手段により特定された複数のデータ項目と、前記演算候補テーブルとに基づいて、前記特定された複数のデータ項目のデータ間の演算処理に対する第１の演算候補を抽出し、かつ、第１の演算候補を用いた前記複数の世代の帳票データにおける第２の演算候補を決定して、前記第２の演算候補をメニュー画面に表示する演算候補抽出手段と、前記演算候補抽出手段により前記メニュー画面に表示された前記第２の演算候補の中から選択された１つの前記第２の演算候補と、当該第２の演算候補に対する演算処理で必要なデータ項目に対する前記複数の世代の帳票データにおけるそれぞれのデータ範囲のデータに対して実行するための演算指示とを含む演算要求を、前記帳票サーバに送信する演算要求手段と、前記サーバ装置から受信する、前記演算要求に対する演算処理の結果を前記表示部に表示する処理結果表示手段とを備える。  
【００１７】
また、本発明は、帳票データの表示を行うクライアント装置と通信可能な該帳票データを記憶する帳票サーバとして機能する情報処理装置で実行されるプログラムであって、前記情報処理装置を、複数の世代の帳票データと、当該帳票データ内の集計対象となるデータ項目と該データ項目ごとのデータ範囲の座標値との関係を示す項目座標テーブルと、当該集計対象となる複数のデータ範囲のデータ間の演算処理に対する演算候補と計算式の関係を示す演算候補テーブルとを記憶する記憶手段と、前記クライアント装置からの要求に応じて、前記記憶手段に格納されている帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを、前記クライアント装置に返送する返送手段と、前記クライアント装置から送信される演算要求に含まれる複数の世代間の帳票の演算が必要な演算候補に対する演算処理を、前記クライアント装置で選択された帳票データにおけるデータ範囲のデータと、当該帳票データと異なる世代の帳票データにおけるデータ範囲のデータとを用いて実行する演算処理手段と、前記演算処理手段により実行された演算処理の結果を前記クライアント装置に送信する処理結果送信手段として機能させる。  
【００１８】
また、本発明は、帳票データを記憶する帳票サーバと通信可能なクライアント装置として機能する情報処理装置で実行されるプログラムであって、前記情報処理装置を、前記帳票サーバから、前記帳票データと、該帳票データで用いられる項目座標テ
ーブルと、該帳票データで用いられる演算候補テーブルとを受信する受信手段と、前記受信手段で受信されて表示部に表示された帳票データ内の集計対象となるデータ項目のデータ範囲の選択と、演算候補の表示指示とを受け付ける受付手段と、前記受付手段で受け付けたデータ範囲と前記項目座標テーブルの座標値とに基づいて、選択されているデータ範囲のデータ項目を特定する特定手段と、前記特定手段により特定された複数のデータ項目と、前記演算候補テーブルとに基づいて、前記特定された複数のデータ項目のデータ間の演算処理に対する第１の演算候補を抽出し、かつ、第１の演算候補を用いた前記複数の世代の帳票データにおける第２の演算候補を決定して、前記第２の演算候補をメニュー画面に表示する演算候補抽出手段と、前記演算候補抽出手段により前記メニュー画面に表示された前記第２の演算候補の中から選択された１つの前記第２の演算候補と、当該第２の演算候補に対する演算処理で必要なデータ項目に対する前記複数の世代の帳票データにおけるそれぞれのデータ範囲のデータに対して実行するための演算指示とを含む演算要求を、前記帳票サーバに送信する演算要求手段と、前記サーバ装置から受信する、前記演算要求に対する演算処理の結果を前記表示部に表示する処理結果表示手段として機能させる。
【発明の効果】
【００１９】
本発明によれば、例えば、表計算アプリケーションにおけるセルという概念がない帳票データを対象としても、複数のデータ範囲を任意に指定することで、指定された複数のデータ範囲の関係と該帳票における世代間の関係から、適切な演算を指示することができ、指示された演算処理を実行させることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態に係る帳票表示システムの構成を示す図である。
【図２】帳票サーバのハードウェア構成を示す図である。
【図３】本発明の一実施形態に係る帳票表示システムによる帳票データの表示と演算処理の基本的な処理フローを示す図である。
【図４】帳票データで範囲選択されたときのメニュー画面の表示例である。
【図５】帳票データでメニュー画面から世代間の計算候補を含む計算候補が選択されて、計算候補一覧が表示される表示例である。
【図６】帳票データで選択された範囲のデータに基づく演算処理が行われた結果の表示例である。
【図７】演算候補テーブルの一例である。
【図８】項目座標テーブルの一例である。
【図９】帳票サーバによる演算候補・座標値の送信処理の処理フローを示す図である。
【図１０】クライアントＰＣによる演算候補の抽出・表示処理の処理フローを示す図である。
【図１１】クライアントＰＣによる演算要求処理の処理フローを示す図である。
【図１２】帳票サーバによる計算処理の処理フローを示す図である。
【図１３】クライアントＰＣに表示される計算対象の帳票を確定するためのユーザインタフェース画面の一例である。
【図１４】参照帳票テーブルの一例である。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の好適な実施形態を、添付図面を参照しながら詳細に説明する。  
【００２２】
図１は、本発明の一実施形態に係る電子帳票システム（帳票表示システムとも呼ぶ）の構成を示す図である。尚、図１のネットワーク上の各種端末の接続構成は飽くまでも一例であり、用途や目的に応じて様々な構成をとり得ることは言うまでもない。  
【００２３】
帳票サーバ１００はネットワークを介してクライアントＰＣ１０１、１０２と通信接続可能な送受信機能を有している。例えば、システムの一例としては、帳票サーバ１００は帳票データの管理、生成機能を有するだけでなく、生成した帳票に関するデータの出力を行うためにＷｅｂサーバとしての機能を有し、クライアントＰＣ１０１や１０２は汎用のブラウザアプリケーションを有する構成とすることが考えられる。この場合、帳票サーバ１００は、帳票フォームと帳票データを合成して生成した帳票の出力用データを、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）とスタイルシートの組み合わせ等によるマークアップランゲージを用いた表示データとして生成するための機能を有し、クライアントＰＣ１０１や１０２の有するブラウザからの画像ページ（ＨＴＭＬ等のファイル）に対するＧｅｔ要求に応じて送信するものである。  
【００２４】
クライアントＰＣ１０１は、帳票の閲覧および計算結果の取得を行う者が使用するクライアント端末である。クライアントＰＣ１０１は、ネットワーク１０３を介して、帳票サーバ１００とデータの送受信が可能である。  
【００２５】
クライアントＰＣ１０２は、帳票の閲覧および計算結果の取得を行う者が使用するクライアント端末である。クライアントＰＣ１０２は、ネットワーク１０３を介して、帳票サーバ１００とデータの送受信が可能である。  
【００２６】
上述のように実施態様としては、クライアントＰＣ１０１や１０２はネットワーク１０３上において、例えば、ＴＣＰ／ＩＰプロトコルやＨＴＴＰプロトコルを用いて汎用ブラウザから帳票サーバ１００のＷｅｂサーバ機能に対して通信可能に構成することが考えられる。このように、本発明の帳票表示システムは、帳票データの表示を行うクライアント装置（クライアントＰＣ１０１、１０２）と、該帳票データを記憶する帳票サーバ１００とが通信可能な構成となっている。  
【００２７】
次に、図１の帳票サーバ１００のハードウェア構成について、図２を用いて説明する。図２は、本実施形態に係る電子帳票システムの各種端末のハードウェア構成を示す図である。  
【００２８】
図２において、ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。また、ＲＯＭ２０３或いは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステム（ＯＳ）や、各サーバあるいは各クライアントの後述する各種機能を実現するためのプログラムが記憶されている。  
【００２９】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時待避領域等として機能する。  
【００３０】
入力コントローラ２０５は、入力部２０９からの入力を制御する。この入力部２０９としては、特に、サーバやクライアント等の端末では、キーボード、マウス等のポインティングデバイスが挙げられる。また、印刷装置等では、タッチパネル、ボタン、スイッチ等が挙げられる。  
【００３１】
表示コントローラ２０６は、表示部２１０の表示を制御する。この表示部２１０としては、例えば、ＣＲＴや液晶等が挙げられる。  
【００３２】
外部メモリコントローラ（ＭＣ）２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ２１１へのアクセスを制御する。加えて、各サーバあるいは各クライアントの各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ２１１としては、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）（Ｒ）、スマートメディア等が挙げられる。  
【００３３】
通信Ｉ／Ｆコントローラ２０８は、ネットワーク１０３を介して外部機器との通信制御処理を実行する。  
【００３４】
本発明を実現するためのプログラム２１２は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラム２１２が用いる帳票ファイル２１３は外部メモリ２１１に格納されており、これらについての詳細な説明は後述する。また、図示省略したが、帳票ＩＤから一意に特定される演算候補テーブル（図７）と項目座標テーブル（図８）の組と、参照帳票テーブル（図１４）もまた、外部メモリ２１１に格納されている。  
【００３５】
本発明を実現するためのプログラム２１２は、１つの実施態様としてＷｅｂサーバ機能を含むことは言うまでもない。この場合、ＣＰＵ２０１は、帳票の出力データを生成した後にブラウザで閲覧可能なＪＰＥＧやＧＩＦ等の画像フォームとテキスト情報に変換し、予め設定されているタグなどの情報と共にブラウザ表示用の画像ページを生成するものである。  
【００３６】
クライアントＰＣ１０１のハードウェア構成も帳票サーバ１００も同様である。しかし、プログラム２１２には帳票を表示するためのクライアントモジュールが含まれ、帳票サーバ１００のものとは異なる。また、帳票ファイル２１３は表示するために必要な部分のみを帳票サーバ１００との通信により受信するもので、クライアントＰＣ１０１が元来保持していることはないものである点が異なる。同様に、クライアントＰＣ１０１には、演算候補テーブルおよび項目座標テーブルおよび参照帳票テーブルも保持されていない。  
【００３７】
クライアントＰＣ１０１では、帳票の表示に伴って、後述する矩形破線による範囲選択や帳票上への付箋の添付などが可能である。  
【００３８】
帳票ファイル２１３は、帳票の表示用データであり、単独または複数のファイルによって構成され、単数または複数のページを含有している。帳票サーバ１００の内部においては、複数の帳票ファイル２１３のうち同一種類のものをグループ化して管理しており、それぞれの帳票ファイル２１３はそのグループの中の世代と呼ばれる。  
【００３９】
次に、電子帳票システムにおける表示データ計算結果表示の基本的な処理フローについて、図３を用いて説明する。図３は、本実施形態に係る電子帳票システムによる表示データ計算結果表示の基本的な処理フローを示す図である。  
【００４０】
上述したように、クライアントＰＣ１０１、クライアントＰＣ１０２及び帳票サーバ１００は、ネットワーク１０３を介して相互に接続されている。そして、クライアントＰＣ１０１及びクライアントＰＣ１０２は、帳票サーバ１００から提供される各種操作画面を介して、電子帳票表示に係る各種処理を実行する。その一例について、以下に説明する。  
【００４１】
まず、ステップＳ３０１においてクライアントＰＣ１０１は、帳票サーバ１００から提供される操作画面（図示省略）を介して、帳票ＩＤ情報等からなる帳票を特定する情報を帳票サーバ１００へ送信する。  
【００４２】
帳票サーバ１００は、ステップＳ３０２において、ステップＳ３０１でクライアントＰＣ１０１が送信した帳票を特定する情報を受信し、受信した帳票ＩＤ情報に該当する帳票ファイル２１３抽出し、抽出した帳票ファイル２１３の帳票データをクライアントＰＣ１０１へ送信する。また、抽出した帳票ファイルには、本処理の前に予め帳票フィールドにデータが挿入されているものとする。この帳票データの作成手法は既知の技術であるため、説明は省略する。  
【００４３】
ステップＳ３０３において、帳票サーバ１００は、受け取った帳票ＩＤ情報から一意に特定される演算候補テーブルと、各項目の座標値を示す項目座標テーブルとを、クライアントＰＣ１０１に送信する。このステップＳ３０３の処理の詳細は、図９を用いて後述する。  
【００４４】
クライアントＰＣ１０１は、ステップＳ３０４において、帳票サーバ１００から、帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを受信する。そして、クライアントＰＣ１０１は、帳票サーバ１００から送信された帳票ファイル２１３の帳票データ部分を使用して表示部２１０に帳票の表示を行う。  
【００４５】
なお、ステップＳ３０１からステップＳ３０４の処理は、複数回繰り返し行われてもよい。すなわち、ステップＳ３０１の帳票選択処理は、任意のタイミングで、操作者が新たな電子帳票データを追加表示することにより実行することができる。  
【００４６】
そして、ユーザ（操作者）は、ポインティングデバイス等を操作することにより表示された帳票の任意の領域を選択することができる。領域選択方法の具体例しては
、図６に示すように、マウスのドラッグ操作等により表示される矩形破線６０１で所望の範囲を囲むことにより、当該範囲を選択することができる（以下では、このように選択された範囲を選択範囲と称す）。なお、選択範囲は１ページ内に複数選択することができ、また、電子帳票データ（帳票）を複数開いて表示しているのであれば、複数世代の帳票間でそれぞれデータ範囲を選択することも可能である。  
【００４７】
クライアントＰＣ１０１は、ステップＳ３０５において、ユーザによるマウス操作により、データ範囲が選択された状態で、右クリック（メニュー表示指示）がなされたかを判断する。つまり、帳票サーバ１００から受信されて表示部に表示された帳票データ内の集計対象となるデータ項目のデータ範囲の選択と、演算候補の表示指示とを、クライアント装置１０１は操作者から受け付けることになる。この指示を受け付けない限りは処理をループさせ、別の処理を行うことになるが、別の処理については本発明とは関連がないので説明は省略する。このデータ範囲が選択された状態で右クリックの指示がなされたことを判定した場合には、ステップＳ３０６に処理を進める。なお、データ範囲の選択は、１つの帳票に対して複数箇所指定でき、かつ、異なる帳票に対してそれぞれデータ範囲を選択することも可能である。  
【００４８】
ステップＳ３０６では、演算候補の抽出と、表示処理を行う。この処理の詳細については、図１０を用いて後述する。  
【００４９】
ステップＳ３０６でクライアントＰＣ１０１の表示部２１０に演算候補が表示されると、ステップＳ３０７では、ユーザによるマウス操作により、メニューに表示されている演算候補の１つが選択され、実行指示がなされたかを判断する。この指示を受け付けない限りは処理をループさせ、別の処理を行うことになるが、別の処理については本発明とは関連がないので説明は省略する。メニューに表示されている演算候補の１つが選択され、実行指示がなされたことを判定した場合には、ステップＳ３０８に処理を進める。  
【００５０】
ステップＳ３０８では、クライアントＰＣ１０１は、データ範囲と演算処理の実行要求を帳票サーバ１００に送信する。この処理の詳細については、図１１を用いて後述する。  
【００５１】
ステップＳ３０９では、帳票サーバ１００は、計算処理を行う。この処理の詳細については、図１２を用いて後述する。  
【００５２】
ステップＳ３１０では、クライアントＰＣ１０１は、帳票サーバ１００から計算結果を取得し、表示部２１０に計算結果を表示する。図６は、計算結果が表示されている画面の一例である。  
【００５３】
次に、電子帳票システムの帳票サーバ１００における演算候補と座標値の送信処理について、図９を用いて説明する。  
【００５４】
まずステップＳ９０１では、帳票サーバ１００は、クライアント装置１０１から帳票ＩＤ情報等からなる帳票を特定する情報を取得（受信）する。続いて、ステップＳ９０２では、帳票サーバ１００は、取得した帳票ＩＤに対応する演算候補テーブルと項目座標テーブルを特定し、それぞれのテーブルにアクセスする。ここで、演算候補テーブルと項目座標テーブルについて説明する。  
【００５５】
図７は、演算候補テーブルの一例を示す図である。演算候補テーブルは、電子帳票データを一意に特定するための帳票ＩＤに対応して用意されており、各演算候補テーブルには、演算候補、対応項目、計算式の各項目を含んでいる。演算候補とは、演算することが可能な候補のことであり、対応項目とは、その演算候補の演算処理を行うために必要なデータ項目を示している。そして、計算式は、その演算候補の演算を行うために必要なデータ項目を用いた計算式を示している。例えば、演算候補の「合計」を求めるには、対応項目として、「売り上げ金額」または「原価」または「諸費用」が対応しており、計算式は、選択された項目を合計（ＳＵＭ）することが設定されている。つまり、「売り上げ金額」のデータ範囲内で操作者によりある範囲のデータが選択されると、選択された範囲内の数値データの合計値が求められることを表している。  
【００５６】
また、演算候補の「原価率」を求めるためには、対応項目として、「売り上げ金額」と「原価」の両方が必要であることが示されている。そして、計算式は、「原価」の合計値を、「売り上げ金額」の合計値で割ることで求められることが設定されている。  
【００５７】
また、演算候補の「前月比」は、「原価率」、「荒利率」、「純利益」、「利益率」の各演算候補が算出可能であることを対応条件としている。すなわち、これらの各演算候補が算出可能である場合には、演算候補として更に「前月比」の演算候補が表示されることになる。具体的には、「前月比（原価率）」、「前月比（荒利率）」、「前月比（純利益）」、「前月比（利益率）」という表記で表示される。なお、対応条件はこれに限るものでなくてもよく、例えば、「合計」、「平均」が演算候補として存在している場合に、「前月比（合計または平均）」を演算候補として表示するようにしてもよい。  
【００５８】
また、本実施形態では、１つの帳票において選択されている複数のデータ範囲項目を用いた演算候補を表示するときに、更に同一帳票の別世代の帳票を用いた世代間の演算候補（例えば、前月比や、前年比など）を表示するものとしている。この場合には、１世代前や１２世代前（１世代が月の場合）の帳票を検索して必要なデータ範囲のデータを抽出して、前月比を演算することになる。  
【００５９】
しかし他の実施形態として、世代間の帳票（すなわち、当月分と前月分）における複数のデータ範囲が選択されていることを条件として、世代間の演算候補（例えば、前月比や、前年比など）を表示するに構成することも考えられる。この場合は、世代間の演算候補が選択されたタイミングでは帳票検索をする必要がなくなる。  
【００６０】
つぎに、図８は、項目座標テーブルの一例である。項目座標テーブルもまた、帳票ＩＤに対応して用意されており、各項目座標テーブルには、項目名称、開始水平位置、終了水平位置、開始垂直位置、終了垂直位置の各項目を含んでいる。  
【００６１】
項目名称は、各帳票ファイルの帳票データごとに用意されている集計対象のデータを示している。この項目は、帳票データが生成されるときに、フィールドに流し込むデータの項目から取得されるが、この技術は既知の技術であるため説明は省略し、本発明の取込・アクセス処理が開始されるときには既に存在しているものとする。集計対象のデータとしては、例えば、「売り上げ金額」「原価」「諸費用」などの種別が数値属性のデータであり、各フィールドに流し込むデータであっても、種別が文字属性の「商品名」などは集計対象のデータとはならない。  
【００６２】
開始水平位置、終了水平位置、開始垂直位置、終了垂直位置は、それぞれの座標値を示すデータであり、集計対象のデータが存在するデータ範囲を示している。座標は、用紙の左上を原点としており、右下に向かって数値が正の方向となっているものとする。  
【００６３】
この演算候補テーブル（図７）と項目座標テーブル（図８）は、帳票サーバ１００の外部メモリ２１１に格納されているものとする。  
【００６４】
次に図９の処理では、ステップＳ９０３において、帳票サーバ１００は、クライアント装置１０１から受信した帳票ＩＤに対応する演算候補テーブルと項目座標テーブルのデータを、複数の演算項目テーブル群と複数の項目座標テーブル群から抽出する。この抽出処理では、各データテーブルの中身のデータだけを抽出してもよいし、テーブルそのものの抽出（特定）のみにしてもよい。また、帳票ＩＤと、演算候補テーブルと項目座標テーブルの組とは、１対１に対応していなくてもよい。例えば、帳票ＩＤが異なっても帳票種別（帳票のテンプレート型のこと）が同じ場合には、当然演算候補テーブルと項目座標テーブルは同じ組が利用できるためである。すなわち、ステップＳ９０３では、帳票ＩＤを用いて演算候補テーブルと項目座標テーブルの組を抽出するものであるが、帳票ＩＤから帳票種別を判断し、判断された帳票種別に対応する演算候補テーブルと項目座標テーブルの組を抽出する処理も含まれるものとする。  
【００６５】
続いてステップＳ９０４では、帳票サーバ１００は、抽出されたデータ（テーブルまたはテーブルから抽出されたデータ）を、要求のあったクライアント装置１０１に返送する。つまり、ステップＳ３０２で帳票データの送信を行っているため、帳票サーバ１００は、クライアント装置からの要求に応じて、外部メモリ２１１に格納されている帳票データと、該帳票データで用いられる項目座標テーブルと、該帳票データで用いられる演算候補テーブルとを、クライアント装置１０１に返送することになる。なお、上述したように、各テーブルの送信は、テーブル自体でなくても、テーブルの中身のデータを別フォーマットで送信することも含むものとする。  
【００６６】
このようにして帳票サーバ１００から送信された帳票データと、各テーブルのデータに従って、ステップＳ３０４では帳票イメージの表示を行う。そして、前述したように、範囲指定された状態で右クリックされた表示状態を、図４に示す。図４では、帳票データのイメージが表示された画面において、操作者により集計したいデータ範囲が指定され（背景がグレー表示されている）、右クリック操作されてメニュー画面が表示された例を示している。メニュー画面には、「プロパティ」、「削除」、「計算候補」のメニューが表示されている。  
【００６７】
次にステップＳ３０６に対応する詳細フローについて、図１０を用いて説明する。  
【００６８】
まずステップＳ１００１では、クライアント装置１０１は、ステップＳ３０５で範囲指定された領域の座標を取得する。具体的には、図４の背景がグレーとなっているフィールドの開始水平位置、終了水平位置、開始垂直位置、終了垂直位置を取得する。この領域はマウスのポインタをドラッグして範囲選択することもでき、その場合は、開始点と終了点の各座標から求められる。そしてこの領域座標取得処理は、複数のデータ範囲が指定されている場合は、複数の領域座標を取得するものとする。  
【００６９】
次にステップＳ１００２では、取得されたデータ範囲を示す領域座標と、項目座標テーブルの各座標値とに基づいて、選択されているデータ範囲に対応するデータ項目の項目名称を取得して特定する。例えば、開始水平位置が１２０、終了水平位置が１８０、開始垂直位置が３０、終了垂直位置が７０であれば、１レコード分の垂直距離が２０であると仮定すると、「売り上げ金額」の２レコード分が選択されていることが判断できる。図４の例では、開始水平位置が１２０、終了水平位置が１８０、開始垂直位置が３０、終了垂直位置が７０の領域座標と、開始水平位置が１８０、終了水平位置が２４０、開始垂直位置が３０、終了垂直位置が７０の領域座標が選択されているとして取得されることになり、それぞれの選択項目の項目名称は、「売り上げ金額」と「原価」であると判断される。  
【００７０】
次にステップＳ１００３では、クライアント装置１０１は、ステップＳ１００２で取得・特定された複数のデータ項目の項目名称と演算候補テーブルの内容とに基づいて、この特定された複数のデータ項目のデータ間で演算可能な演算候補を決定する。つまり、特定された複数の項目名称が、演算候補テーブルの対応項目を満たす演算候補（第１演算候補）を決定する処理と、決定された演算処理が演算候補テーブルの対応条件を満たす演算候補（第２演算候補）を決定する処理を行う。  
【００７１】
例えば、図４のように、「売り上げ金額」と「原価」が選択されている場合、対応項目で「売り上げ金額」と「原価」から算出することができる演算候補を抽出することになり、この場合、「合計」「平均」「前月比」「原価率」「粗利率」が第１演算候補として決定される。そして、この第１演算候補が対応条件を満たすかを判定し、このケースでは、「前月比（原価率）」と「前月比（粗利率）」が第２演算候補として決定される。そして、この第１演算候補と第２
演算候補が、次のステップＳ１００４で演算候補として表示されることになる。  
【００７２】
また、ある電子帳票について、複数の連続した世代、つまり、２ヶ月分の帳票の同一項目がデータ範囲として選択されていれば、対応条件を用いずにも「前月比」が演算候補として表示されることになる。また、ある帳票とその帳票の１年前の帳票の同一項目がデータ範囲として選択されていれば、「前年比」が演算候補として表示されることになる。  
【００７３】
そして、ステップＳ１００４では、クライアント装置１０１は、ステップＳ１００３で決定した演算候補を、メニュー項目に表示する。ここで表示される表示例を図５に示す。図５は、メニューから「計算候補」が選択された場合の表示例を示しており、図５では、「計算候補（演算候補）」として、「単純合計」「単純平均」「原価率」「前月比（原価率）」「粗利率」「前月比（粗利率）」が一覧として表示されていることを示している。この表示が行われているときに、操作者により演算候補が選択されると（ステップＳ３０７でＹｅｓ）、ステップＳ３０８に処理が進む。  
【００７４】
次にステップＳ３０８に対応する詳細フローについて、図１１を用いて説明する。  
【００７５】
まず、ステップＳ１１０１では、クライアント装置１０１は、操作者により選択された演算候補を取得する。この取得処理は、オペレーティングシステムからマウスにより選択指示された座標を取得して判断するか、ＡＰＩを介して取得できるようにしてもよいが、既知の技術であり、かつ、自明であるため詳細な説明は省略する。  
【００７６】
次に、ステップＳ１１０２では、クライアント装置１０１は、ステップＳ１１０１で取得された演算候補が、世代間の計算が必要な第２の演算候補であるかを判断する。第２の演算候補が選択された場合は、世代間の帳票のデータを用いた演算が必要となるため、対象となる帳票を選択すべくステップＳ１１０３に処理を進める。一方、選択された演算候補が第１の演算候補、すなわち、世代間の演算が不要な演算である場合には、ステップＳ１１０４に処理を進める。  
【００７７】
ステップＳ１１０３では、クライアント装置１０１は、計算対象帳票の確定画面（図１３）を表示する。この計算対象帳票の確定画面は、現在選択対象の帳票に対して、どの世代までの帳票を対象として演算するかを指定するための画面である。計算対象帳票の確定画面を図１３を用いて説明する。  
【００７８】
図１３の画面では、図３のステップＳ３０４で表示されている帳票のうち、ステップＳ３０５で範囲指定されている帳票の名称が表示される。図１３の例では、「ＡＢＣ商事  名古屋支店  当月売り上げ明細」「ＡＢＣ商事  大阪支店  当月売り上げ明細」「ＡＢＣ商事  東京本社  当月売り上げ明細」「ＡＢＣ商事  名古屋支店  担当別売り上げ明細」の４つが選択されているため表示されている例を示している。そして、世代間の演算をする対象として、「ＡＢＣ商事  名古屋支店  当月売り上げ明細」と「ＡＢＣ商事  大阪支店  当月売り上げ明細」の２つの帳票が選択されている状態（○がチェックされている状態）を示している。なお、通常の用途では、世代間の演算を行うべき帳票は１つであるものと思われるが、本実施形態では、複数の帳票についてそれぞれ世代間の演算を行うことも可能であることを示すため、２つが選択状態である様を示している。  
【００７９】
そして、この選択されている帳票において、世代を確定するために、集計期間として「２００９０４０１」すなわち「２００９年４月１日」が入力されており、かつ、この集計期間から過去「１」世代分遡って演算することが入力されている。集計期間は任意に入力を可能にしてもよいが、現在選択されている帳票の集計期間をデフォルトで表示させることが望ましい。また、遡る世代についても、「前月比」を出すのであれば、「１世代」を選択すればよいため、「１世代」をデフォルト表示させることが望ましい。ここで「２世代」が選択されると、２世代分の帳票について、「前月比」が演算されて表示されることになる。すなわち、前月比（３月分との演算結果）、前々月比（２月分との演算結果）が演算されて、図６のような結果表示画面で表示されることになる。  
【００８０】
そして、ステップＳ１１０４において、クライアント装置１０１は、ステップＳ３０５で操作者により範囲指定されている領域座標値を取得する。また、ここで、取得した領域座標値から集計対象のデータの数値を帳票データから取得してもよい。この場合、帳票データから帳票イメージを表示しているため、クライアント装置１０１は、どの領域座標にどの数値が配置されているのかを認識しているため、選択されたデータ範囲の座標が特定できれば、集計対象の数値を取得することができる。  
【００８１】
そして、ステップＳ１１０５において、クライアント装置１０１は、操作者により選択指示された演算候補と、それぞれのデータ範囲の各領域の座標値と、別世代の指定情報を含む演算実行要求を帳票サーバ１００に送信する。ここで、ステップＳ１１０２で座標値から集計対象の数値データを取得する場合は、領域の座標値の変わりに集計対象の数値データを帳票サーバ１００に送信してもよい。また、別世代の指定情報とは、ステップＳ１１０３で確定した集計期間から遡る世代を示す情報であり、「集計期間」と「世代」であってもよいし、現在選択されている「帳票ＩＤ」と「何世代前かを示す情報」であってもよい。つなわち、別世代の指定情報とは、帳票サーバ装置１００において、世代間の演算を行うために、どの帳票であるのかを特定できる情報であればよく、本実施の形態ではデータ形式を限定しない。  
【００８２】
そして、クライアント装置１０１は、抽出された演算候補の中から操作者により選択された１つの演算候補と、当該演算候補に対する演算処理で必要なデータ項目に対する操作者により選択されたデータ範囲のデータに対して実行するための演算指示とを含む演算要求を、帳票サーバに送信するということもできる。  
【００８３】
次にステップＳ３０９に対応する詳細フローについて、図１２を用いて説明する。まず、帳票サーバ１００は、クライアント装置１０１から、演算候補の中から操作者により選択された１つの演算候補と、当該演算候補に対する演算処理で必要なデータ項目に対する操作者により選択されたデータ範囲のデータに対して実行するための演算指示とを含む演算要求を受信する。また、世代間の演算が必要な場合は、帳票サーバ１００は更に、別世代の指定情報も受信することになる。  
【００８４】
そして、ステップＳ１２０１では、帳票サーバ１００は、操作者により選択されたデータ範囲で示される集計データを確定する。帳票サーバ１００の外部メモリに格納されている帳票ファイルの帳票データには、各項目名称とそれぞれの位置（座標）と、内部に流し込まれている数値データを備えているため、選択されたデータ範囲の座標が特定できれば、集計対象の数値を取得することができる。  
【００８５】
具体的には、帳票ファイル２１３の１ページ分のデータはページオーバーレイ情報、ページレイアウト情報、行レイアウト情報及びテキスト情報から構成されている。ページオーバーレイ情報は、帳票の罫線や固定文字列の情報をベクタ形式で格納している。ページレイアウト情報は、ページ内のどの位置からどの位置までどのような間隔で行を配置するかの情報を格納している。行レイアウト情報は、行内の文字に対するフォントや装飾やピッチといった情報が格納されている。テキスト情報は、表示されるテキストのレコードを格納している。ＣＰＵ２０１は、ページレイアウト情報を使用して、各行の座標を算出し、行レイアウト情報とテキスト情報を割り付け、帳票表示データの内部構造を作成する。さらにオーバーレイ情報から文字部分の座標を算出し、帳票表示データの内部構造に追加する。続いて、ＣＰＵ２０１は、選択範囲に存在する文字列の抽出を行う。即ち、クライアントＰＣ１０１から受信する当該選択範囲には、選択範囲の表示ページ上のＸ座標の左限と右限、Ｙ座標の上限と下限を示す情報が含まれ、ＣＰＵ２０１は、作成した内部構造のうち当該選択範囲のＹ座標の上限と下限に含まれる行を、該当するページのページレイアウト情報に基づいて取り出す。そして、ＣＰＵ２０１は、同行の行レイアウト情報のフォントやピッチから、当該選択範囲のＸ座標の左限と右限に含まれるのが何文字目から何文字目なのかを算出し、同行のテキスト情報から該当する部分のテキストを抽出する。このように、本実施形態によれば、任意の選択範囲に属する帳票内のデータを抽出することが可能となる。  
【００８６】
なお、前述したように、クライアント装置１０１から、集計対象の数値データが送信されてきた場合は、ステップＳ１２０１の処理は不要となるのでスキップされる。  
【００８７】
なお、帳票サーバ１００は、別世代の指定情報を受信している場合は、それぞれの世代の帳票に対して、上記のステップＳ１２０１の処理を行うことになる。  
【００８８】
続いてステップＳ１２０２では、帳票サーバ１００は、演算処理で必要な項目の数値データがすべて揃っているか判定する。例えば、「原価率」を求めるためには「売り上げ金額」と「原価」が必要であるが、その両方の数値データがすべてステップＳ１２０１で確定したか判断する。数値データが揃っていない場合には、ステップＳ１２０１に処理を戻し、演算処理に必要な数値データが全て揃った場合には、次のステップＳ１２０３に処理を進める。  
【００８９】
次にステップＳ１２０３では、帳票サーバ１００は、クライアント装置１０１から送信される演算要求に含まれる演算候補に対する演算処理を、ステップＳ１２０１確定された集計用の数値データを用いて実行する。例えば、「粗利率」が選択された場合は、確定された集計用の数値データである「売り上げ金額」と「原価」から、「売り上げ金額」の選択範囲のデータの合計値を求め、「原価」の選択範囲のデータの合計値を求め、「売り上げ金額」の合計値から「原価」の合計値の差分を取り、それを「売り上げ金額」の合計値で割ることにより、求められる。これらの四則演算の具体的な処理は自明であり、また計算式は、図７に示されているので、更なる詳細な説明については省略する。  
【００９０】
そしてステップＳ１２０４において、帳票サーバ１００は、ステップＳ１２０３で演算処理した演算結果を、演算要求のあったクライアント装置１０１に返送する。  
【００９１】
そして、図３のステップＳ３１０で、クライアント装置１０１は、帳票サーバ１００から受信した演算結果を、図６に示すようにメニュー一覧を削除してその位置にメニュー表示を行う。なお、本実施形態でいうメニューとは、コンテキストメニューのことである。  
【００９２】
なお、図１２の処理は、世代間の帳票における項目の演算が必要な場合には、世代間の各帳票データに対してそれぞれ行われる。この処理について、図１４に示す参照帳票テーブルを用いて説明する。  
【００９３】
帳票サーバ１００は、クライアント装置１０１から別世代の指定情報を受信している場合には、参照帳票テーブル（１４）を用いて、別世代の演算対象となる帳票を特定する。別世代の指定情報が、「集計期間」と「遡る世代」（いずれも図１３の入力データに相当）である場合には、受信した「集計期間」と図１４の集計期間とを照らし合わせ、また、元となるユーザがデータ範囲を指定している帳票ＩＤから集計対象となる帳票を特定する。具体的には、クライアント装置１０１で表示されている帳票の帳票ＩＤが「ＲＥＰ００３」であり、集計期間が「２００９０４０１」であれば、そのまま「ＲＥＰ００３」が集計対象となり、受信した「遡る世代」が「１世代」であれば、前月比として世代間の演算をするための帳票は、帳票ＩＤが「ＲＥＰ００２」の帳票となる。また、クライアント装置１０１で表示されている帳票の帳票ＩＤが「ＲＥＰ００３」であり、集計期間が「２００９０３０１」であれば、帳票ＩＤ「ＲＥＰ００２」の帳票が集計対象となり、受信した「遡る世代」が「１世代」であれば、前
月比として世代間の演算をするための帳票は、帳票ＩＤが「ＲＥＰ００１」の帳票となる。このようにして、集計対象の帳票と、世代間演算をするための帳票とが、帳票サーバ１００で特定されることになる。  
【００９４】
さらに、上記図３、図１０、図１１に示した各フローチャートにおける処理は、クライアント側であるクライアントＰＣ１０１の処理ではいくつかの判断手段などの機能を含めた形で説明した。しかし、単純にブラウザアプリケーションでのＨＴＭＬファイルの表示を行い、クライアントＰＣ１０１からはイベントを帳票サーバ１００に送信することでサーバ側はＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）を用いて各ステップを実現する処理を行うなどの変形でも実現できる。  
【００９５】
以上説明したように、本実施の形態によれば、例えば、表計算アプリケーションにおけるセルという概念がない帳票データを対象としても、複数のデータ範囲を任意に指定することで、指定された複数のデータ範囲の関係から適切な演算を指示することができ、指示された演算処理を実行させることができる。  
【００９６】
以上、本発明の一実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置（例えば、帳票サーバ１００とクライアントＰＣ１０１を一つの装置に統合した形態）に適用しても良い。  
【００９７】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。  
【００９８】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。  
【００９９】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。  
【０１００】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。  
【０１０１】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【符号の説明】
【０１０２】
１００    帳票サーバ  １０１    クライアントＰＣ  １０２    クライアントＰＣ  １０３    ネットワーク
【図５】
2010271958.tif 000003
【図７】
2010271958.tif 000004
【図１３】
2010271958.tif 000005
【図１４】
2010271958.tif 000006
【図１】
2010271958.tif 000007
【図２】
2010271958.tif 000008
【図３】
2010271958.tif 000009
【図４】
2010271958.tif 000010
【図６】
2010271958.tif 000011
【図８】
2010271958.tif 000012
【図９】
2010271958.tif 000013
【図１０】
2010271958.tif 000014
【図１１】
2010271958.tif 000015
【図１２】
2010271958.tif 000016