(実施例1)
図1は、本実施例のFAX文書を管理する装置を含む文書管理システムの全体構成を示す。この文書管理システムは、1以上の顧客(101、102)が所有するFAX装置(108、109)と、商社の支店(103、104)が所有する複合機(111、113)と、1以上のメーカー(106、107)が所有するFAX装置(121、122)は、公衆回線(電話回線)124を介してFAX通信することが可能である。なお、FAX装置(108、109、121、122)は、FAX専用機に限るものではなく、FAX画像の送受信が可能な装置であれば、複合機であってもPCであっても構わない。また、本実施例では、商社の本店105は公衆回線124に接続させていないが、複合機等の装置を設置して接続させるようにしてもよい。
また、商社支店(103、104)の複合機(111、113)やPC(110、114)は、LAN(112、115)を介してインターネット123に接続している。また、商社の本店105には、各支店の受発注データを管理する基幹システム116、FAXサーバー118、文書を格納しておく文書サーバー119、各種データの保存場所であるデータベース117が存在し、LAN120を介してインターネット123にも接続している。これらの装置は、LAN(112、115、120)やインターネット123等のネットワークを介して、データの送受信を行うことが可能である。なお、データベース117は、基幹システム116、FAXサーバー118、文書サーバー119からLAN120経由でアクセスされるものとする。また、本実施例ではデータベース117を独立の装置として記載しているが、基幹システム116、FAXサーバー118、文書サーバー119それぞれの中、または、いずれか1つの中に配置してもよいし、商社本店105外に設置してもよい。また、図1ではデータベース117を1つ記載しているが、役割に応じて複数のデータベースを設けても構わない。
商社支店のPC110、114は、WEBブラウザ(又は専用のアプリケーションプログラム)を用いて、基幹システム116、FAXサーバー118、文書サーバー119が提供するユーザインターフェースを利用できるものとする。なお、PC110、114の代わりに、複合機111、113がWEBブラウザを有し、複合機111、113のWEBブラウザの画面から直接基幹システム116、FAXサーバー118、文書サーバー119が提供するユーザインターフェースを利用するようにしても構わない。さらに、PC110、114の代わりに、ネットワークに接続可能なモバイル端末のWEBブラウザを介して、基幹システム116、FAXサーバー118、文書サーバー119が提供するユーザインターフェースを利用するようにしても構わない。
複合機111、113は、公衆回線124を通じて受信したFAX画像を蓄積したり印刷したりすることも可能である。なお、本実施例では、公衆回線124を通じてFAXの送受信を行っているが、FAXの通信相手となるFAX装置がインターネット123に接続しており、インターネットを利用したFAX送受信プロトコルに対応していれば、インターネット123を介したFAX送受信も可能である。複合機111、113は、インターネット123上に公開されているFAXサーバー118に対して、FAXデータを送信する機能も有する。このインターネットを介したFAXサーバーに対するFAXデータの送信においては、予め決められたルールに従い、FAXサーバー118の適当なフォルダに対して送信を行う。なお、この能力は、複合機111、113のファームウェアにより提供されても、複合機111、113に後からインストールされて動作するプログラムによって提供されてもよい。なお、複合機111、113は、FAX送受信機能、インターネット123上に公開されているFAXサーバー118に対するFAXデータの送信機能があれば、複合機以外の装置でも構わない。FAX送受信機能、FAXデータの送信機能は、他の装置と連携して実現される物でもよい。
基幹システム116は、支店103、104が受けた顧客101、102からの注文を起点とする一連の受発注情報、各顧客情報、各メーカー情報、各支店の担当者情報等を一元管理している。すなわち、各顧客と各支店との間で送受信した情報や、各支店と各メーカーとの間で送受信した情報などが、顧客からの注文ごとにまとめて管理されるものとする。
また、FAXサーバー118は、複合機111、113から転送されたFAX文書(注文書)を起点に、後述の図8で説明する処理フローを実現する。また、文書サーバー119は、FAXサーバー118で処理した各種文書データを最終的に保管するストレージを備えた装置である。
図2は、本実施例における複合機111の構成を示すブロック図である。なお、複合機113も同様の構成である。CPU202を含む制御部201は、複合機111全体の動作を制御する。CPU202は、ROM203に記憶された制御プログラム(コンピュータプログラム)を読み出し実行することにより、読取制御や送信制御などの各種制御を行う。この制御プログラムは後述のコントローラ制御部402を含む。RAM204は、CPU201の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD205は、画像データや各種プログラム、或いは各種情報テーブルを記憶する。
操作部I/F206は、操作部212と制御部201とを接続するインターフェースである。操作部212には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。複合機111のWebブラウザ404、アプリケーション409、410は、処理に応じてAPI403や仮想マシンAPI406を呼び出し、コントローラ制御部402に処理を依頼することによって操作画面を操作部212の液晶表示部に表示する。
プリンタI/F207は、プリンタ213と制御部201とを接続するインターフェースである。プリンタ213で印刷すべき画像データはプリンタI/F207を介して制御部201から転送され、プリンタ213において記録媒体上に印刷される。複合機111のWebブラウザ404、アプリケーション409、410は、印刷処理に応じてAPI403や仮想マシンAPI406を呼び出し、コントローラ制御部402に処理を依頼することによって印刷処理を実行する。
スキャナI/F208は、スキャナ214と制御部201とを接続するインターフェースである。スキャナ214は、原稿上の画像を読み取って画像データを生成し、スキャナI/F208を介して制御部201に該画像データを入力する。後述の複合機111のWebブラウザ404、アプリケーション409、410は、処理に応じてAPI403や仮想マシンAPI406を呼び出し、コントローラ制御部402に処理を依頼することによってスキャン処理を実行し、画像データを受信する。
アクセサリI/F209は、フィニッシャ215と制御部201とを接続するインターフェースである。図2では、接続するアクセサリの代表としてフィニッシャ215を示したが、他のアクセサリを1つ、または複数接続する事も可能である。アクセサリとしては、パンチ穴を空けるパンチャー、ステープルを行なうステープラー、製本を行う製本ユニット、出力物のソートを行うソーター等がある。
モデムI/F210は、モデム216と制御部201(複合機111)とを接続するインターフェースである。モデム216は、公衆回線124に接続し、外部からのFAXの受信、および、外部へのFAXの送信を行なう。
ネットワークI/F211は、制御部201(複合機111)とLAN112とを接続するインターフェースである。ネットワークI/F211は、LANやインターネットを介して接続された外部装置に画像データや情報を送信したり、該外部装置から各種情報を受信したりする。なお、FAX装置108、109、121、122も、アクセサリI/F209、フィニッシャ215、ネットワークI/F211を除く部分は、同様の構成であるものとする。
図3は、FAXサーバー118の構成を示すブロック図である。制御部301は、サーバー118全体の動作を制御する。CPU302は、ROM303に記憶された制御プログラム(コンピュータプログラム)を読み出して各種制御処理を実行する。RAM304は、CPU302の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD305は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。ネットワークI/F306は、制御部301(FAXサーバー118)をLAN120に接続するためのインターフェースであり、LANやインターネットを介して他の装置と各種情報を送受信する。なお、基幹システム116、文書サーバー119も、図3と同様のハードウェア構成を有するものとする。
図4は、本実施例における複合機111で実行される基本的なソフトウェア構成を示す図である。なお、複合機113も同様の構成であるものとする。
401は、複合機111全体を制御する本発明の第1の実行環境の一例である。一般的に401は、複合機111の各種機能をリアルタイムに制御可能なリアルタイムOSの各モジュール、或いは、CPUに命令してクリティカルに複合機のオプション装置や拡張カードを含む各機能を制御することが可能なライブラリ群から構成される。更に、401はその上位で動作するアプリケーションに対して、インターフェース・コマンドを提供するモジュール群を含む。ここでは、401をオペレーティング・システム(以下、OSと略記する)と呼ぶ。
402は、OS401上で動作するコントローラ制御部であり、スキャナ214やプリンタ213などを制御するモジュールにより構成されるものである。403は、アプリケーション・プログラミング・インターフェース(以下、APIと略記する)である。API403は、アプリケーションからの命令の入力の命令列に応答して、コントローラ制御部402にアクセスするための処理とネットワークI/F211を介してネットワークに接続された機器等に制御コマンドを送る機能を有する。404は、OS401上で動作するアプリケーションの1つであるWebブラウザであり、API403を使用してコントローラ制御部402に各種処理を依頼する。
405は、特定のアプリケーションを実行するために最適な第2の実行環境であり、例えば、Java(登録商標)の仮想マシンなどにより実現されるものである。406は、仮想マシン405上のアプリケーションがOS401上で動作するコントローラ制御部402にアクセスするためのAPIであり、本実施例においてはAPI403を呼び出すための変換モジュールの機能を有するものである。
407は、仮想マシン405上で動作するアプリケーション409、410を統括的に制御する機能を有するフレームワークモジュールである。408は仮想マシン404上の他のアプリケーションを管理するためのアプリケーションであり、フレームワーク407と協調し、アプリケーション409、410のダウンロード、アップロード、消去、無効化を行うものである。
409、410は、仮想マシン404上で動作するアプリケーションであり、仮想マシンAPI406を使用しコントローラ制御部402に各種処理を依頼する。なお、本実施形態の説明においては、仮想マシン上で動作するアプリケーション409、410を想定して説明するが、ネイティブなアプリケーションであっても構わない。また、本実施形態において、アプリケーション409は、複合機111が受信したFAX画像を、FAXサーバー118に対して送信する機能を実行するものとして説明する。
411は、仮想マシン405が使用する資源を管理するリソース管理部であり、OS401上で動作する。リソース管理部411は、仮想マシン405、仮想マシンAPI406、フレームワーク407、或いはOS401上の全アプリケーションがメモリ等のリソース資源を使用する際、予め決められた以上の資源が使用できないように制限するものである。例えば、操作部212に画面を表示するアプリケーションについて、予め決められたアプリケーション上限数を超えた場合には、UI表示を行うことができない、などがある。
図5は、アプリケーション409、410のソフトウェア構成(モジュール)を示すブロック図である。これらのモジュールは複合機111(または複合機113)のHDD205もしくはROM203に格納され、CPU202が実行する。UI制御部501は、複合機111が処理を行う際の設定をユーザに促すためのUI画面を表示する。例えば、スキャン処理を行う場合、UI制御部501は、画像処理装置自体が生成可能なスキャンデータを設定させるためのUI画面を表示する。また、印刷処理を行う場合、UI制御部501は画像処理装置自体が印刷可能なデータの取得を設定させるためのUI画面を表示する。また、UI制御部501は、後述のWebブラウザ連携部505からの依頼により、アプリケーション409、410の画面を操作部211の前面に表示するといった制御を行う。
スキャン処理制御502は、UI制御部501で設定したスキャンの設定内容にしたがって、設定内容が画像処理装置自体のスキャン処理能力と整合性があっているかを考慮した処理を行う。印刷処理制御部503は、UI制御部501で設定した印刷の設定内容にしたがって、設定内容が画像処理装置自体の印刷処理能力と整合性があっているかを考慮した処理を行う。通信部504は、サーバーと通信しデータの送受信や、FTP、SMB、WebDAV等にしたがってファイルの送受信を行う処理を行う。
Webブラウザ連携部505は、Webブラウザ404と通信し、Webブラウザ404の呼び出しや、Webブラウザ404からの操作終了の通知を受け取るといった処理を行う。Webブラウザ連携部505は、Webブラウザ404から操作終了の通知を受け取った場合、アプリケーション409、410の画面を操作部212の前面に表示するようUI制御部501に依頼する。
図6は、Webブラウザ404のソフトウェア構成モジュールを示すブロック図である。これらのモジュールは複合機111(または複合機113)のHDD205もしくはROM203に格納され、CPU202が実行する。
通信部601は、HTTPプロトコル/HTTPSプロトコルにしたがって、サーバーと通信する。より具体的には、通信部601は、Webブラウザ404のUI制御部602で表示した操作画面を介して入力される情報を、サーバーで実行されているアプリケーションなどに対するリクエストとして送信する。また、通信部601は、サーバーで実行されているアプリケーションなどから送信されるレスポンス(処理結果)を受信する。また、通信部601は、アプリケーション409のような複合機111内部のアプリケーションの通信部504とも通信可能である。
UI制御部602は、通信部601が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部211に操作画面を表示する。また、UI制御部602は、後述のアプリケーション連携部604からの依頼により、Webブラウザ404の画面を操作部212の前面に表示するといった制御を行う。セッション管理部603は、サーバー102とWebブラウザ404が通信を行う際のセッション情報を管理する。
アプリケーション連携部604は、アプリケーション409と通信し、アプリケーション409からのWebブラウザ404の呼び出し要求を受信する処理や、アプリケーション409への操作終了の通知を送信する処理などを行う。アプリケーション連携部604は、アプリケーション409からのWebブラウザ404の呼び出し要求を受信すると、Webブラウザ404の画面を操作部212の前面に表示するようUI制御部602に依頼する。
図7は、FAXサーバー118において本発明に係る処理プログラム(コンピュータプログラム)を実行する際、処理プログラムをRAM上にロードした際のメモリマップの構造を示す図である。メモリマップは、本装置上の入出力を司る基本I/Oプログラム701、各処理プログラムに動作環境を提供するシステム・プログラム702、本実施例の処理プログラムを初めとする各種処理プログラム703、関連データを格納するエリア704、各種プログラムが動作する際に一時的に利用するワークエリア705で構成されている。なお、容量の制約により701〜705として利用する領域が足りなくなった場合、HDDをRAMの領域の一部として扱うことも可能である。
図8は、FAXサーバー118と、期間システム116、文書サーバー119、顧客101、商社支店103、商社本店105、メーカー106の間におけるデータの流れ、および利用するユーザのアクションを含めたワークフローを示すシーケンス図である。
まず、FAX装置108は、顧客101の指示に基づき、商社支店103に対して注文書(注文のFAX文書)をFAX送信する(801)。そして、商社支店103の複合機111は、当該FAX送信された注文書を受信する。
次に、複合機111は、予め登録されている設定に従って、商社本店105のFAXサーバー118に対して、当該FAX受信した注文書(注文FAX文書)を転送する(802)。転送する際、PDF等の他のフォーマットの文書に変換して送信してもよいし、FAX画像データのまま送信してもよいし、テキストデータ等にデータ変換して送信するようにしてもよい。
FAXサーバー118は、複合機111から受信したデータを、注文書803として、FAXサーバー118内のフォルダ(またはデータベース117)に一時保存する。なお、本実施例では、FAXサーバー118内のフォルダに転送するものとするが、FAXサーバー118が管理可能な領域であれば、物理的にFAXサーバー118内のフォルダでなくても構わない。
一方、商社支店103の担当者は、PC110を用いて、FAXサーバー118に保存されている注文書803を閲覧し(804)、当該閲覧した注文書に記載されている内容にしたがって、キーボード等を用いて、基幹システム116に対して注文情報を入力する(805)。
基幹システム116は、PC110から注文情報が入力されると(805)、その注文書(801、803)に関する受注処理(注文FAX文書801に起因する受注処理)を一意に特定可能な「受注ID」を発行する(806)。
商社支店103の担当者のPC110からエクスポート指示が為されると、基幹システム116は、805で入力された注文情報(顧客からの注文内容)に基づいて、メーカー121への発注書808を生成し、エクスポートする(807)。この生成される発注書808には、806で発行した「受注ID」も含まれる。また、本実施例において、発注書808はCSV形式の電子データでエクスポートされるものとするが、CSV形式のフォーマットに限定するものではなく、その他のフォーマットでも構わない。そして、商社支店103の担当者が、PC110からFAXサーバー118にアクセスし、当該エクスポートされた発注書808をFAXサーバー118の所定のフォルダにインポートする(809)。なお、本実施形態では、商社支店103の担当者がエクスポート指示とインポート指示の2つの指示を行うための操作を行うものとしたが、これに限るものではない。すなわち、基幹システム116とFAXサーバー118が連携し、発注書808を、人手を介さずに基幹システム116からFAXサーバー118に直接取り込むように構成しても構わない。
FAXサーバー118に809でインポートされた発注書808は、発注書810として、FAXサーバー118内のフォルダ(またはデータベース117)に一時保存される。なお、発注書810は、注文書803と同様に、FAXサーバー118内の所定のフォルダに一時保存されるものとするが、FAXサーバー118が管理可能な領域であれば、物理的にFAXサーバー118内のフォルダではなくても構わない。
なお、注文書(801、803)には複数の物品の注文が含まれ、各物品を異なるメーカーに発注する場合がある。その場合、基幹システム116は複数の発注書808をメーカーごとに生成してエクスポート(807)することになり、FAXサーバー118にインポート(809)される発注書810も複数となる。この発注書810には、付随する情報として、どのメーカーに発注するかという発注先メーカー情報と、どの支店または担当者が処理するかという情報を保持するものとする。
商社支店103の複合機111は、FAXサーバー118の所定のフォルダに一時保存された発注書810を取得し(811)、当該発注書810の付随情報に含まれる発注先メーカー情報に基づいて当該取得した発注書810をFAX送信する(812)。なお、FAXサーバー118が発注書810をインポートしたときに、商社支店103の複合機111に発注書810を取得するように通知し、その通知に応じて、複合機111が、FAXサーバー118の所定のフォルダに置かれた発注書810を取得する。また、この構成に限るものではなく、商社支店103の複合機111が定期的に、FAXサーバー118内の所定のフォルダを監視し、発注書810が一時保存されたのを検知すると、当該発注書を取得するように構成してもよい。また、FAXサーバー118が、商社支店103の複合機111へデータ送信する事が許される環境であれば、該発注書を複合機111へ送信するように構成してもよい。
FAXサーバー118は、発注書810が複合機111からメーカー106へFAX送信されたかどうかを、当該FAX送信を行う複合機111との間で確認する(813)。送信したことが確認されない場合は、FAXサーバー118は、確実にメーカー106に送信するための何らかの処理を行う(例えば、商社支店103の担当者に通知して複合機の動作確認をさせる)。
メーカー106は、FAX装置121で発注書FAXを受信すると、該発注書に含まれる物品の納期を書き込み(814)、当該納期の回答を書き込んだ発注書を複合機111に対してFAX送信する(815)。
商社支店103の複合機111は、メーカーから納期回答が書き込まれた回答書をFAX受信する。そして、複合機111は、予め登録された設定に従って、商社本店105のFAXサーバー118に対して、当該受信したFAXデータ(メーカーからの回答FAX文書)を転送する(816)。転送する際、PDF等の他のフォーマットの文書に変換して送信してもよいし、FAX画像データのまま送信してもよいし、テキストデータ等にデータ変換して送信するようにしてもよい。
FAXサーバー118は、当該受信したデータをメーカー回答817として、FAXサーバー118内のフォルダ(またはデータベース117)に一時保存する。なお、メーカー回答817が保存される領域は、注文書803や発注書810と同様に、FAXサーバー118が管理可能な領域であれば、物理的にFAXサーバー118内のフォルダではなくても構わない。
PC110で動作する文書編集アプリケーション818は、商社支店103の担当者の操作指示に基づき、FAXサーバー118に保存されているメーカー回答817を表示し(819)、顧客向けの回答書を作成する(820)。当該作成した顧客向けの回答書は、顧客向け回答822としてFAXサーバー118内のフォルダ(またはデータベース117)に一時保存する(821)。なお、顧客向け回答822が保存される領域は、注文書803や発注書810やメーカー回答817と同様に、FAXサーバー118が管理可能な領域であれば、物理的にFAXサーバー118内のフォルダではなくても構わない。さらに、担当者の指示に基づき、文書編集アプリケーション818は当該作成した顧客向けの回答書(FAXサーバー118に保存した顧客向け回答822と同内容の文書)を、FAXドライバ823を介して複合機111に渡す(824)。複合機111は、当該渡された回答文書を顧客へFAX送信する(825)。
FAXサーバー118は、顧客向け回答822が顧客101にFAX送信されたかどうかを、当該FAX送信を行った複合機111との間で確認する(826)。送信したことが確認されない場合は、FAXサーバー118は、確実に顧客101に送信するための何らかの処理を行う(例えば、商社支店103の担当者に通知して複合機の動作確認をさせる)。
なお、発注書810を複数のメーカーに送信していた場合、顧客向けの回答書は、各メーカーからのメーカー回答が全て揃って初めて、完全なものとなる。ただし、顧客への回答タイミング(820乃至825を実施するタイミング)は、全てのメーカーからの回答が揃ってから顧客へ回答する場合と、各メーカーからの回答があり次第、順次顧客へ回答する場合とがあり、商社支店103の担当者の裁量に依存する。
また、801〜826で説明したワークフローは、受発注業務の性格上、通常は1日の業務時間内で完了するが、複数日かかっても構わない。
FAXサーバー118は、受発注業務が完了した案件、つまり注文書803、発注書810、メーカー回答817、顧客向け回答822が揃った案件については、その案件に関わる文書をまとめてアーカイブし、文書サーバー119にアーカイブ文書828として格納(長期保存)する(827)。このアーカイブ処理により、顧客からの発注により生じた一連の業務でやり取りしたFAX文書ごとに1つのアーカイブファイルに保存されることになる。なお、このアーカイブ処理は、注文書803、発注書810、メーカー回答817、顧客向け回答822の全てが揃った時点でアーカイブするようにしてもよいし、FAXサーバー118に予め設定したタイミングに定期的に行うようにしてもよい。また、アーカイブ処理については、注文書803、発注書810、メーカー回答817、顧客向け回答822が全て揃っていなくても、随時追加アーカイブしていくように構成することも可能である。
図9は、FAXサーバー118(またはデータベース117)におけるフォルダ構成例(901〜917)と、文書サーバー119におけるフォルダ構成例(918〜923)を示す模式図である。
フォルダ901は、FAXサーバー118(またはデータベース117)に保存されるルートフォルダであり、FAXサーバー118が扱うファイルは、全てこのルートフォルダ901下で管理される。FAXサーバー118は、フォルダ901のパスを、FAXサーバー118の設定値として記憶している。なお、この設定値は設定ファイルやFAXサーバー118のUIを用いて、設定することも可能である。
このルートフォルダ901には、FAXを送受信する支店毎のフォルダ(902、903)、および処理済みのファイルを格納する処理済フォルダ904が配置される。支店フォルダ(902、903)下の階層構成例を、支店フォルダ902を用いて説明する。
支店フォルダ902には、FAXを送受信するデバイス(複合機等)毎のフォルダ905と、支店の担当者毎のフォルダ(906、907)とが配置される。なお、支店内にFAXを送受信するデバイスが複数ある場合は、フォルダ905と同等のフォルダが、支店フォルダ902下に複数存在することになる。
デバイスフォルダ905には、受信フォルダ908と、送信フォルダ909とが配置される。受信フォルダ908には、複合機111が801または815でFAX受信して、802または816で転送した文書(注文書、メーカー回答書)を格納する。802または816での転送の際、複合機111で動作するアプリケーション409の処理により、FAXの送信元番号、複合機111に保持されているアドレス帳情報、受信日時などから、ファイル名を生成する。例えば、910、911に示すように、FAXの送信元番号とアドレス帳情報とを比較して、FAX送信元の顧客名またはメーカー名を特定し、受信日時と組み合わせてファイル名を生成する。910、911の例では、複合機111が受信した文書であることを容易に識別できるように、「受信」という語をファイル名に挿入して、ファイル名を生成している。
ここで、顧客1(101)を担当する、支店X(103)の担当者Aが行う操作を例に説明する。支店X(103)に所属する担当者Aは、自身の所属する支店Xのフォルダ902内のデバイスフォルダ905下の受信フォルダ908を監視する。なお、FAXサーバー118のファイル管理機能(またはFAXサーバー118上で動作するファイル管理機能を持つアプリケーション)によって、監視すべきフォルダ908にファイルが置かれた時、担当者に通知を行うようにしてもよい。担当者Aは、受信フォルダ908内に、自身が担当する顧客からの受信FAXファイル910を発見した場合、担当者Aのフォルダ906に、そのファイルを移動する。
なお、複合機111のアプリケーション409とFAXサーバー118とが連携して、FAX文書の転送&保管処理(802)において、送信元FAX番号により特定された顧客名から担当者を導出することにより、担当者フォルダ906に直接格納するように構成してもよい。また、FAXサーバー118が、顧客名から担当者を導きだすことにより、受信フォルダ908に格納されたファイルを、担当者フォルダ906に移動することも可能である。
担当者Aが、担当者Aのフォルダ906に移動した注文書に記載された情報を見ながら、基幹システム116に情報をキー入力(805)すると、担当者AのPC110は基幹システム116から「受注ID(識別子)」の発番(806)を受ける。担当者AのPC110は、当該発番された「受注ID」をフォルダ906内の顧客からのファイル名に追加付与する。図9の例では、ファイル名の先頭に「受注ID」を追加することにより、ファイル名はファイル912のような形式となる。これが注文書803である。後段の処理のため、この時点では、ファイル912は、処理済フォルダ904へは移動せず、担当者Aフォルダ906内に置いたままとする。
次に、担当者Aの操作指示に基づきPC110は、805で入力された顧客1からの注文情報に基づいて基幹システム116で生成された発注書データ808を基幹システム116からエクスポートし(807)、FAXサーバー118にインポートする(809)。インポート先のフォルダは、FAXサーバー118内の担当者Aのフォルダ906とし、ファイル名を付与して該インポート先のフォルダに保存する。この時のファイル名は、「受注ID」と、「送信」ファイルである事を示す語、送信先メーカー名を含む内容とする。このファイルが、発注書810となる。1つの注文書内に複数メーカーに注文すべき部材が含まれていた場合、発注書810は複数のファイルとなる。なお、発注書810が複数ファイルとなった場合、FAXサーバー118は、後述のアーカイブ処理(827)で必要な情報として、ファイル数を記憶しておく。
次に、担当者Aは、フォルダ906にインポートされた発注書ファイルを確認し、必要に応じて訂正等を行った後、送信フォルダ909にその発注書ファイルを置く。
FAXサーバー118は、送信フォルダ909にファイルが置かれたことを、複合機111で実行されるアプリケーション410に通知する。なお、アプリケーション410が、各支店の送信フォルダ909を定期的に監視していれば、前記FAXサーバー118からアプリケーション410への通知は行わなくてもよい。複合機111のアプリケーション410は、送信フォルダ909からファイルを取得し(811)、ファイル名またはファイル属性情報に含まれる送信先情報を解釈し、FAX送信する(812)。この時の送信先情報は、送信先FAX番号であってもよいし、送信先メーカー名称であってもよい。送信先メーカー名称の場合は、複合機111内のアドレス帳から送信先FAX番号を導き出すか、FAXサーバー118と複合機111が連携して送信先FAX番号を導き出せばよい。
FAXサーバー118は、メーカーへの発注書810のFAX送信の送信確認を行うと(813)、発注書810を送信フォルダ909から処理済みフォルダ904に移動する。この時、処理済みフォルダ904に移動された発注書ファイルの例が915である。
メーカー106では、支店X(103)からFAX受信した発注書に対し、回答として納期を書き込み(814)、支店X(103)に対してFAXで返信する(815)。支店X(103)では、複合機111でメーカーからの回答書をFAX受信し、911に示すようなファイル名を付与して、受信フォルダ908に保存する。なお、図9の911に示すファイル名の先頭には、基幹システム116が806で発行した「受注ID」が付与されている。これは、FAXサーバー118が生成する発注書810に、QRコード(登録商標)等のバーコードやテキストにて「受注ID」を含む識別情報を記載しておくことにより、メーカー121が該発注書に回答を書き込んでFAX送信(815)してくれば、該識別情報を判別して自動付与できる。この場合、複合機111のHDD205上のアプリケーション410では、前記識別情報を解析して「受注ID」を抽出し、ファイル名として付与する。一方、メーカーによっては、前記識別情報を含む用紙とは異なる用紙で、回答をFAX送信(815)してくる場合もありうる。その場合は、担当者Aが、受信フォルダ908を監視し、自身が発注書を送信(812)したメーカーからのFAX911か確認し、ファイル名として「受注ID」を付与する。
担当者Aは、受信フォルダ908内から、自身が担当するメーカー回答FAX911を、担当者Aのフォルダ906に移動する。移動後のファイルが913であり、メーカー回答817に相当する。なお、前述のように「受注ID」が識別できるならは、基幹システム116とFAXサーバー118が連動することで、「受注ID」から担当者を導出し、受信フォルダ908を介さず、直接担当者Aフォルダに格納することも可能である。
支店103のPC110で動作する文書管理アプリケーション818は、担当者Aの指示に基づき、担当者Aのフォルダ906内に保持され且つ同一の受注IDが付与されている、メーカーからの回答書ファイル913と顧客からの注文書ファイル912とを表示する。そして、文書管理アプリケーション818は、担当者Aの指示に基づき、顧客1(101)向けの回答書を作成して(820)、顧客向け回答書ファイル822としてFAXサーバーに保存する(821)。さらに、文書管理アプリケーション818は、FAXドライバ823を介してその顧客向け回答書822を複合機111へ送って(824)、顧客1(101)に対してFAX送信させる。FAXサーバー118は、複合機111から顧客向け回答書のFAX送信を確認すると(826)、注文書803(ファイル912)と、メーカーからの回答書(ファイル913)と、顧客向け回答書822とを、処理済フォルダ904へ移動する。移動後のファイルが914、916、917である。なお、FAXサーバーに保存される顧客向け回答書ファイル822のファイル名は、受注IDと、顧客名と、「送信」を示す語と、受信日時とを含む、917のような形式のファイル名を付与して保存している。
次に、FAXサーバー118は、1日1回予め設定された時刻に、処理済フォルダ904を参照して、処理済フォルダ904から同一「受注ID」が付与された複数のファイルを抽出する。そして、FAXサーバー118は、当該抽出した複数のファイルに対してアーカイブ処理を行って、当該アーカイブしたファイル828を文書サーバー119に保存する(827)。
すなわち、FAXサーバー118は、処理済フォルダ904から抽出したファイル群に、同一「受注ID」が付与されている、注文書803と発注書810とメーカー回答817と顧客向け回答822とが揃っていた場合、それらのファイルを1つのファイルにアーカイブする(827)。なお、同一「受注ID」に対して複数の発注書810が生成されていた場合、メーカー回答817もそれぞれ同数必要である。FAXサーバー118は、発注書810の保存時に、「受注ID」と結びつけて記憶したファイル数で、全てのファイルが揃ったか否かを判断する。図9の例では、処理済みフォルダ904に保存されているファイル914〜917が、注文書803、発注書810、メーカー回答817、顧客向け回答822のいずれなのかを、ファイル名で判断している。すなわち、ファイル名に含まれている、「送信」/「受信」の文字列と、送信元名称(「顧客」なのか「メーカー」なのか)とに基づいて判断する。また、別の判断方法として、注文書803、発注書810、メーカー回答817、顧客向け回答822のいずれなのかを識別する情報を、ファイル914〜917のファイル名に挿入する方法や、ファイル属性として保持させる方法を用いても良い。
アーカイブしたファイル828は、文書サーバー119(またはデータベース117)の所定のフォルダに保存される。918は、文書サーバー119(またはデータベース117)のルートフォルダであり、文書サーバー119が扱うファイルは、全てこのルートフォルダ918以下に保存される。文書サーバー119は、フォルダ918のパスを文書サーバー119の設定値として記憶している。なお、この設定値は設定ファイルや文書サーバー119のUIを用いて、設定する事も可能である。文書サーバーのルートフォルダ918下には、FAXサーバー118がアーカイブファイル828を格納するフォルダ919が配置される。FAXサーバー118は、フォルダ919のパスを、FAXサーバー118の設定値として記憶している。なお、この設定値は設定ファイルやFAXサーバー118のUIを用いて、設定する事も可能である。
図9では、アーカイブファイル828の例が、ファイル922、923であり、アーカイブが行われた日付のフォルダ920、921に保存される。ファイル914〜917をアーカイブしたファイル922は、同じ受注IDが付与されたファイル名となっている。図11で後述するように、このアーカイブファイル922には、アーカイブ対象のファイル914〜917それぞれの送受信日時や、支店名、担当者名、顧客名、受注IDなどの情報が、属性情報として付加されて保存される。このように、アーカイブファイルに属性情報が付加されるので、後で、所望のアーカイブファイルが検索しやすくなる。
なお、図9のアーカイブファイル922、923は、PDF形式としているが、格納形式はこれに限るものではなく、ZIP形式等他の形式でもよい。また、FAXサーバーが行うアーカイブ処理(827)のタイミングは、1日1回に限るものではなく、任意のタイミングに設定することも可能である。さらに、文書サーバーのルートフォルダ918下のフォルダ構成や、ファイル名の付与方法も、図9に示すものに限定するものでは無い。
図10は、処理済フォルダ904に格納されたファイル914〜917の各ファイルの属性情報1001の例を示す。
注文書803に相当するファイル914の場合、1002には、基幹システム116により806で発行された受注IDが保存される。本実施例では、FAXサーバー118が、処理済フォルダ904へ移動された注文書ファイルのファイル名に基づいて、当該ファイル名に含まれる受注IDを1002に格納する。また、1003には、当該注文書ファイルのファイル名に含まれる注文書のFAX受信日時が保存される。本実施例では、FAXサーバー118は、処理済フォルダ904へファイルが移動された際に、ファイル名から情報を抜き出し、1003に格納する。なお、FAXの受信日時は、FAXサーバー118が、複合機111から注文書のFAX文書と同時に送信元番号や受信日時を含むFAX受信情報ファイルを受け取り、当該受信情報ファイル内の受信日時をファイル名に含めて保存しておくことにより、当該ファイル名に基づいて該ファイルの属性情報のFAX受信日時に格納することができる。なお、ファイル名を介さずに1003に書き込むように構成してもよい。また、1004にはこの注文に関する担当者名、1005には支店名、1006には注文者である顧客名が保存される。1004〜1006の情報は、処理済フォルダ904へファイルが移動された際に、FAXサーバー118が、受注ID1002を元に基幹システム116から取得し、格納する。
発注書810に相当するファイル915に対しても同様に、属性情報1001が保存される。ただし、1003はFAXの送信日時となり、さらに、担当者名1004、支店名1005、顧客名1006は空欄である。1003に格納するFAX送信日時は、発注書810のファイル名に含まれる送信日時を用いる。
メーカーからの回答書817に相当するファイル916に対しても同様に、属性情報1001が保存される。ただし、1003はFAXの受信日時となり、さらに、担当者名1004、支店名1005、顧客名1006は空欄である。1003に格納するFAX受信日時は、受信フォルダ908にメーカーからの回答書を保存する際に付与したファイル名に含まれる受信日時を用いる。
顧客向け回答822に相当するファイル917に対しても同様に、属性情報1001が保存される。ただし、1003はFAXの送信日時となり、さらに、担当者名1004、支店名1005、顧客名1006は空欄である。1003に格納するFAX送信日時は、顧客向け回答書を保存する際に付与したファイル名に含まれる送信日時を用いる。
図11は、FAXサーバー118が実行するアーカイブ処理827の詳細を示すフローチャートである。また、図12は、アーカイブ処理により生成されるアーカイブファイルに対して付与される属性情報1201である。本実施例においては、1日1回、決まった時間にアーカイブ処理を実行する。
S1101において、FAXサーバー118は、処理済フォルダ904内のファイルをすべてアーカイブ処理対象にしたか否かを判断する。未処理のファイルがある場合はS1102の処理に進む一方、すべてのファイルを処理し終えた場合はアーカイブ処理を終了する。
S1102において、FAXサーバー118は、処理済フォルダ904内のアーカイブ処理対象にしていないファイルのうちの、1ファイルを処理対象とする。
S1103において、FAXサーバー118は、S1102で当該アーカイブ処理対象としたファイルから受注ID1002を抽出する。
S1104において、FAXサーバー118は、S1103で抽出した受注ID1002と同じ受注IDが付与されている全てのファイルを、処理済フォルダ904から抽出する。
S1105において、FAXサーバー118は、S1104で抽出した全てのファイルを、本アーカイブ処理における処理済み扱いとする。
S1106において、FAXサーバー118は、S1102〜S1104で抽出した全てのファイルをアーカイブすべきか否か判断する。図8〜図9の例においては、注文書803、発注書810、メーカー回答817、顧客向け回答822が揃っている場合(Yes)、S1107に進んで、当該ファイル群に対してアーカイブ処理を実行する。一方、アーカイブすべきでないと判断した場合(No)、S1101に戻る。
S1107において、FAXサーバー118は、S1102〜S1104で抽出した全てのファイルを、FAXの送受信日時1003に基づいて昇順にソートする。そして、S1107でソートした順に1ファイルずつ、S1108〜S1110の処理を実行する。
S1108において、FAXサーバー118は、S1102〜S1104で抽出したアーカイブ対象ファイルを全て処理したか否かを判断する。アーカイブ対象ファイルを全て処理し終えていない場合は(No)、S1109〜S1110の処理を繰り返す。一方、アーカイブ対象ファイルをすべて処理し終えた場合は(Yes)、S1111の処理に進む。
S1109において、FAXサーバー118は、ソートされた順にしたがって、アーカイブ対象ファイルの1つを、アーカイブファイルに追加する。なお、本実施例において生成されるアーカイブファイルは、アーカイブ対象ファイルをPDFフォーマットで1ファイルに連結したものとするが、このフォーマットはPDFに限定するものではない。
S1110において、FAXサーバー118は、S1109で追加したアーカイブ対象ファイルの属性情報1001を読み出して、アーカイブファイルの属性情報1201に保存する。注文書803に相当するファイル914の属性情報からは、受注ID1002を読み出して1205に記憶するとともに、注文書のFAX受信日時1003を読み出して1206に記憶する。また、担当名1004を読み出して1203に記憶し、支店名1005を読み出して1202に記憶し、顧客名1006を読み出して1204に記憶する。一方、発注書810に相当するファイル915の属性情報からは、FAX送信日時を読み出して1207に保存する。メーカー回答817に相当するファイル916の属性情報からは、FAX受信日時を読み出して1209に記憶する。顧客向け回答822に相当するファイル917の属性情報からは、FAX送信日時を読み出して1210に記憶する。なお、発注先メーカーが複数箇所(例えば2か所)の場合、発注書810とメーカー回答817と顧客向け回答822は、それぞれ2ファイルとなるので、それぞれの属性情報を読み出して保存する。すなわち、発注書それぞれの送信日時を1207と1208に保存し、メーカー回答の受信日時を1209と1211に保存し、顧客向け回答の送信日時を1210と1212に保存する。
S1111において、AXサーバー118は、S1110で記憶したアーカイブファイル用の属性情報1201を、アーカイブPDFファイルの拡張領域に書き込み、S1101に戻る。
このように構成することで、複数のファイルを1つのファイルにアーカイブした場合も、当該アーカイブ対象の各ファイルの送受信日時などの属性情報がアーカイブファイルに保持されるので、検索等を行いやすくなる。
各ファイルのアーカイブファイルへの格納順は、図11のS1107および図12で説明した順に限るものではない。図13は、図11のS1107で別のソート方法を採った場合の、アーカイブファイルの属性情報1301である。支店名1302、担当名1303、顧客名1304、受注ID1305の格納方法は、1202〜1205と同様である。図13の例では、S1107において、ファイル名に基づいて、注文書、発注書、メーカー回答、顧客向け回答、の文書種類の順にファイルをソートし、更に、各文書種類内でFAX送受信日時の昇順にソートする。これにより、アーカイブ対象の各ファイルの属性情報も、1306〜1312の順でアーカイブファイルの属性情報に保存される。
以上のように、本実施例では、1つのファイルにアーカイブした複数ファイルの情報をソートして、アーカイブファイルの属性情報として格納するように構成した。これにより、アーカイブファイルの属性情報内の特定の情報をキーとして、ファイルのソートや検索などを行うことができる。
例えば、「注文書」FAXを受けた時刻(受信日時)で、アーカイブファイル群をソートして、一覧する事も可能である。また、アーカイブファイルを一覧表示したときに、1206〜1212の情報をリスト表示する事も可能である。これにより、例えば、「顧客への回答」FAXを受けた時刻でソートし、複合機111上に残るFAX送信履歴との突き合わせなどにも利用できる。また、顧客名でフィルタリングした上で、顧客への回答時刻順に一覧する事もできる。また、顧客から問い合わせを受けた際に、受注IDに基づき、いつ顧客向け回答を送信したかを確認するといった用途に用いる事もできる。
(実施例2)
実施例2は、図1と同様のシステムにおいて実現する。複合機111、113、FAX装置108、109、121、122の構成は、図2に示すブロック図と同様である。また、FAXサーバー118の構成は、図3に示すブロック図と同様である。また、複合機111、113の基本的なソフトウェア構成は図4と同様である。また、アプリケーション409、410の構成は、第一実施例の図5と同様である。また、Webブラウザ404の構成は、図6に示すブロック図と同様である。FAXサーバー118において本発明に関わる処理プログラムを実行する際、処理プログラムをRAM304上にロードした際のメモリマップの構造は、図7と同様である。また、本実施例2の受発注システムのワークフローは、図8に示すシーケンス図と同様である。FAXサーバー118上のフォルダ構成、および、文書サーバー119上のフォルダ構成は、図9と同様である。
処理済フォルダ904内の各ファイルの属性情報も図10と同様である。ただし、発注書810にあたるファイル915においても、ファイル914と同様に、担当名1004、支店名1005、顧客名1006を格納しておく。メーカー回答817にあたるファイル916、顧客向け回答にあたるファイル917についても、同様に、担当名1004、支店名1005、顧客名1006を格納しておく。
図14は、FAXサーバー118が実行するアーカイブ処理827のフローチャートである。実施例2においても、1日1回、決まった時間にアーカイブ処理を実行する。図15は、実施例2のアーカイブ処理において生成するWindows(登録商標)用アーカイブファイルの構造1501、Linux(登録商標)用アーカイブファイルの構造1510、本処理中に記憶する属性用情報であり、Linux(登録商標)用アーカイブファイルの属性ファイルの構造である1520である。
S1401において、FAXサーバー118は、処理済フォルダ904内のファイルをすべて処理したか否かを判断する。未処理のファイルがある場合は(No)、S1402に進む一方、すべてのファイルを処理し終えた場合は(Yes)、本アーカイブ処理を終了する。
S1402において、FAXサーバー118は、処理済フォルダ904内のアーカイブ処理対象にしていない注文書ファイル803のうちの1ファイルを処理対象とする。
S1403において、FAXサーバー118は、S1402で処理対象としたファイルから顧客名1006を抽出する。
S1404において、FAXサーバー118は、S1403で抽出した顧客名1006と同じ顧客名を持つファイルを抽出する。
S1405において、FAXサーバー118は、S1404で抽出したファイルを、本処理における処理済扱いとする。
S1406において、FAXサーバー118は、S1404で抽出したファイルのファイル名に基づいて、同一顧客から受けた全ての注文書803を抽出して、FAX受信日時でソートする。
S1407において、FAXサーバー118は、S1406で抽出したアーカイブ対象ファイルをすべて処理したか否かを判断する。アーカイブ対象ファイルをすべて処理し終えていない場合(No)、S1408乃至S1409を繰り返す。アーカイブ対象ファイルをすべて処理し終えた場合(Yes)、S1410に進む。なお、本実施例におけるアーカイブファイルは、複数ファイルをzip形式で1ファイルに圧縮アーカイブしたものである。
S1408において、FAXサーバー118は、ソート順にしたがって、S1406で抽出したアーカイブ対象ファイルのうちの1ファイルを、アーカイブzipファイルに追加する。
S1409において、FAXサーバー118は、S1408で追加したファイルの属性情報1001を読み出して、アーカイブzipファイルの属性情報に保存する。
なお、アーカイブzipファイルの名称には、顧客名が含まれ、S1408における最初の1ファイルの処理時に、アーカイブzipファイルの属性情報1520のzipファイル名1521に記憶する。また、S1408でアーカイブ対象ファイルのファイル名を1522に記憶し、アーカイブ対象ファイルそれぞれのFAX受信日時を1523に記憶する。また、2つ目以降のアーカイブ対象ファイルは、1つ目のファイルの情報1522、1523と同様に、1524、1525のように順次追加記憶していく。
S1410において、FAXサーバー118は、アーカイブファイルの保存先となる文書サーバー119のファイルシステムを判断する。本実施例では、オペレーションシステムの種類によってファイルシステムを判断している。この判断は、FAXサーバー118が予め保存先の情報を記憶していてもよい。或いは、このタイミングで、保存先文書サーバー119にアクセスして、ファイルシステムに関する情報を取得してもよい。本実施例においては、保存先がWindows(登録商標)であった場合はS1411へ進み、保存先がLinux(登録商標)であった場合はS1412へ進む。
Windows(登録商標)の場合、S1411において、FAXサーバー118は、S1408でアーカイブファイルの1502〜1505に保存したファイルに対して、S1409で属性情報1520として記憶した情報1522〜1525を、アーカイブファイルのプロパティ1504〜1507に書き込み、S1401に戻る。
Linux(登録商標)の場合、S1412において、FAXサーバー118は、S1408で1511〜1514まで構成したファイル1510をそのままの状態で文書サーバーに保存する。さらに、属性情報として記憶した1520を、当該ファイル1510が保存されたフォルダと同一のフォルダに、テキストファイルとして保存して、S1401に戻る。
なお、上記説明ではS1406において「注文書」のみを抽出し、アーカイブする例を示したが、「発注書」、「メーカー回答」、「顧客向け回答」についても同様に図14の処理を適用可能である。
以上のように、実施例2では、アーカイブファイルの保存先ファイルシステムに応じてアーカイブファイルの属性情報の保持の仕方を変更することで、様々な保存先においても、適切な情報保持を行えるようになる。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。