JP5368837B2 - サーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラム - Google Patents

サーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラム Download PDF

Info

Publication number
JP5368837B2
JP5368837B2 JP2009063237A JP2009063237A JP5368837B2 JP 5368837 B2 JP5368837 B2 JP 5368837B2 JP 2009063237 A JP2009063237 A JP 2009063237A JP 2009063237 A JP2009063237 A JP 2009063237A JP 5368837 B2 JP5368837 B2 JP 5368837B2
Authority
JP
Japan
Prior art keywords
error
image processing
information
server
processing apparatus
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.)
Expired - Fee Related
Application number
JP2009063237A
Other languages
English (en)
Other versions
JP2010219792A5 (ja
JP2010219792A (ja
Inventor
武司 高橋
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 Inc
Original Assignee
Canon 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 Inc filed Critical Canon Inc
Priority to JP2009063237A priority Critical patent/JP5368837B2/ja
Priority to US12/709,631 priority patent/US8526021B2/en
Publication of JP2010219792A publication Critical patent/JP2010219792A/ja
Publication of JP2010219792A5 publication Critical patent/JP2010219792A5/ja
Application granted granted Critical
Publication of JP5368837B2 publication Critical patent/JP5368837B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0733Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a data processing system embedded in an image processing device, e.g. printer, facsimile, scanner
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • 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/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • 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/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • G06F3/1213Improving printing performance achieving reduced delay between job submission and print start at an intermediate node or at the final node
    • 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/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1234Errors handling and recovery, e.g. reprinting
    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • 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/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • 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/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00411Display of information to the user, e.g. menus the display also being used for user input, e.g. touch screen
    • 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/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00464Display of information to the user, e.g. menus using browsers, i.e. interfaces based on mark-up languages
    • 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/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00474Output means outputting a plurality of functional options, e.g. scan, copy or print
    • 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/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00477Indicating status, e.g. of a job
    • 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/32609Fault detection or counter-measures, e.g. original mis-positioned, shortage of paper
    • 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/32609Fault detection or counter-measures, e.g. original mis-positioned, shortage of paper
    • H04N1/32625Fault detection
    • 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/32609Fault detection or counter-measures, e.g. original mis-positioned, shortage of paper
    • H04N1/32646Counter-measures
    • H04N1/32667Restarting a communication or performing a recovery operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Description

本発明は、画像処理装置と連携して処理を行うサーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラムに関するものである。
近年、スキャナ、プリンタ、複写機、ファクシミリ等の機能を備えた複合機でもウェブ対応が進んできている。例えばウェブブラウザを搭載する複合機であって、その複合機の操作パネルからブラウザを操作してウェブサーバへアクセスし、サーバのフォルダや文書を参照したり印刷できる複合機も出現している。
またオフィスでは、ユーザの業務簡略化を目的として、複合機やウェブサーバで提供される種々のサービスを複数組み合わせた処理フローを定義できるネットワークシステムも提案されている。このようなシステムでは、複合機でスキャンやFAX受信等の操作で入力されたデータを、そのネットワークの複数の機器により処理できる。このような複数の機器による複数の処理を実行させると、いずれかの処理でエラーが発生するケースが考えられる。いま例えば、いくつかの処理が終了した後でエラーが発生した場合、最初から処理をやり直すと、それまでの処理が無駄になってユーザの利便性を損ねてしまう。そこでエラーが発生したジョブのデータを複合機に保存しておき、後でユーザの指示により、そのジョブを再開できるような機能が望まれる。例えば特許文献1の画像形成装置では、印刷ジョブの実行中にエラーが発生した時だけでなく、操作パネルから印刷のキャンセル指示が入力されると印刷途中のデータを複合機内で保存し、その印刷ジョブの再開をユーザが指示できるようになっている。
また特許文献2は、ジョブの実行途中でエラーが発生した場合に、中間生成データを再利用する前提で保存する際、そのデータに対する安全性を向上させるために電子署名を付与して複合機に保存するシステムを提案している。更に特許文献3には、複数のサービスが連携した処理を実現するシステムにおいて、処理を構成するサービスの実行時にサービスが実行不可となった場合、その実行不可のサービス及びそれ以降のサービスを連携して処理するシステムが提案されている。
特開2003−305928号公報 特開2008−078759号公報 特開2004−288067号公報
従来の技術では、処理フローが再開されることを前提として中間生成データを保持し、「実行不可となったサービス」と「それ以降のサービス」の実行を可能にしている。しかし、エラーの原因となる問題が入力データにある場合には、中間生成データは再利用できず、通常は、再スキャンなど最初の入力操作からやり直す必要がある。しかし、紙(原稿)のスキャンは手間のかかる作業であり、エラーが発生する度にスキャンを実行するのは非効率である。
また、中間生成データの全てに問題があるわけではなく、一部のデータだけ差し替えれば問題ないような場合もある。この場合、保管されたデータを手動で差し替えて処理を再開する方法も考えられるが、差し替えデータと再利用データの特定や、処理の再開準備は手動で行わなくてはならず、複雑な操作を必要とし、ユーザが混乱する危険性が高い。
また更に、操作している複合機がその能力を保持していない場合もあり得る。例えば、一定以上の解像度をもつデータや、カラーデータが必要な処理がある場合、その処理条件に適合するデータを生成できる能力を保持しない複合機では、データを差し替えても処理を再開することができない。このように、処理フローの中でエラーが発生した場合、処理を再開する際に、単に中間生成データを利用した処理を再開するだけでは解決できない、もしくは利便性を損なうという問題がある。
本発明の目的は、これら従来技術の問題点を解決することにある。
本願発明の特徴は、サーバと画像処理装置とが連携して処理を行っているときにエラーが発生した場合、ユーザによる処理の再開を容易にできることにある。
また本願発明は、エラーの内容に応じて、その処理を再開するための条件を判断して、ユーザに対して適切な再開条件を提示することにより、ユーザが混乱することなく処理を再開できることにある。
上記目的を達成するために本発明の一態様に係るサーバは以下のような構成を備える。即ち、
画像処理装置と連携して処理を行うサーバであって、
前記画像処理装置にUI情報を送信する送信手段と、
処理の途中でエラーが発生した場合に、当該エラーが発生した装置及び当該エラーの原因を取得する取得手段と、
前記エラーが発生した装置が前記画像処理装置であって、前記エラー発生の後の処理要求が当該画像処理装置から発行され、前記エラーの原因が前記画像処理装置で処理される原稿に起因するときは、前記画像処理装置が前記エラーの原因を解消していることを条件に、前記エラーが発生した原稿を差し替えるように処理の流れを定義する手段と、を備え、
前記送信手段は、前記画像処理装置からの処理要求が前記エラー発生の後の処理要求である場合は、前記取得手段により取得した前記エラーが発生した装置及び前記エラーの原因に基づいて定義された処理の実行を指示するためのUI情報を前記画像処理装置に送信することを特徴とする。
本発明によれば、サーバと画像処理装置とが連携して処理を行っているときにエラーが発生した場合、ユーザによる処理の再開を容易にできる。
また本発明によれば、エラーの内容に応じて、その処理を再開するための条件を判断して、ユーザに対して適切な再開条件を提示することにより、ユーザが混乱することなく処理を再開できる。
本発明の実施形態に係る情報処理システムの構成図である。 実施形態に係るPC及びサーバの構成を示すブロック図である。 実施形態に係る複合機のハードウェア構成を説明するブロック図である。 本実施形態に係る複合機のソフトウェア構成を示すブロック図である。 実施形態に係る情報処理システムの全体を制御する、サーバで動作するソフトウェアの構成図である。 実施形態に係る情報処理システムのフロー定義情報の一例を示す図である。 本実施形態に係る情報処理システムで利用するサービスの概念図である。 実施形態に係る情報処理システムで連携するサーバや複合機が提供できるサービス情報の一例を示す図である。 本実施形態に係る情報処理システムにおいて、各サービスから取得できる動作ログの一例を示す図である。 実施形態に係る情報処理システムの動作ログとして取得できる原因コードの一覧を示す図である。 本実施形態に係る情報処理システムにおいて、複合機から入力したデータを複合機とサーバが連携した処理フローを実行する際のフローチャートである。 ステップS3で複合機からのアクセス要求があったとき、前回エラーによって処理が終了している場合の処理を説明するフローチャートである。 ステップS25で生成されたフローを単純再開する項目を含むUI情報がステップS26で配信された後、アクセス元の複合機或はPCでフロー再開UIの表示・実行指示が行われた場合のフローチャートである。 本実施形態に係る複合機から入力したデータを複合機とサーバが連携した処理フローを実行する際のフローチャートである。 本実施形態に係る情報処理システムにアクセスした際に配信されるUI情報の一例を示す図である。 本発明の実施形態に係る情報処理システムにおけるデータ差し替えフロー定義情報の一例を示す図である。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
図1は、本発明の実施形態に係る処理フロー実行システム(情報処理システム)の構成図である。このシステムは、例えば複合機30から入力される画像データ(或は文書データ)に対して種々の処理をそれぞれ行う複数のサービスを連携処理できるシステムである。このサービスには、印刷、スキャン、FAX送受信、コピー、メールの送受信、ストレージ(ファイリング)などが含まれる。
このシステムでは、互いにネットワーク40を介して接続されたウェブアプリケーションを実行するウェブアプリケーションサーバ20(以下、サーバ)と、ブラウザを介してアクセスするクライアントPC(以下、PC)10と、複合機30とを有している。尚、ここではこれら機器しか示していないが、本発明は更に多くのスキャナ、プリンタ、PC等が含まれていても良いことはもちろんである。
尚、本実施形態に係る情報処理システムは、PC10のユーザAがPC10のブラウザを介してアクセスする構成、及び、複合機30のユーザBが複合機30の操作パネルを介してアクセスする構成としている。しかし、図示しない専用のクライアントアプリケーションをこのPC10や複合機30に配置し、ユーザA及びユーザBがそれらを操作する構成であっても構わない。この場合、サーバ20は、単なるアプリケーションサーバであってもよい。従って、本実施形態では、少なくともサーバ20と画像処理装置(MFP)30とをネットワーク40を介して接続し、サーバ20と画像処理装置(複合機)30或はPC10とが連携して処理を行う情報処理システムについて説明する。
図2は、本発明の実施形態に係るPC10及びサーバ20のハードウェア構成を示すブロック図である。尚、このハードウェア構成は、一般的な情報処理装置のハードウェア構成に相当するものとし、本実施形態のクライアントPC10及びサーバ20には一般的な情報処理装置のハードウェア構成を適用できる。
CPU100は、ROM102のプログラム用ROMに記憶された、或いはハードディスク等の二次記憶部109からRAM101にロードされたOSやアプリケーション等のプログラムを実行する。ROM102は更に、各種設定値などを記憶するデータROMを含んでいる。ここでOSとはコンピュータ上で稼動するオペレーティングシステムの略語である。後述する各フローチャートの処理は、このRAM101にロードされたプログラムの実行により実現できる。RAM101は、CPU100の主メモリやワークエリア等として機能する。キーボードコントローラ103は、キーボード107や図示しないポインティングデバイスからの入力を制御する。ディスプレイコントローラ104は、表示部108への表示を制御する。ディスクコントローラ105は、各種データを記憶するハードディスク(HD)やフロッピー(登録商標)ディスク(FD)等の二次記憶部109へのデータアクセスを制御する。NC106はネットワーク40に接続され、ネットワーク40に接続された他の機器との通信制御処理を実行する。
図3は、本実施形態に係る複合機30のハードウェア構成を説明するブロック図である。この図3で示されるハードウェア構成は、一般的な複合機のハードウェア構成に相当するものとし、本実施形態の複合機として適用できる。
CPU300は、この複合機30全体の動作を制御し、スキャナ部308やプリンタ部302と接続してスキャンやプリント等の機能を実現する。またCPU300は、ネットワーク40を介して他の複合機やPC等の外部機器と接続してデータの送受信を実現している。また公衆回線(PSTN)にも接続してFAX機能を実現している。それらの機能をユーザに提供するためのインターフェースとして操作部309と接続している。尚、操作部309がタッチパネルで構成されているとときは、操作部309と表示部301とは一体に構成される。メモリ304はRAM及びROMを含み、RAMはCPU300が動作するためのシステムワークメモリとして使用される。大容量記憶部305は、OSや各種アプリケーションを記憶しており、ここに記憶されているプログラムは実行時にメモリ304のRAMにロードされ、CPU300の制御の下に実行される。ネットワークインターフェース306はネットワーク40と接続し、このネットワーク40に接続された他の複合機やPC等の外部機器と情報の入出力を行う。このシステムは、ネットワーク通信プロトコルとしてTCP/IPをサポートし、外部機器ともTCP/IP通信プロトコル上に従って通信を行うものとする。システムバス307は、CPU300と上述した各部とを接続している。
本実施形態の特徴である、ジョブの再開時にデータの編集等があることをユーザに通知する方法は、操作部309の表示部301にメッセージを表示することによって行われる。
図4は、本実施形態に係る複合機30のソフトウェア構成を示すブロック図である。尚、これらソフトウェアは、図3の大容量記憶部305に格納されている。
UI制御マネージャ501は、表示部301及び操作部309を制御するソフトウェアで、ユーザの指示を下層のモジュールに伝えたり、下層からの情報を表示部301及び操作部309を含むUIに表示する。ネットワーク制御マネージャ502は、ネットワーク40からの指示や情報を受け取ったり、CPU300からの指示や情報をネットワーク40に送信する。503〜505は、UI制御マネージャ501やネットワーク制御マネージャ502からの指示を受け、ジョブマネージャ508にジョブを実行させるためのジョブファイルを作成してジョブマネージャ508に送信するアプリケーションである。503はコピー処理を行うコピーアプリケーション、504はファクシミリの送受信を行うFAXアプリケーション、そして505は原稿を読み取るスキャンアプリケーションである。ジョブアプリケーション506は、予め保存されたジョブファイルをUI制御マネージャ501からの指示によりジョブマネージャ508に実行させる。
共通インターフェース507は、ジョブマネージャ508の機器依存部分を吸収するための共通インターフェースである。ジョブマネージャ508は、共通インターフェース507から受け取ったジョブ情報を整理し、下層の機器に密着した制御マネージャに伝達する。このジョブマネージャ508は、ローカルコピーであればスキャンマネージャ509とプリントマネージャ510を起動する。またLIPSやポストスクリプト等のPDLプリントでは、PDLマネージャ512とファイルマネージャ513とプリントマネージャ510を起動する。このようにジョブマネージャ508は、ジョブに応じて各制御マネージャの起動、同期、終了等の処理も行う。またジョブアプリケーション506より送られた複数の処理が組み合わせられたジョブも、このジョブマネージャ508で処理される。またジョブ実行時のエラー処理の制御やジョブの動作ログの記録も、このジョブマネージャ508によって行われる。ファイルマネージャ513は、ジョブで使用される画像データやジョブファイルを大容量記憶部305に保存したり、そこから取り出す処理を行っている。また大容量記憶部305に保存されたデータをネットワーク40へ送信する処理等も、このジョブマネージャ508で制御される。
図5は、本発明の実施形態に係る情報処理システムの全体を制御する、サーバ20で動作するソフトウェアの構成図である。このソフトウェアは、サーバ20の二次記憶部109に記憶されているプログラムで、適宜サーバ20のRAM101にロードされサーバ20のCPU100の制御の下に実行される。
メイン制御部600は、本発明の実施形態に係る情報処理システムの全体を制御し、後述する各部に対する指示、管理を行う。データ送受信部601は、PC10或は複合機30でユーザがブラウザを介して出した命令を受け取り、またメイン制御部600より指示された結果をPC10或は複合機30に返答する。またメイン制御部600よりの指示によっては複合機30への命令を送信する。セッション記憶部602は、PC10或は複合機30において、ユーザがブラウザを介してこの情報処理システムにアクセスすると、同一ユーザからのアクセスであることを示すためのセッション情報を生成する。更に、ユーザが、この情報処理システムへのアクセスをやめる(ログアウト)か、もしくは自動タイムアウト等でセッションが切れるまでの間、繰り返し使用する各種情報をセッション情報と関連付けて保持する。ウェブUI生成部603は、メイン制御部600より指示を受けて、状況に応じたウェブUI情報(HTML)を生成する。ここで、ウェブUI生成部603が生成するウェブUI情報は、HTMLだけに限定するものではなく、JavaScript等のスクリプト言語で構成されても良い。
ユーザ情報操作部604は、メイン制御部600からの指示に従って、ユーザ情報記憶部605に保存されている、この情報処理システムにアクセス可能なユーザ、及びユーザ属性の抽出、編集等の操作を行う。ここでユーザ情報の管理は、この情報処理システム独自の管理ではなく、ユーザ情報記憶部605の役割を、既知のActive Directory,LDAPなどが担うものとして、ユーザ情報操作部604が連携して行っても構わない。フロー定義操作部606はフロー定義の作成や編集を行い、フロー定義/状態格納部607へのフロー定義情報の格納や削除も行う。尚、フロー定義情報とは、複合機30で提供されるサービスとサーバ20で提供されるサービスのいくつかを一連の流れで順次実行するように定義する情報である。
図6は、本発明の実施形態に係る情報処理システムにおけるフロー定義情報の一例を示す図である。尚、この図6の説明は後述する。
このように本実施形態に係るフロー定義情報は、例えば図6に示すような形式で、サーバ20から各サービスをから呼び出すためのインターフェース情報と、サービスの呼び出し順序、各サービス間でやり取りされるデータ等の情報を含む。尚、ここでいうサービスとは、外部からの要求に応じてデータに関する利用可能な機能をいう。例えば、コピー、プリント、スキャン、FAX転送、メール送信、データベースやファイルシステムといったレポジトリへの保存、OCR処理、黒点除去等のノイズ除去処理などが該当し、特に限定されるものではない。
フロー制御部608は、メイン制御部600からの指示と、指定されたフロー定義情報に従って順次サービスを実行するフローの実行制御を行う。フロー制御部608は、フローを開始する際、最初にその実行フローを識別するために一意なシーケンスIDを発行し、サービスを実行する際には実行指示とともに必ずこのシーケンスIDをサービスへ渡す。シーケンスIDは一意に識別できればその形態は問わないが、他のシステムとも競合する可能性が極めて少ないGUID等を使用するのが一般的である。またフロー制御部608は、サービスの実行状況の監視及び管理も行う。例えば、現在実行中のフロー定義情報がどれであるか、またそのフロー定義情報の中のどのサービスを現在実行中なのか、そのサービスはいつ開始したのかというような情報をフロー定義/状態格納部607に格納及び管理する。
更に、処理フローの途中でエラーが発生した場合には、フロー制御部608がエラー発生時の情報(対象のフロー定義情報、シーケンスID、処理ユーザ情報、エラーが発生したサービスの情報、エラー発生時刻)をフロー定義/状態格納部607に格納する。
ウェブアプリケーションサービス部609、データ一時保管領域610、動作ログ格納部611は、サーバ20から提供される「サービス」を構成するコンポーネントであるが、これらのコンポーネントはサービスとして外部サーバに存在してもよい。その場合にはメイン制御部600の指示は、データ送受信部601を経由して、その外部サーバに送信される。ウェブアプリケーションサービス部609は、実行サービスの処理の実体であり、サービスの実行にあたって生成したデータは、データ一時保管領域610へ保存され、内部動作のログは、動作ログ格納部611へ保存される。動作ログ収集・解析部612は、メイン制御部600からの指示に従って、特定のシーケンスIDで特定された動作ログを、指定されたサービスから収集し、エラー状況の解析(発生原因、中間生成物の確認など)を行う。サービス情報確認部613は、複合機30やサーバ20に対してその能力の問い合わせを行い、提供されるサービスの詳細を確認する。取得できるサービス情報は、例えば図8(詳細は後述)のような形態で、ホスト名や提供しているサービスの一覧、各サービスのインターフェース、各サービスの入出力条件などを含む。
次に図6を参照して、本実施形態に係る情報処理システムのフロー定義情報の一例を説明する。
サーバ20から呼び出すサービスを<Service>タグで定義しており、その属性としてサービス呼び出し順序(order属性)や呼び出しプロトコル(protocol属性)が指定されている。また、サービスを呼び出す際にやり取りされるデータは、<input>タグと<output>タグとで規定されている。図6では1番目から4番目の順序で呼び出されるサービスが701〜704で定義されている。
例えば、701は、1番目に呼び出されるサービスの定義を示している。このサービスは、プロトコルがウェブ「Service(protocol="WS")」であり、複合機30(<location type="MFP"/>)で提供されているスキャンサービス(<name ="SCAN"/>)である。図6の例では、複合機30のサービス(location type="MFP")と、3番目と4番目で規定されたサーバ20で提供されるサービス(location type="Server")とが混在している。しかし、必ずしも混在させて定義する必要はなく、サーバ20のサービスだけを列挙した定義があってもよい。
1番目のサービスの入力パラメータ(<input>タグ)705で、A4サイズ、解像度自動(auto)が指定されている。また出力パラメータ(<output>タグ)706で、指定のファイルパスに結果を保存するように定義されている。因みに、<output>タグで、「scan*.tiff」と記述されているが、これは複数ファイルある場合は、*に序数が入って、「scan1.tiff,scan2.tiff,...」というようにファイル名が出力されることを意図している。
基本的にこれらのフロー定義情報は、フロー定義/状態格納部607に格納されたものを取り出してそのまま利用される。しかし、<output>タグ等の一部の情報に関しては、フロー実行時にフロー制御部608が動的に変更してフローを実行するものもある。動的に変更されたフロー定義情報も、フローの実行状態情報としてフロー制御部608がフロー定義/状態格納部607へ保存する。
尚、図6において、2番目に呼び出されるサービスは、複合機30による黒点除去処理である。また、3番目に呼び出されるサービスは、サーバ20による、黒点除去処理の後の「scan*.tiff」に対する文字認識処理と、その結果をテキスト文書(ocr*.txt)にする処理である。そして、4番目に呼び出されるサービスは、サーバ20による文字認識の結果である文書(ocr*.txt)をフォルダ1(Folder1)に格納する処理である。
上述したように、この情報処理システムで連携して利用するサービスは、外部からの要求に応じて実行されるデータの処理に関するもので、特に限定されるものではない。しかし、この情報処理システムで統合管理するために、そのインターフェースを規定するのが通常である。本実施形態においては、サービスインターフェースを図7(A)(B)に示すような形で規定する。
図7(A)(B)は、本実施形態に係る情報処理システムで利用するサービスの概念図である。
図7(A)において、サービス800は、フロー制御部608からの実行指示とともに指定されるシーケンスID810を受けて処理を実行し、戻り値(成功/失敗)811をフロー制御部608に返す。サービス800は、基本的には入力データ801を出力データ802へ変換するものである(但し、入力データか出力データのどちらかがない場合もある)。複数のデータが入力データ801として指定される場合もあるが、逆に出力データ802として複数データが出力されることもある。そして、途中のデータでエラーが発生しても基本的には全ての入力データに対して処理を完了してから戻り値811を返すものとする。従って、戻り値811は、個々の入力データに対する結果ではなく、サービスとしての結果であり、通常は一つでも処理できないデータがあった場合には「失敗(false)」という戻り値を返す。
またサービス800は、その実行にあたって個々のデータ処理に対してその結果を動作ログ812として残す。
更に図7(B)に示すように、サービス800は、動作ログ収集・解析部612からログ取得要求とともに渡されるシーケンスID821を受け取って、対象とする動作ログ822を返答するインターフェースも備える。この対象動作ログ822を返すインターフェースは、サービスごとに持たなくても、複合機全体もしくはサーバ全体として一つ備えていればよい。
図8は、本発明の実施形態に係る情報処理システムで連携するサーバ20や複合機30が提供できるサービス情報の一例を示す図である。
この例では、ホスト名が「MFP_Name」である複合機(<Host name="MFP_Name"/>)に関する能力を記載している。印刷(PRINT)、黒点除去(RemovingBlackSpot)、スキャン(SCAN)というサービス901を外部に公開している。
また、各サービスの能力も記載されており、スキャンサービスにおいて、902は,用紙サイズ(<input name="size">)がA4,A3,B5のいずれかであることを記述している。903は、解像度(<input name="resolution">)が、「自動(auto)」もしくは50〜1200dpiの範囲を規定している。904はカラーモードが「カラー」及び「白黒」が指定可能なことを示している。
このサービス情報は、この情報処理システムと連携する全てのサービス提供元から取得でき、この実施形態では,複合機だけでなくサービスを提供するウェブサーバからも取得可能とする。また図8に示すように、本実施形態においては、サーバ及び複合機単位でサービス情報を取得できるようなシステムを想定しているが、各サービスが個別に情報提供できるような仕組みであってもよい。
図9は、本実施形態に係る情報処理システムにおいて、各サービスから取得できる動作ログの一例を示す図である。この動作ログは、処理名、発生時刻、対象データ、シーケンスID、結果(成功或は失敗)、原因コード、詳細メッセージ等の情報を含んでいる。
この動作ログは、各サービスから動作ログを取得した時の形態であり、複合機、ウェブアプリケーションサーバでの格納形式は問わない。異なる形態で格納している場合は、動作ログの取り出し時にサービス側で図9に示すような動作ログのデータ形態に変換するものとする。
ここで図9の動作ログからは、シーケンスIDが「10」の2ページ目(同一シーケンスIDで2番目に処理された)が文字認識(OCR)処理でカラー画像を扱えないため失敗していることが記述されている(原因コードが「2」)。またシーケンスIDが「11」の1ページ目が通信エラーで失敗していることが読み取れる(原因コードが「−1」)。尚、この原因コードについては、図10を参照して説明する。
図10は、本発明の実施形態に係る情報処理システムの動作ログとして取得できる原因コードの一例を示す図である。ここで列挙されているエラー原因を示す原因コードは、データの差し替え時に必要な条件を判定する目的で利用するので、複合機で入力する時に、パラメータを変更可能なパラメータ要因のみを列挙している。それ以外のエラー原因(ネットワークエラーやI/Oエラー等)の場合は、unknown(未知)エラーに分類されて扱われる。この図10では原因コードとして、上から順に「カラーでない」「白黒でない」「サイズが大きすぎる」「サイズが小さすぎる」「解像度が高すぎる」「解像度が低すぎる」「PDFでない」「イメージでない」が記述されている。
以下、本発明の実施形態1に係る情報処理システムの各ステップにおける処理について、図11〜図14を参照して具体的に説明する。
図11は、本実施形態に係る情報処理システムにおいて、複合機から入力したデータを複合機とサーバが連携した処理フローを実行する際のフローチャートである。尚、図11において、複合機30で実行される処理は、メモリ304に記憶されたプログラムに従ってCPU300が処理を実行することにより実現される。また、サーバ20により実行される処理は、RAM101にロードされたプログラムに従ってCPU100が処理を実行することにより実現される。これは以下に説明するフローチャートにおいても同様である。
まずステップS1で、複合機30の操作部309を操作してユーザがログインを行い、サーバ20にアクセスする。
これによりステップS2で、サーバ20は、このアクセス要求(処理要求)を受け付け、このユーザが前回アクセスした際にエラー終了していないかどうかを、フロー制御部608がフロー定義/状態格納部607に格納してある情報を基に確認する。ここでもし、前回エラー終了していると判断した場合はステップS3に進み、エラー対応用のUI情報を生成して複合機30に配信する。この処理は図12のフローチャート参照して詳しく後述する。
一方ステップS2で、前回エラー終了していないと判断した場合はステップS4に進み、ウェブUI生成部603が、既に定義されているフロー定義情報を実行するための項目などを含むUI情報を生成して複合機30へ送信する。この定義されているフローを実行するための項目などを含むUIを表現する方法は、一つ一つの定義フローをボタンで表示し、それがユーザにより押下されることで実行されるようにしても良い。また或は、定義されているフローのリストと、そのリストで選択されたフローを実行するボタンを表示する等、様々な方法があるが、その方法に関しては特に限定しない。
また本実施形態では、ステップS1でなされる複合機30からサーバ20へのアクセス要求は、HTTP通信にて行われることを想定している。これによりサーバ20は、そのアクセス要求時のHTTPヘッダに基づいて、アクセス元が複合機であるか、PC10であるかを判別できる。尚、アクセス元が複合機30ではない場合、複合機30で提供されているサービスが最初に実行されるサービスとして定義されているフローを、そのUIに表示しないようにしてもよい。尚、このアクセス元の判断方法は、HTTPヘッダ内のUser-Agent情報などを使用して判定するのが通常だが、特定のIPアドレス、もしくはサブネットアドレスの場合は複合機であると判断する等、その判断方法に関しては限定しない。
これにより複合機30は、ステップS5で、その配信されたUI情報を基に複合機30の表示部301に表示する。これによりユーザBは、そのUIで目的のフローを選択して実行するように指示する。こうしてユーザBの指示に従って複合機30は、このユーザBの操作に対応するイベントをサーバ20に通知する。
これによりサーバ20は、ステップS6で、その通知されたイベントを受け取る。そしてフロー制御部608が、そのイベントに対応するフローの定義をフロー定義/状態格納部607から特定して読み込む。次にステップS7に進み、ステップS6で特定されたフロー定義情報の個々のサービスに対して、一つのフロー定義情報で規定された処理であることを示すIDであるシーケンスIDを発行する。これによりステップS8〜ステップS10で、そのフロー定義情報に従ってサービスが実行される。即ち、ステップS9で、フロー制御部608は、フロー定義情報で規定されている個々のサービスに対して、シーケンスID及び入力データ、出力データを指定しながら実行指示を出力する。そしてステップS10で、サービスの実行時のエラー確認を行い、ステップS11で、全てのサービスを実行するまでステップS8〜ステップS11を繰り返し実行する。即ち、フロー制御部608は、ステップS11で、実行中のサービスが正常終了と判断した場合はステップS8に進み、実行中のフロー定義情報から次に実行すべきサービスを特定して、ステップS9からステップS11の処理を繰り返す。
いまステップS10で、フロー制御部608がエラーの発生を検知した場合はステップS12に進み、前述したようにフロー制御部608はエラー状態情報をフロー定義/状態格納部607へ保存する。そしてウェブUI生成部603は、その異常終了した旨のUI情報を生成して複合機30に配信する。これにより複合機30では、ステップS13で、その配信されたUI情報を受け取って表示部301に表示してユーザに提示する。
またステップS11で、全てのサービスを正常に終了するとステップS1に進み、ウェブUI生成部603は正常終了時のUI情報を生成して複合機30に配信する。これにより複合機30は、ステップS15で、そのUI情報を基に表示部301に表示してユーザに提示する。
図12は、図11のステップS3で、複合機30からのアクセス要求があったとき、前回エラーによって処理が終了(或は中断)している場合の処理を説明するフローチャートである。
先ずステップS21で、フロー制御部608が、前回エラーが発生したサービス提供元が複合機30か、サーバ20であるかをフロー定義/状態格納部607に保存しているエラー状態情報に基づいて判定する。ステップS21で、複合機30であると判定した場合はステップS22に進み、フロー制御部608は、今回アクセス要求を行っているアクセス元の複合機と、エラーが発生したサービスを提供していた複合機とが同一かどうかを判断する。この判定方法は特に限定しないが本実施形態では、エラー状態情報として保存されているエラー発生サービスの情報にサービス提供元の情報が含まれている。よって、アクセス要求時に送られてくるHTTPヘッダの内容(IPアドレス等)との比較で判断することを想定している。ステップS22で、同一複合機からのアクセスではないと判断した場合はステップS23に進む。このときは、前回フローで生成した中間生成データが今回のアクセス元の複合機内とは別の複合機に格納されていることを意味している。このような状況の場合、
(I)ユーザに前回のエラー処理を再開する意図がない
(II)何らかの都合で前回利用した複合機が使えない
等の理由が想定できる。従って、この場合はステップS23に進み、その複合機に処理を再開するためのUIを表示するのではなく、図11のステップS4と同様に、ウェブUI生成部603が通常のフロー実行用のUI情報を生成してステップS26のUI送信(配信)処理に進む。
一方、ステップS21で、前回エラーが発生したサービスの提供元がサーバ20であると判断されるか、或はステップS22で、今回のアクセス元の複合機と前回エラー発生した複合機とが同一と判定した場合はステップS24に進む。ステップS24では、フロー制御部608が、エラーの原因が原稿に起因するものかどうかを判別する。この判別のために動作ログ収集・解析部612は、エラー発生元サービスに対して図7(B)に示したように、シーケンスIDを渡してログ取得要求を行い、シーケンスIDに対応した対象動作ログを取得する。動作ログを取得した動作ログ収集・解析部612は、動作ログに含まれる原因コードを調べる。その際、図10に示したような原因コード一覧と比較して、unknownでなければ原稿が原因であると特定できるためステップS27に進む。そうでなければステップS24からステップS25に進む。ステップS25では、前回エラーが発生したサービスから処理を再開する項目を含むUI情報をウェブUI生成部603が生成する。そしてステップS26に進んで、その処理を再開する項目を含むUI情報を複合機30に送信する。
ステップS27では、フロー制御部608がアクセス要求時のHTTPヘッダ等を基に、アクセス元が複合機30であるか、PC10であるかを判定する。ここでアクセス要求元がPC10の場合は、代替原稿を読み込ませることができないためステップS23に進み、通常の処理実行用のUI情報を生成する。
一方、ステップS27で、複合機であると判定した場合は、その能力を確認するためにステップS28に進む。ステップS28では、サービス情報確認部613が能力確認要求を出すことでアクセス元の複合機の能力を調べる。能力確認要求の結果として、サービス情報確認部613は、例えば図8に示すようなサービス情報を取得し、その情報の中から前回実行されたフロー定義情報の最初に実行されるサービスとその能力を特定する。
例えば、図9に示す動作ログによれば、2ページ目が白黒でなければならないことがわかる。一方、図6のフロー定義情報では、最初に実行するサービスは「スキャン(SCAN)」であり、図8のサービス情報では、この複合機30のスキャンサービスは、白黒スキャンが可能なことがわかる。よってこの図8のサービス情報を提供する複合機30は、原稿条件を満たせる(原因が解消されている)と判断できるため、ステップS29へ進む。
具体的な原稿条件としては以下のような条件がある。
(A)カラー/白黒それぞれのスキャンモードの有無
(B)スキャン可能な色数
(C)スキャン可能な解像度
(D)スキャン可能な原稿サイズ
(E)スキャンイメージの特定フォーマット(PDFなど)での出力可否
(F)その複合機がスキャン機能自体を有しているかどうか
また、上記(A)〜(F)の複合条件の場合もある。
一方、ステップS28で、アクセス元の複合機が原稿条件を満たせないと判断した場合は、原稿データをこの複合機上で差し替えてもこのフロー定義情報を完了できる見込みはないため、ステップS23に進み、通常の処理実行用のUI情報を生成する。またステップS28で、アクセス元の複合機が原稿条件を満たせると判断するとステップS29に進み、フロー制御部608は、データ差し替え項目を含むUI情報を生成してステップS26に進む。ここでデータ差し替え項目を含むUI情報とは、以下の(1)から(4)で示す情報を含む、もしくは関連付けられたものである。
(1)データ読み込みサービスに対して、前回エラーが発生したページデータの読み込みを指示(前回エラーが発生した原稿との連続性を保持するため)
(2)データ読み込みサービスに対して、エラー原因から想定される必要な追加原稿条件(カラー/白黒の切り替え、解像度の変更、原稿サイズの変更など)
(3)読み込んだデータに対して、対象フロー定義情報の前回エラーが発生したサービスまでのサービス実行定義(エラー発生までの正常データと、そのデータの取り扱いを決める)
(4)上記(3)で処理されたデータと、前回正常完了したデータに対して、前回実行されなかったサービス(エラーが発生したサービスより後のサービス)のサービス実行定義(未処理のままであるサービス実行定義)
このデータ差し替え項目を含むUI情報に関連付けられた上記(1)から(4)の情報は、本実施形態では図16に示すように元のフロー定義情報をベースとして、別の一つのフロー定義情報として表すことを想定している。しかし、それぞれ別々の情報として保持してそれらの関連性を保持してもよい。例えば、(1)から(3)に関しては一つのフロー定義情報として生成し、それと前回実行したフロー定義情報をエラーになったサービスorderの番号とともに(フロー定義/状態格納部607に)関連付けて保管してもよい。
こうしてフロー制御部608は、ステップS23、ステップS25、ステップS29のいずれかで生成したUI情報を、ステップS26でアクセス元の複合機或はPCに配信する。
図16は、本発明の実施形態に係る情報処理システムにおけるデータ差し替えフロー定義情報の一例を示す図である。ここでは例えば前述の図9のシーケンスID「10」の2枚目の原稿で発生したエラー(原因コード「2」)の後、サーバ20がエラー対応用のUI情報を生成して複合機30に配信する場合で説明する。
図16と図6とを比較すると明らかなように、この場合は3番目と4番目のサーバ20で提供されるサービスは変更されていない。
1701は、1番目に呼び出されるサービスの定義を示している。プロトコルがウェブ Service(protocol="WS")であり、複合機(<location type="MFP"/>)で提供されているスキャンサービス(<name ="SCAN"/>)である。図6では、入力パラメータ(<input>タグ)で、A4サイズで、解像度自動(auto)が指定されていたの対して、図16では、カラーモード(Color Mode)と白黒モード(Black & White)が設定されている。これは図9で、2枚目の原稿の読取時に「カラー画像が処理できない」との理由でエラーが発生しているためである。
また出力パラメータ(<output>タグ)1706で、ファイル名が2枚目の原稿を示す「scan2.tiff」と記述されている。これにり2番目のサービスの黒点除去では、対象ファイルが「scan2.tiff」に変更され、その結果であるファイルも「result2.tiff」に変更されている。
図13は、図12のステップS25で生成されたフローを単純再開する項目を含むUI情報がステップS26で配信された後、アクセス元の複合機30或はPC10でフロー再開UIの表示・実行指示が行われた場合のフローチャートである。
まずステップS31で、フローを単純再開する項目を含むUI情報に従って、フロー再開UIの表示及び実行指示の操作がアクセス元の端末(PC10或は複合機30)でユーザによって行われると、それに対応するイベントがサーバ20へ通知される。
これによりサーバ20は、ステップS32で、その通知されたイベントを受け取り、フロー制御部608が、前回エラーになったフロー定義情報を読み込む。次にステップS33に進み、フロー制御部608は、再処理用に新たにシーケンスIDを発行する。次にステップS34に進み、フロー制御部608はフロー定義/状態格納部607に格納されている情報から、前回エラーになったサービスを特定する。そしてステップS33で読み込んだフロー定義情報のうち、それ以前のサービス定義情報を読み飛ばしてそのサービスから実行されるようにする。以下、ステップS35〜ステップS42の処理は、前述の図11のステップS8〜ステップS15の処理と同様であるため、その説明を省略する。
図14は、本実施形態に係る複合機から入力したデータを複合機とサーバが連携した処理フローを実行する際のフローチャートを示すものである。尚、この処理は、図12のステップS29で生成されたデータ差し替え項目を含むUI情報がサーバ20から複合機30に送られ、複合機30でデータ差し替え項目が入力された場合の処理を示している。即ち、ここでは、前回のエラーの原因がサーバ20或は複合機30における原稿条件で、今回のアクセス元である複合機(エラーが発生した複合機と同じ場合を含む)がその原稿条件を満足できる場合に相当している。
先ずステップS51で、複合機30の操作部309で、データ差し替え項目を含むUI情報に基づいてユーザによる実行指示操作が行われると、それに対応するイベントがサーバ20に通知される。
これによりサーバ20はステップS52で、その通知されたイベントを受け取り、フロー制御部608が、図16で示すようなステップS29で生成したデータ差し替え実行用のフロー定義情報を読み込む。次にステップS53に進み、フロー制御部608は、再処理用に新たにシーケンスIDを発行する。以下、ステップS54からステップS61で、そのフロー定義情報に従って順序サービスを実行する。これらステップS54からステップS61の処理は、前述の図11のステップS8〜ステップS15と同様であるため、その説明を省略する。
図15(A)〜(C)は、本実施形態に係る情報処理システムにアクセスした際に、サーバ20から複合機或はPCに配信されるUI情報の一例を示す図である。
図15(A)は、図11のステップS4で、サーバ20で生成されて複合機30に配信される、或は図12のステップS23で生成されてステップS26で複合機30或はPC10に配信される通常の処理実行UI例を示す。この例では、フロー1とフロー2の2つのフローが用意されており、それぞれUI上で、各フローの実行する指示するボタン1601,1602が表示されている。これらボタンのいずれかが押下されてフローの実行が指示されると、図11のステップS1からサーバ20によるステップS2以降の処理が実行される。
図15(B)は、図12のステップS25で生成されてステップS26で配信されるフローを再開する項目を含むUI例を示している。この場合は、サーバ20によるエラーで、しかもエラーの原因が原稿条件ではないため、エラーの発生を示すメッセージ「エラーが発生」と、フローの再開を指示するための再開ボタン1603が表示されている。また図15(B)のキャンセルボタン1604が押下されると、図15(A)のUI画面へ遷移する。ここで再開ボタン1603が指示されると、サーバ20による図13のステップS32以降の処理が起動される。
図15(C)は、図12のステップS29で生成されてステップS26で配信されるデータ差し替え実行項目を含むUI例を示す。この場合は、エラーの発生場所が複合機30或はサーバ20における原稿条件であり、今回のアクセス元が複合機であるため、データの差し替えを行うかどうかを選択できるようにしている。よってこの例では、データ差し替えの実行を指示するデータ差し替えボタン1605が表示されている。またキャンセルボタン1606が押下されると、図15(A)に示すUI画面へ遷移する。
図15(C)では、図9のシーケンスID「10」の2ページ目の原稿で「カラー画像が処理できません」というエラーが発生しているため、「2ページ目の原稿でエラーが発生」と表示されている。ここで「データ差し替え」ボタン1605が押されると、サーバ20により図14のステップS52以降の処理が実行される。そして図16のフロー定義情報に従って、複合機30で読み取られる原稿のデータが、エラーが発生した2ページ目の原稿と差し替えられて処理される。
以上説明したように本実施形態によれば、情報処理システムにおいて、フローの実行時にエラーが発生するか、或は処理がキャンセルされた場合に、できるだけ原稿を読み直さずに効率良く、処理を再開できる。
またエラーの発生場所、発生原因、入力データに求められる条件及びアクセス元の保有する能力等に従って、適切な実行手段(ボタンなど)をユーザに提示できる。これにより、ユーザが混乱することなく処理を再開できるという効果が得られる。
更に、データを差し替える場合には、必要な条件を反映した実行手段を提示するため、ユーザは再開処理に必要な条件を調べることなく、UIに従って処理を再開できるので、利便性を向上させることができるという効果がある。
(他の実施形態)
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。

Claims (6)

  1. 画像処理装置と連携して処理を行うサーバであって、
    前記画像処理装置にUI情報を送信する送信手段と、
    処理の途中でエラーが発生した場合に、当該エラーが発生した装置及び当該エラーの原因を取得する取得手段と、
    前記エラーが発生した装置が前記画像処理装置であって、前記エラー発生の後の処理要求が当該画像処理装置から発行され、前記エラーの原因が前記画像処理装置で処理される原稿に起因するときは、前記画像処理装置が前記エラーの原因を解消していることを条件に、前記エラーが発生した原稿を差し替えるように処理の流れを定義する手段と、を備え、
    前記送信手段は、前記画像処理装置からの処理要求が前記エラー発生の後の処理要求である場合は、前記取得手段により取得した前記エラーが発生した装置及び前記エラーの原因に基づいて定義された処理の実行を指示するためのUI情報を前記画像処理装置に送信することを特徴とするサーバ。
  2. 前記エラーの原因が前記画像処理装置で処理される原稿に起因しないときは、前記エラーにより中断した処理を再開するように処理の流れを定義する手段を更に有することを特徴とする請求項1に記載のサーバ。
  3. 前記エラーが発生した装置及び当該エラーの原因を対応付けて記憶する記憶手段を更に有することを特徴とする請求項1又は2に記載のサーバ。
  4. サーバと画像処理装置が連携して処理を行う情報処理システムであって、
    前記サーバは、
    前記画像処理装置にUI情報を送信する送信手段と、
    処理の途中でエラーが発生した場合に、当該エラーが発生した装置及び当該エラーの原因を取得する取得手段と、
    前記エラーが発生した装置が前記画像処理装置であって、前記エラー発生の後の処理要求が当該画像処理装置から発行され、前記エラーの原因が前記画像処理装置で処理される原稿に起因するときは、前記画像処理装置が前記エラーの原因を解消していることを条件に、前記エラーが発生した原稿を差し替えるように処理の流れを定義する手段と、を備え、
    前記送信手段は、前記画像処理装置からの処理要求が前記エラー発生の後の処理要求である場合は、前記取得手段により取得した前記エラーが発生した装置及び前記エラーの原因に基づいて定義された処理の実行を指示するためのUI情報を前記画像処理装置に送信し、
    前記画像処理装置は、
    前記UI情報を基にユーザにより指示を入力させるための操作手段と、
    前記操作手段により入力されたユーザの指示に従って前記サーバに処理要求を発行する発行手段と、
    を有することを特徴とする情報処理システム。
  5. 画像処理装置と連携して処理を行うサーバの制御方法であって、
    前記画像処理装置にUI情報を送信する送信工程と、
    処理の途中でエラーが発生した場合に、当該エラーが発生した装置及び当該エラーの原因を取得する取得工程と、
    前記エラーが発生した装置が前記画像処理装置であって、前記エラー発生の後の処理要求が当該画像処理装置から発行され、前記エラーの原因が前記画像処理装置で処理される原稿に起因するときは、前記画像処理装置が前記エラーの原因を解消していることを条件に、前記エラーが発生した原稿を差し替えるように処理の流れを定義する工程と、を備え、
    前記送信工程では、前記画像処理装置からの処理要求が前記エラー発生の後の処理要求である場合は、前記取得工程で取得した前記エラーが発生した装置及び前記エラーの原因に基づいて定義された処理の実行を指示するためのUI情報を前記画像処理装置に送信することを特徴とするサーバの制御方法。
  6. 請求項に記載のサーバの制御方法をコンピュータに実行させるためのプログラム。
JP2009063237A 2009-03-16 2009-03-16 サーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラム Expired - Fee Related JP5368837B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009063237A JP5368837B2 (ja) 2009-03-16 2009-03-16 サーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラム
US12/709,631 US8526021B2 (en) 2009-03-16 2010-02-22 Server, control method thereof and storage medium for assisting image processing apparatus in error recovery

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009063237A JP5368837B2 (ja) 2009-03-16 2009-03-16 サーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2010219792A JP2010219792A (ja) 2010-09-30
JP2010219792A5 JP2010219792A5 (ja) 2012-05-10
JP5368837B2 true JP5368837B2 (ja) 2013-12-18

Family

ID=42730456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009063237A Expired - Fee Related JP5368837B2 (ja) 2009-03-16 2009-03-16 サーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US8526021B2 (ja)
JP (1) JP5368837B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009018806A1 (de) * 2009-04-24 2010-11-25 Fresenius Medical Care Deutschland Gmbh Rechnersystem und Verfahren zum Erzeugen wenigstens einer maschinenlesbaren Datei für eine medizinische Behandlungsvorrichtung
JP5701085B2 (ja) * 2011-02-03 2015-04-15 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP2013196023A (ja) * 2012-03-15 2013-09-30 Canon Inc 情報処理装置、印刷システム、及び、エラー通知方法
JP5984552B2 (ja) 2012-07-20 2016-09-06 キヤノン株式会社 負荷分散システム、負荷分散システムの制御方法、およびコンピュータプログラム
JP5885645B2 (ja) * 2012-12-05 2016-03-15 京セラドキュメントソリューションズ株式会社 情報処理装置、認証方法
JP2016134798A (ja) * 2015-01-20 2016-07-25 株式会社リコー 画像形成装置、情報処理システム及び情報処理プログラム
JP2017058825A (ja) * 2015-09-15 2017-03-23 株式会社リコー 情報処理システム、情報処理装置、及び情報処理方法
JP6919219B2 (ja) * 2017-02-20 2021-08-18 株式会社リコー 情報処理システム、情報処理装置、及び情報処理方法
JP6530024B2 (ja) * 2017-09-07 2019-06-12 株式会社東芝 Ocrスキャナシステム及びocrスキャナシステムにおけるエラー解析方法
US10997027B2 (en) * 2017-12-21 2021-05-04 Arizona Board Of Regents On Behalf Of Arizona State University Lightweight checkpoint technique for resilience against soft errors
US11449380B2 (en) 2018-06-06 2022-09-20 Arizona Board Of Regents On Behalf Of Arizona State University Method for detecting and recovery from soft errors in a computing device
JP2021152827A (ja) 2020-03-25 2021-09-30 富士フイルムビジネスイノベーション株式会社 情報処理システム、情報処理装置及び情報処理プログラム
JP2022015778A (ja) * 2020-07-10 2022-01-21 コニカミノルタ株式会社 作業特性取得装置、作業特性取得方法及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2773519B2 (ja) * 1992-02-28 1998-07-09 富士ゼロックス株式会社 画像処理システム
JPH0897952A (ja) * 1994-09-28 1996-04-12 Fuji Xerox Co Ltd 複写機
US8456665B2 (en) * 2001-01-11 2013-06-04 Sharp Laboratories Of America, Inc. Methods and systems for printing error recovery
JP4401058B2 (ja) 2002-04-12 2010-01-20 株式会社リコー 画像形成装置
JP2004288067A (ja) 2003-03-24 2004-10-14 Fuji Xerox Co Ltd 連携処理装置、連携処理方法及びプログラム
JP4476572B2 (ja) * 2003-06-26 2010-06-09 株式会社沖データ 印刷装置
JP4125274B2 (ja) 2004-08-26 2008-07-30 キヤノン株式会社 画像入出力装置および情報処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP4143649B2 (ja) * 2005-02-04 2008-09-03 キヤノン株式会社 画像処理システム、及び監査データ転送方法
US7969610B2 (en) * 2005-04-01 2011-06-28 Microsoft Corporation Notification methods and systems for print-related systems
JP2007243456A (ja) * 2006-03-07 2007-09-20 Kyocera Mita Corp 異常管理システム
JP4847260B2 (ja) 2006-09-19 2011-12-28 キヤノン株式会社 データ処理装置、データ処理方法、コンピュータプログラム

Also Published As

Publication number Publication date
US8526021B2 (en) 2013-09-03
JP2010219792A (ja) 2010-09-30
US20100231944A1 (en) 2010-09-16

Similar Documents

Publication Publication Date Title
JP5368837B2 (ja) サーバ、サーバを含む情報処理システム、サーバの制御方法、及びプログラム
US10530941B2 (en) Image forming apparatus and scanned data process method
US9277093B2 (en) Method, apparatus, and computer product for managing image formation resources
US8472050B2 (en) File transmission apparatus, method and file version management system
US20090164927A1 (en) Image processing apparatus and method thereof
JP2000270148A (ja) 画像読取方法およびシステム
US8493586B2 (en) Work flow system for deciding whether to execute the work flow based on function restriction information
JP6066006B2 (ja) 画像形成装置
JP4039274B2 (ja) サービス処理システム及びプログラム
JP4039276B2 (ja) サービス処理システム及びプログラム
JP4265250B2 (ja) データ処理システム及びプログラム
JP2004288038A (ja) データ処理システム及びプログラム
JP4398795B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2019080274A (ja) 画像処理システム、処理装置、画像読取装置及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120315

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130531

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130725

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: 20130816

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130913

R151 Written notification of patent or utility model registration

Ref document number: 5368837

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees