(57)【要約】【課題】複数の電子メールの対応関係を容易に把握できる情報を提供できるようにする。【解決手段】対応関係がある複数の電子メールのメール文書Ｍｄからヘッダ部Ｈｄとボディ部Ｂｄとを有するメッセージＭｓを抽出して、抽出した複数のメッセージＭｓをマージして１つのマージ文書Ｍｔを作成するようにした。これにより、このマージ文書Ｍｔから複数の電子メールの対応関係を容易に把握できる。【選択図】図５
2016045776.tif 000002
【特許請求の範囲】
【請求項１】
対応関係がある複数の電子メールのメール文書からヘッダ部を有するメッセージを抽出する抽出部と、
複数のメール文書から抽出された複数のメッセージをマージして１つのマージ文書を作成する作成部と
を有する情報処理装置。
【請求項２】
前記作成部は、
前記抽出された複数のメッセージを、各々のヘッダ部に記述された日時をもとに時系列順にソートするとともに、前記抽出された複数のメッセージから重複するメッセージを削除してマージする
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記作成部は、
前記マージ文書を記載した電子メールを作成する
ことを特徴とする請求項１及び２のいずれかに記載の情報処理装置。
【請求項４】
前記抽出部は、
対応関係がある複数の電子メールから添付ファイルを抽出し、
前記作成部は、
複数の電子メールから抽出された添付ファイルのうち、重複する添付ファイルを除く残りの添付ファイルを、前記マージ文書を記載した電子メールに添付する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記抽出部は、
ユーザによって指定された対応関係がある複数の電子メールのメール文書からメッセージを抽出する
ことを特徴とする請求項１乃至４のいずれかに記載の情報処理装置。
【請求項６】
前記作成部は、
前記マージ文書を印刷部に印刷させる
ことを特徴とする請求項１及び２のいずれかに記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関するものであり、例えば、電子メールを扱う情報処理装置に適用して好適なものである。
【背景技術】
【０００２】
従来、電子メールと、この電子メール（これを親メールとする）に添付された電子メール（これを子メールとする）とを一式の印刷物として印刷することにより、印刷物から親メールと子メールとの対応関係を容易に把握できるようにしたプリントシステムが提案されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１１０６１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のプリントシステムで印刷された印刷物によって把握できるのは１件の電子メールとして受信した親メールと子メールとの対応関係のみであり、複数のメール利用者の間で遣り取りされた複数の電子メールの対応関係を把握するようなことはできない。例えば、ＡさんがＢさんとＣさんに同じ内容の電子メールを送信して、ＢさんとＣさんのそれぞれがＡさんから送信されてきた電子メールに電子メールで返信したとする。この場合、ＡさんがＢさんとＣさんに送信した電子メールと、この電子メールに対してＢさんとＣさんのそれぞれがＡさんに返信した電子メールとの間には、対応関係が成り立つが、従来のプリントシステムでは、このような対応関係を把握できるような印刷物を印刷することはできなかった。
【０００５】
この為、複数の電子メールの対応関係が把握できるような情報を得るには、例えば、ユーザが、対応関係のある複数の電子メールの内容を１つのテキスト文書に編集するような面倒な作業を行う必要があった。このように、従来、電子メールを扱う情報処理装置では、複数の電子メールの対応関係を容易に把握できる情報を提供できないという問題があった。
【０００６】
本発明は以上の点を考慮したもので、複数の電子メールの対応関係を容易に把握できる情報を提供し得る情報処理装置を提案しようとするものである。
【課題を解決するための手段】
【０００７】
かかる課題を解決するため本発明においては、対応関係がある複数の電子メールのメール文書からヘッダ部を有するメッセージを抽出する抽出部と、複数のメール文書から抽出された複数のメッセージをマージして１つのマージ文書を作成する作成部とを設けるようにした。
【０００８】
このように、本発明では、対応関係がある複数の電子メールから抽出したメッセージをマージして１つのマージ文書を作成するようにしたことにより、このメール文書から複数の電子メールの対応関係を容易に把握できる。
【発明の効果】
【０００９】
本発明によれば、複数の電子メールの対応関係を容易に把握できる情報を提供し得る情報処理装置を実現できる。
【図面の簡単な説明】
【００１０】
【図１】印刷システムの機能構成を示すブロック図である。
【図２】印刷方法選択画面の構成を示す略線図である。
【図３】メール文書の構成を示す略線図である。
【図４】メッセージ管理テーブルの構成を示す略線図である。
【図５】メール文書及びマージ文書の例を示す略線図である。
【図６】マージ文書印刷処理の手順を示すフローチャートである。
【図７】マージ文書作成処理の手順を示すフローチャートである。
【図８】図７に示すフローチャートにつづく、マージ文書作成処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、発明を実施するための形態（以下、これを実施の形態と呼ぶ）について、図面を用いて詳細に説明する。
【００１２】
［１．印刷システムの機能構成］
図１に、本実施の形態による印刷システム１の機能構成を示す。この図１は、印刷システム１を構成するホストコンピュータ２とプリンタ３の各々の機能ごとのブロックを示す図である。ホストコンピュータ２とプリンタ３は、ネットワーク４を介して接続され、データの送受信を行う。ホストコンピュータ２には、プリンタ３に対応するプリンタドライバ５と、メールソフトなどの様々なアプリケーション６とがインストールされている。また、ホストコンピュータ２は、ユーザインタフェース部７を備え、このユーザインタフェース部７が、アプリケーション６の画面を表示したり、この画面に対する操作を受け付けたりするようになっている。
【００１３】
ホストコンピュータ２のプリンタドライバ５は、通常印刷、認証印刷、メール文書マージ印刷などの複数の印刷方法に対応し、使用目的に応じて、ユーザが任意の印刷方法をユーザインタフェース部７を介して選択できるようになっている。尚、通常印刷とは、認証を必要としない印刷方法である。通常印刷の場合、ホストコンピュータ２が発行した印刷ジョブがプリンタ３へ送られると、プリンタ３側で直ちにこの印刷ジョブに基づく印刷が行われる。認証印刷とは、プリンタ３側での認証を必要とする印刷方法である。認証印刷の場合、ホストコンピュータ２が発行した印刷ジョブがプリンタ３へ送られると、この印刷ジョブがプリンタ３に保存され、プリンタ３側でユーザ認証がされた後に、この印刷ジョブに基づく印刷が行われる。メール文書マージ印刷とは、詳しくは後述するが、対応関係がある複数の電子メールを１つのテキスト文書にマージして印刷する印刷方法である。このメール文書マージ印刷の場合、ホストコンピュータ２が発行した印刷ジョブがプリンタ３へと送られると、この印刷ジョブがプリンタ３に保存され、プリンタ３側でユーザが印刷ジョブを指定する為のジョブＩＤを入力すると、このジョブＩＤに対応する印刷ジョブに含まれる電子メールのテキスト文書（これをメール文書と呼ぶ）が１つのテキスト文書にマージされて印刷される。
【００１４】
ここで、プリンタドライバ５によって、ユーザインタフェース部７に表示される印刷方法選択画面２０を図２に示す。この印刷方法選択画面２０は、印刷ジョブの印刷方法を選択する為の画面であり、例えば、通常印刷、認証印刷、メール文書マージ印刷の３つの印刷方法のうちの１つを選択する為のラジオボタン２１Ａ、２１Ｂ、２１Ｃと、ジョブ名を入力する為のテキストボックス２２と、ジョブＩＤを入力する為のテキストボックス２３と、選択された印刷方法での印刷を決定する為のＯＫボタン２４と、印刷をキャンセルする為のキャンセルボタン２５とが設けられている。
【００１５】
この印刷方法選択画面２０を介して通常印刷又は認証印刷が選択されてＯＫボタン２４が押されたときにホストコンピュータ２から出力される印刷ジョブは、描画コマンドで構成され、文書や画像の印刷といった一般的な印刷に利用される。一方、印刷方法選択画面２０を介してメール文書マージ印刷が選択されてＯＫボタン２４が押されたときに、ホストコンピュータ２から出力される印刷ジョブは、メール文書であるプレーンテキストで構成され、画像を含まないテキスト文書、すなわち複数のメール文書をマージして生成されるテキスト文書（以下、これをマージ文書と呼ぶ）の印刷に利用される。尚、メール文書マージ印刷は、電子メールのメール文書をマージして作成されるマージ文書を印刷する印刷方法であり、この印刷方法では、電子メールに添付されている添付ファイルについては印刷対象外であり、印刷ジョブには含まれない。
【００１６】
また、認証印刷及びメール文書マージ印刷の実行には、ジョブ名及びジョブＩＤの入力が必要であり、印刷方法選択画面２０上で認証印刷又はメール文書マージ印刷が選択されると、テキストボックス２２及び２３へのジョブ名及びジョブＩＤへの入力が必須となる。そして、この印刷方法選択画面２０を介して入力されたジョブ名及びジョブＩＤは、ジョブ制御コマンドとして印刷ジョブに付加され、プリンタ３へと送られる。尚、詳しくは後述するが、メール文書マージ印刷の場合、対応関係を有する複数の電子メールのそれぞれの印刷ジョブを発行するときに、それぞれの印刷ジョブに対してユーザが同一のジョブＩＤを入力することを前提とする。
【００１７】
プリンタ３は、受信部８、マージ文書作成部９、印刷画像作成部１０、操作制御部１１、メモリ部１２、記憶部１３及び印刷部１４を備えている。受信部８は、ホストコンピュータ２から送られてくるデータ（すなわち印刷ジョブ）を受信して、この印刷ジョブに付加されたジョブ制御コマンドを解析する。そして、印刷ジョブが通常印刷の印刷ジョブ（これを通常印刷ジョブと呼ぶ）であった場合、受信部８は、この印刷ジョブ（通常印刷ジョブ）を印刷画像作成部１０へと受け渡す。
【００１８】
印刷画像作成部１０は、通常印刷ジョブを解析して、印刷部１４で扱うことのできるビットマップ画像データを作成する。印刷部１４は、印刷画像作成部１０からの指示を受けて、印刷画像作成部１０によって作成されたビットマップ画像データを印刷する。このようにして、通常印刷が行われる。
【００１９】
一方で、印刷ジョブが認証印刷の印刷ジョブ（これを認証印刷ジョブと呼ぶ）もしくはメール文書マージ印刷の印刷ジョブ（これをメール文書マージ印刷ジョブと呼ぶ）であった場合、受信部８は、この印刷ジョブ（認証印刷ジョブもしくはメール文書マージ印刷ジョブ）を、記憶部１３に印刷ジョブファイルとして保存する。
【００２０】
記憶部１３に保存される印刷ジョブファイルは、印刷ジョブの種別（すなわち認証印刷ジョブかメール文書印刷ジョブ）、ジョブ名、ジョブＩＤなどの情報とともに、記憶部１３にて管理される。この記憶部１３は、例えば、ＨＤＤ（ハードディスクドライブ）などの不揮発性記憶媒体であり、認証印刷ジョブの印刷ジョブファイル（これを認証印刷ジョブファイルと呼ぶ）やメール文書マージ印刷ジョブの印刷ジョブファイル（これをメール文書マージ印刷ジョブファイルと呼ぶ）など、様々なデータを保存する。メモリ部１２は、例えば、ＲＡＭなどの揮発性記憶媒体であり、印刷ジョブやビットマップ画像データなど、様々なデータを一時的に格納する。
【００２１】
操作制御部１１は、図示しない操作パネルを介して入力されるユーザからの指示に応じて、プリンタ３が有する様々な機能を実行する。機能の一つとして、認証印刷機能があり、実際、ユーザが操作パネルを操作して認証印刷機能を選択するとともにジョブＩＤを入力すると、操作制御部１１は、記憶部１３に保存されている認証印刷ジョブファイルの中から、入力されたジョブＩＤと一致するジョブＩＤが付されたファイルを抽出して、このファイルを印刷画像作成部１０へと受け渡す。印刷画像作成部１０は、通常印刷ジョブと同様に認証印刷ジョブを解析してビットマップ画像データを作成し、このビットマップ画像データの印刷を印刷部１４に指示する。印刷部１４は、印刷画像作成部１０によって作成された認証印刷ジョブに基づくビットマップ画像データを印刷する。このようにして、認証印刷が行われる。
【００２２】
さらに、もう１つの機能として、メール文書マージ印刷機能があり、実際、ユーザが操作パネルを操作してメール文書マージ印刷機能を選択するとともにジョブＩＤを入力すると、操作制御部１１は、記憶部１３に保存されているメール文書マージ印刷ジョブファイルの中から、入力されたジョブＩＤと一致するジョブＩＤが付されたメール文書マージ印刷ジョブファイルを抽出し、これをマージ対象ファイルとしてマージ文書作成部９にマージ文書の作成を指示する。
【００２３】
マージ文書作成部９は、操作制御部１１によって抽出されたマージ対象ファイルの各々に含まれる電子メールのメール文書をマージして１つのマージ文書ファイルを作成し、このマージ文書ファイルを、通常印刷ジョブと同様に印刷画像作成部１０へと受け渡す。印刷画像作成部１０は、マージ文書ファイルを解析してビットマップ画像データを作成し、このビットマップ画像データの印刷を印刷部１４に指示する。印刷部１４は、印刷画像作成部１０によって作成されたマージ文書ファイルに基づくビットマップ画像データを印刷する。このようにして、メール文書マージ印刷が行われる。
【００２４】
印刷システム１は、このような機能構成でなり、通常印刷及び認証印刷にくわえてメール文書マージ印刷が可能であり、このメール文書マージ印刷によって、対応関係を有する複数の電子メールを１つのテキスト文書にマージして印刷することができるようになっている。ここで、図３に、ホストコンピュータ２にインストールされているメールソフトによって遣り取りされる電子メールのテキスト文書Ｍｄ、すなわちメール文書Ｍｄの構成を示す。
【００２５】
メール文書Ｍｄは、ヘッダ部Ｈｄとボディ部ＢｄからなるメッセージＭｓで構成される。ヘッダ部Ｈｄには、電子メールの送信者、送信日時、宛先、件名などの情報が所定の書式（フォーマット）に従って記述されている。ボディ部Ｂｄには、電子メールの本文が記述されている。尚、図３に示すメール文書Ｍｄは、複数のメッセージＭｓで構成されているが、一番上のメッセージＭｓが、このメール文書Ｍｄの作成時に送信者によって記述されたメッセージである。これに対して、ヘッダ部Ｈｄの先頭行に「-----Original  Message-----」が付されたメッセージＭｓは、メールソフトの履歴付き返信機能によって、メール文書Ｍｄの作成時に、他の電子メールのメール文書から履歴としてコピー（引用）されたメッセージである。
【００２６】
履歴付き返信機能とは、受信済みの電子メールに返信をするときに、この受信済みの電子メールのメール文書Ｍｄを、送信する電子メールのメール文書Ｍｄ内に履歴としてコピーする機能のことである。ゆえに、この履歴付き返信機能を利用して同じ相手と何度も電子メールを遣り取りしていると、ヘッダ部Ｈｄの先頭行に「-----Original  Message-----」が付されたメッセージＭｓの数が増えていくことになる。メール文書Ｍｄの構成は、このようになっている。
【００２７】
プリンタ３のマージ文書作成部９は、マージ文書を作成する際、マージ対象ファイルのメール文書ＭｄからメッセージＭｓを抽出して、メール文書ＭｄをメッセージＭｓ単位でマージするようになっている。このとき、マージ文書作成部９は、メール文書Ｍｄから抽出したメッセージＭｓをメモリ部１２に展開されるメッセージ管理テーブル３０（図４）によって管理する。
【００２８】
図４（Ａ）に、メッセージ管理テーブル３０のテーブル構成を示す。メッセージ管理テーブル３０は、行番号３１、ジョブ名３２、日時３３、送信者３４、先頭行数３５、終端行数３６の６個のカラムで構成されている。このメッセージ管理テーブル３０では、１行（すなわち１レコード）で１つのメッセージＭｓの情報（これをメッセージ情報と呼ぶ）を管理するようになっている。つまり、メッセージ管理テーブル３０に記録されるメッセージ情報は、６個のカラムに対応する、行番号、ジョブ名、日時、送信者、先頭行数及び終端行数からなる情報である。
【００２９】
メッセージ情報の行番号は、その名の通り行（レコード）の番号であり、１番から順に付されるようになっている。ジョブ名は、メール文書マージ印刷ジョブのジョブ名、すなわちメッセージＭｓの抽出元のジョブ名である。日時は、メッセージＭｓのヘッダ部Ｈｄに記述されている送信日時、すなわちこのメッセージＭｓが電子メールとして送信された日時である。送信者は、メッセージＭｓのヘッダ部Ｈｄに記述されている送信者、すなわちこのメッセージＭｓを電子メールとして送信した送信者である。先頭行数及び終端行数は、それぞれメッセージＭｓの抽出元となるメール文書Ｍｄ内でのメッセージＭｓの先頭行数及び終端行数であり、先頭行数は、抽出したメッセージＭｓの先頭がメール文書Ｍｄ全体の何行目であるかを示す情報であり、終端行数は、抽出したメッセージＭｓの終端がメール文書Ｍｄ全体の何行目であるかを示す情報である。
【００３０】
実際、例えば、図５に示すように、マージ対象のメール文書Ｍｄとして３つのメール文書Ｍｄ１、Ｍｄ２、Ｍｄ３があるとする。メール文書Ｍｄ１は、ジョブ名が「メール文書１」であり、２つのメッセージＭｓ１、Ｍｓ２が記載されている。メール文書Ｍｄ２は、ジョブ名が「メール文書２」であり、３つのメッセージＭｓ３、Ｍｓ４、Ｍｓ５が記載されている。メール文書Ｍｄ３は、ジョブ名が「メール文書３」であり、２つのメッセージＭｓ６、Ｍｓ７が記載されている。この場合、マージ文書作成部９は、これら３つのメール文書Ｍｄ１〜Ｍｄ３から抽出された７つのメッセージＭｓ１〜Ｍｓ７のメッセージ情報をメッセージ管理テーブル３０に記録する。図４（Ａ）に示すメッセージ管理テーブル３０は、１行〜７行に、メッセージＭｓ１〜Ｍｓ７のメッセージ情報が記録されている例である。
【００３１】
［２．マージ文書印刷処理］
次に、図６を用いて、プリンタ３がマージ文書を作成して印刷するときの処理（これをマージ文書印刷処理と呼ぶ）の手順ＲＴについて詳しく説明する。尚、このマージ文書印刷処理を開始する前の時点で、既に、プリンタ３の記憶部１３には、ホストコンピュータ２から送られてきたマージ対象となる複数のメール文書マージ印刷ジョブファイル（すなわち同じジョブＩＤを有する複数のメール文書マージ印刷ジョブファイル）が保存されているものとする。
【００３２】
このマージ文書印刷処理は、ユーザによってメール文書マージ印刷機能が選択されてジョブＩＤが入力されることに応じて開始される。マージ文書印刷処理を開始すると、ステップＳＰ１において、プリンタ３の操作制御部１１は、記憶部１３に保存されているメール文書マージ印刷ジョブファイルの中から、入力されたジョブＩＤと一致するジョブＩＤが付されたメール文書マージ印刷ジョブファイルを抽出し、これをマージ対象ファイルとしてマージ文書作成部９にマージ文書の作成を指示する。
【００３３】
ステップＳＰ２において、マージ文書作成部９は、マージ文書作成処理を実行する。このマージ文書作成処理の詳しい手順ＳＲＴを、図７及び図８に示す。マージ文書作成部９は、マージ文書作成処理を開始すると、ステップＳＰ１０において、メッセージ管理テーブル３０及びメッセージ管理テーブル３０の行番号を示す変数であるポインタＰを初期化し（すなわちＰに初期値としての「０」を代入し）、続くステップＳＰ１１において、メール文書Ｍｄから抽出されたメッセージＭｓの数をカウントする為の変数であるメッセージカウンタＮを初期化する（すなわちＮに初期値としての「０」を代入する）。続くステップＳＰ１２において、マージ文書作成部９は、操作制御部１１によって抽出されたマージ対象ファイルの中から、未処理のマージ対象ファイルを１個選択して開く。
【００３４】
続くステップＳＰ１３において、マージ文書作成部９は、ステップＳＰ１２で開いたマージ対象ファイルに含まれるメール文書ＭｄからメッセージＭｓを抽出するメッセージ抽出処理を行う。具体的には、メール文書Ｍｄの先頭行から順に参照していき、送信者を示す「From:」、送信日時を示す「Date:」、宛先を示す「To:」、カーボンコピーを示す「Cc:」、件名を示す「Subject:」などの文字列で始まる行のかたまりをメッセージＭｓのヘッダ部Ｈｄとして検出し、さらに、このヘッダ部Ｈｄの先頭行数を算出するとともに、このヘッダ部Ｈｄの「From:」の行からメッセージＭｓの送信者を抽出し、「Date:」の行からメッセージＭｓの日時を抽出する処理を行う。この処理は、メッセージＭｓを１個抽出した時点で、もしくはメッセージＭｓを抽出できなかった時点で終了する。
【００３５】
尚、ヘッダ部Ｈｄの書式は、メールソフトによって異なる場合がある。そこで、プリンタ３では、例えば、ヘッダ部Ｈｄを検出する為の文字列のセットを書式ごとに用意して記憶部１３に記憶させ、マージ文書作成部９がこの文字列のセットを参照することで、様々な書式のヘッダ部Ｈｄを検出できるようになっている。
【００３６】
続くステップＳＰ１４において、マージ文書作成部９は、ステップＳＰ１３でのメッセージ抽出処理によって、メール文書ＭｄからメッセージＭｓを１個抽出できたかどうかを判別する。メッセージＭｓを１個抽出できた場合には、このステップＳＰ１４で肯定結果を得て、ステップＳＰ１５に移る。ステップＳＰ１５において、マージ文書作成部９は、メッセージカウンタＮ及びポインタＰをインクリメント（＋１）して、次のステップＳＰ１６に移る。ステップＳＰ１６において、マージ文書作成部９は、メッセージ管理テーブル３０に、抽出した１個のメッセージＭｓのメッセージ情報を記録する。すなわち、メッセージＭｓの抽出元であるマージ対象ファイルのジョブ名、メッセージ抽出処理で得られた日時、送信者、先頭行数をメッセージ情報としてメッセージ管理テーブル３０のＰ行目に記録する。尚、メッセージ情報の終端行数については、ステップＳＰ１７以降の処理で算出される為、この時点ではまだメッセージ管理テーブル３０には記録されない。
【００３７】
続くステップＳＰ１７において、マージ文書作成部９は、メッセージカウンタＮの値が２以上であるかどうかを判別する。ここで、否定結果を得ると、このことは、今回のメッセージ抽出処理によって抽出されたメッセージＭｓが、１個のメール文書Ｍｄから抽出された１個目のメッセージＭｓであることを意味する。このとき、マージ文書作成部９は、ステップＳＰ１３に戻り、再度、メール文書抽出処理を実行して、１個目のメッセージＭｓに続く２個目のメッセージＭｓが存在していれば、それを抽出する。
【００３８】
これに対して、ステップＳＰ１７で肯定結果を得ると、このことは、今回のメッセージ抽出処理によって抽出されたメッセージＭｓが、１個のメール文書Ｍｄから抽出された２個目以降のメッセージＭｓであることを意味する。このとき、マージ文書作成部９は、ステップＳＰ１８に移る。ステップＳＰ１８において、マージ文書作成部９は、メッセージカウンタＮ−１のメッセージＭｓ（すなわち前回のメッセージ抽出処理によって抽出されたメッセージＭｓ）の終端行数を、メッセージカウンタＮのメッセージＭｓ（すなわち今回のメッセージ抽出処理によって抽出されたメッセージＭｓ）の先頭行数−１とし、これをメッセージカウンタＮ−１のメッセージＭｓのメッセージ情報としてメッセージ管理テーブル３０のＰ−１行目に記録する。これにより、メッセージカウンタＮ−１のメッセージＭｓ、すなわち１個前に抽出されたメッセージＭｓのメッセージ情報の全てが記録されたことになる。その後、マージ文書作成部９は、ステップＳＰ１３に戻り、再度、メッセージ抽出処理を行う。
【００３９】
以降、マージ文書作成部９は、ステップＳＰ１４で否定結果を得るまで、すなわち、１個のメール文書Ｍｄから、全てのメッセージＭｓを抽出し終えるまで、ステップＳＰ１２〜ＳＰ１８までの処理を繰り返す。そして、１個のメール文書Ｍｄから全てのメッセージＭｓを抽出し終えると、マージ文書作成部９は、ステップＳＰ１４で否定結果を得、メール文書Ｍｄの終端行数を検出して、ステップＳＰ１９に移る。
【００４０】
ステップＳＰ１９において、マージ文書作成部９は、メッセージカウンタＮの値が１以上であるかどうかを判別する。ここで、肯定結果を得ると、このことは、ステップＳＰ１２で開いたマージ対象ファイルのメール文書Ｍｄから１個以上のメッセージＭｓを抽出したことを意味する。このとき、マージ文書作成部９は、次のステップＳＰ２０に移り、先に検出したメール文書Ｍｄの終端行数を、メール文書Ｍｄから最後に抽出したメッセージＭｓ（すなわちメッセージカウンタＮのメッセージＭｓ）の終端行数とし、これをこのメール文書Ｍｄのメッセージ情報としてメッセージ管理テーブル３０のＰ行目に記録して、ステップＳＰ２１に移る。これにより、メール文書Ｍｄから最後に抽出されたメッセージＭｓのメッセージ情報の全てが記録されたことになり、ステップＳＰ１２で開いたマージ対象ファイルのメール文書Ｍｄから抽出した全てのメッセージＭｓのメッセージ情報をメッセージ管理テーブル３０へ記録し終えたことになる。
【００４１】
このように、マージ文書作成部９は、メール文書Ｍｄの終端行数を、最後に抽出したメッセージＭｓの終端行数とし、またメール文書Ｍｄから複数のメッセージＭｓを抽出した場合には、最後に抽出したメッセージＭｓ以外のメッセージＭｓの終端行数を、次に抽出したメッセージＭｓの先頭行数−１として、メッセージ管理テーブル３０に記録するようになっている。
【００４２】
また、ステップＳＰ１９で否定結果を得ると、このことは、例えば、ステップＳＰ１２で開いたマージ対象ファイルのメール文書Ｍｄが、文字化けしていたり、未知の書式であったりするなどして、このメール文書ＭｄからメッセージＭｓを１個も抽出できなかったことを意味する。この場合、マージ文書作成部９は、ステップＳＰ２０を飛ばしてステップＳＰ２１に移る。
【００４３】
ステップＳＰ２１において、マージ文書作成部９は、全てのマージ対象ファイルからメッセージＭｓの抽出が完了したかどうかを判別する。ここで、まだ未処理のマージ対象ファイルが残っていれば、マージ文書作成部９は、このステップＳＰ２１で否定結果を得て、ステップＳＰ１１に戻り、メッセージカウンタＮを初期化してステップＳＰ１２に移り、未処理のマージ対象ファイルを１個開いてメッセージＭｓの抽出を行う。
【００４４】
これに対して、全てのマージ対象ファイルからメッセージＭｓの抽出が完了していれば、マージ文書作成部９は、ステップＳＰ２１で肯定結果を得て、ステップＳＰ２２（図８）に移る。ここで、例えば、図５に示すように、メール文書Ｍｄ１を有するマージ対象ファイルと、Ｍｄ２を有するマージ対象ファイルと、Ｍｄ３を有するマージ対象ファイルの３個のマージ対象ファイルから７個のメッセージＭｓ１〜Ｍｓ７を抽出したとすると、メッセージ管理テーブル３０には、図４（Ａ）に示すように、これら７個のメッセージＭｓ１〜Ｍｓ７のメッセージ情報が記録されていることになる。
【００４５】
ステップＳＰ２２（図８）において、マージ文書作成部９は、メッセージ管理テーブル３０に記録したメッセージ情報を、それぞれの日時に基づいて降順ソートする。これにより、日時が新しいものほど行番号が若くなるようにメッセージ情報がソートされる。さらに、マージ文書作成部９は、メッセージ管理テーブル３０に記録したメッセージ情報の中から、重複するメッセージ情報を削除する。具体的には、メッセージ管理テーブル３０に、日時と送信者が一致するメッセージ情報が複数記録されていれば、これらのうちの１つを残して、他を削除する。
【００４６】
こうすることで、メッセージ管理テーブル３０には、マージ対象ファイルから抽出されたメッセージ情報が、重複することなく、日時の新しい順にソートされた状態で記録されていることになる。実際、図４（Ａ）に示すように、７個のメッセージＭｓ１〜Ｍｓ７のメッセージ情報が記録されているメッセージ管理テーブル３０に対して、メッセージ情報の降順ソートと重複削除を行うと、メッセージ管理テーブル３０の中身は、図４（Ｂ）に示すようになる。すなわち、メッセージ管理テーブル３０の中身は、重複するメッセージＭｓ２、Ｍｓ５、Ｍｓ７のうちのＭｓ５とＭｓ７が削除され、残りのメッセージＭｓ１〜Ｍｓ４、Ｍｓ６の５個のメッセージ情報が、日時が新しい順（Ｍｓ６、Ｍｓ３、Ｍｓ４、Ｍｓ１、Ｍｓ２の順）にソートされた状態となっている。
【００４７】
続くステップＳＰ２３（図８）において、マージ文書作成部９は、マージ文書ファイルを新規で開き、次のステップＳＰ２４に移る。ステップＳＰ２４において、マージ文書作成部９は、メッセージ管理テーブル３０に記録されているメッセージ情報に基づいて、図５に示すように、マージ対象ファイルのメール文書ＭｄからメッセージＭｓをコピーして、これをマージ文書ファイルのマージ文書Ｍｔに貼り付けていく。具体的には、メッセージ管理テーブル３０（図４（Ｂ））に記録されているメッセージ情報を行番号が小さい順に参照し、参照したメッセージ情報のジョブ名に対応するメール文書Ｍｄから、参照したメッセージ情報の先頭行数と終端行数とで示される範囲のテキスト文書をメッセージＭｓとしてコピーし、これをマージ文書Ｍｔの先頭行から順に貼り付けていく。これにより、マージ文書Ｍｔには、マージ対象ファイルのメール文書Ｍｄに含まれていたメッセージＭｓが重複することなく日時の新しい順に記載される。尚、図５に示すマージ文書Ｍｔは、図４（Ｂ）に示すメッセージ管理テーブル３０に記録されているメッセージ情報に基づいて、先頭行から順に、メッセージＭｓ６、Ｍｓ３、Ｍｓ４、Ｍｓ１、Ｍｓ２が記載された例である。
【００４８】
このようにしてメール文書ＭｄからコピーしたメッセージＭｓを貼り付けたマージ文書Ｍｔを作成した後、マージ文書作成部９は、このマージ文書Ｍｔのファイル、すなわちマージ文書ファイルを例えばメモリ部１２に保存する。その後、続くステップＳＰ２５において、マージ文書作成部９は、ステップＳＰ１２で開いたマージ対象ファイルと、メモリ部１２に保存したマージ文書ファイルを閉じて、このマージ文書作成処理を終了する。マージ文書作成部９は、このような手順ＳＲＴでマージ文書Ｍｔを作成するようになっている。
【００４９】
その後、マージ文書作成部９は、図４に示すステップＳＰ３において、メモリ部１２に保存したマージ文書ファイルを、印刷画像作成部１０へと受け渡す。これにより、印刷画像作成部１０によってマージ文書ファイルに基づくビットマップ画像データが作成され、印刷部１４によってこのビットマップ画像データ、すなわちマージ文書Ｍｔが印刷される。プリンタ３は、上述の手順ＲＴによって、マージ文書Ｍｔを作成して印刷するようになっている。
【００５０】
［３．まとめと効果］
上述したように、プリンタ３は、ホストコンピュータ２から送信された複数のメール文書マージ印刷ジョブファイルを、記憶部１３に記憶する。その後、プリンタ３は、ユーザによって、メール文書マージ印刷機能が選択されてジョブＩＤが入力されると、記憶部１３に記憶されているメール文書マージ印刷ジョブファイルの中から、ユーザによって入力されたジョブＩＤと一致するジョブＩＤを持つ複数のメール文書マージ印刷ジョブファイルを抽出して、これらを対応関係がある電子メールを含んだマージ対象ファイルとする。
【００５１】
そして、プリンタ３は、複数のマージ対象ファイルの各々に含まれる電子メールのメール文書Ｍｄから、ヘッダ部Ｈｄとボディ部ＢｄからなるメッセージＭｓを抽出して、メッセージＭｓごとの情報であるメッセージ情報を、メッセージ管理テーブル３０に記録する。さらに、プリンタ３は、メッセージ管理テーブル３０に記録したメッセージ情報を、日時の新しい順にソートするとともに、重複するメッセージ情報を削除する。これにより、メッセージ管理テーブル３０には、マージ対象ファイルの電子メールから抽出されたメッセージＭｓのメッセージ情報が、重複することなく日時の新しい順にソートされた状態で記録されていることになる。
【００５２】
そして、プリンタ３は、メッセージ管理テーブル３０に記録されているメッセージ情報に基づき、マージ対象ファイルに含まれる電子メールのメール文書ＭｄからメッセージＭｓをコピーして、マージ文書ファイルのマージ文書Ｍｔに貼り付けていく。これにより、マージ文書ファイルのマージ文書Ｍｔには、マージ対象ファイルの電子メール、すなわち対応関係を有する電子メールからコピーされたメッセージＭｓが、重複することなく日時の新しい順に記載される。このようにして、マージ文書ファイルを作成した後、プリンタ３は、このマージ文書ファイルのマージ文書Ｍｔを印刷する。
【００５３】
かくして、プリンタ３は、印刷したマージ文書Ｍｔによって、ユーザに、複数の電子メールの対応関係を容易に把握させることができる。つまり、複数の電子メールの対応関係を容易に把握できる情報としてマージ文書Ｍｔをユーザに提供することができる。これにより、例えば、或る話題について複数のユーザ間で何度も電子メールが遣り取りされたような場合でも、マージ文書Ｍｔには、このとき遣り取りされた電子メールのメッセージＭｓが議事録のように重複することなく時系列に沿って記載される為、ユーザは、このマージ文書Ｍｔを参照するだけで、電子メールとして何度も遣り取りされた話題についての一連の経緯などを容易に把握することができる。
【００５４】
［４．他の実施の形態］
［４−１．他の実施の形態１］
尚、上述した実施の形態では、作成したマージ文書Ｍｔを印刷する情報処理装置としてのプリンタ３に本発明を適用したが、これに限らず、例えば、作成したマージ文書Ｍｔを画面に表示する情報処理装置や、作成したマージ文書Ｍｔを電子メールとして扱う情報処理装置などに適用してもよい。つまり、マージ文書Ｍｔを作成する機能を有する情報処理装置であれば、プリンタ３に限らず、種々の情報処理装置に本発明を適用できる。
【００５５】
実際、マージ文書Ｍｔを電子メールとして扱う情報処理装置の場合、この情報処理装置に、プリンタ３と同様のマージ文書作成部９を実装するようにする。そして、例えば、ユーザが、情報処理装置にインストールされているメールソフト上で、電子メールの一覧から対応関係がある複数の電子メールを選択すると、マージ文書作成部９が、選択された複数の電子メールをマージ対象の電子メール（すなわち対応関係がある電子メール）として、各電子メールのメール文書ＭｄからメッセージＭｓを抽出し、プリンタ３と同様に、抽出したメッセージＭｓをマージしてマージ文書Ｍｔを作成する。そして、マージ文書作成部９が、このマージ文書Ｍｔを、新規で開いた電子メールに貼り付けることにより、マージ文書Ｍｔが記述された電子メールを作成する。このようにすれば、マージ文書Ｍｔを電子メールとして送信するようなことができる。
【００５６】
また、このようにマージ文書Ｍｔを電子メールとして扱う場合、マージ文書作成部９が、電子メールに添付されている添付ファイルをマージして、マージ文書Ｍｔを貼り付けた電子メールに添付するようにしてもよい。具体的には、マージ文書作成部９が、マージ対象の電子メールから添付ファイルを抽出し、抽出した添付ファイルのうち、重複する添付ファイルは削除して、残りの添付ファイルを、新規で開いた電子メールに添付する。このようにすれば、マージ対象の電子メールのメッセージＭｓをマージすることにくわえて添付ファイルもマージした電子メールを作成することができる。尚、重複する添付ファイルを削除するには、例えば、ファイル名とサイズと更新日時が一致する複数の添付ファイルのうちの１つを残して残りを削除すればよい。
【００５７】
［４−２．他の実施の形態２］
また、上述した実施の形態では、電子メールのメール文書Ｍｄに、履歴付き返信機能によって貼り付けられたメッセージＭｓが含まれていることがあると説明した。ところで、履歴付き返信機能によっては、メッセージＭｓの各行の先頭に、履歴を引用（コピー）したことを示す記号（例えば「＞」であり、これを履歴引用情報と呼ぶ）が付されていることがある。この場合、プリンタ３のマージ文書作成部９が、例えば、ヘッダ部Ｈｄを誤検出しないように、メール文書Ｍｄから履歴引用情報を消去したうえで、ヘッダ部Ｈｄを検出するようにしてもよい。また、履歴引用情報が付されていることを想定して、メール文書Ｍｄの履歴引用情報を除いた部分からヘッダ部Ｈｄを検出するようにしてもよい。さらに、ホストコンピュータ２側で、メール文書マージ印刷ジョブのメール文書Ｍｄからこの履歴引用情報を消去したうえで、プリンタ３側に送信するようにしてもよい。履歴付き返信機能によってヘッダ部Ｈｄの先頭行に付される「-----Original  Message-----」も履歴引用情報であり、この「-----Original  Message-----」についても、プリンタ側で消去するようにしてもよいし、ホストコンピュータ２側で消去するようにしてもよい。
【００５８】
［４−３．他の実施の形態３］
さらに、上述した実施の形態では、ユーザによって入力されたジョブＩＤと一致するジョブＩＤを持つ複数のメール文書マージ印刷ジョブファイルを、対応関係を有する電子メールを含んだマージ対象ファイルとした。これに限らず、例えば、プリンタ３の操作制御部１１が、記憶部１３に保存されているメール文書マージ印刷ジョブファイルのリストを表示させ、このリストの中からユーザによって選択されたメール文書マージ印刷ジョブファイルを、対応関係を有する電子メールを含んだマージ対象ファイルとするなどしてもよい。
【００５９】
［４−４．他の実施の形態４］
さらに、上述した実施の形態では、対応関係がある複数の電子メールのメール文書Ｍｄからヘッダ部Ｈｄとボディ部Ｂｄとを有するメッセージＭｓを抽出する抽出部、及び複数のメール文書Ｍｄから抽出された複数のメッセージＭｓをマージして１つのマージ文書Ｍｔを作成する作成部の具体例としてのマージ文書作成部９をプリンタ３に設けるようにした。これに限らず、例えば、マージ文書作成部９の代わりに、抽出部として機能する機能部と、作成部として機能する機能部とを別々にプリンタ３に設けるなどしてもよい。
【００６０】
［４−５．他の実施の形態５］
さらに、本発明は、上述した実施の形態及び他の実施の形態に限定されるものではない。すなわち本発明は、上述した実施の形態と他の実施の形態の一部または全部を任意に組み合わせた実施の形態や、一部を抽出した実施の形態にもその適用範囲が及ぶものである。
【産業上の利用可能性】
【００６１】
本発明は、電子メールを扱う情報処理装置で広く利用することができる。
【符号の説明】
【００６２】
１……印刷システム、２……ホストコンピュータ、３……プリンタ、８……受信部、９……マージ文書作成部、１０……印刷画像作成部、１１……操作制御部、１２……メモリ部、１３……記憶部、１４……印刷部、３０……管理テーブル、Ｂｄ……ボディ部、Ｈｄ……ヘッダ部、Ｍｄ……メール文書、Ｍｓ……メッセージ、Ｍｔ……マージ文書。
【図１】
2016045776.tif 000003
【図２】
2016045776.tif 000004
【図３】
2016045776.tif 000005
【図４】
2016045776.tif 000006
【図５】
2016045776.tif 000007
【図６】
2016045776.tif 000008
【図７】
2016045776.tif 000009
【図８】
2016045776.tif 000010