JP2016014915A - 文書生成システムおよびその制御方法、並びにプログラム - Google Patents
文書生成システムおよびその制御方法、並びにプログラム Download PDFInfo
- Publication number
- JP2016014915A JP2016014915A JP2014135169A JP2014135169A JP2016014915A JP 2016014915 A JP2016014915 A JP 2016014915A JP 2014135169 A JP2014135169 A JP 2014135169A JP 2014135169 A JP2014135169 A JP 2014135169A JP 2016014915 A JP2016014915 A JP 2016014915A
- Authority
- JP
- Japan
- Prior art keywords
- page
- data
- document
- document generation
- output
- 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
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Document Processing Apparatus (AREA)
Abstract
【課題】文書を生成する際、データが無いページに対しても出力され、その結果、不要なページが出力されることによる課金等の問題があった。クラウドサービス等ではこの問題を解消するために、個別に目的に合わせた制御用プログラムなどの作成が必要であった。
【解決手段】文書生成システムであって、クライアントからの要求に応じて文書データを生成する生成手段と、前記生成手段が文書データを作成する際に用いる、ページごとのフォームの情報と、ページに埋め込まれるデータとを管理する管理手段とを備え、前記生成手段は、前記文書データを構成するページのうち、ページに対応するフォームに前記管理手段にて管理するデータを埋め込む領域であるフィールド図形が含まれ、かつ、当該フィールド図形に埋め込むためのデータが前記管理手段にて管理されていないページは出力しない。
【選択図】 図14
【解決手段】文書生成システムであって、クライアントからの要求に応じて文書データを生成する生成手段と、前記生成手段が文書データを作成する際に用いる、ページごとのフォームの情報と、ページに埋め込まれるデータとを管理する管理手段とを備え、前記生成手段は、前記文書データを構成するページのうち、ページに対応するフォームに前記管理手段にて管理するデータを埋め込む領域であるフィールド図形が含まれ、かつ、当該フィールド図形に埋め込むためのデータが前記管理手段にて管理されていないページは出力しない。
【選択図】 図14
Description
本発明は、文書生成システムおよびその制御方法、並びにプログラムに関し、特に、イントラネットのデータベースやクラウド上に保存されたデータをフォームオーバレイして文書を作成するシステムに関する。
近年、サーバ側で業務データの管理や各種処理を行う形態として、クラウドコンピューティングシステムが普及し始めている。ユーザは、クライアント側のブラウザからインターネットを介してクラウドサーバのWebページにアクセスし、そのWebページ上で閲覧したい業務データを表示させる。その画面から文書作成指示を行うと、文書生成サーバにリダイレクトされ、文書生成サーバから返される画面にてフォームオーバレイに使用するフォームをユーザが選択する。そして、文書生成サーバがクラウドサーバ上にあるデータを取得して文書を生成し、文書がブラウザへダウンロードされる。クラウドサーバの代表例として、例えば、Salesforce.com社のSalesforce CRM(登録商標)がある。
文書生成サーバでは、クラウドサーバ上にあるデータを使用して様々な文書が生成される。例えば、業務帳票のような形式の場合、複数のテンプレート(例えば請求のサマリと請求明細)を組み合わせてひとつの文書とする場合が多い。このような形式において、クラウドサーバ上に該当のデータ(例えば請求明細)がない(取得データがゼロ件)場合には、表等の枠線のみが表示された空のページが生成されてしまうという問題がある。従来、取得データがゼロ件になる場合に、ユーザ指定の条件により各ページ内の特定項目の表示を制御することはできる(特許文献1参照)。しかし、ページそのものの制御は行えず、複数のテンプレートを使用した文書を生成する際には、枠線のみの「空の」明細ページを出さざるを得なかった。これは、データがゼロ件である場合でも、出力する必要のあるページが存在するため、これらを考慮して出力している。例えば、約款のような固定データのみでバリアブルデータが存在しないテンプレートが該当する。
従来技術では、データが無い場合にページそのものの出力を制御できない。クラウド環境の場合、ページ単位で課金しているケースが多い。このため、ユーザとしては本来出力したくない枠線のみの意味のないページが出力され課金されてしまうという問題がある。
また、イントラネットにおける文書生成システムにおいては、従来、上記の問題に対して、文書生成システムを呼び出す上位システムにて、入力データを加工することで対応していた。入力データの加工を行うためには、ユーザ自らが上位システムにて独自のプログラムを組み必要がある。そして、そのプログラムで、各文書・テンプレートおよびそこに指定するデータを管理し、文書毎に入力データの加工方法を切り替える必要があったため非常に手間がかかっていた。
上記課題を解決するために本願発明は以下の構成を有する。すなわち、文書生成システムであって、クライアントからの要求に応じて文書データを生成する生成手段と、前記生成手段が文書データを作成する際に用いる、ページごとのフォームの情報と、ページに埋め込まれるデータとを管理する管理手段とを備え、前記生成手段は、前記文書データを構成するページのうち、ページに対応するフォームに前記管理手段にて管理するデータを埋め込む領域であるフィールド図形が含まれ、かつ、当該フィールド図形に埋め込むためのデータが前記管理手段にて管理されていないページは出力しないことを特徴とする。
本発明によれば、文書を生成するシステムにおいて、データが取得できない場合でも、ユーザによる入力データの加工を行うことなく、ユーザ所望の出力を得られる。
<第一の実施形態>
以下、本発明を実施するための一実施形態について図面を用いて説明する。
以下、本発明を実施するための一実施形態について図面を用いて説明する。
[システム構成]
図1は、本発明の実施形態に係るシステム構成の例を示すブロック図である。クライアント端末101は、クラウドプラットフォームサービス102および文書生成サーバ103に対してリクエストを発行する。クラウドプラットフォームサービス102は、クライアント端末101や文書生成サーバ103からのリクエストに応じて、保持するデータの表示・更新等を行う。文書生成サーバ103は、クライアント端末101からリクエストを受信して文書生成を行う。
図1は、本発明の実施形態に係るシステム構成の例を示すブロック図である。クライアント端末101は、クラウドプラットフォームサービス102および文書生成サーバ103に対してリクエストを発行する。クラウドプラットフォームサービス102は、クライアント端末101や文書生成サーバ103からのリクエストに応じて、保持するデータの表示・更新等を行う。文書生成サーバ103は、クライアント端末101からリクエストを受信して文書生成を行う。
各構成要素は、ネットワーク100により通信可能に接続されている。ネットワーク100は、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれであってもよい。もしくは、ネットワーク100は、これらの組み合わせにより実現される、いわゆる通信ネットワークであり、データの送受信が可能であればよい。
また、クライアント端末101からクラウドプラットフォームサービス102、文書生成サーバ103への通信手段、文書生成サーバ103からクラウドプラットフォームサービス102への通信手段、及び各サーバ間の通信手段が異なっていてもよい。
[ハードウェア構成]
図2は、図1に示す、情報処理装置としてのクライアント端末101、クラウドプラットフォームサービス102、および文書生成サーバ103のハードウェア構成を示す。CPU201は、内部バスで接続される各デバイスを直接或いは間接的に制御し、本発明を実現するためのプログラムを実行する。ROM202は、BIOSが格納される。RAM203は、CPU201のワーク領域として利用されたり、本発明を実現するためのソフトウェアモジュールをロードするための一時記憶として利用されたりする。HDD204は、間接記憶装置であり、基本ソフトウェアであるOS(Operating System)やソフトウェアモジュールが記憶される。入力装置205は、不図示のキーボードやポインティングデバイスなどである。出力装置206は、ディスプレイなどである。I/F207は、ネットワーク100に接続するためのインタフェースである。
図2は、図1に示す、情報処理装置としてのクライアント端末101、クラウドプラットフォームサービス102、および文書生成サーバ103のハードウェア構成を示す。CPU201は、内部バスで接続される各デバイスを直接或いは間接的に制御し、本発明を実現するためのプログラムを実行する。ROM202は、BIOSが格納される。RAM203は、CPU201のワーク領域として利用されたり、本発明を実現するためのソフトウェアモジュールをロードするための一時記憶として利用されたりする。HDD204は、間接記憶装置であり、基本ソフトウェアであるOS(Operating System)やソフトウェアモジュールが記憶される。入力装置205は、不図示のキーボードやポインティングデバイスなどである。出力装置206は、ディスプレイなどである。I/F207は、ネットワーク100に接続するためのインタフェースである。
これらハードウェアでは、起動後、CPU201によりBIOSが実行され、OSがHDD204からRAM203に実行可能にロードされる。CPU201は、OSの動作に従って各種ソフトウェアモジュールをHDD204からRAM203に随時、実行可能にロードする。各種ソフトウェアモジュールは各デバイスの協調によりCPU201によって実行され動作する。また、I/F207はネットワーク100に接続され、OSの動作に従ってCPU201により制御され、上述した通信手段による通信を実現する。
[システム連携]
図3は、本実施形態に係る文書生成システムにおける各装置の連携の全体概要を示す図である。
図3は、本実施形態に係る文書生成システムにおける各装置の連携の全体概要を示す図である。
クライアント端末101は、ユーザインタフェースアプリケーションとしてWebブラウザ301を備える。クラウドプラットフォームサービス102は、サービスを利用するユーザの管理や、業務データ、文書生成サーバ103へのリダイレクトを行うための設定を管理する。また、クラウドプラットフォームサービス102は、マルチテナントを前提とし、使用する企業・組織毎に前述のユーザ管理、業務データ管理等が行われる。
文書生成サーバ103は、Webサーバ303、および、文書生成サービス304を備える。Webサーバ303は、いわゆるWebアプリケーションの機能を有するよう構成され、クライアント端末101はWebブラウザ301を介してアクセスする事が出来る。
Webサーバ303は、Webブラウザ301からのリクエストに対してユーザインタフェース情報を返答する。Webブラウザ301は、Webサーバ303から得られたユーザインタフェース情報をレンダリングし、表示する。表示されたユーザインタフェース情報には、例えば、文書生成サーバ103が管理するフォームの一覧や、文書生成をリクエストするためのインタフェース等が含まれる。また、Webサーバ303は、Webブラウザ301から文書生成リクエストを受信すると、クラウドプラットフォームサービス102から業務データを取得し、その業務データとともに文書生成サービス304に対して文書生成のリクエストを送信する。
文書生成サービス304は、受信したデータと、自身で管理するフォームおよびクエリコマンドとを使用してオーバレイ処理を行い、文書データを生成する。クエリコマンドには、クラウドプラットフォームサービス102からの業務データ取得方法等が設定されている。
[ソフトウェア構成]
図4は、クラウドプラットフォームサービス102上で動作するソフトウェアモジュールの構成例を示す図である。各ソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
図4は、クラウドプラットフォームサービス102上で動作するソフトウェアモジュールの構成例を示す図である。各ソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
クラウドプラットフォームサービス102は、送受信部401、制御部402、ページ生成部403、セッション管理部404、認証部405、データ管理部406、および設定管理部407を備える。
送受信部401は、クライアント端末101のWebブラウザ301や文書生成サーバ103のWebサーバ303との通信を処理する。制御部402は、送受信部401が受け付けたリクエストに従って処理を実行する。ページ生成部403は、Webブラウザ301にレスポンスを返すためのWebページを生成する。認証部405は、ログイン要求してきたユーザを認証する。セッション管理部404は、認証部405にて認証に成功したユーザのセッション情報を管理する。データ管理部406は、業務データをDB408に保持し、要求に応じてDB408から業務データの取得、あるいは業務データの更新を行う。設定管理部407は、文書生成サーバ103へのリダイレクトを行うための設定を保持する。クラウドプラットフォームサービス102は、各構成要素の協調により、後述する処理を実行する。
DB408は、管理ユーザデータや業務データを格納するデータベースであり、図2で示したHDD204に記憶される。管理ユーザデータや業務データは、企業・組織(以降、「組織」と表記)毎に管理される。各組織には組織IDが自動的に割り当てられ、組織IDとともに各データが管理される。ユーザ認証時、ユーザが所属する組織の組織IDを取得しセッション管理部404に保存する。以降のデータ取得等の処理は組織IDに基づいて行われ、組織IDの一致するデータのみを参照することが可能である。
また、DB408には、文書生成サーバ103へのリダイレクトを行うための設定も格納される。DB408に格納された業務データや文書生成サーバ103へリダイレクトを行うための設定は、Webブラウザ301を介して、ユーザ(管理者)により任意のタイミングで設定更新が行われる。
図5は、文書生成サーバ103のWebサーバ303上で動作するソフトウェアモジュールの構成例を示す図である。各ソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
Webサーバ303は、送受信部501、制御部502、ページ生成部503、データアクセス部504、フォーム情報管理部505、セッション管理部506、およびフォーム保存部507を有する。
送受信部501は、クライアント端末101のWebブラウザ301やクラウドプラットフォームサービス102、文書生成サービス304との通信を処理する。制御部502は、受け付けたリクエストに従って処理を実行する。ページ生成部503は、Webブラウザ301にレスポンスを返すためのWebページを生成する。データアクセス部504は、クラウドプラットフォームサービス102にアクセスして業務データを取得する。フォーム情報管理部505は、フォーム情報テーブルを管理する。セッション管理部506は、Webブラウザ301のセッション情報を管理する。フォーム保存部507は、フォームファイルの作成および保存を行う。Webサーバ303は、これら各構成要素の協調により、後述する処理を実行する。
図6は、文書生成サーバ103の文書生成サービス304上で動作するソフトウェアモジュールの構成例を示す図である。各ソフトウェアモジュールは図2で示したHDD204に記憶されており、前述したようにCPU201によってRAM203にロードされ実行される。
文書生成サービス304は、要求受信部601、制御部602、フォーム管理部603、文書生成部604、文書送信部605を有する。要求受信部601は、Webサーバ303からの文書生成リクエストを受け付ける。制御部602は、受け付けたリクエストに従って処理を実行する。フォーム管理部603は、フォームデータを管理する。文書生成部604は、Webサーバ303から送信された業務データとフォームを使用してオーバレイ処理を行い、文書データを生成する。文書送信部605は、生成された文書データをWebサーバ303またはクライアント端末101に送信する。
[データ構成例]
図7は、クライアント端末101のWebブラウザ301から、クラウドプラットフォームサービス102にアクセスして業務データを表示した場合の業務画面701の例である。なお、図7は、ユーザがクラウドプラットフォームサービス102にログイン済の状態である。業務画面701は、あるレコードの詳細情報702や商品703が表示されている。図7では、商談に関する業務画面の商談レコードの詳細を表示している。また、文書生成サーバ103へリダイレクトを行うための設定がなされたカスタムボタン704が表示される。カスタムボタン704は、ボタン押下時の動作や、どの画面に表示するか、等を任意に設定可能であり、ユーザ(管理者)によって画面に配置される。
図7は、クライアント端末101のWebブラウザ301から、クラウドプラットフォームサービス102にアクセスして業務データを表示した場合の業務画面701の例である。なお、図7は、ユーザがクラウドプラットフォームサービス102にログイン済の状態である。業務画面701は、あるレコードの詳細情報702や商品703が表示されている。図7では、商談に関する業務画面の商談レコードの詳細を表示している。また、文書生成サーバ103へリダイレクトを行うための設定がなされたカスタムボタン704が表示される。カスタムボタン704は、ボタン押下時の動作や、どの画面に表示するか、等を任意に設定可能であり、ユーザ(管理者)によって画面に配置される。
図8は、クラウドプラットフォームサービス102のデータ管理部406が保持する業務データのうち、商談に関するデータのテーブル構造例を示す図である。業務データはデータテーブル800で管理され、商談テーブル801および商品テーブル811によって構成される。
商談テーブル801は、レコードの識別子であるレコードID802、レコードをユーザが容易に区別するために任意の名前を設定可能な商談名803を含む。なお、商談テーブル801の構成はこれに限定するものではなく、他の項目を含んで構成されても良い。
商品テーブル811は、商談レコードID812、商品テーブルのレコードの識別子であるレコードID813、品名814、数量815、価格816を含む。また、商談レコードID812は、商談テーブルのレコードID802とリレーションしている。なお、商品テーブル811の構成はこれに限定するものではなく、他の項目を含んで構成されても良い。
図9は、クラウドプラットフォームサービス102の設定管理部407で保持するカスタムボタンの定義情報の例を示す図である。図9では、カスタムボタンが「商談」画面と「顧客」画面に定義されており、「商談」画面に表示するカスタムボタンの設定情報には、ボタン表示名903、および、文書生成サーバ103へリダイレクトを行うためのパラメータ情報が格納されている。文書生成サーバURI904は、文書生成サーバ103のURIを「http://〜」の形式で指定したパラメータである。セッションID905は、ログインしたユーザのセッションIDを取得して文字列「sid=<セッションID>」をURLパラメータに付加する設定である。このパラメータにおいて、<>で挟まれる位置に、具体的な値が設定される。CPSURL906は、文書生成サーバ103がクラウドプラットフォームサービス102にアクセスするためのURLを文字列「srv_url=<クラウドプラットフォームサービスURL>」としてURLパラメータに付加する設定である。
クラウドプラットフォームサービス102にアクセスするためのURLは組織毎に固有であり、ユーザ認証時に、制御部502が、ユーザが所属する組織に応じたURLを取得してセッション管理部404に保存する。組織ID907は、ログインしたユーザの組織IDを取得して文字列「orgid=<組織ID>」をURLパラメータに付加する設定である。レコードID908は、画面に表示した商談レコードのレコードID1202を取得して文字列「recid=<レコードID>」をURLパラメータに付加する設定である。なお、カスタムボタンテーブル901には更なるカスタムボタンが定義されてよく、また、設定パラメータの項目も追加されてよい。
図10は、Webサーバ303のフォーム情報管理部505が保持するフォーム情報テーブルのテーブル構造の例を示す図である。フォーム情報テーブル1001のフォーム情報レコードは、組織ID1003、表示名1004、フォームファイル名1005、クエリコマンド1006、フォーム情報107を含む。組織ID1003は、レコードの所有者である組織を識別するための識別子である。表示名1004は、フォーム選択画面に表示する名称である。フォームファイル名1005は、文書生成サービス304のフォーム管理部603で管理されているフォームのファイル名である。クエリコマンド1006は、クラウドプラットフォームサービス102からデータを取得するためのクエリが記述されている。フォーム情報107は、フォームファイル内に定義されている固定的なデータに関する情報である。レコードの項目はこれに限定するものではなく、さらに追加してもよい。
図11は、図1の文書生成システムにおけるクライアント端末101のWebブラウザ301で表示する画面のフローの例を示す図である。なお、以降の図では、クラウドプラットフォームサービスを「CPS」と略して表記する。
業務画面1101は、クラウドプラットフォームサービス102が作成し、クライアント端末101に返す画面であり、例えば、図7の業務画面701が表示される。文書生成ボタン1102は、クラウドプラットフォームサービス102へ文書生成リクエストを発行するためのボタンである。クラウドプラットフォームサービス102は文書生成ボタン1102が押下されると、文書生成サーバ103へリダイレクトするURLを返却する。
クライアント端末101のWebブラウザ301は、リダイレクトするURLを受け付けると、このURLに従って文書生成サーバ103へリダイレクトする。リダイレクトでリクエストを受けた文書生成サーバ103は、フォーム選択画面1103をクライアント端末101のWebブラウザ301に返す。フォーム選択画面1103は、文書生成に使用するフォームを選択するフォーム選択1104を備える。
また、クライアント端末101のWebブラウザ301は、ユーザから文書作成ボタン1105の選択を受け付けると、フォーム選択1104の選択結果を文書生成サーバ103に送信する。文書生成サーバ103は、クライアント端末101から選択結果の情報を受け付けると、業務画面1101の業務データをクラウドプラットフォームサービス102から取得する。データ取得中画面1106は、文書生成サーバ103がクラウドプラットフォームサービス102から業務データを取得中の間、クライアント端末101のWebブラウザ301に表示される。文書生成サーバ103がクラウドプラットフォームサービス102からの業務データ取得が完了すると、文書生成サーバ103は、取得したデータを確認可能なデータ確認画面1107をクライアント端末101のWebブラウザ301に返す。
クライアント端末101のWebブラウザ301は、ユーザから作成ボタン1108の選択を受け付けると、文書生成サーバ103に文書生成リクエストを送信する。文書生成サーバ103は、クライアント端末101から文書生成リクエストを受けると、選択されたフォームとクラウドプラットフォームサービス102から取得した業務データを使用して文書生成処理を行う。文書生成処理の間、クライアント端末101のWebブラウザ301は、作成中画面1109を表示する。クライアント端末101のWebブラウザ301は、文書の作成が完了すると、完了画面1110を表示する。
[処理シーケンス]
図12は、本実施形態に係る文書生成システムが行う処理の流れを示している。なお、ユーザはログイン画面(不図示)にてクラウドプラットフォームサービス102にログイン済とし、Webブラウザ301には図7の業務画面701が表示されており、カスタムボタン704は、予め図9の設定がなされているものとする。本処理は、各処理主体のCPUが、ROM等の記憶部に記憶されたプログラムを読み出して実行することにより、実現されるものとする。また、処理フローに伴う画面遷移は、図11の流れに対応する。
図12は、本実施形態に係る文書生成システムが行う処理の流れを示している。なお、ユーザはログイン画面(不図示)にてクラウドプラットフォームサービス102にログイン済とし、Webブラウザ301には図7の業務画面701が表示されており、カスタムボタン704は、予め図9の設定がなされているものとする。本処理は、各処理主体のCPUが、ROM等の記憶部に記憶されたプログラムを読み出して実行することにより、実現されるものとする。また、処理フローに伴う画面遷移は、図11の流れに対応する。
ユーザによりクライアント端末101のWebブラウザ301に表示された業務画面701のカスタムボタン704が押下されると、S1201にて、その旨がWebブラウザ301からクラウドプラットフォームサービス102へ通知される。S1202にて、クラウドプラットフォームサービス102は、リダイレクトURL作成処理を行う。ここで、制御部402は、カスタムボタンに設定された文書生成サーバURI904、セッションID905、CPSURL906、組織ID907、およびレコードID908を取得し、これら取得したパラメータからリダイレクトURLを生成する。そして、クラウドプラットフォームサービス102は、リダイレクトさせるためのレスポンスをWebブラウザ301に返す。
S1203にて、Webブラウザ301は、クラウドプラットフォームサービス102から返されたレスポンスを受信すると、セッションID905、CPSURL906、組織ID907、レコードID908を文書生成サーバ103に送信する。S1204にて、Webサーバ303は、Webブラウザ301からのリダイレクトを受信すると、まず制御部502は、セッションID905、CPSURL906、組織ID907、およびレコードID908をセッション管理部506に保存する。次に、制御部502は、フォーム情報レコード1002に含まれるフォームの表示名1004のリストをフォーム情報管理部505から取得し、フォームの表示名1004のリストからフォーム選択画面1103を作成し、クライアント端末101に送る。
S1205にて、Webブラウザ301は、ユーザによりフォーム選択画面1103のフォーム選択1104が選択され、文書作成ボタン1105が押下されると、Webサーバ303に対してフォーム選択1104とともに文書生成リクエストを送信する。
S1206にて、Webサーバ303は、文書生成リクエストを受信すると、フォーム選択1104で指定されたフォームに一致するクエリコマンド1006を発行し、クラウドプラットフォームサービス102にデータ取得リクエストを行う。その際、クラウドプラットフォームサービス102のURLおよび取得データの内容は、セッション管理部506に保存されているCPSURL906および組織ID907、レコードID908をそれぞれ使用する。次に、S1207にて、文書生成サーバ103は、データ取得中画面1106を作成し、Webブラウザ301に送る。
S1208にて、Webブラウザ301は、定期的にデータ取得完了の確認リクエストを文書生成サーバ103に送信する。文書生成サーバ103のWebサーバ303は、クラウドプラットフォームサービス102からデータ取得のレスポンスが返るまでは、S1207と同様のデータ取得中画面1106をWebブラウザ301に送る。次に、クラウドプラットフォームサービス102は、データ取得のレスポンスを文書生成サーバ103に返す。Webサーバ303の制御部502は、取得データをセッション管理部506へ保存する。その後、Webブラウザ301からデータ取得完了の確認リクエストが送られてくると、S1209にて、Webサーバ303は、クラウドプラットフォームサービス102から取得したデータを用いてデータ確認画面1107を生成し、Webブラウザ301へ返す。
S1210にて、Webブラウザ301は、Webサーバ3030から返されたデータ確認画面1107上にて、ユーザにより作成ボタン1108が押下されると、Webサーバ303に対して、文書生成リクエストが送信される。
Webサーバ303は、文書生成リクエストを受信すると、S1211にて、その旨を文書生成サーバ103に通知する。そして、S1212にて、文書生成サーバ103は、図14を用いて後述する文書生成処理を行う。
図13は、本発明におけるフォームファイルの一例を示す図である。図13に示すフォームファイル1301には、クラウドプラットフォームサービス102から取得したデータ(以降、入力データ)をセットする(埋め込む)フィールド図形1302や、入力データとは無関係の固定的な図形であるフォーム図形1303が定義される。フィールド図形1302は、入力データを指定の形式で書式化して出す機能を備える。セットされた入力データを何桁まで出力するかの設定や、フォントサイズや文字色、太字や下線等見た目の制御をどのように行うかなどの設定を定義する。フォーム図形1303は、文書上の固定的な情報である。表のラベル文字列、企業ロゴなどの画像ファイルといったものをフォーム図形として定義する。
フォームファイル1301には、図13(a)に示すようにフィールド図形1302とフォーム図形1303がともに定義されているものと、図13(b)に示すようにフォーム図形のみ定義されているものが存在する。図13(b)のようなフォームファイルの例としては、約款などが挙げられる。保険帳票の約款は、可変の入力データがセットされる保険帳票とひとまとまり(1つの文書)にする必要があるが、約款自体のページには可変データがないためフォーム図形のみのフォームファイルとなる。
図14は、本発明における文書生成サービス304の文書生成処理を示すフローチャートである。本処理フローは、文書生成サーバ103のCPUが、HDD等の記憶部に記憶されたプログラムを読み出して実行することにより、実現される。
S1401にて、文書生成部604は、フォーム管理部603から図13に示すようなフォームファイルを読み込み、そのフォームファイルの解析を行う。解析を行うことで、文書生成部604は、該当のフォームファイル内に定義されたフィールド図形1302およびフォーム図形1303の情報を保持する。S1402にて、文書生成部604は、図12のS1206にてクエリコマンド1006を発行してクラウドプラットフォームサービス102から取得した入力データの解析を行う。
S1403にて、文書生成部604は、帳票のレイアウト処理を行う。文書生成部604は、実際のページ出力処理(たとえば、PDFファイル生成処理)を行う前に、解析したフォームファイル及び入力データの情報を使用して、各ページのレイアウトを決定する。レイアウト処理では、入力データが、各ページに何レコードまで入るか、各入力データの出力位置などを決定する。S1404〜S1414はページごとの処理のループを示す。
S1405にて、文書生成部604は、ページ出力フラグを「OFF」で初期化する。ページ出力フラグはページ毎の出力制御を行うためのフラグであり、文書生成部604により管理される。S1406にて、文書生成部604は、対象のフォームファイル1301に、フィールド図形1302が1つ以上存在するか否かを判定する。判定にはS1401での解析結果が使用される。フィールド図形1302が1つも存在しないと判定された場合には(S1406にてNO)、S1412の処理に移る。すなわち、入力データを埋め込む領域がないページが該当する。一方、フィールド図形1302が1つ以上存在すると判定された場合(S1406にてYES)、S1407〜S1410において、文書生成部604は、フィールド図形ごとの処理を行う。
S1408にて、文書生成部604は、S1403のレイアウト処理にてフィールド図形1302に入力データがセットされたか否かを判定する。入力データが空(取得できない)場合には、該当のフィールド図形にデータがセットされない。このため、フィールド図形毎にデータがセットされたか否かの確認を行う。フィールド図形1302に入力データがセットされたと判定された場合(S1408にてYES)、S1409にて、文書生成部604は、ページ出力フラグを「ON」にする。フィールド図形1302に入力データがセットされていないと判定された場合(S1408にてNO)、もしくは、S1409の処理の後、S1410の処理に移る。
S1407〜S1410の処理によって、フォームファイル1301に定義されたすべてのフィールド図形1302に対して入力データがセットされたか否かの確認が行われる。この結果、すべてのフィールド図形のデータがセットされていない場合のみ、ページ出力フラグが「OFF」となる。
S1411にて、文書生成部604は、ページ出力フラグが「ON」か否かを判定する。ページ出力フラグが「ON」と判定された場合には(S1411にてYES)、S1412にて、文書生成部604は、該当ページを出力する。一方、ページ出力フラグが「OFF」と判定された場合には(S1411にてNO)、S1413にて文書生成部604は、該当ページの出力をスキップして、そのページの出力を行わない。
S1414まで処理すると、S1404に戻り、ページごとの処理を続行する。全てのページに対して処理を行ったら本処理フローを終了する。
以上、フォームファイル1301にフォーム図形1303のみが定義されていた場合には入力データに関係なくページ出力を行い、それ以外の場合には入力データがフィールド図形1302にセットされたか否かによりページ出力の判定を行う。これにより、入力データが存在しない場合でもユーザの所望の帳票を得ることが可能になる。なお、本実施形態はクラウド環境での文書生成であるが、イントラネットにおける文書生成システムにおいても、文書生成部自体の構成については同様であり、同様の効果を得ることが出来る。
<第二の実施形態>
本実施形態では、入力データが切り替わった際に出力される、ブレイクヘッダもしくはブレイクフッタと呼ばれるレイヤーがフォームファイルのテンプレートに設定されていた場合の実施形態について述べる。ブレイクヘッダレイヤー(もしくはブレイクフッタレイヤー)は、例えば11月の明細から12月の明細のデータに切り替わった際に表示される。このレイヤー定義がなされたテンプレートへの入力データが取得できない場合の動作について処理の詳細を説明する。なお、入力データが切り替わる場合とは、月単位のデータに限定するものではなく、他の処理単位でデータが切り替わる時点であってもよい。
本実施形態では、入力データが切り替わった際に出力される、ブレイクヘッダもしくはブレイクフッタと呼ばれるレイヤーがフォームファイルのテンプレートに設定されていた場合の実施形態について述べる。ブレイクヘッダレイヤー(もしくはブレイクフッタレイヤー)は、例えば11月の明細から12月の明細のデータに切り替わった際に表示される。このレイヤー定義がなされたテンプレートへの入力データが取得できない場合の動作について処理の詳細を説明する。なお、入力データが切り替わる場合とは、月単位のデータに限定するものではなく、他の処理単位でデータが切り替わる時点であってもよい。
図15は、ブレイクヘッダレイヤーが定義されたテンプレートの一例である。フォームファイル1301には、ブレイクヘッダレイヤー1501および明細レイヤー1502が定義されている。ブレイクヘッダレイヤー1501は、入力データが切り替わったタイミングで出力されるレイヤーである。その際には、ブレイクヘッダレイヤー1501上に定義されているフィールド図形1503やその他のフォーム図形が表示される。つまり、ブレイクヘッダレイヤー1501もフォーム図形を含み、明細レイヤー1502と異なる層として表示される。
明細レイヤー1502は、入力データの切り替わりに関係なく常に表示されるレイヤーである。表示される際には、明細レイヤー1502上に存在するフィールド図形1504やその他のフォーム図形が表示される。ブレイクヘッダレイヤー1501の作成およびレイヤー上へのフィールド図形の配置操作は、テンプレートエディタ(不図示)で行う。また、フィールド図形1302やフォーム図形1303は、ブレイクヘッダレイヤー1501や明細レイヤー1502ごとに管理されテンプレートの一部として保存される。ブレイクヘッダレイヤー1501と明細レイヤー1502は、同時に(同じページとして)表示することも可能であり、別のページとして表示することも可能である。また、同じページに表示される際には、重畳して表示されてもよいし、重畳されなくてもよい。また、明細レイヤー、ブレイクヘッダレイヤー、およびブレイクヘッダレイヤーがすべて同じページ表示されてもよい。また、本実施形態は複数のレイヤーとして3つを例に挙げているが、これに限定するものではなく、他の種類のレイヤーを含んでもよい。
図16は、各レイヤーを同時に表示するか否かを設定するユーザインタフェースの一例である。設定ダイアログ1601のチェックボックス1602をチェックすることによって、ブレイクヘッダレイヤー1501が明細レイヤー1502と別のページとして出力される。設定ダイアログ1601は、テンプレートエディタ(不図示)のメニューから呼び出されるものとする。設定ダイアログ1601で設定した内容は、フォームファイル1301の一部としてハードディスク等の記憶部に保存される。図15(a)は、ブレイクヘッダレイヤー1501と明細レイヤー1502を同時に表示することを想定したテンプレートデザインになっている。一方、図15(b)は、各レイヤーを別ページとして出力することを想定したテンプレートデザインである。
図17は、本実施形態で想定する入力データの一例である。ここでは、CSV(Comma Separated Values)の形式で示しているが、これに限定するものではない。入力データ1701の1行目は、各データがどのフィールド図形に対応するか(埋め込まれるか)を示す識別情報である(以下、見出し行1702と称す)。2行目以降、実データ1703が続いている。1つの実データ(1つの行)において、レコード1からレコード3までの3つのフィールド図形に対応するデータが示されている。ここでは、レコード1に対応する実データが存在していない(空である)例を示している。
[処理フロー]
図18は、本実施形態に係る文書生成サービス304の文書生成処理を示すフローチャートである。図14と異なる部分のみ説明し、重複する部分は第一の実施形態と同様である。本処理フローは、文書生成サーバ103のCPUが、HDD等の記憶部に記憶されたプログラムを読み出して実行することにより、実現される。
図18は、本実施形態に係る文書生成サービス304の文書生成処理を示すフローチャートである。図14と異なる部分のみ説明し、重複する部分は第一の実施形態と同様である。本処理フローは、文書生成サーバ103のCPUが、HDD等の記憶部に記憶されたプログラムを読み出して実行することにより、実現される。
S1401にて、文書生成部604は、フォーム管理部603からフォームファイル1301を読み込み、そのフォームファイル1301の解析を行う。文書生成部604は、解析を行うことで、フォームファイル1301内に定義されたフィールド図形1302およびフォーム図形1303の情報を保持する。この際、文書生成部604は、フィールド図形1302およびフォーム図形1303の情報をブレイクヘッダレイヤー1501および明細レイヤー1502毎に保持する。また、文書生成部604は、フォームファイル1301に含まれる、各レイヤーを同一ページに出力するか否かのフラグ情報も取得する。
S1403にて、文書生成部604は、帳票のレイアウト処理を行う。第一の実施形態で述べた処理に加え、文書生成部604は、各ページのレイアウト処理中に、そのページで出力されるレイヤーが何かを判別し、その情報を保持する。例えば、入力データが切り替わった際にブレイクヘッダレイヤー1501が出力される場合、そのページのページ番号とともにブレイクヘッダレイヤーが出力される旨を情報として保持する。文書生成部604は、これをレイアウトするすべてのページに対して行う。この結果、文書生成部604では、レイアウト完了後、各ページでどのレイヤーが出力されるかの判別が可能となる。
S1801にて、文書生成部604は、処理中のフォームファイルが、ブレイクヘッダレイヤー1501と明細レイヤー1502を同一ページに出力する設定になっているか否かを判定する。この判定は、S1401で取得した各レイヤーを同一ページに出力するか否かのフラグ情報を元に行われる。同一ページに出力する設定になっていると判定された場合には(S1801にてYES)、S1802に進む。そうでない場合には(S1801にてNO)S1806に進む。
文書生成部604は、対象の全フィールド図形に対してS1802〜S1805の処理を繰り返し行う。対象となるフィールド図形は、ブレイクヘッダレイヤー1501および明細レイヤー1502の両方に含まれるもの全てである。
S1803にて、文書生成部604は、対象のフィールド図形(ブレイクヘッダレイヤー1501もしくは明細レイヤー1502上のフィールド図形)に入力データが設定されるか否かを判定する。入力データが設定されていないと判定された場合には(S1803にてNO)、S1805に進む。一方、入力データが設定されていると判定された場合には(S1803にてYES)、S1804にて、文書生成部604は、ページ出力フラグを「ON」にする。その後、S1805へ進む。以降、フィールド図形毎にS1802〜S1805の処理を繰り返す。S1802〜S1805の繰り返し処理が終了したら、S1411へ進む。
S1806にて、文書生成部604は、処理中のページに明細レイヤー1502が出力されるか否かを判定する。明細レイヤー1502が出力されると判定された場合には(S1806にてYES)、文書生成部604は、対象の全フィールド図形に対してS1807〜S1810の処理を繰り返し行う。対象となるフィールド図形は、明細レイヤー1502に含まれるもの全てである。
S1808にて、文書生成部604は、対象のフィールド図形に入力データが設定されるか否かを判定する。入力データが設定されていないと判定された場合には(S1808にてNO)、S1810に進む。一方、入力データが設定されていると判定された場合には(S1808にてYES)、S1809にて、文書生成部604は、ページ出力フラグを「ON」にする。その後、S1810へ進む。以降、フィールド図形毎にS1807〜S1810の処理を繰り返す。S1807〜S1810の繰り返し処理が終了したら、S1411へ進む。
一方、明細レイヤー1502が出力されないと判定された場合には(S1806にてNO)、文書生成部604は、対象の全フィールド図形に対してS1811〜S1814の処理を繰り返し行う。対象となるフィールド図形は、ブレイクヘッダレイヤー1501に含まれるもの全てである。
S1812にて、文書生成部604は、対象のフィールド図形に入力データが設定されるか否かを判定する。入力データが設定されていないと判定された場合には(S1812にてNO)、S1814に進む。一方、入力データが設定されていると判定された場合には(S1812にてYES)、S1813にて、文書生成部604は、ページ出力フラグを「ON」にする。その後、S1814へ進む。以降、フィールド図形毎にS1811〜S1814の処理を繰り返す。S1811〜S1814の繰り返し処理が完了したら、S1411へ進む。
なお、ブレイクフッタについても同様の処理を行う。本実施形態により、ブレイクヘッダもしくはブレイクフッタと呼ばれるレイヤーが設定されているフォームファイルの場合でも、入力データが存在しない場合にユーザの所望の帳票を得ることが可能になる。図23は本実施形態における文書生成処理のパターンをまとめた表である。
<第三の実施形態>
本実施形態では、ユーザが明示的にページの出力を制御する場合の実施形態について述べる。フォームファイル1301上に、必ず表示したいフォーム図形を定義しており、かつ、オプションとして表示されるフィールド図形も併せて定義している場合がある。例えば、保険の約款では、どの契約でも必ず該当する事項については約款の文字列をフォーム図形で作成し、オプション契約に該当する事項の文字列についてはフィールド図形で作成することが考えられる。オプション契約についての文字列(入力データ)は空になる場合があるため、このケースでは第一、第二の実施形態で示した方法では約款を表示できない。本実施形態では、そのようなケースを鑑み、ユーザが明示的にページまたはフォーム図形にページ出力の制御フラグを設定することでページ出力を制御する実施形態について述べる。
本実施形態では、ユーザが明示的にページの出力を制御する場合の実施形態について述べる。フォームファイル1301上に、必ず表示したいフォーム図形を定義しており、かつ、オプションとして表示されるフィールド図形も併せて定義している場合がある。例えば、保険の約款では、どの契約でも必ず該当する事項については約款の文字列をフォーム図形で作成し、オプション契約に該当する事項の文字列についてはフィールド図形で作成することが考えられる。オプション契約についての文字列(入力データ)は空になる場合があるため、このケースでは第一、第二の実施形態で示した方法では約款を表示できない。本実施形態では、そのようなケースを鑑み、ユーザが明示的にページまたはフォーム図形にページ出力の制御フラグを設定することでページ出力を制御する実施形態について述べる。
ページ出力を制御するフラグについては2種類を想定する。各ページの出力を直接制御するフラグを「レイヤー常時表示フラグ」と呼ぶ。レイヤー常時表示フラグが「ON」の場合は、そのレイヤーを含むページは常に表示される。「OFF」の場合は上述した実施形態の処理に従う。レイヤー常時表示フラグは、フォームファイルエディタ(不図示)によって、フォームファイル1301に設定される。設定対象は、ブレイクヘッダレイヤー1501や明細レイヤー1502である。レイヤー毎に出力の制御が行える。また、各ページの出力をその存在によって間接的に制御するフラグを「フォーム図形常時表示フラグ」と呼ぶ。このフラグの設定対象は、各フォーム図形である。このフラグが「ON」の場合、そのフォーム図形が存在するレイヤー(を含むページ)が出力される。フォーム図形常時表示フラグについても、フォームファイルエディタ(不図示)によってフォームファイル1301に設定される。
図19は、本実施形態に係る文書生成サービス304の文書生成処理を示すフローチャートである。図18と異なる部分のみ説明し、重複する部分は第二の実施形態と同様である。本処理フローは、文書生成サーバ103のCPUが、HDD等の記憶部に記憶されたプログラムを読み出して実行することにより、実現される。
S1401にて、文書生成部604は、フォーム管理部603からフォームファイル1301を読み込み、そのフォームファイル1301の解析を行う。第二の実施形態の処理に加え、各レイヤーのレイヤー常時表示フラグと、全フォーム図形のフォーム図形常時表示フラグを取得する。
S1901にて、文書生成部604は、S1401で読み込んだ各レイヤーのレイヤー常時表示フラグ情報を元に、該当ページを常時出力すべきか否かを判定する。文書生成部604は、該当ページで表示すべき各レイヤーの、レイヤー常時表示フラグを全てチェックし、1つでもONのものがあれば常時出力すべきと判定する。
該当ページを常時出力すべきと判定された場合には(S1901にてYES)、S1412に移り、文書生成部604は、該当ページの出力を行う。一方、該当ページを常時出力すべきでないと判定された場合には(S1901にてNO)、S1902に移る。
S1902にて、文書生成部604は、S1401で読み込んだフォーム図形常時表示フラグ情報を元に、該当ページを常時出力すべきか否かを判定する。文書生成部604は、該当ページで表示すべき各レイヤー上に定義されたフォーム図形のフォーム図形常時表示フラグを全てチェックし、1つでも「ON」のものがあれば常時出力すべきと判定する。
該当ページを常時出力すべきと判定された場合には(S1902にてYES)、S1412に移り、文書生成部604は、該当ページの出力を行う。一方、該当ページを常時出力すべきでないと判定された場合には(S1902にてNO)、S1405に移り、文書生成部604は、上記の実施形態で述べた自動的なページ出力制御処理を継続する。
以上、本実施形態により、入力データが省略される場合にページ出力を自動的に抑制する場合でも、ユーザが明示的にページの出力を制御することが可能になる。
<第四の実施形態>
本実施形態では、フォームファイル1301上に定義された複数のテーブル(表)への入力データが空となる場合について述べる。
本実施形態では、フォームファイル1301上に定義された複数のテーブル(表)への入力データが空となる場合について述べる。
図20は、複数のテーブルを定義したフォームファイルを使用して出力した帳票イメージの一例である。この帳票は、企業内で使用される各種機器の管理帳票であり、部署ごとのメンバ及び部署が管理する機器をまとめたものである。ここでは4ページから構成されている例を示している。メインテーブル2001には、各部署のメンバが一覧される。サブテーブル2002には、部署で管理する機器が一覧される。また、各ページにはページ番号2003が出力される。メインテーブル2001は、フォームファイルにて、1ページ当たり最大4つのレコードを表示するように定義され、また、サブテーブル2002は、1ページ当たり最大7つのレコードを表示するように定義されている。この最大値を超えるレコードがある場合には、次のページに続けて表示される。また、ここでは、メインテーブルとサブテーブルには主従関係があるものとし、メインテーブルを主とする。
「開発室1」に関するデータが1ページ目および2ページ目に出力され、「開発室2」のデータが4ページ目に出力されている。3ページ目のメインテーブル2001には何も出力されていない。つまり、3ページ目はいずれの部署にも対応付けられていないレコードが表示されている例を示している。組織変更で部署の構成が変化した場合等で、企業システムのデータベースからメインテーブルのデータが削除されてしまうケースでこのような状況が生じる。本来、「機器11」等は別の部署の管理機器として紐付けられるはずだが、システム変更が間に合っていない場合も考えられる。このようなタイミングで帳票出力を行うと、本来ユーザとしては出力されてほしくない3ページ目が出力されてしまうという問題がある。本実施形態では、上記問題を解決することを目的とする。
[処理フロー]
図21は、本発明における文書生成サービス304の文書生成処理を示すフローチャートである。図14と異なる部分のみ説明し、重複する部分は第一の実施形態と同様である。
図21は、本発明における文書生成サービス304の文書生成処理を示すフローチャートである。図14と異なる部分のみ説明し、重複する部分は第一の実施形態と同様である。
S1401にて、文書生成部604は、フォーム管理部603からフォームファイル1301を読み込み、そのフォームファイル1301の解析を行う。上述した実施形態の処理に加え、文書生成部604は、フォームファイル1301に定義された全てのメインテーブル、サブテーブルの読み込みと、各テーブルで表示するフィールド図形の情報を取得する。そして、文書生成部604は、テーブルごとの情報とフィールド図形の情報を紐付けて管理する。
S2101にて、文書生成部604は、読み込んだフォームファイル及び入力データの情報から、関連情報の取得を行う。なお、文書生成システムにおいてどのように各テーブルのデータの関連性を表現方法については、いずれの方法を用いてもよく、ここでの説明は省略する。同様に、関連情報の取得処理の内容についても特に限定するものではない。
本実施形態では、入力データが設定されるメインテーブルおよびサブテーブルのフィールド図形に対して、フォームファイルエディタ(不図示)で関連付けの設定を明示的に行うことでデータの関連性を表現することとする。つまり、図20の例の場合、部署のメンバと部署の機器とがそれぞれ、メインおよびサブとして関連付けられている。
S2101にて文書生成部604は、フォームファイル1301の関連付け設定から、各テーブルがメインかサブかの情報を取得する。さらに文書生成部604は、入力データの1行目に含まれる見出し情報から、メインテーブルおよびサブテーブルのフィールド図形に設定されるのが入力データのどのカラムなのかの情報を取得する。
図22は、メインテーブル及びサブテーブルに入力される入力データの一例である。入力データは、メインテーブルへの入力データ2201とサブテーブルへの入力データ2202とを含む。データの関連性としては、メインテーブルの入力データ2201の「ID」カラム2203が、サブテーブルの入力データ2202の「AccountID」カラム2204に対応している。この両カラムのデータが設定される、メインテーブルの「ID」フィールド図形と、サブテーブルの「AccountID」フィールド図形に関連付けて設定されているものとする。
S2102にて、文書生成部604は、対象のページが、初回のページである、もしくは、サブテーブルのデータ出力が完了した、のいずれかであるか否かを判定する。S2101で取得した関連情報およびレイアウト処理(S1403)によって、どのページでサブテーブルの出力が完了するか否かは事前に判定可能となっている。すなわち、1ページ当たりの配置可能なレコード数および取得されたレコード数により、出力が完了するページが特定できる。
対象のページが、初回のページもしくはサブテーブル出力完了でない場合(S2102にてNO)、S2104に移る。一方、対象のページが初回のページもしくはサブテーブル出力完了である場合には(S2102にてYES)、S2103にて、文書生成部604は、サブデータ出力フラグを「ON」で初期化する。サブデータ出力フラグは、サブテーブルが含まれるページの出力を制御するフラグであり、文書生成部604が本実施形態に係る処理の実行中にメモリ上に保持する。文書生成部604は、サブデータ出力フラグが「ON」であれば、現在処理対象のページを出力し、「OFF」であれば出力しない。OFFとなる場合とは、現在処理中のページより前に、メインテーブルが出力されていて、かつそのメインテーブルに入力されるデータがなかった場合である。この場合、サブテーブルのデータが空でなかったとしても、メインテーブルのデータが空のため該当ページ自体を出力しないように制御される。なお、メインテーブルのデータが空でなく、サブテーブルのデータが空である場合には、そのページは出力されるように制御する。
S2104にて、文書生成部604は、対象ページにメインテーブルが存在するか否かを判定する。メインテーブルが存在しない判定された場合には(S2104にてNO)、S2111へ移る。一方、メインテーブルが存在すると判定された場合には(S2104にてYES)、S2105にて、文書生成部604は、対象ページにサブテーブルが1つ以上存在するか否かを判定する。
サブテーブルが1つも存在しないと判定された場合には(S2105にてNO)、S2108に移る。一方、サブテーブルが1つ以上存在すると判定された場合には(S2105にてYES)、S2106にて、文書生成部604は、メインテーブルに入力データが設定されているか否かを判定する。
メインテーブルに入力データが設定されていると判定された場合には(S2106にてYES)、S2107にて、文書生成部604は、対象ページの出力を行う。その後、S1414へ進む。
一方、メインテーブルに入力データが設定されていないと判定された場合には(S2106にてNO)、S2110にて、文書生成部604は、対象ページの出力をスキップする。すなわち、その対象ページは出力されない。その後、S1414へ進む。
S2108にて、文書生成部604は、メインテーブルに入力データが設定されているか否かを判定する。メインテーブルに入力データが設定されていると判定された場合には(S2108にてYES)、S2107にて、文書生成部604は、対象ページの出力を行う。その後、S1414へ進む。
一方、メインテーブルに入力データが設定されていないと判定された場合には(S2108にてNO)、S2109にて、文書生成部604は、サブデータ出力フラグをOFFにセットし、S2110にて現在対象のページの出力をスキップする。その後、S1414へ進む。
S2111にて、文書生成部604は、対象ページにサブテーブルが存在するか否かを判定する。サブテーブルが存在しない判定された場合には(S2111にてNO)、文書生成部604は、データに関連性がないと判断し、S2107にて、対象ページを出力する。その後、S1414へ進む。
一方、サブテーブルが存在すると判定された場合には(S2111にてYES)、S2112にて、文書生成部604は、対象ページに存在する全てのサブテーブルに入力されるデータが空か否かを判定する。全てのサブテーブルのデータが空と判定された場合には(S2112にてYES)、S2111にて、文書生成部604は、対象ページの出力をスキップする。その後、S1414へ進む。
一方、1つでもサブテーブルのデータが存在すると判定された場合には(S2112にてNO)、S2113にて、文書生成部604は、サブデータ出力フラグがONか否かを判定する。サブデータ出力フラグがONだった場合には(S2113にてYES)、S2107にて、文書生成部604は、対象ページの出力を行う。その後、S1414へ進む。
一方、サブデータ出力フラグがOFFだった場合には(S2113にてNO)、S2110にて、文書生成部604は、対象ページの出力をスキップする。その後、S1414へ進む。
以上、本実施形態により、データおよびテーブル間に関連性があるケースにおいても、入力データが存在しない場合にユーザの所望の帳票を得ることが可能になる。
<その他の実施形態>
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
101…クライアント装置、102…クラウドプラットフォームサービス、103…文書生成サーバ、301…Webブラウザ、303…Webサーバ、304…文書生成サービス、502…制御部、503…ページ生成部
Claims (9)
- 文書生成システムであって、
クライアントからの要求に応じて文書データを生成する生成手段と、
前記生成手段が文書データを作成する際に用いる、ページごとのフォームの情報と、ページに埋め込まれるデータとを管理する管理手段と
を備え、
前記生成手段は、前記文書データを構成するページのうち、ページに対応するフォームに前記管理手段にて管理するデータを埋め込む領域であるフィールド図形が含まれ、かつ、当該フィールド図形に埋め込むためのデータが前記管理手段にて管理されていないページは出力しないことを特徴とする文書生成システム。 - 前記生成手段は、前記文書データを構成するページのうち、
ページに対応するフォームに、前記フィールド図形を含まない場合には、当該ページを出力し、
ページに対応するフォームに、前記フィールド図形を含み、かつ、当該フィールド図形に埋め込むためのデータが前記管理手段にて管理されている場合には、当該ページを出力する
ことを特徴とする請求項1に記載の文書生成システム。 - 前記文書データを構成するページは、複数のレイヤーから構成され、
前記生成手段は、前記複数のレイヤーそれぞれにおいて、フィールド図形が含まれるか否か、および、当該フィールド図形に埋め込むためのデータの前記管理手段にて管理されているか否かを判定し、ページを出力するか否かを決定することを特徴とする請求項1または2に記載の文書生成システム。 - 前記複数のレイヤーの少なくとも一つは、ヘッダもしくはフッタであることを特徴とする請求項3に記載の文書生成システム。
- 前記ヘッダもしくはフッタを、レイヤーとしてページに含めるか、別のページとして構成するかの設定を受け付けるための画面を表示する手段を更に有することを特徴とする請求項4に記載の文書生成システム。
- 前記複数のレイヤーのうちのいずれかの出力の設定を受け付ける手段を更に有し、
前記生成手段は、前記出力をすると設定されたレイヤーを含むページは、前記判定の結果に関わらず出力を行うことを特徴とする請求項3乃至5のいずれか一項に記載の文書生成システム。 - 前記フィールド図形に埋め込まれるデータは、主従関係からなる複数のテーブルから構成され、
前記ページのフォームは、前記複数のテーブルそれぞれのデータを埋め込むための複数のフィールド図形を含み、
前記生成手段は、前記複数のテーブルのうち、主のテーブルのデータが前記管理手段にて管理されていない場合、当該複数のテーブルのデータを埋め込むフィールド図形を含むページを出力しないことを特徴とする請求項1または2に記載の文書生成システム。 - 文書データを作成する際に用いる、ページごとのフォームの情報と、ページに埋め込まれるデータとを管理する管理部を備える文書生成システムの制御方法であって、
クライアントからの要求に応じて、前記管理部にて管理されたデータを用いて文書データを生成する生成工程を有し、
前記生成工程において、前記文書データを構成するページのうち、ページに対応するフォームに前記管理部にて管理するデータを埋め込む領域であるフィールド図形が含まれ、かつ、当該フィールド図形に埋め込むためのデータが前記管理部にて管理されていないページは出力しないことを特徴とする文書生成システムの制御方法。 - コンピュータを、
クライアントからの要求に応じて文書データを生成する生成手段、
前記生成手段が文書データを作成する際に用いる、ページごとのフォームの情報と、ページに埋め込まれるデータとを管理する管理手段
として機能させ、
前記生成手段は、前記文書データを構成するページのうち、ページに対応するフォームに前記管理手段にて管理するデータを埋め込む領域であるフィールド図形が含まれ、かつ、当該フィールド図形に埋め込むためのデータが前記管理手段にて管理されていないページは出力しないことを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014135169A JP2016014915A (ja) | 2014-06-30 | 2014-06-30 | 文書生成システムおよびその制御方法、並びにプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014135169A JP2016014915A (ja) | 2014-06-30 | 2014-06-30 | 文書生成システムおよびその制御方法、並びにプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016014915A true JP2016014915A (ja) | 2016-01-28 |
Family
ID=55231080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014135169A Pending JP2016014915A (ja) | 2014-06-30 | 2014-06-30 | 文書生成システムおよびその制御方法、並びにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016014915A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111080459A (zh) * | 2019-11-21 | 2020-04-28 | 泰康保险集团股份有限公司 | 配置文件的配置方法、装置及可读存储介质 |
-
2014
- 2014-06-30 JP JP2014135169A patent/JP2016014915A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111080459A (zh) * | 2019-11-21 | 2020-04-28 | 泰康保险集团股份有限公司 | 配置文件的配置方法、装置及可读存储介质 |
CN111080459B (zh) * | 2019-11-21 | 2023-08-25 | 泰康保险集团股份有限公司 | 配置文件的配置方法、装置及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10353999B2 (en) | Information processing system, server apparatus, control method, and storage medium | |
CN102387279B (zh) | 网络打印系统、客户终端及打印方法 | |
JP5528229B2 (ja) | 文書生成装置、文書生成システム、文書アップロード方法及びプログラム | |
WO2017006731A1 (ja) | 情報処理装置、情報処理方法、情報処理プログラム、情報処理システム、および非一時的コンピュータ読取可能情報記録媒体 | |
JP6525641B2 (ja) | 情報処理システム、制御方法、およびコンピュータプログラム | |
JP6146136B2 (ja) | 情報機器、画像形成装置、スケジュール管理システムおよびコンピュータプログラム | |
JP2016165046A (ja) | 情報処理システム、情報処理装置、情報処理方法、及びプログラム | |
US20070101278A1 (en) | Web site theme designer | |
CN103543967B (zh) | 图像处理装置和方法 | |
US10762275B2 (en) | Information processing apparatus, method, and storage medium | |
JP5982962B2 (ja) | データ処理装置、データ処理システム及びプログラム | |
US8913277B2 (en) | Document data management system, management method and program | |
US20150149586A1 (en) | Information processing apparatus, information processing method, and information processing system | |
JP2010003127A (ja) | ドキュメント管理装置、ドキュメント管理システム、ドキュメント管理方法、およびコンピュータプログラム | |
JP2016014915A (ja) | 文書生成システムおよびその制御方法、並びにプログラム | |
JP2009098791A (ja) | 文書管理装置 | |
JP5900050B2 (ja) | 情報処理装置、情報処理システム及びプログラム | |
JP2020106926A (ja) | 情報処理装置、情報処理システムおよび情報処理方法 | |
JP6115664B2 (ja) | 情報処理装置及びプログラム | |
US20170316108A1 (en) | Data processsing system, data processing device, and program for editing webpage | |
JP6673047B2 (ja) | 情報処理システム、情報処理装置、及び情報処理方法 | |
US20140310323A1 (en) | Storage device permitting file storage according to extension, method of controlling the same, program, and storage medium | |
US20110235106A1 (en) | Information processing apparatus, information processing method, and storage medium | |
JP2018014709A (ja) | 情報処理システム、情報処理装置、情報処理方法およびプログラム | |
JP2013037642A (ja) | 文書生成システム |