JP2014135046A - システム、中継サーバ装置、情報処理方法及びプログラム - Google Patents

システム、中継サーバ装置、情報処理方法及びプログラム Download PDF

Info

Publication number
JP2014135046A
JP2014135046A JP2013250174A JP2013250174A JP2014135046A JP 2014135046 A JP2014135046 A JP 2014135046A JP 2013250174 A JP2013250174 A JP 2013250174A JP 2013250174 A JP2013250174 A JP 2013250174A JP 2014135046 A JP2014135046 A JP 2014135046A
Authority
JP
Japan
Prior art keywords
document
relay server
file
combined
server device
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.)
Granted
Application number
JP2013250174A
Other languages
English (en)
Other versions
JP2014135046A5 (ja
JP6329758B2 (ja
Inventor
Tomoji Kanemune
知司 兼宗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Canon MJ IT Group Holdings Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Canon MJ IT Group Holdings Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon IT Solutions Inc, Canon MJ IT Group Holdings Inc filed Critical Canon Marketing Japan Inc
Priority to JP2013250174A priority Critical patent/JP6329758B2/ja
Publication of JP2014135046A publication Critical patent/JP2014135046A/ja
Publication of JP2014135046A5 publication Critical patent/JP2014135046A5/ja
Application granted granted Critical
Publication of JP6329758B2 publication Critical patent/JP6329758B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00957Compiling jobs, e.g. for batch processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1267Job repository, e.g. non-scheduled jobs, delay printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32037Automation of particular transmitter jobs, e.g. multi-address calling, auto-dialing
    • H04N1/3208Transmitting a plurality of separate messages to a common destination in a single transmission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/15Indexing scheme related to printer interfaces for computers, indexing schema related to group G06F3/12
    • G06F2206/1514Sub-job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1262Job scheduling, e.g. queuing, determine appropriate device by grouping or ganging jobs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1273Print job history, e.g. logging, accounting, tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet

Abstract

【課題】中継サーバの処理負荷を軽減しつつ、ユーザの望む結合ドキュメントを取得する。
【解決手段】情報処理装置と、中継サーバ装置と、管理サーバ装置とがネットワークを介して接続されるシステムであって、前記情報処理装置は、前記中継サーバ装置に前記管理サーバ装置が管理するファイルの結合要求を送信する送信手段を有し、前記中継サーバ装置は、前記情報処理装置から前記結合要求を受信する受信手段と、前記受信手段により受信された前記結合要求に基づいて作成された結合ファイルが前記中継サーバ装置の記憶部に格納されているか否かを判定する判定手段と、前記判定手段により格納されていると判定された場合、前記記憶部から前記結合ファイルを取得する取得手段と、を有することによって課題を解決する。
【選択図】図6

Description

本発明は、システム、中継サーバ装置、情報処理方法及びプログラムに関する。
従来、クライアントPCで作成された様々なドキュメントは、クライアントPCに備えられたハードディスクで記憶及び管理されていた。しかしながら、ネットワークが発達し、通信速度の向上や安定した通信が実現してくると、クライアントPCに保存していたドキュメントが、クライアントPCとネットワーク経由で接続されたサーバに保存されるようになってきた。
特に近年、いわゆるクラウドコンピューティングのような、ネットワーク経由で利用可能なサービスが発達してきた。例えば、顧客管理を行うCRM(Customer Relationship Management)システムや、企業の業務を支援するERP(Enterprise Resource Planning)システム等が提供されている。その他にも、サーバのディスクスペースを貸し出すオンラインストレージサービス等、様々なサービスが提供されている。
しかしながら、今までクライアントPCで管理していたドキュメントをユーザがサーバにアップロードして管理することで、クライアントPCからサーバに対する通信が発生するようになる。そのため、ネットワークの通信量が増加し、サーバにも負荷がかかることになる。ネットワークの通信量が増加すると、通信速度が落ちてしまう問題が発生する。また、サーバに負荷がかかるとサーバの処理能力が低下してしまい、サーバが停止してしまう可能性もある。
そこで、下記の特許文献1では、次のような仕組みが開示されている。まず、クライアントPCと、サーバとの通信を中継するゲートウェイ装置を設ける。クライアントPCからサーバに対してドキュメントの取得要求があると、ゲートウェイ装置は、その要求に従ってサーバから取得したドキュメントをゲートウェイ装置内にキャッシュしておく。そして、再度、クライアントPCからサーバに対して同じドキュメントの取得要求があった場合には、ゲートウェイ装置がキャッシュしたドキュメントをクライアントPCに転送することで、ネットワークやサーバの負荷を軽減している。
特開平10−21134号公報
前述したサービスを複数利用する場合、複数のサーバにドキュメントを保存しておくことがある。例えば、ユーザがドキュメント管理を行うサーバに商品のカタログを保存し、顧客管理を行うサーバに顧客毎の見積書を保存しておく場合である。
このような場合に、特許文献1にあるゲートウェイ装置と同様の中継サーバが設置されることがある。特許文献1にある中継サーバは、ドキュメント管理を行うサーバと、顧客管理を行うサーバから、それぞれカタログと、見積書を取得する。そして、中継サーバで1つのドキュメントに結合して、クライアントPCに転送する。
上記の特許文献1で開示されている技術では、中継サーバがドキュメントを結合する場合には、中継サーバが取得した複数のドキュメントに対して結合処理を実行する必要がある。つまり、中継サーバに負荷がかかってしまう問題があった。特に、結合するドキュメントの数が多かったり、ドキュメントの容量が大きかったりすると、中継サーバの処理負荷は更に大きくなってしまう。
また、中継サーバは、ユーザ1人につき中継サーバ1台が割り当てられているわけではない。企業ではその企業の従業員全員が1台(多くても数台)の中継サーバを介して、様々なサーバに保存されたドキュメントの取得と、結合を要求する。そのため、数多くの結合処理が実行されることになる。送受信処理よりも結合処理の方が処理の負荷が大きいので、企業はこのような処理負荷を軽減しないと、数多くの結合処理による処理負荷に耐えられず、中継サーバが停止してしまう可能性もある。
本発明は、上記の課題を鑑みてなされたもので、中継サーバの処理負荷を軽減しつつ、ユーザの望む結合ドキュメントを取得することを目的とする。
そこで、本発明のシステムは、情報処理装置と、中継サーバ装置と、管理サーバ装置とがネットワークを介して接続されるシステムであって、前記情報処理装置は、前記中継サーバ装置に前記管理サーバ装置が管理するファイルの結合要求を送信する送信手段を有し、前記中継サーバ装置は、前記情報処理装置から前記結合要求を受信する受信手段と、前記受信手段により受信された前記結合要求に基づいて作成された結合ファイルが前記中継サーバ装置の記憶部に格納されているか否かを判定する判定手段と、前記判定手段により格納されていると判定された場合、前記記憶部から前記結合ファイルを取得する取得手段と、を有する。
本発明によれば、中継サーバの処理負荷を軽減しつつ、ユーザの望む結合ドキュメントを取得することができる。
システム構成の一例を示す図である。 クライアントPC、中継サーバ、ドキュメントサーバのハードウェア構成の一例を示す図である。 クライアントPC、中継サーバ、ドキュメントサーバの機能構成の一例を示す図である。 中継サーバに実装されるフレームワークの一例を示す図である。 実施形態1における処理概要の一例を示す図である。 図5の処理後に再度同じ結合ドキュメントの要求があった場合の処理概要の一例を示す図である。 実施形態1における更新フォルダ登録に関する処理の一例を示すフローチャートである。 更新フォルダ登録画面の一例を示す図である。 更新フォルダ管理テーブルの一例を示す図である。 ドキュメント管理テーブルの一例を示す図である。 実施形態1におけるクライアントPCと、中継サーバとの処理の一例を示すフローチャート(S1001からS1015までの処理)である。 実施形態1におけるクライアントPCと、中継サーバとの処理の一例を示すフローチャート(S1016からS1023までの処理)である。 ドキュメント処理画面の一例を示す図である。 履歴情報テーブルの一例を示す図である。 入力情報を含むドキュメント処理画面の一例を示す図である。 実施形態1における中継サーバと、ドキュメントサーバとの処理の一例を示すフローチャート(S1401からS1412までの処理)である。 実施形態1における中継サーバと、ドキュメントサーバとの処理の一例を示すフローチャート(S1413からS1429までの処理)である。 実施形態1における中継サーバ300の処理の一例を示すフローチャートである。 実施形態2における処理概要の一例を示す図である。 図16の処理後に再度同じ結合ドキュメントの要求があった場合の処理概要の一例を示す図である。 実施形態2における中継サーバと、ドキュメントサーバとの処理の一例を示すフローチャート(S1801からS1815までの処理)である。 実施形態2における中継サーバと、ドキュメントサーバとの処理の一例を示すフローチャート(S1816からS1824までの処理)である。 実施形態3におけるクライアントPCと、中継サーバとの処理の一例を示すフローチャート(S1900からS1917までの処理)である。 実施形態3におけるログインページの一例を示す図である。 実施形態3におけるリストページの一例を示す図である。 実施形態3におけるメッセージ情報の一例を示す図である。 実施形態3における印刷処理の一例を示すフローチャートである。 実施形態3におけるリクエスト情報の一例を示す図である。 実施形態3におけるFAX送信処理の一例を示すフローチャートである。 実施形態3におけるE−Mail送信処理の一例を示すフローチャートである。 実施形態3におけるファイル送信処理の一例を示すフローチャートである。 実施形態3における完了メッセージの送受信に関する処理の一例を示すフローチャートである。 実施形態3におけるレスポンス情報の一例を示す図である。 実施形態3におけるファイルフォーマット変換処理の一例を示すフローチャートである。 実施形態3における共通フォーマットでのリストページの一例を示す図である。 実施形態4における中継サーバと、ドキュメントサーバとの処理の一例を示すフローチャート(S1401からS1412までの処理、S3201の処理)である。 実施形態4における中継サーバの処理の一例を示すフローチャート(S3301からS3307までの処理)である。 実施形態4におけるドキュメント管理テーブルの一例を示す図である。 実施形態5における中継サーバと、ドキュメントサーバとの処理の一例を示すフローチャート(S1802からS1815までの処理、S3501の処理)である。
以下、本発明の実施形態について図面に基づき説明する。
<実施形態1>
以下、実施形態1について説明する。
図1は、本実施形態のシステム構成の一例を示す図である。
プリンタ1001、1002は、プリント機能に加えて、FAX、スキャナ等の機能を有する複合機であってもよい。
FAX1003、1004は、ファックス送信機能に加えて、他の機能を有していてもよい。FAX1003、1004は、それぞれ公衆回線1007を介して、他の拠点のFAXと通信可能である。
プリンタ1001、1002及びFAX1003、1004は、それぞれネットワーク1006を介してクライアントPC200や中継サーバ300と相互に接続されている。なお、クライアントPC200は、情報処理装置の一例である。
中継サーバ300は、複数の物理的なサーバ装置から構成されてもよいし、1台のサーバ装置から構成されてもよい。中継サーバ300には、サービスやアダプタがセットアップされている。これらのサービスやアダプタは、中継サーバ300の1つ以上のCPUにより実行される。詳細については、図3を用いて後述する。
クライアントPC200は、例えばWebブラウザを用いて中継サーバ300と通信する。クライアントPC200は、中継サーバ300から提供されるGUIに関する情報を受信して、クライアントPC200のディスプレイに表示する。
ドキュメントサーバ1005は、クライアントPC200で作成された各種ドキュメントを保存している。ドキュメントサーバ1005は、中継サーバ300からの要求に応じて、保存しているドキュメントを中継サーバ300に送信する。なお、ドキュメントサーバ1005は、管理サーバ装置の一例である。また、ドキュメントは、ファイルの一例である。
図2は、クライアントPC200、中継サーバ300、ドキュメントサーバ1005のハードウェア構成の一例を示す図である。
CPU201は、システムバス204に接続されている各デバイスやコントローラを統括的に制御する。
クライアントPC200のCPU201は、クライアントPC200のROM202等に格納されているプログラムを実行することにより、クライアントPC200の機能(ソフトウェア構成)を実現する。同様に、クライアントPC200のCPU201は、前記プログラムを実行することにより後述するクライアントPC200のフローチャートに係る処理を実現する。
中継サーバ300のCPU201は、中継サーバ300のROM202等に格納されているプログラムを実行することにより、中継サーバ300の機能(ソフトウェア構成)を実現する。同様に、中継サーバ300のCPU201は、前記プログラムを実行することにより後述する中継サーバ300のフローチャートに係る処理を実現する。
ドキュメントサーバ1005のCPU201は、ドキュメントサーバ1005のROM202等に格納されているプログラムを実行することにより、ドキュメントサーバ1005の機能(ソフトウェア構成)を実現する。同様に、ドキュメントサーバ1005のCPU201は、前記プログラムを実行することにより後述するドキュメントサーバ1005のフローチャートに係る処理を実現する。
ROM202及び外部メモリ211は、CPU201の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムプログラム(以下、OS)を記憶している。また、ROM202及び外部メモリ211は、各サーバ或いは各PCの実行する機能を実現するために必要な各種プログラム等を記憶している。
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理を実行する際に必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現する。
入力コントローラ(入力C)205は、キーボード(KB)209やマウス等の入力デバイスからの入力を制御する。
ビデオコントローラ(VC)206は、CRTディスプレイ(CRT)210等の表示器への表示を制御する。表示器は、CRT210だけでなく液晶ディスプレイでもよい。
メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部メモリ211へのアクセスを制御する。
外部メモリ211は、ハードディスク(HD)、フレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等である。なお、外部メモリ211、RAM203、ROM202は、記憶部の一例である。
通信I/Fコントローラ(通信I/FC)208は、ネットワークを介して、外部機器と接続・通信し、ネットワークでの通信制御処理を実行する。例えば、通信I/FC208は、TCP/IPを用いたインターネット通信等を可能とする。
なお、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT210上での表示を可能としている。また、CPU201は、CRT210上におけるマウスカーソル等でのユーザ指示を可能とする。
次に、クライアントPC200、中継サーバ300、ドキュメントサーバ1005の機能構成について、図3を用いて説明する。
図3は、クライアントPC200、中継サーバ300、ドキュメントサーバ1005の機能構成の一例を示す図である。なお、図3の各種端末或いはサーバのモジュール構成は一例であり、用途や目的に応じて様々な構成例がある。各種モジュールは、ライブラリであってもよい。
クライアントPC200は、送受信制御モジュール301、表示制御モジュール302、ユーザ操作制御モジュール303、分岐処理判定モジュール304、更新フォルダ登録モジュール305を有する。
送受信制御モジュール301は、中継サーバ300の送受信制御モジュール311、及びドキュメントサーバ1005の送受信制御モジュール321と所定の通信プロトコルによって、情報の送受信を行うためのモジュールである。
表示制御モジュール302は、クライアントPC200のCRT210に対する表示を制御するためのモジュールである。
ユーザ操作制御モジュール303は、クライアントPC200の入力部から入力されたユーザ操作を検知し、検知した操作に応じた動作を行うためのモジュールである。
分岐処理判定モジュール304は、クライアントPC200で実行される各種判定の制御を行うためのモジュールである。
更新フォルダ登録モジュール305は、ドキュメントが更新される可能性のあるフォルダ(以下、更新フォルダ)を登録する際に用いられるモジュールである。なお、更新フォルダ登録モジュール305は、クライアントPC200ではなく、中継サーバ300に備えていてもよい。つまり、クライアントPC200がWebブラウザ経由で中継サーバ300の更新フォルダ登録モジュール305の機能を動作させる形態である。
中継サーバ300は、送受信制御モジュール311、分岐処理判定モジュール312、BPELモジュール313、日時取得モジュール314、ドキュメント情報取得モジュール315、ドキュメント一時記憶モジュール316を有する。
送受信制御モジュール311は、クライアントPC200の送受信制御モジュール301、及びドキュメントサーバ1005の送受信制御モジュール321と所定の通信プロトコルによって、情報の送受信を行うためのモジュールである。
分岐処理判定モジュール312は、中継サーバ300で実行される各種判定の制御を行うためのモジュールである。
BPELモジュール313は、図4で後述するフレームワークである。
日時取得モジュール314は、中継サーバ300に設定された現在日時を取得するためのモジュールである。
ドキュメント情報取得モジュール315は、ドキュメントサーバ1005に記憶されているドキュメントの書誌に関する情報(以下、書誌情報)を取得し、RAM203等に記憶しておくためのモジュールである。
ドキュメント一時記憶モジュール316は、ドキュメントサーバ1005に記憶されたドキュメントをBPELモジュール313によって結合し、当該結合されたドキュメント(以下、結合ドキュメント)をRAM203等の所定の記憶領域に記憶しておくためのモジュールである。なお、結合ドキュメントは、結合されたファイル(以下、結合ファイル)の一例である。
ドキュメントサーバ1005は、送受信制御モジュール321、ドキュメント管理モジュール322を有する。
送受信制御モジュール321は、クライアントPC200の送受信制御モジュール301、及び中継サーバ300の送受信制御モジュール311と所定の通信プロトコルによって、情報の送受信を行うためのモジュールである。
ドキュメント管理モジュール322は、クライアントPC200で生成されたドキュメントを管理するためのモジュールである。ドキュメント管理モジュール322は、必要に応じてドキュメントサーバ1005に記憶されたドキュメントを取得し、中継サーバ300に送信する。また、ドキュメント管理モジュール322は、ドキュメントに関する書誌情報も必要に応じて中継サーバ300に送信する。
図4は、中継サーバ300に実装される本実施形態のフレームワークの一例を示す図である。
BPEL Engine401は、BPEL Processを実行するエンジンである。BPELとは、Business Process Execution Languageの略である。BPEL Processは、XMLファイルとして記述される。設計者は、BPELの設計ツールを使うことで、GUIでドラッグ&ドロップの操作を行うことで、プロセスを定義することができる。
BPELは、業界標準化団体で策定されている。BPELは、複数のプロセス(例えば、業務タスク)をワークフローのように定義することができる。例えば、設計者は、複数のWeb Serviceを呼び出すプロセスを、設計ツールを使って定義することができる。また、BPEL Process自体がWeb Serviceとなっているので、BPEL Processを呼び出したい場合、ユーザは他のWeb Serviceを呼び出すのと同様の手順で使うことができる。更に、ユーザは、1つのBPEL Processから他のBPEL Processを呼び出すこともできる。本実施形態では、BPELを使って複数のアダプタ(実体は複数のWeb Service)を組み合わせたフローを定義できるようにしている。後述する411から418までの各種アダプタは、それぞれがBPELを使って呼び出し可能なWeb Serviceである。そして、各種の実行制御手順等が、ワークフローとして、BPELにより定義される。
Directory Service402は、ユーザに関する情報(以下、ユーザ情報)の管理、ユーザの認証を行う。ユーザ情報は、Directory Service402内で管理されていてもよいし、そうでなくてもよい。Directory Service402でユーザ情報が管理されていない場合、Directory Service402は、Active Directory等の外部の認証サーバと連携し、外部認証サーバにユーザ情報の問い合わせやユーザ認証を行う。
Content Management403は、文書、画像、動画等の電子ファイルを保存及び管理する。この機能は同じサーバ上になくてもよい。
Application Management404は、ユーザが作成した任意のアプリケーションの実行やインストール状況等を管理するエンジンである。
Print Adapter411は、印刷を実行するアダプタである。Print Adapter411は、Web Serviceのインターフェースを使って実装されている。Print Adapter411は、呼び出されると、サーバ内に予めインストールされているプリンタオブジェクトを呼び出して印刷を実行する。また、Print Adapter411は、プリンタがダイレクトプリント機能に対応している場合は、指定されたIPアドレスに対して直接印刷データを送信することもできる。プリンタオブジェクトは、OSに対して登録されているオブジェクトで、1つ以上のプリンタドライバに対応する。Print Adapter411によりプリンタオブジェクトが指定され、オブジェクトに対してデータが与えられると、プリンタドライバが呼び出され、プリンタオブジェクトに対して渡されたデータが印刷データに変換される。そして、Print Adapter411は、プリンタオブジェクトに対応するプリンタ1001又は1002に対して印刷データを送信する。
FAX Adapter412は、FAX送信を実行するアダプタである。FAX Adapter412は、サーバ内に予めインストールされているFAXオブジェクトを呼び出してFAX送信を実行する。FAXオブジェクトは、OSに対して登録されているオブジェクトで、1つ以上のファックスドライバに対応する。FAX Adapter412によりファックスオブジェクトが指定され、そのファックスオブジェクトに対してデータと、ファックス番号が与えられると、ファックスドライバが呼び出される。ファックスドライバは、ファックスオブジェクトに対して渡されたデータをファックス送信用データに変換する。そして、FAX Adapter412は、ファックスドライバに対応するFAX1003に対してファックス送信用データを送信する。データを受け取ったFAX1003は、必要に応じて公衆回線1007を使って前記ファックス番号に対応するファックスデバイス、例えばFAX1004に対してFAX送信用データを送信する。
File Adapter413は、SMB、FTP等のファイル送信プロトコルを使って、ネットワークを経由して与えられたデータ、例えばファイル等を送信するアダプタである。
E−Mail Adapter414は、SMTP等のプロトコルを使って、与えられたデータ、例えばファイル等をE−Mail送信するアダプタである。
PDF Adapter415は、与えられたPDFファイルの結合、及び分割を行うアダプタである。また、PDF Adapter415は、与えられたデータ又は処理済みのデータに対するパスワードの付与、テキストの追加、地紋の付与等の機能を有する。
Content Management Adapter416は、Content Management403を制御するアダプタである。Content Management Adapter416は、Content Management403から指定されたファイルを取得したり、Content Management403に指定されたファイルを格納したりすることができる。
Authentication Management Adapter417は、Directory Service402を制御するアダプタである。Authentication Management Adapter417は、Directory Service402に対して認証要求を行うことができる。
File Format Conversion Adapter418は、ファイルのフォーマットを変換するアダプタである。File Format Conversion Adapter418は、各種のフォーマットを相互に変換させることができる機能を有していてもよい。各種フォーマットとは、例えば表計算フォーマット、ドキュメントアプリケーションフォーマット、プレゼンテーションフォーマット、TIFF、JPG、ビットマップ、プレインテキスト、CIF、GIF、PNG等である。
GUI Application421は、GUI表示機能に関するアプリケーションである。ユーザは、GUI Application421を任意に作成することができる。また、GUI Application421は、本実施形態の種々のGUIを表示制御する機能を有する。GUI Application421は、Application Management404によって管理及び実行される。
BPEL Process Application422は、ユーザが作成した任意のBPEL Processである。BPEL Process Application422は、BPEL Engine401によって管理及び実行される。
次に、図5及び図6を用いて本実施形態における処理概要について説明する。
図5は、クライアントPC200から送信されたドキュメントの結合要求に基づく処理の概要の一例を示す図である。
まず、クライアントPC200のCPU201(以下、単にクライアントPC200と言う)は、ドキュメントサーバ1005に格納された複数のドキュメントから成る結合ドキュメントの印刷要求を、入力デバイスを介してユーザから受け付ける。そして、クライアントPC200は、「文書A」と、「文書B」と、「文書C」を結合した「文書A+B+C」の印刷要求を中継サーバ300に送信する。
中継サーバ300のCPU201(以下、単に中継サーバ300と言う)は、クライアントPC200から「文書A+B+C」の印刷要求を受け付けると、中継サーバ300が保持しているデータベースから要求されたドキュメントの保存先を特定する。中継サーバ300は、データベースにドキュメント名、サーバ名、格納フォルダ等の情報を記憶しているので、これらの情報を活用してドキュメントの保存先を特定すればよい。中継サーバ300は、特定した保存先のドキュメントサーバ1005に対して、前記ドキュメントの取得要求を送信する。
ドキュメントサーバ1005のCPU201(以下、単にドキュメントサーバ1005と言う)は、中継サーバ300からドキュメントの取得要求を受信すると、前記ドキュメントを取得して中継サーバ300に返送する。
中継サーバ300は、前記ドキュメントの取得要求に応じてドキュメントサーバ1005から送信されてきたドキュメントを全て受信すると、受信した全てのドキュメントを結合して1つのドキュメント(結合ドキュメント)を作成し、記憶領域(例えば外部メモリ211)に格納する。なお、中継サーバ300が前記結合ドキュメントを作成して記憶領域に格納する処理は、中継サーバ300の格納処理の一例である。
図5の例で言えば、中継サーバ300は、「文書A」と、「文書B」と、「文書C」の取得要求をそれぞれのドキュメントを保存しているドキュメントサーバ1005に送信する。そして、中継サーバ300は、それに応じてドキュメントサーバ1005から「文書A」と、「文書B」と、「文書C」が全て返送されてきたら、結合して「文書A+B+C」を生成する。中継サーバ300は、生成した「文書A+B+C」を中継サーバ300の記憶領域に保存し、印刷ジョブを生成してプリンタ1001に送信する。なお、中継サーバ300が各種のジョブを生成する際に記憶領域に保存されている結合ファイルを取得する処理は、中継サーバ300の取得処理の一例である。以降の処理においても同様である。こうすることによって、中継サーバ300は、複数のドキュメントを各ドキュメントサーバ1005から取得して、それらを結合した1つのドキュメントを作成し、外部メモリ211に保存している。
図6は、図5の処理が行われた後にクライアントPC200から再度同じ結合ドキュメントの印刷要求があった場合の処理の概要の一例を示す図である。
図5と同様に、まず、クライアントPC200は、ドキュメントサーバ1005に格納された複数のドキュメントから成る結合ドキュメントの取得要求を、入力デバイスを介してユーザから受け付ける。ここでは、クライアントPC200は、「文書A+B+C」の印刷要求を受け付けたとする。
中継サーバ300は、クライアントPC200からの要求を受け取ると、中継サーバ300の記憶領域に保存された結合ドキュメントが存在するか否かを判定する。なお、中継サーバ300が中継サーバ300の記憶領域に前記結合ドキュメントが存在するか否かを判定する処理は、中継サーバ300の判定処理の一例である。図6の例で言えば、中継サーバ300は、図5で既に「文書A+B+C」を生成して中継サーバ300の記憶領域に保存しているので、新しくドキュメントサーバ1005からドキュメントを取得して結合することなく、保存された「文書A+B+C」をプリンタ1001に送信する。
以上により、中継サーバ300は、再度結合する処理を要しないため、中継サーバ300における処理負荷を軽減することができる。以下、この仕組みについて説明を行う。
図7は、クライアントPC200と、中継サーバ300がドキュメントサーバ1005にあるフォルダのうち、ドキュメントが更新される可能性のあるフォルダを登録するために実行する処理の一例を示すフローチャートである。
本実施形態では、中継サーバ300が保存した結合ドキュメントを構成するドキュメントは、ドキュメントサーバ1005で更新される可能性がある。より具体的には、前記ドキュメントが格納されているフォルダを他のユーザと共有している場合や、ドキュメントの性質上、更新が頻繁に発生する場合等である。クライアントPC200と、中継サーバ300とは、予め図7に示す処理に基づいて、このようなフォルダを更新フォルダとして登録しておくことで、後述する結合の処理に役立てる。なお、更新される可能性があるドキュメントは、更新ファイルの一例である。
S701では、クライアントPC200は、中継サーバ300に対して更新フォルダ登録画面の取得要求を送信する。更新フォルダとは、前述したように、複数のユーザが共有で使用しているフォルダやドキュメントの更新が頻繁に発生するフォルダのことである。
S702では、中継サーバ300は、クライアントPC200から更新フォルダ登録画面の取得要求を受信する。
S703では、中継サーバ300は、中継サーバ300の記憶領域に保存されている更新フォルダ登録画面を取得する。
S704では、中継サーバ300は、S703で取得した更新フォルダ登録画面をクライアントPC200に送信する。
S705では、クライアントPC200は、中継サーバ300から送信された更新フォルダ登録画面を受信する。
S706では、クライアントPC200は、S705で受信した更新フォルダ登録画面800を表示し、入力デバイスを介してユーザからの操作を受け付ける。なお、更新フォルダ登録画面800は、図8に示すような画面であり、更新フォルダの登録を行うための画面である。
図8は、更新フォルダ登録画面の一例を示す図である。
図8に示す更新フォルダ登録画面800は、画面上部にクライアントPC200(又はドキュメントサーバ1005)のフォルダ階層を表示している。また、更新フォルダ登録画面800は、既に登録済みの更新フォルダがあれば画面下部のリストに表示し、何もなければ空で表示する。
S707では、クライアントPC200は、入力デバイスを介したユーザの操作により更新フォルダが画面上部で選択され、更新フォルダ登録画面800に含まれる追加ボタン801が押下されたか否かを判定する。クライアントPC200は、追加ボタン801が押下されたと判定した場合には、S708に処理を進め、そうでない場合(例えば、追加ボタン801以外のボタンが押下された場合)には、S709に処理を進める。
S708では、クライアントPC200は、入力デバイスを介したユーザの操作により選択されたフォルダを画面下部の更新フォルダ一覧のリストに表示する。以上により、クライアントPC200は、更新フォルダとして登録する準備を完了する。
S709では、クライアントPC200は、入力デバイスを介したユーザの操作により更新フォルダ一覧のリストで更新フォルダが選択され、更新フォルダ登録画面800に含まれる削除ボタン802が押下されたか否かを判定する。クライアントPC200は、削除ボタン802が押下されたと判定した場合には、S710に処理を進め、そうでない場合(例えば、削除ボタン802以外のボタンが押下された場合)には、S711に処理を進める。
S710では、クライアントPC200は、入力デバイスを介したユーザの操作により更新フォルダ一覧のリストで選択された更新フォルダを前記リストから削除する。つまり、クライアントPC200は、更新フォルダではない通常のフォルダとして登録することになる。クライアントPC200は、S708と、S710において追加処理と、削除処理とを行うことで更新フォルダの登録及び解除を行う。
S711では、クライアントPC200は、更新フォルダが登録された状態で入力デバイスを介したユーザの操作により更新フォルダ登録画面800に含まれる確定ボタン803が押下されたか否かを判定する。クライアントPC200は、確定ボタン803が押下されたと判定した場合には、S712に処理を進め、そうでない場合(例えば、確定ボタン803以外のボタンが押下された場合)には、S707に処理を戻す。
S712では、クライアントPC200は、S708で追加された更新フォルダの情報を中継サーバ300に送信する。追加された更新フォルダの情報は、追加された更新フォルダを備えるドキュメントサーバ1005のサーバ名や更新フォルダのフォルダパス等である。
S713では、中継サーバ300は、クライアントPC200から送信された更新フォルダの情報を受信する。
S714では、中継サーバ300は、S713で受信した更新フォルダの情報を図9Aに示すような更新フォルダ管理テーブル900に登録する。
図9Aは、更新フォルダ管理テーブルの一例を示す図である。
更新フォルダ管理テーブル900は、フォルダID901、ドキュメントサーバ名902、フォルダパス903を含む。フォルダID901は、更新フォルダ毎に一意に割り振られるIDである。ドキュメントサーバ名902は、更新フォルダを有するドキュメントサーバ1005の名前を示す。フォルダパス903は、ドキュメントサーバ1005における更新フォルダのフォルダパスを示す。なお、更新フォルダ管理テーブル900は、更新フォルダ情報の一例である。
中継サーバ300は、更新フォルダを登録する場合、フォルダID901を新しく発行し、そのフォルダが属するドキュメントサーバ名902を格納し、前記フォルダのフォルダパス903を格納する。なお、中継サーバ300は、どのフォルダがどのドキュメントサーバ1005に属するかを、データベースとして別途記憶しているドキュメントサーバ1005と、フォルダとを対応づけたデータから特定するようにしてもよい。また、これらに限らず、中継サーバ300は、どのフォルダがどのドキュメントサーバ1005に属するかを、他の方法で特定するようにしてもよい。
S715では、中継サーバ300は、更新フォルダの登録結果をクライアントPC200に送信する。
S716では、クライアントPC200は、その実行結果を受信して、一連の処理を終了する。以上のようにして、クライアントPC200と、中継サーバ300は、予め更新フォルダを登録しておく。
図10A及び図10Bは、クライアントPC200が中継サーバ300に対して、複数ドキュメントの取得と、結合要求とを行う処理の一例を示すフローチャートである。図10Aは、S1001からS1015までの処理を示すフローチャートである。図10Bは、S1016からS1023までの処理の一例を示すフローチャートである。
S1001では、クライアントPC200は、中継サーバ300に対してドキュメントサーバ1005に記憶されているドキュメント名の一覧(以下、ドキュメント一覧)の取得要求を送信する。
S1002では、中継サーバ300は、クライアントPC200からドキュメント一覧の取得要求を受信する。
S1003では、中継サーバ300は、図9Bに示すドキュメント管理テーブル910からドキュメント名912を取得する。
図9Bは、ドキュメント管理テーブルの一例を示す図である。
ドキュメント管理テーブル910は、中継サーバ300が定期的にドキュメントサーバ1005に対して問い合わせを行い、収集したドキュメントに関する情報のリストである。ドキュメントID911は、ドキュメント毎に一意に割り振られた識別番号である。ドキュメント名912は、前記ドキュメントの名称を示す。ドキュメントサーバ名913は、前記ドキュメントが保存されたドキュメントサーバ1005の名称を示す。フォルダパス914は、前記ドキュメントが格納されたフォルダパスを示す。
S1004では、中継サーバ300は、取得したドキュメント名912から構成されるドキュメント一覧をクライアントPC200に送信する。
S1005では、クライアントPC200は、中継サーバ300から送信されたドキュメントの一覧を受信する。
S1006では、クライアントPC200は、S1005で受信したドキュメント一覧に基づいて図11に示すようなドキュメント処理画面1100を生成して表示し、入力デバイスを介してユーザからの操作を受け付ける。
図11は、ドキュメント処理画面の一例を示す図である。
ドキュメント処理画面1100は、ユーザが入力デバイスを介して複数のドキュメントを選択して、任意の処理の実行指示をするための操作を受け付ける画面である。ユーザは、入力デバイスを介してドキュメント処理画面1100の画面上部にあるドキュメント一覧1101から複数のドキュメントを選択し、画面右下部にある処理内容から実行したい処理を選択する。これにより、クライアントPC200は、入力デバイスを介して受け付けたユーザの操作に基づいて複数のドキュメントを結合させ、前記結合させたドキュメントに対する任意の処理の実行を指示することができる。
S1007では、クライアントPC200は、入力デバイスを介したユーザの操作によりドキュメント処理画面1100でドキュメントが選択されたか否かを判定する。より具体的には、クライアントPC200は、ドキュメント処理画面1100の画面上部にあるドキュメント一覧1101が表示される領域で、対象となるドキュメントのチェックボックスに対して選択がなされたか否かを判定する。クライアントPC200は、ドキュメントが選択されたと判定した場合には、S1008に処理を進め、そうでない場合(例えば、ドキュメント履歴欄1102で結合ドキュメントを構成するドキュメントの組み合わせが選択された場合や、処理内容欄1103の処理種別の選択がなされた場合等)にはS1011に処理を進める。
S1008では、クライアントPC200は、選択されたドキュメントのチェックボックスにチェックが入った状態にする。
S1009では、クライアントPC200は、選択されたドキュメントが過去に結合させたことのあるドキュメントであるか否かを判定する。より具体的には、クライアントPC200は、中継サーバ300に記憶された後述の図12に示す履歴情報テーブル1200に、選択されたドキュメントが含まれるか否かを判定する。クライアントPC200は、過去に結合させたドキュメントが選択されたと判定した場合には、S1010に処理を進め、そうでない場合には、S1011に処理を進める。
図12は、履歴情報テーブルの一例を示す図である。
図12に示す履歴情報テーブル1200は、結合したドキュメントの履歴がユーザ毎に記憶されている。結合ドキュメントID1201は、ドキュメントが結合される度に一意に割り振られるIDである。ユーザID1202は、ユーザ毎の識別情報を示すIDである。結合ドキュメント1203から1205までは、結合ドキュメントを構成するドキュメントのドキュメント名912を示す。処理種別1206は、結合ドキュメントに対して行われた処理の種別を示す。処理設定1207は、処理種別1206の処理の詳細な設定を示す。更新フォルダドキュメント1208は、結合ドキュメント1203から1205のうち、更新フォルダに保存されたドキュメントのドキュメント名912を示す。最終使用日時1209は、結合ドキュメントを最後に使用した日時を示す。履歴情報テーブル1200は、後述する処理において結合ドキュメントが保存される度に更新がなされる。なお、本実施形態では、結合ドキュメント1203から1205までの3つのドキュメントを結合する形態を示すが、3つに限る必要はない。
S1010では、クライアントPC200は、ドキュメント処理画面1100の画面左下に示されるドキュメント履歴欄1102に、選択されたドキュメントを含むドキュメントの組み合わせを表示する。より具体的には、クライアントPC200は、クライアントPC200を操作するユーザと同じユーザID1202を持つ履歴情報テーブル1200のレコードを特定する。そして、クライアントPC200は、前記特定したレコードのうち、結合ドキュメント1203から1205の中に、選択されたドキュメントと同じドキュメントが含まれるレコードを特定する。クライアントPC200は、特定したレコードの結合ドキュメント1203から1205を取得して、ドキュメント履歴欄1102にドキュメントの組み合わせ(以下、組み合わせ履歴)を表示する。クライアントPC200が表示した結果は、図13に示す通りである。
図13は、ドキュメント処理画面の表示の一例を示す図である。
例えば、「UserA」が「表紙A」というドキュメントを選択した場合、クライアントPC200は、図12の履歴情報テーブル1200を参照して、「UserA」により「表紙A」を含む3つの結合ドキュメントが作成されたことを認識する。より具体的には、前記3つの結合ドキュメントは、「表紙A+広告C+集計表F」、「表紙A+顧客情報G+集計表F」、「表紙A+顧客情報G+価格表H」である。以上により、クライアントPC200は、ドキュメント処理画面1100のドキュメント履歴欄1102にこの3つの組み合わせ履歴を選択可能に表示する。例えば、クライアントPC200は、通常のドキュメントと同様に、組み合わせ履歴のチェックボックスを表示して選択を受け付けるようにしてもよい。
S1011では、クライアントPC200は、S1010でドキュメント履歴欄1102に表示された組み合わせ履歴が、入力デバイスを介したユーザの操作により選択されたか否かを判定する。より具体的には、クライアントPC200は、ドキュメント履歴欄1102に表示された組み合わせ履歴のチェックボックスに対して選択がなされたか否かを判定する。クライアントPC200は、組み合わせ履歴のチェックボックスが選択されたと判定した場合には、S1012に処理を進め、そうでない場合(例えば、処理内容欄1103の処理種別の選択がなされた場合や、処理種別の設定の変更が指示された場合等)には、S1014に処理を進める。
S1012では、クライアントPC200は、選択された組み合わせ履歴のチェックボックスを選択状態にする。
S1013では、クライアントPC200は、S1012で選択された組み合わせ履歴の処理種別1206と、処理設定1207を履歴情報テーブル1200から取得する。そして、クライアントPC200は、取得した前記処理種別1206と、前記処理設定1207をドキュメント処理画面1100の画面右下に設けられた処理内容欄1103に表示する。履歴情報テーブル1200には、処理種別1206と、処理設定1207が含まれるので、クライアントPC200は、これらの情報に基づいて、処理内容欄1103に以前の処理内容を設定することができる。例えば、「表紙A+広告C+集計表F」であれば、過去にクライアントPC200が「両面、カラー、2部」で「印刷」の実行を指示していることがわかる。クライアントPC200は、ドキュメント処理画面1100の処理内容欄1103に処理種別1206と、処理設定1207を設定する。クライアントPC200により設定されたドキュメント処理画面1100は、図13のように表示される。
S1014では、クライアントPC200は、入力デバイスを介したユーザの操作により、ドキュメント処理画面1100に含まれる処理内容欄1103の処理種別の選択がなされたか否かを判定する。クライアントPC200は、ボタンを設けて処理種別の選択を受け付けるようにしてもよいし、ラジオボタンを設けて処理種別の選択を受け付けるようにしてもよい。クライアントPC200は、処理種別の選択がなされたと判定した場合には、S1015に処理を進め、そうでない場合(例えば、処理種別の設定の変更が指示された場合や、実行ボタン1104が押下された場合等)には、図10BのS1016に処理を進める。
S1015では、クライアントPC200は、入力デバイスを介したユーザの操作により選択された処理種別を選択状態にする。
図10Bに説明を移す。
S1016では、クライアントPC200は、入力デバイスを介したユーザの操作により、処理種別で選択された設定が変更されたか否かを判定する。より具体的には、処理種別毎に設定項目が存在するので、クライアントPC200は、この設定の変更指示を、入力デバイスを介してユーザから受け付けたか否かを判定する。クライアントPC200は、処理設定が変更されたと判定した場合には、S1017に処理を進め、そうでない場合(例えば、実行ボタン1104が押下された場合等)にはS1018に処理を進める。
S1017では、クライアントPC200は、入力デバイスを介して受け付けたユーザの指示に基づいて設定の変更を行う。クライアントPC200は、何も設定されていなければ、新規に設定を行い、既に設定されていれば、その設定値を変更する。
S1018では、クライアントPC200は、入力デバイスを介したユーザの操作によりドキュメント処理画面1100に含まれる実行ボタン1104が押下されたか否かを判定する。クライアントPC200は、ドキュメント一覧1101や、ドキュメント履歴欄1102で対象となるドキュメントが選択され、処理内容欄1103で選択された処理の処理設定がなされた状態で実行ボタン1104の押下を受け付ける。そして、クライアントPC200は、後述するS1021で選択されたドキュメントに対して選択された処理を実行することになる。クライアントPC200は、実行ボタン1104が押下されたと判定した場合には、S1019に処理を進め、そうでない場合には、図10AのS1007に処理を戻す。
S1019では、クライアントPC200は、入力デバイスを介したユーザの操作により選択されたドキュメントのドキュメント名(結合ドキュメントを含む)、処理種別、処理設定を中継サーバ300に送信する。なお、ここで、ドキュメント履歴欄1102で選択された場合には、クライアントPC200は、ドキュメント履歴欄1102で選択されたという情報を含めて中継サーバ300に送信する。
S1020では、中継サーバ300は、クライアントPC200から送信された各種情報を受信する。
S1021では、中継サーバ300は、受信した各種情報に基づいて、選択されたドキュメントに対して選択された処理を実行する。S1021における処理の詳細については、後述する図14A及び図14Bを用いて説明する。
S1022では、中継サーバ300は、処理の実行結果をクライアントPC200に送信する。
S1023では、クライアントPC200は、中継サーバから実行結果を受信し、処理を終了する。
図14A及び図14Bは、中継サーバ300がクライアントPC200からの要求に基づいてドキュメントサーバ1005からドキュメントを取得し、所定の処理を実行する処理の一例を示すフローチャートである。図14Aは、S1401からS1412までの処理の一例を示すフローチャートである。図14Bは、S1413からS1429までの処理の一例を示すフローチャートである。
S1401では、中継サーバ300は、クライアントPC200から結合を指示されたドキュメントが更新フォルダに格納されたドキュメントであるか否かを判定する。より具体的には、中継サーバ300は、選択されたドキュメントのドキュメントサーバ名913と、フォルダパス914との組み合わせが、更新フォルダ管理テーブル900に登録されているか否かを判定する。なお、S1401の処理は、中継サーバ300の更新ファイル判定処理の一例である。
中継サーバ300は、ドキュメント履歴欄1102から選択された場合であっても、選択された組み合わせ履歴に含まれるドキュメントが更新フォルダに保存されたドキュメントか否かを判定する。つまり、中継サーバ300は、結合ドキュメントであっても、更新フォルダに保存されたドキュメントが当該結合ドキュメントに含まれる場合には、再度ドキュメントサーバ1005からドキュメントを取得する。そして、中継サーバ300は、取得したドキュメントを結合する。こうすることで、中継サーバ300は、ドキュメントを更新される可能性があったとしても、最新のドキュメントを取得することができる。中継サーバ300は、更新フォルダに格納されたドキュメントを含むと判定した場合には、S1402に処理を進め、そうでない場合には、S1411に処理を進める。
S1402では、中継サーバ300は、入力デバイスを介したユーザの操作により選択された結合するドキュメント(以下、対象ドキュメント)の取得要求を、前記ドキュメントの保存先であるドキュメントサーバ1005に対して送信する。前記取得要求には、少なくとも対象ドキュメントのドキュメント名が含まれている。対象ドキュメントの保存先は、ドキュメント毎に異なるので、中継サーバ300は、ドキュメント管理テーブル910を参照して、対象となるドキュメントサーバ1005に対して対象ドキュメントの取得要求を送信する。
S1403では、ドキュメントサーバ1005は、中継サーバ300から対象ドキュメントの取得要求を受信する。
S1404では、ドキュメントサーバ1005は、S1403で受信した取得要求に応じて対象ドキュメントを取得する。前記取得要求には、対象ドキュメントのドキュメント名が含まれているので、これに基づいてドキュメントサーバ1005の記憶領域から対象ドキュメントを取得する。
S1405では、ドキュメントサーバ1005は、S1404で取得した対象ドキュメントを中継サーバ300に送信する。
S1406では、中継サーバ300は、ドキュメントサーバ1005から送信された対象ドキュメントを受信する。
S1407では、中継サーバ300は、File Format Conversion Adapter418を用いて、S1406で受信した対象ドキュメントをPDFデータ形式に変換する。ドキュメントには様々なファイル形式があり、中継サーバ300は、異なる形式のドキュメントを当該異なる形式のまま結合することができない。例えば、文書データ形式のドキュメントと、表計算データ形式のドキュメントとは、それぞれのファイル構造が異なるので、中継サーバ300は、両者をそのまま結合することができない。そのため、中継サーバ300は、どのような形式のドキュメントであっても統一的に結合可能な形式に一度変換し、その後に結合することで1つの結合データを生成する。なお、本実施形態では、ドキュメントを結合するための形式をPDFデータ形式とするが、それ以外の形式であってもよい。例えば、TIFFデータ形式のような画像データとしてもよいし、HTML形式等であってもよい。中継サーバ300は、異なる形式のデータ同士を結合できるのであれば、どのような形式に変換してもよい。
S1408では、中継サーバ300は、入力デバイスを介したユーザの操作により選択された全ての対象ドキュメントをドキュメントサーバ1005から受信したか否かを判定する。中継サーバ300は、前記全ての対象ドキュメントを受信したと判定した場合には、S1409に処理を進め、そうでない場合には、S1402に処理を戻す。
S1409では、中継サーバ300は、PDF Adapter415を用いて、S1407でPDFデータ形式に変換された全ての対象ドキュメントを結合し、1つのドキュメント(結合ドキュメント)にする。中継サーバ300は、結合ドキュメントのドキュメント名を、各ドキュメントのドキュメント名を結合したものに変更し、どのドキュメントから構成されているのかを識別しやすくする。例えば、中継サーバ300は、「文書A」と、「文書B」と、「文書C」を結合した場合には、ドキュメント名を「文書A+B+C」といった表記にする。但し、ドキュメント名はこれに限らない。
S1410では、中継サーバ300は、結合したドキュメントを中継サーバ300の外部メモリ211等の所定の記憶領域に保存し、処理を図14BのS1423に進める。なお、S1402からS1410までの処理は、中継サーバ300の作成処理の一例である。
S1411では、中継サーバ300は、結合指示された対象ドキュメントが、ドキュメント処理画面1100のドキュメント履歴欄1102で選択されたドキュメントであるか否かを判定する。中継サーバ300は、ドキュメント履歴欄1102で選択されたドキュメントであると判定した場合には、S1412に処理を進め、そうでない場合(ドキュメント一覧1101で選択されたドキュメントであると判定された場合等)には、S1402に処理を進める。
前記対象ドキュメントがドキュメント履歴欄1102で選択されたドキュメントであれば、既に中継サーバ300の外部メモリ211等に保存されているはずである。そのため、中継サーバ300は、その保存されている結合ドキュメントを取得すれば新たに結合処理をせずに済む。また、記憶された結合ドキュメントと同じ組み合わせであっても、ドキュメント一覧1101から選択されていれば、中継サーバ300は、対象のドキュメントを再結合する。
なお、前述したS1019で、クライアントPC200は、中継サーバ300に各種情報を送信する際に、ドキュメント履歴欄1102で選択された旨を示す情報を含めて送信するようにすればよい。こうすることで、中継サーバ300は、その情報に基づいて、前記結合指示された対象ドキュメントがドキュメント履歴欄1102で選択されたドキュメントであるか否かを判定することができる。
別の実施形態として、中継サーバ300は、対象ドキュメントの組み合わせが履歴情報テーブル1200に存在するか否かを判定し、存在するのであれば、結合済みの結合ドキュメントを取得するようにしてもよい。ここで、結合ドキュメントが存在するか否かが判定できるのであれば、どのような方法であってもよい。
S1412では、中継サーバ300は、ドキュメント履歴欄1102で選択された結合ドキュメントを中継サーバ300の記憶領域から取得する。結合ドキュメントには、結合したドキュメントのドキュメント名が付されているので、中継サーバ300は、当該ドキュメント名を用いて記憶領域から必要な結合ドキュメントを抽出して取得する。
図14Bに説明を移す。
S1413では、中継サーバ300は、ドキュメント履歴欄1102に加えて、ドキュメント一覧1101でも追加選択されているか否かを判定する。つまり、中継サーバ300は、結合済みのドキュメントに、追加するドキュメント(以下、追加ドキュメント)が選択されているか否かを判定する。中継サーバ300は、ドキュメント一覧1101で追加の選択がされていると判定した場合には、S1414に処理を進め、そうでない場合には、S1423に処理を進める。なお、追加ドキュメントは、追加ファイルの一例である。
S1414では、中継サーバ300は、追加ドキュメントの取得要求を、前記ドキュメントの保存先であるドキュメントサーバ1005に対して送信する。取得要求には、少なくとも追加ドキュメントのドキュメント名を含める。追加ドキュメントの保存先は、ドキュメント毎に異なるので、中継サーバ300は、ドキュメント管理テーブル910を参照しながら、対象となるドキュメントサーバ1005に対して追加ドキュメントの取得要求を送信する。
S1415では、ドキュメントサーバ1005は、中継サーバ300から追加ドキュメントの取得要求を受信する。
S1416では、ドキュメントサーバ1005は、S1415で受信した取得要求に応じて追加ドキュメントを取得する。前記取得要求には、追加ドキュメントのドキュメント名が含まれているので、これに基づいてドキュメントサーバ1005の記憶領域から対象ドキュメントを取得する。
S1417では、ドキュメントサーバ1005は、S1416で取得した追加ドキュメントを中継サーバ300に送信する。
S1418では、中継サーバ300は、ドキュメントサーバ1005から送信された追加ドキュメントを受信する。
S1419では、中継サーバ300は、File Format Conversion Adapter418を用いて、S1418で受信した追加ドキュメントをPDFデータ形式に変換する。なお、データ形式についての詳細は前述した通りであるため、説明を省略する。
S1420では、中継サーバ300は、入力デバイスを介したユーザの操作により選択された全ての追加ドキュメントをドキュメントサーバ1005から受信したか否かを判定する。中継サーバ300は、前記全ての追加ドキュメントを受信したと判定した場合には、S1421に処理を進め、そうでない場合には、S1414に処理を戻す。
S1421では、中継サーバ300は、PDF Adapter415を用いて、S1419でPDFデータ形式に変換された全ての追加ドキュメントと、S1412で取得した結合ドキュメントとを結合し、1つのドキュメントにする。なお、結合ドキュメントのドキュメント名についての詳細は前述した通りであるため、説明を省略する。
S1422では、中継サーバ300は、S1421で結合したドキュメントを中継サーバ300の外部メモリ211等に保存し、S1423に処理を進める。
ここまでが、ドキュメントの結合に関する処理である。S1423からS1427までの処理は、ユーザが選択した処理を実行する処理である。
S1423では、中継サーバ300は、処理内容欄1103で選択された処理が「印刷」であるか否かを判定する。より具体的には、中継サーバ300は、前述したS1020で処理種別を受信しているので、この情報に基づいて処理内容欄1103で選択された処理が「印刷」であるか否かを判定する。中継サーバ300は、「印刷」であると判定した場合には、S1424に処理を進め、そうでない場合(例えば、処理内容欄1103で選択された処理がFAXやメールであった場合等)には、S1425に処理を進める。
S1424では、中継サーバ300は、Print Adapter411を用いて、S1410、S1412、S1422で保存した結合ドキュメントから、処理内容欄1103で設定された処理設定に基づいて印刷ジョブを生成する。そして、中継サーバ300は、プリンタ1001やプリンタ1002に対して印刷ジョブを送信する。なお、中継サーバ300は、S1020で受信した処理設定を用いる。
プリンタ1001やプリンタ1002は、印刷ジョブを受信すると、紙媒体に印刷を開始する。本実施形態では、中継サーバ300は、直接プリンタに対して印刷ジョブを送信しているが、印刷ジョブを蓄積する印刷サーバがあれば、その印刷サーバを介してプリンタに印刷ジョブを送信するようにしてもよい。
S1425では、中継サーバ300は、処理内容欄1103で選択された処理が「FAX」であるか否かを判定する。より具体的には、中継サーバ300は、前述したS1020で処理種別を受信しているので、この情報に基づいて処理内容欄1103で選択された処理が「FAX」であるか否かを判定する。中継サーバ300は、「FAX」であると判定した場合には、S1426に処理を進め、そうでない場合(例えば、処理内容欄1103で選択された処理がメールや印刷であった場合等)には、S1427に処理を進める。
S1426では、中継サーバ300は、FAX Adapter412を用いて、S1410、S1412、S1422で保存した結合ドキュメントから、処理内容欄1103で設定された処理設定に基づいてFAXデータを生成する。そして、中継サーバ300は、FAX1003やFAX1004に対してFAXデータを送信する。なお、中継サーバ300は、S1020で受信した処理設定を用いる。本実施形態では、中継サーバ300は、直接FAXに対してFAXデータを送信しているが、FAXデータを蓄積するFAXサーバがあれば、そのFAXサーバを介してFAXにFAXデータを送信するようにしてもよい。
S1427では、中継サーバ300は、処理内容欄1103で選択された処理が「メール」であるか否かを判定する。より具体的には、中継サーバ300は、前述したS1020で処理種別を受信しているので、この情報に基づいて処理内容欄1103で選択された処理が「メール」であるか否かを判定する。中継サーバ300は、「メール」であると判定した場合には、S1428に処理を進め、そうでない場合(例えば、処理内容欄1103で選択された処理が印刷やFAXであった場合等)には、S1429に処理を進める。
S1428では、中継サーバ300は、E−Mail Adapter414を用いて、S1410、S1412、S1422で保存した結合ドキュメントから、処理内容欄1103で設定された処理設定に基づいてメールを生成する。より具体的には、結合ドキュメントを添付したメールを処理設定に基づいて生成する。そして、中継サーバ300は、メールサーバに対して当該メールを送信する。なお、その際、中継サーバ300は、S1020で受信した処理設定を用いる。
S1429では、中継サーバ300は、処理を行った結合ドキュメントに関する情報を履歴情報テーブル1200に登録する。中継サーバ300は、新たに結合ドキュメントID1201を割り振り、ユーザID1202には指示を行ったユーザのIDを対応付けて格納する。また、中継サーバ300は、結合ドキュメント1203から1205までには結合したドキュメントのドキュメント名912を格納する。処理種別1206と、処理設定1207には、処理した内容と、その設定を格納する。更に、中継サーバ300は、更新フォルダドキュメント1208には、更新フォルダに保存されたドキュメントのドキュメント名912を格納する。最終使用日時1209には、S1429で登録する際の日時を格納する。
こうして、中継サーバ300は、処理が完了する毎に履歴を登録しておくことで、次回結合処理が指示された際に、結合ドキュメントを取得して処理することができるようになる。
図15は、中継サーバ300が中継サーバ300の記憶領域に保存した結合ドキュメントのうち、一定期間使用のない結合ドキュメントを削除する処理の一例を示すフローチャートである。
中継サーバ300は、定期的に以下のS1501からS1507までの処理を実行する。
S1501では、中継サーバ300は、現在日時を取得する。中継サーバ300は、中継サーバ300に設定された現在日時を取得してもよいし、他の装置から取得してもよい。
S1502では、中継サーバ300は、履歴情報テーブル1200から後述するS1503からS1507の各処理が未処理の1つのレコードを参照する。
S1503では、中継サーバ300は、参照しているレコードの最終使用日時1209を取得し、S1501で取得した現在日時と比較して経過時間を算出する。つまり、中継サーバ300は、結合ドキュメントに印刷やFAX、メールを行ってからどれだけの時間が経過したのかを算出する。
S1504では、中継サーバ300は、S1503で算出した経過時間に基づいて、参照しているレコードの結合ドキュメントが所定の期間、使用がないか否かを判定する。中継サーバ300は、予め所定の期間を設定しておき、その期間を超えたか否かで判定してもよいし、それ以外の方法で判定してもよい。中継サーバ300は、所定の期間使用がないと判定した場合には、S1505に処理を進め、そうでない場合(所定の期間内で使用があると判定された場合)には、S1507に処理を進める。
S1505では、中継サーバ300は、S1507で所定期間使用がないと判定したので、中継サーバ300の記憶領域から前記結合ドキュメントを削除する。なお、S1505の処理は、中継サーバ300の記憶領域に格納されている結合ドキュメントのうち、予め定められた時間以上使用されていないドキュメントを削除する時間管理削除処理の一例である。
S1506では、中継サーバ300は、前記参照しているレコードを履歴情報テーブル1200から削除する。中継サーバ300の記憶領域にも限界があるので、あまり使用されない結合ドキュメントを定期的に削除するような構成にすることで、中継サーバ300は、記憶領域を効率的に使用することができる。
S1507では、中継サーバ300は、履歴情報テーブル1200に格納された全てのレコードについて、S1502からS1506までの処理が完了したか否かを判定する。中継サーバ300は、全てのレコードについて処理が完了したと判定した場合には、処理を終了し、そうでない場合には、S1502に処理を戻す。
以上のように、本実施形態では、中継サーバ300は、結合ドキュメントを中継サーバ300の記憶領域に記憶しておく。そして、中継サーバ300は、同じ組み合わせの結合指示をクライアントPC200から受けた場合には、再結合することなく結合ドキュメントを取得して特定の処理を実行させることができる。また、中継サーバ300は、あまり使用されていない結合ドキュメントを定期的に削除するようにすることで、記憶領域を効率的に使用することができる。
<実施形態2>
以下、実施形態2について説明する。
実施形態1では、中継サーバ300は、更新フォルダに保存されたドキュメントが結合ドキュメントに含まれていても、中継サーバ300の記憶領域に保存していた。しかし、中継サーバ300は、更新フォルダに保存されたドキュメントが結合ドキュメントに含まれる場合には、ドキュメントサーバ1005から結合ドキュメントを構成する全てのドキュメントを再取得して結合させている。そのため、中継サーバ300の記憶領域に結合ドキュメントを保存している有意性があまりない。
本実施形態では、中継サーバ300は、更新フォルダに保存されたドキュメントが結合ドキュメントに含まれている場合には、更新フォルダに保存されたドキュメント以外のドキュメントだけを結合させた結合ドキュメントを中継サーバ300の記憶領域に保存する。そして、中継サーバ300は、それを履歴に登録しておくようにする。こうすることで、中継サーバ300は、更新フォルダに格納されたドキュメントだけを取得すればよいため、送受信の通信量削減と、結合処理の負荷軽減とが実現される。
図16は、クライアントPC200から送信されたドキュメントの結合要求に基づく処理の概要の一例を示す図である。
まず、クライアントPC200は、ドキュメントサーバ1005に格納された複数のドキュメントから成る結合ドキュメントの印刷要求を、入力デバイスを介してユーザから受け付ける。そして、クライアントPC200は、「文書A」と、「文書B」と、「文書C」を結合した「文書A+B+C」の印刷要求を中継サーバ300に送信する。
中継サーバ300は、クライアントPC200から「文書A+B+C」の印刷要求を受け付けると、中継サーバ300が保持しているデータベースから、要求されたドキュメントの保存先を特定する。中継サーバ300は、データベースにドキュメント名、サーバ名、格納フォルダ等の情報を記憶しているので、これらの情報を活用してドキュメントの保存先を特定する。中継サーバ300は、特定した保存先のドキュメントサーバ1005に対して、前記ドキュメントの取得要求を送信する。
ドキュメントサーバ1005は、中継サーバ300からドキュメントの取得要求を受信すると、前記ドキュメントを取得して中継サーバ300に返送する。
中継サーバ300は、ドキュメントの取得要求に応じてドキュメントサーバ1005から送信されてきたドキュメントを全て受信すると、それらを結合して1つのドキュメント(結合ドキュメント)にする。
図16の例で言えば、中継サーバ300は、「文書A」と、「文書B」と、「文書C」の取得要求を、それぞれのドキュメントを保存しているドキュメントサーバ1005に送信する。そして、中継サーバ300は、ドキュメントサーバ1005から「文書A」と、「文書B」と、「文書C」が全て返送されてきた場合、この3つのドキュメントを結合して「文書A+B+C」を生成する。また、中継サーバ300は、取得した「文書C」が更新フォルダに保存されたドキュメントなので、「文書C」を除いて結合した「文書A+B」も生成する。そして、中継サーバ300は、生成した「文書A+B+C」と、「文書A+B」を中継サーバ300の記憶領域(例えば外部メモリ211)に保存し、「文書A+B+C」の印刷ジョブを生成してプリンタ1001に送信する。
図17は、図16の処理が行われた後にクライアントPC200から再度同じ結合ドキュメントの印刷要求が送信された場合の処理の概要の一例を示す図である。
図16と同様に、まず、クライアントPC200は、ドキュメントサーバ1005に保存された結合ドキュメントの取得要求を、入力デバイスを介してユーザから受け付ける。ここでは、クライアントPC200は、「文書A+B+C」の印刷要求を受け付けたとする。
中継サーバ300は、クライアントPC200からの要求を受け取ると、中継サーバ300の記憶領域に要求された結合ドキュメントが存在するか否かを判定する。図17の例で言えば、中継サーバ300は、図17で既に「文書A+B」を生成して中継サーバ300の記憶領域に保存しているので、まずはこれを取得する。「文書C」については、更新フォルダに格納されるドキュメントなので、中継サーバ300は、ドキュメントサーバ1005に「文書C」の取得を要求する。中継サーバ300は、要求に応じてドキュメントサーバ1005から「文書C」を取得すると、中継サーバ300の記憶領域に保存された「文書A+B」と、取得した「文書C」を結合して、「文書A+B+C」を生成する。そして、中継サーバ300は、生成した「文書A+B+C」をプリンタ1001に送信する。
以上により、中継サーバ300は、更新フォルダに格納されたドキュメントについては新しく取得し、それ以外については結合済みのドキュメントを活用できるので、中継サーバ300における処理負荷を軽減することができる。中継サーバ300は、以上の処理を完了させると、更新フォルダに格納された「文書C」が含まれる「文書A+B+C」を記憶領域から削除する。以下、この仕組みについて説明を行う。
本実施形態におけるシステム構成、ハードウェア構成、モジュール構成については、実施形態1と同様である。また、実施形態1で前述した図7、図10A、図10B、図15に示すフローチャート、図9A、図9B、図12の各種テーブル、図8、図11、図13の各種画面例についても同様である。本実施形態における処理は、図14A、図14Bのフローチャートに示される処理の変形例であるので、この点について説明を行う。
図18A及び図18Bは、中継サーバ300がクライアントPC200からの要求に基づいてドキュメントサーバ1005からドキュメントを取得し、所定の処理を実行する処理の一例を示すフローチャートである。図18Aは、S1801からS1815までの処理の一例を示すフローチャートである。図18Bは、S1816からS1824までの処理の一例を示すフローチャートである。
S1801では、中継サーバ300は、結合指示された対象ドキュメントが、ドキュメント処理画面1100のドキュメント履歴欄1102で選択されたドキュメントであるか否かを判定する。中継サーバ300は、ドキュメント履歴欄1102で選択されたドキュメントであると判定した場合には、S1802に処理を進め、そうでない場合(例えば、ドキュメント一覧1101で選択されたドキュメントであると判定された場合等)には、S1804に処理を進める。なお、S1801での処理は、前述したS1411での処理と同様であるため、詳細な説明を省略する。
S1802では、中継サーバ300は、ドキュメント履歴欄1102で選択された結合ドキュメントを中継サーバ300の記憶領域から取得する。なお、S1802での処理は、前述したS1412での処理と同様であるため、詳細な説明を省略する。
S1803では、中継サーバ300は、ドキュメント履歴欄1102に加えて、ドキュメント一覧1101でも選択されているか否かを判定する。中継サーバ300は、ドキュメント一覧1101で選択されていると判定した場合には、S1804に処理を進め、そうでない場合には、S1814に処理を進める。なお、S1803での処理は、前述したS1413での処理と同様であるため、詳細な説明を省略する。
S1804では、中継サーバ300は、入力デバイスを介したユーザの操作により選択された結合するドキュメントの取得要求を、前記ドキュメントの保存先であるドキュメントサーバ1005に対して送信する。対象ドキュメントの保存先は、ドキュメント毎に異なるので、中継サーバ300は、ドキュメント管理テーブル910を参照して、対象となるドキュメントサーバ1005に対して対象ドキュメントの取得要求を送信する。なお、ここで言う対象ドキュメントとは、ドキュメント一覧1101で選択されたドキュメント(追加ドキュメントを含む)である。
S1805では、ドキュメントサーバ1005は、中継サーバ300から対象ドキュメントの取得要求を受信する。
S1806では、ドキュメントサーバ1005は、S1805で受信した取得要求に応じて対象ドキュメントを取得する。
S1807では、ドキュメントサーバ1005は、S1806で取得した対象ドキュメントを中継サーバ300に送信する。
S1808では、中継サーバ300は、ドキュメントサーバ1005から送信された対象ドキュメントを受信する。
S1809では、中継サーバ300は、File Format Conversion Adapter418を用いて、S1808で受信した対象ドキュメントをPDFデータ形式に変換する。なお、データ形式についての詳細は前述した通りであるため、ここでは説明を省略する。
S1810では、中継サーバ300は、入力デバイスを介したユーザの操作により選択された全ての対象ドキュメントをドキュメントサーバ1005から受信したか否かを判定する。中継サーバ300は、前記全ての対象ドキュメントを受信したと判定した場合には、S1811に処理を進め、そうでない場合には、S1804に処理を戻す。
S1811では、中継サーバ300は、クライアントPC200から結合を指示されたドキュメントのうち、更新フォルダに保存されたドキュメントが含まれるか否かを判定する。より具体的には、中継サーバ300は、選択されたドキュメントのドキュメントサーバ名913と、フォルダパス914との組み合わせが、更新フォルダ管理テーブル900に登録されているか否かによって判定する。中継サーバ300は、更新フォルダに保存されたドキュメントであると判定した場合には、S1812に処理を進め、そうでない場合には、S1814に処理を進める。なお、S1811の処理は、中継サーバ300の更新ファイル判定処理の一例である。
S1812では、中継サーバ300は、PDF Adapter415を用いて、取得した対象ドキュメントのうち、更新フォルダのドキュメントを除いて、取得した対象ドキュメントを全て結合する。つまり、中継サーバ300は、「文書A」と、「文書B」と、「文書C」を取得し、「文書C」が更新フォルダに保存されたドキュメントだった場合、「文書C」を除いた「文書A」と、「文書B」を結合し、「文書A+B」を生成する。「文書C」は更新フォルダに保存されているため、更新される可能性がある。よって、中継サーバ300は、「文書A+B+C」を生成しても利用することができない。そのため、中継サーバ300は、「文書C」を除いて結合している。なお、中継サーバ300は、結合ドキュメントのドキュメント名を、対象ドキュメントのドキュメント名912を結合したものに変更し、どのドキュメントから構成されているのかを認識しやすくする。例えば、中継サーバ300は、「文書A」と、「文書B」を結合した場合には、ドキュメント名を「文書A+B」といった表記にする。但し、ドキュメント名はこれに限る必要はない。なお、「文書A+B」は、非更新結合ファイルの一例である。
S1813では、中継サーバ300は、結合したドキュメントを中継サーバ300の外部メモリ211等の所定の記憶領域に保存する。
S1814では、中継サーバ300は、PDF Adapter415を用いて、入力デバイスを介したユーザの操作によりクライアントPC200から指示された対象ドキュメントを同一のファイル形式で全て結合する。例えば、中継サーバ300が、「文書A」と、「文書B」と、「文書C」の結合指示をクライアントPC200から受信した場合について説明する。この場合、中継サーバ300は、S1812で結合した「文書A+B」と、ドキュメントサーバ1005から取得した「文書C」を結合して、「文書A+B+C」を生成する。
S1815では、中継サーバ300は、S1814で結合した結合ドキュメントを中継サーバ300の外部メモリ211等の所定の記憶領域に保存する。中継サーバ300は、処理を完了させると、図18BのS1816に処理を進める。なお、S1812からS1815までの処理は、中継サーバ300の作成処理の一例である。
図18Bに説明を移す。
S1816からS1821までの処理は、前述したS1423からS1428までの処理と同様であるので説明を省略する。なお、S1816からS1821までにおいて各種処理がなされるのは、S1814で結合された結合ドキュメントである。
S1822では、中継サーバ300は、結合ドキュメントを構成するドキュメントに更新フォルダに保存されたドキュメントが含まれるか否かを判定する。より具体的には、中継サーバ300は、結合ドキュメントを構成するドキュメントのドキュメントサーバ名913と、フォルダパス914との組み合わせが、更新フォルダ管理テーブル900に登録されているか否かを判定する。中継サーバ300は、更新フォルダに格納されたドキュメントであると判定した場合には、S1823に処理を進め、そうでない場合には、S1824に処理を進める。
S1823では、中継サーバ300は、前記処理を行った結合ドキュメントを中継サーバ300の記憶領域から削除する。結合ドキュメントを構成するドキュメントに更新フォルダのドキュメントが含まれる場合、前記ドキュメントは更新される可能性があるので、中継サーバ300は、ドキュメントサーバ1005から前記ドキュメントを新たに取得する。そのため、中継サーバ300は、前記結合ドキュメントを保存しておく意味がないので、S1823で削除してしまう。
S1824では、中継サーバ300は、結合ドキュメントに関する情報を履歴情報テーブル1200に登録する。ここで登録する情報は、更新フォルダのドキュメントを含まない結合ドキュメントに関する情報である。つまり、中継サーバ300は、「文書A」と、「文書B」と、「文書C」の結合指示をクライアントPC200から受信した場合には、S1812で結合した「文書A+B」に関する履歴を登録することになる。但し、中継サーバ300は、処理内容と、その設定とについては、S1816からS1821までの処理で処理された内容と、設定とを登録する。その他の登録方法については、S1429と同様であるため説明を省略する。
こうすることで、中継サーバ300は、処理を完了させる毎に履歴を登録しておくことで、次にクライアントPC200から結合処理が指示された際に、結合済みのドキュメントを取得して処理することができるようになる。更に、中継サーバ300は、更新フォルダのドキュメントについては履歴として登録しないので、ドキュメント履歴欄1102にも表示されなくなる。なお、本実施形態では、中継サーバ300は、更新フォルダのドキュメントを除いて履歴に登録するが、更新フォルダのドキュメントも含めて登録するようにしてもよい。この場合には、ドキュメント履歴欄1102に更新フォルダのドキュメントも含めた結合ドキュメントが表示されるが、中継サーバ300の記憶領域に記憶されているのは、更新フォルダのドキュメントを除いた結合ドキュメントである。よって、中継サーバ300は、ドキュメント履歴欄1102で更新フォルダのドキュメントも含めた結合ドキュメントが選択された場合には、更新フォルダのドキュメントをドキュメントサーバ1005から取得する。そして、中継サーバ300は、ドキュメントサーバ1005から取得した更新フォルダのドキュメントと、中継サーバ300に記憶された結合済みのドキュメントとを結合することで、結合ドキュメントを生成すればよい。
以上のように、本実施形態では、中継サーバ300は、結合対象のドキュメントに更新フォルダに保存されたドキュメントが含まれている場合、更新フォルダに保存されたドキュメント以外のドキュメントだけを結合させる。そして、中継サーバ300は、結合させた結合ドキュメントを記憶領域に保存し、更に、履歴に登録しておくようにする。こうすることで、中継サーバ300は、更新フォルダに保存されたドキュメントだけを毎回取得するようにすることができ、それ以外については結合ドキュメントとして保存しておくことができる。これにより、送受信の通信量削減と、結合処理の負荷軽減とが実現される。
<実施形態3>
以下、実施形態3について説明する。
実施形態1、実施形態2では、中継サーバ300は、結合ドキュメントに対して1つの処理しか実行できなかったのに対し、本実施形態では、複数の処理を選択できる場合を想定している。例えば、中継サーバ300は、「文書A+B+C」を取得して、「印刷」と、「FAX」と、「メール」を送信する場合、従来であれば1つの処理を行う度に、ドキュメントサーバ1005からドキュメントを取得する必要があった。しかし、本実施形態では、中継サーバ300は、結合ドキュメントがあれば、それを用いて複数の処理を全て実行させることができる。以下、この説明を行う。
図19は、クライアントPC200と、中継サーバ300における認証処理等の一例を示すフローチャートである。
クライアントPC200は、Webブラウザを介してユーザからのアクセスリクエストを検知すると、図19の処理を開始する。
S1900では、クライアントPC200は、中継サーバ300へアクセスし、中継サーバ300にアクセスリクエストを送信する。
S1901では、中継サーバ300は、アクセスリクエストを受信する。
S1902では、GUI Application421は、図20のログインページを表示するための情報をクライアントPC200へ送信する。図20は、ログインページの一例を示す図である。
S1903では、クライアントPC200は、ログインページを受信する。
S1904では、クライアントPC200は、図20のログインページの画面をCRT210上に表示する。
S1905では、クライアントPC200は、S1904で表示されたログインページで、ユーザによる認証のための情報(以下、ログイン情報)等の入力と、図20のログインボタンの入力とを待つ。
S1906では、クライアントPC200は、ユーザによる図20のログインボタンの押下を受信する。
S1907では、クライアントPC200は、S1906におけるログインボタンの押下を検知すると、S1905で入力を受け付けたログイン情報(例えば、ユーザ名、パスワード、認証ドメイン等)を中継サーバ300に対して送信する。
S1908では、GUI Application421は、クライアントPC200からログイン情報を受信する。
S1909では、GUI Application421は、Authentication Management Adapter417を呼び出して、受信したログイン情報を渡す。Authentication Management Adapter417は、ログイン情報が正しいことを確認すると、前記ログイン情報に対応するユーザのファイルやフォルダに対するアクセス権に関する情報(以下、アクセス権情報)を確認する。そして、Authentication Management Adapter417は、GUI Application421に対して各ドキュメントに設定されているアクセス権情報を通知する。
S1910では、GUI Application421は、通知されたアクセス権情報に基づき、Content Management Adapter416に対し、そのユーザがアクセス可能なファイルのリスト(以下、ファイルリスト)の取得を要求する。そして、GUI Application421は、Content Management Adapter416から前記ファイルリストを取得する。更に、GUI Application421は、取得した前記ファイルリストに基づき、図21で示すページ(以降、リストページと言う場合がある)を構成する。図21は、クライアントPC200のCRT210に表示されるリストページ(画面表示)の一例を示す図である。
ファイルリストは、中継サーバ300のContent Management Adapter416が各ドキュメントに対してユーザ毎にアクセス権や保存場所を管理しているリストである。なお、Content Management Adapter416は、定期的にドキュメントサーバ1005等のドキュメントを保存する装置に対してアクセスしている。そして、Content Management Adapter416は、各ドキュメントに対するユーザ毎にアクセス権や保存場所を管理している。
S1911では、GUI Application421は、そのリストページ(表示画面)をクライアントPC200に対して送信する。
S1912では、クライアントPC200は、中継サーバ300から送信されたリストページを受信する。
S1913では、クライアントPC200は、受信したリストページをクライアントPC200のCRT210へ表示する。
S1914では、クライアントPC200は、図21に示す各種チェックボックス、その他に関するユーザの入力を受け付ける。
S1915では、クライアントPC200は、入力デバイスを介したユーザの操作により図21の送信ボタンが押下されるのを待つ。そして、クライアントPC200は、入力デバイスを介したユーザの操作による送信ボタンの押下を受信する。
ここで、図21のリストページについて説明する。
列2708には、ユーザが送信を許可されているドキュメント名が表示されている。
列2709には、ドキュメントのフォーマットが表示されている。これらの属性は、ドキュメントサーバ1005のデータベースや、Content Management Adapter416が収集した情報から取得されて表示される。
ユーザは、列2710ではプリント、列2711ではファックス、列2712ではE−Mail、列2713ではファイルのネットワーク送信を、ドキュメント毎にチェックボックスで指定できるようになっている。例えば、図21では、ドキュメント名が「NDA」のドキュメントは、ファイルフォーマットがワードプロセッサアプリのファイル形式である「DOC」であり、プリントと同時にE−Mailにより、他へ転送されるように指定されている。また、この画面で、ユーザは、1つ又は複数のファイルに対して、プリント、ファックス、E−Mail、ファイル送信の全て又はその一部の複数の送信方法(転送方法)を指定することができる。
ユーザは、欄2701から欄2707までと、欄2714とで、それぞれの転送方法毎に、転送先に関する属性や、その他の設定をすることができる。例えば、欄2702は、転送先のプリンタオブジェクト、即ち、プリンタドライバと、ポートの組に対応し、ユーザは、複数のプリンタオブジェクトから1つのプリンタオブジェクトを選択することができる。同様に、ユーザは、欄2701でファックスオブジェクトを指定することができる。また、ユーザは、欄2703でファックスオブジェクトに呼び出させたいファックス番号を指定することができる。
E−Mail送信に関して、ユーザは、欄2714で、E−Mailアドレスを指定することができる。ユーザは、欄2704で、列2712でファイルを複数指定した場合、ファイルを結合して転送すべきか否かを指定することができる。
ファイルのネットワーク送信に関して、ユーザは、欄2706で、ファイルの転送プロトコル、例えば、FTPやSMB等を指定することができる。また、ユーザは、欄2707で、ファイルのパスやURIを指定することができる。更に、ユーザは、欄2705で、欄2704と同様に、ファイルのネットワーク送信におけるファイルの結合の要否を指定することができる。
S1916では、クライアントPC200は、S1914で受け付けたユーザの入力情報に基づき、中継サーバ300のGUI Application421に送信するメッセージの情報(以下、メッセージ情報)を作成する。そして、クライアントPC200は、GUI Application421に対して前記メッセージ情報(例えば、図22のような情報)を送信する。
図22は、クライアントPC200からGUI Application421へ送信されるメッセージ情報の一例を示す図である。
メッセージ情報2801から2813までは、通信の管理に用いられる情報である。
メッセージ情報2814は、図21の入力内容に応じて生成されている。即ち、図21の5つのドキュメントは、プリントするよう指定されている。また、列2708のNDAと、NDA Supplementとに対応するドキュメントは、E−Mailするよう指定されている。ここでは、ファックスやネットワークファイル送信は指定されていないためにそれらに関連する値が空になっているが、もちろん指定された場合は、それらが値として指定される。また、プリントに関しては、送信先のプリンタオブジェクトが指定されている。E−Mailに関しては、送信先のメールアドレスが指定されている。なお、メッセージ情報2814において、「EmailMerge」は、E−Mailの転送において、列2712で複数のファイルが指定された場合、これらを結合するか否かを示す。図21の欄2704がチェックされている場合には「1」の値が、チェックされていない場合には「空」(例えば、NULL)の値が入る。また、同様に「FileMerge」に関しては、図21の欄2705にチェックがされている場合には「1」の値が、チェックされていない場合には「空」の値が入ることになる。
S1917では、GUI Application421は、S1916において送信されたメッセージ情報を受信すると、図23のS2000に処理を進める。
図23は、本実施形態の印刷処理の一例を示すフローチャートである。図23のAは、図19のAに対応する。
S2000では、GUI Application421は、そのメッセージ情報に基づき、BPEL Processをコールする。
S2001では、BPEL Process Application422は、GUI Application421からリクエストを受信する。
図24は、GUI Application421からBPEL Process Application422へ送信されるリクエスト情報の一例を示す図である。
クライアントPC200は、図21のような入力がクライアントPC200のブラウザのUIで行われた場合、これに基づき、図22のようなデータを生成し、そのデータをGUI Application421へ送信する。そして、GUI Application421は、受信した図22のようなデータに基づき、図24のようなデータを生成し、BPEL Process Application422に送信する。BPEL Process Application422は、図24のデータを解釈して必要なアダプタを呼び出す。例えば、各アダプタが呼び出されると、各アダプタに対応したファックスドライバ、プリンタドライバ、E−Mail送信プログラム、ネットワークファイル送信アプリケーションが動作し、データの送信処理が行なわれる。
図24について詳細に説明すると、「<docs></docs>」タグで囲まれた2901では、5つのドキュメントが指定されている。1つめのドキュメントは、ドキュメント名が「NDA」、ドキュメントタイプが「DOC」、つまり、ワードプロセッサアプリ形式のファイルである。2つめのドキュメントは、ドキュメント名が「NDA Supplement」、ドキュメントタイプが同じく「DOC」である。3つめのドキュメントは、ドキュメント名が「Enterprise Imaging」、ドキュメントタイプが「PDF」である。4つめのドキュメントは、ドキュメント名が「MFP Embedded」、ドキュメントタイプが「JPG」である。5つめのドキュメントは、ドキュメント名が「Price List」、ドキュメントタイプが表計算アプリケーションのファイルフォーマットである「Sheet」である。
「<sendDocs></sendDocs>」タグで囲まれた2902では、転送方法の一例が示されており、ドキュメント1、2、3、4、5をプリントせよ、つまり、プリンタ等へ転送せよという指定になっている。ここでは、ファックス指定されているドキュメントは無く、ドキュメント1、2は、E−Mailするよう指定されている。ファイルをネットワーク送信するよう指定されているドキュメントは無い。
「<sendSettings></sendSettings>」タグで囲まれた2903では、それぞれの送信方法において、送信設定が指定されている。例えば、「<print></print>」タグでは、プリンタオブジェクト名が指定されている。「<fax></fax>」タグでは、ファックスオブジェクトが指定されている。「<address></address>」では、E−Mailのアドレスが指定されている。その中の「<merge></merge>」タグでは、複数のファイルが「<sendDocs>」で指定されている場合であって、E−Mail送信指定されている複数のファイルの結合の要否が指定されている。「<file></file>」タグでは、ファイルの転送プロトコル(例えば、SMBやFTP等)、ファイルのパス又はURIが指定されている。その中の「<merge></merge>」タグでは、複数のファイルが「<sendDocs>」で指定されている場合であって、ネットワーク送信を指定されている複数のファイルの結合の要否が指定されている。以降、図24のデータを指定メッセージと言う場合がある。
S2001に続いて、S2002では、BPEL Process Application422は、プリントを指示されたファイルを取得する。この処理は、BPEL Process Application422が指定メッセージを解析、例えば図24の2901、2902、2903のようなメッセージを解析することで行なわれる。以下の処理も同様である。
S2003では、BPEL Process Application422は、S2002で取得したファイルが1つ以上であるか否かを判定する。つまり、BPEL Process Application422は、指定されたファイルがあるか否かを判定することになる。BPEL Process Application422は、指定されたファイルが1つ以上あると判定した場合、S2004に処理を進める。一方、BPEL Process Application422は、指定されたファイルが1つもないと判定した場合、後述する図25のBに処理を進める。
S2004では、BPEL Process Application422は、ファイルフォーマットの変換処理を行ない、S2005に処理を進める。なお、ファイルフォーマット変換処理の詳細については、図30を用いて後述する。
S2005では、BPEL Process Application422は、S2002で取得したファイルが2つ以上であるか否かを判定し、2つ以上であると判定した場合、S2006に処理を進める。一方、BPEL Process Application422は、2つ以上でないと判定した場合、S2007に処理を進める。
S2006では、BPEL Process Application422は、PDF Adapter415を呼び出し、ファイルの結合処理をPDF Adapter415に実行させる。BPEL Process Application422は、処理結果として結合されたPDFをPDF Adapter415から取得し、中継サーバ300の所定のフォルダに保存する。
S2007では、BPEL Process Application422は、結合されたファイル又は1つのファイルを印刷するようPrint Adapter411へ指示をする。Print Adapter411は、指定されたファイルを指定されたプリンタオブジェクトに対応するプリンタドライバへ入力する。プリンタドライバは、与えられたファイルを解析して印刷データを作成し、プリンタドライバに指定されている印刷先(ポートに対応するプリンタ1001又は1002等)に対して印刷データを送信して印刷させる。そして、BPEL Process Application422は、後述する図25のBに処理を進める。
図25は、本実施形態のファックス送信処理の一例を示すフローチャートである。
S2101では、BPEL Process Application422は、ファックス送信を指示されたファイルを取得する。この処理は、BPEL Process Application422が指定メッセージを解析、例えば図24の2901、2902、2903のようなメッセージを解析、することで行なわれてもよい。以下の処理も同様である。
S2102では、BPEL Process Application422は、S2101で取得したファイルが1つ以上であるか否かを判定する。つまり、BPEL Process Application422は、指定されたファイルがあるか否かを判定する。BPEL Process Application422は、指定されたファイルが1つ以上あると判定した場合、S2103に処理を進める。一方、BPEL Process Application422は、指定されたファイルが1つもないと判定した場合、後述する図26のCに処理を進める。
S2103では、BPEL Process Application422は、ファイルフォーマットの変換処理を行ない、S2101で取得したファイルをファックス可能なフォーマットへと変換し、S2104に処理を進める。なお、ファイルフォーマット変換処理の詳細については、図30を用いて後述する。
S2104では、BPEL Process Application422は、S2101で取得したファイルが2つ以上であるか否かを判定し、2つ以上であると判定した場合、S2105に処理を進める。一方、BPEL Process Application422は、2つ以上でないと判定した場合、S2108に処理を進める。
S2105では、BPEL Process Application422は、指定されたファイルが既に結合されているか否かを確認し、結合されていると判定した場合、S2106に処理を進める。一方、BPEL Process Application422は、結合されていないと判定した場合、S2107に処理を進める。より具体的には、BPEL Process Application422は、前述したS2006や、後述するS2107、S2208、S2308で結合処理が行われるので、この結合結果が所定のフォルダに存在するか否かを確認する。
S2106では、BPEL Process Application422は、結合されたファイルを所定のフォルダから取得し、S2108に処理を進める。
S2107では、BPEL Process Application422は、PDF Adapter415を呼び出し、ファイルの結合処理をPDF Adapter415に実行させ、所定のフォルダに保存し、S2108に処理を進める。
S2108では、BPEL Process Application422は、FAX Adapter412を呼び出し、S1915でユーザの操作により選択された結合されたファイル又は1つのファイルを指定されたファックスオブジェクトに対してファックス番号を指定して送信する。なお、S2108では、BPEL Process Application422は、必要なフォーマット変換処理等も行う場合がある。そして、BPEL Process Application422は、後述する図26のCに処理を進める。
図26は、本実施形態のE−Mail送信処理の一例を示すフローチャートである。
S2201では、BPEL Process Application422は、E−Mail送信を指示されたファイルを取得する。この処理は、BPEL Process
Application422が指定メッセージを解析、例えば図24の2901、2902、2903のようなメッセージを解析することで行なわれてもよい。以下の処理も同様である。
S2202では、BPEL Process Application422は、S2201で取得したファイルが1つ以上である否かを判定する。つまり、BPEL Process Application422は、指定されたファイルがあるか否かを判定することになる。BPEL Process Application422は、指定されたファイルが1つ以上あると判定した場合、S2203に処理を進める。一方、BPEL Process Application422は、指定されたファイルが1つもないと判定した場合、後述する図27のDに処理を進める。
S2203では、BPEL Process Application422は、結合オプションが指定されているか否かを判定し、指定されていると判定した場合、S2204に処理を進める。一方、BPEL Process Application422は、指定されていないと判定した場合、S2209に処理を進める。より具体的には、BPEL Process Application422は、クライアントPC200から受信したメッセージ内にある、図21の2704が指定されているか否かを示す情報を確認することにより判定する。
S2209では、BPEL Process Application422は、指定されたファイルの送信処理を行ない、後述する図27のDに処理を進める。
S2204では、BPEL Process Application422は、必要なファイルフォーマットの変換処理を行い、S2205に処理を進める。なお、ファイルフォーマット変換処理の詳細については、図30を用いて後述する。
S2205では、BPEL Process Application422は、S2201で取得したファイルが2つ以上であるか否かを判定し、2つ以上であると判定した場合、S2206に処理を進める。一方、BPEL Process Application422は、2つ以上でないと判定した場合、S2209に処理を進める。
S2206では、BPEL Process Application422は、指定されたファイルが既に結合されているか否かを判定し、結合されていると判定した場合、S2207に処理を進める。一方、BPEL Process Application422は、結合されていないと判定した場合、S2208に処理を進める。S2206におけるBPEL Process Application422による処理の詳細は、前述したS2105と同様であるため、詳細な説明を省略する。
S2207では、BPEL Process Application422は、結合されたファイルを所定のフォルダから取得し、S2209に処理を進める。
S2208では、BPEL Process Application422は、PDF Adapter415を呼び出し、ファイルの結合処理をPDF Adapter415に実行させ、所定のフォルダに保存し、S2209に処理を進める。
S2209では、BPEL Process Application422は、E−Mail Adapter414を呼び出し、S1915でユーザの操作により選択された結合されたファイル又は1つのファイルを指定されたE−Mailアドレスを指定して送信する。そして、BPEL Process Application422は、後述する図27のDに処理を進める。
図27は、ファイル管理又はファイル転送プロトコルを使用したファイル送信処理の一例を示すフローチャートである。
S2301では、BPEL Process Application422は、所定のファイル管理又はファイル転送プロトコルを用いてファイルをネットワーク送信するよう指示されたファイルを取得する。この処理は、BPEL Process Application422が指定メッセージを解析、例えば図24の2901、2902、2903のようなメッセージを解析することで行なわれてもよい。以下の処理も同様である。
S2302では、BPEL Process Application422は、S2301で取得したファイルが1つ以上であるか否かを判定する。つまり、BPEL Process Application422は、指定されたファイルがあるか否かを判定することになる。BPEL Process Application422は、指定されたファイルが1つ以上あると判定した場合、S2303に処理を進める。一方、BPEL Process Application422は、指定されたファイルが1つもないと判定した場合、後述する図28のEに処理を進める。
S2303では、BPEL Process Application422は、結合オプションが指定されているか否かを判定し、指定されていると判定した場合、S2304に処理を進める。一方、BPEL Process Application422は、指定されていないと判定した場合、S2309に処理を進める。S2303でのBPEL Process Application422による処理の詳細は、前述したS2203での処理と同様であるため、詳細な説明を省略する。
S2309では、BPEL Process Application422は、指定されたファイルの送信処理を行ない、後述する図28のEに処理を進める。
S2304では、BPEL Process Application422は、必要なファイルフォーマットの変換処理を行い、S2305に処理を進める。なお、ファイルフォーマット変換処理の詳細については、図30を用いて後述する。
S2305では、BPEL Process Application422は、S2301で取得したファイルが2つ以上であるか否かを判定し、2つ以上であると判定した場合、S2306に処理を進める。一方、BPEL Process Application422は、2つ以上でないと判定した場合、S2309に処理を進める。
S2306では、BPEL Process Application422は、指定されたファイルが既に結合されているか否かを確認し、結合されていると判定した場合、S2307に処理を進める。一方、BPEL Process Application422は、結合されていないと判定した場合、S2308に処理を進める。S2306でのBPEL Process Application422による処理の詳細は、前述したS2105、S2206と同様であるため、詳細な説明を省略する。
S2307では、BPEL Process Application422は、結合されたファイルを所定のフォルダから取得し、S2309に処理を進める。
S2308では、BPEL Process Application422は、PDF Adapter415を呼び出し、ファイルの結合処理をPDF Adapter415に実行させ、所定のフォルダに保存し、S2309に処理を進める。
S2309では、BPEL Process Application422は、E−Mail Adapter414を呼び出し、S1915でユーザの操作により選択された結合されたファイル又は1つのファイルを指定されたファイル管理プロトコル又はファイル転送プロトコルを利用して送信する。そして、BPEL Process Application422は、後述する図28のEに処理を進める。
図28は、本実施形態における完了メッセージのやり取りの一例を示すフローチャートである。
S2401では、BPEL Process Application422は、図29に示すような処理結果を含むレスポンスをGUI Application421へ返す。
図29は、処理結果を含むレスポンス情報の一例を示す図である。
図29の3001は、処理完了メッセージを示す。また、図29の3002は、エラーメッセージを示す。
S2402では、GUI Application421は、BPEL Process Application422からレスポンスを受信する。
S2403では、GUI Application421は、図29に示す情報に基づくメッセージをクライアントPC200に対して送信する。
S2404では、クライアントPC200は、中継サーバ300からのメッセージを受信する。
S2405では、クライアントPC200は、S2404で受信したメッセージに基づき、ブラウザを使って処理結果(例えば、図29の3001や3002に示される情報)を表示する。
図30は、図23、図25、図26、図27で実行され得る、ファイルフォーマット変換処理の一例を示すフローチャートである。
S2501では、BPEL Process Application422は、非PDFファイルがS1915でユーザの操作により1つでも指定されているか否かを判定し、指定されていると判定した場合、S2502に処理を進める。一方、BPEL Process Application422は、1つも指定されていないと判定した場合、処理を終了する。
S2502では、BPEL Process Application422は、File Format Conversion Adapter418を呼び出して、指定された非PDFファイルのPDFへの変換処理を行なう。
S2503で、BPEL Process Application422は、S1915でユーザの操作により選択された全ての非PDFファイルがPDFファイルへ変換されたか否かを判定する。BPEL Process Application422は、全ての非PDFファイルがPDFファイルに変換されたと判定した場合、処理を終了する。一方、BPEL Process Application422は、全ての非PDFファイルがPDFファイルに変換されていないと判定した場合、S2503で処理待ちとなる。この際、BPEL Process Application422は、タイマーをセットして所定時間後にエラー処理となるようにしてもよい。
なお、フォーマット変換を使用しない場合、上述の仕様に下記の制限を加えるようにしてもよい。例えば、図19のS1910でGUI Application421がリストページを作成する際に、共通のフォーマットを使用するようにしてもよい。共通のフォーマットとは、Printer Adapter411、Fax Adapter412、E−Mail Adapter414、File Adapter413の全てで処理可能な共通の1つのフォーマットのことである。例えば、S1910で、GUI Application421は、PDFファイルだけしか表示しないようにするリストページを作成するようにしてもよい。この場合、S1910で、GUI Application421は、図21の代りに図31のような画面を表示させるための情報を生成する。
これにより、GUI Application421は、Printer Adapter411、Fax Adapter412、E−Mail Adapter414、File Adapter413の全てに対してPDFデータを送信可能となる。
この実施例では、ユーザは、送信したいファイルをチェックし、ファックスオブジェクト、プリンタオブジェクト、メールアドレス又はファイル送信のパスを指定することで、指定したファイルを指定した転送方法で送信指示することができるようになる。もちろん、ユーザは、プリンタオブジェクト、ファックスオブジェクト、メールアドレス又はファイル送信のパスの全て又はこの中の一部を指定して、指定した少なくとも1以上のファイルの転送指示をするようにしてもよい。
以上のように、本実施形態では、中継サーバ300は、1つの結合ドキュメントに対して、複数の処理を実行させることができる。例えば、中継サーバ300は、取得した結合ドキュメント「文書A+B+C」に対して、「印刷」と、「FAX」と、「メール」との複数の処理を全て実行させることができる。
<実施形態4>
以下、実施形態4について説明する。
実施形態1、2では、ユーザに選択された組み合わせの結合ドキュメントが中継サーバ300に存在しない場合(ドキュメント履歴欄1102から選択されなかった場合)には、中継サーバ300は、ドキュメントサーバ1005から取得した対象ドキュメントを結合して結合ドキュメントを生成した。そして、中継サーバ300は、生成した結合ドキュメントを用いて指示された処理(印刷、FAX、メール等)を実行していた。
しかしながら、対象ドキュメントを含む結合ドキュメントが中継サーバ300に保存されている場合でも、ユーザに選択された組み合わせの結合ドキュメントが存在しなければ、中継サーバ300は、ドキュメントサーバ1005から対象ドキュメントを取得してしまう問題がある。ユーザに選択された組み合わせの結合ドキュメントが中継サーバ300に存在しなくても、ユーザに選択された対象ドキュメントを含む結合ドキュメントが存在するのであれば、中継サーバ300は、これを活用することで中継サーバ300に保存されている結合ドキュメントを有効活用することができる。
特に、印刷やFAXの場合、従来からプリンタドライバやファックスドライバの仕組みとしてページを指定して印刷したりFAXしたりすることができる。この場合、ユーザは、選択した対象ドキュメントを含む結合ドキュメントにおけるページのうち、当該対象ドキュメントに相当するページを指定して、印刷又はFAXを指示する。これにより、中継サーバ300は、ドキュメントサーバ1005から対象ドキュメントを取得することなく、かつ、結合ドキュメントを分割して新たな結合ドキュメントを生成することなく、ユーザから指示された処理を実行することができる。以下、この説明を行う。
本実施形態におけるシステム構成、ハードウェア構成、モジュール構成については、実施形態1と同様である。また、実施形態1で前述した図7、図10A、図10B、図14B、図15に示すフローチャート、図9A、図12の各種テーブル、図8、図11、図13の各種画面例についても実施形態1と同様である。本実施形態における処理は、図14Aのフローチャートに示される処理の変形例、及び図14Aの変形例の続きの処理であるので、この点について説明を行う。
図32は、中継サーバ300がクライアントPC200からの要求に基づいてドキュメントサーバ1005からドキュメントを取得し、所定の処理を実行する処理の一例を示すフローチャートである。図32は、S1401からS1412まで、及びS3201の処理の一例を示すフローチャートである。
S1401からS1412までの処理は、前述した図14Aと同様であるので、説明を省略する。
S3201では、中継サーバ300は、結合指示された対象ドキュメントが、ドキュメント処理画面1100のドキュメント履歴欄1102で選択されたドキュメントであるか否かを判定する。中継サーバ300は、ドキュメント履歴欄1102で選択されたドキュメントであると判定した場合には、S1412に処理を進め、そうでないと判定した場合(ドキュメント一覧1101で選択されたドキュメントであると判定した場合等)には、図33のS3301に処理を進める。
前記対象ドキュメントがドキュメント履歴欄1102で選択されたドキュメントであれば、既に中継サーバ300の外部メモリ211等に選択された組み合わせの結合ドキュメントが保存されているはずである。したがって、中継サーバ300は、保存されている結合ドキュメントを用いて印刷等の処理を実行すればよい。一方、対象ドキュメントがドキュメント履歴欄1102で選択されていないドキュメントであれば、中継サーバ300の外部メモリ211等には選択された組み合わせの結合ドキュメントが保存されていない可能性が高い。この場合であっても、中継サーバ300は、選択された対象ドキュメントを含む結合ドキュメントが保存されていれば、これを活用する。詳細については、図33を用いて後述する。
図33は、中継サーバ300が中継サーバ300の外部メモリ211等に保存されている結合ドキュメントを用いて、所定の処理を実行する処理の一例を示すフローチャートである。図33は、S3301からS3307までの処理の一例を示すフローチャートである。
S3301では、中継サーバ300は、ユーザに指示された処理内容がページ指定で処理可能なものであるか否かを判定する。より具体的には、中継サーバ300は、前述したS1020で受信した処理種別を用いて印刷又はFAXが指示されたか否かを判定する。中継サーバ300は、ページ指定で処理可能なものであると判定した場合には、S3302に処理を進め、そうでない場合(ページ指定で処理可能でない場合)には、S1402に処理を進める。
S3302では、中継サーバ300は、ユーザに選択された対象ドキュメントを全て含む結合ドキュメントが当該ユーザの履歴に存在するか否かを判定する。より具体的には、中継サーバ300は、ユーザに選択された全ての対象ドキュメントを含む結合ドキュメントを履歴情報テーブル1200から検索する。
履歴情報テーブル1200の結合ドキュメント1203から1205までには、結合ドキュメントを構成する対象ドキュメントのドキュメント名が格納されている。したがって、中継サーバ300は、対象ドキュメントを選択したユーザのユーザID1202に該当するレコードのうち、ユーザに選択された対象ドキュメントのドキュメント名が結合ドキュメント1203から1205までに含まれるレコードを検索する。
中継サーバ300がユーザに選択された対象ドキュメントを全て含む結合ドキュメントを検索しているのは、1つのジョブとして実行する必要があるからである。例えばプリンタ1001やプリンタ1002で印刷をする場合、対象ドキュメントが複数の結合ドキュメントに含まれていると、その複数の結合ドキュメントそれぞれに対してページ指定で印刷を実行することになる。すると、印刷ジョブが複数生成されることになってしまい、印刷のタイミングによっては他人の印刷ジョブが割り込んでしまう可能性もある。このため、自分の印刷物が他人の印刷物と混在してしまう可能性がある。またFAXを送信する場合も、同様である。
これらの問題点を解決するため、中継サーバ300は、ユーザに選択された対象ドキュメントを全て含む結合ドキュメントの有無を判定している。中継サーバ300は、ユーザに選択された対象ドキュメントを全て含む結合ドキュメントが存在すると判定した場合には、S3303に処理を進め、そうでない場合(ユーザに選択された対象ドキュメントを全て含む結合ドキュメントが存在しない場合)には、S1402に処理を進める。
S3303では、中継サーバ300は、結合ドキュメントに対して所定の処理を実行するページ番号を特定する。より具体的には、中継サーバ300は、S3302で検索した結果特定した、全ての対象ドキュメントを含む結合ドキュメントを構成するドキュメントのページ数をドキュメント管理テーブル910から取得し、この情報を用いてページ番号を特定する。本実施形態のドキュメント管理テーブル910を図34に示す。図34のドキュメント管理テーブル910は、前述した図9Bと同様であるが、ページ数3401を更に含んでいる。ページ数3401は、ドキュメントを構成するページの総数を示す情報である。
例えば、「UserA」に選択された対象ドキュメントが「広告C」と「集計表F」であった場合を例に説明する。図12に示す履歴情報テーブル1200の1レコード目を参照すると、これらの対象ドキュメントを含む結合ドキュメントが存在することがわかる。そして、中継サーバ300は、この1レコード目に示す各対象ドキュメントのページ数を図34に示すドキュメント管理テーブル910のページ数3401から取得すると、「表紙A」が「2」、「広告C」が「5」、「集計表F」が「9」となる。つまり、この結合ドキュメントのページ構成は、1ページ目から2ページ目までが「表紙A」、3ページ目から7ページ目までが「広告C」、8ページ目から16ページ目までが「集計表F」であることがわかる。「UserA」に選択された対象ドキュメントは「広告C」と「集計表F」であるので、中継サーバ300は、これらの対象ドキュメントに相当するページ番号として、3ページ目から7ページ目までと、8ページ目から16ページ目までを特定する。
S3304では、中継サーバ300は、処理内容欄1103で選択された処理が「印刷」であるか否かを判定する。より具体的には、中継サーバ300は、前述したS1020で処理種別を受信しているので、この情報に基づいて処理内容欄1103で選択された処理が「印刷」であるか否かを判定する。中継サーバ300は、「印刷」であると判定した場合には、S3305に処理を進め、そうでない場合(例えば、処理内容欄1103で選択された処理がFAXであった場合等)には、S3306に処理を進める。
S3305では、中継サーバ300は、Print Adapter411を用いて、S3302で検索して特定した結合ドキュメントから、処理内容欄1103で設定された処理設定と、S3303で特定したページ番号に基づいて印刷ジョブを生成する。ここで、中継サーバ300は、ユーザに選択された対象ドキュメントの順でページ番号を指定する。例えば、「集計表F」「広告C」の順番でユーザに選択されたのであれば、中継サーバ300は、ページ番号の指定を8ページ目から16ページ目まで、3ページ目から7ページ目までという順で指定する。こうすることで、中継サーバ300は、ユーザに指定された順で印刷ジョブを生成する。そして、中継サーバ300は、プリンタ1001やプリンタ1002に対して印刷ジョブを送信する。なお、中継サーバ300は、S1020で受信した処理設定を用いる。
プリンタ1001やプリンタ1002は、印刷ジョブを受信すると、紙媒体に印刷を開始する。本実施形態では、中継サーバ300は、直接プリンタに対して印刷ジョブを送信しているが、印刷ジョブを蓄積する印刷サーバがあれば、その印刷サーバを介してプリンタに印刷ジョブを送信するようにしてもよい。
S3306では、中継サーバ300は、処理内容欄1103で選択された処理が「FAX」であるか否かを判定する。より具体的には、中継サーバ300は、前述したS1020で処理種別を受信しているので、この情報に基づいて処理内容欄1103で選択された処理が「FAX」であるか否かを判定する。中継サーバ300は、「FAX」であると判定した場合には、S3307に処理を進め、そうでない場合(例えば、処理内容欄1103で選択された処理が印刷であった場合等)には、一連の処理を終了する。
S3307では、中継サーバ300は、FAX Adapter412を用いて、S3302で検索して特定した結合ドキュメントから、処理内容欄1103で設定された処理設定と、S3303で特定したページ番号に基づいてFAXデータを生成する。ここで、中継サーバ300は、ユーザに選択された対象ドキュメントの順でページ番号を指定する。例えば、「集計表F」「広告C」の順番でユーザに選択されたのであれば、中継サーバ300は、ページ番号の指定を8ページ目から16ページ目まで、3ページ目から7ページ目までという順で指定する。こうすることで、中継サーバ300は、ユーザに指定された順でFAXジョブを生成する。そして、中継サーバ300は、FAX1003やFAX1004に対してFAXデータを送信する。なお、中継サーバ300は、S1020で受信した処理設定を用いる。本実施形態では、中継サーバ300は、直接FAXに対してFAXデータを送信しているが、FAXデータを蓄積するFAXサーバがあれば、そのFAXサーバを介してFAXにFAXデータを送信するようにしてもよい。
以上のように、中継サーバ300は、ユーザに選択された組み合わせの結合ドキュメントが中継サーバ300に存在しない場合、選択された対象ドキュメントを含む結合ドキュメントを用いる。これにより、中継サーバ300は、再度ドキュメントサーバ1005から対象ドキュメントを取得したり、結合したりすることなく、指示された処理を実行することが可能となる。
<実施形態5>
実施形態4で説明した仕組みを実施形態2で説明した処理に組み込むことも可能である。
本実施形態におけるシステム構成、ハードウェア構成、モジュール構成については、実施形態1と同様である。また、実施形態1で前述した図7、図10A、図10B、図15に示すフローチャート、実施形態2で前述した図18Bに示すフローチャート、実施形態4で前述した図33に示すフローチャートについても同様である。更に、実施形態1で前述した図9A、図12の各種テーブル、実施形態4で前述した図34のテーブル、図8、図11、図13の各種画面例についても同様である。本実施形態における処理は、図18Aのフローチャートに示される処理の変形例であるので、この点について説明を行う。
図35は、実施形態2における図18Aの変形例であり、中継サーバ300がクライアントPC200からの要求に基づいてドキュメントサーバ1005からドキュメントを取得し、所定の処理を実行する処理の一例を示すフローチャートである。図35は、S1802からS1815まで、及びS3501の処理の一例を示すフローチャートである。
S3501では、中継サーバ300は、結合指示された対象ドキュメントが、ドキュメント処理画面1100のドキュメント履歴欄1102で選択されたドキュメントであるか否かを判定する。中継サーバ300は、ドキュメント履歴欄1102で選択されたドキュメントであると判定した場合には、S1802に処理を進め、そうでない場合(例えば、ドキュメント一覧1101で選択されたドキュメントであると判定された場合等)には、前述した図33のS3301に処理を進める。ドキュメント履歴欄1102から選択されていないのであれば、同じ組み合わせの結合ドキュメントでない可能性が高い。したがって、中継サーバ300は、ユーザに選択された対象ドキュメントを全て含む結合ドキュメントを用いた処理を実行すべく、図33の処理を行う。
S1802からS1815までの処理は、前述した図18のS1802からS1815までの処理と同様であるので、説明を省略する。
以上のように、中継サーバ300は、実施形態4の仕組みを実施形態2の処理に組み込んで実施することが可能となる。
<その他の実施形態>
また、本実施形態は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
以上、上述した各実施形態によれば、中継サーバ300は、結合ドキュメントを記憶領域に保存しておき、再度同じ組み合わせの結合ドキュメントの作成を要求された場合、再結合することなく前記結合ドキュメントを記憶領域から取得する。また、中継サーバ300は、結合対象のドキュメントに更新フォルダに格納されたドキュメントが含まれている場合、更新フォルダに格納されたドキュメント以外のドキュメントだけを結合した結合ドキュメントを記憶領域に保存する。これにより、中継サーバ300は、更新フォルダに格納されたドキュメントだけを毎回取得すればよくなる。また、中継サーバ300は、1つの結合ドキュメントに対して、複数の処理を実行させることができる。更に、中継サーバ300は、ユーザに選択された組み合わせの結合ドキュメントが中継サーバ300に存在しない場合、選択された対象ドキュメントを含む結合ドキュメントを用いて指定された処理を実行することができる。これらによって、中継サーバ300の処理負荷の軽減が実現される。
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1001 プリンタ、1002 プリンタ、1003 FAX、1004 FAX、1005 ドキュメントサーバ、1006 ネットワーク、1007 公衆回線、200 クライアントPC、300 中継サーバ、201 CPU、202 RAM、203 ROM、204 システムバス、205 入力コントローラ、206 ビデオコントローラ、207 メモリコントローラ、208 通信I/F(インターフェース)コントローラ、209 入力装置、210 ディスプレイ装置、211 外部メモリ

Claims (14)

  1. 情報処理装置と、中継サーバ装置と、管理サーバ装置とがネットワークを介して接続されるシステムであって、
    前記情報処理装置は、
    前記中継サーバ装置に前記管理サーバ装置が管理するファイルの結合要求を送信する送信手段を有し、
    前記中継サーバ装置は、
    前記情報処理装置から前記結合要求を受信する受信手段と、
    前記受信手段により受信された前記結合要求に基づいて作成された結合ファイルが前記中継サーバ装置の記憶部に格納されているか否かを判定する判定手段と、
    前記判定手段により格納されていると判定された場合、前記記憶部から前記結合ファイルを取得する取得手段と、
    を有するシステム。
  2. 前記中継サーバ装置は、
    前記判定手段により格納されていないと判定された場合、前記結合要求に基づいて前記管理サーバ装置から取得した結合対象のファイルを結合させた結合ファイルを前記記憶部に格納する格納手段を更に有し、
    前記取得手段は、前記格納手段により格納された前記結合ファイルを前記記憶部から取得する請求項1に記載のシステム。
  3. 前記中継サーバ装置は、
    前記受信手段により受信された前記結合要求における結合対象のファイルに、更新される可能性がある更新ファイルが含まれる場合、前記結合要求に基づいて前記結合対象のファイルを前記管理サーバ装置から新たに取得し、結合ファイルを作成して前記記憶部に格納する作成手段を更に有する請求項1又は2に記載のシステム。
  4. 前記中継サーバ装置は、
    前記更新ファイルが格納されている前記管理サーバ装置の更新フォルダ情報を保持しており、前記更新フォルダ情報に基づいて前記結合対象のファイルに前記更新ファイルが含まれているか否かを判定する更新ファイル判定手段を更に有し、
    前記作成手段は、前記更新ファイル判定手段により前記更新ファイルが含まれていると判定された場合、前記結合要求に基づいて前記結合対象のファイルを前記管理サーバ装置から新たに取得し、結合ファイルを作成して前記記憶部に格納する請求項3に記載のシステム。
  5. 前記作成手段は、前記結合対象のファイルから前記更新ファイルを除いたファイルを結合させた非更新結合ファイルを作成して前記記憶部に格納しており、前記非更新結合ファイルと、前記管理サーバ装置から新たに取得した前記更新ファイルとを結合させた結合ファイルを作成して前記記憶部に格納する請求項3又は4に記載のシステム。
  6. 前記中継サーバ装置は、
    前記作成手段により作成されて前記記憶部に格納された結合ファイルを、前記記憶部から削除する削除手段を更に有する請求項3乃至5何れか1項に記載のシステム。
  7. 前記中継サーバ装置は、
    前記受信手段により前記記憶部に格納されている結合ファイルと、前記管理サーバ装置から新たに取得した追加ファイルとの結合要求が受信された場合、前記結合ファイルと、前記追加ファイルとを同一のファイル形式で結合させて前記記憶部に格納する結合手段を更に有する請求項1乃至6何れか1項に記載のシステム。
  8. 前記中継サーバ装置は、
    前記記憶部に格納されている前記結合ファイルが予め定められた時間以上使用されていない場合、前記記憶部から前記結合ファイルを削除する時間管理削除手段を更に有する請求項1乃至7何れか1項に記載のシステム。
  9. 前記中継サーバ装置は、
    前記判定手段により格納されていないと判定された場合であっても、前記結合要求に係る結合対象のファイルを含む結合ファイルが前記記憶部に格納されている場合、前記結合ファイルの構成に係るページのうち、前記結合対象のファイルに対応するページを特定する特定手段を更に有する請求項1乃至8何れか1項に記載のシステム。
  10. 前記中継サーバ装置は、
    前記特定手段により特定されたページに基づいて前記結合対象のファイルに係る処理を実行するよう指示する指示手段を更に有する請求項9に記載のシステム。
  11. 情報処理装置から管理サーバ装置が管理するファイルの結合要求を受信する受信手段と、
    前記受信手段により受信された前記結合要求に基づいて作成された結合ファイルが自装置の記憶部に格納されているか否かを判定する判定手段と、
    前記判定手段により格納されていると判定された場合、前記記憶部から前記結合ファイルを取得する取得手段と、
    を有する中継サーバ装置。
  12. 情報処理装置と、中継サーバ装置と、管理サーバ装置とがネットワークを介して接続されるシステムにおける情報処理方法であって、
    前記情報処理装置が、前記中継サーバ装置に前記管理サーバ装置が管理するファイルの結合要求を送信する送信ステップと、
    前記中継サーバ装置が、前記情報処理装置から前記結合要求を受信する受信ステップと、
    前記中継サーバ装置が、前記受信ステップにより受信された前記結合要求に基づいて作成された結合ファイルが前記中継サーバ装置の記憶部に格納されているか否かを判定する判定ステップと、
    前記中継サーバ装置が、前記判定ステップにより格納されていると判定された場合、前記記憶部から前記結合ファイルを取得する取得ステップと、
    を含む情報処理方法。
  13. 中継サーバ装置が実行する情報処理方法であって、
    情報処理装置から管理サーバ装置が管理するファイルの結合要求を受信する受信ステップと、
    前記受信ステップにより受信された前記結合要求に基づいて作成された結合ファイルが前記中継サーバ装置の記憶部に格納されているか否かを判定する判定ステップと、
    前記判定ステップにより格納されていると判定された場合、前記記憶部から前記結合ファイルを取得する取得ステップと、
    を含む情報処理方法。
  14. コンピュータに、
    情報処理装置から管理サーバ装置が管理するファイルの結合要求を受信する受信ステップと、
    前記受信ステップにより受信された前記結合要求に基づいて作成された結合ファイルが前記コンピュータの記憶部に格納されているか否かを判定する判定ステップと、
    前記判定ステップにより格納されていると判定された場合、前記記憶部から前記結合ファイルを取得する取得ステップと、
    を実行させるためのプログラム。
JP2013250174A 2012-12-11 2013-12-03 システム、中継サーバ装置、情報処理方法及びプログラム Active JP6329758B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013250174A JP6329758B2 (ja) 2012-12-11 2013-12-03 システム、中継サーバ装置、情報処理方法及びプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012270471 2012-12-11
JP2012270471 2012-12-11
JP2013250174A JP6329758B2 (ja) 2012-12-11 2013-12-03 システム、中継サーバ装置、情報処理方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2014135046A true JP2014135046A (ja) 2014-07-24
JP2014135046A5 JP2014135046A5 (ja) 2016-12-28
JP6329758B2 JP6329758B2 (ja) 2018-05-23

Family

ID=49775288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013250174A Active JP6329758B2 (ja) 2012-12-11 2013-12-03 システム、中継サーバ装置、情報処理方法及びプログラム

Country Status (2)

Country Link
US (1) US9507789B2 (ja)
JP (1) JP6329758B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6187053B2 (ja) * 2012-09-18 2017-08-30 株式会社リコー 情報処理システム、情報処理装置およびプログラム
JP5494864B1 (ja) * 2013-05-31 2014-05-21 富士ゼロックス株式会社 データ管理装置、情報処理端末及びプログラム
US20150356508A1 (en) * 2014-06-06 2015-12-10 International Business Machines Corporation Collaboration using extensible state sharing
CN105446952B (zh) * 2014-08-20 2019-03-19 国际商业机器公司 用于处理语义片段的方法和系统
US9886436B2 (en) * 2014-11-06 2018-02-06 Accenture Global Services Limited Conversion of documents of different types to a uniform and an editable or a searchable format
US10082994B1 (en) * 2017-03-22 2018-09-25 Kabushiki Kaisha Toshiba System and method for cloud-based document content collaboration with scheduled printing
US11507612B2 (en) * 2017-09-15 2022-11-22 Dg Ip Llc Document elimination for compact and secure storage and management thereof
US11477124B2 (en) * 2018-06-15 2022-10-18 Nippon Telegraph And Telephone Corporation Network management system, management device, relay device, method, and program
JP2020181457A (ja) * 2019-04-26 2020-11-05 セイコーエプソン株式会社 ジョブ送信装置、ジョブ処理装置、プログラムおよびジョブ送信装置のジョブ送信方法
JP2022160877A (ja) * 2021-04-07 2022-10-20 キヤノン株式会社 クラウドプリントサービス連携による印刷システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108623A (ja) * 2000-09-28 2002-04-12 Casio Comput Co Ltd プログラム配信システム及び記憶媒体
JP2004318585A (ja) * 2003-04-17 2004-11-11 Canon Inc Webシステム
JP2006171822A (ja) * 2004-12-13 2006-06-29 Nippon Telegr & Teleph Corp <Ntt> コンテンツ配信方法
JP2006293466A (ja) * 2005-04-06 2006-10-26 Kddi Corp プロキシサーバ及びプログラム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604860A (en) 1994-10-27 1997-02-18 Xerox Corporation Feature library and stored customized control interfaces
JP3481054B2 (ja) 1996-07-04 2003-12-22 シャープ株式会社 ゲートウェイ装置、クライアント計算機およびそれらを接続した分散ファイルシステム
US7002700B1 (en) 2000-09-14 2006-02-21 Electronics For Imaging, Inc. Method and system for merging scan files into a color workflow
US8418065B2 (en) 2001-07-16 2013-04-09 Nuance Communications, Inc. Method of and system for dynamically controlling during run time a multifunction peripheral (MFP) touch panel user interface (UI) from an external remote network-connected computer
JP2003141021A (ja) 2001-11-02 2003-05-16 Nec Corp 文書配信・出力システム
US7171468B2 (en) 2001-11-10 2007-01-30 Kabushiki Kaisha Toshiba System and method for accessing a document management repository
JP2005094056A (ja) 2003-09-11 2005-04-07 Ricoh Co Ltd Fax送信システム
US7536636B2 (en) * 2004-04-26 2009-05-19 Kodak Graphic Communications Canada Company Systems and methods for comparing documents containing graphic elements
US20060173884A1 (en) * 2005-01-31 2006-08-03 Mediatek Incorporation Methods for merging files and related systems
US8156428B1 (en) * 2005-02-25 2012-04-10 Adobe Systems Incorporated Method and apparatus for merging digital content
JP2007013607A (ja) 2005-06-30 2007-01-18 Canon Inc 画像処理装置、画像処理装置の制御方法、プログラム及び記憶媒体
JP4657149B2 (ja) 2006-05-26 2011-03-23 京セラミタ株式会社 画像形成装置用ユーザアプリケーション開発支援装置
JP4389907B2 (ja) 2006-07-11 2009-12-24 村田機械株式会社 文書管理装置及びネットワーク複合機
US7934165B2 (en) 2007-10-25 2011-04-26 Samsung Electronics Co., Ltd. System and method for drag-and-drop workflow editing in a multifunction peripheral (MFP)
US20100257218A1 (en) * 2009-04-03 2010-10-07 Konstantin Iliev Vassilev Merging multiple heterogeneous file systems into a single virtual unified file system
US8589454B2 (en) * 2011-01-17 2013-11-19 International Business Machines Corporation Computer data file merging based on file metadata
JP5013004B2 (ja) 2011-03-17 2012-08-29 ブラザー工業株式会社 スキャナ装置,読取システムおよびコンピュータプログラム
JP4886911B2 (ja) 2011-07-01 2012-02-29 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及び記憶媒体
US8752015B2 (en) * 2011-12-05 2014-06-10 Ca, Inc. Metadata merging in agent configuration files

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108623A (ja) * 2000-09-28 2002-04-12 Casio Comput Co Ltd プログラム配信システム及び記憶媒体
JP2004318585A (ja) * 2003-04-17 2004-11-11 Canon Inc Webシステム
JP2006171822A (ja) * 2004-12-13 2006-06-29 Nippon Telegr & Teleph Corp <Ntt> コンテンツ配信方法
JP2006293466A (ja) * 2005-04-06 2006-10-26 Kddi Corp プロキシサーバ及びプログラム

Also Published As

Publication number Publication date
JP6329758B2 (ja) 2018-05-23
US9507789B2 (en) 2016-11-29
US20130346361A1 (en) 2013-12-26

Similar Documents

Publication Publication Date Title
JP6329758B2 (ja) システム、中継サーバ装置、情報処理方法及びプログラム
CN102387279B (zh) 网络打印系统、客户终端及打印方法
US8904270B2 (en) Methods and apparatus for enterprise document distribution
JP6364738B2 (ja) 情報処理システム、情報処理装置、プログラム及び処理実行方法
JP5882837B2 (ja) 情報処理システム、画像形成装置、制御方法およびコンピュータプログラム
US8665473B2 (en) Printing system, control method, storage client apparatus, and web application server
US11252283B2 (en) Storage medium, and method and apparatus for managing printing
US10082994B1 (en) System and method for cloud-based document content collaboration with scheduled printing
US8953206B2 (en) Image forming apparatus, which is connected to a server that provides a service over a network and forms an image using a microblogging function provided by the server, control method and storage medium
JP2012252539A (ja) 印刷システム、サービス処理方法、及びプログラム
US20120050802A1 (en) Interaction system, image processing apparatus and interaction control method
JP5775359B2 (ja) システム管理サーバ、管理方法及びプログラム
US10235112B2 (en) Hot folder creation and management
JP5969860B2 (ja) 文書管理装置、その制御方法及びプログラム
EP2845090B1 (en) Transmitting a job to a destination
US9691010B2 (en) Information processing apparatus, distributed printing system, and method of controlling printing
JP2014021854A (ja) 負荷分散システム、負荷分散システムの制御方法、およびコンピュータプログラム
US10437919B2 (en) Information processing system, information processing method, document processing system, and storage medium, for deleting a conversion process when a request to generate document data in a first format has been canceled
US20150081354A1 (en) Distribution apparatus, distribution method, and recording medium
US8411304B2 (en) Method and system for automatic sharing and custom user interface features in a fleet of multi-function devices
JP2013175060A (ja) 情報処理装置、ファイル処理方法、プログラム
JP5932388B2 (ja) 画像処理装置及びその制御方法とプログラム
JP6484915B2 (ja) 情報処理システム及び情報処理方法
JP2014123319A (ja) 情報処理装置、情報処理方法及びプログラム
JP2013089049A (ja) データ処理装置、情報処理システム及びその制御方法とプログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161110

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171003

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180423

R150 Certificate of patent or registration of utility model

Ref document number: 6329758

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250