(57)【特許請求の範囲】
【請求項１】
帳票のフォーム情報とフィールドデータとをオーバレイ処理することにより帳票データを生成する帳票生成手段と、
前記オーバレイ処理において前記フィールドデータの各文字列が描画される各フィールドの描画領域の位置と、各フィールドに描画された各文字列の情報とを関連付けて記憶する記憶手段と、
前記帳票生成手段で生成された帳票データを、ウェブブラウザ上で編集可能な所定の形式の帳票データに変換する変換手段と、
前記記憶手段に関連づけて記憶された前記各フィールドの描画領域の位置と各文字列の情報とに基づいて、前記変換手段で変換された前記所定の形式の帳票データに含まれる文字列要素のうち、前記各フィールドの描画領域の位置に描画され、かつ、当該各フィールドに描画された各文字列の情報に対応する文字列要素をグループ化するグループ化手段と、
前記グループ化手段によりグループ化された文字列要素を含む前記所定の形式の帳票データの閲覧および編集を行うための閲覧画面を表示させるためのデータを生成する閲覧画面生成手段とを備える
ことを特徴とする情報処理システム。
【請求項２】
前記閲覧画面を表示させるための前記生成されたデータを、クライアント装置に送信する送信手段を更に備え、
前記クライアント装置は、
前記送信されたデータを受信する受信手段と、
前記受信手段で受信したデータに基づいて、前記閲覧画面を表示する表示手段とを備え、
前記閲覧画面を介して新しい文字列が入力された場合、前記グループ化された文字列要素を前記入力された文字列で置き換える
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記グループ化手段は、前記グループ化されるべき文字列要素を所定のタグで囲む、または相対座標に変換して１つの文字列要素とすることにより前記文字列要素をグループ化する
ことを特徴とする請求項１または２に記載の情報処理システム。
【請求項４】
前記グループ化手段は、前記グループ化された文字列要素が縦書きか横書きであるかを判断し、
前記文字列要素が縦書きであると判断された場合、前記グループ化された文字列要素を縦書きの表示順序に一致するように並べ替え、
前記文字列要素が横書きであると判断された場合、前記グループ化された文字列要素を横書きの表示順序に一致するように並べ替える
ことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理システム。
【請求項５】
前記閲覧画面で前記所定の形式の帳票データが編集された後、当該編集された帳票データに基づいて、印刷データを生成する印刷データ生成手段を備える
ことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理システム。
【請求項６】
前記帳票生成手段で生成される帳票データはＰＤＦ形式の帳票データであり、前記変換手段で変換される前記所定の形式の帳票データはＳＶＧ形式の帳票データである
ことを特徴とする請求項１乃至５のいずれか１項に記載の情報処理システム。
【請求項７】
コンピュータを、請求項１乃至６のいずれか１項に記載の情報処理システムの各手段として機能させるためのコンピュータプログラム。
【請求項８】
帳票のフォーム情報とフィールドデータとをオーバレイ処理することにより帳票データを生成する帳票生成工程と、
前記オーバレイ処理において前記フィールドデータの各文字列が描画される各フィールドの描画領域の位置と、各フィールドに描画された各文字列の情報とを関連付けて記憶する記憶工程と、
前記帳票生成工程で生成された帳票データを、ウェブブラウザ上で編集可能な所定の形式の帳票データに変換する変換工程と、
前記記憶工程で関連づけて記憶された前記各フィールドの描画領域の位置と各文字列の情報とに基づいて、前記変換工程で変換された前記所定の形式の帳票データに含まれる文字列要素のうち、前記各フィールドの描画領域の位置に描画され、かつ、当該各フィールドに描画された各文字列の情報に対応する文字列要素をグループ化するグループ化工程と、
前記グループ化工程においてグループ化された文字列要素を含む前記所定の形式の帳票データの閲覧および編集を行うための閲覧画面を表示させるためのデータを生成する閲覧画面生成工程とを備える
ことを特徴とする情報処理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、制御方法、およびコンピュータプログラムに関する。
【背景技術】
【０００２】
昨今、サーバ側で業務データの管理や各種処理を行う形態として、クラウドコンピューティングシステムが普及し始めている。例えば、社内で運用されている業務帳票もその対象となる。まず、ユーザは、クライアントコンピュータのブラウザからインターネットを介してクラウドサーバコンピュータのＷｅｂページにアクセスし、そのＷｅｂページ上で電子化された帳票を閲覧する。そして、業務フローに応じて閲覧している帳票の編集および印刷を行うケースの増加が予想される。
【０００３】
また、帳票生成の技術としてフォームオーバーレイ処理により作成される印刷用の帳票をＰＤＦに変換してプレビューする技術がある。しかしながら、ＰＤＦファイルは編集に向かないため、ＳＶＧに変換して編集することが考えられる。しかし、印刷用の帳票ＰＤＦは描画情報から変換したものであるため、ＳＶＧへの変換過程において、複数の文字列に分割される場合がある。また、印刷用の帳票ＰＤＦは、フォームオーバーレイ処理によって得られる印刷用帳票の描画情報をＰＤＦ形式に変換したものであるため、アプリケーションやＧＤＩ等の仕様により、文字列が分割されて描画される場合がある。
【０００４】
したがって、上述のようなＰＤＦファイルをＳＶＧ形式のファイルに変換した場合、ＳＶＧファイル内の文字列が複数の文字列に分割される場合がある。例えば、「オレンジジュース」という品目を表現する１つの文字列オブジェクトが、「オレン」と「ジジュース」のように複数の文字列オブジェクトに分割されてしまう場合がある。
【０００５】
そして、上述のように文字列が分割されてしまった場合、ウェブアプリケーションは、分割された文字列がそれぞれ別の文字列であると認識するため、意味のある単位で文字列選択や編集を行うことができない。そこで、特許文献１は、一方向にならぶ文字列の組を同じ属性のグループとして抽出する技術について開示している。また、特許文献２は、飾り線や囲み枠を検出し、それらで囲まれる領域を抽出して、その内部をグループ化するグループ化処理を行う技術について開示している。また、特許文献３は、イメージ化した帳票をＷｅｂページとして表示し、その文字列を編集更新する技術について開示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】ＷＯ０９／１１０５５０号公報
【特許文献２】特開２００７‐０９５１０２号公報
【特許文献３】特開２００５‐１９０４３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述のように文字列が分割されてしまった場合、ユーザは意味のある単位で、文字列選択や編集を行うことができない。また、特許文献１では、描画が一方向に並ぶ文字列をグループ化しているが、同じ列に複数の文字列の組が存在した場合に、それらを複数の文字列の組として検知することができない。また、特許文献２では、囲み枠など実際に描画されている情報が存在しない場合に、グループ化を行うことができない。そして、特許文献３では、編集可能な文字列の組を事前に手動でグループ化しておく必要があるため、フォームやフィールドデータが追加されたり変更されたりする毎にグループ化の作業を手動で行う必要がある。
【０００８】
本発明は、上記課題を鑑みてなされたものであり、帳票データから編集可能な帳票データへ変換する際に文字列要素が分割されていても、複数の文字列要素をひとつの文字列として操作できるような情報処理システムを提供する。また、雛形フォームやフィールドデータの内容が変更されたとしても生成される帳票データの内容に合わせて文字列のグループ化が可能な情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一実施形態の情報処理システムは、帳票のフォーム情報とフィールドデータとをオーバレイ処理することにより帳票データを生成する帳票生成手段と、前記オーバレイ処理において前記フィールドデータの各文字列が描画される各フィールドの描画領域の位置と、各フィールドに描画された各文字列の情報とを関連付けて記憶する記憶手段と、前記帳票生成手段で生成された帳票データを、ウェブブラウザ上で編集可能な所定の形式の帳票データに変換する変換手段と、前記記憶手段に関連づけて記憶された前記各フィールドの描画領域の位置と各文字列の情報とに基づいて、前記変換手段で変換された前記所定の形式の帳票データに含まれる文字列要素のうち、前記各フィールドの描画領域の位置に描画され、かつ、当該各フィールドに描画された各文字列の情報に対応する文字列要素をグループ化するグループ化手段と、前記グループ化手段によりグループ化された文字列要素を含む前記所定の形式の帳票データの閲覧および編集を行うための閲覧画面を表示させるためのデータを生成する閲覧画面生成手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明の情報処理システムによれば、帳票データから編集可能な帳票データへ変換する際に文字列要素が分割されていても、図形情報の有する文字列と比較した結果に応じて、文字列要素をグループ化することにより、ひとつの文字列として操作可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係るシステム全体の構成を示す図である。
【図２】情報処理装置のハードウェアの構成を示す図である。
【図３】本発明のシステムに係るソフトウェアの構成を示す図である。
【図４】編集可能な帳票閲覧画面を生成する処理のシーケンス図である。
【図５】オーバレイ出力処理を示すフローチャートである。
【図６】文字列要素のグループ化処理を示すフローチャートである。
【図７】帳票選択画面の一例を示す図である。
【図８】図形情報ファイルの一例を示す図である。
【図９】ＳＶＧ形式の帳票データの一例を示す図である。
【図１０】グループ化された文字列要素の一例を示す図である。
【図１１】編集可能な帳票閲覧画面の一例を示す図である。
【図１２】帳票閲覧画面上で行う編集処理を示すフローチャートである。
【図１３】編集可能な帳票閲覧画面の一例を示す図である。
【図１４】帳票閲覧画面の印刷処理を示すフローチャートである。
【図１５】文字列要素のグループ化処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明に係る実施形態を説明する。
【００１３】
（第１実施形態）
まず、一般的なオーバレイ出力について説明する。オーバレイ処理の１つとして、オーバレイ出力がある。オーバレイ出力とは、原稿用紙形式の枠線などの情報を記録するフォーム情報とテキスト形式のデータ（フィールドデータ）を重ねあわせて印刷することである。レーザプリンタ等のページプリンタがもつページ登録またはフォーム登録と呼ばれる機能を使用し、フォーム情報としてあらかじめ登録しておく。このページプリンタを利用してフィールドデータとともに印刷するとき、ページ情報呼び出しまたはフォーム情報呼び出しと呼ばれる機能を使用することにより、該フォーム情報と該フィールドデータを重ねあわせて印刷することができる。上述のような重ねあわせ印刷のことをオーバレイ出力と定義している。
【００１４】
まず図１は、本発明の一実施形態に係るシステム全体の構成を示す図である。図１に示すシステムは、帳票生成サーバ１０１とクライアント装置１０２とプリンタ１０３を備える。帳票生成サーバ１０１は、本実施形態の情報処理装置であってオーバレイ出力処理、並びに電子帳票閲覧プログラムの生成処理を実行する。すなわち、帳票生成サーバ１０１は、テキストデータであるフィールドデータファイルと所定のフォーム情報を含むフォーム情報ファイルとを重ね合わせて帳票データを生成する。そして、生成された電子ファイル形式の帳票データを用いて、その帳票を閲覧および編集可能な帳票閲覧プログラムを生成する。
【００１５】
本実施形態の帳票閲覧プログラムは、ネットワークを介して配信できるウェブブラウザ上で動作するウェブアプリケーションである。これらのウェブアプリケーションは、ウェブページを表現するマッシュアップ言語（ＨＴＭＬ）及びウェブブラウザ上で動作するプログラミング言語（ＪａｖａＳｃｒｉｐｔ（登録商標））により動作するアプリケーションである。また、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔは、登録商標である。なお、本実施形態では、帳票閲覧プログラムをウェブブラウザ上で実行し、実際にウェブブラウザ上に表示される画面を帳票閲覧画面と呼ぶ。また、帳票閲覧プログラムは、ウェブブラウザ上で動作するウェブアプリケーション以外のコンピュータシステム上で実行するアプリケーションであってもよい。
【００１６】
帳票生成サーバ１０１は、クライアント装置１０２からリクエストを受信して上述のオーバレイ出力処理および、帳票閲覧プログラム生成処理を行う。プリンタ１０３は、クライアント装置１０２からリクエストを受信して帳票データを紙に印字する処理を行う。また、上記各構成要素は、ネットワーク１００により通信可能に接続されている。ネットワーク１００は、例えば、インターネット等のＬＡＮ、ＷＡＮ、電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれでもよい。また、これらの組み合わせにより実現される、いわゆる通信ネットワークであってもよい。すなわち、ネットワーク１００はデータの送受信が可能であればよく、クライアント装置１０２から帳票生成サーバ１０１への通信手段とクライアント装置１０２からプリンタ１０３への通信手段が異なっていてもよい。
【００１７】
次に、図２は、帳票生成サーバ１０１、クライアント装置１０２のハードウェア構成を示すブロック図である。ＣＰＵ２０１は、内部バスで接続される各デバイス（ＲＯＭ、ＲＡＭ他）を直接または間接的に制御し、本発明を実現するためのプログラムを実行する。ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２には、組み込みプログラムおよびデータが記録されている。ＲＡＭ２０３は、ＣＰＵ２０１のワーク領域として利用されたり、本発明を実現するためのコンピュータプログラム（ソフトウェアモジュール）をロードするための一時記憶として利用される。
【００１８】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）２０４は、基本ソフトウェアであるＯＳやソフトウェアモジュールが記憶されている記憶装置である。なお、ＨＤＤ２０４の代わりとしてＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの間接記憶装置であってもよい。入力装置２０５は、不図示のキーボードやポインティングデバイスなど入力を行なうための装置である。出力装置２０６は、ディスプレイが接続され、出力を行うための装置である。Ｉ／Ｆ２０７は、ネットワーク１００に接続するためのインターフェースである。
【００１９】
上述のハードウェアでは、帳票サーバ１０１またはクライアント装置１０２を起動すると、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１によりＢＩＯＳが実行され、ＯＳをＨＤＤ２０４からＲＡＭ２０３に実行可能にロードする。ＣＰＵ２０１は、ＯＳの動作に従って各種ソフトウェアモジュールをＨＤＤ２０４からＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３に随時、実行可能にロードする。各種ソフトウェアモジュールは、各デバイスの協調によりＣＰＵ２０１によって実行され動作する。また、Ｉ／Ｆ２０７は、ネットワーク１００に接続されており、ＯＳの動作に従ってＣＰＵ２０１により制御され、上述した通信手段による通信を実現している。
【００２０】
次に、図３は、帳票生成サーバ１０１上で動作するソフトウェアモジュールの構成例を示す図である。各ソフトウェアモジュールは、図２に示すＨＤＤ２０４に記憶されており、ＣＰＵ２０１によってＲＡＭ２０３にロードされ実行される。アクセス制御部３０１は、クライアント装置１０２からのリクエストに応じてユーザ認証を行う。ページ生成部３０２は、クライアント装置１０２にレスポンスを返すためのＷｅｂページを生成する。ページ生成部３０２は、帳票閲覧プログラムであるウェブアプリケーションに必要なＨＴＭＬ、ＪａｖａＳｃｒｉｐｔ（登録商標）などのファイルも生成し、クライアント装置１０２に返す。
【００２１】
データアクセス部３０３は、各データベース３０５、３０６、３０７、３０８、３０９へのアクセス処理を行う。帳票生成部３０４は、データアクセス部３０３が読み出したフォーム情報ファイルの示すフォーム情報と、フィールドデータファイルの示すフィールドデータから帳票データおよび図形情報ファイル８０１を生成する。帳票印刷部３１０は、クライアント装置１０２からの印刷ファイル生成リクエストを受け取り、印刷可能なフォーマットに変換する。
【００２２】
帳票情報データベース３０５は、生成された帳票の情報を格納するデータベースである。帳票名、所有者などの情報を表すデータを含み、当該帳票を生成するために必要なフォーム情報ファイルとフィールドデータファイルを特定する情報を所有する。また、帳票のオーバレイ結果である帳票データおよび図形情報ファイル８０１を特定する情報を所有する。フォーム情報ファイルデータベース３０６は、フォーム情報ファイルを格納するデータベースである。フィールドデータデータベース３０７は、フィールドデータファイルを格納するデータベースである。
【００２３】
帳票データデータベース３０８は、帳票生成部３０４が生成した帳票データを格納するデータベースである。図形情報データベース３０９は、オーバレイ処理時に生成した各フィールドの描画領域およびフィールドに描画する文字列を図形情報ファイル８０１として格納するデータベースである。
【００２４】
次に、本実施形態の具体的な処理の流れについて図４を用いて説明する。図４は、編集可能な帳票閲覧画面１１０１を生成する処理のシーケンスを示す図である。まず、ステップＳ４０１において、ユーザは、クライアント装置１０２のウェブブラウザで表示されている不図示のログイン画面にて帳票生成サーバ１０１にログインする。次に、ステップＳ４０２において、帳票生成サーバ１０１のアクセス制御部３０１は、クライアント装置１０１から受信したログインリクエストの内容により、ログイン処理を行う。そして、ステップＳ４０３において、帳票生成サーバ１０１のページ生成部３０２はログインしたユーザの情報に応じて図７に示す帳票選択画面７０１を生成する。
【００２５】
ここで、図７に示す帳票選択画面７０１について説明する。領域７０２は、現在ログインしたユーザのユーザ名を表示する領域である。ドロップダウンリスト７０３は、現在ログインしたユーザが所有する帳票一覧を表示する。ドロップダウンリスト７０３の中に表示する内容は、ページ生成部３０２がデータアクセス部３０３を介して帳票情報データベース３０５から抽出したログインユーザが所有する帳票の帳票名である。
【００２６】
ボタン７０４、７０５、７０６は帳票操作ボタンであり、ドロップダウンリスト７０３で選択された帳票名に該当する帳票に対してプレビュー、編集可能なプレビューまたは印刷操作を実行するためのボタンである。編集可能プレビューボタン７０５が押下された後の処理については後述するが、プレビューボタン７０４と印刷ボタン７０６が押下された後の処理の説明については省略する。
【００２７】
ここで、図４の説明に戻る。ステップＳ４０４において、帳票生成サーバ１０１のアクセス制御部３０１は、ステップＳ４０３で生成された帳票選択画面７０１をネットワーク１００を介してクライアント装置１０２に返す。次に、ステップＳ４０５において、クライアント装置１０２は、帳票生成サーバ１０１からのレスポンスを受け取り、ウェブブラウザに表示する。そして、ステップＳ４０６において、ユーザは帳票選択画面７０１内のドロップダウンリスト７０３から操作したい帳票の帳票名を選択する。
【００２８】
次に、ステップＳ４０７において、ユーザは帳票選択画面７０１内の編集可能プレビューボタン７０５を押下することにより、クライアント装置１０２が、帳票生成サーバ１０１に編集可能な帳票閲覧画面１１０１の生成リクエストを送信する。編集可能な帳票閲覧画面１１０１の生成リクエストの中に、閲覧対象帳票を特定できる情報を包含する。そして、ステップＳ４０８において、帳票生成サーバ１０１の帳票生成部３０４は、データアクセス部３０３を介して閲覧対象帳票に関連するフォーム情報ファイルとフィールドデータファイルを取得する。そして、ステップＳ４０９において、帳票生成サーバ１０１の帳票生成部３０４はステップＳ４０８で取得したフォーム情報ファイルとフィールドデータファイルを使用してオーバレイ出力処理を行う。
【００２９】
ここで、図５を用いてオーバレイ処理について説明する。図５は、本実施形態における帳票生成サーバ１０１が、フォーム情報ファイルとフィールドデータファイルを指定しオーバレイ出力する処理の流れを示すフローチャートである。
【００３０】
まず、ステップＳ５０１において、ステップＳ４０８で取得したフォーム情報ファイルとフィールドデータファイルを使用して出力帳票のレイアウト構成を計算する。レイアウト構成とは、フィールドデータに依存しないフォーム図形及びフィールドデータに依存するフィールド図形の描画に必要な情報であり、領域座標、描画する文字列、装飾情報などである。なお、以降ではフォーム図形およびフィールド図形を総じて描画図形と記す。
【００３１】
次に、ステップＳ５０２において、ステップＳ５０１で得られたレイアウト構成に従い、描画図形の描画命令を順次に行う。ステップＳ５０３において、帳票生成部３０４は、ステップＳ５０２で実行した描画命令の対象描画図形の情報を取得する。取得する情報は、描画図形を一意に識別する描画図形名、描画文字列、データの描画領域座標である。
【００３２】
そして、ステップＳ５０４において、帳票生成部３０４は、ステップＳ５０３で取得した描画図形情報を図形情報ファイル８０１に書き込む処理を行う。図形情報ファイル８０１が存在しない場合、新規作成を行う。また、同じフィールドに複数情報を書き込む場合は、レコード８０４が示す「ｄａｔａ」のように、異なる部分をマージする処理を行う。次に、帳票生成部３０４は、データアクセス部３０３を介して生成された図形情報ファイル８０１を図形情報データベース３０９に格納する。そして、生成された図形情報ファイル８０１を特定できる情報を帳票情報データベース３０５の中の該当レコードに追加する。
【００３３】
ここで、図８を用いて図形情報ファイル８０１について説明する。図８は、図形情報ファイル８０１の構成例を示す図である。本実施形態では、図形情報ファイル８０１はＪＳＯＮフォーマットである。レコード８０２は、描画図形を一意に表わす名前を示す。レコード８０３は、描画図形の種類を示す。レコード８０４は、描画図形の各データの描画情報を示す。レコード８０５、８０６では、それぞれ描画図形の描画文字列（項目ｖａｌｕｅ）及び描画領域座標（項目ｐｏｓｉｔｉｏｎ）を示す。
【００３４】
ここで、図５の説明に戻る。ステップＳ５０５において、帳票生成部３０４はすべての描画命令が完了したか否かを判断する。ステップＳ５０５において、帳票生成部３０４は、すべての描画命令が完了していないと判断された場合（Ｎｏ）、ステップＳ５０２に戻り、次の描画命令を行う。一方、ステップＳ５０５において、帳票生成部３０４はすべての描画命令が完了したと判断された場合（Ｙｅｓ）、ステップＳ５０６の処理へ進む。次に、ステップＳ５０６において、帳票生成部３０４は、描画処理の結果であるＰＤＬ情報（プリンタに対して描画を指示するためのページ記述言語）を利用して、仮想プリンタを介してＰＤＦ形式の帳票データを生成する。
【００３５】
ここで、図４の説明に戻る。ステップＳ４１０において、帳票生成部３０４は、ステップＳ５０６で生成したＰＤＦ形式の帳票データをＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式の帳票データに変換する。ＰＤＦ形式の帳票データは、ウェブブラウザ上で直接編集できないため、編集できる形式（本実施形態の場合はＳＶＧ形式）に変更する。次に、ステップＳ４１１において、帳票生成部３０４はステップＳ４０８で生成した図形情報ファイル８０１を用いてＳＶＧの文字列オブジェクトのグループ化を行う。なお、本実施形態では、編集できる形式としてＳＶＧ形式に変換しているが、他の形式であってもよい。
【００３６】
ここで、図６について説明する。図６は、本実施形態の帳票生成サーバ１０１における、ＳＶＧの文字列要素のグループ化処理の流れを示すフローチャートである。まず、ステップＳ６０１において、帳票生成部３０４はデータアクセス部３０３を通じ、ステップＳ４０８で生成した図形情報ファイル８０１を取得する。そして、図形情報ファイル８０１から描画図形の描画情報を取得する。
【００３７】
次に、ステップＳ６０２にて、帳票生成部３０４はＳＶＧ形式の帳票データのｔｅｘｔ要素のうち、描画領域内に描画が行われるものを抽出する。ここで、図９にＳＶＧ形式の帳票データ９０１の例を示す。図９の＜ｔｅｘｔ  ｘ＝“４０”  ｙ＝“１０”＞帳＜／ｔｅｘｔ＞と＜ｔｅｘｔ  ｘ＝“４５”  ｙ＝“１０”＞票太郎＜／ｔｅｘｔ＞の部分は、変換する前は１つの文字列だったが、ｔｅｘｔ要素の時点で複数に分割されている。
【００３８】
つまり、図形情報ファイル８０１が示す「請求先」を例にすると、描画領域に含まれるｔｅｘｔ要素は、＜ｔｅｘｔ  ｘ＝“４０”  ｙ＝“１０”＞帳＜／ｔｅｘｔ＞と＜ｔｅｘｔ  ｘ＝“４５”  ｙ＝“１０”＞票太郎＜／ｔｅｘｔ＞の２つである。
【００３９】
ここで、図６の説明に戻る。ステップＳ６０３において、帳票生成部３０４は抽出したｔｅｘｔ要素の描画文字列がステップＳ６０１で取得した描画文字列に含まれる文字列か否かを比較して、描画文字列に含まれるｔｅｘｔ要素のみを抽出する。このとき、描画文字列に含まれていない文字列を持つｔｅｘｔ要素は、描画座標が重なっている別の描画図形に対応するものであると判断し、グループ化の対象から外す。
【００４０】
次に、ステップＳ６０４において、帳票生成部３０４は、ｔｅｘｔ要素のグループ化を行う。グループ化の方法例を図１０に示す。本実施形態では、図１０（Ａ）に示す抽出したｔｅｘｔ要素をｇ要素（タグ）で囲む方法を用いているが、図１０（Ｂ）に示すような相対座標に変換し、１つのｔｅｘｔ要素としてまとめるなど、他の方法であってもよい。
【００４１】
次に、ステップＳ６０５において、図形情報ファイル８０１に含まれるすべての描画図形についてグループ化が完了したか否かを判断する。完了していない場合は（Ｎｏ）、ステップＳ６０１に戻る。一方、すべての描画図形についてグループ化が完了している場合（Ｙｅｓ）、処理を終了する。そして、ステップＳ６０６で、帳票生成部３０４は、データアクセス部３０３を介して生成されたＳＶＧ形式の帳票データを帳票データデータベース３０８に格納する。そして、生成されたＳＶＧ形式の帳票データを特定できる情報を帳票情報データベース３０５の中の該当帳票レコードに追加する。
【００４２】
ここで、図４の説明に戻る。ステップＳ４１２において、帳票生成サーバ１０１は、ステップＳ４０７のリクエストの対象帳票の編集可能な帳票閲覧画面１１０１のＵＲＬをクライアント装置１０２に返す。クライアント装置１０２に返すＵＲＬの中に、ステップＳ４１１で生成したＳＶＧ形式の帳票データを特定できる情報が含まれている。本実施形態では、クライアント装置１０２に返すＵＲＬの中に帳票データと関連する帳票データの帳票名が含まれている。
【００４３】
次に、ステップＳ４１３において、クライアント装置１０２は、ステップＳ４１２で返されたＵＲＬを使用して編集可能な帳票閲覧画面１１０１にリダイレクトするリクエストを帳票生成サーバ１０１に送信する。そして、ステップＳ４１４において、帳票生成サーバ１０１のページ生成部３０２（閲覧画面生成手段）は、ステップＳ４１３のダイレクトリクエストの内容に応じて編集可能な帳票閲覧画面１１０１を生成する。生成される編集可能な帳票閲覧画面１１０１には、リクエスト対象帳票の帳票データ、帳票データを閲覧、編集、印刷操作を制御するためのＪａｖａＳｃｒｉｐｔ（登録商標）プログラムが含まれる。また、ページ生成部３０２は、ステップＳ４１３のリダイレクトリクエスト中の帳票名情報を利用して、データアクセス部３０３を介してリクエスト対象帳票に関連する帳票データを帳票データデータベース３０８から取得する。
【００４４】
次に、ステップＳ４１５において、帳票生成サーバ１０１は、ステップＳ４１４で生成した編集可能な帳票閲覧画面１１０１をクライアント装置１０２に返す。そして、ステップＳ４１６において、クライアント装置１０２は、帳票生成サーバ１０１からのレスポンスを受け取り（受信し）、ウェブブラウザに編集可能な帳票閲覧画面１１０１を表示する。なお、表示された編集可能な帳票閲覧画面１１０１を図１１に示す。
【００４５】
次に、図１１は、本実施形態における編集可能な帳票閲覧画面１１０１を示す図である。ボタン１１０２は、現在の表示されている帳票ページを印刷するためのボタンである。ユーザが表示文字列に対してクリック操作などの選択操作を行うことにより、編集可能な帳票閲覧画面内の編集プログラムが動作し、図１２が示す編集処理を行う。
【００４６】
次に、図１２は、本実施形態における帳票閲覧画面上で行う編集処理の流れを示すフローチャートである。まず、ステップＳ１２０１において、ユーザは編集可能な帳票閲覧画面１１０１の文字列に対しクリック操作を行う。次に、ステップＳ１２０２において、編集可能な帳票閲覧画面内の編集プログラム（以下「編集プログラム」と略称する）は、図１３（Ａ）に示す編集ダイアログ１３０１を表示する。このとき、ステップＳ１２０１でクリックされたｇ要素に含まれるｔｅｘｔ要素の文字列を結合し、テキストボックス１３０２に表示する。
【００４７】
次に、ステップＳ１２０３において、ユーザはテキストボックス１３０２に新しい値を入力し、確認ボタン１５０３をクリックする。次に、ステップＳ１２０４において、編集プログラムは、ステップＳ１２０２で取得したｔｅｘｔ要素の値をステップＳ１２０３でユーザが入力した値に置き換える。そして、ステップＳ１２０５において、編集ダイアログ１３０１を非表示にする。図１３（Ｂ）に、編集ダイアログ１３０１を非表示にした編集可能な帳票閲覧画面１１０１を示す。
【００４８】
次に、図１４を用いて印刷処理について説明する。図１４は、本実施形態における、編集可能な帳票閲覧画面１１０１の印刷ボタン１１０２が押下された際の印刷処理のシーケンスを示す図である。まず、ステップＳ１４０１において、ユーザにより編集可能な帳票閲覧画面１１０１の印刷ボタン１１０２が押下されると、ステップＳ１４０２において、クライアント装置１０２は、帳票生成サーバ１０１に印刷ファイルを生成するリクエストを送信する。印刷ファイルを生成するリクエストの中には、クライアント装置１０２が保持しているＳＶＧ形式の帳票データが含まれる。なお、ＳＶＧ形式の帳票データは、編集後の帳票データであってもよい。
【００４９】
次に、ステップＳ１４０３において、帳票生成サーバ１０１の帳票印刷部３１０（印刷データ生成手段）は、ステップＳ１４０２のリクエストの中の帳票データを使用してデータアクセス部３０３を介して帳票データデータベース３０８内の帳票データを更新する。そして、ステップＳ１４０４において、帳票生成部３１０は、ステップＳ１４０２のリクエストの中のＳＶＧ形式の帳票データをＰＤＦ形式に変換する。
【００５０】
次に、ステップＳ１４０５において、帳票生成部３１０は、ステップＳ１４０４で生成されたＰＤＦファイル（印刷データ）にアクセスするためのＵＲＬをクライアント装置に返す。そして、ステップＳ１４０６において、クライアント装置１０２は、ステップＳ１４０５で返されたＰＤＦファイルにアクセスするためのＵＲＬにリダイレクトする。そして、ステップＳ１４０７において、帳票生成サーバ１０１のアクセス制御部３０１は、データアクセス部３０３を介して、ステップＳ１４０４で生成されたＰＤＦファイルをクライアント装置に返す。
【００５１】
次に、ステップＳ１４０８において、クライアント装置１０２は、ＰＤＦファイルをウェブブラウザで表示できるソフトウェア（Ａｄｏｂｅ（登録商標）  ＰＤＦ  Ｒｅａｄｅｒなど）を使用して、ＰＤＦファイルを表示する。そして、ステップＳ１４０９において、クライアント装置１０２はＰＤＦファイルを印刷できるソフトウェアを使用してＰＤＦを印刷する。
【００５２】
以上のように、本実施形態によれば、編集可能な形式に変換した帳票データに含まれる文字列要素が、図形情報の有する文字列に含まれる場合、図形情報の有する文字列に含まれる文字列要素をグループ化する。これにより、帳票データからウェブアプリケーションへ変換する際に文字列が分割されていても、複数の文字列をひとつの文字列として操作できるような情報処理システムを提供することができる。また、雛形フォームやフィールドデータの内容が変更されたとしても生成される帳票データの内容に合わせて文字列のグループ化を行うことができる。
【００５３】
（第２実施形態）
本実施形態では、ＳＶＧ形式の帳票データ１１０２において、ｔｅｘｔ要素の順番に規則はない。この場合、編集可能な帳票閲覧画面１１０１で文字列を選択した際に、グループ化されたｔｅｘｔ要素の文字は、ｔｅｘｔ要素の順番で選択、編集される。具体的には、＜ｔｅｘｔ  ｘ＝“４５”  ｙ＝“１０”＞票太郎＜／ｔｅｘｔ＞と＜ｔｅｘｔ  ｘ＝“４０”  ｙ＝“１０”＞帳＜／ｔｅｘｔ＞の順番で記載されていた場合、表示上は問題ない。しかし、編集プログラムではｔｅｘｔ要素の順番で文字列が取得されるため、テキストボックス１３０２では、「票太郎帳」の順で表示される。
【００５４】
本実施形態では、ｔｅｘｔ要素の順番に因らず正しい順番の文字列で編集を行うためのグループ化処理方法について説明する。以下、本実施形態１と同様の処理については説明を省略する。図１５は、本実施形態における帳票生成サーバ１０１における、ＳＶＧの文字列要素のグループ化処理の流れを示すフローチャートである。
【００５５】
まず、ステップＳ１５０１からステップＳ１５０４は、それぞれ図６に示すステップＳ６０１からステップＳ６０４と同様のため説明は省略する。まず、ステップＳ１５０５において、帳票生成部３０４は抽出したｔｅｘｔ要素が縦書きか横書きかを判別する。ＳＶＧ形式の場合、ｔｅｘｔ要素のｗｒｉｔｉｎｇ−ｍｏｄｅの値によって判別を行う。縦書き指定の場合はステップＳ１５０６に処理を進める。一方、横書きの場合はステップＳ１５０７に処理を進める。そして、ステップＳ１５０６において、帳票生成部はグループ化したｔｅｘｔ要素群の描画領域（ｘ、ｙ属性）を縦書きの表示順序に一致するように並べ替える。つまり、第１キーとしてｘ座標の降順ソート後、第２キーとしてｙ座標の昇順ソートを行う。
【００５６】
一方、ステップＳ１５０７においては、帳票生成部はグループ化したｔｅｘｔ要素群の描画領域（ｘ、ｙ属性）を横書きの表示順序に一致するように並べ替える。つまり、第１キーとしてｙ座標の昇順ソート後、第２キーとしてｘ座標の昇順ソートを行う。ステップＳ１５０８およびステップＳ１５０９は、それぞれ図６に示すステップＳ６０５、ステップＳ６０６と同様のため省略する。
【００５７】
以上により、ＳＶＧのｔｅｘｔ要素がどのような順番で定義されていたとしても、帳票閲覧画面で見た目と合致した正しい文字の順で文字列選択、編集を行うことが可能となる。
【００５８】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５９】
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
【図１】
0006525641.tif 000002
【図２】
0006525641.tif 000003
【図３】
0006525641.tif 000004
【図４】
0006525641.tif 000005
【図５】
0006525641.tif 000006
【図６】
0006525641.tif 000007
【図７】
0006525641.tif 000008
【図８】
0006525641.tif 000009
【図９】
0006525641.tif 000010
【図１０】
0006525641.tif 000011
【図１１】
0006525641.tif 000012
【図１２】
0006525641.tif 000013
【図１３】
0006525641.tif 000014
【図１４】
0006525641.tif 000015
【図１５】
0006525641.tif 000016