JP6529229B2 - 情報処理装置、制御方法、およびコンピュータプログラム - Google Patents

情報処理装置、制御方法、およびコンピュータプログラム Download PDF

Info

Publication number
JP6529229B2
JP6529229B2 JP2014172724A JP2014172724A JP6529229B2 JP 6529229 B2 JP6529229 B2 JP 6529229B2 JP 2014172724 A JP2014172724 A JP 2014172724A JP 2014172724 A JP2014172724 A JP 2014172724A JP 6529229 B2 JP6529229 B2 JP 6529229B2
Authority
JP
Japan
Prior art keywords
data
information
processing apparatus
information processing
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014172724A
Other languages
English (en)
Other versions
JP2016048428A (ja
JP2016048428A5 (ja
Inventor
志成 汪
志成 汪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014172724A priority Critical patent/JP6529229B2/ja
Priority to US14/822,027 priority patent/US10353998B2/en
Publication of JP2016048428A publication Critical patent/JP2016048428A/ja
Publication of JP2016048428A5 publication Critical patent/JP2016048428A5/ja
Application granted granted Critical
Publication of JP6529229B2 publication Critical patent/JP6529229B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、情報処理システム、情報処理装置、制御方法、およびコンピュータプログラムに関する。
昨今、ペーパーレス化による業務の効率化や省資源化を目的に、紙媒体の情報を文書データに置き換える企業が増加している。例えば、社内で運用されている業務帳票もその対象となることが多く、特に基幹系システムが出力する帳票は大量のページ数を出力するため運用コストが莫大なものになることから、帳票の電子化が積極的に行われている。また、サーバコンピュータ側で業務データの管理や各種処理を行う形態として、クラウドコンピューティングシステムが普及し始めている。ユーザは、クライアントコンピュータのブラウザからインターネットを介してクラウドサーバコンピュータのWebページにアクセスし、そのWebページ上で電子化された帳票文書データを閲覧することが考えられる。さらに、業務フローに応じて閲覧している帳票文書データを編集・印刷するような利用ケースの増加が予想される。
Webページ上で電子化された帳票文書データを編集するには、編集処理を制御するためのプログラムが必要である。ここで、帳票文書データの編集できる箇所、及び帳票文書データ内の各データ間の計算関連(例えば単価データと合計データの関連)は帳票文書データごとに異なるため、各帳票文書データ専用の制御プログラムが必要となる。このため、コストが高く生産性が低いという課題がある。
ADOBE(登録商標)社のAcrobatは、ADOBE(登録商標) PDF、Microsoft(登録商標) Word文書などをWebページで閲覧・編集できるPDFフォームに変換することができる。また、特許文献1は、帳票データをクライアントがブラウザで閲覧・編集する帳票出力確認サーバを開示している。
特開2005−190432号公報
しかしながら、帳票文書データ内で編集したデータが他のデータと計算上の関連がある場合に、データを編集後に関連データもその関連性に従い更新する必要がある。Acrobatの場合は、手動で計算関係の設定を行う必要がある。また、特許文献1の場合は、クライアントがブラウザ上で編集した後で、データベース内の帳票データを編集したデータに更新し、さらに更新したデータを用いて再度オーバレイ出力処理を行うことで編集後のデータの閲覧および関連データの更新を実現している。このため、オーバレイ出力処理、及びブラウザで閲覧可能な画像形式に変換する処理を行う必要があり、データ編集の完了から関連フィールドの値を更新するまでに時間がかかってしまう。
本発明は、このような状況を鑑みてなされたものであり、例えば、オーバレイ出力された帳票文書データを閲覧しているときにデータの編集を行うと、そのデータに関連するデータも自動的にリアルタイム更新される情報処理システムを提供することを目的とする。
本発明の一実施形態の情報処理装置は、フォーム情報とフィールドデータとをオーバレイ出力するための描画命令を実行することにより印刷データを生成する第1生成手段と、前記第1生成手段で前記描画命令を実行することによって前記印刷データを生成する際に前記描画命令に含まれる複数のフィールドの情報を取得することによって前記複数のフィールド間の計算関係を示す計算情報を生成する第2生成手段と、仮想プリンタドライバを用いて前記第1生成手段で生成された印刷データを変換して、PDF形式の帳票ページを生成する第3生成手段と、前記PDF形式の帳票ページを、SVG形式の帳票ページに変換する変換手段と、前記変換手段で変換された前記SVG形式の帳票ページと、前記第2生成手段で生成された計算情報とに基づいて、前記帳票ページの閲覧および編集を行うための閲覧画面を表示させるためのデータを生成する閲覧画面生成手段と、前記閲覧画面生成手段で生成された前記閲覧画面を表示させるためのデータを、クライアント装置に送信する送信手段と、を備える。
本発明の情報処理システムによれば、例えば、帳票文書データ内に計算上の関連が存在するデータがある場合、オーバレイ出力された帳票文書データとともに、計算上の関連を示す関連情報を出力する。これにより、閲覧された帳票文書データ上で編集を行うと、そのデータに関連するデータも自動的にリアルタイム更新されるようになる。
本発明の第1実施形態に係るシステムの構成例を示す図である。 第1実施形態に係るハードウェアの構成例を示す図である。 帳票生成サーバで動作するソフトウェアモジュールの構成例を示す図である。 帳票生成サーバのオーバレイ出力処理を説明する図である。 編集可能な帳票閲覧画面を生成する処理のシーケンスを示す図である ログイン画面の一例を示す図である。 帳票選択画面の一例を示す図である。 オーバレイ出力処理を説明するフローチャートである。 計算情報ファイルの構成例を示す図である。 編集可能な帳票閲覧画面の一例を示す図である。 編集可能な帳票閲覧画面の編集処理を説明するフローチャートである。 編集可能な帳票閲覧画面に対して編集操作が行われた状態を示す図である。 印刷ボタンが押下された際の印刷処理のシーケンスを示す図である。 変種可能な帳票閲覧画面のレイアウト変更を説明する図である。 計算情報ファイルの構成例を示す図である。 編集可能な帳票閲覧画面の編集処理を説明するフローチャートである。
(第1実施形態)
まず、一般的なオーバレイ出力について説明する。オーバレイ出力とは、原稿用紙形式の枠線などの情報を記録するフォーム情報とテキスト形式のデータ(フィールドデータ)を重ねあわせて印刷することである。レーザプリンタ等のページプリンタがもつページ登録またはフォーム登録と呼ばれる機能を使用し、フォーム情報としてあらかじめ登録しておく。このページプリンタを利用してフィールドデータとともに印刷するとき、ページ情報呼び出しまたはフォーム情報呼び出しと呼ばれる機能を使用することにより、該フォーム情報と該フィールドデータを重ねあわせて印刷することができる。このような重ねあわせ印刷のことをオーバレイ出力と定義している。また、オーバレイ出力の結果を紙に印刷するのではなく、仮想プリンタドライバを使用することにより、オーバレイ出力の結果(オーバレイ処理された印刷データ)を、所定のフォーマットの電子ファイルに変換して出力することも可能である。
図4は、帳票生成サーバ101によるオーバレイ出力処理の概要について説明した図である。
フォーム情報は専用のフォーム情報設計システムを利用して作成することができる。フォーム情報は、フィールドデータに依存しない固定的な図形(フォーム図形)と、受け取ったフィールドデータを指定した出力書式に従って表示する図形(フィールド図形)から構成されていることが一般的である。フィールド図形を作成するには、予めフィールドデータを受け取るための項目(フィールド)を作成する必要がある。フィールドはフォーム情報設計システムにて表示された専用の画面から作成することができる。フィールド図形を作成すると作成元であるフィールドとの関連付けが内部的におこなわれる。
表形式のフィールド図形(表図形)402の場合、フィールドデータをレコード単位に受け取るためのレコードフィールド403を作成する必要がある。また、他のフィールド図形のデータの演算結果からフィールドデータを生成する形式のフィールドは計算列フィールドと定義する。また、指定した集計方法で集計しフィールドデータを生成するフィールド形式は集計フィールドと定義する。フィールド図形404の場合、どのフィールドとどのような集計方法とが指定されているかを表すための集計フィールド405を作成する必要がある。
帳票生成サーバ101が、フィールド図形402,404と各フィールド403,405とが定義されたフォーム情報ファイル401と、対応するフィールドデータファイル406とを読み込む。そして、帳票生成サーバ101が、読み込んだフォーム情報ファイル401とフィールドデータファイル406とを重ね合わせることでオーバレイ出力を実行する。図4の407はオーバレイ出力結果を表す。
図1は、本実施形態のシステム構成例を示す図である。
図1に示すシステムは、帳票生成サーバ101とクライアント装置102とを備える。帳票生成サーバ101は、オーバレイ出力処理、及び電子帳票閲覧プログラムの生成処理を実行する。すなわち、帳票生成サーバ101はテキストデータであるフィールドデータファイルと所定のフォーム情報を含むフォーム情報ファイルとを重ね合わせて印刷ページを生成する。そして、仮想プリンタドライバに指示して上記生成された印刷ページを電子ファイルに変換する。また、その生成された電子ファイル(帳票ファイル)を用いてその帳票を閲覧及び編集できる帳票閲覧プログラムを生成する。
本実施形態の帳票閲覧プログラムとは、ネットワークを介して配信できるウェブブラウザ上で動作するウェブアプリケーションである。多くの場合、これらのウェブアプリケーションは、ウェブページを表現するマッシュアップ言語(HTML)及びウェブブラウザ上で動作するプログラミング言語(JavaScript(登録商標))により動作するアプリケーションである。帳票閲覧プログラムはウェブブラウザ上で表示するアプリケーションであるため、以下帳票閲覧画面とも呼ぶ。また、帳票閲覧プログラムは、ウェブブラウザ上で動作するウェブアプリケーション以外のコンピュータシステム上で実行するアプリケーションでも良い。また、帳票生成サーバ101が電子帳票ファイル及び後述するフィールド間の計算関連の情報を表すファイルのみ生成し、クライアント装置102側に上記ファイルを用いて後述する帳票閲覧・編集操作を再現できるアプリケーションを備えるような構成でも良い。帳票生成サーバ101は、クライアント装置102からリクエストを受信して上記オーバレイ出力処理、帳票閲覧プログラム生成処理を行う。
プリンタ103は、クライアント装置102からリクエストを受信して帳票文書データを紙に印刷する処理を行う。また、上記各構成要素はネットワーク100により通信可能に接続されている。ネットワークは、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれでもよい。また、これらの組み合わせにより実現される、いわゆる通信ネットワークであってもよい。すなわち、ネットワーク100はデータの送受信が可能であればよく、クライアント装置102から帳票生成サーバ101への通信手段とクライアント装置102からプリンタ103への通信手段が異なっていてもよい。
図2は、図1の帳票生成サーバ101、クライアント装置102のハードウェア構成例を示す図である。
CPU201は、内部バスで接続される各デバイス(後述のROM、RAM他)を直接または間接的に制御し、本発明を実現するためのプログラムを実行する。ROM202には、BIOSが格納してある。RAM203(記憶装置)は、CPU201のワーク領域として利用されたり、本発明を実現するためのコンピュータプログラム(ソフトウェアモジュール)をロードするための一時記憶として利用されたりする。
HDD204(ハードディスクドライブ)は、基本ソフトウェアであるOSやソフトウェアモジュールが記憶されている記憶装置である。なお、HDDの代わりにはSSD(ソリッドステートドライブ)などの記憶装置を用いてもよい。入力装置205は、不図示のキーボードやポインティングデバイスなど、入力を行うための装置である。出力装置206は、ディスプレイが接続され、出力を行うための装置である。I/F207は、ネットワーク100に接続するためのインターフェースである。
帳票生成サーバ101、またはクライアント装置102を起動すると、まずCPU201がBIOSを実行し、次にOSをHDD204からRAM203に実行可能にロードする。CPU201は、OSの動作に従って後述する各種ソフトウェアモジュールをHDD204からRAM203に随時、実行可能にロードする。各種ソフトウェアモジュールは上記各デバイスの協調によりCPU201によって実行され動作する。また、I/F207はネットワーク100に接続されており、OSの動作に従ってCPU201により制御され、上述した通信手段による通信を実現している。
図3は、帳票生成サーバ101上で動作するソフトウェアモジュールの構成例を示す図である。なお各ソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行されることにより、該CPU201は各処理部として機能する。
アクセス制御部301は、クライアント装置102からのリクエストに応じてユーザ認証を行う。ページ生成部302は、クライアント装置102にレスポンスを返すためのWebページを生成(閲覧画面生成)する。上記帳票閲覧プログラムであるウェブアプリケーションに必要なHTML、JavaScript(登録商標)などのファイルもページ生成部302で生成され、クライアント装置102に返す。
データアクセス部303は、各データベース305、306、307、308、309へのアクセス処理を行う。帳票生成部304は、データアクセス部303を介して読み出したフォーム情報ファイル401が示すフォーム情報と、フィールドデータファイル406が示すフィールドデータとを重ね合わせて、印刷データを生成する。そして、帳票生成部304が、上記生成した印刷データを仮想プリンタドライバなどのソフトウェアを利用して電子ファイルとしての帳票ページファイルを生成する。帳票印刷部310は、クライアント装置102からの印刷ファイル生成リクエストを受け取り、リクエスト中に含まれる帳票ページファイルを印刷可能なフォーマットに変換する。
データベース305は、帳票データを格納するデータベースである。帳票データは、帳票名、所有者などの情報を表すデータであり、当該帳票がどのフォーム情報ファイルとフィールドデータファイルから生成されるかを表す情報を所有する。また、帳票データは、当該帳票のオーバレイ結果である帳票ページがどれであるかを表す情報を所有する。
データベース306は、フォーム情報ファイルを格納するデータベースである。データベース307は、フィールドデータファイルを格納するデータベースである。データベース308は、帳票生成部304が生成した帳票ページファイルを格納するデータベースである。データベース309は、帳票オーバレイ出力処理時に生成する計算情報ファイルを格納するデータベースである。計算情報ファイルについては後述する。後述するように、帳票生成サーバはクライアントから帳票ページの閲覧要求を受信した場合、ページ生成部302は、帳票ページファイルと計算情報ファイルとを用いて、帳票閲覧ページを生成してクライアントに送信する。
次に、本実施形態の具体的な動作について説明する。図5は、本実施形態における、編集可能な帳票閲覧画面を生成する処理のシーケンスを示す図である。また、図6は、クライアント装置のウェブブラウザに表示されるログイン画面である。
まず、S501において、ユーザは、クライアント装置102のウェブブラウザで表示されているログイン画面601にて帳票生成サーバ101にログインのリクエストを送信する。ユーザは、ログイン画面601のユーザ名入力テキストボックス602とパスワード入力テキストボックス603にユーザ名とパスワードを入力し、ログインボタン604を押下することにより帳票生成サーバ101にログインのリクエストを送信する。
S502において、帳票生成サーバ101のアクセス制御部301は、クライアント装置102から受信したログインリクエストの内容により、ログイン処理を行う。アクセス制御部301は、Basic認証を行い、ユーザ名とパスワードが有効であると判断した場合にS503を行う。Basic認証は一般的な認証処理のため、その説明を省略する。S503において、帳票生成サーバ101のページ生成部302は、ログインしたユーザの情報に応じて図7に示す帳票選択画面701を生成する。
図7は、帳票選択画面の一例を示す図である。
領域702は、現在ログインしたユーザのユーザ名を表示する。ドロップダウンリスト703は、現在ログインしたユーザが所有する帳票一覧を表示する。ドロップダウンリスト703の中に表示する内容は、ページ生成部302がデータアクセス部303を介して帳票データのデータベース305から抽出したログインユーザが所有する帳票の帳票名である。ボタン704、705、および706は、ドロップダウンリスト703で選択された帳票名に該当する帳票に対して、それぞれプレビュー、編集可能なプレビュー、印刷操作を実行し、帳票操作を行うためのボタンである。編集可能プレビューボタン705が押下された後の処理の説明は後述するが、プレビューボタン704と印刷ボタン706が押下された後の処理の説明は省略する。
図5の説明に戻す。S504において、帳票生成サーバ101のアクセス制御部301は、S503で生成された帳票選択画面701を、ネットワーク100を介してクライアント装置102に返す。
S505において、クライアント装置102は、帳票生成サーバ101からのレスポンスを受け取り、ウェブブラウザに帳票選択画面701を表示する。
S506において、ユーザは、帳票選択画面701内のドロップダウンリスト703から操作したい帳票の帳票名を選択する。
S507において、ユーザにより帳票選択画面701内の編集可能プレビューボタン705が押下されると、クライアント装置102は、帳票生成サーバ101に編集可能な帳票閲覧画面の生成リクエストを送信する。編集可能な帳票閲覧画面の生成リクエストの中に、閲覧対象帳票を特定できる情報を包含する。
S508において、帳票生成サーバ101の帳票生成部304は、データアクセス部303を介して閲覧対象帳票に関連するフォーム情報ファイル401とフィールドデータファイル406とを取得する。
S509において、帳票生成サーバ101の帳票生成部304は、S508で取得したフォーム情報ファイル401とフィールドデータファイル406を使用してオーバレイ出力処理を行う。
以下でオーバレイ出力処理の詳細について説明する。図8は、本発明の実施形態における帳票生成サーバ101が実行するオーバレイ出力処理を説明するフローチャートである。
S801において、S508で取得したフォーム情報ファイル401とフィールドデータファイル406を使用して閲覧対象帳票のレイアウト構成を計算する。
S802において、S801で得られたレイアウト構成に従い、各図形(フィールドデータに依存しないフォーム図形及びフィールドデータに依存するフィールド図形)の描画命令を順次行う。
S803において、帳票生成部304は、S802で実行した描画命令がフィールド図形の描画命令であるかどうか判断する。S803において、帳票生成部304は、S802で実行した描画命令がフィールド図形の描画命令であると判断した場合には、S804の処理に進む。S803において、帳票生成部304は、S802で実行した描画命令がフィールド図形の描画命令ではないと判断した場合には、S806の処理に進む。
S804において、帳票生成部304は、S802で実行した描画命令の対象フィールド図形の情報を取得する。取得する情報は、対象フィールド図形のフィールド名、フィールド図形のタイプ(レコードフィールド、集計フィールド、など)、描画するレコードのデータ、データの描画位置及び関連フィールド(帳票ページ内のデータの関連情報)の情報である。S805において、帳票生成部304は、S804で取得した情報を図9に示すような計算情報ファイル901に書き込む処理(計算情報生成)を行う。計算情報ファイル901が存在しない場合は、計算情報ファイルの新規作成を行う。また、同じフィールド名に対応する複数の情報を書き込む場合には、行904の「data」レコードのように、異なる部分(行905と行906)をマージする処理を行う。続いて、帳票生成部304は、データアクセス部303を介して生成された計算情報ファイルを計算情報ファイルデータベース309に格納する。そして、生成された計算情報ファイルを特定できる情報を帳票データデータベース305の中の該当帳票レコードに追加する。以下、計算情報ファイル901の構成について説明する。
図9は、計算情報ファイルの構成例を示す図である。本実施形態の場合、計算情報ファイルはJSONフォーマットである。以下、計算情報ファイルの各行の記述内容を「レコード」という。
行902のレコードは、フィールド図形のフィールド名を示している。行903のレコードは、フィールド図形の種類を示している。行904のレコードは、フィールド図形の各データの描画情報を示している。行905及び906のレコードは、フィールド図形のデータの値及び描画位置(座標)を示している。行907のレコードは、対象フィールド図形と関連するフィールド図形の情報を示している。あるフィールド図形と関連するフィールド図形が存在しない場合は、行907のように、「null」と記述する。また、あるフィールド図形と関連するフィールド図形が存在する場合は、行908及び910が示すレコードのように、関連するフィールド図形のフィールド名を記述する。また、このとき行909及び911の示すレコードのように、フィールド図形間の計算関係も記述する。
S806において、帳票生成部304は、すべての描画命令が完了したか否かを判断する。S806において、帳票生成部304がすべての描画命令が完了していないと判断した場合はS802に戻り、次の描画命令を行う。S806において、帳票生成部304がすべての描画命令が完了したと判断した場合は、S807の処理を行う。S807において、帳票生成部304は、描画処理の結果であるPDL情報(プリンタに対して描画を指示するためのページ記述言語)を利用して、仮想プリンタドライバを介して該PDL情報をPDF形式に変換することにより帳票ページを生成する。
図5の説明に戻す。S510において、帳票生成部304は、S807で生成したPDF形式の帳票ページをSVG(スケーラブル・ベクター・グラフィックス)形式の帳票ページに変換する。PDF形式の帳票ページは、ウェブブラウザ上で直接編集することができないため、編集できる形式(本実施形態の場合はSVG形式)に変換している。続いて、帳票生成部304は、データアクセス部303を介して生成されたSVG形式の帳票ページを帳票ページファイルデータベース308に格納する。そして、生成されたSVG形式の帳票ページを特定できる情報を帳票データデータベース305の中の該当レコードに追加する。
S511において、帳票生成サーバ101は、S507でリクエストされた対象帳票の編集可能な帳票閲覧画面のURLをクライアント装置102に返す。返したURLの中に、S510で生成したSVG形式の帳票ページを特定できる情報が含まれている。本実施形態の場合は、返したURLの中に帳票ページと関連する帳票データの帳票名が含まれている。
S512において、クライアント装置102は、S511で返却されたURLを使用して編集可能な帳票閲覧画面にリダイレクトするリクエストを帳票生成サーバ101に送信する。
S513において、帳票生成サーバ101のページ生成部302は、S512のリダイレクトリクエストの内容に応じて編集可能な帳票閲覧画面を生成する。編集可能な帳票閲覧画面は、リクエスト対象帳票の帳票ページファイル、帳票ページファイルを閲覧・編集・印刷操作を制御するためのJavaScript(登録商標)プログラム(制御プログラム)、及び編集操作時に必要な計算情報ファイルに基づいて生成される。すなわち、帳票閲覧画面を表示させるためのプログラムは、帳票ページファイルとJavaScript(登録商標)プログラムと計算情報ファイルとを含む。ページ生成部302は、S512のリダイレクトリクエスト中の帳票名情報を利用して、データアクセス部303を介してリクエスト対象帳票に関連する帳票ページファイル及び計算情報ファイルをデータベース308、309から取得する。
S514において、帳票生成サーバ101は、S513で生成した編集可能な帳票閲覧画面を表示させるためのデータ(プログラム)を、クライアント装置102に返す(送信する)。
S515において、クライアント装置102は帳票生成サーバ101からのレスポンスを受け取り(受信し)、ウェブブラウザに図10に示すような編集可能な帳票閲覧画面を表示する。以上が、図5を用いた編集可能な帳票閲覧画面を生成する処理のシーケンスの説明である。
図10は、本実施形態における編集可能な帳票閲覧画面を示す図である。
編集可能な帳票閲覧画面1001は、SVG形式の帳票ページを表示する領域1002を含む。領域1002の中で横方向のフリック操作を行うと前後の帳票ページへの切り替えができる。ボタン1003は、現在表示されている帳票ページを印刷するためのボタンである。領域1004及び1005は、レコードフィールド「金額」のレコードを描画した結果である。領域1004および1005に描画される値、および各領域の描画位置を示す座標情報は、計算情報ファイル901の行912及び913にそれぞれ記述されている。同様に、領域1006は、集計フィールドの「合計」のレコードを描画した結果である。領域1006に描画される値および座標情報は、計算情報ファイル901の行914に記述されている。また、ユーザが領域1002内でクリック操作を行うと、編集可能な帳票閲覧画面の編集プログラム(制御プログラム)が動作し、図11に示すような編集処理を行うことができる。
図11は、本実施形態における編集可能な帳票閲覧画面上で行う編集処理を説明するフローチャートである。
S1101において、ユーザは編集可能な帳票閲覧画面1001の領域1002内でクリック操作を行う。S1102において、編集可能な帳票閲覧画面の編集プログラム(制御プログラム)は、S1101でクリックされた位置が編集可能なフィールドの領域内であるか否かを判断する。以下、編集可能な帳票閲覧画面の編集プログラムを「編集プログラム」と略記する。具体的には、ユーザがクリックした位置の座標が計算情報ファイル901の各データの領域(行905、906、912、913、および914に「position」属性として記述されている)内に含まれているか否かを判断する。また、必須ではないが、集計フィールド(例えば集計フィールド「合計」)を編集不可にする場合は、集計フィールドの各データの領域(例えば行914が示す領域)を上記対象領域から除外する。本実施形態では、集計フィールドは編集不可とする。
S1102において、編集プログラムは、ユーザがクリックした位置が編集可能なフィールドの領域内であると判断した場合、編集ダイアログ1201(編集画面)を表示する(S1103)。一方、S1102において、編集プログラムが、ユーザがクリックした位置が編集可能なフィールドの領域内ではないと判断した場合は何も行わず編集処理を終了する。本実施形態では、編集可能な帳票閲覧画面1001において、領域1004、1005、1007または1008のいずれかがユーザによりクリックされた場合に、ユーザがクリックした位置が編集可能なフィールドの領域内であると判断する。例えば、ユーザが領域1004内をクリックした場合、クリック位置は計算情報ファイル901内の「金額」フィールド917の1番目のレコード(行912)に該当する。また、今後の処理のために計算情報ファイル内のクリック位置に該当するフィールド情報およびデータ情報は記憶される。
S1104において、ユーザは、編集ダイアログ1201のテキストボックス1202内に新しい値を入力し、「確認」ボタン1203をクリックする。
S1105において、編集プログラムは、領域1002内に表示されたSVGファイルの中からS1101のクリック位置に該当するテキスト要素(<text>タグ)を特定する。そして、特定されたテキスト要素内の値をS1104でユーザが入力した値に置き換える。また、計算情報ファイル901内の対応するデータの値もユーザが入力した値に置き換える。図12の例では、図10の領域1004の値“50000”が、“70000”に置き換えられた場合を示している。
S1106において、編集プログラムは、S1102で記憶したクリック位置に該当するフィールドに関連するフィールドを特定する。例えば、ユーザが領域1004内をクリックした場合は、クリック位置が計算情報ファイル901内の「金額」フィールド917のレコードを示す部分912に該当する。そして、「金額」フィールド917は「合計」フィールドと関連していることが行908から特定できる。
S1107において、S1106で関連フィールドが特定された場合は、S1108の処理に進む。関連フィールドが特定されなかった場合は、編集処理を終了する。
S1108において、S1106で特定された関連フィールドのデータの値を計算する。具体的には、計算情報ファイル901の中に記述されているフィールドの「relative field」レコードの情報を利用して関連フィールドのデータの値を計算する。例えば、フィールド「合計」916は、「relative field」910に記載されているように、フィールド「金額」917と関連している。そして、フィールド「合計」916のデータの値は、処理内容(フィールド間の計算関係)を表す「function」関数911に従い、フィールド「金額」917の各データの値の合計値(「sum」)になる。
S1109において、S1105と同様に編集プログラムは、領域1002内に表示されたSVGファイルの中から関連フィールドのデータに該当するテキスト要素を特定し、その値を更新する。図12(A)は、ユーザが領域1004内をクリックし、表示された編集ダイアログ1201に「70000」を入力した場合の編集可能な帳票閲覧画面1001の状態を示している。また、図12(B)は、図12(A)の状態から「確認」ボタン1203が押され、値が更新された後の編集可能な帳票閲覧画面1001の状態を示している。当該編集された値「70000」に基づいて、フィールド「合計」916のデータの値が計算され、領域1006の値は計算後の合計値「170000」で更新される。
図13は、本実施形態において、編集可能な帳票閲覧画面の印刷ボタンが押下された際の印刷処理のシーケンスを示す図である。
S1301において、編集可能な帳票閲覧画面1001の印刷ボタン1003がユーザにより押下される。S1302において、クライアント装置102は、帳票生成サーバ101に印刷ファイルを生成するリクエストを送信する。印刷ファイルを生成するリクエストの中には、クライアント装置102側で現在保持しているSVG形式の帳票ページファイルが含まれる。
S1303において、帳票生成サーバ101の帳票印刷部310は、データアクセス部303を介して帳票ページファイルデータベース308内の帳票ページファイルをS1302のリクエストの中に含まれる帳票ページファイルを使用して更新する。S1304において、帳票印刷部310はS1302のリクエストに含まれるSVG形式の帳票ページファイルをPDF形式(印刷用データ)に変換する。
S1305において、帳票印刷部310はS1304で生成されたPDFファイルにアクセスするためのURLをクライアント装置に返す。S1306において、クライアント装置102は、S1305で返されたPDFファイルにアクセスするためのURLにリダイレクトする。
S1307において、帳票生成サーバ101のアクセス制御部301は、データアクセス部303を介して、S1304で生成されたPDFファイルをクライアント装置に返す。S1308において、クライアント装置102はS1307で返されたPDFファイルを受信し、PDFファイルをウェブブラウザで表示できるソフトウェア(Adobe(登録商標) PDF Readerなど)を使用してPDFファイルを表示する。
S1309において、クライアント装置102はPDFファイルを印刷できるソフトウェアを使用してPDFファイルを印刷する。
以上のように、本実施形態によれば、オーバレイ出力された帳票文書データ内に計算上の関連が存在するデータがある場合、帳票文書データとともに計算上の関連を示す関連情報を出力する。これにより、閲覧画面において帳票文書データの編集を行うとそのデータに関連するデータも自動的にリアルタイム更新される情報処理システムを提供することができる。
(第2実施形態)
次に、本発明の第2実施形態に係る帳票文書データの閲覧・編集が可能な情報処理システムについて説明する。第1実施形態では、編集可能な帳票閲覧画面での編集操作は、帳票ページのレイアウトに変更がない場合について説明した。帳票ページのレイアウトとは、各フォームファイルで定義されている各図形のオーバレイ出力処理後の配置のことである。
例えば、図14(A)の帳票ページの場合は、各商品の金額に税金が含まれているかどうかを示すためのフィールド「税金」がある。また、「税込」の商品の合計値と「税抜」の商品の合計値を別々に計算するためのフィールド「小計」がある。この例の場合は、ユーザが1402領域内の値を「税込」から「税抜」に変更すると、小計値の計算ルールに従い図14(B)のように表示することが望ましい。
このような場合に、本実施形態では、帳票閲覧画面における編集操作がレイアウトに影響するか否かを判定し、レイアウトに影響する編集操作のみに対して、帳票生成サーバ101に編集可能な帳票閲覧画面を生成するリクエストを送信する。
本実施形態によれば、帳票ページのレイアウトに影響するフィールドの編集において帳票文書データ内に計算上の関連が存在するデータであっても、自動的にリアルタイム性が高い帳票文書データの閲覧・編集を可能にする。本実施形態に係る編集処理の詳細は、図16を用いて後述する。
図15は、本実施形態における計算情報ファイルの構成例を示す図である。図9に示した第1実施形態における計算情報ファイルと同様の構成については説明を省略する。
図14に示した例における計算情報ファイルでは、レコードフィールド「税金」に対して「ブレイク」の設定がされている。ブレイクとは、レコードフィールドのデータの値が変更された場合に関連付けられた処理を行うことを指す。図14に示した例の場合は、レコードフィールド「税金」のデータが「税込」から「税抜」に変わるとブレイクが発生し、「税込」の集計(小計)を行う。
図8のS805において、帳票生成サーバ101は、計算情報ファイルを作成する際に、各編集可能なフィールドに「ブレイク」の設定があるか否かを示す「break」レコード行1502及び1503のレコードを計算情報ファイルに格納する。帳票生成サーバ101の帳票生成部304は、S804において「break」レコードを作成するための情報をフォーム情報ファイルから取得する。
図16は、本実施形態における編集処理を説明するためのフローチャートである。図11に示した第1実施形態における編集処理と同一の処理には同一の符号を付し、説明を省略する。
S1601において、編集プログラムは、ユーザが編集ダイアログ1201のテキストボックス1202で入力した値が帳票ページのレイアウトに影響するか否かを判断する。本実施形態では、レイアウトに影響するか否かは計算情報ファイル1501の中の該当するフィールドの「break」レコードが「true」であるか否かにより判断する。図14の例では、領域1402内の値が「税込」から「税抜」に変更された場合には、領域1402に該当するフィールドの「break」レコード1503を取得し、その値が「true」であるためS1601の判断が真になる。帳票ページのレイアウトに影響する要因はブレイクの設定のみではないので、S1601の判断基準は上記に限らない。
S1601において、編集プログラムが編集ダイアログ1201に入力した値が帳票ページのレイアウトに影響しないと判断した場合にはS1602に進み、図11のS1105以降の処理を行う。S1601において、編集プログラムが編集ダイアログ1201に入力した値が帳票ページのレイアウトに影響すると判断した場合には、S1603の処理を行う。
S1603において、編集プログラムは入力した値に従いクライアント装置102側で保持している計算情報ファイル1501を更新する。S1604において、編集プログラムは、帳票生成サーバ101に編集可能な帳票閲覧画面を生成するリクエストを送信する。リクエストの中には、S1603で更新された計算情報ファイルが含まれている。これ以降の処理は不図示であるが、帳票生成サーバ101は、S1604のリクエストを受信し、リクエストの中の計算情報ファイルと計算情報ファイルデータベース309の中に格納されている計算情報ファイルとを比較する。そして、比較の結果を利用して、フィールドデータファイルデータベース307に格納されている該当帳票のフィールドデータを更新する。続いて、帳票生成サーバ101は、図5のS508以降の処理を行う。
このように、本実施形態によれば、第1実施形態と同様の効果を奏する。さらに、本実施形態によれば、帳票ページのレイアウトに変更がある場合であっても、自動的にリアルタイム性が高い帳票文書データの閲覧・編集が可能な情報処理システムを提供することができる。
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そしてそのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
101 帳票生成サーバ
102 クライアント装置
302 ページ生成部
304 帳票生成部
1001 帳票閲覧画面

Claims (10)

  1. フォーム情報とフィールドデータとをオーバレイ出力するための描画命令を実行することにより印刷データを生成する第1生成手段と、
    前記第1生成手段で前記描画命令を実行することによって前記印刷データを生成する際に前記描画命令に含まれる複数のフィールドの情報を取得することによって前記複数のフィールド間の計算関係を示す計算情報を生成する第2生成手段と、
    仮想プリンタドライバを用いて前記第1生成手段で生成された印刷データを変換して、PDF形式の帳票ページを生成する第3生成手段と、
    前記PDF形式の帳票ページを、SVG形式の帳票ページに変換する変換手段と、
    前記変換手段で変換された前記SVG形式の帳票ページと、前記第2生成手段で生成された計算情報とに基づいて、前記帳票ページの閲覧および編集を行うための閲覧画面を表示させるためのデータを生成する閲覧画面生成手段と、
    前記閲覧画面生成手段で生成された前記閲覧画面を表示させるためのデータを、クライアント装置に送信する送信手段と、を備えることを特徴とする情報処理装置。
  2. 記クライアント装置では、
    前記情報処理装置から送信された前記閲覧画面を表示させるためのデータを受信し、
    前記受信したデータに基づいて、前記閲覧画面を表示し、
    前記閲覧画面に表示されたデータが編集された場合に、前記計算情報に基づいて前記編集されたデータと計算関係のあるフィールドのデータを計算し、前記編集されたデータと前記計算されたデータとに基づいて前記閲覧画面を更新することを特徴とする請求項1に記載の情報処理装置。
  3. 前記閲覧画面生成手段で生成される前記閲覧画面を表示させるためのデータは、前記SVG形式の帳票ページと、前記計算情報と、閲覧および編集を制御するための制御プログラムとを含むことを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記クライアント装置は、編集操作が行われた前記閲覧画面の領域が編集可能な領域かどうかを判断し、前記編集可能な領域であると判断した場合に前記編集を行うための編集画面を表示し、
    前記表示された編集画面で前記データが編集された場合に、前記計算情報に基づいて前記編集されたデータと計算関係のあるフィールドのデータを計算して、前記編集されたデータと前記計算されたデータとに基づいて前記閲覧画面を更新することを特徴とする請求項に記載の情報処理装置。
  5. 前記計算情報は、前記帳票ページ内のデータの各フィールドに関連のある他のフィールドがあるか否かを示す情報を有しており、
    前記クライアント装置では、前記編集画面でデータが編集された場合に、前記編集されたデータと関連のあるフィールドを前記計算情報により特定することを特徴とする請求項に記載の情報処理装置。
  6. 前記計算情報は、前記帳票ページ内のデータの各フィールドに関連のある他のフィールドがあるか否かを示す情報とともに、前記関連のある他のフィールドに対する処理内容を有しており、
    前記クライアント装置では、前記編集画面でデータが編集された場合に、前記編集されたデータと関連のあるフィールドを前記計算情報により特定して、当該特定されたフィールドを前記処理内容に基づき更新することを特徴とする請求項に記載の情報処理装置。
  7. 前記クライアント装置は、更新された前記閲覧画面を印刷する場合に、前記情報処理装置に前記更新された閲覧画面のデータを送信し、
    前記情報処理装置は、さらに、前記更新された閲覧画面のデータをもとに前記情報処理装置の保持している前記帳票ページのデータを更新して、印刷用データを作成することを特徴とする請求項に記載の情報処理装置。
  8. 前記クライアント装置は、前記編集されたデータが前記帳票ページのレイアウトに影響するかを判断して、前記編集されたデータが前記帳票ページのレイアウトに影響すると判断した場合に、前記情報処理装置に前記編集されたデータを送信し、
    前記情報処理装置は、
    前記編集されたデータに基づいて帳票ページを新たに作成して、前記新たに作成された帳票ページの閲覧画面を前記クライアント装置に送信し、
    前記クライアント装置は、前記新たに作成された閲覧画面を表示することを特徴とする請求項に記載の情報処理装置。
  9. コンピュータを、請求項1乃至のいずれか1項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
  10. 情報処理装置の第1生成手段が、フォーム情報とフィールドデータとをオーバレイ出力するための描画命令を実行することにより印刷データを生成する第1生成工程と、
    前記情報処理装置の第2生成手段が、前記第1生成工程で前記描画命令を実行することにより前記印刷データを生成する際に前記描画命令に含まれる複数のフィールドの情報を取得することによって前記複数のフィールド間の計算関係を示す計算情報を生成する第2生成工程と、
    前記情報処理装置の第3生成手段が、仮想プリンタドライバを用いて前記第1生成工程で生成された印刷データを変換して、PDF形式の帳票ページを生成する第3生成工程と、
    前記情報処理装置の変換手段が、前記PDF形式の帳票ページを、SVG形式の帳票ページに変換する変換工程と、
    前記SVG形式の帳票ページと、前記第2生成工程で生成された計算情報とに基づいて、前記帳票ページの閲覧および編集を行うための閲覧画面を表示させるためのデータを生成する閲覧画面生成工程と、
    前記閲覧画面生成工程で生成された前記閲覧画面を表示させるためのデータを、クライアント装置に送信する送信工程と、
    を備えることを特徴とする、情報処理装置の制御方法。
JP2014172724A 2014-08-27 2014-08-27 情報処理装置、制御方法、およびコンピュータプログラム Active JP6529229B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014172724A JP6529229B2 (ja) 2014-08-27 2014-08-27 情報処理装置、制御方法、およびコンピュータプログラム
US14/822,027 US10353998B2 (en) 2014-08-27 2015-08-10 Information processing apparatus with real time update related to data edited while form document data is browsed, control method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014172724A JP6529229B2 (ja) 2014-08-27 2014-08-27 情報処理装置、制御方法、およびコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2016048428A JP2016048428A (ja) 2016-04-07
JP2016048428A5 JP2016048428A5 (ja) 2017-10-05
JP6529229B2 true JP6529229B2 (ja) 2019-06-12

Family

ID=55402689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014172724A Active JP6529229B2 (ja) 2014-08-27 2014-08-27 情報処理装置、制御方法、およびコンピュータプログラム

Country Status (2)

Country Link
US (1) US10353998B2 (ja)
JP (1) JP6529229B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6525641B2 (ja) * 2015-03-02 2019-06-05 キヤノン株式会社 情報処理システム、制御方法、およびコンピュータプログラム
CN106021213A (zh) * 2016-05-18 2016-10-12 广东源恒软件科技有限公司 一种企业税务审核点模板的生成系统及方法
JP2018063501A (ja) * 2016-10-11 2018-04-19 キヤノン株式会社 情報処理装置及び文書表示方法、文書表示システムおよびプログラム
CN108182064A (zh) * 2017-12-01 2018-06-19 中国联合网络通信集团有限公司 动态表单实现方法及服务器

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6998567B2 (en) * 2003-01-31 2006-02-14 Trimedyne, Inc. Generation and application of efficient solid-state laser pulse trains
CN100435398C (zh) * 2003-11-04 2008-11-19 丰田自动车株式会社 燃料电池系统以及移动体
JP2005190432A (ja) * 2003-12-26 2005-07-14 Canon Software Inc 帳票出力確認サーバおよび帳票出力確認方法およびプログラムおよび記録媒体
US7441062B2 (en) * 2004-04-27 2008-10-21 Apple Inc. Connector interface system for enabling data communication with a multi-communication device
US20060167905A1 (en) * 2005-01-27 2006-07-27 Peiya Liu Method and system for template data validation based on logical constraint specifications
US7673228B2 (en) * 2005-03-30 2010-03-02 Microsoft Corporation Data-driven actions for network forms
US20070150163A1 (en) * 2005-12-28 2007-06-28 Austin David J Web-based method of rendering indecipherable selected parts of a document and creating a searchable database from the text
JP2007188448A (ja) * 2006-01-16 2007-07-26 Sharp Corp データ変換装置、データ変換装置の制御方法、データ変換装置の制御プログラム、データ変換装置の制御プログラムを記録した記録媒体、出力処理装置、出力処理装置の制御方法、出力処理装置の制御プログラム、出力処理装置の制御プログラムを記録した記録媒体、およびデータ転送システム
US7617219B2 (en) * 2006-06-22 2009-11-10 International Business Machines Corporation Enhanced handling of repeated information in a web form
GB0623912D0 (en) * 2006-11-30 2007-01-10 Bayne Duncan J Improved electronic form software and brower programming methods
JP5031344B2 (ja) * 2006-12-06 2012-09-19 キヤノン株式会社 情報処理装置、情報処理方法
US7986419B2 (en) * 2007-09-12 2011-07-26 Xerox Corporation Performance optimization method for network printers
US9563617B2 (en) * 2013-09-23 2017-02-07 Oracle International Corporation Custom validation of values for fields of submitted forms
US20150212981A1 (en) * 2014-01-28 2015-07-30 Microsoft Corporation Providing print view of document for editing in web-based application

Also Published As

Publication number Publication date
JP2016048428A (ja) 2016-04-07
US20160062976A1 (en) 2016-03-03
US10353998B2 (en) 2019-07-16

Similar Documents

Publication Publication Date Title
JP6433339B2 (ja) 情報処理システム、サーバ装置、制御方法およびプログラム
JP5127232B2 (ja) データ処理装置、データ処理方法、及びコンピュータプログラム
JP6508978B2 (ja) 情報処理システム、サーバ、制御方法、及びコンピュータプログラム
JP5692968B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP5629435B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US10481776B2 (en) Server apparatus, client apparatus, information processing method, and storage medium
JP2008242661A (ja) 印刷制御装置及び方法
JP6525641B2 (ja) 情報処理システム、制御方法、およびコンピュータプログラム
JP6529229B2 (ja) 情報処理装置、制御方法、およびコンピュータプログラム
JP2017097686A (ja) 情報処理装置、その制御方法及びプログラム
JP5991365B2 (ja) 帳票システム、情報処理装置と、その処理方法及びプログラム
JP2017027319A (ja) 帳票文書データの表示・編集・保存方法、装置、処理プログラム
JP5955245B2 (ja) 画像処理装置
JP2020106926A (ja) 情報処理装置、情報処理システムおよび情報処理方法
JP5106655B2 (ja) 印刷制御装置及び方法
JP2016170661A (ja) 情報処理システム、サーバ装置、情報処理装置、制御方法、及びプログラム
JP2019106013A (ja) 情報処理システム、制御方法とそのプログラム
JP7073070B2 (ja) クライアント装置、方法、その処理プログラムおよびプログラムを提供するサーバ
JP2017126230A (ja) 帳票文書データの表示・編集方法、装置、処理プログラム
JP2017027320A (ja) 文書データの表示・編集・印刷方法、装置、処理プログラム
JP6602234B2 (ja) データ生成装置、コンピュータプログラム、データ生成方法
JP2018200577A (ja) 情報処理システム、情報処理システムの制御方法、情報処理装置、情報処理装置の制御方法、およびプログラム
JP2018200575A (ja) 情報処理システム、情報処理システムの制御方法、情報処理装置、情報処理装置の制御方法、およびプログラム
JP2015011581A (ja) 情報処理装置、情報処理方法、およびプログラム
JP2017126229A (ja) 帳票文書データの表示・編集・保存方法、装置、処理プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170825

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170825

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181112

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190514

R151 Written notification of patent or utility model registration

Ref document number: 6529229

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151