情報処理装置、帳票処理方法、プログラム及び記憶媒体
【課題】 帳票における項目のブレイク設定状況を速やかに確認でき、かつ該ブレイク設定を様々な条件で容易に確認又は変更がすることである。
【解決手段】 帳票画面をディスプレイに表示して編集処理を行う場合に、ディスプレイの帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する。この選択毎に、CPUは、同一のフィールド情報が既に選択中かどうかを判断する(S3006)。そして、CPUは、同一のフィールド情報を選択中であると判断した場合と、同一のフィールド情報を選択中でないと判断した場合とで、ディスプレイに表示する前記データ編集項目の表示態様を異なるよう制御する(S3007、S3008)ことを特徴とする。
【解決手段】 帳票画面をディスプレイに表示して編集処理を行う場合に、ディスプレイの帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する。この選択毎に、CPUは、同一のフィールド情報が既に選択中かどうかを判断する(S3006)。そして、CPUは、同一のフィールド情報を選択中であると判断した場合と、同一のフィールド情報を選択中でないと判断した場合とで、ディスプレイに表示する前記データ編集項目の表示態様を異なるよう制御する(S3007、S3008)ことを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ワークシート形式の帳票を編集処理可能な情報処理装置に関するものである。
【背景技術】
【0002】
従来、罫線を主体として構成された表形式の図形、例えば帳票等の、ワークシート形式の集計表等の表をモニタ上で作成し、該作成された表を表示して編集する表編集機能を備えた情報処理装置が知られている。ここで、表編集機能は、情報処理装置が表編集プログラムを実行すること実現される場合が多い。
【0003】
この場合において、帳票は一般に、例えば納品日、分類、品名、金額等項目からなる項目列が第1行に表示され、各項目に対応するデータからなるデータ列がその下に複数行配列されて構成される。この帳票において、何らかの集計等の処理を行いたい場合、項目の設定が行われる。
【0004】
例えば納品日ごとの小計を求めたい場合、小計などの演算処理の対象となる項目として「金額」を設定し、演算処理の範囲を画定するための項目(これを)「ブレイクキー」と称することもある)として「納品日」を設定する。すると、情報処理装置が記憶管理している帳票データにおいて、「納品日」が同一であるデータ列群について「金額」のデータの小計が演算され、そのデータ行の最後尾小計の演算結果が含まれた演算処理結果のデータ行が挿入される。
【0005】
また、この位置で改ページを行う設定がされている場合、改ページが行われて印刷の区切りとなり、これにより、各「納品日」ごとに分けられた「金額」の集計結果を別々のページとして表示または印刷することができる。
【0006】
また、ブレイクキーによる動作としては、小計の行を挿入する、改ページをする以外に、小計を表図形以外の場所に表示または印刷するような機能が知られている(以下「ブレイク」と称することもある)。
【0007】
従来、以上のようなブレイクキーに対応する設定の設定状況を速やかに確認するため、表図形上のデータ項目を選択することでそのデータ項目に設定されているブレイクの設定を表示するという技術があった(例えば、特許文献1参照。)。
【特許文献1】特開2000−222496号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
上記従来の表編集プログラムを実行する情報処理装置では、ブレイクキーに対応する設定を確認するために、ユーザがサンプルデータをユーザ自身で用意しておく必要がある。そして、そのサンプルデータを帳票の対応するフィールドに流し込んで表示部にプレビューすることで、ブレイク設定の内容を確認することが一般的である。
【0009】
しかし、上記ブレイクキーに対応するデータが、例えば全てのデータ行中において同一である場合は、ブレイクキーに対応するデータを上からたどったとしても変化することがない。このため、ブレイクによる小計行挿入及び改ページ等が起こらないためにどの項目がブレイクキーに設定されているのかがわからないという問題を有している。
【0010】
また、ブレイクキーに対応するデータが、データ行中で変化する、すなわち複数種類ある場合であっても、現在編集中のページ内ではブレイクキーに対応するデータが同一で変化しない場合がある。この場合に、小計行及び改ページが設定されている行位置までページ送りをするなどして、移動して確認しなければ、どの項目がブレイクキーに設定されているのかが分からないという問題を有している。
【0011】
また、ブレイクキーに対応するブレイクを発生させるためのデータをユーザ自身で作成することは、ブレイク設定の確認漏れが起こるなど、大変困難であるという問題を有している。
【0012】
また、従来技術では、表図形の項目列に表示されていないデータ項目でのブレイク設定が確認することができなかった。
【0013】
例えば、後付けデータとして入力するデータには、「顧客番号」、「納品日」、「分類」、「品名」及び「金額」に対応するデータが含まれている。
【0014】
しかし、表図形として帳票等のワークシート上に配置される項目列に「納品日」、「分類」、「品名」、「金額」のみが表図形の各列に設定された場合がある。この場合に、もし「顧客番号」をブレイクキーとして改ページを行う設定があったとしても、表図形には「顧客番号」の項目列が存在しないため、表編集画面上でのブレイク設定内容の確認ができないという問題を有している。
【0015】
また、従来技術では、あるページの末尾でデータが変化するようなサンプルデータを作成し、ページ切り替え部分のブレイクの設定を確認する場合がある。この場合に、ユーザは、1ページ当りの表図形の行数を考慮に入れたサンプルデータを作成する必要があり、手間がかかるという問題を有している。
【0016】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、帳票における項目のブレイク設定状況を速やかに確認でき、かつ該ブレイク設定を様々な条件で容易に確認又は変更ができる仕組みを提供することである。
【課題を解決するための手段】
【0017】
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
【0018】
帳票画面を表示部に表示して編集処理を行う情報処理装置であって、前記表示部の帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する選択手段と、前記表示部に表示されるデータ編集項目に流し込むサンプルデータを生成する生成手段と、前記表示部に表示された帳票中のデータ項目に対して、特定の帳票処理を開始させるブレイク設定を行う設定手段と、前記生成手段により生成されるサンプルデータを流し込んで帳票をプレビューするプレビュー手段と、前記選択手段によるフィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する判断手段と、前記判断手段により同一のフィールド情報を選択中であると判断した場合と、前記判断手段により同一のフィールド情報を選択中でないと判断した場合とで、前記プレビュー手段による前記表示部における前記データ編集項目の表示態様を異なるよう制御する表示制御手段とを有することを特徴とする。
【発明の効果】
【0019】
本発明によれば、帳票における項目のブレイク設定状況を速やかに確認でき、かつ該ブレイク設定を様々な条件で容易に確認又は変更ができるようになるため、ユーザの帳票の編集作業負荷が軽減され、作業効率が向上する。
【発明を実施するための最良の形態】
【0020】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【0021】
<システム構成の説明>
〔第1実施形態〕
図1は、本発明の実施の形態に係る表編集機能を備える情報処理装置の構成するブロック図である。本実施形態では、情報処理装置が表編集プログラムをアプリケーションソフトウエアとして実行することで表編集機能を実現する場合を示すが、もちろん、専用の表編集装置として構成することも可能である。
【0022】
本実施の形態に係る表編集機能を有する情報処理装置1は、図1に示すように、主記憶装置であるROM11及びRAM12、外部記憶装置であるFD(フレキシブルディスク)ドライブ13及びHD(ハードディスク)ドライブ15を備える。さらに、情報処理装置は、入力装置であるキーボード16、及びポインティングデバイスであるマウス18(位置指定手段)、表示装置であるディスプレイ17(表示部)、並びにプリンタ19を備える。
【0023】
ディスプレイ17は、後述するような帳票画面を表示可能に構成されている。20はシステムバスで、上記各デバイスが接続され、CPU10によりアクセスが制御される。ここで、CPU10は、ROM11に記憶される制御プログラム又はハードディスクドライブ15に記憶される制御プログラムを実行して、表編集機能処理を実行する。FDドライブ13は挿入されるFD14に対してデータの読み書きを行う。
【0024】
ここで、CPU10は、制御プログラムを実行することで、取得処理、判別処理、表示制御処理を行う。
【0025】
図2は、図1に示したFD14のメモリマップを説明する図である。
【0026】
図2に示すようにFD14には、メモリマップ20のように、ボリューム情報エリア21、ディレクトリ情報エリア22、制御プログラム実行ファイルエリア23、制御プログラム関連データファイルエリア24等が割り当てられている。この他に、これらに対応するデータがFD14に予め記憶されている。上記制御プログラムは、後述する図6及び図7のブレイク設定の表示、ブレイク設定の変更処理の手順がプログラムコード化されたものであり、RAM12にロードされてCPU10により実行される。
【0027】
図3は、図1に示したRAM12のメモリマップを説明する図である。
【0028】
図3に示すように、このメモリマップ30は、上記制御プログラムが実行可能な状態におけるものを示したものである。
【0029】
RAM12には、メモリマップ30のように、基本I/O(入力/出力)プログラムエリア31、OS(オペレーティングシステム)エリア32、制御プログラムエリア33、データ格納エリア34、35が割り当てられている。この他に、これらに対応するデータがRAM12に記憶される。
【0030】
データ格納エリア34はデータエリアM1として用いられ、データ格納エリア35はワークエリアW0、W1〜W4として用いられる。
【0031】
本情報処理装置は、上記基本I/Oプログラム、OS及び制御プログラムをCPU10が実行することにより動作する。
【0032】
基本I/OプログラムはROM11に予め書き込まれており、OSはHDドライブ15に予め書き込まれている。情報処理装置1の電源がオンされたときに、基本I/Oプログラム中のIPL(イニシャル・プログラム・ローディング)機能によりOSがHDドライブ15からRAM12に読み込まれ、OSの動作が開始される。
【0033】
制御プログラムは、FD14からFDドライブ13を介して情報処理装置1にロードすることができる。すなわち、FD14がFDドライブ13に挿入されると、OS及び基本I/Oプログラムの制御の下に制御プログラム実行ファイル及び制御プログラム関連データファイルがFD14から読み出され、RAM12にロードされて動作可能となる。
【0034】
図4は、本実施形態を示す情報処理装置で処理するデータの一構造を説明する図である。本例は、フィールドリストの構成を模式的に示している。なお、CPU10は、グラフィカル・ユーザ・インタフェース(GUI)で提供される表編集画面をディスプレイ17に表示して、表編集処理を行う。
本実施形態では、帳票中の複数のフィールドは、図4の(a)に示すように、フィールドの順番に各フィールドの情報を格納しており、各フィールドは、フィールド属性を有する。このフィールド属性は、図4の(b)に示すように、フィールドID、フィールド名、データ型などから構成される。
【0035】
フィールドIDは、プログラム内で、帳票中のフィールドを一意に識別するための数字である。
【0036】
フィールド名は、ユーザが帳票中のフィールドを識別するための一意の文字列である。データ型は、受け取るデータの種類を表し、文字・数値・日付・時間・バーコード等の値をとり得る。
【0037】
文字は、半角文字のフィールド(XXXXXX)なのか、全角文字のフィールド(KKKKK)なのかの値をとる。
【0038】
数値は、桁数を決定したり、カンマをいれたりするかを決定する値をとる。日付は、西暦、和暦、桁数、曜日有無を決定する値をとる。
【0039】
例えば、西暦2桁表示の場合は、'YY/MM/DD'となり、西暦4桁の場合は、'YYYY/MM/DD'となる。また、和暦4桁曜日有の場合は、'GGgg/MM/DD/W'となる。時間は、24時間制なのか、12時間制なのか、分や秒まであるのか等を示す値をとる。
【0040】
'AAHH:mm:ss'と属性をセットし、後づけデータが'130203'の場合は、フィールドには'PM01:02:03'とデータ入力される。バーコードは、JAN8、CODE−39、NW7のいずれのバーコード種別なのかを示す値をとる。
【0041】
次に、本実施形態における表編集プログラムを実行可能な情報処理装置の帳票処理における表編集機能について説明する。
【0042】
図5は、図1に示したディスプレイ17に表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。本画面は、プレビュー画面の一例である。
【0043】
本実施形態においては、CPU10が表編集に係るユーザインタフェース画面として、図5に示すような画面をディスプレイ17上に表示する。この表示画面は、表示する表図形が擬似表示されるレイアウト表示部50と、フィールド管理手段において、複数のフィールドが表示されるフィールド表示部51との2つの画面から構成されている例を示している。フィールド表示部51には、フィールド情報として、「納品日」、「分類」、「品名」、「単価(円)」「数量」、「金額(円)」等が設定されている場合を示す。
【0044】
表図形52は、最上行に項目行53(項目列)、その下に複数のレコード行54が配置されて構成される。項目行53は、「納品日」、「分類」、「品名」、「単価(円)」「数量」、「金額(円)」等の項目からなるデータ列である。レコード行54は、項目行53の各項目に対応した値が入力される。小計行55(集計行)は、ブレイクキーに対応する項目のデータが切り替わった際、表図形52へ挿入される行である。本例では、複数の行を示している。
【0045】
本実施形態における表編集機能を実行可能な情報処理装置において、表図形52はデータを流し込む前の、テンプレートとしての集計表であり、ディスプレイ17には、項目行53としてフィールド属性のフィールド名が表示されている。
【0046】
また、レコード行54としてデータを表示させる際の書式が表示されており、小計行55としてブレイクキーに対応する項目が切り替わった際に挿入される小計行の書式が表示されている。
【0047】
フィールド表示部51には、個々のフィールドを表すフィールドアイテムが並んで表示される。
【0048】
フィールドは、帳票等の設計の際、最初に用意されているフィールドデータの受け口であり、データベース等から生成されるデータの一覧である。それぞれのフィールドはプログラム内部でフィールドを識別する一意の数字であるフィールドIDを持ち、RAM12のデータエリアM1に格納されている。
【0049】
また、ワークエリアW1には、ブレイクキーとして設定された項目のフィールドIDが格納される。後付けデータを「フィールドID=XXX」と指定することにより、指定されたフィールドに後付けデータの「XXX」をオーバーレイされて出力することができる。
【0050】
また、プログラム内部でブレイクによる動作を識別する一意の数字であるブレイクIDを持ち、RAM12のデータエリアM1に格納されている。
【0051】
つまり、フィールドIDにブレイクIDを指定することにより、該フィールドIDに流し込まれる後付けデータが途中で変化していることをCPU10が判断する。そして、CPU10による判断結果に基づいて、該フィールドIDに指定されているブレイクIDのブレイク動作(小計行挿入、改ページ動作)が実行される。
【0052】
図6は、図1に示したディスプレイ17に表示されるプレビュー画面の一例を示す図である。本例は、フィールド「顧客番号」におけるブレイクの設定状況表示を例示している。
【0053】
図6において、フィールド表示部51の「顧客番号」のデータに変化が起こったとCPU10が判断した場合に、ディスプレイ17で編集中の画面上で、小計行71を挿入した後、今月分合計行72をレイアウト表示部50内の表図形内に挿入する。そして、さらに改ページ73を行い、その後に続くデータを別のページに表示あるいは印字する旨をユーザに視覚的であって明確に認識させるための表示を行う。
【0054】
図7は、図1に示したディスプレイ17に表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。本画面は、ブレイクの設定時にディスプレイ17に表示されるウィンドウの一例である。フィールドに対応した項目と、挿入する行を指定可能に構成されている。
【0055】
図7において、60はブレイクの設定画面であり、図5に示したフィールド表示部51に対応する項目に対して、個別にブレイク行をレイアウト表示部50内に指定可能に構成されている。
【0056】
61〜63はボタンで、ボタン61を押下すると、サンプルデータの生成を開始する。ボタン62はOKボタンとして機能し、図7において指定した内容を確定する場合に押下される。ボタン63はキャンセルボタンとして機能し、図7に示した画面を消去する場合に押下される。
【0057】
図8は、本実施形態を示す情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。本例は、帳票処理におけるブレイク設定に伴うフィールド生成処理とプレビュー処理例である。なお、S1000、S2000、S3000は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0058】
まず、S1000で、CPU10は、上記表編集プログラムを実行するため、ディスプレイ17に図7に示すブレイク設定のための画面を表示する。ここで、ユーザがキーボード16、マウス18を操作して、ディスプレイ17画面に指示を入力して、必要なブレイク設定を行う図6に示す対象となる表中で、ブレイクする項目のフィールドを指定する設定を行う。
【0059】
本実施形態で、ブレイクの設定は、対象となる項目(ブレイクキー)の指定と、該指定したブレイクキーで、データが切り替わった際、どのような動作をさせるかの指定によりなされる。
【0060】
例えば図7では、ブレイクの設定テーブル60に、ユーザがキーボード16により「○」印を入力することにより、ブレイクの設定が行われる。該設定テーブル60は、行「今月分合計行」、「小計行」及び「改ページ」と列「顧客番号」の交わるセルに「○」印が記入されている。このため、印刷時に「顧客番号」に挿入されるフィールドデータが切り替わった際に、「今月分合計行」、「小計行」が集計表に自動的に挿入され、その後に、改ページが行われ、それ以降のフィールドデータは異なるページに印刷される。
【0061】
また、図7に示すように、行「小計行」と列「納品日」の交わるセルに「○」印が記入されているため、印刷時に「納品日」に挿入されるフィールドデータが切り替わった際に、「小計行」が集計表に挿入される。このとき、改ページは行われない。
【0062】
前述のブレイクの設定テーブル60は、RAM12のデータエリアM1に格納されている。また、RAM12のデータエリアM1には、項目行53の各項目に対応する各フィールド項目が格納されている。
【0063】
そして、S2000で、ブレイクの設定を確認するためのサンプルとなるフィールドデータの生成を行う。本実施形態では、図7に示したボタン61が押下された場合に、本処理を行う。このため、ユーザが帳票毎にサンプルデータをあらかじめ作成して用意する等の手間がなくなり、利便性が向上する。
【0064】
このようにして、フィールドデータの生成が行われると、次に、S3000で、生成されたフィールドデータをフィールドに流し込み、ブレイク設定状況を確認するためのプレビュー表示をディスプレイ17上で行い、全ての処理を完了する。
【0065】
これにより、CPU10により自動生成されるサンプルデータに基づいて、図6に示すように、ブレイク設定状況を確認するためのプレビュー表示をディスプレイ17上で確認可能となる。本例は、通常の帳票表示に比べて、各帳票を構成する図形の輪郭が、例えば太線で強調表示されているため、視認性よくブレイク設定項目を確認できる。
【0066】
図9は、本実施形態を示す情報処理装置における第2のデータ処理手順の一例を示すフローチャートである。本例は、図8に示したS2000のフィールドデータ生成処理の第1の詳細処理例である。なお、S2001〜2007、S2100は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。本処理は、図7に示したボタン61が押下されることにより開始される。
【0067】
まず、S2100で、CPU10は、図5に示した項目行53及び、フィールドデータの一番目のレコード行を出力する初期データ出力処理を行う。なお、本処理の詳細は、図10において詳述する。なお、本処理で出力されたフィールドデータはRAM12のワークエリアW1に保存される。
【0068】
次に、S2001で、CPU1は、フィールドリストから、フィールド項目を取得する。そして、S2002で、CPU10は、もし、全てのフィールド項目について全て読み出しを完了しているかどうかを判断する。ここで、CPU10が完了していると判断した場合は、直ちに本処理を終了する。
【0069】
一方、S2002で、CPU10がフィールド項目の取得が完了していないと判断した場合、S2003で、CPU10はワークエリアW1に格納されている直前のフィールドデータを取得する。
【0070】
次に、S2004でCPU10は、全てのフィールド項目のフィールドデータについて次の行のデータ生成が全て完了しているかどうかを判断する。ここで、CPU10が全てのフィールド項目のフィールドデータについて次の行のデータ生成が全て完了していると判断した場合は、S2001に戻り、次のフィールドIDを取得する。
【0071】
一方、S2004で、全てのフィールド項目のフィールドデータについて次の行のデータ生成が全て完了していないと判断した場合は、S2005に進む。そして、S2005で、CPU10は、S2001で取得したブレイクキーリストのフィールドIDと、S2003で取得したフィールド項目が一致するものがあるか判断を行う。
【0072】
ここで、CPU10が一致するものがないと判断した場合は、データの切り替えを行うべきフィールド項目のフィールドデータでないとして、S2007へ進む。そして、S2007で、S2003にて取得したフィールドデータをワークエリアW1に追加格納し、S2001へ戻り、次のフィールドIDを取得する。
【0073】
一方、S2005でブレイクキーリストのフィールド項目と、フィールド項目が一致したと判断した場合、データの切り替えを行うべきフィールド項目のフィールドデータであるとして、S2006で、フィールドデータを変更する。そして、S2007で、その後に変更したフィールドデータをワークエリアW1に追加格納し、S2001へ戻り、次のフィールドIDを取得する。
【0074】
なお、S2006において、フィールドデータを変更する方法は、どのような方法を用いてもよい。
【0075】
図10は、本実施形態を示す情報処理装置における第3のデータ処理手順の一例を示すフローチャートである。本例は、図9に示したS2100の初期データ出力の詳細処理例である。なお、S2101〜2109は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0076】
まず、S2101で、CPU10は、データエリアM1より、フィールドリスト内のフィールド項目を取得する。そして、S2102で、CPU10は、全てのフィールド項目について全て読み出しが完了しているかどうかを判断する。ここで、CPU10が全てのフィールド項目について全て読み出しが完了していると判断した場合、直ちに本処理を終了する。
【0077】
一方、S2102で、CPU10が全てのフィールド項目について全て読み出しが完了していないと判断した場合、S2103で、CPU10は読み出したフィールド項目のフィールド名をRAM12のワークエリアW1へ格納する。
【0078】
続いて、S2104で、フィールド項目のデータ型を取得し、S2105で、CPU10は、取得したデータ型の種類が文字型、数値型、日付型のいずれであるかを判断する。
【0079】
ここで、CPU10がデータ型の種類が文字型であると判断した場合、S2106で、文字型のフィールドデータを生成する。そして、S21109で、CPU10は、生成した文字型のフィールドデータをRAM12のワークエリアW1へ格納して、S2101へ戻り、次のフィールド項目を取得する。
【0080】
一方、S2105で、CPU10が取得したデータ型を数値型であると判断した場合、S2107で、フィールドデータを数値型のフィールドデータを生成する。そして、S2109で、生成した数値型のフィールドデータをRAM12のワークエリアW1へ格納して、S2101へ戻り、次のフィールド項目を取得する。
【0081】
一方、S2105で、CPU10が取得したデータ型を日付型であると判断した場合、S2108で、CPU10は、日付型のフィールドデータを生成する。
【0082】
そして、S2109で、CPU10は、生成した日付型のフィールドデータをRAM12のワークエリアW1へ格納して、S2101へ戻り、次のフィールド項目を取得する。
【0083】
なお、上記S2106、S2107及びステップS2108で生成する型別のフィールドデータの生成方法は、本実施形態で示す機能が達成できれば、どのような方法を用いてもよい。
【0084】
また、S2109の後、再びS2101において、次のフィールド項目を取得する。
【0085】
図11は、本実施形態を示す情報処理装置における第4のデータ処理手順の一例を示すフローチャートである。本例は、図8に示したS3000のブレイク設定のプレビュー処理例である。なお、S3001〜3009は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0086】
まず、S3001で、CPU10は、マウス18によるディスプレイ17上の入力点の座標を公知の手法により取得する。次に、S3002で、CPU10は、フィールド項目表示位置を取得する。次に、S3003で、CPU10は、入力点の座標及び、フィールド項目表示位置よりデータエリアM1に格納されているフィールドを判別し、該フィールドIDを取得する。
【0087】
次いで、S3004で、CPU10は、ブレイクキーとして設定された項目(例えば「顧客番号」)のフィールドIDを取得する。そして、S3005で、S3003で取得したフィールドIDとS3004で取得したブレイクキー項目のフィールドIDとが一致するかどうかを判断する。ここで、CPU10が一致しないと判断した場合は、直ちに本処理を終了する。
【0088】
一方、S3005で、CPU10が取得したフィールドIDとS3004で取得したブレイクキー項目のフィールドIDとが一致すると判断した場合は、S3006へ進む。
【0089】
そして、S3006で、CPU10は、ブレイクの設定状況の表示が既にディスプレイ17に表示されているか(フィールド項目が既に選択済みか)を判断する。ここで、フィールド項目とは、データ編集項目に対応する。つまり、CPU10は、フィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する。
【0090】
ここで、CPU10が、フィールド項目が既に選択済みでないと判断した場合は、S3008へ進み、例えば図6に示す表示態様でブレイクの設定状況の表示をディスプレイ17上で行う。そして、S3009で、CPU10は、ブレイク設定状況の表示がなされていることを示すブレイク表示中フラグを変更してRAM12のワークエリアW2に格納して、本処理を終了する。
【0091】
一方、S3006で、同一のフィールド項目が既に選択済みであると判断した場合、つまり、既にブレイクの設定状況が図6に示すよう表示されていた場合、表示されているブレイク設定状況の表示を消去するものと判断して、S3007へ進む。そして、S3007で、CPU10は、ディスプレイ17上におけるブレイク設定状況の表示をディスプレイ17より消去(非表示)する。
【0092】
そして、S3009で、CPU10は、ブレイク設定状況の表示がされていないことを示すブレイク表示中フラグをRAM12のワークエリアW2に格納して、本処理を終了する。
【0093】
これにより、ディスプレイ17で表示中の表中において、フィールド「顧客番号」のデータ変化が起こった際、図11に示すS3008をCPU10が実行する表示制御を行う。つまり、CPU10は、小計行71を挿入したのち、今月分合計行72を表図形内に挿入し、さらに改ページを行う表示制御を行う。この結果、その後に続くデータを別のページに表示あるいは印字する旨をユーザに視覚的にわかりやすく認識させることができる。
【0094】
〔第2実施形態〕
第2実施形態では、第1実施形態に加え、フィールドデータの生成規則の設定を変更することによって示す。尚、第2実施形態における情報処理装置の構成は、第1実施形態と同様である。
【0095】
図12は、本実施形態を示す情報処理装置におけるフィールドデータの生成規則の変更処理を説明する図である。本例は、発生順序とブレイクキーとから構成される。
【0096】
本例は、図13に示す表編集画面において、表示されるブレイク設定画面構成を模式的に説明する画面に対応する。
【0097】
図12において、120は発生順序で、例えば1〜3の順にブレイクキー121として、「納品日」、「分類」及び「品名」、「顧客番号」が切り替える設定に対応する。
【0098】
図13は、本実施形態を示す情報処理装置におけるブレイクキーの設定処理を説明する図である。本画面130は、CPU10の表示制御で、ディスプレイ17の表示される。本画面では、図12に示した形式を適用した、ブレイクキーの設定処理画面を示している。
【0099】
図13の(a)において、フィールドリスト表示部131から、フィールドデータ生成規則表示部132へ、マウス18によるドラッグアンドドロップ操作によって設定する例を示す。フィールドデータ生成規則表示部132によると、1番目にデータ項目「納品日」でデータの切り替えが行われ、その後、2番目に「分類」及び「品名」同時に切り替わる。
【0100】
そして、最後、3番目にデータ項目「顧客番号」が切り替わるようなフィールドデータの生成が行われるような設定となっている。
【0101】
図13(b)は、各々のブレイクに関する詳細設定を示すウィンドウ133である。フィールドデータの切り替えが発生するまでのレコード行数の間隔等を設定することができる。
【0102】
図14は、本実施形態を示す情報処理装置における第5のデータ処理手順の一例を示すフローチャートである。本例は、本例は、図8に示したS2000のフィールドデータ生成処理の第2の詳細処理例である。なお、S2100、S2201〜2208は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0103】
まず、S2100で、図9に示した場合と同様に初期データを出力する。これは前述と同様のため省略する。
【0104】
次に、S2201で、CPU10は、RAM12のデータエリアM1に格納されているブレイクキーリストを取得する。そして、S2202で、CPU10は、RAM12のデータエリアM1に格納されている、全てのブレイクキーリストについて全て読み出しが完了しているかどうかを判断する。ここで、CPU10が全てのブレイクキーリストについて全て読み出しが完了していると判断した場合は、直ちに本処理を終了する。
【0105】
一方、S2202で、CPU10が全てのブレイクキーリストについて全て読み出しが完了していないと判断した場合は、CPU10は、S2203で、RAM12のワークエリアW1に記憶されたフィールドリストから、フィールド項目を取得する。
【0106】
そして、S2204で、CPU10は、RAM12のワークエリアW1に記憶されたフィールドリストから全てのフィールド項目について全て読み出しが完了しているかどうかを判断する。ここで、全てのフィールド項目について全て読み出しが完了していると判断した場合は、フィールドデータのレコード1行分のデータが生成されたとしてS2201へ戻り、次のブレイクキーリストを取得する。
【0107】
一方、S2204で、CPU10が全てのフィールド項目について全て読み出しが完了していないと判断した場合は、S2205で、CPU10は、RAM12のワークエリアW1に格納されている直前のフィールドデータを取得する。
【0108】
そして、S2206で、CPU10は、S2201で取得したブレイクキーリストのフィールド項目と、S2205で取得したフィールド項目が一致するものがあるか判断を行う。ここで、CPU10が一致するものがないと判断した場合は、データの切り替えを行うべきフィールド項目のフィールドデータでないとして、S2208に進む。そして、S2208で、S2205にて取得したフィールドデータをRAM12のワークエリアW1に追加格納し、S2203へ戻り、次のフィールド項目を取得する。
【0109】
一方、S2206で、CPU10は、ブレイクキーリストのフィールド項目と、フィールド項目が一致するものがあると判断した場合、データの切り替えを行うべきフィールド項目のフィールドデータであるとして、S2207へ進む。そして、S2207で、CPU10は、RAM12上で管理されているフィールドデータを変更し、S2208へ進む。そして、S2208で、CPU10は、変更したフィールドデータをRAM12のワークエリアW1に追加格納し、S2203へ戻り、次のフィールド項目を取得する。
【0110】
なお、S2207において、フィールドデータを変更する方法は、どのような方法を用いてもよい。
【0111】
本実施形態によれば、フィールドデータの生成自由度が格段に向上し、ユーザの所望するフィールドデータを得ることができる。
【0112】
〔第3実施形態〕
第3実施形態では、第1実施形態に加え、ブレイク設定状況の表示から、ブレイク設定の属性の消去及び属性の変更を行えるようにする。尚、第3実施形態における情報処理装置の構成は、第1実施形態と同様である。
【0113】
図15は、本実施形態を示す情報処理装置における第6のデータ処理手順の一例を示すフローチャートである。本例は、本例は、図8に示したS2000のフィールドデータ生成処理の第2の詳細処理例である。本処理は、ブレイク設定の消去及び属性の変更処理例である。なお、S4001〜4009は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0114】
まず、S4001で、CPU10は、マウス18によるディスプレイ17上の入力点の座標を公知の手法により取得する。次に、S4002で、CPU10は、ディスプレイ17に表示されているブレイク設定状況の表示位置を取得する。次に、S4003で、入力点の座標及び、ブレイク設定の表示位置よりブレイク設定表示部分であるか否かを判断する。
【0115】
ここで、CPU10がブレイク設定表示部分でないと判断した場合、直ちに本処理を終了する。
【0116】
一方、S4003で、CPU10がブレイク設定表示部分であると判断した場合、S4004へ進む。そして、S4004で、入力点の座標及びブレイク設定表示位置からRAM12のデータエリアM1に格納されているフィールドを判別し、フィールドIDを取得する。
【0117】
次に、S4005で、CPU10は、S4006で、RAM12からブレイクIDを取得し、S4006にて取得したフィールドIDから操作対象となるブレイクIDを判断する。マウス18からの入力がブレイク設定削除命令か否かを判断する。
【0118】
ここで、CPU10がブレイク設定削除命令であると判断場合、S4008で、CPU10は、取得したフィールドIDのブレイク設定の削除処理を図16に示すように行い、本処理を終了する。
【0119】
図16は、本実施形態を示す情報処理装置におけるブレイク設定の削除処理例を示す図である。図16の(a)はブレイク設定変更前で、図16の(b)はブレイク設定変更後であって、例えばブレイク解除命令を選択している状態である。
【0120】
本例では、ブレイク設定の処理として、ブレイク解除、ブレイク変更等の例を示す。図16の(a)において表示されていたブレイク設定のうち、「今月分合計」を、図16の(a)に示す命令選択処理に基づいて、図16の(b)に示す用に、選択された「今月分合計」を削除した状態に対応する。
【0121】
一方、S4006で、CPU10により操作がブレイク削除命令でないと判断した場合、さらに、CPU10は、S4007で、ブレイク設定の内容を変更ものであるかどうかを判断する。ブレイク設定の変更の場合、S4009で、CPU10は、ブレイクの設定変更処理を行い、本処理を終了する。
【0122】
一方、S4007で、CPU10が取得したブレイクIDがブレイク設定の内容を変更するものでないと判断した場合は、本処理を終了する。
【0123】
なお、上記ブレイクの設定変更処理及びブレイクの設定削除処理及の操作において、ウィンドウからの操作指示や、ドラッグアンドドロップによる操作、キーボードによる入力など、操作指示方法はどのようなものであってもよい。
【0124】
また、上記いずれかの実施形態では、CPU10がディスプレイ17にフィールドリスト表示部41からの矢印による表示でブレイク表示をする態様例示をした。しかしんがら、表示態様は上記に限られず、ブレイクの設定があることを認識させることができれば、他の態様を採用してもよい。
【0125】
例えば、ブレイクキーとして設定されたデータ項目列の近傍、あるいはディスプレイ17上における所定の表示領域に表示させるようにしてもよい。また、表示内容を文字や、表示色の属性を変化させるようにしてもよい。
【0126】
また、上記いずれかの実施形態では、表図形における設定したブレイクキーによる小計行の挿入及び、改ページを行う場合の表示を例示したが、対象をなる項目は例示したもの以外でもよい。
【0127】
例えば、小計を演算した結果を、表図形の表示領域外に表示させるような設定について、設定の状況を確認する表示を行ってもよい。また、対象となる項目は、ブレイクキーに限るものではない。例えば、小計のための集計対象項目のような項目であってもよい。あるいは、ブレイクキーと、集計対象項目の双方というように、複数の項目について同時に処理するようにしてもよい。
【0128】
例えば、前述の実施形態では、フィールドデータ出力処理をサンプルデータ生成用のボタン61の操作により開始する態様を例示した。しかしながら、例えば、メニューの項目から実行する、図6におけるブレイク設定が終了した時点で自動開始される等、どの態様を採用してもよい。ボタン61が押下されると、CPU10は、編集中の帳票の表図形の表示領域内に生成したサンプルデータを流し込んで帳票をプレビューする。
【0129】
また、例えば、前述の実施の形態では、ブレイクの設定を行う際にテーブルに「○」印を記入することで設定を行う態様を例示したが、前記ブレイクの設定をさせることができれば他の態様を採用してもよい。例えば、設定に必要な項目をファイル等に書き込み、それを読み込む、あるいは、メニューから選択する方法で設定を行ってもよい。
【0130】
また、例えば、前述の実施の形態では、フィールド項目のデータ型に文字型、数値型、日付型を例示したが、フィールド項目のデータ型は、例えば時間、バーコード、画像等どのようなものであってもよい。
【0131】
また、上記実施の形態では、ブレイク表示について、マウス18による入力点がブレイク設定の表示部分である場合に、該ブレイク設定の消去及び設定の属性の変更を例示した。しかしながら、例えば、小計行に対するブレイクキーの追加等、例示したもの以外のブレイク設定の属性変更を行えるようにしてもよい。
【0132】
〔第3実施形態〕
以下、図17に示すメモリマップを参照して本発明に係る情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。
【0133】
図17は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0134】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0135】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0136】
本実施形態における図8、図9、図10、図11、図14、図15に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0137】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0138】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0139】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0140】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【0141】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0142】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
【0143】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0144】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0145】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0146】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
【0147】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【図面の簡単な説明】
【0148】
【図1】本発明の実施の形態に係る表編集機能を備える情報処理装置の構成するブロック図である。
【図2】図1に示したFDのメモリマップを説明する図である。
【図3】図1に示したRAMのメモリマップを説明する図である。
【図4】本実施形態を示す情報処理装置で処理するデータの一構造を説明する図である。
【図5】図1に示したディスプレイに表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。
【図6】図1に示したディスプレイに表示されるプレビュー画面の一例を示す図である。
【図7】図1に示したディスプレイに表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。
【図8】本実施形態を示す情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。
【図9】本実施形態を示す情報処理装置における第2のデータ処理手順の一例を示すフローチャートである。
【図10】本実施形態を示す情報処理装置における第3のデータ処理手順の一例を示すフローチャートである。
【図11】本実施形態を示す情報処理装置における第4のデータ処理手順の一例を示すフローチャートである。
【図12】本実施形態を示す情報処理装置におけるフィールドデータの生成規則の変更処理を説明する図である。
【図13】本実施形態を示す情報処理装置におけるブレイクキーの設定処理を説明する図である。
【図14】本実施形態を示す情報処理装置における第5のデータ処理手順の一例を示すフローチャートである。
【図15】本実施形態を示す情報処理装置における第6のデータ処理手順の一例を示すフローチャートである。
【図16】本実施形態を示す情報処理装置におけるブレイク設定の削除処理例を示す図である。
【図17】本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【0149】
1 情報処理装置
10 CPU
11 ROM
12 RAM
13 FDドライブ
15 HDDドライブ
16 キーボード
17 ディスプレイ
18 マウス
19 プリンタ
【技術分野】
【0001】
本発明は、ワークシート形式の帳票を編集処理可能な情報処理装置に関するものである。
【背景技術】
【0002】
従来、罫線を主体として構成された表形式の図形、例えば帳票等の、ワークシート形式の集計表等の表をモニタ上で作成し、該作成された表を表示して編集する表編集機能を備えた情報処理装置が知られている。ここで、表編集機能は、情報処理装置が表編集プログラムを実行すること実現される場合が多い。
【0003】
この場合において、帳票は一般に、例えば納品日、分類、品名、金額等項目からなる項目列が第1行に表示され、各項目に対応するデータからなるデータ列がその下に複数行配列されて構成される。この帳票において、何らかの集計等の処理を行いたい場合、項目の設定が行われる。
【0004】
例えば納品日ごとの小計を求めたい場合、小計などの演算処理の対象となる項目として「金額」を設定し、演算処理の範囲を画定するための項目(これを)「ブレイクキー」と称することもある)として「納品日」を設定する。すると、情報処理装置が記憶管理している帳票データにおいて、「納品日」が同一であるデータ列群について「金額」のデータの小計が演算され、そのデータ行の最後尾小計の演算結果が含まれた演算処理結果のデータ行が挿入される。
【0005】
また、この位置で改ページを行う設定がされている場合、改ページが行われて印刷の区切りとなり、これにより、各「納品日」ごとに分けられた「金額」の集計結果を別々のページとして表示または印刷することができる。
【0006】
また、ブレイクキーによる動作としては、小計の行を挿入する、改ページをする以外に、小計を表図形以外の場所に表示または印刷するような機能が知られている(以下「ブレイク」と称することもある)。
【0007】
従来、以上のようなブレイクキーに対応する設定の設定状況を速やかに確認するため、表図形上のデータ項目を選択することでそのデータ項目に設定されているブレイクの設定を表示するという技術があった(例えば、特許文献1参照。)。
【特許文献1】特開2000−222496号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
上記従来の表編集プログラムを実行する情報処理装置では、ブレイクキーに対応する設定を確認するために、ユーザがサンプルデータをユーザ自身で用意しておく必要がある。そして、そのサンプルデータを帳票の対応するフィールドに流し込んで表示部にプレビューすることで、ブレイク設定の内容を確認することが一般的である。
【0009】
しかし、上記ブレイクキーに対応するデータが、例えば全てのデータ行中において同一である場合は、ブレイクキーに対応するデータを上からたどったとしても変化することがない。このため、ブレイクによる小計行挿入及び改ページ等が起こらないためにどの項目がブレイクキーに設定されているのかがわからないという問題を有している。
【0010】
また、ブレイクキーに対応するデータが、データ行中で変化する、すなわち複数種類ある場合であっても、現在編集中のページ内ではブレイクキーに対応するデータが同一で変化しない場合がある。この場合に、小計行及び改ページが設定されている行位置までページ送りをするなどして、移動して確認しなければ、どの項目がブレイクキーに設定されているのかが分からないという問題を有している。
【0011】
また、ブレイクキーに対応するブレイクを発生させるためのデータをユーザ自身で作成することは、ブレイク設定の確認漏れが起こるなど、大変困難であるという問題を有している。
【0012】
また、従来技術では、表図形の項目列に表示されていないデータ項目でのブレイク設定が確認することができなかった。
【0013】
例えば、後付けデータとして入力するデータには、「顧客番号」、「納品日」、「分類」、「品名」及び「金額」に対応するデータが含まれている。
【0014】
しかし、表図形として帳票等のワークシート上に配置される項目列に「納品日」、「分類」、「品名」、「金額」のみが表図形の各列に設定された場合がある。この場合に、もし「顧客番号」をブレイクキーとして改ページを行う設定があったとしても、表図形には「顧客番号」の項目列が存在しないため、表編集画面上でのブレイク設定内容の確認ができないという問題を有している。
【0015】
また、従来技術では、あるページの末尾でデータが変化するようなサンプルデータを作成し、ページ切り替え部分のブレイクの設定を確認する場合がある。この場合に、ユーザは、1ページ当りの表図形の行数を考慮に入れたサンプルデータを作成する必要があり、手間がかかるという問題を有している。
【0016】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、帳票における項目のブレイク設定状況を速やかに確認でき、かつ該ブレイク設定を様々な条件で容易に確認又は変更ができる仕組みを提供することである。
【課題を解決するための手段】
【0017】
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
【0018】
帳票画面を表示部に表示して編集処理を行う情報処理装置であって、前記表示部の帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する選択手段と、前記表示部に表示されるデータ編集項目に流し込むサンプルデータを生成する生成手段と、前記表示部に表示された帳票中のデータ項目に対して、特定の帳票処理を開始させるブレイク設定を行う設定手段と、前記生成手段により生成されるサンプルデータを流し込んで帳票をプレビューするプレビュー手段と、前記選択手段によるフィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する判断手段と、前記判断手段により同一のフィールド情報を選択中であると判断した場合と、前記判断手段により同一のフィールド情報を選択中でないと判断した場合とで、前記プレビュー手段による前記表示部における前記データ編集項目の表示態様を異なるよう制御する表示制御手段とを有することを特徴とする。
【発明の効果】
【0019】
本発明によれば、帳票における項目のブレイク設定状況を速やかに確認でき、かつ該ブレイク設定を様々な条件で容易に確認又は変更ができるようになるため、ユーザの帳票の編集作業負荷が軽減され、作業効率が向上する。
【発明を実施するための最良の形態】
【0020】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【0021】
<システム構成の説明>
〔第1実施形態〕
図1は、本発明の実施の形態に係る表編集機能を備える情報処理装置の構成するブロック図である。本実施形態では、情報処理装置が表編集プログラムをアプリケーションソフトウエアとして実行することで表編集機能を実現する場合を示すが、もちろん、専用の表編集装置として構成することも可能である。
【0022】
本実施の形態に係る表編集機能を有する情報処理装置1は、図1に示すように、主記憶装置であるROM11及びRAM12、外部記憶装置であるFD(フレキシブルディスク)ドライブ13及びHD(ハードディスク)ドライブ15を備える。さらに、情報処理装置は、入力装置であるキーボード16、及びポインティングデバイスであるマウス18(位置指定手段)、表示装置であるディスプレイ17(表示部)、並びにプリンタ19を備える。
【0023】
ディスプレイ17は、後述するような帳票画面を表示可能に構成されている。20はシステムバスで、上記各デバイスが接続され、CPU10によりアクセスが制御される。ここで、CPU10は、ROM11に記憶される制御プログラム又はハードディスクドライブ15に記憶される制御プログラムを実行して、表編集機能処理を実行する。FDドライブ13は挿入されるFD14に対してデータの読み書きを行う。
【0024】
ここで、CPU10は、制御プログラムを実行することで、取得処理、判別処理、表示制御処理を行う。
【0025】
図2は、図1に示したFD14のメモリマップを説明する図である。
【0026】
図2に示すようにFD14には、メモリマップ20のように、ボリューム情報エリア21、ディレクトリ情報エリア22、制御プログラム実行ファイルエリア23、制御プログラム関連データファイルエリア24等が割り当てられている。この他に、これらに対応するデータがFD14に予め記憶されている。上記制御プログラムは、後述する図6及び図7のブレイク設定の表示、ブレイク設定の変更処理の手順がプログラムコード化されたものであり、RAM12にロードされてCPU10により実行される。
【0027】
図3は、図1に示したRAM12のメモリマップを説明する図である。
【0028】
図3に示すように、このメモリマップ30は、上記制御プログラムが実行可能な状態におけるものを示したものである。
【0029】
RAM12には、メモリマップ30のように、基本I/O(入力/出力)プログラムエリア31、OS(オペレーティングシステム)エリア32、制御プログラムエリア33、データ格納エリア34、35が割り当てられている。この他に、これらに対応するデータがRAM12に記憶される。
【0030】
データ格納エリア34はデータエリアM1として用いられ、データ格納エリア35はワークエリアW0、W1〜W4として用いられる。
【0031】
本情報処理装置は、上記基本I/Oプログラム、OS及び制御プログラムをCPU10が実行することにより動作する。
【0032】
基本I/OプログラムはROM11に予め書き込まれており、OSはHDドライブ15に予め書き込まれている。情報処理装置1の電源がオンされたときに、基本I/Oプログラム中のIPL(イニシャル・プログラム・ローディング)機能によりOSがHDドライブ15からRAM12に読み込まれ、OSの動作が開始される。
【0033】
制御プログラムは、FD14からFDドライブ13を介して情報処理装置1にロードすることができる。すなわち、FD14がFDドライブ13に挿入されると、OS及び基本I/Oプログラムの制御の下に制御プログラム実行ファイル及び制御プログラム関連データファイルがFD14から読み出され、RAM12にロードされて動作可能となる。
【0034】
図4は、本実施形態を示す情報処理装置で処理するデータの一構造を説明する図である。本例は、フィールドリストの構成を模式的に示している。なお、CPU10は、グラフィカル・ユーザ・インタフェース(GUI)で提供される表編集画面をディスプレイ17に表示して、表編集処理を行う。
本実施形態では、帳票中の複数のフィールドは、図4の(a)に示すように、フィールドの順番に各フィールドの情報を格納しており、各フィールドは、フィールド属性を有する。このフィールド属性は、図4の(b)に示すように、フィールドID、フィールド名、データ型などから構成される。
【0035】
フィールドIDは、プログラム内で、帳票中のフィールドを一意に識別するための数字である。
【0036】
フィールド名は、ユーザが帳票中のフィールドを識別するための一意の文字列である。データ型は、受け取るデータの種類を表し、文字・数値・日付・時間・バーコード等の値をとり得る。
【0037】
文字は、半角文字のフィールド(XXXXXX)なのか、全角文字のフィールド(KKKKK)なのかの値をとる。
【0038】
数値は、桁数を決定したり、カンマをいれたりするかを決定する値をとる。日付は、西暦、和暦、桁数、曜日有無を決定する値をとる。
【0039】
例えば、西暦2桁表示の場合は、'YY/MM/DD'となり、西暦4桁の場合は、'YYYY/MM/DD'となる。また、和暦4桁曜日有の場合は、'GGgg/MM/DD/W'となる。時間は、24時間制なのか、12時間制なのか、分や秒まであるのか等を示す値をとる。
【0040】
'AAHH:mm:ss'と属性をセットし、後づけデータが'130203'の場合は、フィールドには'PM01:02:03'とデータ入力される。バーコードは、JAN8、CODE−39、NW7のいずれのバーコード種別なのかを示す値をとる。
【0041】
次に、本実施形態における表編集プログラムを実行可能な情報処理装置の帳票処理における表編集機能について説明する。
【0042】
図5は、図1に示したディスプレイ17に表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。本画面は、プレビュー画面の一例である。
【0043】
本実施形態においては、CPU10が表編集に係るユーザインタフェース画面として、図5に示すような画面をディスプレイ17上に表示する。この表示画面は、表示する表図形が擬似表示されるレイアウト表示部50と、フィールド管理手段において、複数のフィールドが表示されるフィールド表示部51との2つの画面から構成されている例を示している。フィールド表示部51には、フィールド情報として、「納品日」、「分類」、「品名」、「単価(円)」「数量」、「金額(円)」等が設定されている場合を示す。
【0044】
表図形52は、最上行に項目行53(項目列)、その下に複数のレコード行54が配置されて構成される。項目行53は、「納品日」、「分類」、「品名」、「単価(円)」「数量」、「金額(円)」等の項目からなるデータ列である。レコード行54は、項目行53の各項目に対応した値が入力される。小計行55(集計行)は、ブレイクキーに対応する項目のデータが切り替わった際、表図形52へ挿入される行である。本例では、複数の行を示している。
【0045】
本実施形態における表編集機能を実行可能な情報処理装置において、表図形52はデータを流し込む前の、テンプレートとしての集計表であり、ディスプレイ17には、項目行53としてフィールド属性のフィールド名が表示されている。
【0046】
また、レコード行54としてデータを表示させる際の書式が表示されており、小計行55としてブレイクキーに対応する項目が切り替わった際に挿入される小計行の書式が表示されている。
【0047】
フィールド表示部51には、個々のフィールドを表すフィールドアイテムが並んで表示される。
【0048】
フィールドは、帳票等の設計の際、最初に用意されているフィールドデータの受け口であり、データベース等から生成されるデータの一覧である。それぞれのフィールドはプログラム内部でフィールドを識別する一意の数字であるフィールドIDを持ち、RAM12のデータエリアM1に格納されている。
【0049】
また、ワークエリアW1には、ブレイクキーとして設定された項目のフィールドIDが格納される。後付けデータを「フィールドID=XXX」と指定することにより、指定されたフィールドに後付けデータの「XXX」をオーバーレイされて出力することができる。
【0050】
また、プログラム内部でブレイクによる動作を識別する一意の数字であるブレイクIDを持ち、RAM12のデータエリアM1に格納されている。
【0051】
つまり、フィールドIDにブレイクIDを指定することにより、該フィールドIDに流し込まれる後付けデータが途中で変化していることをCPU10が判断する。そして、CPU10による判断結果に基づいて、該フィールドIDに指定されているブレイクIDのブレイク動作(小計行挿入、改ページ動作)が実行される。
【0052】
図6は、図1に示したディスプレイ17に表示されるプレビュー画面の一例を示す図である。本例は、フィールド「顧客番号」におけるブレイクの設定状況表示を例示している。
【0053】
図6において、フィールド表示部51の「顧客番号」のデータに変化が起こったとCPU10が判断した場合に、ディスプレイ17で編集中の画面上で、小計行71を挿入した後、今月分合計行72をレイアウト表示部50内の表図形内に挿入する。そして、さらに改ページ73を行い、その後に続くデータを別のページに表示あるいは印字する旨をユーザに視覚的であって明確に認識させるための表示を行う。
【0054】
図7は、図1に示したディスプレイ17に表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。本画面は、ブレイクの設定時にディスプレイ17に表示されるウィンドウの一例である。フィールドに対応した項目と、挿入する行を指定可能に構成されている。
【0055】
図7において、60はブレイクの設定画面であり、図5に示したフィールド表示部51に対応する項目に対して、個別にブレイク行をレイアウト表示部50内に指定可能に構成されている。
【0056】
61〜63はボタンで、ボタン61を押下すると、サンプルデータの生成を開始する。ボタン62はOKボタンとして機能し、図7において指定した内容を確定する場合に押下される。ボタン63はキャンセルボタンとして機能し、図7に示した画面を消去する場合に押下される。
【0057】
図8は、本実施形態を示す情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。本例は、帳票処理におけるブレイク設定に伴うフィールド生成処理とプレビュー処理例である。なお、S1000、S2000、S3000は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0058】
まず、S1000で、CPU10は、上記表編集プログラムを実行するため、ディスプレイ17に図7に示すブレイク設定のための画面を表示する。ここで、ユーザがキーボード16、マウス18を操作して、ディスプレイ17画面に指示を入力して、必要なブレイク設定を行う図6に示す対象となる表中で、ブレイクする項目のフィールドを指定する設定を行う。
【0059】
本実施形態で、ブレイクの設定は、対象となる項目(ブレイクキー)の指定と、該指定したブレイクキーで、データが切り替わった際、どのような動作をさせるかの指定によりなされる。
【0060】
例えば図7では、ブレイクの設定テーブル60に、ユーザがキーボード16により「○」印を入力することにより、ブレイクの設定が行われる。該設定テーブル60は、行「今月分合計行」、「小計行」及び「改ページ」と列「顧客番号」の交わるセルに「○」印が記入されている。このため、印刷時に「顧客番号」に挿入されるフィールドデータが切り替わった際に、「今月分合計行」、「小計行」が集計表に自動的に挿入され、その後に、改ページが行われ、それ以降のフィールドデータは異なるページに印刷される。
【0061】
また、図7に示すように、行「小計行」と列「納品日」の交わるセルに「○」印が記入されているため、印刷時に「納品日」に挿入されるフィールドデータが切り替わった際に、「小計行」が集計表に挿入される。このとき、改ページは行われない。
【0062】
前述のブレイクの設定テーブル60は、RAM12のデータエリアM1に格納されている。また、RAM12のデータエリアM1には、項目行53の各項目に対応する各フィールド項目が格納されている。
【0063】
そして、S2000で、ブレイクの設定を確認するためのサンプルとなるフィールドデータの生成を行う。本実施形態では、図7に示したボタン61が押下された場合に、本処理を行う。このため、ユーザが帳票毎にサンプルデータをあらかじめ作成して用意する等の手間がなくなり、利便性が向上する。
【0064】
このようにして、フィールドデータの生成が行われると、次に、S3000で、生成されたフィールドデータをフィールドに流し込み、ブレイク設定状況を確認するためのプレビュー表示をディスプレイ17上で行い、全ての処理を完了する。
【0065】
これにより、CPU10により自動生成されるサンプルデータに基づいて、図6に示すように、ブレイク設定状況を確認するためのプレビュー表示をディスプレイ17上で確認可能となる。本例は、通常の帳票表示に比べて、各帳票を構成する図形の輪郭が、例えば太線で強調表示されているため、視認性よくブレイク設定項目を確認できる。
【0066】
図9は、本実施形態を示す情報処理装置における第2のデータ処理手順の一例を示すフローチャートである。本例は、図8に示したS2000のフィールドデータ生成処理の第1の詳細処理例である。なお、S2001〜2007、S2100は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。本処理は、図7に示したボタン61が押下されることにより開始される。
【0067】
まず、S2100で、CPU10は、図5に示した項目行53及び、フィールドデータの一番目のレコード行を出力する初期データ出力処理を行う。なお、本処理の詳細は、図10において詳述する。なお、本処理で出力されたフィールドデータはRAM12のワークエリアW1に保存される。
【0068】
次に、S2001で、CPU1は、フィールドリストから、フィールド項目を取得する。そして、S2002で、CPU10は、もし、全てのフィールド項目について全て読み出しを完了しているかどうかを判断する。ここで、CPU10が完了していると判断した場合は、直ちに本処理を終了する。
【0069】
一方、S2002で、CPU10がフィールド項目の取得が完了していないと判断した場合、S2003で、CPU10はワークエリアW1に格納されている直前のフィールドデータを取得する。
【0070】
次に、S2004でCPU10は、全てのフィールド項目のフィールドデータについて次の行のデータ生成が全て完了しているかどうかを判断する。ここで、CPU10が全てのフィールド項目のフィールドデータについて次の行のデータ生成が全て完了していると判断した場合は、S2001に戻り、次のフィールドIDを取得する。
【0071】
一方、S2004で、全てのフィールド項目のフィールドデータについて次の行のデータ生成が全て完了していないと判断した場合は、S2005に進む。そして、S2005で、CPU10は、S2001で取得したブレイクキーリストのフィールドIDと、S2003で取得したフィールド項目が一致するものがあるか判断を行う。
【0072】
ここで、CPU10が一致するものがないと判断した場合は、データの切り替えを行うべきフィールド項目のフィールドデータでないとして、S2007へ進む。そして、S2007で、S2003にて取得したフィールドデータをワークエリアW1に追加格納し、S2001へ戻り、次のフィールドIDを取得する。
【0073】
一方、S2005でブレイクキーリストのフィールド項目と、フィールド項目が一致したと判断した場合、データの切り替えを行うべきフィールド項目のフィールドデータであるとして、S2006で、フィールドデータを変更する。そして、S2007で、その後に変更したフィールドデータをワークエリアW1に追加格納し、S2001へ戻り、次のフィールドIDを取得する。
【0074】
なお、S2006において、フィールドデータを変更する方法は、どのような方法を用いてもよい。
【0075】
図10は、本実施形態を示す情報処理装置における第3のデータ処理手順の一例を示すフローチャートである。本例は、図9に示したS2100の初期データ出力の詳細処理例である。なお、S2101〜2109は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0076】
まず、S2101で、CPU10は、データエリアM1より、フィールドリスト内のフィールド項目を取得する。そして、S2102で、CPU10は、全てのフィールド項目について全て読み出しが完了しているかどうかを判断する。ここで、CPU10が全てのフィールド項目について全て読み出しが完了していると判断した場合、直ちに本処理を終了する。
【0077】
一方、S2102で、CPU10が全てのフィールド項目について全て読み出しが完了していないと判断した場合、S2103で、CPU10は読み出したフィールド項目のフィールド名をRAM12のワークエリアW1へ格納する。
【0078】
続いて、S2104で、フィールド項目のデータ型を取得し、S2105で、CPU10は、取得したデータ型の種類が文字型、数値型、日付型のいずれであるかを判断する。
【0079】
ここで、CPU10がデータ型の種類が文字型であると判断した場合、S2106で、文字型のフィールドデータを生成する。そして、S21109で、CPU10は、生成した文字型のフィールドデータをRAM12のワークエリアW1へ格納して、S2101へ戻り、次のフィールド項目を取得する。
【0080】
一方、S2105で、CPU10が取得したデータ型を数値型であると判断した場合、S2107で、フィールドデータを数値型のフィールドデータを生成する。そして、S2109で、生成した数値型のフィールドデータをRAM12のワークエリアW1へ格納して、S2101へ戻り、次のフィールド項目を取得する。
【0081】
一方、S2105で、CPU10が取得したデータ型を日付型であると判断した場合、S2108で、CPU10は、日付型のフィールドデータを生成する。
【0082】
そして、S2109で、CPU10は、生成した日付型のフィールドデータをRAM12のワークエリアW1へ格納して、S2101へ戻り、次のフィールド項目を取得する。
【0083】
なお、上記S2106、S2107及びステップS2108で生成する型別のフィールドデータの生成方法は、本実施形態で示す機能が達成できれば、どのような方法を用いてもよい。
【0084】
また、S2109の後、再びS2101において、次のフィールド項目を取得する。
【0085】
図11は、本実施形態を示す情報処理装置における第4のデータ処理手順の一例を示すフローチャートである。本例は、図8に示したS3000のブレイク設定のプレビュー処理例である。なお、S3001〜3009は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0086】
まず、S3001で、CPU10は、マウス18によるディスプレイ17上の入力点の座標を公知の手法により取得する。次に、S3002で、CPU10は、フィールド項目表示位置を取得する。次に、S3003で、CPU10は、入力点の座標及び、フィールド項目表示位置よりデータエリアM1に格納されているフィールドを判別し、該フィールドIDを取得する。
【0087】
次いで、S3004で、CPU10は、ブレイクキーとして設定された項目(例えば「顧客番号」)のフィールドIDを取得する。そして、S3005で、S3003で取得したフィールドIDとS3004で取得したブレイクキー項目のフィールドIDとが一致するかどうかを判断する。ここで、CPU10が一致しないと判断した場合は、直ちに本処理を終了する。
【0088】
一方、S3005で、CPU10が取得したフィールドIDとS3004で取得したブレイクキー項目のフィールドIDとが一致すると判断した場合は、S3006へ進む。
【0089】
そして、S3006で、CPU10は、ブレイクの設定状況の表示が既にディスプレイ17に表示されているか(フィールド項目が既に選択済みか)を判断する。ここで、フィールド項目とは、データ編集項目に対応する。つまり、CPU10は、フィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する。
【0090】
ここで、CPU10が、フィールド項目が既に選択済みでないと判断した場合は、S3008へ進み、例えば図6に示す表示態様でブレイクの設定状況の表示をディスプレイ17上で行う。そして、S3009で、CPU10は、ブレイク設定状況の表示がなされていることを示すブレイク表示中フラグを変更してRAM12のワークエリアW2に格納して、本処理を終了する。
【0091】
一方、S3006で、同一のフィールド項目が既に選択済みであると判断した場合、つまり、既にブレイクの設定状況が図6に示すよう表示されていた場合、表示されているブレイク設定状況の表示を消去するものと判断して、S3007へ進む。そして、S3007で、CPU10は、ディスプレイ17上におけるブレイク設定状況の表示をディスプレイ17より消去(非表示)する。
【0092】
そして、S3009で、CPU10は、ブレイク設定状況の表示がされていないことを示すブレイク表示中フラグをRAM12のワークエリアW2に格納して、本処理を終了する。
【0093】
これにより、ディスプレイ17で表示中の表中において、フィールド「顧客番号」のデータ変化が起こった際、図11に示すS3008をCPU10が実行する表示制御を行う。つまり、CPU10は、小計行71を挿入したのち、今月分合計行72を表図形内に挿入し、さらに改ページを行う表示制御を行う。この結果、その後に続くデータを別のページに表示あるいは印字する旨をユーザに視覚的にわかりやすく認識させることができる。
【0094】
〔第2実施形態〕
第2実施形態では、第1実施形態に加え、フィールドデータの生成規則の設定を変更することによって示す。尚、第2実施形態における情報処理装置の構成は、第1実施形態と同様である。
【0095】
図12は、本実施形態を示す情報処理装置におけるフィールドデータの生成規則の変更処理を説明する図である。本例は、発生順序とブレイクキーとから構成される。
【0096】
本例は、図13に示す表編集画面において、表示されるブレイク設定画面構成を模式的に説明する画面に対応する。
【0097】
図12において、120は発生順序で、例えば1〜3の順にブレイクキー121として、「納品日」、「分類」及び「品名」、「顧客番号」が切り替える設定に対応する。
【0098】
図13は、本実施形態を示す情報処理装置におけるブレイクキーの設定処理を説明する図である。本画面130は、CPU10の表示制御で、ディスプレイ17の表示される。本画面では、図12に示した形式を適用した、ブレイクキーの設定処理画面を示している。
【0099】
図13の(a)において、フィールドリスト表示部131から、フィールドデータ生成規則表示部132へ、マウス18によるドラッグアンドドロップ操作によって設定する例を示す。フィールドデータ生成規則表示部132によると、1番目にデータ項目「納品日」でデータの切り替えが行われ、その後、2番目に「分類」及び「品名」同時に切り替わる。
【0100】
そして、最後、3番目にデータ項目「顧客番号」が切り替わるようなフィールドデータの生成が行われるような設定となっている。
【0101】
図13(b)は、各々のブレイクに関する詳細設定を示すウィンドウ133である。フィールドデータの切り替えが発生するまでのレコード行数の間隔等を設定することができる。
【0102】
図14は、本実施形態を示す情報処理装置における第5のデータ処理手順の一例を示すフローチャートである。本例は、本例は、図8に示したS2000のフィールドデータ生成処理の第2の詳細処理例である。なお、S2100、S2201〜2208は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0103】
まず、S2100で、図9に示した場合と同様に初期データを出力する。これは前述と同様のため省略する。
【0104】
次に、S2201で、CPU10は、RAM12のデータエリアM1に格納されているブレイクキーリストを取得する。そして、S2202で、CPU10は、RAM12のデータエリアM1に格納されている、全てのブレイクキーリストについて全て読み出しが完了しているかどうかを判断する。ここで、CPU10が全てのブレイクキーリストについて全て読み出しが完了していると判断した場合は、直ちに本処理を終了する。
【0105】
一方、S2202で、CPU10が全てのブレイクキーリストについて全て読み出しが完了していないと判断した場合は、CPU10は、S2203で、RAM12のワークエリアW1に記憶されたフィールドリストから、フィールド項目を取得する。
【0106】
そして、S2204で、CPU10は、RAM12のワークエリアW1に記憶されたフィールドリストから全てのフィールド項目について全て読み出しが完了しているかどうかを判断する。ここで、全てのフィールド項目について全て読み出しが完了していると判断した場合は、フィールドデータのレコード1行分のデータが生成されたとしてS2201へ戻り、次のブレイクキーリストを取得する。
【0107】
一方、S2204で、CPU10が全てのフィールド項目について全て読み出しが完了していないと判断した場合は、S2205で、CPU10は、RAM12のワークエリアW1に格納されている直前のフィールドデータを取得する。
【0108】
そして、S2206で、CPU10は、S2201で取得したブレイクキーリストのフィールド項目と、S2205で取得したフィールド項目が一致するものがあるか判断を行う。ここで、CPU10が一致するものがないと判断した場合は、データの切り替えを行うべきフィールド項目のフィールドデータでないとして、S2208に進む。そして、S2208で、S2205にて取得したフィールドデータをRAM12のワークエリアW1に追加格納し、S2203へ戻り、次のフィールド項目を取得する。
【0109】
一方、S2206で、CPU10は、ブレイクキーリストのフィールド項目と、フィールド項目が一致するものがあると判断した場合、データの切り替えを行うべきフィールド項目のフィールドデータであるとして、S2207へ進む。そして、S2207で、CPU10は、RAM12上で管理されているフィールドデータを変更し、S2208へ進む。そして、S2208で、CPU10は、変更したフィールドデータをRAM12のワークエリアW1に追加格納し、S2203へ戻り、次のフィールド項目を取得する。
【0110】
なお、S2207において、フィールドデータを変更する方法は、どのような方法を用いてもよい。
【0111】
本実施形態によれば、フィールドデータの生成自由度が格段に向上し、ユーザの所望するフィールドデータを得ることができる。
【0112】
〔第3実施形態〕
第3実施形態では、第1実施形態に加え、ブレイク設定状況の表示から、ブレイク設定の属性の消去及び属性の変更を行えるようにする。尚、第3実施形態における情報処理装置の構成は、第1実施形態と同様である。
【0113】
図15は、本実施形態を示す情報処理装置における第6のデータ処理手順の一例を示すフローチャートである。本例は、本例は、図8に示したS2000のフィールドデータ生成処理の第2の詳細処理例である。本処理は、ブレイク設定の消去及び属性の変更処理例である。なお、S4001〜4009は各ステップを示す。また、各ステップは、CPU10がRAM12に表編集制御プログラムをロードして実行することで実現される。
【0114】
まず、S4001で、CPU10は、マウス18によるディスプレイ17上の入力点の座標を公知の手法により取得する。次に、S4002で、CPU10は、ディスプレイ17に表示されているブレイク設定状況の表示位置を取得する。次に、S4003で、入力点の座標及び、ブレイク設定の表示位置よりブレイク設定表示部分であるか否かを判断する。
【0115】
ここで、CPU10がブレイク設定表示部分でないと判断した場合、直ちに本処理を終了する。
【0116】
一方、S4003で、CPU10がブレイク設定表示部分であると判断した場合、S4004へ進む。そして、S4004で、入力点の座標及びブレイク設定表示位置からRAM12のデータエリアM1に格納されているフィールドを判別し、フィールドIDを取得する。
【0117】
次に、S4005で、CPU10は、S4006で、RAM12からブレイクIDを取得し、S4006にて取得したフィールドIDから操作対象となるブレイクIDを判断する。マウス18からの入力がブレイク設定削除命令か否かを判断する。
【0118】
ここで、CPU10がブレイク設定削除命令であると判断場合、S4008で、CPU10は、取得したフィールドIDのブレイク設定の削除処理を図16に示すように行い、本処理を終了する。
【0119】
図16は、本実施形態を示す情報処理装置におけるブレイク設定の削除処理例を示す図である。図16の(a)はブレイク設定変更前で、図16の(b)はブレイク設定変更後であって、例えばブレイク解除命令を選択している状態である。
【0120】
本例では、ブレイク設定の処理として、ブレイク解除、ブレイク変更等の例を示す。図16の(a)において表示されていたブレイク設定のうち、「今月分合計」を、図16の(a)に示す命令選択処理に基づいて、図16の(b)に示す用に、選択された「今月分合計」を削除した状態に対応する。
【0121】
一方、S4006で、CPU10により操作がブレイク削除命令でないと判断した場合、さらに、CPU10は、S4007で、ブレイク設定の内容を変更ものであるかどうかを判断する。ブレイク設定の変更の場合、S4009で、CPU10は、ブレイクの設定変更処理を行い、本処理を終了する。
【0122】
一方、S4007で、CPU10が取得したブレイクIDがブレイク設定の内容を変更するものでないと判断した場合は、本処理を終了する。
【0123】
なお、上記ブレイクの設定変更処理及びブレイクの設定削除処理及の操作において、ウィンドウからの操作指示や、ドラッグアンドドロップによる操作、キーボードによる入力など、操作指示方法はどのようなものであってもよい。
【0124】
また、上記いずれかの実施形態では、CPU10がディスプレイ17にフィールドリスト表示部41からの矢印による表示でブレイク表示をする態様例示をした。しかしんがら、表示態様は上記に限られず、ブレイクの設定があることを認識させることができれば、他の態様を採用してもよい。
【0125】
例えば、ブレイクキーとして設定されたデータ項目列の近傍、あるいはディスプレイ17上における所定の表示領域に表示させるようにしてもよい。また、表示内容を文字や、表示色の属性を変化させるようにしてもよい。
【0126】
また、上記いずれかの実施形態では、表図形における設定したブレイクキーによる小計行の挿入及び、改ページを行う場合の表示を例示したが、対象をなる項目は例示したもの以外でもよい。
【0127】
例えば、小計を演算した結果を、表図形の表示領域外に表示させるような設定について、設定の状況を確認する表示を行ってもよい。また、対象となる項目は、ブレイクキーに限るものではない。例えば、小計のための集計対象項目のような項目であってもよい。あるいは、ブレイクキーと、集計対象項目の双方というように、複数の項目について同時に処理するようにしてもよい。
【0128】
例えば、前述の実施形態では、フィールドデータ出力処理をサンプルデータ生成用のボタン61の操作により開始する態様を例示した。しかしながら、例えば、メニューの項目から実行する、図6におけるブレイク設定が終了した時点で自動開始される等、どの態様を採用してもよい。ボタン61が押下されると、CPU10は、編集中の帳票の表図形の表示領域内に生成したサンプルデータを流し込んで帳票をプレビューする。
【0129】
また、例えば、前述の実施の形態では、ブレイクの設定を行う際にテーブルに「○」印を記入することで設定を行う態様を例示したが、前記ブレイクの設定をさせることができれば他の態様を採用してもよい。例えば、設定に必要な項目をファイル等に書き込み、それを読み込む、あるいは、メニューから選択する方法で設定を行ってもよい。
【0130】
また、例えば、前述の実施の形態では、フィールド項目のデータ型に文字型、数値型、日付型を例示したが、フィールド項目のデータ型は、例えば時間、バーコード、画像等どのようなものであってもよい。
【0131】
また、上記実施の形態では、ブレイク表示について、マウス18による入力点がブレイク設定の表示部分である場合に、該ブレイク設定の消去及び設定の属性の変更を例示した。しかしながら、例えば、小計行に対するブレイクキーの追加等、例示したもの以外のブレイク設定の属性変更を行えるようにしてもよい。
【0132】
〔第3実施形態〕
以下、図17に示すメモリマップを参照して本発明に係る情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。
【0133】
図17は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0134】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0135】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0136】
本実施形態における図8、図9、図10、図11、図14、図15に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0137】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0138】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0139】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0140】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【0141】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0142】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
【0143】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0144】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0145】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0146】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
【0147】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【図面の簡単な説明】
【0148】
【図1】本発明の実施の形態に係る表編集機能を備える情報処理装置の構成するブロック図である。
【図2】図1に示したFDのメモリマップを説明する図である。
【図3】図1に示したRAMのメモリマップを説明する図である。
【図4】本実施形態を示す情報処理装置で処理するデータの一構造を説明する図である。
【図5】図1に示したディスプレイに表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。
【図6】図1に示したディスプレイに表示されるプレビュー画面の一例を示す図である。
【図7】図1に示したディスプレイに表示されるグラフィカル・ユーザ・インタフェース画面(GUI)一例を示す図である。
【図8】本実施形態を示す情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。
【図9】本実施形態を示す情報処理装置における第2のデータ処理手順の一例を示すフローチャートである。
【図10】本実施形態を示す情報処理装置における第3のデータ処理手順の一例を示すフローチャートである。
【図11】本実施形態を示す情報処理装置における第4のデータ処理手順の一例を示すフローチャートである。
【図12】本実施形態を示す情報処理装置におけるフィールドデータの生成規則の変更処理を説明する図である。
【図13】本実施形態を示す情報処理装置におけるブレイクキーの設定処理を説明する図である。
【図14】本実施形態を示す情報処理装置における第5のデータ処理手順の一例を示すフローチャートである。
【図15】本実施形態を示す情報処理装置における第6のデータ処理手順の一例を示すフローチャートである。
【図16】本実施形態を示す情報処理装置におけるブレイク設定の削除処理例を示す図である。
【図17】本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【0149】
1 情報処理装置
10 CPU
11 ROM
12 RAM
13 FDドライブ
15 HDDドライブ
16 キーボード
17 ディスプレイ
18 マウス
19 プリンタ
【特許請求の範囲】
【請求項1】
帳票画面を表示部に表示して編集処理を行う情報処理装置であって、
前記表示部の帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する選択手段と、
前記表示部に表示されるデータ編集項目に流し込むサンプルデータを生成する生成手段と、
前記表示部に表示された帳票中のデータ項目に対して、特定の帳票処理を開始させるブレイク設定を行う設定手段と、
前記生成手段により生成されるサンプルデータを流し込んで帳票をプレビューするプレビュー手段と、
前記選択手段によるフィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する判断手段と、
前記判断手段により同一のフィールド情報を選択中であると判断した場合と、前記判断手段により同一のフィールド情報を選択中でないと判断した場合とで、前記プレビュー手段による前記表示部における前記データ編集項目の表示態様を異なるよう制御する表示制御手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記表示制御手段は、前記判断手段により同一のフィールド情報を選択中であると判断した場合は、前記表示部における前記データ編集項目の表示を消去することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記帳票画面は、前記フィールド情報を表示するフィールド情報部と、前記データ項目を表示するレイアウト表示部とを備えることを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記レイアウト表示部に表示する前記データ編集項目を生成する順序を設定する設定手段を備えることを特徴とする請求項3記載の情報処理装置。
【請求項5】
帳票画面を表示部に表示して編集処理を行う情報処理装置における帳票処理方法であって、
前記表示部の帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する選択工程と、
前記表示部に表示されるデータ編集項目に流し込むサンプルデータを生成する生成工程と、
前記表示部に表示された帳票中のデータ項目に対して、特定の帳票処理を開始させるブレイク設定を行う設定工程と、
前記生成行程により生成されるサンプルデータを流し込んで帳票をプレビューするプレビュー行程と、
前記選択工程によるフィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する判断工程と、
前記判断工程により同一のフィールド情報を選択中であると判断した場合と、前記判断工程により同一のフィールド情報を選択中でないと判断した場合とで、前記プレビュー手段による前記表示部における前記データ編集項目の表示態様を異なるよう制御する表示制御工程と、
を有することを特徴とする帳票処理方法。
【請求項6】
前記表示制御工程は、前記判断工程により同一のフィールド情報を選択中であると判断した場合は、前記表示部における前記データ編集項目の表示を消去することを特徴とする請求項5記載の帳票処理方法。
【請求項7】
前記帳票画面は、前記フィールド情報を表示するフィールド情報部と、前記データ項目を表示するレイアウト表示部とを備えることを特徴とする請求項5記載の帳票処理方法。
【請求項8】
前記レイアウト表示部に表示する前記データ編集項目を生成する順序を設定する設定工程を備えることを特徴とする請求項7記載の帳票処理方法。
【請求項9】
請求項4乃至8の何れかに記載の帳票処理方法をコンピュータに実行させるためのプログラム。
【請求項10】
請求項4乃至8の何れかに記載の帳票処理方法をコンピュータに実行させるためのプログラムを格納したコンピュータ可読の記憶媒体。
【請求項1】
帳票画面を表示部に表示して編集処理を行う情報処理装置であって、
前記表示部の帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する選択手段と、
前記表示部に表示されるデータ編集項目に流し込むサンプルデータを生成する生成手段と、
前記表示部に表示された帳票中のデータ項目に対して、特定の帳票処理を開始させるブレイク設定を行う設定手段と、
前記生成手段により生成されるサンプルデータを流し込んで帳票をプレビューするプレビュー手段と、
前記選択手段によるフィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する判断手段と、
前記判断手段により同一のフィールド情報を選択中であると判断した場合と、前記判断手段により同一のフィールド情報を選択中でないと判断した場合とで、前記プレビュー手段による前記表示部における前記データ編集項目の表示態様を異なるよう制御する表示制御手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記表示制御手段は、前記判断手段により同一のフィールド情報を選択中であると判断した場合は、前記表示部における前記データ編集項目の表示を消去することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記帳票画面は、前記フィールド情報を表示するフィールド情報部と、前記データ項目を表示するレイアウト表示部とを備えることを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記レイアウト表示部に表示する前記データ編集項目を生成する順序を設定する設定手段を備えることを特徴とする請求項3記載の情報処理装置。
【請求項5】
帳票画面を表示部に表示して編集処理を行う情報処理装置における帳票処理方法であって、
前記表示部の帳票画面に表示される複数のデータ項目に関連づけられて表示されるいずれかのフィールド情報を選択する選択工程と、
前記表示部に表示されるデータ編集項目に流し込むサンプルデータを生成する生成工程と、
前記表示部に表示された帳票中のデータ項目に対して、特定の帳票処理を開始させるブレイク設定を行う設定工程と、
前記生成行程により生成されるサンプルデータを流し込んで帳票をプレビューするプレビュー行程と、
前記選択工程によるフィールド情報を選択する毎に、同一のフィールド情報が既に選択中かどうかを判断する判断工程と、
前記判断工程により同一のフィールド情報を選択中であると判断した場合と、前記判断工程により同一のフィールド情報を選択中でないと判断した場合とで、前記プレビュー手段による前記表示部における前記データ編集項目の表示態様を異なるよう制御する表示制御工程と、
を有することを特徴とする帳票処理方法。
【請求項6】
前記表示制御工程は、前記判断工程により同一のフィールド情報を選択中であると判断した場合は、前記表示部における前記データ編集項目の表示を消去することを特徴とする請求項5記載の帳票処理方法。
【請求項7】
前記帳票画面は、前記フィールド情報を表示するフィールド情報部と、前記データ項目を表示するレイアウト表示部とを備えることを特徴とする請求項5記載の帳票処理方法。
【請求項8】
前記レイアウト表示部に表示する前記データ編集項目を生成する順序を設定する設定工程を備えることを特徴とする請求項7記載の帳票処理方法。
【請求項9】
請求項4乃至8の何れかに記載の帳票処理方法をコンピュータに実行させるためのプログラム。
【請求項10】
請求項4乃至8の何れかに記載の帳票処理方法をコンピュータに実行させるためのプログラムを格納したコンピュータ可読の記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2008−203931(P2008−203931A)
【公開日】平成20年9月4日(2008.9.4)
【国際特許分類】
【出願番号】特願2007−36115(P2007−36115)
【出願日】平成19年2月16日(2007.2.16)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成20年9月4日(2008.9.4)
【国際特許分類】
【出願日】平成19年2月16日(2007.2.16)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]