JP2021071887A - 印刷システム、印刷方法 - Google Patents

印刷システム、印刷方法 Download PDF

Info

Publication number
JP2021071887A
JP2021071887A JP2019197767A JP2019197767A JP2021071887A JP 2021071887 A JP2021071887 A JP 2021071887A JP 2019197767 A JP2019197767 A JP 2019197767A JP 2019197767 A JP2019197767 A JP 2019197767A JP 2021071887 A JP2021071887 A JP 2021071887A
Authority
JP
Japan
Prior art keywords
server
data
print
display
file
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.)
Pending
Application number
JP2019197767A
Other languages
English (en)
Inventor
内田 貴之
Takayuki Uchida
貴之 内田
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 JP2019197767A priority Critical patent/JP2021071887A/ja
Publication of JP2021071887A publication Critical patent/JP2021071887A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】 帳票文書の表示画面において印刷指示を受け付け可能とし、表示データの生成に用いた中間データを、印刷に用いることでリソース消費を抑制しつつ、帳票文書の印刷を行える仕組みを提供する。【解決手段】 前記帳票サーバは、情報処理装置から送信された帳票データの表示リクエストを契機として、帳票データの表示を引き起こすWebページを生成する。情報処理装置は、帳票サーバにより生成されたWebページを受信し、当該Webページに基づき前記表示オブジェクト含む画面を生成して表示する。また、帳票サーバは、表示オブジェクトが選択されたことに応じて引き起こされる印刷リクエストを受信したことに従って、前記データ表示リクエストを契機として生成された中間データであって、前記Webページに前記データを表示する目的で生成された中間データを用いて印刷データを生成し、外部装置に送信する。【選択図】 図8

Description

本発明は、データを印刷する印刷システム、及び印刷方法に関する。
昨今、ペーパーレス化による業務の効率化や省資源化を目的に、紙媒体の情報を文書データに置き換える企業が増加している。例えば、社内で運用されている業務帳票もその対象であり、特に基幹系システムが出力する帳票は大量のページ数を出力することが多く、運用コストが莫大なものになることから、帳票の電子化が積極的に行われている。
また、文書などの印刷を行うに際し、印刷プレビューを表示する技術が知られている(特許文献1)。
特開2002−63000号公報
上述したように、表示用のデータをネットワークから受信し、当該データをプレビューした後に、印刷することが考えられる。この場合、例えば、ユーザは、クライアント端末のWebブラウザからインターネットを介してクラウドサービスのWebページにアクセスし、そのWebページ上で電子化された帳票文書データを閲覧する。
ところで帳票文書全体を生成してからWebブラウザに表示すると、特にページ数の多い業務帳票では、帳票生成を行ってからWebページ上で閲覧できるまでユーザが待たされる可能性がある。そのため、文書全体が生成され送信されるのを待つのではなく、帳票文書を所定のページ単位毎に分割してPDFを生成し、各分割PDFを夫々Webブラウザ上での描画に適したSVG等に変換する。そして、変換完了したページから順に素早く受信してWebブラウザに表示することで端末での表示を高速化することが知られている。
これらの、帳票文書生成システムにおいて、クライアント端末のWebブラウザに表示した帳票文書の印刷を行いたいケースがある。例えば、販売員による保険営業において、タブレット端末に表示した保険契約申込画面を申込文書として印刷し、ユーザに印刷した申込書類を渡すことユースケースが考えられる。このとき、いつ、誰が、どのような文書を、何枚印刷したか、等といった印刷操作の履歴をログとして残すことが望まれる。従って、タブレット端末から直接プリンタに印刷するのではなく、基幹業務システム上やクラウド上に設置された印刷サーバを利用して印刷し、これらのログを一元管理することが求められる。
ここで、Webブラウザ上に表示している帳票文書を印刷サーバ経由で印刷するには、いずれかの手順で処理を行う必要があった。例えば、ユーザは顧客情報を管理するWebページに再度アクセスする。続けて、閲覧していた帳票と同一のデータを再度選択し、Web帳票閲覧用途でなく印刷用途を指定して帳票作成操作及び印刷操作を行うことで印刷サーバ経由での印刷を行う必要があった。このように従来は、帳票の表示機能と、帳票の印刷機能は独立した別の機能として提供されており、表示中の帳票文書を印刷するためには複雑なユーザ操作を行う必要があり、手間がかかるといった問題があった。また、同一の帳票文書を再度生成することとなるため、帳票生成サーバのマシンリソースを無駄に消費してしまうといった問題がある。また、別の方法として、クライアント端末上に表示したSVGファイルを印刷サーバ経由で印刷することも考えらえる。しかしながら、帳票文書を前述した印刷機能で印刷する場合と比較し描画の差異が発生したり、変換のためにマシンリソースを消費したりするといった問題がある。
本発明は上述の問題点の少なくとも1つを鑑みなされたものである。本発明は、帳票文書の表示画面において印刷指示を受け付け可能とし、表示データの生成に用いた中間データを、印刷に用いることでリソース消費を抑制しつつ、帳票文書の印刷を行える仕組みを提供することを目的とする。
上記の少なくとも1つの目的を達成するために、本発明の1つの側面としての印刷システムは、情報処理装置と、帳票サーバとを少なくとも含む印刷システムであって、前記帳票サーバは、前記情報処理装置から送信された帳票データの表示リクエストを契機として、前記表示リクエストに対応する帳票データの表示を引き起こすWebページを生成する第1の生成手段と、前記情報処理装置において前記Webページに基づき表示された画面を介して表示オブジェクトが選択されたことに応じて引き起こされる印刷リクエストを受信したことに従って、前記印刷リクエストに対応する印刷データを生成する第2の生成手段と、前記生成した印刷データを外部装置に送信する送信手段と、を有し、前記情報処理装置は、前記帳票サーバにより生成されたWebページを受信し、当該Webページに基づき前記帳票データと前記表示オブジェクトを含む画面を表示するよう制御する表示制御手段と、を有し、前記帳票サーバの前記第2の生成手段は、前記表示リクエストを契機として生成された中間データであって、前記帳票データを示す表示データの生成のために使用された中間データを用いて前記印刷データを生成することを特徴とする。
本発明の1つの側面によれば、帳票文書の表示画面において印刷指示を受け付け可能とし、表示データの生成に用いた中間データを、印刷に用いることでリソース消費を抑制しつつ、帳票文書の印刷を行えるようになる。従って、表示中の帳票文書の印刷処理におけるリソース消費を抑制しつつ、尚且つ、簡単な操作で印刷を行うことができる。
印刷システムの一例を示す図である。 印刷システムを構成する各装置のハードウェア構成の一例を示す図である。 印刷システムを構成する各装置のソフトウェア構成の一例を示す図である。 テンプレートデータにバリアブルデータをオーバレイするシーケンスの一例である。 データ変換処理のシーケンスの一例である。 インデックスファイルを説明する模式図である。 クライアント端末の制御の一例を示すフローチャートである。 帳票生成サーバにおける制御の一例を示すフローチャートである。 業務サーバがWebブラウザに対して提供する画面の一例である。 Webブラウザに対して表示される帳票画面の一例である。 第2の実施形態におけるインデックスファイルを説明する模式図である。 第2の実施形態におけるオーバレイ処理のシーケンスの一例である。 第2の実施形態における帳票生成サーバにおける制御の一例を示すフローチャートである。
以下、本発明を実施するための実施形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものではなく、また、実施の形態で説明されている特徴の組み合わせのすべてが発明の解決手段に必須のものとは限らない。
<第1の実施形態>
まず、図1を用いて、本発明に係る印刷システムの構成を説明する。本実施形態に係る印刷システムは、クライアント端末102、業務サーバ103、印刷装置108、印刷サーバ、帳票生成サーバ103、変換サーバ105、印刷サーバ106、ストレージサーバ107を含む。
クライアント端末102は、有線または無線LANを介してローカルネットワーク101に接続され、ローカルネットワーク101を介してインターネット100にアクセスし、104〜106のサーバにアクセスする。クライアント端末102は、情報処理装置の一例であり、例えばデスクトップパソコン、ノートパソコン、スマートフォンやタブレットPC等である。クライアント端末102は、WebページなどのWebコンテンツを閲覧するためのWebブラウザがインストールされている。
業務サーバ103は、顧客情報や業務情報を管理するサーバである。本実施例では業務サーバ103で業務情報を管理し、販売員が業務サーバ103の情報を用いて顧客に対して営業を行うユースケースを想定している。業務サーバ103はクライアント端末102からのリクエストに応じて業務情報の表示と、帳票データ生成指示を行なうための画面を提供する。
帳票生成サーバ104は、業務サーバ103から業務情報を受け取り、オーバレイ出力処理、並びに帳票閲覧プログラムの生成処理を実行する。以降単に帳票サーバとも呼ぶ。すなわち、帳票生成サーバ104はテキストデータであるフィールドデータファイルと所定のフォーム情報を含むフォーム情報ファイルとを重ね合わせて印刷用の製版データ(印刷用の描画ファイル)を生成する。そして、描画仮想プリンタに指示して上記生成された製版データをPDFフォーマットのファイルとして生成する。さらに、生成した帳票文書を閲覧できる帳票閲覧プログラムを生成する。本実施例の帳票閲覧プログラムとは、ネットワークを介して配信できるWebブラウザ上で動作するWebアプリケーションである。多くの場合、これらのWebアプリケーションは、Webページを表現するマッシュアップ言語(HTML)及びWebブラウザ上で動作するプログラミング言語(JavaScript(登録商標))により動作するアプリケーションである。Webブラウザ上で動作するWebアプリケーション以外、コンピュータシステム上で実行するアプリケーションでも良い。帳票生成サーバ104は、フォーム情報ファイルに業務情報を重ね合わせて帳票文書を生成し管理する。そして帳票生成サーバ104は、変換サーバ105に対して、生成した帳票文書をWeb帳票文書に変換するリクエストを行う。また、帳票生成サーバ104は、クライアント端末102から帳票文書の印刷リクエストを受け付けると、帳票文書を印刷するための印刷データを生成し、印刷サーバ106に送信する。
変換サーバ105は、帳票生成サーバ104から帳票文書の変換リクエストを受け付けて、Web帳票文書を生成する。Web帳票文書とは、Webページ上で扱うSVG等のフォーマットの帳票文書である。これらのSVGフォーマットのファイルは表示や編集に適しているため、Webブラウザ上での表示データとして使用される。
印刷サーバ106は、帳票生成サーバ104から帳票文書を印刷するための印刷データを受信して、印刷データと印刷設定を含む印刷ジョブを作成し印刷装置108に送信して印刷させる。また、印刷サーバ106は、印刷装置108から印刷ジョブの経過/結果情報の通知を待ち受ける。印刷装置108にて印刷出力が完了し、印刷装置108から印刷ジョブの結果情報の通知を受信すると、印刷サーバ106は印刷の証跡として履歴を記録する。印刷装置108は、印刷サーバ106から印刷ジョブを受信して印刷出力を行う。
ストレージサーバ107はファイル管理を行うサーバであり、クライアント端末102、帳票生成サーバ104、変換サーバ105、印刷サーバ106からのファイルアップロード/ダウンロードを受け付ける。ストレージサーバ107は、ファイルのライフサイクルを管理する機能を有し、保存後一定時間経過したファイルをストレージサーバ107が自動的に削除する。本実施例では、所定のファイルパスに保存したファイルは、保存後一日以上経過すると自動的に削除されるものとする。以降、ライフサイクル管理機能により自動的に削除される領域を「ライフサイクル管理領域」と記載する。
なお、本実施形態では、予め管理者の操作により、各サーバに次の情報が保存されているものとする。まず、業務サーバ103には業務情報データや顧客情報データが保存される。また、帳票生成サーバ104には顧客データに対応するフォーム情報ファイルが保存される。
なお、本実施形態では、サーバ104〜107を独立した1台のサーバとして例示しているがこれに限定されるものではない。例えば、サーバ104〜107が提供する各機能を1台のサーバ上で実現することもできる。すなわち、変換、生成、保存を1台のサーバで構成することもできる。また、サーバ104〜107が提供する各機能を複数台のサーバで分散させて実行することとも可能である。また、一部機能やすべての機能をクラウドプラットフォーム上で実現することもできる。この場合、例えば、ストレージサーバ107はクラウドストレージサービスなどを活用し、印刷サーバは、Google Cloud Print(登録商標)やその他クラウドプリントサービスを用いることができる。更に、変換サーバが提供する機能についてもファイル形式変換サービス等に置き換えることが可能である。
<ハードウェア構成>
続けて、各装置のハードウェア構成について説明する。図2は、クライアント端末102、業務サーバ103、帳票生成サーバ104、変換サーバ105、印刷サーバ106、ストレージサーバ107のハードウェア構成を示す図である。
図2において、201は内部バスで接続される各デバイス(後述のROM、RAM他)を直接或いは間接的に制御し、本発明を実現するためのプログラムを実行するCPUである。202はBIOSが格納してあるROMである。203はCPU201のワーク領域として利用されたり、本発明を実現するためのソフトウェアモジュールをロードするための一時記憶として利用されたりするRAM(直接記憶装置)である。204は基本ソフトウェアであるOSやソフトウェアモジュールが記憶されているHDD(ハードディスクドライブ)、もしくはSSD(ソリッドステートドライブ)などの間接記憶装置である。205は入力装置であり不図示のキーボードやポインティングデバイスなどである。206は出力装置でありディスプレイが接続される。207はネットワーク100に接続するためのI/Fである。
これらハードウェアでは、起動後CPU201によりBIOSが実行されOSがHDD204からRAM203に実行可能にロードされる。CPU201はOSの動作に従って後述する各種ソフトウェアモジュールをHDD204からRAM203に随時、実行可能にロードする。各種ソフトウェアモジュールは上記各デバイスの協調によりCPU201によって実行され動作する。また、I/F207はインターネット100、ローカルネットワーク101に接続されており、OSの動作に従ってCPU201により制御され、上述した通信手段による通信を実現している。
本実施形態では、説明のため、1つのCPU201が1つのメモリ(RAM203)を用いて後述するフローチャートに示す各処理を実行する場合を例示するが、他の様態であっても構わない。例えば複数のプロセッサ、RAM、ROM、ストレージを協働させて後述するフローチャートに示す各処理を実行することもできる。また、各サーバサイドの制御に関しては、複数のコンピュータリソースを用いて各処理を実現することもできる。
<ソフトウェア構成>
図3は、クライアント端末102、業務サーバ103、帳票生成サーバ104、変換サーバ105、印刷サーバ106およびストレージサーバ107のソフトウェア構成を示す図である。各サーバソフトウェア構成と、各サーバが扱う管理情報について説明する。
<業務サーバ103のソフトウェア構成と管理情報>
業務サーバ103は、Web画面I/F331、業務情報管理部332、ストレージ333から構成され、各ソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
Web画面I/F331は、業務サーバ103のユーザーインターフェースを提供するものであり、クライアント端末102のWebブラウザ321からの要求に応じて、業務情報を表示する画面を生成して返す。業務情報管理部332は、業務情報をストレージ333に記憶して管理する。これらの情報は、業務サーバ103の外部メモリではなく、インターネット100やローカルネットワーク101を介して通信可能に構成された別のサーバに記憶するように構成することもできる。
業務情報管理部332が管理している顧客情報の例を表1に示す。
Figure 2021071887
表1に示す顧客情報は、帳票を生成する際に使用するデータテーブルである。本実施例では、顧客を一意に識別するための顧客IDと、氏名、住所、生年月日、連絡先を含む情報を保持している。帳票を生成するために必要なデータは、一例であり、これに限定されるものではない。製品の在庫や納品情報、入出金情報等、様々なデータが業務情報として格納されうる。
続けて、業務情報管理部332が管理している帳票情報の一例について表2を用いて説明する。
Figure 2021071887
表2に示す帳票情報は、帳票を生成する際に使用する帳票テンプレート情報を保持するデータテーブルである。帳票情報を一意に識別するための帳票IDと、画面表示用の帳票名、帳票生成サーバ104で管理されているフォーム情報ファイルを特定する帳票テンプレートIDから成る。
業務サーバ103のWeb画面I/F331は、クライアント端末102のWebブラウザ321から帳票プレビュー指示を受け付ける。業務情報管理部332が該当の顧客情報と、帳票情報の帳票テンプレートIDを帳票生成サーバ104に送信し帳票生成のリクエストを行う。以下単に帳票作成リクエストとも呼ぶ。帳票テンプレートIDは帳票の種類を識別するための識別情報である。
<帳票生成サーバ104のソフトウェア構成と管理情報>
帳票生成サーバ104は、Webサーバ341、帳票情報管理部342、オーバレイ部343、印刷文書生成部344、ストレージ345から構成される。サーバ104の各機能を実現するソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
Webサーバ341は、帳票生成サーバ104の各種インターフェースを提供し、クライアント端末102のWebブラウザ321、業務サーバ103からのリクエストを受付け、応答を返す。帳票情報管理部342は、帳票テンプレート情報、および、帳票データ情報をストレージ345に格納して管理する。印刷文書生成部344は、印刷用帳票文書を生成する。
帳票情報管理部342が管理している帳票テンプレート情報の例を表3に示す。
Figure 2021071887
帳票テンプレート情報は、帳票生成サーバ104が管理するフォーム情報ファイルのデータテーブルである。本実施例では、フォーム情報ファイルを後述のストレージサーバ107にファイルとして保持している。帳票テンプレートIDはフォーム情報ファイルを一意に識別するIDであり、前述の業務サーバ103で管理される帳票情報を帳票テンプレートIDに対応する。
Webサーバ341は、業務サーバ103からの帳票生成リクエストを受け付けると、リクエストに含まれる顧客情報と、帳票テンプレートIDを基にオーバレイ部343にオーバレイ出力を指示する。オーバレイ部343は、該当の帳票テンプレート情報の帳票テンプレートURLにアクセスしてフォーム情報ファイルをストレージサーバ107から取得してフォーム情報を取り出し、該当の顧客情報と重ね合わせてオーバレイ出力しPDFファイルを生成する。
また、帳票生成サーバ104の帳票情報管理部342は、出力したPDFファイルを、ストレージサーバ107のライフサイクル管理領域にPDFファイルの情報を記述したオーバレイインデックスファイルとともに管理する。オーバレイインデックスファイルについては後述する。さらに、帳票生成サーバ104の帳票情報管理部342は、出力したPDFの情報を変換サーバ105に送信し、Web帳票文書への変換リクエストを行う。このようにPDFフォーマットのファイルは表示の中間データとして使用される。
帳票情報管理部342が管理しストレージ345に保持する帳票データ情報の例を表4に示す。
Figure 2021071887
帳票データ情報は、帳票生成サーバ104で管理される帳票文書データについてのデータテーブルである。オーバレイIDは、業務サーバ103から帳票生成リクエストを受け付けた際に帳票情報管理部342が発行するIDであって、オーバレイ処理を一意に識別可能なIDである。オーバレイインデックスファイルURLは、オーバレイ部が生成するPDFファイルに関する情報が記載されたインデックスファイルにアクセスするためのURLである。オーバレイ処理を開始した時点でオーバレイ部がオーバレイインデックスファイルを生成する。オーバレイインデックスファイルについては後述する。
変換IDは、帳票生成サーバ104が変換サーバ105に対して変換リクエストを発行した際に、変換サーバが発行し応答として返すIDであって、変換処理を一意に識別可能なIDである。変換インデックスファイルURLは、変換インデックスファイルを取得するためのURLである。変換インデックスファイルについては後述する。
帳票生成サーバ104は、変換サーバ105に対して変換IDを指定して変換情報取得リクエストを行う。応答として変換インデックスファイルURLが返された場合、帳票データ情報に保持する。
Webサーバ341は、クライアント端末102から帳票文書印刷リクエストを受け付けると、リクエストに含まれるオーバレイIDをもとに該当帳票データ情報からオーバレイインデックスファイルURLにアクセスする。そして、取得したオーバレイインデックスファイルに記述されているPDFファイルを取得して印刷用帳票文書を印刷するための印刷データを生成し、印刷サーバ106に送信する。
<変換サーバ105のソフトウェア構成と管理情報>
変換サーバ105は、Webサーバ351、変換情報管理部352、データ変換部353、ストレージ354から構成される。サーバ105の機能を提供するソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
Webサーバ351は、変換サーバ105の各種インターフェースを提供し、帳票生成サーバ104から帳票文書の変換リクエスト、および、変換情報取得リクエストを受け付け、応答を返す。変換情報管理部352は、変換データ情報をストレージ354に格納して管理する。
変換情報管理部352が管理しストレージ354に保持する変換情報の例を表5に示す。
Figure 2021071887
表5に示す変換情報は、変換情報管理部352で管理される変換処理についてのデータテーブルである。変換IDは、帳票生成サーバ104から変換リクエストを受け付けた際に、変換情報管理部352が発行するIDであって、変換処理を一意に識別可能なIDである。オーバレイインデックスファイルURLは、変換対象のファイルに関する情報が記載されたインデックスファイルにアクセスするためのURLであって、帳票生成サーバ104から変換リクエストを受け付けた際に受け取る。オーバレイインデックスファイルについては後述する。変換インデックスファイルURLは、変換インデックスファイルにアクセスするためのURLである。変換処理を開始した時点でデータ変換部353が変換インデックスファイルを生成する。変換インデックスファイルについては後述する。
データ変換部353は、オーバレイインデックスファイルを定期的に取得する。そして、オーバレイインデックスファイルに記述されている変換対象のデータを取得して変換を行い、その結果を変換インデックスファイルに記述する。また、変換サーバ105は、帳票生成サーバ104から変換IDを指定した変換情報取得リクエストを受け付けると、変換情報管理部352が該当の変換情報を抽出して返す。
<印刷サーバ106のソフトウェア構成>
印刷サーバ106はWebサーバ361、印刷ジョブ管理部362、プリンタ管理部363、印刷履歴管理部364、ストレージ365から構成される。サーバ106の各機能を提供するソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
Webサーバ361は印刷サーバ106の各種インターフェースを提供する。印刷ジョブ管理部362は、印刷ジョブの進捗を管理する。プリンタ管理部363は登録されたプリンタを管理する。印刷履歴管理部364は、文書の印刷履歴の情報を管理する。ストレージ365は印刷サーバ106が受信したファイルを格納する。印刷サーバ106は、帳票生成サーバ104から文書を含む印刷データを受信すると印刷ジョブを作成し、印刷ジョブを印刷装置108に送信する。例えば、サーバ104から受信する印刷データはファイルと部数などの印刷設定を含むものとするが、これに限定されるものではない。単にPDFフォーマットの帳票文書のみを印刷データとして受信し、当該帳票文書に基づき、印刷装置が処理できる形式の印刷ジョブを生成するよう構成することもできる。
<ストレージサーバ107のソフトウェア構成と管理情報>
ストレージサーバ107はWebサーバ371、ファイル情報管理部372、ストレージ373から構成され、各ソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
Webサーバ371はストレージサーバ107の各種インターフェースを提供する。ファイル情報管理部372は、ファイル情報を管理し、Webサーバ371で受け付けたリクエストに応じてファイルの入出力を行う。ストレージ373はファイル情報やストレージサーバ107が受信したファイルを格納する。
ファイル情報管理部372が管理するファイル情報の例を表6に示す。
Figure 2021071887
ファイル情報は、ファイル情報管理部372で管理されるストレージサーバ107に保存するファイルの情報である。データURLはストレージサーバ107に保存するファイルを一意に識別するURLである。ファイルパスはストレージ上のファイルパスでありファイルの格納場所を示す。データURLに対するリクエストをWebサーバ371で受け付け、ファイル情報管理部372が該当するファイル情報を更新し、ストレージ373のファイル操作を行う。たとえば、ストレージサーバ107に対してファイル操作を要求するクライアントは、データURLに対してHTTP GETメソッドをリクエストすることで対応するファイルをウンロード可能である。また、データURLに対してHTTP PUTメソッドにファイル添付してリクエストすることでファイルをアップロードして保存可能である。さらに、データURLに対してHTTP DELETEメソッドをリクエストすることで対応するファイルを削除可能である。
<インデックスファイル>
次に、帳票生成サーバ104のオーバレイ実行時、変換サーバ105の変換実行時にそれぞれ生成し、逐次更新を行うインデックスファイルについて説明する。当該インデックスファイルはファイルの特定に用いられる。
図6は、帳票生成サーバ104と、変換サーバ105が夫々、オーバレイ出力処理、データ変換処理を実行する際に生成、更新を行うインデックスファイルの例を時系列に示したものである。帳票生成サーバ104、及び、変換サーバ105はまず、処理が開始された時点で、ストレージサーバ107のライフサイクル管理領域にインデックスファイルを生成する(600)。本実施例では、インデックスファイルはJSONファイル形式を採用し、「dataList」をキーとする処理結果のデータURLのリストと、「end」をキーとする処理完了フラグから成る。
ここで本実施例では、オーバレイ出力結果をPDFファイルとし、ファイル出力単位は1ページ毎とする。例えば、3ページの帳票に対して3つのPDFファイルを出力する。このように、PDFを1ページ毎に分割すると、1ページ目のSVG変換を早めることができる。従って、1ページ目の表示データの準備完了を早め、端末での表示を高速化することができる。ただし、ファイル出力単位は1ページ毎とする必要はなく、複数ページ固定、全体ページ数から計算した値等、オーバレイ部343で制御可能であればこれに限らない。また、変換サーバ105による変換処理もオーバレイ出力結果のPDFファイル単位で変換を行う。いずれの分割単位を採用する場合であっても、クライアントサイドでの表示を早めることができるよう1ファイルが所定ページ数以下となるように分割される。
帳票生成サーバ104、変換サーバ105は夫々の処理開始時に、初期状態のインデックスファイル600を生成する。この時、ファイルは生成されていないため、「dataList」は要素が空であり、処理結果を示す「end」の値はfalseである。この後、帳票生成サーバ104、変換サーバ105は夫々、順次処理を実行し、処理結果のファイルをストレージサーバ107のライフサイクル管理領域にアップロードし、そのデータURLを「dataList」に追加する。610は、1ファイル目がアップロードされた状態を示す。620は、2ファイル目がアップロードされた状態を示す。さらに、帳票生成サーバ104、変換サーバ105は夫々、最後のページである3ファイル目の処理結果のファイルをアップロードした時点で、インデックスファイルを630の状態に更新する。630は、「dataList」に3ファイル目に対応するデータURLが追加されているとともに、処理完了フラグ「end」がtrueに更新されている。
変換サーバ105は、オーバレイインデックスファイルをストレージサーバ107から取得して参照する。サーバ105は、当該参照情報に基づき、帳票生成サーバ104のオーバレイ出力の進捗を確認し、オーバレイ出力が完了しているPDFファイルから変換処理を開始することができる。また、クライアント端末102は、変換インデックスファイルをストレージサーバ107から取得して参照することで、変換サーバ105の変換処理の進捗を知ることができ、変換が完了しているWeb帳票文書をダウンロードして表示することができる。以降、本実施の形態における各処理のフローについて説明する。
<オーバレイ処理フロー>
図4は、本実施の形態に係る帳票プレビューリクエストに起因する帳票の生成処理、変換処理を説明するフローチャートである。本フローはユーザがWebブラウザ321に表示した画面において帳票プレビュー要求操作を実行することによって開始される。具体的には、クライアント端末102のWebブラウザ321が業務サーバ103に帳票プレビューリクエストを発行すると、帳票生成サーバ104がオーバレイ出力処理を開始し、変換サーバ105へ変換リクエストを行うまでのフローを示している。
ユーザによりWebブラウザ321に表示された業務画面900の帳票プレビューボタン430が押下されると、Webブラウザ321は、帳票プレビューリクエストを業務サーバ103に送信する(S4.1.1)。当該帳票プレビューリクエストには、顧客IDと920で選択されている帳票情報の帳票IDが含まれる。
図9は、クライアント端末102のWebブラウザ321から、業務サーバ103にアクセスして業務データを表示した場合の業務画面900の例である。業務画面900には、業務サーバ103が保持する顧客情報910と帳票情報920が表示されている。また、920は、帳票情報として登録されている帳票情報のうちのひとつを選択可能な帳票選択ドロップダウンリストである。930は、帳票プレビュー要求操作を行う帳票プレビューボタン930である。ボタンやドロップダウンリストは、ユーザ操作を受け付ける表示オブジェクトの一例である。
S4.1.2において、業務サーバ103の業務情報管理部332は、S4.1.1に含まれる顧客ID、帳票IDに該当する顧客情報、帳票テンプレートIDを指定して帳票生成サーバ104に帳票生成リクエストを送信する。
帳票生成サーバ104は、帳票生成リクエストを受信すると、帳票情報管理部342がオーバレイIDを発行して帳票データ情報に登録する。さらに、リクエストに対する応答としてオーバレイIDを返す(S4.1.3)。
S4.1.4において、業務サーバ103は、クライアント端末102のWebブラウザ321に対してオーバレイIDを返す。
また、帳票生成サーバ104の帳票情報管理部342は、S4.1.3と並行して、リクエストに含まれる帳票テンプレートIDを基に帳票テンプレート情報から帳票テンプレートURLと顧客情報を取得する。続けて、取得したURLと顧客情報を用いて、オーバレイ部343にオーバレイ出力指示を行う。
オーバレイ部343は、オーバレイ出力指示を受けると、オーバレイインデックスファイル600を生成し、ストレージサーバ107のライフサイクル管理領域にアップロードする(S4.2.1)。
S4.2.2において、オーバレイ部343は、S4.2.1でアップロードしたオーバレイインデックスファイル600のデータURLを含む変換リクエストを変換サーバ105に送信する。
S4.2.3において、オーバレイ部343は、帳票テンプレートURLにアクセスしてフォーム情報ファイルを取得し、顧客情報と重ね合わせてオーバレイ処理を開始する。S4.2.4.1において、オーバレイ部343は、オーバレイ出力結果としてPDFファイル(PDF01)を出力する。
S4.2.4.2において、オーバレイ部343は、前記生成したPDFファイル(PDF01)をストレージサーバ107のライフサイクル管理領域にアップロードする。
次に、S4.2.4.3において、オーバレイ部343は、前記アップロードしたPDFファイル(PDF01)のデータURLを「dataList」に追記したオーバレイインデックスファイル610を、S4.2.1と同じデータURLにアップロードする。
続いてオーバレイ部343は、次のオーバレイ処理S4.2.5.1の出力結果PDF(PDF02)をストレージサーバ107のライフサイクル管理領域にアップロードする(S4.2.5.2)。さらに、前記アップロードしたPDFファイル(PDF02)のデータURLを「dataList」に追記したオーバレイインデックスファイル620をアップロードする(S4.2.5.3)。
S4.2.6.1は、最後のページ単位のオーバレイ処理である。S4.2.6.1において、オーバレイ部343は、オーバレイ出力結果としてPDFファイル(PDF03)を出力する。
S4.2.6.2において、オーバレイ部343は、前記生成したPDFファイル(PDF03)をストレージサーバ107のライフサイクル管理領域にアップロードする。
さらに、S4.2.6.3において、オーバレイ部343は、「dataList」に前記アップロードしたPDFファイル(PDF03)のデータURLを追加する。さらに、オーバレイ部343は、処理完了フラグ「end」を、完了を表す値であるtrueに更新する。そして、S4.2.6.3において、そのオーバレイインデックスファイル610をストレージサーバ107のライフサイクル管理領域にアップロードする。
オーバレイ出力単位が多い場合は、S4.2.5.1〜S4.2.5.2の処理が繰り返される。
一方、S4.2.2において、変換リクエストを受け付けた変換サーバ105は、変換情報管理部352で、変換IDを発行して応答として返すとともに、受け取ったオーバレイインデックスファイルURLと合わせて変換情報として登録する。また、変換情報管理部352は、データ変換部353にオーバレイインデックスファイルURLを渡し、変換指示を行う。データ変換部353は、変換指示を受けると、初期状態の変換インデックスファイル600を生成してストレージサーバ107のライフサイクル管理領域にアップロードする(S4.3.1)。さらに、そのデータURLを該当の変換情報に登録する。
帳票生成サーバ104は、S4.2.2の変換リクエストの応答で返された変換IDをキーに、変換サーバ105に定期的に変換情報の取得を行う(S4.4.1)。S4.4.1の応答で得られる変換情報の変換インデックスファイルURLに値が存在した場合、帳票生成サーバ104は該当する帳票データ情報の変換インデックスファイルURLを更新し、S4.4.1を終了する。
一方、クライアント端末102のWebブラウザ321は、S4.1.4でオーバレイIDを受け取った後、そのオーバレイIDを指定して定期的に帳票生成サーバ104へ帳票データ情報の取得を行う(S4.5.1)。S4.5.1の応答に変換インデックスファイルURLが含まれる場合、Webブラウザ321はS4.5.1を終了し、変換インデックスファイルの取得を開始する。この時Webブラウザ321が取得する変換インデックスファイルの内容は、後述の変換サーバ105で並列に行われている変換処理の進捗によって、図6の600〜630のいずれかの状態となる。
<データ変換処理フロー>
図5は、本実施の形態に係る変換サーバ105のデータ変換と、クライアント端末102がWeb帳票文書を取得して表示するまでのフローを示した図である。本フローの変換サーバ105のデータ変換は、S4.2.2において帳票生成サーバ104から変換リクエストを受信することによって始まる。本フローのクライアント端末102のWeb帳票文書表示フローは、Webブラウザ321がS4.5.1を終了して変換インデックスファイルの取得を開始することによって始まる。
変換サーバ105は、前述のS4.2.2の変換リクエストを受け付けると、データ変換部353は、変換処理を開始する。
S5.1において、データ変換部353は、変換リクエストに含まれるオーバレイインデックスファイルURLにアクセスしてオーバレイインデックスファイルをダウンロードする。S5.1.1.1において、データ変換部353は、オーバレイインデックスファイルを参照し、「dataList」にオーバレイ済みのデータURLが存在した場合(610)、そのデータURLからPDFファイル(PDF01)を取得する。
次に、S5.1.1.2において、データ変換部353は、PDFファイル(PDF01)をWeb帳票文書へ変換する。
S5.1.1.3において、データ変換部353は、S5.1.1.2にて生成したWeb帳票文書(SVG01)をストレージサーバ107のライフサイクル管理領域にアップロードする。さらにデータ変換部353は、前記アップロードしたWeb帳票文書(SVG01)のデータURLを変換インデックスファイル610の「dataList」に追記し、前述のS4.3.1と同じデータURLにアップロードする(S5.1.1.4)。
以降、データ変換部353は、定期的にオーバレイインデックスファイルURLにアクセスしてオーバレイインデックスファイルを確認する。そして、S5.1.2.1〜S5.1.2.4、S5.1.3.1〜S5.1.3.4の処理を順次実行する。S5.1において、オーバレイインデックスファイルの処理完了フラグ「end」がtrueであった場合(630)、S5.1.3.4にて、変換インデックスファイルの処理完了フラグ「end」をtrueに更新する。
一方、クライアント端末102のWebブラウザ321は、S4.5.1の応答で、帳票データ情報の変換インデックスファイルURLを取得後、変換インデックスファイルURLに定期的にアクセスして変換インデックスファイルをダウンロードする。S5.2.1にて「dataList」にURLが存在した場合(610、620、630)、Webブラウザ321は、そのデータURLからWeb帳票文書をダウンロードし、プレビュー画面1000に表示する。Webブラウザ321は、変換インデックスファイルの処理完了フラグ「end」がtrueとなった時点(630)でS5.2.1を終了する。
図10は、Webブラウザ321に表示されるWeb帳票画面1000の例である。
Web帳票画面1000は、クライアント端末102のWebブラウザ321がS5.2.1、S5.2.1.1〜S5.2.1.3で取得し、表示した画面である。1020は、Webブラウザ321が取得したWeb帳票文書を描画したものである。1010は、取得したWeb帳票文書のページ数と現在表示中のページ数を示し、S5.2.1.1〜S5.2.1.3の処理進捗に従って変化する。1030は、印刷ボタン1030であって、帳票生成サーバ104に対して帳票文書の印刷要求を実行するボタンである。
図4と図5のフローは、夫々のインデックスファイルの状態と内容を起点としており、帳票生成サーバ104のオーバレイ処理、変換サーバ105のデータ変換処理、クライアント端末102のWeb帳票文書の表示は並列して動作することができる。
帳票生成サーバ104は、オーバレイインデックスファイルをアップロード(S4.2.1)した後、PDF01の処理が完了すると、S4.2.4.3でデータURLを追加(610)し、続けてPDF02の処理を開始する。
このタイミングで、S5.1で定期的にオーバレイインデックスファイルを確認している変換サーバ105は、PDF01のデータURLが追加されたことを検知する。そして、PDF01をSVG01へ変換する処理を開始する(S5.1.1.1〜S5.1.1.4)。また、変換サーバ105は、SVG01の処理が完了すると、S5.1.1.4で変換インデックスファイルにSVG01のデータURLを追加(610)し、S5.1でPDF02のデータURLが追加されたことを検知するとPDF02の処理を行う。
さらに、クライアント端末102は、S4.5.1の応答として得られた変換インデックスファイルURLに定期的にアクセスし、変換インデックスファイルを確認する(S5.2.1)。S4.5.1で変換インデックスファイルURLが応答されるのは、S4.3.1で変換サーバ105が変換インデックスファイルを生成し、S4.4.1の応答として帳票生成サーバ104がそれを受け取ったタイミング以降となる。
クライアント端末102は、変換インデックスファイルにSVG01のデータURLが追加されたことを検知すると、S5.2.1.1でSVG01を取得しWeb帳票画面1000に表示する。
また、帳票生成サーバ104は、PDF01の処理の後、PDF02、PDF03を継続して処理し、オーバレイインデックスファイルを更新する。
一方、変換サーバ105はS5.1の確認を継続し、オーバレイインデックスファイルの更新を検知すると、SVG02、SVG03の変換処理を行い、変換インデックスファイルを更新する。さらに、クライアント端末102は、同様にS5.2.1の確認を継続し、変換インデックスファイルの更新を検知すると、内容に応じてSVG02、SVG03のデータを取得し、Web帳票画面1000に表示する。
このように、ボタン押下に応じて発生する表示リクエストを契機として、帳票生成リクエスト、帳票(PDF)の生成処理、Webページの生成処理、変換リクエスト、SVGフォーマットへの変換処理が行われる。また、当該Webページ(Webアプリケーション)は、クライアント端末上でSVG形式の帳票データの表示を引き起こす。Webページ(Webアプリケーション)を受信したクライアント端末のWebブラウザは、Webページと共に送信されたJavaScript(登録商標)などのクライアントサイドスクリプトを実行する。当該スクリプトの実行により、ストレージサーバ107上のSVGファイルを逐次取得し、帳票画面の表示制御を行うことができる。
<帳票印刷処理フロー>
図7は、本実施の形態に係るクライアント端末102のWebブラウザ321の帳票印刷要求処理を示すフローチャートである。S701において、Webブラウザ321は図5のWeb帳票文書表示フローを実行してWeb帳票画面1000を表示する。
S702において、Webブラウザ321は印刷ボタン1030が押下されたか否かを判定する。Webブラウザ321は、タッチ操作などにより印刷ボタン1030の領域が選択されたことを示すクリックイベントをOSから受信した場合に、当該ボタン1030が押下されたと判定する。
印刷ボタン1030が押下されたと判定された場合(S702のYes)、S703において、Webブラウザ321は、帳票生成サーバ104に対して帳票印刷リクエストを行う。このとき、Webブラウザ321は、S4.1.4で受け取ったオーバレイIDをリクエストに含める。
図8は、本実施の形態に係る帳票生成サーバ104の帳票文書印刷処理を示すフローチャートである。本フローはクライアント端末102のWebブラウザ321が帳票生成サーバ104に帳票印刷リクエストを送信することによって始まる。
S801において、帳票印刷リクエストを受信すると、印刷文書生成部344は、リクエストに含まれるオーバレイIDを取得する。
S802において、印刷文書生成部344は、前記取得したオーバレイIDからオーバレイ処理を特定し、帳票データ情報からオーバレイインデックスファイルURLを取得する。そして、そのURLにアクセスしてオーバレイインデックスファイルをダウンロードする(S803)。
次に、S804において、印刷文書生成部344は、前記ダウンロードしたオーバレイインデックスファイルを参照し、「dataList」に含まれる全てのデータURLにアクセスして全てのPDFファイルを取得する。
S805において、印刷文書生成部344は、PDFファイルの取得が成功したかを判定する。取得が成功したと判定された場合、印刷文書生成部344は、S806において、前記取得したPDFファイルをページ順に全て結合し、印刷用PDFファイルを生成する。本実施例では、PDFファイルを1ページ目から順に生成(S4.2.4.1、S4.2.5.1、S4.2.6.1)し、生成した各PDFファイルのファイル名にPDF01、PDF02のようにシーケンシャルな番号を付与している。PDFファイルを結合する際は、PDFファイル名のシーケンシャルな番号をもとに1ページ目から順にファイルを結合する。なお、ページ順に結合する手段はこの方法に限定されるものではなく、例えば、オーバレイインデックスファイルにページ番号情報を記述する方法であってもよい。
そして、S807において、印刷文書生成部344は、前記印刷用PDFファイルを印刷サーバ106に送信する。印刷サーバ106に印刷用PDFファイルを送信すると、印刷サーバ106が印刷ジョブを作成し、印刷サーバ106から印刷装置108に印刷ジョブが送られて印刷される。印刷装置108にて印刷出力が完了すると、印刷装置108から印刷サーバ106に対して印刷結果情報が通知され、印刷サーバ106には印刷の証跡が残る。
S805において、PDFファイルの取得が失敗したと判定された場合(S805のNo)、帳票印刷処理はエラー終了する(S808)。以上の処理により、帳票生成サーバ104は帳票印刷処理を実行する。
なお、本実施例では、分割生成した帳票文書を結合して印刷文書を生成する例を記載したが、この方法に限定されるものでなく、別の手段で印刷文書を生成してもよい。例えば、帳票生成リクエスト受信時、オーバレイ部343は、分割生成PDFファイルとは別に、全てのページを含むPDFファイルを生成してストレージサーバ107にアップロードする。そして、全てのページを含むPDFファイルのデータURLをオーバレイインデックスファイルに保持する。帳票印刷リクエストを受信すると、印刷文書生成部344は、オーバレイインデックスファイルを参照して全てのページを含むPDFファイルをストレージサーバ107からダウンロードして印刷サーバ106に送信する。
以上説明した、第1の実施形態によれば、Web帳票文書の画面に表示した印刷ボタン1030を押下することにより帳票文書を印刷することができ、Web帳票文書を印刷する際のユーザ操作の負荷を軽減できる。さらに、分割生成したPDFを再利用して印刷用PDFを生成するため、印刷用文書生成のためのオーバレイ出力処理を行う必要がなく、帳票生成サーバ104のマシンリソースの無駄な消費を抑制できる。
<第2の実施形態>
第1の実施形態では、Web帳票の全ページを印刷するケースを説明した。第2の実施形態では、複写帳票を印刷する際に、控えのページのみ印刷する方法について説明する。複写帳票とは、あるページの顧客データと同じ内容が別のページに写る帳票である。なお、本実施例では、2ページで構成される「申込書」の複写帳票文書を生成するものとし、1ページ目が「申込書(正)」、2ページ目が「申込書(控)」のページであるものとする。
第1の実施形態との差異は、フォーム情報ファイルが印刷可否属性を保持するよう構成される点である。ユーザはフォーム情報ファイルを編集するアプリケーションを用いて、フォーム情報ファイルに印刷可否属性を設定する。具体的には、「申込書(正)」のフォーム情報ファイルに印刷可否属性「印刷不可」を設定し、「申込書(控)」のフォーム情報ファイルに印刷可否属性「印刷可」を設定する。そして、それらフォーム情報ファイルを複写帳票として使用するよう設定した複写帳票情報ファイルとともに、帳票情報管理部342が管理する帳票テンプレート情報に保存する。複写帳票情報ファイルに対応する帳票テンプレートIDを指定して帳票生成リクエストを行うことで、帳票生成サーバ104は複写設定されたフォーム情報ファイルを使用したオーバレイ出力処理を行う。
以下、第2の実施形態の具体例について図面を用いて説明する。第2の実施形態におけるハードウェア構成、ソフトウェア構成については第1の実施形態と同様のであるため説明を省略する。また、第1の実施の形態と共通の部分については説明を省略し、以下では差異部分のみ説明する。
図11は、本実施の第2の形態に係る帳票生成サーバ104がオーバレイ出力処理を実行する際に生成、更新を行うインデックスファイルの例を時系列に示したものである。帳票生成サーバ104はまず、処理が開始された時点で、ストレージサーバ107のライフサイクル管理領域にインデックスファイルを生成する(1100)。本実施例では、インデックスファイルはJSONファイル形式を採用することができる。当該ファイルは、「dataList」をキーとする処理結果のデータURLのリストと、「printablepages」をキーとする印刷可能ページ番号と、「end」をキーとする処理完了フラグから成る。ここで本実施例では、オーバレイ出力結果をPDFファイルとし、ファイル出力単位は1ページ毎とする。例えば、2ページの帳票に対して2つのPDFファイルを出力する。ただし、ファイル出力単位は1ページ毎とする必要はなく、複数ページ固定、全体ページ数から計算した値等、オーバレイ部343で制御可能であればこれに限らない。
帳票生成サーバ104は処理開始時に、初期状態のインデックスファイル1100を生成する。この時、ファイルは生成されていないため、「dataList」は要素が空、印刷可能ページ番号「printablepages」は空文字、処理結果を示す「end」の値はfalseである。この後、帳票生成サーバ104は順次処理を実行し、処理結果のファイルをストレージサーバ107のライフサイクル管理領域にアップロードし、そのデータURLを「dataList」に追加する。さらに、そのページが印刷可能である場合、「printablepages」にそのページ番号を追加する。1110は、1ファイル目がアップロードされた状態を示す。
帳票生成サーバ104は、最後のページである2ファイル目の処理結果のファイルをアップロードした時点で、インデックスファイル1120の状態に更新する。1120は、「dataList」に2ファイル目に対応するデータURLが追加され、「printablepages」で2ページ目が印刷可能であることを示しているとともに、処理完了フラグ「end」がtrueに更新されている。
図12は、第2の実施形態における帳票生成処理のフローを示した図である。本フローはユーザがWebブラウザ321に表示した画面において帳票プレビュー要求操作を実行することによって始まる。なお、図4と同様のフローにおいては、同じ符号を付与しており、以下、差異部分を中心に説明する。
帳票生成サーバ104は、帳票生成リクエストを受信すると、帳票情報管理部342がオーバレイIDを発行して帳票データ情報に登録する。さらに、リクエストに対する応答としてオーバレイIDを返す(S4.1.3)。
S4.1.4において、業務サーバ103は、クライアント端末102のWebブラウザ321に対してオーバレイIDを返す。
また、帳票生成サーバ104の帳票情報管理部342は、S4.1.3と並行して、リクエストに含まれる帳票テンプレートIDを基に帳票テンプレート情報から帳票テンプレートURLと、顧客情報を取得する。続けて、取得したURLと顧客情報を用いて、オーバレイ部343にオーバレイ出力指示を行う。
オーバレイ部343は、オーバレイ出力指示を受けると、オーバレイインデックスファイル1100を生成し、ストレージサーバ107のライフサイクル管理領域にアップロードする(S12.2.1)。
S4.2.2において、オーバレイ部343は、S12.2.1でアップロードしたオーバレイインデックスファイル600のデータURLを含む変換リクエストを変換サーバ105に送信する。
S4.2.3において、オーバレイ部343は、帳票テンプレートURLにアクセスしてフォーム情報ファイルを取得し、顧客情報と重ね合わせてオーバレイ処理を開始する。
S12.2.4.1において、オーバレイ部343は、オーバレイ出力結果としてPDFファイル(PDF01)を出力する。さらに、オーバレイ部343は、オーバレイに使用したフォーム情報ファイルの印刷可否属性を取得し、当該ページの印刷可否を決定する。
S12.2.4.2において、オーバレイ部343は、前記生成したPDFファイル(PDF01)をストレージサーバ107のライフサイクル管理領域にアップロードする。次に、S12.2.4.3において、オーバレイ部343は、前記アップロードしたPDFファイル(PDF01)のデータURLを「dataList」に追記する。さらに、S12.2.4.1において印刷可能と決定した場合、オーバレイ部343は、当該ページ番号を「printablepages」に追記する。そしてオーバレイインデックスファイル1110を、S12.2.1と同じデータURLにアップロードする。なお、本実施例では、1ページ目「申込書(正)」は印刷不可であるため、オーバレイインデックスファイル1110の「printablepages」は空となっている。
S12.2.5.1において、オーバレイ部343は、オーバレイ出力結果としてPDFファイル(PDF02)を出力する。さらに、オーバレイ部343は、オーバレイに使用したフォーム情報ファイルの印刷可否属性を取得し、当該ページの印刷可否を決定する。
S12.2.5.2において、オーバレイ部343は、前記生成したPDFファイル(PDF02)をストレージサーバ107のライフサイクル管理領域にアップロードする。
さらに、S12.2.5.3において、オーバレイ部343は、「dataList」に前記アップロードしたPDFファイル(PDF03)のデータURLを追記する。さらに、S12.2.5.1において印刷可能と決定した場合、オーバレイ部343は、当該ページ番号を「printablepages」に追記する。次に、オーバレイ部343は、処理完了フラグ「end」を、完了を表す値であるtrueに更新する。そして、S12.2.5.3において、そのオーバレイインデックスファイル1120をストレージサーバ107のライフサイクル管理領域にアップロードする。なお、本実施例では、2ページ目「申込書(控)」は印刷可能であるため、オーバレイインデックスファイル1120の「printablepages」に「2」が指定されている。
図13は、本実施の第2の形態に係る帳票生成サーバ104の帳票文書印刷処理を示すフローチャートである。本フローはクライアント端末102のWebブラウザ321が帳票生成サーバ104に帳票印刷リクエストを送信することによって始まる。なお、図8と同様のフローにおいては、同じ符号を付与しており、以下、差異部分のみ説明する。
印刷文書生成部344は、S806において、S804にて取得したPDFファイルをページ順に全て結合する。
次に、S1301において、印刷文書生成部344は、オーバレイインデックスファイルを参照し、「printablepages」から印刷可能ページ番号を取得する。
S1302において、印刷文書生成部344は、全てのページを印刷するかを判定する。全てのページを印刷すると判定された場合(S1302のYes)、S807に遷移する。一部のページのみ印刷すると判定された場合(S1302のNo)、S1303において、印刷文書生成部344は、印刷可能ページ番号をもとに印刷しないページを算出する。
S1304において、印刷文書生成部344は、S806にて結合したPDFから印刷しないページを削除する。そして、S807において、印刷文書生成部344は、前記印刷用PDFファイルを印刷サーバ106に送信する。なお、本実施形態では、PDFファイルからページを削除する場合を例示したがこれに限定されるものではない。例えば、PDFファイルと印刷設定として印刷指定ページを含む印刷ジョブを印刷サーバ106に送信するよう構成することもできる。この場合、S1304の不要ページを削除する処理は、印刷サーバ106上で印刷装置に送信する印刷ジョブを生成する際に実行される。
以上説明した処理により、帳票生成サーバ104は、帳票を構成する複数のページの中から、例えば、印刷時に顧客に配布するページのみを抽出して印刷することができるようになる。
<その他の実施形態>
本発明は、上述の各実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASICやFPGA)によっても実現可能である。
102 クライアント端末
103 業務サーバ
104 帳票生成サーバ
106 印刷サーバ

