(57)【要約】【課題】  表形式の帳票において、まとめ表示の機能を拡張して、より表のグループが視覚的に分かりやすくする。【解決手段】  他の列のまとめ表示に連動して、罫線の描画が制御される列がある表形式の帳票を作成できるようにする。【選択図】  図２
2008077582.tif 000002
【特許請求の範囲】
【請求項１】
表形式のある帳票をオーバレイ印刷時に、表内の任意の列について、複数の行に連続して同じ値が設定された場合に、そのセルの値や罫線の描画を制御してまとめ表示することが可能である帳票作成印刷システムにおいて、
表内の任意の列が、他の列のまとめ表示に連動して、罫線の描画の制御を行うための設定を、ユーザがフォームに対しておこなうことができるステップと、
上記設定に従い、オーバレイ印刷時に、他の列のまとめ表示と連動して、罫線の描画を制御するステップと、
を特徴とする帳票作成印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
フォームファイルとデータファイルを用いて、オーバレイ印刷を行うシステムに係るものである。
【背景技術】
【０００２】
帳票等を出力する際に、図３のように、出力フォームのレイアウトを示すフォームファイル（テンプレート）の所定の個所（フィールド）に対し、データファイルによる後付けデータを流し込んで（オーバレイ印刷）出力フォームを得られるようにしていた。本明細書では、データが流し込まれる個所（フィールド）を示す図形をフィールド図形と呼ぶことにし、データファイルをフィールドデータと呼ぶことにする。
【０００３】
また、図４のフォームファイル４０１のように、表形式の帳票を作成することもできる。
【０００４】
従来の技術として、表の複数の行に連続して同じ値がセットされた場合に、値と罫線の描画を制御して、まとめ表示するというものがある。図４はその一例である。出力フォーム４０４は、まとめ表示を行わない場合の例である。例えば、１列目について、１行目と２行目には同じ値（Ａ社）がセットされる。出力フォーム４０５はまとめ表示をおこなう場合の例である。この場合、１行目と２行目の境目について、罫線が出力されていない。また、「Ａ社」という値も１つしか出力されていない。このように、表の各列について、複数行にわたって連続で同じ値がセットされる場合に、まとめて表示することで、表のグループを視覚的に分かりやすくする方法がある。
【０００５】
さらには、特開平６−３３２９２８のように、グループ化された個所を表から分けて表示することにより、よりグループを見やすくする技術もある。
【特許文献１】特開平６−３３２９２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、従来の技術では、ある列のまとめ表示に連動して、他の列の出力を変えることはできなかった。図５はある列が、他の列のまとめ表示に連動する一例である。出力フォーム５０３は、表の３列目が２列目に連動している。３列目は各行の値が全て異なるため、従来の技術では、まとめ表示にはならずに、罫線も全て出力される。しかし、出力フォーム５０３では３列目が、２列目のまとめ表示に連動して、一部の罫線が点線になっている。同様に出力フォーム５０４の例では、３列目の一部の罫線が出力されていない。
【０００７】
このような表現方法を用いることで、より表のグループを視覚的に分かりやすくすることができる。しかし現状の技術では、このようなことはできなかった。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、表形式のある帳票をオーバレイ印刷時に、表内の任意の列について、複数の行に連続して同じ値が設定された場合に、その値や罫線の描画を制御してまとめ表示することが可能である帳票作成印刷システムにおいて、表内の任意の列が、他の列のまとめ表示設定を参照するようにフォームに設定することができるステップと、上記設定に従い、他の列のまとめ表示と連動して、罫線の描画を制御するステップと、を提供する。
【発明の効果】
【０００９】
まとめ表示に関する帳票の表現方法が増え、より見栄えのよい帳票を作成することができる。
【発明を実施するための最良の形態】
【００１０】
＜システム構成図＞
図１は帳票等のデータを印刷するシステム１００を図示している。この中で示された方法は図８で詳しく説明される汎用コンピュータモジュール１０１で実践される。図８で記述されるプロセスは、コンピュータモジュール１０１内で実行され、システム１００上で実施可能となるフォーム作成アプリケーションプログラム１２１のようにソフトウェアの全体、あるいは一部分で実行される。特にレイアウト編集、設定ファイル編集や必然的に起こる印刷のステップはコンピュータ１０１によって実行されるソフトウェアの指示によって実施される。ソフトウェアは例えば以下に記述されるような記憶装置を含むコンピュータの可読媒体に格納される。ソフトウェアはコンピュータの可読媒体からコンピュータにロードされ、コンピュータ１０１によって実行される。そのようなソフトウェアや媒体に記録されたコンピュータプログラムを持つコンピュータの可読媒体はコンピュータプログラム製品である。そのコンピュータでのコンピュータプログラム製品の使用は望ましくもドキュメントのレイアウト編集やデータ印刷に有利な装置をもたらす。
【００１１】
コンピュータモジュール１０１はキーボード１３２やマウス１３３のようなポインティングデバイスなどの入力装置をつなぎ、ディスプレイ装置１４４や状況に応じてはローカルプリンタ１４５を含む出力装置を連結する。入力／出力インターフェース１３８はコンピュータモジュール１０１をネットワーク接続１０７から接続してシステム１００の他のコンピュータ装置につなげることができる。そのネットワーク接続１０７の典型はローカルエリアネットワーク（ＬＡＮ）、あるいはワイドエリアネットワーク（ＷＡＮ）である。
【００１２】
コンピュータモジュール１０１は典型的に少なくとも１つのプロセッサーユニット１３５、例えば半導体のランダムアクセスメモリ（ＲＡＭ）やリードオンリーメモリ（ＲＯＭ）から構成されるメモリユニット１３６、ビデオインタフェース１３７を含むＩＮＰＵＴ／ＯＵＴＰＵＴ（Ｉ／Ｏ）インターフェース、キーボード１３２やマウス１３３のためのＩ／Ｏインターフェース１４３を含んでいる。記憶装置１３９は典型的にハードディスクドライブ１４０やフレキシブルディスクドライブ１４１を含んでいる。図には示されていないが磁気テープドライブもまた使用される可能性がある。ＣＤ−ＲＯＭドライブ１４２は不揮発性のデータソースとして提供される。コンピュータモジュール１０１はオペレーションシステムや、典型的にはオペレーションシステムに従う形で、あるいは関連のある技術で知られているもので形成されたコンピュータシステムの常套的なオペレーションモードによる方法によって、相互接続バス１３４を介して通信を行うコンピュータモジュール１０１のコンポーネント１３５から１４３を利用する。
【００１３】
図に記述した配置コンピュータの例ではＩＢＭ互換ＰＣやＳＵＮ社のＳｐａｒｃ Sｔａｔｉｏｎ、あるいはそれらを含んだコンピュータシステムが考えられる。
【００１４】
フォーム作成アプリケーションプログラム１２１は典型的にハードディスクドライブ１４０に常駐し、プロセッサ１３５により実行、読み込み、コントロールされる。プログラム１２１の媒介記憶装置とネットワーク１０２０からフェッチされるデータはハードディスクドライブ１４０に呼応して半導体メモリ１３６を使用する。いくつかのインスタンスではアプリケーションプログラム１２１がＣＤ−ＲＯＭやフレキシブルディスク上でエンコードされ、対応するドライブ１４２や１４１を通じて読み込まれユーザに提供される。あるいはもう一つの方法としてアプリケーションプログラム１２１はネットワーク接続１０７からユーザによって読み込まれるかもしれない。さらにソフトウェアは磁気テープまたはＲＯＭまたは集積回路、光磁気ディスクまたは無線またはコンピュータモジュール１０１とその他のデバイス間の赤外線通信、ＰＣＭＣＩＡカードのようなコンピュータ可読カード、そしてＥメール通信やＷＥＢサイト上の記録情報を持つインターネットやイントラネットを含む、他の適当な大きさのコンピュータ可読媒体からコンピュータモジュール１０１内にロードされる可能性もある。前述は単に関連するコンピュータ可読メディアの模範である。他のコンピュータ可読媒体も使用される可能性はある。
【００１５】
またフォーム作成と名づけられたアプリケーション１２１はフォーム作成や印刷を行うよう指示し、２つのソフトウェアコンポーネントを含んでいる。これらのうち１つめのコンポーネントはライブラリ１０５であり、これはオーバレイ印刷処理等の処理を行うソフトウェアコンポーネントである。２つめのコンポーネントであるユーザインターフェース１０３はユーザにフォームや設定ファイルを作成させるメカニズムを提供する。ユーザインターフェース１０３とライブラリ１０５はコミュニケーションチャネル１２３を介して通信する。ドキュメント生成のためのデータソースは一般的にデータベースアプリケーションを動かしている他のコンピュータによって構成されたデータベースサーバー１１７上にある典型的なデータベース１１９である。ホストコンピュータ１０１はネットワーク接続１０７の手段によってデータベースサーバー１１７と通信する。フォーム作成アプリケーション１２１はホストコンピュータ１０１か一般的に他のコンピュータで構成されるファイルサーバー１１５に保存されるフォームまたは設定ファイルを生成する。これらのドキュメントはホストコンピュータ１０１のローカルファイルシステムに保存されるか、ファイルサーバー１１５に保存されるか、あるいはプリンタ１１３に直接印刷される。プリントサーバー１０９は直接ネットワークにつながっていないプリンタにネットワーク機能を提供するコンピュータである。プリントサーバー１０９とプリンタ１１３は典型的な通信チャネル１１１を介して接続される。
【００１６】
図２はエンジンサーバー２２７の追加を除き、ライブラリ１０５の分離バージョン２２５を含む図１・図８の類似の図である。エンジンサーバー２２７は典型的なコンピュータである。ファイルサーバー１１５に保存されたフォームは印刷や他の目的がある際、ライブラリ２２５によってドキュメントを生成するためにデータベース１１９に保存されたデータとオーバレイ印刷することができる。そのようなオペレーションはユーザインターフェース１０３を介して要求されるか、インターフェース２２８からユーザがライブラリ２２５に対して指示をすることにより、可能である。
【実施例１】
【００１７】
まず、図５の出力フォーム５０３や５０４を得るために、ユーザがフォーム設計時に、フォームファイル５０１に対して設定を行う方法を記載する。
【００１８】
図７はフォームエディタ７０１を用いて、フォーム７０２を作成/編集する一例である。フォームエディタ７０１は、図２のアプリケーション１２１と同等である。フォーム７０２では、既に２列目について、まとめ表示の設定がされているとする。ここでは、表の３列目が、２列目のまとめ表示と連動するように、フォームに設定する一例を述べる。
【００１９】
まず、ユーザはマウス７０４により、表の３列目７０３をクリックする。そして、メニュー等により、設定ダイアログを出すように指示する。
【００２０】
ユーザより指示があると、フォームエディタ７０１は、設定ダイアログ７０５を表示する。次にユーザは、エディットボックス７０６に、連動させたい列を指定する。図７の例では２列目を指定している。
【００２１】
次に２列目のまとめ表示に連動した場合の、列３の罫線の描画方法を指定する。例えば図５の出力フォーム５０３のように出力したい場合は、罫線の種類の設定する個所７０７において、点線を指定する。図５の出力フォーム５０４のように出力したければ、罫線を「無し」に設定する。
【００２２】
以上でまとめ表示の連動についての設定は完了である。このようにフォームファイルにユーザが設定を行い、そのフォームファイルを用いてオーバレイ印刷することで、出力フォーム５０３や５０４のような帳票を得ることができる。
【００２３】
図６は本実施例のフローチャットである。本フローチャートは、ライブラリ２２５に対して、ユーザがフォームファイルとデータファイルを指定して、オーバレイ印刷を指定した場合の処理を表す。
【００２４】
説明を分かりやすくするため、図５のフォームファイルとデータファイルが使用された場合の具体例を記述する。フォームファイル５０１の表について、１列目と２列目にはまとめ表示、３列目には２列目のまとめ表示と連動するという設定がされているとする。
【００２５】
まず、ステップＳ６０１において、ライブラリ２２５が、内部処理で使用する変数Ｎを１に初期化する。変数Ｎは、ライブラリ２２５が処理を行う行数が格納される。図５の例でいえば、Ｎの範囲は１〜６となる。
【００２６】
次にステップＳ２２５において、ライブラリ２２５が、データファイルよりＮ行目のデータを解析して取得する。図５の例でいえば、まず１行目のデータ「Ａ社」、「A1支店」、「100」の３列分のデータが取得される。
【００２７】
次にステップＳ６０３において、Ｎ行目のデータが取得できたかどうかを判定する。取得できなかった場合は、データが終了となるため、処理を終了する。
【００２８】
次にステップＳ６０４において、ライブラリ２２５が、内部処理で使用する変数Ｍを１に初期化する。変数Ｍは、ライブラリ２２５が処理を行う列数が格納される。図５の例でいえば、Ｍの範囲は１〜３となる。
【００２９】
次にステップＳ６０５において、ライブラリ２２５が、変数Ｍが表の全列数よりも大きいかどうかを判定する。図５の例でいえば、表の全列数は３である。
【００３０】
次にステップＳ６０７において、ライブラリ２２５が、Ｍ列目について、他の列に連動する設定があるかどうかを判定する。図５の例では、Ｍ＝３のときにＹＥＳとなる。ここでは、Ｍ＝１であり、１列目は他の列を参照する設定がないため、ＮＯとなる。
【００３１】
ステップＳ６０６でＮＯと判定された場合、ステップＳ６０９でライブラリ２２５が、データと罫線を描画する。ここでは１行目の１列目の値「Ａ社」を描画する。また、下辺以外の罫線を描画する。
【００３２】
次にステップＳ６１１について、ライブラリ２２５が変数ＭにＭ＋１の値を代入する。これは表の２列目の処理に移ることを意味する。
【００３３】
２列目の処理については、前記１列目の処理と同様である。
【００３４】
次に３列目の処理について記述する。ステップＳ６０７において、３列目には、他の列を参照する設定があるため、ライブラリ２２５はＹＥＳと判定する。
【００３５】
次にステップＳ６０８について、参照先の列がまとめ表示になっているかどうかを判定する。参照先は２列目であるが、現時点ではまだ１行目の処理中であり、まとめ表示にはなっていないため、ＮＯと判定される。
【００３６】
Ｓ６０９、Ｓ６１１については、前記と同様である。
【００３７】
次にステップＳ６０５について、全ての列について処理を終了したため、ＮＯと判定される。
【００３８】
次にステップＳ６１２について、ライブラリ２２５が、変数ＮにＮ＋１の値を代入する。これにより、２行目の処理に移ることになる。
【００３９】
次にステップＳ６０２において、２行目のデータとして「Ａ社」、「A1支店」、「200」をライブラリ２２５が取得する。その後ステップＳ６０３、Ｓ６０４、Ｓ６０５、Ｓ６０６と進む。
【００４０】
ステップＳ６０７では、１列目の処理であるため、前回同様ＮＯと判定される。
【００４１】
ステップＳ６０９では、まず２行目と１行目の値の比較を行う。ここでは、１行目、２行目共に「Ａ社」という値であり、等しいと判定される。１列目にはまとめ表示の設定があるため、ここでは罫線と「Ａ社」という値を描画をしない。これにより、１列目の１行目と２行目は、まとめ表示となる。
【００４２】
２列目については、１列目の処理と同様である。
【００４３】
３列目（Ｍ＝３）の場合、ステップＳ６０７では、ＹＥＳと判定される。
【００４４】
次にステップＳ６０８において、３列目が参照している、２列目がまとめ表示だったかどうかを判定する。２列目はまとめ表示がされたため、ここではＹＥＳと判定される。
【００４５】
次にステップＳ６１０において、ライブラリ２２５が、設定に従って罫線を描画する。ここでいう設定とは、図７の７０７、７０８、７０９のことである。
また、値「200」を描画する。
【００４６】
以上と同様の処理を、３〜６行目についても行う。
【００４７】
以上の処理により、図４の出力フォーム４０４、４０５のような、他の列のまとめ表示に連動して、罫線の出力が制御される列がある帳票を作成することができる。
【図面の簡単な説明】
【００４８】
【図１】帳票等のデータを印刷するシステム１００
【図２】ライブラリ１０５の分離バージョン２２５を含む図
【図３】オーバレイ印刷の一例を説明する図
【図４】従来のまとめ表示の一例
【図５】本特許により可能となる帳票の一例
【図６】実施例１のフローチャート
【図７】エディタでフォームに設定する一例
【図８】汎用コンピュータモジュール図
【図１】
2008077582.tif 000003
【図２】
2008077582.tif 000004
【図３】
2008077582.tif 000005
【図４】
2008077582.tif 000006
【図５】
2008077582.tif 000007
【図６】
2008077582.tif 000008
【図７】
2008077582.tif 000009
【図８】
2008077582.tif 000010