(57)【要約】    【課題】信頼性の高い、製造が容易なファクシミリ装置を、提供する。    【解決手段】ファクシミリ装置を、コントローラ１２上のメインプログラムとＲＤＢＭＳとにより、受信したＦＡＸデータをＦＡＸデータベースへ登録する処理と、ＦＡＸデータベースに登録されているＦＡＸデータの印刷を行う処理とが、それぞれ、各種タイミングでセーブポイントが設定されるトランザクションとして行われる装置として構成しておく。    【選択図】図２
2008154138.tif 000002
【特許請求の範囲】
【請求項１】
メインプログラムとＲＤＢＭＳとが実行されるコントローラを備え、
前記メインプログラムが、
前記ＲＤＢＭＳを利用することにより、受信したＦＡＸデータをリレーショナルデータベースであるＦＡＸデータベースへ登録する処理と，前記ＦＡＸデータベースに登録されているＦＡＸデータの印刷を行う処理とを，各種タイミングでセーブポイントが設定される所定数のトランザクションとして実行するプログラムであると共に、他装置から送信されてきた前記ＦＡＸデータベースに対するアクセス要求に応答する機能を有するプログラムである
ことを特徴とするファクシミリ。
【請求項２】
前記メインプログラムが、
前記トランザクションを完了させることが出来ないエラーが発生した場合、当該エラーの内容が示されたエラーレポートを印刷するプログラムである
ことを特徴とする請求項１記載のファクシミリ。
【請求項３】
前記メインプログラムが、
前記ＲＤＢＭＳを利用することにより、原稿をスキャンすることにより生成した画像データを前記ＦＡＸデータベースへ登録する処理と，前記ＦＡＸデータベースに登録されているは画像データに関するＦＡＸ送信を行う処理とを，各種タイミングでセーブポイントが設定される所定数のトランザクションとして実行可能なプログラムである
ことを特徴とする請求項１又は請求項２に記載のファクシミリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファクシミリに関する。
【背景技術】
【０００２】
周知のように、現在、市販されている一般的なビジネス用のファクシミリは、受信したＦＡＸデータを不揮発性記憶手段（ＨＤＤ，フラッシュＲＯＭ等）に一旦記憶した後、その印刷を行う装置となっている。
【０００３】
そのようなファクシミリでは、装置の故障等により，受信が完了したＦＡＸデータの印刷が行えない場合があり得ることになるが、送信者が送信したと認識しているＦＡＸデータ（受信が完了したＦＡＸデータ）の印刷が行われないと、種々の問題が生じてしまう。このため、一般的なビジネス用のファクシミリは、上記のような場合には、ＦＡＸデータを受信したが印刷が行えなかった旨を何らかの形でユーザに通知するようにプログラムされた装置となっているのであるが、ＦＡＸデータの印刷が行えない場合にはさまざまなものがあるため、ファクシミリを、信頼性の高い装置（装置の故障等により，ＦＡＸデータを受信したことが分からなくなってしまうことがない装置）として動作させることが出来るプログラムを作成することは，極めて困難であった。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
そこで、本発明の課題は、信頼性の高い、製造が容易な（プログラムの作成が容易な）ファクシミリを、提供することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明では、ファクシミリを、メインプログラムとＲＤＢＭＳとが実行されるコントローラを備え、メインプログラムとして、ＲＤＢＭＳを利用することにより、受信したＦＡＸデータをリレーショナルデータベースであるＦＡＸデータベースへ登録する処理と，ＦＡＸデータベースに登録されているＦＡＸデータの印刷を行う処理とを，各種タイミングでセーブポイントが設定される所定数のトランザクションとして実行するプログラムであると共に、他装置から送信されてきたＦＡＸデータベースに対するアクセス要求に応答する機能を有するプログラムが用いられている装置として構成しておく。
【０００６】
すなわち、本発明のファクシミリは、ＦＡＸデータの印刷を行えない状態となった場合（トランザクションが正常に終了しなかった場合）、ＦＡＸデータベースが、各種セーブポイントを設定されている状態に維持される装置であると共に、ＦＡＸデータベース内の情報を外部装置を用いて読みみ出せる装置（メインプログラムが、他装置から送信されてきたＦＡＸデータベースに対するアクセス要求に応答する装置）となっている。しかも、本発明のファクシミリ装置は、実際のデータベース制御がＲＤＢＭＳによって行われる装置であるため、このファクシミリ装置は、信頼性の高い装置（装置の故障等により，ＦＡＸデータを受信したことなどが分からなくなってしまうことがない装置）であると共に、その製造が容易な装置となっていると言うことが出来る。
【０００７】
本発明のファクシミリを実現するに際しては、メインプログラムを、トランザクションを完了させることが出来ないエラーが発生した場合、当該エラーの内容が示されたエラーレポートを印刷するプログラムや、ＲＤＢＭＳを利用することにより、原稿をスキャンすることにより生成した画像データをＦＡＸデータベースへ登録する処理と，ＦＡＸデータベースに登録されているは画像データに関するＦＡＸ送信を行う処理とを，各種タイミングでセーブポイントが設定される所定数のトランザクションとして実行可能なプログラムとしておくことが出来る。
【発明を実施するための最良の形態】
【０００８】
以下、本発明を実施するための最良の形態を、図面を参照して詳細に説明する。
【０００９】
図１に示してあるように、本発明の一実施形態に係るファクシミリ装置は、スキャナユニット１１，コントローラ１２，操作パネル１３及び印刷エンジン１４を主な構成要素としたＭＦＰ(Multifunction Printer)１０に、ＦＡＸユニット２０を接続した装置である。
【００１０】
ＦＡＸユニット２０は、ＦＡＸデータの送受信を行うユニット（一種のモデム）である。ＭＦＰ１０は、ＦＡＸユニット２０が接続されている場合には、ＦＡＸ機能を有する複合機として動作し、ＦＡＸユニット２０が接続されていない場合には、ＦＡＸ機能を有さない複合機として動作する装置である。
【００１１】
そして、本実施形態に係るファクシミリ装置は、既存のファクシミリ装置と、ＦＡＸ機能関連のソフトウェア構成のみが異なる装置となっている。
【００１２】
以下、図２乃至図５を用いて、本実施形態に係るファクシミリ装置の構成及び動作を、さらに具体的に説明する。なお、以下では、本実施形態に係るファクシミリ装置のＦＡＸ機能関連の構成及び動作のみを説明することにする。
【００１３】
図２に模式的に示してあるように、本実施形態に係るファクシミリ装置（ＭＦＰ１０）のコントローラ１２（ＣＰＵ，ＲＯＭ，ＲＡＭ，ＨＤＤ，各種インタフェース回路等からなるユニット）は、リレーショナルデータベースであるＦＡＸデータベース（図では、“ＦＡＸＤＢ”）を備えたユニットである。また、コントローラ１２は、ＲＤＢＭＳ（リレーショナルデータベース管理システム）とメインプログラムとにより、ＦＡＸの送受信に関する各種の処理が行われるように構成した（プログラムした）ユニットとなっている。
【００１４】
このコントローラ１２に用いられているＲＤＢＭＳは、リレーショナルデータベース（ＦＡＸデータベース）を管理するためのプログラム（ソフトウェア）である。このＲＤＢＭＳは、各種トランザクション管理機能を有するもの〔セーブポイントの設定やロールバックが可能なもの；本実施形態では、Linter（株式会社ブライセン等の商標）〕となっている。
【００１５】
メインプログラムは、ファクシミリ装置（ＭＦＰ１０＋ＦＡＸユニット２０）を、ＦＡＸ機能を有する複合機として動作させるプログラムである。
【００１６】
このメインプログラムは、ファクシミリ装置の電源が投入されると、図３に示した手順の処理を開始するものとなっている。なお、メインプログラムは、この処理と並行的に、ファクシミリ装置をコピー機等として動作させる処理、外部装置からのＦＡＸデータベースへの各種アクセス要求に応答する処理、スキャナユニット１１にセットされている原稿のＦＡＸ送信を行うＦＡＸ送信処理等を、実行可能なプログラムとなっている。
【００１７】
すなわち、ファクシミリ装置の電源が投入されると、メインプログラムは、まず、ＦＡＸデータベースに接続する処理（ＲＤＢＭＳを介してＦＡＸデータベースを利用できるようにするための処理：ステップＳ１０１）を行う。
【００１８】
次いで、メインプログラムは、ＦＡＸデータベースに，未印刷のＦＡＸデータが記憶されているか否かを判断する（ステップＳ１０２）。ここで、未印刷のＦＡＸデータとは、ステップＳ１０６のＦＡＸデータ登録処理は正常に終了したが、電源断等に因り，ステップＳ１０７のＦＡＸ印刷処理が行われなかったＦＡＸデータ（ＦＡＸデータを変換することにより生成された印刷データ）のことである。
【００１９】
メインプログラムは、ＦＡＸデータベースに，未印刷のＦＡＸデータが記憶されていなかった場合（ステップＳ１０２；ＮＯ）には、ＦＡＸユニット２０によるＦＡＸデータの受信開始（ＦＡＸユニット２０からのＦＡＸデータの供給開始）を監視する処理（ステップＳ１０４）を開始する。また、メインプログラムは、ＦＡＸデータベースに，未印刷のＦＡＸデータが記憶されていた場合（ステップＳ１０２；ＮＯ）には、当該ＦＡＸデータに対するＦＡＸ印刷処理（ステップＳ１０３：詳細は後述）を行ってから、ステップＳ１０４の処理を開始する。
【００２０】
そして、メインプログラムは、ＦＡＸデータが受信され始めた場合（ステップＳ１０４；ＹＥＳ）には、ＦＡＸユニット２０が受信したＦＡＸデータ（以下、受信ＦＡＸデータと表記する）を，印刷データ〔印刷エンジン１４に供給する形式のデータ〕に変換した上でＦＡＸデータベースに登録（保存）する処理であるＦＡＸデータ登録処理（ステップＳ１０５）を行う。
【００２１】
このＦＡＸデータ登録処理は、受信ＦＡＸデータ（受信ＦＡＸデータ相当の印刷データ）のＦＡＸデータベースへの登録を，セーブポイントを設定しながらトランザクションとして行う処理である。また、ＦＡＸデータ登録処理は、受信ＦＡＸデータのＦＡＸデータベースへの登録が何らかの原因により失敗した場合には、トランザクションを完了させない（コミットせずに、セーブポイントを残す）処理となっている。
【００２２】
より具体的には、ＦＡＸデータ登録処理は、図４に示した手順の処理となっている。なお、この図４の流れ図は、セーブポイントの設定が行われる処理（ステップＳ２０２，Ｓ２０３等）に，○印を付けたものとなっている。
【００２３】
すなわち、ＦＡＸデータ登録処理時、メインプログラムは、まず、ステップＳ２０１にて、トランザクションをＲＤＢＭＳに開始させるための処理（その後、実行する一連のデータベースアクセスを，ＲＤＢＭＳにトランザクションとして取り扱わせるための処理）を行う。
【００２４】
次いで、メインプログラムは、受信ＦＡＸデータの受信開始時刻，送信元ＦＡＸ番号をＦＡＸデータベース内に保存し，セーブポイントを設定する処理（ステップＳ２０２）を行う。その後、メインプログラムは、ＦＡＸユニット２０からの所定量のデータ（原則、１ページ分のデータ）の受信（ステップＳ２０３）と，当該データの印刷データへの変換（ステップＳ２０５）と，変換によって得られた印刷データのＦＡＸデータベースへの保存（ステップＳ２０６）とを，セーブポイントを設定しながら繰り返す処理（ステップ２０３〜Ｓ２０８）を、開始する。
【００２５】
そして、メインプログラムは、全データの受信が完了した場合（ステップＳ２０８；ＹＥＳ）には、回線を切断する処理（ＦＡＸユニット２０に回線を切断させる処理：ステップＳ２０９）と、トランザクションを完了させるための処理（トランザクションをコミットする処理：ステップＳ２１０）とを行ってから、このＦＡＸデータ登録処理を終了する。
【００２６】
また、メインプログラムは、ステップ２０３〜Ｓ２０８の処理の実行中に、印刷データのＦＡＸデータベースへの保存に失敗した場合（ステップＳ２０７；ＹＥＳ）には、回線を切断する処理（ステップＳ２１１）のみを行ってから（トランザクションを完了させずに），ＦＡＸデータ登録処理を終了する。メインプログラムは、ステップ２０３〜Ｓ２０８の処理の実行中に、回線が切断された場合（ステップＳ２０４；ＹＥＳ）にも、トランザクションを完了させずに、ＦＡＸデータ登録処理を終了する。
【００２７】
このような内容のＦＡＸデータ登録処理をステップ１０５（図３）にて行ったメインプログラムは、ＦＡＸデータ登録処理によるＦＡＸデータの登録が失敗した（トランザクションが完了しない形でＦＡＸデータ登録処理が終了した）場合（ステップＳ１０６；ＮＯ）には、エラーレポート印刷処理（ステップＳ１０８）を行う。ここで、エラーレポート印刷処理とは、送信元ＦＡＸ番号や，発生したエラーの種類が印字された用紙（エラーレポート）を，印刷エンジン１４に印刷させる処理のことである。
【００２８】
そして、エラーレポート印刷処理を終えたメインプログラムは、ＦＡＸユニット２０によるＦＡＸデータの受信を監視している状態（ステップＳ１０４）に戻る。
【００２９】
一方、ＦＡＸデータの登録に成功した場合（ステップＳ１０６；ＹＥＳ）、メインプログラムは、ステップＳ１０７にて、ＦＡＸ印刷処理を行う。
【００３０】
ステップＳ１０７及びＳ１０３で行われるＦＡＸ印刷処理は、図５に示した手順の処理である。なお、図５の流れ図は、図４の流れ図と同様に、セーブポイントの設定が行われる処理に，○印を付けたものとなっている。
【００３１】
すなわち、ＦＡＸ印刷処理を開始したメインプログラムは、まず、ステップＳ３０１にて、トランザクションをＲＤＢＭＳに開始させるための処理（その後、実行する一連のデータベースアクセスを，ＲＤＢＭＳにトランザクションとして取り扱わせるための処理）を行う。
【００３２】
次いで、メインプログラムは、印刷開始時刻等をＦＡＸデータベース内に保存し，セーブポイントを設定する処理（ステップＳ３０２）を行う。その後、メインプログラムは、ＦＡＸデータベースに保存されている印刷データの印刷を行うためのループ処理（ステップＳ３０３，Ｓ３０４及びＳ３０５）を、開始する。
【００３３】
そして、メインプログラムは、エラーが発生することなく（ステップＳ３０４；ＮＯ）、印刷が完了した場合（ステップＳ３０５；ＹＥＳ）には、印刷を行ったＦＡＸデータベース内の印刷データ（図では、保存データ）を破棄する処理（ステップＳ３０６）と、トランザクションを完了させるための処理（トランザクションをコミットする処理：ステップＳ３０７）とを行ってから、このＦＡＸ印刷処理を終了し、ＦＡＸユニット２０によるＦＡＸデータの受信を監視している状態（図３：ステップＳ１０４）となる。
【００３４】
一方、印刷が完了する前に，エラーが発生した場合（ステップＳ３０４；ＹＥＳ）、メインプログラムは、印刷試行回数≦規定値が成立しているか否かを判断する（ステップＳ３１１）。ここで、印刷試行回数とは、図示していないステップにてメインプログラムがカウントするステップＳ３０２以降の処理の実行回数のことである。また、規定値とは、メインプログラム内に予め設定されている値のことである。
【００３５】
メインプログラムは、印刷試行回数≦規定値が成立していた場合（ステップＳ３１１；ＹＥＳ）には、ロールバックを行う（ステップＳ３１２）ことによりＦＡＸデータベースの状態をトランザクション開始時点のものに戻してから、ステップＳ３０２以降の処理を開始する。そして、メインプログラムは、印刷が完了することなく、印刷試行回数＞規定値が成立した場合（ステップＳ３１１；ＮＯ）には、エラーレポート印刷処理（ステップＳ３１３）のみを行ってから（トランザクションを完了させずに）、ＦＡＸ印刷処理を終了し、ＦＡＸユニット２０によるＦＡＸデータの受信を監視している状態（図３：ステップＳ１０４）となる。
【００３６】
コントローラ１２内のメインプログラムは、このような処理をＦＡＸ受信に関して行うプログラムとなっている。また、詳細説明は省略するが、メインプログラムは、ＦＡＸ送信処理も同様の手順で行うプログラム〔原稿をスキャンしてスキャン結果をＦＡＸデータベースへ登録する処理と、ＦＡＸデータベースに登録されているスキャン結果に基づいたＦＡＸ送信を行う処理とを、それぞれ、各種タイミングでセーブポイントを設定するトランザクションとして行うプログラム〕となっている。
【００３７】
さらに、メインプログラムは、ＦＡＸデータベースに対するアクセス要求に応答可能なプログラムとなっている。このため、本実施形態に係るファクシミリ装置は、ＦＡＸの送受信を失敗した場合、ＦＡＸデータベース内の情報（ＦＡＸデータベースに設定されている各種セーブポイント等）に基づき、その原因を的確に判断することや、受信したＦＡＸデータの一部を復活させることが可能な装置であることになる。しかも、ファクシミリ装置は、実際のデータベース制御がＲＤＢＭＳによって行われる構成を有している。従って、本実施形態に係るファクシミリ装置は、信頼性の高い装置（装置の故障等により，ＦＡＸデータを受信したことなどが分からなくなってしまうことがない装置）であると共に、その製造が容易な装置となっていることになる。
【００３８】
《変形形態》
上記したファクシミリ装置は、各種の変形を行うことが出来る。例えば、ファクシミリ装置を、ＦＡＸユニット２０が組み込まれている装置に変形することが出来る。また、ファクシミリ装置を、ＦＡＸユニット２０内にも、ＦＡＸデータを一時記憶しておくためのリレーショナルデータベースが用意されている装置（ＦＡＸユニット２０によるＦＡＸデータの受信もトランザクションとして取り扱われる装置）に変形することも出来る。また、ファクシミリ装置を、コピー処理時等にもトランザクション制御を行う装置や、ＦＡＸの送受信しか行えない装置に変形しても良いことなどは、当然のことである。
【図面の簡単な説明】
【００３９】
【図１】本発明の一実施形態に係るファクシミリ装置の構成図。
【図２】実施形態に係るファクシミリ装置が備えるコントローラのソフトウェア構成の説明図。
【図３】実施形態に係るファクシミリ装置内のメインプログラムが実行する処理の流れ図。
【図４】メインプログラムが実行するＦＡＸデータ登録処理の流れ図。
【図５】メインプログラムが実行するＦＡＸ印刷処理の流れ図。
【符号の説明】
【００４０】
１０  ＭＦＰ、  １１  スキャナユニット、
１２  コントローラ、  １３  操作パネル、１４  印刷エンジン
【図１】
2008154138.tif 000003
【図２】
2008154138.tif 000004
【図３】
2008154138.tif 000005
【図４】
2008154138.tif 000006
【図５】
2008154138.tif 000007