Claims (7)

  1. 情報処理装置と、帳票サーバとを少なくとも含む印刷システムであって、
    前記帳票サーバは、前記情報処理装置から送信された帳票データの表示リクエストを契機として、前記表示リクエストに対応する帳票データの表示を引き起こすWebページを生成する第1の生成手段と、
    前記情報処理装置において前記Webページに基づき表示された画面を介して表示オブジェクトが選択されたことに応じて引き起こされる印刷リクエストを受信したことに従って、前記印刷リクエストに対応する印刷データを生成する第2の生成手段と、
    前記生成した印刷データを外部装置に送信する送信手段と、
    を有し、
    前記情報処理装置は、
    前記帳票サーバにより生成されたWebページを受信し、当該Webページに基づき前記帳票データと前記表示オブジェクトを含む画面を表示するよう制御する表示制御手段と、
    を有し、
    前記帳票サーバの前記第2の生成手段は、前記表示リクエストを契機として生成された中間データであって、前記帳票データを示す表示データの生成のために使用された中間データを用いて前記印刷データを生成することを特徴とする印刷システム。
  2. 前記印刷システムは、顧客情報を管理する業務サーバを更に有し、
    前記業務サーバは、
    前記情報処理装置から送信された帳票データの表示リクエストを受信し、当該受信した表示リクエストに基づき、顧客情報と帳票を特定する識別情報を含む帳票作成リクエストを前記帳票サーバに送信する第2の送信手段を有し、
    前記帳票サーバの前記第1の生成手段は、前記帳票作成リクエストに基づきPDFフォーマットのファイルを前記中間データとして生成し、当該生成されたPDFフォーマットのファイルを変換して得られたSVGフォーマットの表示データの表示を引き起こすWebページを生成することを特徴とする請求項1に記載の印刷システム。
  3. 前記第1の生成手段は、前記中間データであるPDFフォーマットのファイルを生成する際に、1つのPDFファイルが所定ページ数以下になるよう分割して生成し、前記分割して生成された複数のPDFファイルを変換して得られた複数のSVGフォーマットの表示データの表示を引き起こすWebページを生成し、
    前記第2の生成手段は、前記印刷リクエストに対応する複数のPDFファイルを特定し、当該特定された複数のPDFファイルを結合した印刷データを生成することを特徴とする請求項2に記載の印刷システム。
  4. 前記第2の生成手段は、当該特定された複数のファイルを結合したPDFファイルを生成し、当該PDFファイルを印刷するための印刷データを生成することを特徴とする請求項3に記載の印刷システム。
  5. 前記印刷システムは印刷サーバを含み、
    前記送信手段は前記生成した印刷データを印刷サーバに送信し、
    前記印刷サーバは、
    印刷装置に印刷データを送信する第3の送信手段と、
    前記印刷サーバ経由で印刷したジョブの印刷履歴を管理する管理手段と、
    を有することを特徴とする請求項1乃至4のいずれか1項に記載の印刷システム。
  6. 前記第1の生成手段は、前記PDFファイルを生成する際に、印刷を行うページを特定する特定情報を更に生成し、
    前記第2の生成手段は、前記特定情報に基づき印刷を行うと特定されたページを含み、印刷を行うと特定されなかったページを含まないPDFファイルを生成することを特徴とする請求項4に記載の印刷システム。
  7. 情報処理装置と、帳票サーバを用いる印刷方法であって、
    前記帳票サーバは、前記情報処理装置から送信された帳票データの表示リクエストを契機として、前記表示リクエストに対応する帳票データの表示を引き起こすWebページを生成し、
    前記情報処理装置は、前記帳票サーバにより生成されたWebページを受信し、当該Webページに基づき帳票データと表示オブジェクトを含む画面を表示するよう制御し、
    前記帳票サーバは、前記情報処理装置において前記表示オブジェクトが選択されたことに応じて引き起こされる印刷リクエストを受信したことに従って、前記印刷リクエストに対応する印刷データを生成し、当該生成した印刷データを外部装置に送信するよう制御し、
    前記印刷リクエストに対応する印刷データは、前記表示リクエストを契機として生成された中間データであって、前記帳票データを示す表示データの生成のために使用された中間データを用いて生成されることを特徴とする印刷方法。
