(57)【要約】【課題】時系列的な推移を調べるための推移表の作成を容易にする。【解決手段】テーブルデータに基づいた表出力を行う表計算ツールＰ１としての機能を有するデータ処理装置１は、表示部にダイアログ画面を表示し入力部からの操作を受け付ける推移表ウイザードダイアログＰ２で、項目毎にデータが格納されたレコードファイル４６から抽出する項目及び当該項目に係るデータの抽出期間に関する情報の入力を受け付け、推移表ウイザードエンジンＰ３で入力された抽出期間に関する情報に基づいて、当該抽出期間内で分割された時系列期間を算出し、その時系列期間毎に入力された項目に係るデータをレコードファイル４６から抽出して集計するデータ部品を作成し、そのデータ部品を組み合わせることで推移表を出力するテーブルデータを生成する。【選択図】図２
2008146378.tif 000002
【特許請求の範囲】
【請求項１】
テーブルデータに基づいた帳票を出力する帳票出力手段を有するデータ処理装置において、
項目毎にデータが格納されたレコードデータを記憶する記憶手段と、
前記記憶手段に記憶されるレコードデータから抽出する項目及び当該項目に係るデータの抽出期間に関する情報の入力を受け付ける入力手段と、
前記入力された抽出期間に関する情報に基づいて、当該抽出期間内で分割された時系列期間を算出する期間算出手段と、
前記算出された時系列期間毎に、前記記憶手段に記憶されたレコードデータから前記入力された項目に係るデータを抽出して集計するデータ部品を生成するデータ部品生成手段と、
当該データ部品生成手段で生成された時系列期間毎のデータ部品を組み合わせて、前記入力された項目に係るデータの時系列の推移を出力するためのテーブルデータを生成する推移表テーブルデータ生成手段と、
を備えることを特徴とするデータ処理装置。
【請求項２】
前記記憶手段は、前記推移表テーブルデータ生成手段における前記時系列期間毎のデータ部品の組み合わせに係るテンプレートデータを予め記憶し、
前記推移表テーブルデータ作成手段は、前記テンプレートデータに基づいて前記時系列期間毎のデータ部品を組み合わせることを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記入力手段は、前記データの抽出に関する情報として、前記抽出期間内で分割する単位期間を含む情報の入力を受け付け、
前記期間算出手段は、前記入力された単位期間に基づいて前記時系列期間を算出することを特徴とする請求項１又は２に記載のデータ処理装置。
【請求項４】
前記入力手段は、前記データの抽出に関する情報として、前記抽出期間の終了時を含む情報の入力を受け付け、
前記期間算出手段は、前記入力された抽出期間の終了時から遡るように前記時系列期間を算出することを特徴とする請求項１〜３のいずれか一項に記載のデータ処理装置。
【請求項５】
項目毎にデータが格納されたレコードデータを記憶する記憶手段、テーブルデータに基づいた帳票を出力する帳票出力手段を有するデータ処理装置のコンピュータを、
前記記憶手段に記憶されるレコードデータから抽出する項目及び当該項目に係るデータの抽出期間に関する情報の入力を受け付ける入力手段、
前記入力された抽出期間に関する情報に基づいて、当該抽出期間内で分割された時系列期間を算出する期間算出手段、
前記算出された時系列期間内毎に、前記記憶手段に記憶されたレコードデータから前記入力された項目に係るデータを抽出して集計するデータ部品を生成するデータ部品生成手段、
当該データ部品生成手段で生成された時系列期間毎のデータ部品を組み合わせて、前記入力された項目に係るデータの時系列の推移を出力するためのテーブルデータを生成する推移表テーブルデータ生成手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来、ＰＣ（Personal  Computer）等の情報機器を用いた事務処理においては、データベースなどに格納された情報に基づいて表計算を行うことで、ユーザが指定するデータに対して時系列的な推移を調べるための推移表を作成することが知られている。
【０００３】
例えば、特許文献１には、ユーザが所望する期間を会計期間とし、その会計期間内のユーザが所望する期間を作表対象期間とした会計業務のための各種表を作成する会計処理システムに関する技術が開示されている。
【特許文献１】特開２００２−１９７２４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、特定のデータ構造に特化されており、特定の事務処理（例えば会計処理）のみを行うようにシステム構成やソフトウエアが専用化されている。このため、この専用化されたシステムを利用する場合は、推移表を作成して時系列的なデータ変動を調べる際に、その推移表に出力するデータの種類やレイアウト等が専用化されている特定の事務処理に係るものに制約される。また、任意のデータに対して時系列的な推移を調べる場合は、その専用化されたシステムやソフトウエアのカスタマイズ等を行う必要があり、時間もコストもかかるため、非常に煩雑なことであった。
【０００５】
本発明の課題は、時系列的な推移を調べるための推移表の作成を容易にすることである。
【課題を解決するための手段】
【０００６】
請求項１に記載の発明は、テーブルデータに基づいた帳票を出力する帳票出力手段を有するデータ処理装置において、
項目毎にデータが格納されたレコードデータを記憶する記憶手段と、
前記記憶手段に記憶されるレコードデータから抽出する項目及び当該項目に係るデータの抽出期間に関する情報の入力を受け付ける入力手段と、
前記入力された抽出期間に関する情報に基づいて、当該抽出期間内で分割された時系列期間を算出する期間算出手段と、
前記算出された時系列期間内毎に、前記記憶手段に記憶されたレコードデータから前記入力された項目に係るデータを抽出して集計するデータ部品を生成するデータ部品生成手段と、
当該データ部品生成手段で生成された時系列期間毎のデータ部品を組み合わせて、前記入力された項目に係るデータの時系列の推移を出力するためのテーブルデータを生成する推移表テーブルデータ生成手段と、
を備えることを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載の発明において、前記記憶手段は、前記推移表テーブルデータ生成手段における前記時系列期間毎のデータ部品の組み合わせに係るテンプレートデータを予め記憶し、
前記推移表テーブルデータ作成手段は、前記テンプレートデータに基づいて前記時系列期間毎のデータ部品を組み合わせることを特徴とする。
【０００８】
請求項３に記載の発明は、請求項１又は２に記載の発明において、前記入力手段は、前記データの抽出に関する情報として、前記抽出期間内で分割する単位期間を含む情報の入力を受け付け、
前記期間算出手段は、前記入力された単位期間に基づいて前記時系列期間を算出することを特徴とする。
【０００９】
請求項４に記載の発明は、請求項１〜３のいずれか一項に記載の発明において、前記入力手段は、前記データの抽出に関する情報として、前記抽出期間の終了時を含む情報の入力を受け付け、
前記期間算出手段は、前記入力された抽出期間の終了時から遡るように前記時系列期間を算出することを特徴とする。
【００１０】
請求項５に記載の発明は、項目毎にデータが格納されたレコードデータを記憶する記憶手段、テーブルデータに基づいた帳票を出力する帳票出力手段を有するデータ処理装置のコンピュータを、
前記記憶手段に記憶されるレコードデータから抽出する項目及び当該項目に係るデータの抽出期間に関する情報の入力を受け付ける入力手段、
前記入力された抽出期間に関する情報に基づいて、当該抽出期間内で分割された時系列期間を算出する期間算出手段、
前記算出された時系列期間内毎に、前記記憶手段に記憶されたレコードデータから前記入力された項目に係るデータを抽出して集計するデータ部品を生成するデータ部品生成手段、
当該データ部品生成手段で生成された時系列期間毎のデータ部品を組み合わせて、前記入力された項目に係るデータの時系列の推移を出力するためのテーブルデータを生成する推移表テーブルデータ生成手段、
として機能させるプログラムである。
【発明の効果】
【００１１】
本発明によれば、項目毎にデータが蓄積されたレコードデータからいずれかの項目のデータを抽出して作成されるテーブルデータに基づいて推移表を作成する際に、抽出する項目及び当該項目に係るデータの抽出期間を入力することで、この入力されたデータに基づいて時系列区間毎にデータを抽出して集計するデータ部品を生成し、当該データ部品を組み合わせることにより、入力された項目に係るデータの時系列の推移を出力するためのテーブルデータを生成する構成であるため、データ部品を組み合わせるだけで推移表を出力するためのテーブルデータを生成することができ、いずれかの項目に係るデータの時系列的な推移を調べるための推移表を容易に作成することができる。
【発明を実施するための最良の形態】
【００１２】
以下、実施の形態について図１〜図１７を参照して説明する。なお、この実施の形態は、最も好ましい一形態を示すものであり、特にこの形態に限定するものではない。
【００１３】
先ず、ＰＣ（Personal  Computer）やＷＳ（Work  Station）などの情報機器であるデータ処理装置の構成について、機能的構成を模式的に示すブロック図である図１（ａ）を参照して詳細に説明する。図１（ａ）に示すように、データ処理装置１は、ＣＰＵ１０、入力部２０、表示部３０、記憶部４０、印刷部５０及び通信部６０を備えた構成され、各部はバス７０により接続される。
【００１４】
ＣＰＵ１０（Central  Processing  Unit）は、特に図示しない内蔵ＲＡＭ（Random  Access  Memory）やＲＯＭ（Read  Only  Memory）などを有し、記憶部４０やＲＯＭに格納されているプログラムデータをＲＡＭに展開して順次実行することで、当該プログラムとの協働によりデータ処理装置１の各部の処理動作を統括的に制御する機能部である。
【００１５】
入力部２０は、マウスなどのポインティングデバイスやキーボードなどであって、ポインティングデバイスの操作やキー操作などの操作指示を受け付け、それに応じた操作信号をＣＰＵ１０に出力する。
【００１６】
表示部３０は、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode-Ray  Tube）などのディスプレイであり、ＣＰＵ１０から入力される表示信号に従った画像を表示する。
【００１７】
記憶部４０は、磁気的又は光学的記憶媒体、半導体等の不揮発性メモリ等（例えばＨＤＤ（Hard  Disk  Drive）など）であり、ＣＰＵ１０からの指示に基づいて、データの読み書きが可能な構成である。記憶部４０には、後述する各種アプリケーションプログラム、データファイル又は項目毎にデータを格納するレコードデータが記憶されている。
【００１８】
印刷部５０は、熱転写方式、電子写真方式、インクジェット方式などの画像形成方式で紙などの記録媒体に画像形成を行うプリンタであって、ＣＰＵ１０から入力されるプリントデータに基づいたプリント出力を行う。
【００１９】
通信部６０は、特に図示しない他の情報機器とデータ通信を行うための通信回路や当該他の情報機器と接続するための通信インターフェイスを有し、ＣＰＵ１０の制御の下、データ通信を行う機能部である。具体的には、通信部６０は、インターネットやＬＡＮLocal Area Network）等を用いたネットワーク通信やＵＳＢ（Universal  Serial  Bus）、ＩＥＥＥ１３９４（Institute  of  Electrical  and  Electronic  Engineers  1394）等のデータ通信を行う。
【００２０】
なお、本実施の形態ではデータ処理装置１単体での構成を例示するが、データ処理装置１は、通信部６０を介して他の情報機器と接続し、当該他の情報機器からレコードデータを取得する構成であってもよく、装置構成は特に本実施の形態に限定するものではない。具体的には、データ処理システムの構成を例示する図１（ｂ）に示すように、データ処理装置１とレコードデータを記憶するデータベース２とがＬＡＮなどである通信ネットワークＮを介して接続されるデータ処理システム１００であってもよい。
【００２１】
ここで、記憶部４０に記憶されるデータについて図２を参照して説明する。図２（ａ）は、記憶部４０に記憶されるデータを模式的に示す概念図である。図２（ａ）に示すように、記憶部４０に記憶されるデータは、ＣＰＵ１０が読み出して順次実行することで各種データ処理を行うプログラムデータである表計算プログラム４１、推移表ウイザードプログラム４２、推移表ウイザードエンジンプログラム４３、帳票自動作成エンジンプログラム４４、当該プログラムデータが参照するデータファイルであるテンプレートファイル４５、項目毎にデータを格納するレコードファイル４６などがある。
【００２２】
この記憶部４０に記憶されるデータによるソフトウエア構成については、データ処理装置１が実行するソフトウエアの構成を模式的に示す図２（ｂ）のとおりである。表計算ツールＰ１は、ＣＰＵ１０が表計算プログラム４１を実行することで実現する、いわゆる表計算機能であり、スプレッドシート（テーブルデータ）の縦横に並んだマス目（セル）に入力された数値や計算ルールを分析し、演算結果を表形式で表示部３０からの画面出力又は印刷部５０からのプリント出力などを行う。
【００２３】
推移表ウイザードダイアログＰ２は、ＣＰＵ１０が推移表ウイザードプログラム４２を実行して後述する処理を行うことで実現する機能であり、表の雛形に関するテーブルデータを含むテンプレートファイル４５を読み込んで、表示部３０に対話形式の入力画面（ウイザード設定画面）を表示し、その表の雛形に埋め込むデータの入力を入力部２０から受け付ける。
【００２４】
推移表ウイザードエンジンＰ３は、ＣＰＵ１０が推移表ウイザードエンジンプログラム４３を実行して後述する処理を行うことで実現する機能であり、推移表ウイザードダイアログＰ２で入力されたデータに基づいて、テンプレートファイル４５に含まれる表の雛形となるテーブルデータの各セルにデータを埋め込み、表計算ツールＰ１で使用するためのテーブルデータを生成する。
【００２５】
上述した推移表ウイザードダイアログＰ２、推移表ウイザードエンジンＰ３で処理を行うことで、データ処理装置１では、レコードファイル４６におけるいずれかの項目やその項目に関するデータの抽出期間を入力部２０から受け付けて、入力された項目に関するデータの推移を表計算ツールＰ１の表計算機能を用いて表示するための推移表に関するテーブルデータを生成する。
【００２６】
帳票自動作成エンジンＰ４は、ＣＰＵ１０が帳票自動作成エンジンプログラム４４を実行して後述する処理行うことで実現する機能であり、表計算ツールＰ１で使用するテーブルデータの各セルでレコードファイル４６のデータを参照して帳票等の表を作成する際に、その各セルで指定されたデータをレコードファイル４６から検索して代入する。
【００２７】
レコードファイル４６としては、具体的にはその構成を模式的に示した図３（ａ）のような売上レコードファイル等がある。この図３（ａ）で例示するレコードファイル４６は、売上レコードを各項目（フィールド）に格納するテーブルデータであり、いわゆる売上のデータベースファイルである。売上レコードファイルの各項目としては「伝票番号」、「商品名」、「販売店」、「担当者」、「単価」、「数量」、「伝票日付」などがあり、「伝票番号」等の項目がレコードのキーとして設定されている。
【００２８】
上述した売上レコードファイルであるレコードファイル４６にデータを格納した場合は、レコードファイル４６のデータの内容を具体的に示した図３（ｂ）のようになる。同図に示すように、例えば「伝票番号」が「０００１０」の売上レコードには、日付が「２００６／０７／３１」に「ニンジン」、「ダイコン」、「ジャガイモ」が売り上げられた（販売店、担当者、単価、数量）ことが記録されている。
【００２９】
ここで、表計算に用いられるテーブルデータ（表計算ツールＰ１や帳票自動作成エンジンＰ４で扱われるテーブルデータ）について図４を参照して説明する。図４は、テーブルデータのデータ構成を例示する概念図である。図４に示すように、表計算に用いられるテーブルデータは、文字や数値（例えば「伝票番号」等）、計算ルール（例えば「＝ＣＯＵＮＴ（Ｃ１３）」（セルＣ１３に関するデータのカウント）等）、レコードファイル４６の参照ルール（例えば「＝伝票番号．売上レコード」（売上レコードファイルにおける伝票番号の参照）等）などが入力される「セル」（セルＣ１１〜Ｃ２３）が縦横に並んでおり、行毎にセルの属性を設定する「行属性」が設定されている。
【００３０】
テーブルデータで行毎に「行属性」として設定されるセルの属性とは、帳票自動作成エンジンP４がレコードファイル４６のデータを参照するタイミングを指定するデータである。このセルの属性には、例えば図４に示すように、「タイトル」、「グループ」、「明細」などがある。属性として「タイトル」が設定されたセルは、レコードの先頭のみを参照するため、結果的に表のトップを表示する。また、「グループ」が設定されたセルは、レコード内のグループ化キー項目の値が変化した時にデータを参照するセルであり、本実施の形態のように特に設定されていない場合はレコードの先頭のデータを参照して表示する。また、「明細」が設定されたセルは、レコード内の明細毎にデータを参照して表示する。なお、セルの属性は、上述したように行毎に一括して設定してもよいが、セル毎に個別に設定してもよい。
【００３１】
また、レコードファイル４６の参照ルールに関する部分（セルＣ１３、Ｃ２３）については、帳票自動作成エンジンＰ４を実行することで、図４に示すようなレコードファイル４６から取得されたデータ（例えば「０００１０」や「ニンジン」等）がセル（セルＣ１３〜Ｃ１５、セルＣ２３〜Ｃ２５）に代入される。
【００３２】
次に、ＣＰＵ１０が実行して行う推移表ウイザードダイアログＰ２、推移表ウイザードエンジンＰ３の処理であり、推移表のレイアウト作成に関する処理について、図５を参照して説明する。図５は、データ処理装置１における推移表のレイアウト生成に関する動作を例示するフローチャートである。
【００３３】
図５に示すように、推移表のレイアウト作成に関する処理が開始されると、推移表の雛形として使用するためのテンプレートファイル４５や参照するレコードファイル４６などの対象ファイルの選択を、ファイル追加の終了が指示されるまで入力部２０の入力指示に基づいて行われる（ステップＳ１１、Ｓ１２）。
【００３４】
次いで、対象ファイルの追加選択が終了した後は、その選択された対象ファイルであるテンプレートファイル４５における推移表の雛形に埋め込むデータの受け付けを行う入力画面（ウイザード設定画面）を起動するため、推移表ウイザード起動処理が開始される（ステップＳ１３）。
【００３５】
ここで、推移表ウイザード起動処理について、推移表ウイザード起動処理を例示するフローチャートである図６を参照して説明する。
【００３６】
図６に示すように、推移表ウイザード起動処理が開始されると、選択された推移表の雛形であるテンプレートファイル４５から、推移表で項目ごとのデータ推移を分類して表示する分類項目領域に関するテンプレートの読み込み（ステップＳ１３１）、設定期間内で項目に係るデータをレコードファイル４６から抽出して集計するデータ部品に関するテンプレートの読み込み（ステップＳ１３２）、推移表のタイトル表示などを行うタイトル領域に関するテンプレートの読み込みが行われ（ステップＳ１３３）、読み込まれたテンプレートに関するデータがＣＰＵ１０のＲＡＭなどに推移表テンプレートとして展開されて、推移表のレイアウト生成に関する作業領域が生成される（ステップＳ１３４）。
【００３７】
ここで、ＣＰＵ１０のＲＡＭなどに作業領域として生成される推移表テンプレートについて、図７、８を参照して説明する。図７は、推移表テンプレートＴを例示する概念図であり、図８（ａ）は分類項目領域Ｒ２を例示する概念図であり、図８（ｂ）はデータ部品Ｄｎを例示する概念図である。
【００３８】
図７に示すように、ステップＳ１３４において作業領域として生成される推移表テンプレートＴは、帳票タイトル領域Ｒ１、分類項目領域Ｒ２及び複数のデータ部品Ｄ１…Ｄｎを組み合わせる領域であって、見出しとして集計期間を表示する見出し領域Ｒ３とその期間におけるデータの集計結果を表示する推移表データ表示領域Ｒ４とを有する推移表領域Ｒ５から構成される。
【００３９】
図８（ａ）に示すように、分類項目領域Ｒ２は、レコードファイル４６から抽出する項目に関するデータであり、入力部２０からの入力に基づいて埋め込まれる「分類項目」、「日付項目」、「データ項目」などを有する。
【００４０】
図８（ｂ）に示すように、データ部品Ｄｎは、見出し領域Ｒ３に集計期間を示す「開始日付」・「終了日付」、推移表データ表示領域Ｒ４にレコードファイル４６からその集計期間内のデータを抽出する条件（例えば「＝ＩＦ（ＡＮＤ（終了日付＞＝日付項目，開始日付＜＝日付項目），データ項目，０」等）とその抽出されたデータの合計を表示する計算式（例えば「＝ＳＵＭ（明細の座標）」等）などを有する。つまり、データ部品Ｄｎは、「開始日付」から「終了日付」の期間でレコードファイル４６のデータを集計して表示する部品である。推移表領域Ｒ５は、このデータ部品Ｄｎを複数組み合わせることで、時系列期間ごとに集計されたデータを推移表として表示する構成である。
【００４１】
図６に戻り、推移表ウイザード起動処理の続きを説明する。
ステップＳ１３４に次いで、作業領域として生成された推移表レイアウトで入力部２０からの入力に基づいて埋め込まれる項目一覧（上述した例では「分類項目」、「日付項目」、「データ項目」）が読み込まれ（ステップＳ１３５）、その項目と推移表を作成するためにレコードファイル４６からデータを抽出する期間に関するデータ入力を受け付ける推移表ウイザードダイアログが表示部３０に画面表示されて（ステップＳ１３６）、推移表ウイザード起動処理が終了する。
【００４２】
ここで、ステップＳ１３６で表示部３０に表示されるダイアログ画面Ｇを図９（ａ）に例示する。図９（ａ）に示すように、ダイアログ画面Ｇには、ステップＳ１３５で読み込まれた項目一覧に基づいて、「分類項目」の入力を受け付ける分類項目入力領域Ｉｎ１、「日付項目」の入力を受け付ける日付項目入力領域Ｉｎ２、「データ項目」の入力を受け付けるデータ項目入力領域Ｉｎ３、期間に関するデータとして「終了日」、「期間単位」「期間数」などを受け付ける終了日入力領域Ｉｎ４、期間単位入力領域Ｉｎ５、期間数入力領域Ｉｎ６が表示される。
【００４３】
図５に示すように、推移表ウイザード起動処理（ステップＳ１３）に続いて、推移表ウイザードダイアログから上述した「分類項目」、「日付項目」、「データ項目」、「終了日」、「期間単位」、「期間数」等の入力が受け付けられ（ステップＳ１４〜Ｓ１９）、入力の内容を確定させる「ＯＫ」ボタンの押下などにより、入力内容は全てＯＫか否かが判定され（ステップＳ２０）、ＯＫである場合は入力された内容で推移表ウイザードエンジン処理が行われて（ステップＳ２１）、終了する。
【００４４】
このステップＳ１４〜Ｓ１９で入力されるデータは、例えば図９（ａ）に示すようなものがある。「分類項目」では売上レコードファイルの項目が商品名を抽出する「商品名．売上レコード」が分類項目入力領域Ｉｎ１に入力される。「日付項目」では売上レコードから伝票日付の項目データを抽出する「伝票日付．売上レコード」が日付項目入力領域Ｉｎ２に入力される。「データ項目」では売上レコードファイルから単価や数量の項目データを抽出し、掛け合わせて売上を演算する「単価．売上レコード＊数量．売上レコード」がデータ項目入力領域Ｉｎ３に入力される。「終了日」では抽出の最終日である「２００６／０９／３０」が終了日入力領域Ｉｎ４に入力される。「期間単位」では一つのデータ部品が集計する期間である「月」が期間単位入力領域Ｉｎ５に入力される。「期間数」ではその期間単位で集計する期間の数、つまり、生成するデータ部品の数である「３」が期間数入力領域Ｉｎ６に入力される。
【００４５】
なお、このステップＳ１４〜Ｓ１９において、分類項目入力領域Ｉｎ１、日付項目入力領域Ｉｎ２、データ項目入力領域Ｉｎ３、終了日入力領域Ｉｎ４、期間単位入力領域Ｉｎ５、期間数入力領域Ｉｎ６で入力されるデータ型は、文字型、数値型、選択型などがあり、テンプレートファイル４５の項目毎に予め設定されている。例えば、推移表ウイザードで設定するデータの概要を示す図９（ｂ）で明らかなように、「文字型」又は「（正の）数値」や「１..年、２..半期、３..四半期、４..月、５..周、６..日」などのように予め設定されたものを選択するものがある。
【００４６】
ここで、推移表ウイザードエンジン処理について、そのフローチャートが例示された図１０を参照して説明する。ステップＳ２１において推移表ウイザードエンジン処理が開始されると、図１０に示すように、推移表ウイザードダイアログで入力された設定データが読み取られ（ステップＳ２１１）、その設定データに基づいて、ステップＳ１３４において作業領域として生成された推移表テンプレートＴの分類項目領域Ｒ２のデータを置換して項目表示に関するデータを生成する分類項目領域データ生成処理が行われる（ステップＳ２１２）。
【００４７】
この分類項目領域データ生成処理については図１１（ａ）のフローチャートに例示されているとおりである。つまり、分類項目領域データ生成処理が開始されると、図１１（ａ）に示すように、ＲＡＭの作業領域に生成された分類項目領域Ｒ２に関するテンプレートが取得され（ステップＳ２１２１）、その分類項目領域Ｒ２における「分類項目」が分類項目入力領域Ｉｎ１に入力された内容で置換され（ステップＳ２１２２）、同様に「日付項目」が日付項目入力領域Ｉｎ２に入力された内容、「データ項目」がデータ項目入力領域Ｉｎ３に入力された内容で置換されて（ステップＳ２１２３、Ｓ２１２４）終了する。
【００４８】
分類項目領域データ生成処理（ステップＳ２１２）に次いで、日付演算処理（ステップＳ２１３）、データ部品の生成・マージ処理（ステップＳ２１４）が終了日入力領域Ｉｎ４で設定された終了日から期間数入力領域Ｉｎ６で設定された期間数分終了したと判定（ステップＳ２１５：ＹＥＳ）されるまで行われる。つまり、ステップＳ２１３〜Ｓ２１５では、期間数入力領域Ｉｎ６で設定された期間数分のループ処理が行われる。
【００４９】
日付演算処理については図１１（ｂ）のフローチャートに例示されているとおりである。具体的には、日付演算処理が開始されると、図１１（ｂ）に示すように、終了日入力領域Ｉｎ４や前回の日付演算処理で設定された期間の「終了日」が取得され（ステップＳ２１３１）、その取得された「終了日」が日付連番（具体的には表計算ツールＰ１で演算可能な日付数値）に変換されて「終了日付」として設定され（ステップＳ２１３２）、その「終了日付」から期間単位入力領域Ｉｎ５で設定された期間分の日付を減算した「開始日付」が設定され（ステップＳ２１３３）、その「開始日付」から一日減じた値が次回行われる日付期間演算処理の「終了日」として保存される（ステップＳ２１３４）。
【００５０】
つまり、ステップＳ２１３〜Ｓ２１５のループ処理における日付演算処理では、日付条件の生成を例示する図１３（ａ）で明らかなように、終了日入力領域Ｉｎ４で設定された「終了日」から、期間単位入力領域Ｉｎ５で設定された期間単位で、期間数入力領域Ｉｎ６で設定された期間数分だけ遡るように、「開始日付」と「終了日付」が演算される。
【００５１】
データ部品の生成・マージ処理については図１２のフローチャートに例示されているとおりである。具体的には、データ部品の生成・マージ処理が開始されると、図１２に示すように、ＲＡＭの作業領域に生成されたデータ部品Ｄｎに関するテンプレートが取得され、作業領域として生成された推移表領域Ｒ５において、現在処理中の期間に基づいたセル位置に取得されたデータ部品Ｄｎがコピーされる（ステップＳ２１４１）。
【００５２】
この推移表領域Ｒ５においてデータ部品Ｄｎをコピーするセル位置については、データ部品Ｄｎの行属性と推移表領域Ｒ５の行属性が一致するセル位置であり、本実施の形態で示すように日付を遡るように処理する場合は、推移表領域Ｒ５の先頭列に挿入する位置となる。なお、既に推移表領域Ｒ５にコピーされているデータ部品は、セル位置とセル内容（他のセルを参照する際の情報等）がデータ部品Ｄｎの挿入に基づいてシフトされることとなる。
【００５３】
次いで、そのコピーされたデータ部品Ｄｎにおける「開始日付」と「終了日付」に日付演算処理で設定された「開始日付」と「終了日付」がセットされ（ステップＳ２１４２）、データ部品Ｄｎ内の各セルにおける他のセルを参照する際の情報が、推移表領域Ｒ５におけるコピーされたセル位置に基づいてセットされる（ステップＳ２１４３）。
【００５４】
このデータ部品Ｄｎ内の各セルにおける参照する際の情報のセットでは、例えば、図８（ｂ）に例示した分類項目領域Ｒ２のセルを参照する「日付項目」、「データ項目」などは、生成されたデータ部品を例示する概念図である図１３（ｂ）に示すような分類項目領域Ｒ２の対応するセル位置を具体的に示す「＄Ｂ＄４」、「＄Ｃ＄４」などに置換される。
【００５５】
また、図８（ｂ）に例示した行属性がグループ内の「明細の座標」や行属性が明細内の「開始日付」、「終了日付」など、データ部品Ｄｎ内の他のセルを参照する部分は、図１３（ｂ）に示すようなデータ部品Ｄｎ内を参照する「Ｄ４」、「Ｄ１」、「Ｄ１」などに置換される。なお、この置換に際して、上述したデータ部品Ｄｎの挿入に基づいたシフトで参照すべきセル座標のシフトを行わない部分（例えば分類項目領域Ｒ２のセルを参照する部分）については「＄」などを付加して区別する。
【００５６】
つまり、データ処理装置１では、上述した分類項目領域データ生成処理を行うことで、生成された分類項目領域Ｒ２を例示する図１４（ａ）に示すように、分類項目領域Ｒ２に関するテンプレートの内容が推移表ウイザードダイアログで入力された設定データに基づいて置換される。
【００５７】
次いで、推移表ウイザードダイアログの終了日入力領域Ｉｎ４、期間単位入力領域Ｉｎ５、期間数入力領域Ｉｎ６で設定された期間に関する情報に基づいて日付演算処理、データ部品の生成・マージ処理を行うことで、分類項目領域Ｒ２とデータ部品Ｄ１の組合せを例示する図１４（ｂ）に示すように、時系列毎にデータを集計するデータ部品Ｄ１が生成されて推移表のレイアウト生成に関する作業領域でマージされる。
【００５８】
また、この日付演算処理、データ部品の生成・マージ処理を期間数入力領域Ｉｎ６で設定された期間数分ループして行い、生成されたデータ部品を推移表のレイアウト生成を行う作業領域に挿入して組み合わせることで、データ部品を順次組み合わせる様子を例示する図１４（ｃ）に示すように、データ部品を時系列順に組み合わせて時系列の推移を出力するためのテーブルデータを生成する。
【００５９】
次いで、その生成されたテーブルデータにおいて、データ部品がレコードファイル４６からデータを抽出する部分について、当該抽出データをレコードファイル４６から検索する処理（ステップＳ２１６）、つまり、後述する帳票自動作成エンジンＰ４に関する処理が行われて終了する。
【００６０】
ここで、ＣＰＵ１０が実行して行う帳票自動作成エンジンＰ４に関する処理について図１５を参照して説明する。図１５は、データ処理装置１における帳票自動作成エンジン処理に関する動作を例示するフローチャートである。
【００６１】
図１５に示すように、帳票自動作成エンジン処理が開始されると、テーブルデータの行属性が読み取られ（ステップＳ３１）、その読み取られた行属性に基づいて、処理を行う行の順位が設定される（ステップＳ３２）。この行属性に基づいた行の処理順位については、他のセルから参照される参照元のセルを含む行から優先的に処理されるように設定される。例えば、レコードファイル４６のデータを明細毎に参照する「明細」、レコード内のグループ化キー項目の値が変化した場合や「明細」などの他のセルの参照する「グループ」、単にレコードの先頭を参照して文字のみを表示する「タイトル」の順に設定される。
【００６２】
次いで、その設定された処理順位に基づいて、最初の順位の行が処理対象行として設定され（ステップＳ３３）、ステップＳ３９において次の順位の処理対象行がないと判定される、つまり、最終順位の行の処理が終了したと判定されるまで、順位順にステップＳ３４〜Ｓ３８の各処理が行われる。
【００６３】
この順位順の行に対する処理では、処理対象行がレコードファイル４６を参照するか否かが判定され（ステップＳ３４）、参照すると判定された場合（ＹＥＳ）はその参照するレコードファイルが設定され（ステップＳ３５）、当該設定されたレコードファイルから全てのレコードが順次読み出されてセル単位の処理が行われ（ステップＳ３６〜Ｓ３８）、ステップＳ３９の判定により次の順位の処理対象行の処理へ進む。ステップＳ３４において、参照しないと判定された場合（ＮＯ）はそのままステップＳ３９の判定へ進む。
【００６４】
ここで、セル単位の処理について、そのフローチャートを例示する図１６を参照して説明する。セル単位の処理が開始されると、図１６に示すように、処理対象行の先頭のセルが処理対象セルとして設定され（ステップＳ３７１）、ステップＳ３７８において次のセル情報が無いと判定される、つまり、対象行の最終セルまでのセルに対して順にステップＳ３７２〜Ｓ３７７の各処理が行われる。
【００６５】
このセルに対する処理では、対象セル内のデータ読み出しと当該対象セルのセル座標（縦横のセル位置）の取得が行われ（ステップＳ３７２、Ｓ３７３）、その読み出されたデータにレコードファイルを参照するための当該レコードファイルの項目名に関するデータが含まれるか否かが判定される（ステップＳ３７４）。
【００６６】
ステップＳ３７４において、レコードファイルを参照するためのデータが含まれると判定された場合（ＹＥＳ）は、ステップＳ３６〜Ｓ３７の処理で対象となっている現在のレコードにおいて、対象セルから読み出された項目名に関するデータが取得され（ステップＳ３７５）、その取得されたデータで対象セルのデータにおける項目名の部分が置換される（ステップＳ３７６）。つまり、対象セルにおけるレコードファイルを参照する部分がレコードファイルから抽出されたデータで置き換えられる。
【００６７】
なお、ステップＳ３７４において、レコードファイルを参照するためのデータが含まれないと判定された場合（ＮＯ）は、対象セルから読み出されたデータがそのまま当該対象セルにセットされる（ステップＳ３７７）。
【００６８】
上述したように、生成されたテーブルデータを帳票自動作成エンジンＰ４で処理することで、当該生成されたテーブルデータにおけるレコードファイルを参照する部分については、当該レコードファイルから項目名などで検索して取得されたデータが代入される。
【００６９】
具体的には、帳票自動作成エンジンＰ４までの処理で作成されたテーブルデータを例示する図１７に示すように、売上レコードファイルで該当する項目からデータを抽出することで、商品名の項目を参照する部分には「＝”ニンジン”」などの商品名が代入され、日付の項目を参照する部分には「＝”２００６０７３１」などの日付連番が代入され、単価＊数量を参照する部分には「＝９８＊１５０」などの数値データが代入される。
【００７０】
データ処理装置１は、この帳票自動作成エンジンＰ４で生成されたテーブルデータに基づいて、表計算ツールＰ１により各セルの演算を行うことで、表示部３０による画面表示や印刷部５０によるプリント出力で推移表を出力することができる。
【００７１】
具体的には、図１７に示すような推移表のテーブルデータに基づいて、表計算ツールＰ１による推移表の出力を行う場合は、帳票自動作成エンジンＰ４まで処理で作成されたテーブルデータに基づいて表示される推移表を例示する図１８に示すような推移表が出力される。つまり、行属性が「タイトル」又は「グループ」の行について、「明細」などに含まれるデータをもとに演算された結果が推移表領域Ｒ５に出力される。
【００７２】
以上のように、テーブルデータに基づいた表（帳票等）を出力する表計算ツールＰ１としての機能を有するデータ処理装置１は、項目毎にデータが格納されたレコードファイル４６を記憶する記憶部４０と、記憶部４０に記憶されるレコードファイル４６から抽出する項目及び当該項目に係るデータの抽出期間に関する情報の入力を受け付ける入力部２０とを有し、ＣＰＵ１０が実行する処理により、前記入力された抽出期間に関する情報に基づいて、当該抽出期間内で分割された時系列期間を算出し、前記算出された時系列区間毎に、記憶部４０に記憶されたレコードファイル４６から入力された項目に係るデータを抽出して集計するデータ部品Ｄｎを生成し、その生成されたデータ部品Ｄｎを組み合わせることで、時系列の推移を出力するためのテーブルデータを生成する構成である。
【００７３】
このため、データ処理装置１は、項目毎にデータが蓄積されたレコードデータからいずれかの項目のデータを抽出して作成されるテーブルデータに基づいて推移表を作成する際に、時系列区間毎にデータを抽出して集計するデータ部品を組み合わせるだけで推移表を出力するためのテーブルデータを生成することができ、いずれかの項目に係るデータの時系列的な推移を調べるための推移表を容易に作成することができる。
【００７４】
また、データ処理装置１は、推移表のレイアウトに関するデータであるテンプレートファイル４５が予め記憶部４０に記憶されており、このテンプレートファイル４５に含まれるデータに基づく推移表テンプレートＴの推移表領域Ｒ５においてデータ部品Ｄｎを組み合わせることで、推移表を出力するためのテーブルデータを生成する構成である。
【００７５】
このため、データ処理装置１は、テンプレートファイル４５で出力する推移表のレイアウトを調整することができ、例えば、テンプレートファイル４５における推移表領域Ｒ５の位置を調整することで、時系列データを表示する領域の調整を行うことができる。
【００７６】
また、データ処理装置１は、入力部２０からの期間単位入力領域Ｉｎ５への入力により、抽出期間内で分割する単位期間の入力を受け付け、その入力された単位期間に基づいて日付演算処理を行う構成である。このため、データ処理装置１は、データ部品の時系列区間をユーザが設定する単位期間として設定することができ、ユーザが所望する期間毎に集計した推移表データを出力させることができる。
【００７７】
また、データ処理装置１は、入力部２０からの終了日入力領域Ｉｎ４への入力により、抽出期間の終了時の入力を受け付け、その入力された終了時に基づいて、遡るように日付演算処理を行う構成である。このため、データ処理装置１は、ユーザが集計を所望する時点から以前の期間毎に集計した推移表データを出力させることができる。
【００７８】
なお、本実施の形態における記述は、データ処理装置１の一例を示すものであり、これに限定するものではない。本実施の形態における構成及び動作に関しては、適宜変更が可能なものである。
【図面の簡単な説明】
【００７９】
【図１】（ａ）は、データ処理装置１の機能的構成を模式的に示すブロック図であり、（ｂ）は、データ処理システム１００の構成を模式的に示すブロック図である。
【図２】（ａ）は、記憶部４０に記憶されるデータを模式的に示す概念図であり、（ｂ）は、データ処理装置１が実行するソフトウエアの構成を模式的に示す概念図である。
【図３】（ａ）は、レコードファイル４６の構成を模式的に示す概念図であり、（ｂ）は、レコードファイル４６のデータ内容を具体的に例示する概念図である。
【図４】テーブルデータのデータ構成を例示する概念図である。
【図５】データ処理装置１における推移表のレイアウト生成に関する動作を例示するフローチャートである。
【図６】推移表ウイザード起動処理を例示するフローチャートである。
【図７】推移表テンプレートＴを例示する概念図である。
【図８】（ａ）は、分類項目領域Ｒ２を例示する概念図であり、（ｂ）は、データ部品Ｄｎを例示する概念図である。
【図９】（ａ）は、推移表ウイザードにおけるダイアログ画面Ｇを例示する概念図であり、（ｂ）は、推移表ウイザードで設定するデータの概要を例示する概念図である。
【図１０】推移表ウイザードエンジン処理を例示するフローチャートである。
【図１１】（ａ）は、分類項目領域データ生成処理を例示するフローチャートであり、（ｂ）は、日付期間演算処理を例示するフローチャートである。
【図１２】データ部品生成・マージ処理を例示するフローチャートである。
【図１３】（ａ）は、日付条件の生成を例示する概念図であり、（ｂ）は、生成されたデータ部品を例示する概念図である。
【図１４】（ａ）は、生成された分類項目領域Ｒ２を例示する概念図であり、（ｂ）は、分類項目領域Ｒ２とデータ部品Ｄ１の組合せを例示する概念図であり、（ｃ）は、データ部品を順次組み合わせる様子を例示する概念図である。
【図１５】データ処理装置１における帳票自動作成エンジン処理に関する動作を例示するフローチャートである。
【図１６】セル単位の処理を例示するフローチャートである。
【図１７】帳票自動作成エンジンＰ４までの処理で作成されたテーブルデータを例示する概念図である。
【図１８】帳票自動作成エンジンＰ４まで処理で作成されたテーブルデータに基づいて表計算ツールＰ１により表示される推移表を例示する概念図である。
【符号の説明】
【００８０】
１  データ処理装置
２  データベース
Ｎ  通信ネットワーク
１０  ＣＰＵ
２０  入力部
３０  表示部
４０  記憶部
４１  表計算プログラム
４２  推移表ウイザードプログラム
４３  推移表ウイザードエンジンプログラム
４４  帳票自動作成エンジンプログラム
４５  テンプレートファイル
４６  レコードファイル
５０  印刷部
６０  通信部
７０  バス
１００  データ処理システム
Ｃ１１〜Ｃ２５  セル
Ｄ１〜Ｄｎ  データ部品
Ｇ  ダイアログ画面
Ｉｎ１  分類項目入力領域
Ｉｎ２  日付項目入力領域
Ｉｎ３  データ項目入力領域
Ｉｎ４  終了日入力領域
Ｉｎ５  期間単位入力領域
Ｉｎ６  期間数入力領域
Ｐ１  表計算ツール
Ｐ２  推移表ウイザードダイアログ
Ｐ３  推移表ウイザードエンジン
Ｐ４  帳票自動作成エンジン
Ｔ  推移表テンプレート
Ｒ１  帳票タイトル領域
Ｒ２  分類項目領域
Ｒ３  見出し領域
Ｒ４  推移表データ表示領域
Ｒ５  推移表領域
【図１】
2008146378.tif 000003
【図２】
2008146378.tif 000004
【図３】
2008146378.tif 000005
【図４】
2008146378.tif 000006
【図５】
2008146378.tif 000007
【図６】
2008146378.tif 000008
【図７】
2008146378.tif 000009
【図８】
2008146378.tif 000010
【図９】
2008146378.tif 000011
【図１０】
2008146378.tif 000012
【図１１】
2008146378.tif 000013
【図１２】
2008146378.tif 000014
【図１３】
2008146378.tif 000015
【図１４】
2008146378.tif 000016
【図１５】
2008146378.tif 000017
【図１６】
2008146378.tif 000018
【図１７】
2008146378.tif 000019
【図１８】
2008146378.tif 000020