文書印刷装置、文書作成装置、文書印刷方法及び文書作成方法
【課題】柔軟性の高い、ユーザの意図にあったデータの印刷を可能にすることを目的とする。
【解決手段】レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、受信したドキュメントセットから取り出したデータ取得指示情報に基づき、サーバからデータを取得するデータ取得手段と、受信したドキュメントセットから取り出したテンプレートにデータ取得手段が取得したデータをマージするマージ手段と、マージ手段がマージした結果をレンダリングするレンダリング手段と、レンダリング手段がレンダリングした結果を印刷する印刷手段と、を有することによって課題を解決する。
【解決手段】レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、受信したドキュメントセットから取り出したデータ取得指示情報に基づき、サーバからデータを取得するデータ取得手段と、受信したドキュメントセットから取り出したテンプレートにデータ取得手段が取得したデータをマージするマージ手段と、マージ手段がマージした結果をレンダリングするレンダリング手段と、レンダリング手段がレンダリングした結果を印刷する印刷手段と、を有することによって課題を解決する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書印刷装置、文書作成装置、文書印刷方法及び文書作成方法に関する。
【背景技術】
【0002】
端末から印刷装置にアクセス先情報(例えばURL(Uniform Resource Locator)等)を送り、印刷装置が指定アクセス先にアクセスしてドキュメントを得る。そしてそれを印刷装置内でレンダリングして印刷するという技術が存在した。例えば、Webプルプリントがその例である。
【0003】
また、与えられたデータとフォーマットを合成して印刷イメージを生成する技術も知られている。
【0004】
Webプルプリントや、データとフォーマットの合成に関する従来技術としては、以下に示す特許文献が挙げられる。
【0005】
【特許文献1】特開2003−131983号公報
【特許文献2】特開平11−134125号公報
【特許文献3】特開平10−214163号公報
【特許文献4】特開2005−196547号公報
【特許文献5】特開2005−49950号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、前記従来の技術には以下のような課題が存在する。
【0007】
即ち、従来技術ではアクセス先がURL等で静的に指定されているので、柔軟性に欠ける所があった。例えばデータベースから検索したデータを印刷させたい時、検索条件等を指定することができなかった。また、複数データベースサーバへアクセスする方法も指定することができなかった。更に、レンダリングの際の書式はWebサーバからスタイルシート等を取得して書式として適用することはできたが、クライアントである端末側から指定することはできなかった。
【0008】
本発明はこのような問題点に鑑みなされたもので、柔軟性の高い、ユーザの意図にあったデータの印刷を可能にすることを目的とする。
【課題を解決するための手段】
【0009】
そこで、本発明の文書印刷装置は、レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得手段と、受信したドキュメントセットから取り出した前記テンプレートに前記データ取得手段が取得したデータをマージするマージ手段と、前記マージ手段がマージした結果をレンダリングするレンダリング手段と、前記レンダリング手段がレンダリングした結果を印刷する印刷手段と、を有することを特徴とする。
【0010】
係る構成とすることにより、柔軟性の高い、ユーザの意図にあったデータの印刷を可能にすることができる。
【0011】
ここで、文書印刷装置とは、例えば、後述する複合機等に対応する。また、サーバとは、例えば、上述するデータベースサーバ等に対応する。また、
【0012】
また、本発明は、文書作成装置、文書印刷方法、文書作成方法、プログラム及び記憶媒体としてもよい。
【発明の効果】
【0013】
本発明によれば、柔軟性の高い、ユーザの意図にあったデータの印刷を可能にすることができる。
【発明を実施するための最良の形態】
【0014】
以下、本発明の実施形態について図面に基づいて説明する。
【0015】
図1は、文書印刷システムの構成を示すブロック図である。図1において、101は、印刷装置である複合機(Multi Functional Printer。以下、MFPと称す)である。102は、コンピュータ端末であるPCである。103は、データベースサーバ(以下、DBと称す)である。104は、携帯端末である。105は、携帯端末104と無線通信で接続されるアクセスポイント(AP)である。106は、前記各装置を相互に結合するネットワークである。
【0016】
MFP101の内部構成は図2のブロック図のようになっている。図2は、MFP101の内部構成を示すブロック図である。
【0017】
図2において、MFP101は、装置全体を制御する中央処理装置(以下、CPUと称す)201、各種動作プログラムを読み取り可能に格納したROM202、プログラム動作中の一時的な値の保存に用いるRAM203を含む。また、MFP101は、各種時間を計測するタイマ204、ユーザインタフェースを表示するためのディスプレイ205、各種操作ボタン206、各種設定データファイルを保存しておくための不揮発性メモリであるFlashROM207を含む。また、MFP101は、外部装置と接続するためのネットワークI/F208、各種動作プログラム及び設定データファイルを保存しておくためのハードディスク(以下、HDと称す)209、印刷手段であるプリンタ210を含む。
【0018】
図2はMFP101の内部構成を示す図であるが、図2に挙げたような構成要素は一般的なコンピュータにも見られるものである。PC102、DB103、携帯端末104についても、各々、その装置に特徴的な構成要素は持っていたり、一部の要素は備えていなかったりするものの、図2に挙げた構成要素を同様に備えている。類似しているので、各々の装置の内部構成を示す図は省略する。
【0019】
また、以下の説明では、動作の主体は、装置を制御するCPU201であることが殆どであるから、例外となる場合を除いて動作の主体をいちいち明示することはしない。
図3は、ドキュメントセットの説明図である。
【0020】
ドキュメントセット300は、レイアウトテンプレート301及びデータ取得指示情報302から構成されている。データ取得指示情報302は、DB103のホスト名情報314、DB103からデータを検索するときの検索条件315、取得するデータ項目を定義する項目リスト316を有している。
【0021】
データ取得指示情報302は、「database.xyz.com」というDB103において(314)、データリスト「dataList_A」(317)から、address項目が「Tokyo」であるデータを検索する(315)。また、name項目(318)、tel項目(319)及びaddress項目(320)を得ることを示している。
【0022】
前記検索条件を満たすデータはDB103内に複数存在し得る。従って実際に取得されるデータは取得データリスト330に示すように、name要素(322)、tel要素(323)及びaddress要素(324)のデータセット325を複数個有するリストとなる。
【0023】
データ取得指示情報302は、XML形式で記述されており、構造化されている。本実施形態では、DB103がWebサービスに対応しており、MFP101からSOAPメッセージを送ることによってDB103のデータにアクセスできるようになっている。そこで、SOAPメッセージを組み立てやすいように、XML形式でデータ取得指示情報302を記述している。データ取得指示情報302の記述は、XML形式でなく他の記述形式でもよいが、構造化されたデータであると、なお望ましい。
【0024】
一方、レイアウトテンプレート301は、303〜308で示される書式情報と、309〜313で示されるデータマージ情報と、から構成されている。データマージ情報は、取得したデータをどのようにマージしていくかを示す。DB103から取得したデータである取得データリスト330からdataList321に含まれるデータセット325が一つずつ取り出される。そして、そのname要素322がデータマージ情報310にて埋め込まれ、tel要素323がデータマージ情報311にて埋め込まれ、address要素324がデータマージ情報312にて埋め込まれる。前記処理をdataList321の全体にわたって繰り返す(データマージ情報309及び313のforタグ)。
【0025】
レイアウトテンプレート301に含まれる書式情報303〜308は、HTML(Hyper Text Markup Language)で記述されているが、本実施形態はこれに限るものではない。
【0026】
レイアウトテンプレート301の別の例を図4に示す。
【0027】
図4は、DB103から取得した「顧客リスト」データを埋め込むためのレイアウトテンプレート1300を示す図である。レイアウトテンプレート1300では、XSL−FO(Extensible Stylesheet Language Formatting Objects)形式でレイアウト情報を記述している。レイアウトテンプレート1300における書式情報は、名前空間mrgで指定される要素である。
【0028】
ここでは、foreach要素1301と、value要素1302と、が使われている。foreach要素は、list属性が示すリストの数分、foreach要素の内容部分が繰り返し展開されることを示す。リストの各データ(顧客リストで言えば、各顧客レコード)を区別するためのインデックスを指定でき、index属性値に記述しておく。value要素は、name属性の指すデータが、value要素の位置に置かれることを示す。name属性値には、前記index属性値を用いることができ、これによって、データマージ処理では顧客レコードを区別でき、適切な顧客レコードの項目データをレイアウトテンプレート1300中に埋め込むことができる。
【0029】
図5は、MFP101の印刷手順を示したフローチャートである。
【0030】
図5において、最初にMFP101は、PC102からドキュメントセット300を受信する(S401)。ドキュメントセット300はRAM203、FlashROM207、或いはHD209に一旦、格納される。
【0031】
次に、MFP101は、ドキュメントセット300からレイアウトテンプレート301及びデータ取得指示情報302を取り出す(S402)。
【0032】
次に、MFP101は、PC102から、オプションデータである取得データリスト330を受信したかどうかを判断する(S403)。
【0033】
取得データリスト330を受信すれば、MFP101は、S409に進む。
【0034】
受信していなければ、次に、MFP101は、PC102からオプションデータであるログイン情報を受信したかどうかを判断する(S404)。
【0035】
ログイン情報を受信すれば、MFP101は、そのログイン情報を使ってDB103にログインする(S405)。
【0036】
ログイン情報を受信しなければ、MFP101は、予め定められたデフォルトのログイン情報を使ってDB103にログインする(S406)。
【0037】
そして、MFP101は、データ取得指示情報302に基づき、SOAPメッセージを組み立ててDB103に送り(S407)、DB103から取得データリスト330を取得する(S408)。
【0038】
MFP101は、取得データリスト330をレイアウトテンプレート301にマージする(S409)続いて、MFP101は、マージ結果である最終レイアウト情報を印刷形式にレンダリングする(S410)。
【0039】
そして、MFP101は、レンダリング結果を、プリンタ210を用いて印刷する(S411)。続いて、MFP101は、記憶媒体に格納したドキュメントセット300を削除する(S412)。
【0040】
次に、ドキュメントセット300の作成手順について説明する。
【0041】
図6は、PC102におけるドキュメントセット300の作成手順1を示したフローチャートである。
【0042】
最初に、PC102は、ユーザ操作に基づいて、データ取得指示情報302を作成する(S501)。ユーザはDB103からどのようなデータを取得すべきかを知っているので、そのデータ項目の名前に基づき、データ取得指示情報302の作成操作を行う。
【0043】
次に、PC102は、ユーザ操作に基づいて、レイアウトテンプレート301を作成する(S502)。ユーザは、データ取得指示情報302を好みの位置にレイアウトすることによって、レイアウトテンプレート301の作成操作を行う。このデータ取得指示情報302及びレイアウトテンプレート301の作成にあたっては、最終的なデータフォーマットが予め規定されたものになっていればよく、作成時の方法は問わない。単なるテキストエディタでも専用ツールでも構わない。
【0044】
次に、PC102は、データ取得指示情報302と、レイアウトテンプレート301と、をバインドし、ドキュメントセット300を作成する(S503)。PC102は、必要であれば、ここでドキュメントセット300をPC102の記憶媒体に保存しておくこともできる。ユーザが保存を指示した場合、PC102は、ドキュメントセットを保存する(S505)。
【0045】
そして、PC102は、ドキュメントセット300をMFP101に送信する(S506)。
【0046】
図示しないが、PC102は、ユーザ操作等に基づいて、保存したドキュメントセット300を、後で再度MFP101に送信する。このことによって、その時点でのDB103の最新データを取り出して、MFP101に印刷を要求することができる。
【0047】
また、保存したドキュメントセット300をPC102から携帯端末104に送信し、後で携帯端末104からアクセスポイント105を経由して、MFP101に対してドキュメントセット300を送るようにしてもよい。
【0048】
次に、MFP101が複数のDB103にアクセスする場合について説明する。
【0049】
図7は、複数のDB103にアクセスすることを指示したデータ取得指示情報601を示す図である。図7に示すデータ取得指示情報601は、第一のDB103である「database1.xyz.com」と、第二のDB103である「database2.xyz.com」と、にアクセスすることを指示している。
【0050】
図8は、データ取得指示情報601を処理する、MFP101のデータ取得手順を示したフローチャートである。図8に示される処理は、図5のS404〜S408の部分の処理にあたる。
【0051】
まず、MFP101は、データ取得指示情報601から次にアクセスすべきDB103を取り出す(S701)。初回は第一のDB103が選択される。
【0052】
次に、MFP101は、PC102からオプションデータであるログイン情報を受信したかどうかを判断する(S702)。
【0053】
ログイン情報を受信すれば、MFP101は、そのログイン情報を使ってDB103にログインする(S703)。
【0054】
受信しなければ、MFP101は、予め定められたデフォルトのログイン情報を使ってDB103にログインする(S704)。
【0055】
そして、MFP101は、データ取得指示情報302に基づき、SOAPメッセージを組み立ててDB103に送り(S705)、DB103から取得データリスト330を取得する(S706)。
【0056】
第一のDB103からデータを取得し終わると、MFP101は、データ取得指示情報601に、次にアクセスすべきDB103がまだ残っているかどうかを判断する(S707)。残っていればS701に戻る。残っていなければデータ取得手順を終了する。
【0057】
なお、複数のDB103にアクセスする場合、レイアウトテンプレート301においてマージ処理を行うときにもDB103を区別する必要が生じることがある。その場合は、例えば、データマージ情報309が「<for serverNo="1" listName="dataList"/>」となっていて、DB103を識別できるようになっていれば、MFP101は、マージ処理も問題なく行える。
【0058】
次に、PC102での取得データリスト330の表示手順1について、図9のフローチャートを用いて説明する。図9は、PC102における取得データリスト330の表示手順1を示したフローチャートである。
【0059】
まず、PC102は、ユーザ操作に基づいて、作成済みのドキュメントセット300から表示対象とするものを選択する(S801)。
【0060】
次に、PC102は、ドキュメントセット300からレイアウトテンプレート301及びデータ取得指示情報302を取り出す(S802)。
【0061】
PC102は、データ取得指示情報302に基づき、SOAPメッセージを組み立ててDB103に送る(S803)。
【0062】
PC102は、DB103から取得データリスト330を取得する(S804)。
【0063】
次に、PC102は、DB103にスタイルシートがあるかどうかを判断する(S805)。スタイルシートは、取得データリスト330をどのような見映えで表示するかを示すものである。取得データリスト330の形式としては、HTML、XHTML、又は、独自形式等様々なものが考えられる。しかしながら、XML形式のように特に表示方法を定めていない形式の場合、スタイルシートがDB103からPC102に送られて、それに基づいてPC102での表示がなされるようにしてよい。
【0064】
DB103にスタイルシートがある場合は、PC102は、DB103からスタイルシートを取得する(S806)。スタイルシートがない場合は、PC102は、予め定められたデフォルトのスタイルシートを使用する(S807)。ここで、PC102は、S802で取り出したレイアウトテンプレート301をデフォルトのスタイルシートとして用いることもできる。レイアウトテンプレート301は、書式情報301〜308がHTML形式で記述されているので、PC102は、レイアウトテンプレート301に基づいて、取得データリスト330を表示することができる。
【0065】
PC102は、取得データリスト330にスタイルシートを適用して、ディスプレイ205に表示を行う(S808)。
【0066】
次に、PC102での取得データリスト330の表示手順2について、図10のフローチャートを用いて説明する。図10は、PC102における取得データリスト330の表示手順2を示したフローチャートである。なお、このときに使用する取得データリスト330の表示画面(取得データリスト表示画面1000)を図11に示す。図11は、取得データリスト表示画面1000を示す図である。
【0067】
PC102は、アクセス可能なDB103及びデータリスト317毎にボタン(1001及び1002)を含む取得データリスト表示画面1000を表示する(S901)。ユーザは、マウス等を操作して、ボタンを押下すると、PC102は、ボタンの押下等を検知する(S902)。
【0068】
次いで、PC102は、ボタンに関連付けられたDB103及びデータリスト317に関する情報を取得する(S903)。そして、PC102は、データリスト317に基づき、SOAPメッセージを組み立てて、DBに送る(S904)。
【0069】
以降の手順S905〜S909は、S804〜S808と同一である。
【0070】
S909の表示処理においては、例えば図11のデータリストテーブル1003に示すようにデータリストが表示される。データリストテーブル1003は、DB103"database1.xyz.com"のデータリスト317"dataList_A"のデータを表示した例である。ここでは、dtaList_Aは、項目として、name、address、tel、product、product_no、及びpurchase_dayを有する。そして、各々、氏名1004、住所1005、電話番号1006、購入商品1007、商品No1008及び購入年月1009として表示されるものとする。
【0071】
なお、ボタン1001をドキュメントセット300に関連付けて、図9のフローチャートを実行して、取得データリスト330をデータリストテーブル1003に示すように表示することもできる。また、ボタン1001をドキュメントセット300に関連付けていなくとも、図9のフローチャートを実行して、取得データリスト330をデータリストテーブル1003に示すように表示することもできる。
【0072】
図12は、PC102におけるドキュメントセット300の作成手順2を示したフローチャートである。
【0073】
取得データリスト表示画面1000が表示されているときに、PC102がユーザによる作成ボタン1010の押下を検知する(S1101)。ここで、作成ボタン1010は、ドキュメントセット300を作成するためのボタンである。
【0074】
すると、PC102は、設定できるデータ取得項目のリストを得る(S1113)。ここで、データ取得項目のリストは単に、データリストテーブル1003に表示されている項目のリストが列挙されるわけではない。データリストテーブル1003に表示されている項目は、DB103内のアクセス中のデータリスト317の一部であることがあり得る。
【0075】
例えば、データリスト317はデータ項目としてname、address、tel、product、product_no及びpurchase_dayを有している。しかしながら、データリストテーブル1003に表示されるのは、name、address及びtelのみということがあり得る。現在データリストテーブル1003に表示されているデータ項目のみをリストアップすると、その部分集合の範囲内でしか後述するS1103においてデータ取得項目を選択できなくなってしまう。従って、ここでは、データリスト317において選択可能な全てのデータ項目をリストアップするものとする。これは、ドキュメントセット300内のデータ取得指示情報302からデータリスト317を得ておくことによって実現することができる。またボタン1001或いはボタン1002が押下された場合は、ボタンに対応するデータリスト317を得ることによっても実現することができる。
【0076】
そして、PC102は、データ取得指示情報設定画面1200を表示する(S1102)。図13は、データ取得指示情報設定画面1200の一例を示す図である。
【0077】
データ取得指示情報設定画面1200は、現在処理中のデータリスト317を示すデータリスト表示部1201、取得するデータ項目を選択するための取得項目選択部1202及び検索条件を設定するための検索条件設定部1203を有する。
【0078】
取得項目選択部1202には、後で取得されることになるデータ項目と、チェックボックス1205とが列挙される。ユーザはこの中から、取得したいデータ項目のチェックボックス1205をチェックして選択する(S1103)。
【0079】
検索条件設定部1203は、検索条件を設定する場所である。ユーザは、ドロップダウンリスト1206を用いて、チェックボックス1205においてチェックしたデータ項目を選択することができる。ユーザは、ここで選択したデータ項目に対し、ラジオボタン1207を選択することによって、設定する検索条件を数値範囲の条件にするか、又は文字列の条件にするかを選ぶことができる。数値範囲条件を選んだ場合、一致条件か、以上条件か、以下条件かをユーザは、チェックボックス1208を用いて選ぶことができる。ここで選んだ条件に対し、ユーザは、数値をテキストボックス1209に入力することによって、数値範囲条件を決定する。ユーザは、文字列条件も同様に決定する(S1104)。
【0080】
複数の検索条件を設定する場合、ユーザは、検索条件の追加ボタン1210を押下する。すると、それまでの図13内の入力内容を保持したまま、検索条件1の下方に、検索条件2が同様に表示され、検索条件2の入力が可能となる。なお、このステップは図12には図示していない。
【0081】
最後にユーザが登録ボタン1211を押下すると、PC102は、これを検知する(S1105)。
【0082】
そしてPC102は、入力されたデータ取得項目と、検索条件と、に基づき、データ取得指示情報302を作成する(S1106)。
【0083】
次に、PC102は、レイアウトテンプレート設定画面を表示する(S1107)。この画面は、特に図示しないが、データリストテーブル1003が印刷時にどのようにレイアウトされるべきかをユーザが設定できるものである。つまり、タイトル、余白、線種、フォント等、レイアウトに関して一般的な設定ができるものである。
【0084】
ユーザは、レイアウトテンプレート設定画面を使用して、レイアウトを設定する(S1108)。この設定が終了すると、PC102は、ユーザが設定したレイアウトに基づき、レイアウトテンプレート301を作成する(S1109)。
【0085】
PC102は、このようにして作成されたデータ取得指示情報302と、レイアウトテンプレート301と、をバインドし、ドキュメントセット300を作成する(S1110)。
【0086】
PC102は、記憶媒体上に、ドキュメントセット300を保存する(S1111)。そして、PC102は、作成したドキュメントセット300に関連付けられたボタンを取得データリスト表示画面1000に追加表示する。このようなボタンの例がドキュメントセットAAA1012に関連付けられた「確認印刷」ボタン1013及び「即印刷」ボタン1014である。これらのボタンの働きについては後述する。
【0087】
図14は、PC102における印刷指示手順を示したフローチャートである。
【0088】
ユーザは取得データリスト表示画面1000上に表示される印刷指示のための各種ボタンを使って印刷を開始することができる。ここで、各種ボタンとは、「このまま印刷」ボタン1011、「最新データ印刷」ボタン1015、「確認印刷」ボタン1013及び「即印刷」ボタン1014等である。
【0089】
「このまま印刷」ボタン1011及び「最新データ印刷」ボタン1015は、データリストテーブル1003に表示されているデータを印刷するためのボタンである。
【0090】
「確認印刷」ボタン1013及び「即印刷」ボタン1014は、ボタンと関連付けられたドキュメントセット300を印刷するためのボタンである。
【0091】
図14において、ユーザが4つの印刷ボタンのうち、何れかを押下した場合、PC102は、データがデータリストテーブル1003に表示されているかどうかを判断する(S1401)。「このまま印刷」ボタン1011或いは「最新データ印刷」ボタン1015が押下された場合、PC102は、表示されていると判断する。それら以外のボタンが押下された場合、PC102は、表示されていないと判断する。
【0092】
データが表示されていない場合、PC102は、即座に印刷するかどうかを判断する(S1402)。「即印刷」ボタン1014が押下された場合、PC102は、即座に印刷すると判断する。「確認印刷」ボタン1013が押下された場合、PC102は、即座には印刷しないと判断する。
【0093】
即座には印刷しない場合、PC102は、「確認印刷」ボタン1013に関連付けられたドキュメントセット300に基づきデータを取得する(S1403)。取得方法の詳細はS802〜S804に準じる。
【0094】
即座に印刷する場合、PC102は、S1408に進む。
【0095】
取得したデータは、S805〜S808に準じる方法で、PC102がデータリストテーブル1003として表示する(S1404)。
【0096】
ユーザはデータを確認後、印刷を開始したい場合は、「このまま印刷」ボタン1011又は「最新データ印刷」ボタン1015を押下する。これらのボタンの何れかが押下された場合、PC102は、印刷指示があったと検知する(S1405)。
【0097】
印刷指示を検知した場合、PC102は、表示されたままのデータで印刷するかどうかを判断する(S1406)。「このまま印刷」ボタン1011が押下された場合、PC102は、表示されたままのデータで印刷すると判断する。「最新データ印刷」ボタン1015が押下された場合、PC102は、表示されたままのデータでは印刷しないと判断する。印刷指示を検知しない場合、PC102は、印刷を行わないものと見なし、図14に示す処理を終了する。
【0098】
表示されたままでのデータで印刷すると判断した場合、PC102は、それまでに取得した取得データリスト330をMFP101に対して送る(S1407)。表示されたままのデータでは印刷しないと判断した場合、PC102は、S1407をスキップする。
【0099】
次に、PC102は、PC102に現在ログインしているユーザのログイン情報をMFP101に送る(S1408)。MFP101に送られたログイン情報は、S405において、DB103に対するログイン時にも使用される。なお、ログイン情報はオプションであり、必ず送る必要があるわけではない。
【0100】
ログイン情報を送った後、PC102は、ドキュメントセット300をMFP101に送る(S1409)。これによって、MFP101でドキュメントセット300が印刷される。
【0101】
S1401でデータが表示されている場合、PC102は、表示されているデータリストテーブル1003に対応するドキュメントセット300が存在するかどうかを判断する(S1410)。「このまま印刷」ボタン1011或いは「最新データ印刷」ボタン1015が押下された場合でもドキュメントセット300が存在する場合がある。前記手順で「確認印刷」ボタン1013を押して、一旦データを表示させた場合がそうである。また上述したように、ボタン1001をドキュメントセット300に関連付けて、図9のフローチャートを実行する場合もそうなる。
【0102】
データリストテーブル1003に対応するドキュメントセット300が存在する場合、PC102は、S1406に進む。存在しない場合、PC102は、一時的に作成するドキュメントセット300が、データ取得項目がデータリストテーブル1003に表示されている通りのデータ「そのまま」、且つレイアウトが「デフォルト」でよいかどうかを判断する(S1411)。この判断は、新たなダイアログウィンドウを表示して、ユーザに選択させることで行ってもよいし、予め定められた設定情報に従って判断してもよい。
【0103】
前記設定でよい場合は、PC102は、その設定に従いドキュメントセット300を作成する(S1412)。その後、PC102は、S1406に進む。前記設定を望まない場合、PC102は、ドキュメントセット作成手順を辿る(S1413)。例えば、PC102は、図12のS1102以降の処理を実行する。
【0104】
以上、上述した実施形態によれば、可搬性を備えたドキュメントセットをMFP101に対して送り込むことによって、MFP101において印刷を行うことができる。また、ドキュメントセットは、データの取得方法を記述したデータ取得指示情報と、取得したデータに適用する書式情報であるレイアウトテンプレートと、を含むので、これにより、柔軟性の高い、ユーザの意図にあったデータの印刷が可能になる。また、MFP101は、印刷終了後はドキュメントセットを削除するので、ドキュメントセットが記憶媒体に残り続けることもなく、際限なくドキュメントセットの印刷を行うことができる。
【0105】
また、MFP101がドキュメントセットに基づいてデータをDB103から取得するとき、ドキュメントセットを送信したPC102のユーザログイン情報を用いて、DB103にログインする。このことにより、印刷を指示したユーザの権限でDB103にアクセスすることができる。
【0106】
また、MFP101がドキュメントセットに基づいてデータをDB103から取得するとき、ドキュメントセットを送信したPC102からユーザログイン情報が送られてこない場合、所定のログイン情報を用いてDB103にログインする。これにより、DB103へのデータアクセス権限がないユーザでも、所定の権限でドキュメントセットの印刷を行うことができる。
【0107】
また、MFP101は、ドキュメントセット内のテンプレートと、PC102から受信したデータと、をマージして印刷することにより、DB103にアクセスする必要がなく、PC102側から取得したデータそのままの形式で印刷することができる。
【0108】
また、DB103が有するデータリストに基づいて、データ項目を選択すると共に検索条件を設定することによってドキュメントセットを作成できる。従って、PC102は、ポータブルなドキュメントセットから第二のポータブルなドキュメントセットを容易に派生させて作ることができる。
【0109】
また、ドキュメントセットに基づいてDB103から取得したデータの内容を表示中に、PC102側で取得したデータそのままの形式で印刷するようMFP101に対して指示することができる。
【0110】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【0111】
【図1】文書印刷システムの構成を示すブロック図である。
【図2】MFP101の内部構成を示すブロック図である。
【図3】ドキュメントセットの説明図である。
【図4】DB103から取得した「顧客リスト」データを埋め込むためのレイアウトテンプレート1300を示す図である。
【図5】MFP101の印刷手順を示したフローチャートである。
【図6】PC102におけるドキュメントセット300の作成手順1を示したフローチャートである。
【図7】複数のDB103にアクセスすることを指示したデータ取得指示情報601を示す図である。
【図8】データ取得指示情報601を処理する、MFP101のデータ取得手順を示したフローチャートである。
【図9】PC102における取得データリスト330の表示手順1を示したフローチャートである。
【図10】PC102における取得データリスト330の表示手順2を示したフローチャートである。
【図11】取得データリスト表示画面1000を示す図である。
【図12】PC102におけるドキュメントセット300の作成手順2を示したフローチャートである。
【図13】データ取得指示情報設定画面1200の一例を示す図である。
【図14】PC102における印刷指示手順を示したフローチャートである。
【符号の説明】
【0112】
101 MFP
102 PC
103 DB
104 携帯端末
105 AP
【技術分野】
【0001】
本発明は、文書印刷装置、文書作成装置、文書印刷方法及び文書作成方法に関する。
【背景技術】
【0002】
端末から印刷装置にアクセス先情報(例えばURL(Uniform Resource Locator)等)を送り、印刷装置が指定アクセス先にアクセスしてドキュメントを得る。そしてそれを印刷装置内でレンダリングして印刷するという技術が存在した。例えば、Webプルプリントがその例である。
【0003】
また、与えられたデータとフォーマットを合成して印刷イメージを生成する技術も知られている。
【0004】
Webプルプリントや、データとフォーマットの合成に関する従来技術としては、以下に示す特許文献が挙げられる。
【0005】
【特許文献1】特開2003−131983号公報
【特許文献2】特開平11−134125号公報
【特許文献3】特開平10−214163号公報
【特許文献4】特開2005−196547号公報
【特許文献5】特開2005−49950号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、前記従来の技術には以下のような課題が存在する。
【0007】
即ち、従来技術ではアクセス先がURL等で静的に指定されているので、柔軟性に欠ける所があった。例えばデータベースから検索したデータを印刷させたい時、検索条件等を指定することができなかった。また、複数データベースサーバへアクセスする方法も指定することができなかった。更に、レンダリングの際の書式はWebサーバからスタイルシート等を取得して書式として適用することはできたが、クライアントである端末側から指定することはできなかった。
【0008】
本発明はこのような問題点に鑑みなされたもので、柔軟性の高い、ユーザの意図にあったデータの印刷を可能にすることを目的とする。
【課題を解決するための手段】
【0009】
そこで、本発明の文書印刷装置は、レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得手段と、受信したドキュメントセットから取り出した前記テンプレートに前記データ取得手段が取得したデータをマージするマージ手段と、前記マージ手段がマージした結果をレンダリングするレンダリング手段と、前記レンダリング手段がレンダリングした結果を印刷する印刷手段と、を有することを特徴とする。
【0010】
係る構成とすることにより、柔軟性の高い、ユーザの意図にあったデータの印刷を可能にすることができる。
【0011】
ここで、文書印刷装置とは、例えば、後述する複合機等に対応する。また、サーバとは、例えば、上述するデータベースサーバ等に対応する。また、
【0012】
また、本発明は、文書作成装置、文書印刷方法、文書作成方法、プログラム及び記憶媒体としてもよい。
【発明の効果】
【0013】
本発明によれば、柔軟性の高い、ユーザの意図にあったデータの印刷を可能にすることができる。
【発明を実施するための最良の形態】
【0014】
以下、本発明の実施形態について図面に基づいて説明する。
【0015】
図1は、文書印刷システムの構成を示すブロック図である。図1において、101は、印刷装置である複合機(Multi Functional Printer。以下、MFPと称す)である。102は、コンピュータ端末であるPCである。103は、データベースサーバ(以下、DBと称す)である。104は、携帯端末である。105は、携帯端末104と無線通信で接続されるアクセスポイント(AP)である。106は、前記各装置を相互に結合するネットワークである。
【0016】
MFP101の内部構成は図2のブロック図のようになっている。図2は、MFP101の内部構成を示すブロック図である。
【0017】
図2において、MFP101は、装置全体を制御する中央処理装置(以下、CPUと称す)201、各種動作プログラムを読み取り可能に格納したROM202、プログラム動作中の一時的な値の保存に用いるRAM203を含む。また、MFP101は、各種時間を計測するタイマ204、ユーザインタフェースを表示するためのディスプレイ205、各種操作ボタン206、各種設定データファイルを保存しておくための不揮発性メモリであるFlashROM207を含む。また、MFP101は、外部装置と接続するためのネットワークI/F208、各種動作プログラム及び設定データファイルを保存しておくためのハードディスク(以下、HDと称す)209、印刷手段であるプリンタ210を含む。
【0018】
図2はMFP101の内部構成を示す図であるが、図2に挙げたような構成要素は一般的なコンピュータにも見られるものである。PC102、DB103、携帯端末104についても、各々、その装置に特徴的な構成要素は持っていたり、一部の要素は備えていなかったりするものの、図2に挙げた構成要素を同様に備えている。類似しているので、各々の装置の内部構成を示す図は省略する。
【0019】
また、以下の説明では、動作の主体は、装置を制御するCPU201であることが殆どであるから、例外となる場合を除いて動作の主体をいちいち明示することはしない。
図3は、ドキュメントセットの説明図である。
【0020】
ドキュメントセット300は、レイアウトテンプレート301及びデータ取得指示情報302から構成されている。データ取得指示情報302は、DB103のホスト名情報314、DB103からデータを検索するときの検索条件315、取得するデータ項目を定義する項目リスト316を有している。
【0021】
データ取得指示情報302は、「database.xyz.com」というDB103において(314)、データリスト「dataList_A」(317)から、address項目が「Tokyo」であるデータを検索する(315)。また、name項目(318)、tel項目(319)及びaddress項目(320)を得ることを示している。
【0022】
前記検索条件を満たすデータはDB103内に複数存在し得る。従って実際に取得されるデータは取得データリスト330に示すように、name要素(322)、tel要素(323)及びaddress要素(324)のデータセット325を複数個有するリストとなる。
【0023】
データ取得指示情報302は、XML形式で記述されており、構造化されている。本実施形態では、DB103がWebサービスに対応しており、MFP101からSOAPメッセージを送ることによってDB103のデータにアクセスできるようになっている。そこで、SOAPメッセージを組み立てやすいように、XML形式でデータ取得指示情報302を記述している。データ取得指示情報302の記述は、XML形式でなく他の記述形式でもよいが、構造化されたデータであると、なお望ましい。
【0024】
一方、レイアウトテンプレート301は、303〜308で示される書式情報と、309〜313で示されるデータマージ情報と、から構成されている。データマージ情報は、取得したデータをどのようにマージしていくかを示す。DB103から取得したデータである取得データリスト330からdataList321に含まれるデータセット325が一つずつ取り出される。そして、そのname要素322がデータマージ情報310にて埋め込まれ、tel要素323がデータマージ情報311にて埋め込まれ、address要素324がデータマージ情報312にて埋め込まれる。前記処理をdataList321の全体にわたって繰り返す(データマージ情報309及び313のforタグ)。
【0025】
レイアウトテンプレート301に含まれる書式情報303〜308は、HTML(Hyper Text Markup Language)で記述されているが、本実施形態はこれに限るものではない。
【0026】
レイアウトテンプレート301の別の例を図4に示す。
【0027】
図4は、DB103から取得した「顧客リスト」データを埋め込むためのレイアウトテンプレート1300を示す図である。レイアウトテンプレート1300では、XSL−FO(Extensible Stylesheet Language Formatting Objects)形式でレイアウト情報を記述している。レイアウトテンプレート1300における書式情報は、名前空間mrgで指定される要素である。
【0028】
ここでは、foreach要素1301と、value要素1302と、が使われている。foreach要素は、list属性が示すリストの数分、foreach要素の内容部分が繰り返し展開されることを示す。リストの各データ(顧客リストで言えば、各顧客レコード)を区別するためのインデックスを指定でき、index属性値に記述しておく。value要素は、name属性の指すデータが、value要素の位置に置かれることを示す。name属性値には、前記index属性値を用いることができ、これによって、データマージ処理では顧客レコードを区別でき、適切な顧客レコードの項目データをレイアウトテンプレート1300中に埋め込むことができる。
【0029】
図5は、MFP101の印刷手順を示したフローチャートである。
【0030】
図5において、最初にMFP101は、PC102からドキュメントセット300を受信する(S401)。ドキュメントセット300はRAM203、FlashROM207、或いはHD209に一旦、格納される。
【0031】
次に、MFP101は、ドキュメントセット300からレイアウトテンプレート301及びデータ取得指示情報302を取り出す(S402)。
【0032】
次に、MFP101は、PC102から、オプションデータである取得データリスト330を受信したかどうかを判断する(S403)。
【0033】
取得データリスト330を受信すれば、MFP101は、S409に進む。
【0034】
受信していなければ、次に、MFP101は、PC102からオプションデータであるログイン情報を受信したかどうかを判断する(S404)。
【0035】
ログイン情報を受信すれば、MFP101は、そのログイン情報を使ってDB103にログインする(S405)。
【0036】
ログイン情報を受信しなければ、MFP101は、予め定められたデフォルトのログイン情報を使ってDB103にログインする(S406)。
【0037】
そして、MFP101は、データ取得指示情報302に基づき、SOAPメッセージを組み立ててDB103に送り(S407)、DB103から取得データリスト330を取得する(S408)。
【0038】
MFP101は、取得データリスト330をレイアウトテンプレート301にマージする(S409)続いて、MFP101は、マージ結果である最終レイアウト情報を印刷形式にレンダリングする(S410)。
【0039】
そして、MFP101は、レンダリング結果を、プリンタ210を用いて印刷する(S411)。続いて、MFP101は、記憶媒体に格納したドキュメントセット300を削除する(S412)。
【0040】
次に、ドキュメントセット300の作成手順について説明する。
【0041】
図6は、PC102におけるドキュメントセット300の作成手順1を示したフローチャートである。
【0042】
最初に、PC102は、ユーザ操作に基づいて、データ取得指示情報302を作成する(S501)。ユーザはDB103からどのようなデータを取得すべきかを知っているので、そのデータ項目の名前に基づき、データ取得指示情報302の作成操作を行う。
【0043】
次に、PC102は、ユーザ操作に基づいて、レイアウトテンプレート301を作成する(S502)。ユーザは、データ取得指示情報302を好みの位置にレイアウトすることによって、レイアウトテンプレート301の作成操作を行う。このデータ取得指示情報302及びレイアウトテンプレート301の作成にあたっては、最終的なデータフォーマットが予め規定されたものになっていればよく、作成時の方法は問わない。単なるテキストエディタでも専用ツールでも構わない。
【0044】
次に、PC102は、データ取得指示情報302と、レイアウトテンプレート301と、をバインドし、ドキュメントセット300を作成する(S503)。PC102は、必要であれば、ここでドキュメントセット300をPC102の記憶媒体に保存しておくこともできる。ユーザが保存を指示した場合、PC102は、ドキュメントセットを保存する(S505)。
【0045】
そして、PC102は、ドキュメントセット300をMFP101に送信する(S506)。
【0046】
図示しないが、PC102は、ユーザ操作等に基づいて、保存したドキュメントセット300を、後で再度MFP101に送信する。このことによって、その時点でのDB103の最新データを取り出して、MFP101に印刷を要求することができる。
【0047】
また、保存したドキュメントセット300をPC102から携帯端末104に送信し、後で携帯端末104からアクセスポイント105を経由して、MFP101に対してドキュメントセット300を送るようにしてもよい。
【0048】
次に、MFP101が複数のDB103にアクセスする場合について説明する。
【0049】
図7は、複数のDB103にアクセスすることを指示したデータ取得指示情報601を示す図である。図7に示すデータ取得指示情報601は、第一のDB103である「database1.xyz.com」と、第二のDB103である「database2.xyz.com」と、にアクセスすることを指示している。
【0050】
図8は、データ取得指示情報601を処理する、MFP101のデータ取得手順を示したフローチャートである。図8に示される処理は、図5のS404〜S408の部分の処理にあたる。
【0051】
まず、MFP101は、データ取得指示情報601から次にアクセスすべきDB103を取り出す(S701)。初回は第一のDB103が選択される。
【0052】
次に、MFP101は、PC102からオプションデータであるログイン情報を受信したかどうかを判断する(S702)。
【0053】
ログイン情報を受信すれば、MFP101は、そのログイン情報を使ってDB103にログインする(S703)。
【0054】
受信しなければ、MFP101は、予め定められたデフォルトのログイン情報を使ってDB103にログインする(S704)。
【0055】
そして、MFP101は、データ取得指示情報302に基づき、SOAPメッセージを組み立ててDB103に送り(S705)、DB103から取得データリスト330を取得する(S706)。
【0056】
第一のDB103からデータを取得し終わると、MFP101は、データ取得指示情報601に、次にアクセスすべきDB103がまだ残っているかどうかを判断する(S707)。残っていればS701に戻る。残っていなければデータ取得手順を終了する。
【0057】
なお、複数のDB103にアクセスする場合、レイアウトテンプレート301においてマージ処理を行うときにもDB103を区別する必要が生じることがある。その場合は、例えば、データマージ情報309が「<for serverNo="1" listName="dataList"/>」となっていて、DB103を識別できるようになっていれば、MFP101は、マージ処理も問題なく行える。
【0058】
次に、PC102での取得データリスト330の表示手順1について、図9のフローチャートを用いて説明する。図9は、PC102における取得データリスト330の表示手順1を示したフローチャートである。
【0059】
まず、PC102は、ユーザ操作に基づいて、作成済みのドキュメントセット300から表示対象とするものを選択する(S801)。
【0060】
次に、PC102は、ドキュメントセット300からレイアウトテンプレート301及びデータ取得指示情報302を取り出す(S802)。
【0061】
PC102は、データ取得指示情報302に基づき、SOAPメッセージを組み立ててDB103に送る(S803)。
【0062】
PC102は、DB103から取得データリスト330を取得する(S804)。
【0063】
次に、PC102は、DB103にスタイルシートがあるかどうかを判断する(S805)。スタイルシートは、取得データリスト330をどのような見映えで表示するかを示すものである。取得データリスト330の形式としては、HTML、XHTML、又は、独自形式等様々なものが考えられる。しかしながら、XML形式のように特に表示方法を定めていない形式の場合、スタイルシートがDB103からPC102に送られて、それに基づいてPC102での表示がなされるようにしてよい。
【0064】
DB103にスタイルシートがある場合は、PC102は、DB103からスタイルシートを取得する(S806)。スタイルシートがない場合は、PC102は、予め定められたデフォルトのスタイルシートを使用する(S807)。ここで、PC102は、S802で取り出したレイアウトテンプレート301をデフォルトのスタイルシートとして用いることもできる。レイアウトテンプレート301は、書式情報301〜308がHTML形式で記述されているので、PC102は、レイアウトテンプレート301に基づいて、取得データリスト330を表示することができる。
【0065】
PC102は、取得データリスト330にスタイルシートを適用して、ディスプレイ205に表示を行う(S808)。
【0066】
次に、PC102での取得データリスト330の表示手順2について、図10のフローチャートを用いて説明する。図10は、PC102における取得データリスト330の表示手順2を示したフローチャートである。なお、このときに使用する取得データリスト330の表示画面(取得データリスト表示画面1000)を図11に示す。図11は、取得データリスト表示画面1000を示す図である。
【0067】
PC102は、アクセス可能なDB103及びデータリスト317毎にボタン(1001及び1002)を含む取得データリスト表示画面1000を表示する(S901)。ユーザは、マウス等を操作して、ボタンを押下すると、PC102は、ボタンの押下等を検知する(S902)。
【0068】
次いで、PC102は、ボタンに関連付けられたDB103及びデータリスト317に関する情報を取得する(S903)。そして、PC102は、データリスト317に基づき、SOAPメッセージを組み立てて、DBに送る(S904)。
【0069】
以降の手順S905〜S909は、S804〜S808と同一である。
【0070】
S909の表示処理においては、例えば図11のデータリストテーブル1003に示すようにデータリストが表示される。データリストテーブル1003は、DB103"database1.xyz.com"のデータリスト317"dataList_A"のデータを表示した例である。ここでは、dtaList_Aは、項目として、name、address、tel、product、product_no、及びpurchase_dayを有する。そして、各々、氏名1004、住所1005、電話番号1006、購入商品1007、商品No1008及び購入年月1009として表示されるものとする。
【0071】
なお、ボタン1001をドキュメントセット300に関連付けて、図9のフローチャートを実行して、取得データリスト330をデータリストテーブル1003に示すように表示することもできる。また、ボタン1001をドキュメントセット300に関連付けていなくとも、図9のフローチャートを実行して、取得データリスト330をデータリストテーブル1003に示すように表示することもできる。
【0072】
図12は、PC102におけるドキュメントセット300の作成手順2を示したフローチャートである。
【0073】
取得データリスト表示画面1000が表示されているときに、PC102がユーザによる作成ボタン1010の押下を検知する(S1101)。ここで、作成ボタン1010は、ドキュメントセット300を作成するためのボタンである。
【0074】
すると、PC102は、設定できるデータ取得項目のリストを得る(S1113)。ここで、データ取得項目のリストは単に、データリストテーブル1003に表示されている項目のリストが列挙されるわけではない。データリストテーブル1003に表示されている項目は、DB103内のアクセス中のデータリスト317の一部であることがあり得る。
【0075】
例えば、データリスト317はデータ項目としてname、address、tel、product、product_no及びpurchase_dayを有している。しかしながら、データリストテーブル1003に表示されるのは、name、address及びtelのみということがあり得る。現在データリストテーブル1003に表示されているデータ項目のみをリストアップすると、その部分集合の範囲内でしか後述するS1103においてデータ取得項目を選択できなくなってしまう。従って、ここでは、データリスト317において選択可能な全てのデータ項目をリストアップするものとする。これは、ドキュメントセット300内のデータ取得指示情報302からデータリスト317を得ておくことによって実現することができる。またボタン1001或いはボタン1002が押下された場合は、ボタンに対応するデータリスト317を得ることによっても実現することができる。
【0076】
そして、PC102は、データ取得指示情報設定画面1200を表示する(S1102)。図13は、データ取得指示情報設定画面1200の一例を示す図である。
【0077】
データ取得指示情報設定画面1200は、現在処理中のデータリスト317を示すデータリスト表示部1201、取得するデータ項目を選択するための取得項目選択部1202及び検索条件を設定するための検索条件設定部1203を有する。
【0078】
取得項目選択部1202には、後で取得されることになるデータ項目と、チェックボックス1205とが列挙される。ユーザはこの中から、取得したいデータ項目のチェックボックス1205をチェックして選択する(S1103)。
【0079】
検索条件設定部1203は、検索条件を設定する場所である。ユーザは、ドロップダウンリスト1206を用いて、チェックボックス1205においてチェックしたデータ項目を選択することができる。ユーザは、ここで選択したデータ項目に対し、ラジオボタン1207を選択することによって、設定する検索条件を数値範囲の条件にするか、又は文字列の条件にするかを選ぶことができる。数値範囲条件を選んだ場合、一致条件か、以上条件か、以下条件かをユーザは、チェックボックス1208を用いて選ぶことができる。ここで選んだ条件に対し、ユーザは、数値をテキストボックス1209に入力することによって、数値範囲条件を決定する。ユーザは、文字列条件も同様に決定する(S1104)。
【0080】
複数の検索条件を設定する場合、ユーザは、検索条件の追加ボタン1210を押下する。すると、それまでの図13内の入力内容を保持したまま、検索条件1の下方に、検索条件2が同様に表示され、検索条件2の入力が可能となる。なお、このステップは図12には図示していない。
【0081】
最後にユーザが登録ボタン1211を押下すると、PC102は、これを検知する(S1105)。
【0082】
そしてPC102は、入力されたデータ取得項目と、検索条件と、に基づき、データ取得指示情報302を作成する(S1106)。
【0083】
次に、PC102は、レイアウトテンプレート設定画面を表示する(S1107)。この画面は、特に図示しないが、データリストテーブル1003が印刷時にどのようにレイアウトされるべきかをユーザが設定できるものである。つまり、タイトル、余白、線種、フォント等、レイアウトに関して一般的な設定ができるものである。
【0084】
ユーザは、レイアウトテンプレート設定画面を使用して、レイアウトを設定する(S1108)。この設定が終了すると、PC102は、ユーザが設定したレイアウトに基づき、レイアウトテンプレート301を作成する(S1109)。
【0085】
PC102は、このようにして作成されたデータ取得指示情報302と、レイアウトテンプレート301と、をバインドし、ドキュメントセット300を作成する(S1110)。
【0086】
PC102は、記憶媒体上に、ドキュメントセット300を保存する(S1111)。そして、PC102は、作成したドキュメントセット300に関連付けられたボタンを取得データリスト表示画面1000に追加表示する。このようなボタンの例がドキュメントセットAAA1012に関連付けられた「確認印刷」ボタン1013及び「即印刷」ボタン1014である。これらのボタンの働きについては後述する。
【0087】
図14は、PC102における印刷指示手順を示したフローチャートである。
【0088】
ユーザは取得データリスト表示画面1000上に表示される印刷指示のための各種ボタンを使って印刷を開始することができる。ここで、各種ボタンとは、「このまま印刷」ボタン1011、「最新データ印刷」ボタン1015、「確認印刷」ボタン1013及び「即印刷」ボタン1014等である。
【0089】
「このまま印刷」ボタン1011及び「最新データ印刷」ボタン1015は、データリストテーブル1003に表示されているデータを印刷するためのボタンである。
【0090】
「確認印刷」ボタン1013及び「即印刷」ボタン1014は、ボタンと関連付けられたドキュメントセット300を印刷するためのボタンである。
【0091】
図14において、ユーザが4つの印刷ボタンのうち、何れかを押下した場合、PC102は、データがデータリストテーブル1003に表示されているかどうかを判断する(S1401)。「このまま印刷」ボタン1011或いは「最新データ印刷」ボタン1015が押下された場合、PC102は、表示されていると判断する。それら以外のボタンが押下された場合、PC102は、表示されていないと判断する。
【0092】
データが表示されていない場合、PC102は、即座に印刷するかどうかを判断する(S1402)。「即印刷」ボタン1014が押下された場合、PC102は、即座に印刷すると判断する。「確認印刷」ボタン1013が押下された場合、PC102は、即座には印刷しないと判断する。
【0093】
即座には印刷しない場合、PC102は、「確認印刷」ボタン1013に関連付けられたドキュメントセット300に基づきデータを取得する(S1403)。取得方法の詳細はS802〜S804に準じる。
【0094】
即座に印刷する場合、PC102は、S1408に進む。
【0095】
取得したデータは、S805〜S808に準じる方法で、PC102がデータリストテーブル1003として表示する(S1404)。
【0096】
ユーザはデータを確認後、印刷を開始したい場合は、「このまま印刷」ボタン1011又は「最新データ印刷」ボタン1015を押下する。これらのボタンの何れかが押下された場合、PC102は、印刷指示があったと検知する(S1405)。
【0097】
印刷指示を検知した場合、PC102は、表示されたままのデータで印刷するかどうかを判断する(S1406)。「このまま印刷」ボタン1011が押下された場合、PC102は、表示されたままのデータで印刷すると判断する。「最新データ印刷」ボタン1015が押下された場合、PC102は、表示されたままのデータでは印刷しないと判断する。印刷指示を検知しない場合、PC102は、印刷を行わないものと見なし、図14に示す処理を終了する。
【0098】
表示されたままでのデータで印刷すると判断した場合、PC102は、それまでに取得した取得データリスト330をMFP101に対して送る(S1407)。表示されたままのデータでは印刷しないと判断した場合、PC102は、S1407をスキップする。
【0099】
次に、PC102は、PC102に現在ログインしているユーザのログイン情報をMFP101に送る(S1408)。MFP101に送られたログイン情報は、S405において、DB103に対するログイン時にも使用される。なお、ログイン情報はオプションであり、必ず送る必要があるわけではない。
【0100】
ログイン情報を送った後、PC102は、ドキュメントセット300をMFP101に送る(S1409)。これによって、MFP101でドキュメントセット300が印刷される。
【0101】
S1401でデータが表示されている場合、PC102は、表示されているデータリストテーブル1003に対応するドキュメントセット300が存在するかどうかを判断する(S1410)。「このまま印刷」ボタン1011或いは「最新データ印刷」ボタン1015が押下された場合でもドキュメントセット300が存在する場合がある。前記手順で「確認印刷」ボタン1013を押して、一旦データを表示させた場合がそうである。また上述したように、ボタン1001をドキュメントセット300に関連付けて、図9のフローチャートを実行する場合もそうなる。
【0102】
データリストテーブル1003に対応するドキュメントセット300が存在する場合、PC102は、S1406に進む。存在しない場合、PC102は、一時的に作成するドキュメントセット300が、データ取得項目がデータリストテーブル1003に表示されている通りのデータ「そのまま」、且つレイアウトが「デフォルト」でよいかどうかを判断する(S1411)。この判断は、新たなダイアログウィンドウを表示して、ユーザに選択させることで行ってもよいし、予め定められた設定情報に従って判断してもよい。
【0103】
前記設定でよい場合は、PC102は、その設定に従いドキュメントセット300を作成する(S1412)。その後、PC102は、S1406に進む。前記設定を望まない場合、PC102は、ドキュメントセット作成手順を辿る(S1413)。例えば、PC102は、図12のS1102以降の処理を実行する。
【0104】
以上、上述した実施形態によれば、可搬性を備えたドキュメントセットをMFP101に対して送り込むことによって、MFP101において印刷を行うことができる。また、ドキュメントセットは、データの取得方法を記述したデータ取得指示情報と、取得したデータに適用する書式情報であるレイアウトテンプレートと、を含むので、これにより、柔軟性の高い、ユーザの意図にあったデータの印刷が可能になる。また、MFP101は、印刷終了後はドキュメントセットを削除するので、ドキュメントセットが記憶媒体に残り続けることもなく、際限なくドキュメントセットの印刷を行うことができる。
【0105】
また、MFP101がドキュメントセットに基づいてデータをDB103から取得するとき、ドキュメントセットを送信したPC102のユーザログイン情報を用いて、DB103にログインする。このことにより、印刷を指示したユーザの権限でDB103にアクセスすることができる。
【0106】
また、MFP101がドキュメントセットに基づいてデータをDB103から取得するとき、ドキュメントセットを送信したPC102からユーザログイン情報が送られてこない場合、所定のログイン情報を用いてDB103にログインする。これにより、DB103へのデータアクセス権限がないユーザでも、所定の権限でドキュメントセットの印刷を行うことができる。
【0107】
また、MFP101は、ドキュメントセット内のテンプレートと、PC102から受信したデータと、をマージして印刷することにより、DB103にアクセスする必要がなく、PC102側から取得したデータそのままの形式で印刷することができる。
【0108】
また、DB103が有するデータリストに基づいて、データ項目を選択すると共に検索条件を設定することによってドキュメントセットを作成できる。従って、PC102は、ポータブルなドキュメントセットから第二のポータブルなドキュメントセットを容易に派生させて作ることができる。
【0109】
また、ドキュメントセットに基づいてDB103から取得したデータの内容を表示中に、PC102側で取得したデータそのままの形式で印刷するようMFP101に対して指示することができる。
【0110】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【0111】
【図1】文書印刷システムの構成を示すブロック図である。
【図2】MFP101の内部構成を示すブロック図である。
【図3】ドキュメントセットの説明図である。
【図4】DB103から取得した「顧客リスト」データを埋め込むためのレイアウトテンプレート1300を示す図である。
【図5】MFP101の印刷手順を示したフローチャートである。
【図6】PC102におけるドキュメントセット300の作成手順1を示したフローチャートである。
【図7】複数のDB103にアクセスすることを指示したデータ取得指示情報601を示す図である。
【図8】データ取得指示情報601を処理する、MFP101のデータ取得手順を示したフローチャートである。
【図9】PC102における取得データリスト330の表示手順1を示したフローチャートである。
【図10】PC102における取得データリスト330の表示手順2を示したフローチャートである。
【図11】取得データリスト表示画面1000を示す図である。
【図12】PC102におけるドキュメントセット300の作成手順2を示したフローチャートである。
【図13】データ取得指示情報設定画面1200の一例を示す図である。
【図14】PC102における印刷指示手順を示したフローチャートである。
【符号の説明】
【0112】
101 MFP
102 PC
103 DB
104 携帯端末
105 AP
【特許請求の範囲】
【請求項1】
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得手段と、
受信したドキュメントセットから取り出した前記テンプレートに前記データ取得手段が取得したデータをマージするマージ手段と、
前記マージ手段がマージした結果をレンダリングするレンダリング手段と、
前記レンダリング手段がレンダリングした結果を印刷する印刷手段と、
を有することを特徴とする文書印刷装置。
【請求項2】
前記ドキュメントセット受信手段は、ネットワークを介して通信可能な端末装置より前記ドキュメントセットを受信し、
前記端末装置より端末装置ユーザのログイン情報を受信するログイン情報受信手段と、
前記ログイン情報受信手段が受信したログイン情報を用いて前記サーバにログインする第一ログイン手段と、
を更に有することを特徴とする請求項1に記載の文書印刷装置。
【請求項3】
前記ログイン情報受信手段が前記端末装置より端末装置ユーザのログイン情報を受信しなかった場合、予め定められたログイン情報を用いて前記サーバにログインする第二ログイン手段を更に有することを特徴とする請求項2に記載の文書印刷装置。
【請求項4】
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得する第一データ取得手段と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、ネットワークを介して通信可能な端末装置よりデータを取得する第二データ取得手段と、
受信したドキュメントセットから取り出した前記テンプレートに前記第一データ取得手段又は前記第二データ取得手段が取得したデータをマージするマージ手段と、
前記マージ手段がマージした結果をレンダリングするレンダリング手段と、
前記レンダリング手段がレンダリングした結果を印刷する印刷手段と、
を有することを特徴とする文書印刷装置。
【請求項5】
前記印刷手段における印刷終了後、受信し、保持していたドキュメントセットを削除する削除手段を更に有することを特徴とする請求項1乃至4の何れか1項に記載の文書印刷装置。
【請求項6】
選択された、ネットワークを介して通信可能なサーバが有するデータリストに含まれるデータ項目から印刷対象とするデータ項目と、設定された、前記サーバからデータ項目を取得する際の検索条件と、に基づいてデータ取得指示情報を作成するデータ取得指示情報作成手段と、
レイアウト情報を記述するテンプレートを作成するテンプレート作成手段と、
前記データ取得指示情報作成手段が作成したデータ取得指示情報と、前記テンプレート作成手段が作成したテンプレートと、から、前記サーバが有するデータリストから取得すべきデータ情報を記述するドキュメントセットを作成するドキュメントセット作成手段と、
を有することを特徴とする文書作成装置。
【請求項7】
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバが有するデータリストから取得すべきデータ情報を記述したデータ取得指示情報と、を含む、一又は複数のドキュメントセットを記憶するドキュメントセット記憶手段と、
前記ドキュメントセット記憶手段に記憶されたドキュメントセットから前記データ取得指示情報を取り出すデータ取得指示情報取出手段と、
前記データ取得指示情報取出手段が取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得手段と、
前記データ取得手段が取得したデータを表示するデータ表示手段と、
前記データ表示手段が表示したデータに基づいて印刷を行う旨の指示があった場合、前記データ表示手段が表示したデータを、ネットワークを介して通信可能な印刷装置に送るデータ送信手段と、
を有することを特徴とする文書作成装置。
【請求項8】
文書印刷装置における文書印刷方法であって、
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信工程と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得工程と、
受信したドキュメントセットから取り出した前記テンプレートに前記データ取得工程において取得したデータをマージするマージ工程と、
前記マージ工程においてマージした結果をレンダリングするレンダリング工程と、
前記レンダリング工程においてレンダリングした結果を印刷する印刷工程と、
を有することを特徴とする文書印刷方法。
【請求項9】
文書印刷装置における文書印刷方法であって、
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信工程と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得する第一データ取得工程と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、ネットワークを介して通信可能な端末装置よりデータを取得する第二データ取得工程と、
受信したドキュメントセットから取り出した前記テンプレートに前記第一データ取得工程又は前記第二データ取得工程において取得したデータをマージするマージ工程と、
前記マージ工程においてマージした結果をレンダリングするレンダリング工程と、
前記レンダリング工程においてレンダリングした結果を印刷する印刷工程と、
を有することを特徴とする文書印刷方法。
【請求項10】
文書作成装置における文書作成方法であって、
選択された、ネットワークを介して通信可能なサーバが有するデータリストに含まれるデータ項目から印刷対象とするデータ項目と、設定された、前記サーバからデータ項目を取得する際の検索条件と、に基づいてデータ取得指示情報を作成するデータ取得指示情報作成工程と、
レイアウト情報を記述するテンプレートを作成するテンプレート作成工程と、
前記データ取得指示情報作成工程が作成したデータ取得指示情報と、前記テンプレート作成工程が作成したテンプレートと、から、前記サーバが有するデータリストから取得すべきデータ情報を記述するドキュメントセットを作成するドキュメントセット作成工程と、
を有することを特徴とする文書作成方法。
【請求項11】
文書作成装置における文書作成方法であって、
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバが有するデータリストから取得すべきデータ情報を記述したデータ取得指示情報と、を含む、一又は複数のドキュメントセットを記憶するドキュメントセット記憶手段に記憶されたドキュメントセットから前記データ取得指示情報を取り出すデータ取得指示情報取出工程と、
前記データ取得指示情報取出工程において取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得工程と、
前記データ取得工程において取得したデータを表示するデータ表示工程と、
前記データ表示工程において表示したデータに基づいて印刷を行う旨の指示があった場合、前記データ表示工程において表示したデータを、ネットワークを介して通信可能な印刷装置に送るデータ送信工程と、
を有することを特徴とする文書作成方法。
【請求項12】
請求項8又は9に記載の文書印刷方法、又は請求項10又は11に記載の文書作成方法をコンピュータに実行させることを特徴とするプログラム。
【請求項13】
請求項12に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【請求項1】
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得手段と、
受信したドキュメントセットから取り出した前記テンプレートに前記データ取得手段が取得したデータをマージするマージ手段と、
前記マージ手段がマージした結果をレンダリングするレンダリング手段と、
前記レンダリング手段がレンダリングした結果を印刷する印刷手段と、
を有することを特徴とする文書印刷装置。
【請求項2】
前記ドキュメントセット受信手段は、ネットワークを介して通信可能な端末装置より前記ドキュメントセットを受信し、
前記端末装置より端末装置ユーザのログイン情報を受信するログイン情報受信手段と、
前記ログイン情報受信手段が受信したログイン情報を用いて前記サーバにログインする第一ログイン手段と、
を更に有することを特徴とする請求項1に記載の文書印刷装置。
【請求項3】
前記ログイン情報受信手段が前記端末装置より端末装置ユーザのログイン情報を受信しなかった場合、予め定められたログイン情報を用いて前記サーバにログインする第二ログイン手段を更に有することを特徴とする請求項2に記載の文書印刷装置。
【請求項4】
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信手段と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得する第一データ取得手段と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、ネットワークを介して通信可能な端末装置よりデータを取得する第二データ取得手段と、
受信したドキュメントセットから取り出した前記テンプレートに前記第一データ取得手段又は前記第二データ取得手段が取得したデータをマージするマージ手段と、
前記マージ手段がマージした結果をレンダリングするレンダリング手段と、
前記レンダリング手段がレンダリングした結果を印刷する印刷手段と、
を有することを特徴とする文書印刷装置。
【請求項5】
前記印刷手段における印刷終了後、受信し、保持していたドキュメントセットを削除する削除手段を更に有することを特徴とする請求項1乃至4の何れか1項に記載の文書印刷装置。
【請求項6】
選択された、ネットワークを介して通信可能なサーバが有するデータリストに含まれるデータ項目から印刷対象とするデータ項目と、設定された、前記サーバからデータ項目を取得する際の検索条件と、に基づいてデータ取得指示情報を作成するデータ取得指示情報作成手段と、
レイアウト情報を記述するテンプレートを作成するテンプレート作成手段と、
前記データ取得指示情報作成手段が作成したデータ取得指示情報と、前記テンプレート作成手段が作成したテンプレートと、から、前記サーバが有するデータリストから取得すべきデータ情報を記述するドキュメントセットを作成するドキュメントセット作成手段と、
を有することを特徴とする文書作成装置。
【請求項7】
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバが有するデータリストから取得すべきデータ情報を記述したデータ取得指示情報と、を含む、一又は複数のドキュメントセットを記憶するドキュメントセット記憶手段と、
前記ドキュメントセット記憶手段に記憶されたドキュメントセットから前記データ取得指示情報を取り出すデータ取得指示情報取出手段と、
前記データ取得指示情報取出手段が取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得手段と、
前記データ取得手段が取得したデータを表示するデータ表示手段と、
前記データ表示手段が表示したデータに基づいて印刷を行う旨の指示があった場合、前記データ表示手段が表示したデータを、ネットワークを介して通信可能な印刷装置に送るデータ送信手段と、
を有することを特徴とする文書作成装置。
【請求項8】
文書印刷装置における文書印刷方法であって、
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信工程と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得工程と、
受信したドキュメントセットから取り出した前記テンプレートに前記データ取得工程において取得したデータをマージするマージ工程と、
前記マージ工程においてマージした結果をレンダリングするレンダリング工程と、
前記レンダリング工程においてレンダリングした結果を印刷する印刷工程と、
を有することを特徴とする文書印刷方法。
【請求項9】
文書印刷装置における文書印刷方法であって、
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバから取得すべきデータ情報を記述したデータ取得指示情報と、を含むドキュメントセットを受信するドキュメントセット受信工程と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、前記サーバからデータを取得する第一データ取得工程と、
受信したドキュメントセットから取り出したデータ取得指示情報に基づき、ネットワークを介して通信可能な端末装置よりデータを取得する第二データ取得工程と、
受信したドキュメントセットから取り出した前記テンプレートに前記第一データ取得工程又は前記第二データ取得工程において取得したデータをマージするマージ工程と、
前記マージ工程においてマージした結果をレンダリングするレンダリング工程と、
前記レンダリング工程においてレンダリングした結果を印刷する印刷工程と、
を有することを特徴とする文書印刷方法。
【請求項10】
文書作成装置における文書作成方法であって、
選択された、ネットワークを介して通信可能なサーバが有するデータリストに含まれるデータ項目から印刷対象とするデータ項目と、設定された、前記サーバからデータ項目を取得する際の検索条件と、に基づいてデータ取得指示情報を作成するデータ取得指示情報作成工程と、
レイアウト情報を記述するテンプレートを作成するテンプレート作成工程と、
前記データ取得指示情報作成工程が作成したデータ取得指示情報と、前記テンプレート作成工程が作成したテンプレートと、から、前記サーバが有するデータリストから取得すべきデータ情報を記述するドキュメントセットを作成するドキュメントセット作成工程と、
を有することを特徴とする文書作成方法。
【請求項11】
文書作成装置における文書作成方法であって、
レイアウト情報を記述したテンプレートと、ネットワークを介して通信可能なサーバが有するデータリストから取得すべきデータ情報を記述したデータ取得指示情報と、を含む、一又は複数のドキュメントセットを記憶するドキュメントセット記憶手段に記憶されたドキュメントセットから前記データ取得指示情報を取り出すデータ取得指示情報取出工程と、
前記データ取得指示情報取出工程において取り出したデータ取得指示情報に基づき、前記サーバからデータを取得するデータ取得工程と、
前記データ取得工程において取得したデータを表示するデータ表示工程と、
前記データ表示工程において表示したデータに基づいて印刷を行う旨の指示があった場合、前記データ表示工程において表示したデータを、ネットワークを介して通信可能な印刷装置に送るデータ送信工程と、
を有することを特徴とする文書作成方法。
【請求項12】
請求項8又は9に記載の文書印刷方法、又は請求項10又は11に記載の文書作成方法をコンピュータに実行させることを特徴とするプログラム。
【請求項13】
請求項12に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2008−40875(P2008−40875A)
【公開日】平成20年2月21日(2008.2.21)
【国際特許分類】
【出願番号】特願2006−215718(P2006−215718)
【出願日】平成18年8月8日(2006.8.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成20年2月21日(2008.2.21)
【国際特許分類】
【出願日】平成18年8月8日(2006.8.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]