JP2019197767A 2019-10-30 2019-10-30 印刷システム、印刷方法 Pending JP2021071887A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019197767A JP2021071887A (ja) 2019-10-30 2019-10-30 印刷システム、印刷方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019197767A JP2021071887A (ja) 2019-10-30 2019-10-30 印刷システム、印刷方法

Publications (1)

Publication Number Publication Date
JP2021071887A true JP2021071887A (ja) 2021-05-06

Family

ID=75713198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019197767A Pending JP2021071887A (ja) 2019-10-30 2019-10-30 印刷システム、印刷方法

Country Status (1)

Country Link
JP (1) JP2021071887A (ja)

Similar Documents

Publication Publication Date Title
JP5761923B2 (ja) 印刷システム、情報処理装置及びその方法
US8553268B1 (en) Printing system, image forming apparatus, information processing apparatus, and printing method
JP4141182B2 (ja) 情報処理装置と情報処理方法並びにコンピュータ・ソフトウエア
JP5462610B2 (ja) 情報処理システム、情報処理装置、それらの制御方法、及びプログラム
JP6701961B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
US9507789B2 (en) System, relay server apparatus, information processing method and computer-readable medium
US20120033254A1 (en) Information processing apparatus, output method, and storage medium
US8665473B2 (en) Printing system, control method, storage client apparatus, and web application server
US10817646B2 (en) Information processing system and control method therefor
JP4428108B2 (ja) 処理装置、印刷処理方法、印刷処理プログラム、及び印刷システム
US8782512B2 (en) Controller, method, and program product for controlling job information display, and recording medium
JP2012039478A (ja) 情報処理装置、情報処理システム、情報処理装置の制御方法及びプログラム
US10885408B2 (en) Document generation system, method of controlling the same, and non-transitory computer readable medium
JP2012146284A (ja) 印刷制御装置及びその制御方法並びにプログラム
JP2011259337A (ja) 処理連携システム、情報処理装置、プログラム、及び記録媒体
JP2018055489A (ja) 情報処理システム及び情報処理方法、文書処理システム、プログラム
US9030702B2 (en) Client apparatus, printing system, and display method for converting printing formats, generating preview images, and displaying preview images
US9813582B2 (en) Printing system capable of printing in any one of plural image forming apparatuses over network, image forming apparatus, and printing method
JP2005271371A (ja) 印刷管理装置、印刷管理方法、印刷管理プログラム、及び印刷システム
JP2021071887A (ja) 印刷システム、印刷方法
JP6794686B2 (ja) 情報処理システム、情報処理装置、及び情報処理方法
JP2005271370A (ja) 印刷管理装置、印刷管理方法、印刷管理プログラム、及び印刷管理システム
JP6536308B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
US11010118B2 (en) Information processing system, information processing apparatus, and server comprising: processing circuitry configured to: store, in a memory of the server, a print job received from an information processing apparatus that creates and stores the print job locally so that the print job is stored both in the memory of the server and in the information processing apparatus at a same time
JP2021005328A (ja) 帳票文書生成システム、帳票文書生成方法、サーバおよびその制御方法、並びにプログラム