情報処理装置、情報処理装置の制御方法、及びプログラム
【課題】 情報処理装置において、ジョブの実行中に、ユーザがWebブラウザの「戻る」ボタン等を操作すると、現在実行中のジョブを制御するためのスクリプトが失われ、ジョブの制御ができなくなってしまう。
【解決手段】 本発明の情報処理装置は、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備える。本情報処理装置は、実行するジョブのステータスを管理するとともに、Webサーバから指示されたジョブを実行している間、管理しているジョブのステータスに応じて、ユーザからの画面遷移の指示の受付を制限する。
【解決手段】 本発明の情報処理装置は、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備える。本情報処理装置は、実行するジョブのステータスを管理するとともに、Webサーバから指示されたジョブを実行している間、管理しているジョブのステータスに応じて、ユーザからの画面遷移の指示の受付を制限する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置、情報処理装置の制御方法及びそのプログラムに関する。
【背景技術】
【0002】
PC等の情報処理装置がネットワーク上のWebサーバに接続され、そのWebサーバにより提供される操作画面を、情報処理装置が備えるWebブラウザ上に表示することが知られている。この場合、まず情報処理装置のWebブラウザが、Webサーバに対して操作画面を要求(リクエスト)する。そして、Webサーバ上のWebアプリケーションが情報処理装置からの要求に応えて、Webブラウザに操作画面を表示させるためのHTMLデータを、その情報処理装置に応答(レスポンス)する。これにより、情報処理装置のWebブラウザは、その受信したHTMLデータを解析し、HTMLデータの記述に基づいた操作画面を表示する。更に、Webブラウザに表示された操作画面を介してユーザが指示を入力すると、その入力された指示をWebブラウザがWebサーバに対して通知する。そして、この通知を受けたWebサーバ上のWebアプリケーションは、その入力された指示に従って処理を実行する。
【0003】
ところで、最近ではスキャナやプリンタを備えた多機能処理装置(MFP:Multi Function Peripheral)の中にも、上述したようなWebブラウザを備えているものがある。このようなMFPは、上述した手順を用いてWebサーバにより提供される操作画面をMFPのWebブラウザに表示し、ユーザからの各種指示を受け付ける。
【0004】
また特許文献1には、MFPが備える各機能を利用するための指示を入力する操作画面と、操作に応じてMFPを制御するための制御スクリプトをWebサーバが提供することが記載されている。即ち、MFPのユーザは、Webブラウザ上に表示された操作画面を介して、MFPに対する指示を入力する。そして、その入力された指示に応じて制御スクリプトが実行される。この制御スクリプトは、ユーザから入力された指示の内容に従ってMFPに対して各種処理の実行を依頼する。そして、この依頼を受けたMFPは、依頼された処理を実行する。これにより、MFPを操作するための全てのメニューデータをMFP内で保持しておく必要がなくなり、またメニューデータの変更もWebサーバ上で容易に行うことができるようになる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−003833号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述した特許文献1のように、Webブラウザに表示された操作画面を介して入力された指示に基づいて、Webブラウザに読み込まれている制御スクリプトから処理の実行を指示する。また制御スクリプトにより実行されるMFP機能は、ジョブという形でMFP機器内に生成される。こうして生成されたジョブは、MFPのスキャナ装置の制御や印刷装置の制御とともに、ユーザに対して、次の入力の要求やエラー改善の要求といった対話的な処理の要求を行う。この処理の要求を制御スクリプトが受け取り、更に次の処理を行う。このように、制御スクリプトとジョブとが対話的に処理を進めていくことで、MFP機能の制御を行っている。
【0007】
一方、Webブラウザは、「戻る」「進む」「アドレスフィールド」「お気に入り」といった、Webブラウザ内に読み込まれているコンテンツの状況とは関係なく、画面遷移を実行する機能を持つのが一般的である。しかしながら、MFPのWebブラウザ内に読み込まれた制御スクリプトでMFPの機能を制御する場合、以下の問題が考えられる。即ち、特許文献1のような構成では、MFPのジョブ実行途中に、ユーザがWebブラウザの「戻る」ボタン等を操作すると、Webブラウザで実行されている制御スクリプトが中断され、表示している画面が切り替わってしまう。このため、現在実行中のジョブを制御するためのスクリプトが失われ、ジョブの制御ができなくなってしまう。更には、実行中のジョブが、ユーザの入力待ちやエラー状態で停止するとMFPに処理が継続できないジョブが滞留してしまうことになる。
【0008】
本発明は上記従来技術の問題点を解決するためになされたものであり、ジョブを実行中に画面を遷移する指示が入力されることにより、実行中のジョブの制御が失われることを回避する仕組みを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webサーバから指示されたジョブを実行する処理手段と、
前記処理手段が実行するジョブのステータスを管理する管理手段と、
前記管理手段が管理しているジョブのステータスに応じて、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする。
【0010】
上記目的を達成するために本発明の別の一態様に係る情報処理装置は以下のような構成を備える。即ち、
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理手段と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定手段と、
前記判定手段によって前記禁止要求が提供されていると判定されると、前記処理手段が処理を実行している間、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする。
【発明の効果】
【0011】
本発明によれば、ジョブを実行中に画面を遷移する指示が入力されることにより、実行中のジョブの制御が失われることを回避することができる。このことにより、処理途中のジョブが情報処理装置内に滞留するのを回避できる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態に係る情報処理システムの全体図。
【図2】本発明の実施形態に係るMFPの構成を示すブロック図。
【図3】本発明の実施形態に係るWebサーバの構成を示すブロック図。
【図4a】、
【図4b】情報処理システムのソフトウェア構成を説明するための図。
【図5】情報処理システムにおける処理の流れを示すシーケンス図。
【図6】情報処理システムの一連の処理で発生する画面遷移の一例を示す図。
【図7】画面表示用のHTMLデータと制御スクリプトの一例を示す図。
【図8】Webブラウザが表示する画面の一例を示す図。
【図9】MFPが管理しているジョブのステータス情報の一例を示す図(A)と、ジョブステータス管理部により実施される処理の流れを示すフローチャート(B)。
【図10】画面操作の抑制制御の開始通知を受けた際に画面操作制御部が行う処理を説明する図。
【図11】実施形態2に係るMFPの画面操作制御部が実施する処理を説明するフローチャート(A)と、S12で表示される確認画面の一例を示す図。
【図12】ジョブのステータス情報を説明する図(A)と、ジョブステータス管理部により実施されるジョブのステータスに応じた処理を説明するフローチャート(B)。
【図13】実施形態3において、画面操作制御部が画面操作の抑制制御をサブステータス「許可」で実行中に実施する処理を説明するフローチャート。
【図14】S32で表示を行う警告画面の一例を示す図。
【図15】実施形態4において、画面操作制御部が画面操作抑制を実行中にWebブラウザが行う処理を説明するフローチャート。
【図16】実施形態5において、MFPのサービスプロバイダが要求を受信したときに行う処理を説明するフローチャート。
【図17】実施形態5に係る情報処理システムにおける処理の流れを示すシーケンス図。
【発明を実施するための形態】
【0013】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【0014】
本発明に係る実施形態として、実施形態1〜5について説明する。後述する実施形態1では、MFPのブラウザで処理された制御スクリプトによりジョブが実行された場合、そのジョブが実行中の間はユーザがブラウザに対する画面遷移操作を行っても、その操作による画面の遷移を抑制する(ユーザの指示をキャンセルする)。これにより、ジョブの滞留を防止することを可能とする。以下では、まず実施形態1〜5に共通する部分について説明した後、実施形態1〜5のそれぞれについて説明する。
【0015】
図1は、本発明の実施形態に係る情報処理システムの全体図である。LAN110には、MFP101及びWebサーバ102が互いに通信可能に接続されている。MFP101は、Webサーバ102から提供される操作画面を表示する。尚、本実施形態では、多機能処理装置(MFP)101は、本発明に係る情報処理装置の一例として示している。
【0016】
図2は、本発明の実施形態に係るMFP101の構成を示すブロック図である。CPU211を含む制御部210は、MFP101全体の動作を制御する。CPU211は、ROM212に記憶されたブートプログラムによりHDD214からOSや各種アプリケーションプログラムを読み出してRAM213に記憶する。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD214は、画像データや各種プログラム、或いは各種情報テーブル等を記憶する。操作部I/F215は、操作部219と制御部210とを接続する。操作部219には、タッチパネル機能を有する液晶表示部やキーボード等が備えられている。またMFP101には後述するWebブラウザ機能が備えられており、MFP101のWebブラウザはWebサーバ102から受信したHTMLデータを解析し、その受信したHTMLデータの記述に基づく操作画面を操作部219の液晶表示部に表示する。プリンタI/F216は、プリンタ220と制御部210とを接続する。プリンタ220で印刷すべき画像データはプリンタI/F216を介して制御部210から転送され、プリンタ220において記録媒体上に印刷される。スキャナI/F217は、スキャナ221と制御部210とを接続する。スキャナ221は、原稿上の画像を読み取って画像データを生成し、生成した画像データをスキャナI/F217を介して制御部210に入力する。ネットワークI/F218は、制御部210(MFP101)をLAN110に接続する。ネットワークI/F218は、LAN110上の外部装置(例えば、Webサーバ102)に画像データや情報を送信したり、LAN110上の外部装置から各種情報を受信したりする。
【0017】
図3は、本発明の実施形態に係るWebサーバ102の構成を示すブロック図である。CPU311を含む制御部310は、Webサーバ102全体の動作を制御する。CPU311は、ROM312に記憶されたブートプログラムによりHDD314からOSや各種アプリケーションプログラムを読み出してRAM313に格納する。RAM313は、CPU311の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD314は、画像データや各種プログラム、或いは各種情報テーブル等を記憶する。ネットワークI/F315は、制御部310(Webサーバ102)をLAN110に接続する。ネットワークI/F315は、LAN110上の他の装置との間で各種情報を送受信する。
【0018】
図4は、本発明の実施形態に係る情報処理システムのソフトウェア構成を説明するための図である。図4に示す各機能部は、MFP101及びWebサーバ102が有している各CPU211,CPU311が、それぞれ対応するRAM213,RAM313にロードされたプログラムを実行することにより実現される。
【0019】
まずMFP101のソフトウェアについて説明する。MFP101のソフトウェアは大きく分けて、Webブラウザ440、サービスプロバイダ450、及びジョブステータス管理部460を含む。Webブラウザ440は、通信部441、解析部442、画面表示部443、スクリプト実行部444、及び画面操作制御部445を有する。通信部441は、HTTPプロトコルに従って、Webサーバ102のWebアプリケーション410に含まれるプレゼンテーション部411と通信する。より具体的には、通信部441は、Webブラウザ440で表示する操作画面をWebアプリケーション410に対して要求する。この場合、通信部441は、Webアプリケーション410から送信されるレスポンス(処理結果)を受信する。また、通信部441はサービスプロバイダ450の通信部451に対して機能の実行依頼を送信する。この場合、通信部441は、サービスプロバイダ450から送信されるレスポンス(処理結果)を受信する。
【0020】
解析部442は、Webアプリケーション410から受信したレスポンスを解析する。このレスポンスの中には、HTMLデータと制御スクリプトが含まれる。HTMLデータには、Webブラウザ440に表示すべき操作画面の内容を示す記述が含まれており、制御スクリプトには、MFP101の機能を制御するための記述が含まれている。画面表示部443は、解析部442によるHTMLデータの解析結果に基づいて、操作部219に操作画面を表示する。スクリプト実行部444は、解析部442による制御スクリプトの解析結果に基づいて処理を行う。この制御スクリプトには、MFP101の機能を制御するためにサービスプロバイダ450へ指示を出すコードや、サービスプロバイダ450のレスポンスに応じて画面更新等の処理を行うコードが含まれる。画面操作制御部445はWebブラウザ440に備わるユーザインタフェースの制御を行う。このユーザインタフェースの制御には、入力ボタンの有効化/無効化、表示/非表示といった処理が含まれる。
【0021】
サービスプロバイダ450は、通信部451及びジョブ生成部452を有する。通信部451は、Webブラウザ440の通信部441から処理依頼を受け付ける。ジョブ生成部452は、通信部451が受け付けた処理依頼を受け取り、依頼された処理を実行するためのジョブを生成して実行する。
【0022】
ジョブステータス管理部460は、ステータス判断部461とステータス通知部462を有する。ステータス判断部461は、Webブラウザ440により実行されたジョブのステータスを判断し、そのステータスに応じた処理を実施する。ステータス通知部462は、ジョブのステータスが変化した際に、Webブラウザ440の画面操作制御部445にステータスの通知を行う。尚、ジョブステータス管理部460は、Webブラウザ440に含まれていてもよいし、サービスプロバイダ450に含まれていてもよい。
【0023】
次にWebサーバ102のソフトウェア構成について説明する。Webサーバ102は、Webアプリケーション410を有する。Webアプリケーション410は、Webサーバ102のCPU311が、RAM313にロードされたプログラムを実行することにより実現される。
【0024】
Webアプリケーション410は、Webブラウザ440からリクエストとして送信される情報を受信し、その受信した情報に基づいて処理を実行する。この処理結果は、Webアプリケーション410からWebブラウザ440に対してレスポンスとして送信される。Webアプリケーション410は、プレゼンテーション部411及びロジック部412を有する。プレゼンテーション部411は通信部441と通信し、MFP101から送信されるリクエストを受信する。次に、プレゼンテーション部411は、MFP101から受信したリクエストをロジック部412へ通知し、ロジック部412からの応答を待つ。ロジック部412からの応答を受け取ったプレゼンテーション部411は、その応答内容に従ってMFP101のWebブラウザ440で表示すべき操作画面に対応するHTMLデータと制御スクリプトとを、レスポンスとして通信部441へ送信する。
【0025】
ロジック部412は、プレゼンテーション部411から通知されるリクエストに応じて各種処理を実行するとともに、MFP101で表示する画面情報のHTMLデータとMFP101で実行する処理の制御スクリプトを生成する。具体的には、MFP101のプリンタ220による印刷処理の実行や、スキャナ221による読み取り処理の実行、或いはネットワークI/F218を介した送信処理の実行を依頼するための制御スクリプトを生成する。MFP101に対して処理の実行を依頼する場合、ロジック部412はプレゼンテーション部411に対して、MFP101にレスポンスとして送信するHTMLデータと制御スクリプトとを渡す。
【0026】
以上、本発明の実施形態に係るシステム構成の概要を説明した。次に本発明の実施形態に係るシステム処理の流れの概要を説明する。図5は、本発明の実施形態に係る情報処理システムにおける処理の流れを示すシーケンス図である。
【0027】
まずMFP101のWebブラウザ440がユーザにより起動されると、Webブラウザ440は、S501でHTTPのリクエストをWebアプリケーション410に送信する。このリクエストを受けたWebアプリケーション410は、Webブラウザ440にて表示する画面のHTMLデータと、Webブラウザ440で実行する制御スクリプトを生成する。そしてS502で、Webアプリケーション410からWebブラウザ440にレスポンスを返す。例えば、S501でのリクエストがメニュー画面の要求であれば、メニュー画面表示用のHTMLデータを、スキャン実行画面の要求であればスキャン画面表示用のHTMLデータとスキャン実行用の制御スクリプトをWebブラウザ440に送る。これによりWebブラウザ440は、解析部442により、その受信したHTMLデータを解析して画面を表示する。また、Webブラウザ440は、制御スクリプトを受信したときは解析部442により解析し、S503で、サービスプロバイダ450に、その解析した機能を実行するように指示する。
【0028】
サービスプロバイダ450は、S503で指示された内容に従って機能を実行し、その機能の実行結果をS504で、Webブラウザ440に応答する。Webブラウザ440は、S504で、その受信したステータスを制御スクリプトで処理し、そのステータスに応じた処理を実施する。本実施形態では、ステータスに応じて、S505でWebアプリケーション410に対して再度HTTPを要求する。ここでは例えば、機能実行結果が処理終了であれば処理終了画面のHTMLデータを要求し、或いは何らかのエラーであれば、エラー処理画面のHTMLデータのリクエストを送信する。
【0029】
Webアプリケーション410は、S505で要求された内容に応じて、画面のHTMLデータと制御スクリプトとを生成する。そしてS506で、Webブラウザ440にそれらをレスポンスとして送信する。以上の処理を繰り返すことにより、MFP101の機能を実現するための一連の処理を進めていくこととなる。
【0030】
図6は、本実施形態に係る情報処理システムの一連の処理で発生する画面遷移の一例を示す図である。ここでは、メニュー画面601、FTP送信設定画面602、スキャン画面603、送信中画面604、送信完了画面605の順に、処理の進行に従って表示される。これら画面はWebブラウザ440により表示され、ユーザの操作や制御スクリプトの内容に応じて遷移する。メニュー画面601は、MFP101により実行させたい機能をユーザが選択するための画面である。この画面でユーザが機能を選択すると、選択した機能に対応した画面に遷移する。FTP送信設定画面602は、メニュー画面601でユーザがFTP送信ボタン606を押下し、FTP送信機能が選択された場合の画面を示す。ユーザは、この画面602でFTP送信のための設定を行うことによりFTP送信機能の実行を指示する。図6の例では、原稿をスキャンして読み取り、その読み取った画像データをPDFフォーマットで、ファイル名「test.pdf」で保存するように設定されている。
【0031】
スキャン画面603は、FTP送信設定画面602でユーザが実行ボタン607を押下したことにより、MFP101がFTP送信機能の実行を開始した場合の画面を示す。この画面603では、制御スクリプトがスキャンのジョブを制御しており、原稿の連続読み込み等の制御を行う。送信中画面604は、スキャン画面603でユーザが送信ボタン608を押下することにより、原稿をスキャンして読み込んだ画像データを実際にFTPサーバへ送信している際に表示される。送信完了画面605はFTPサーバへの送信が完了したときに表示される。
【0032】
図7は、本実施形態に係る画面表示用のHTMLデータと制御スクリプトの一例を示す図である。この例で示すHTMLデータと制御スクリプト701は、FTP送信設定画面602を構成するため情報である。また、HTMLデータと制御スクリプト701は、MFP101からの要求に応じて、Webサーバ102のWebアプリケーション410によって動的に生成される。以下、詳しく説明する。
【0033】
ブロック702には、Webサーバ102のWebアプリケーション410でFTP送信実行のためのパラメータの一部がセットされる。endpoint変数706には、サービスプロバイダ450へFTP送信用のリクエストを出すためのURL情報がセットされる。ftpserver変数707には、データの送信先であるFTPサーバのURLがセットされる。またftppath変数708には、FTPサーバにおけるデータの保存先のパスがセットされる。
【0034】
ブロック703には、実際にFTP送信用のサービスプロバイダ450を呼び出すための処理が記述される。本例ではSOAPを利用してサービスプロバイダ450を呼び出す場合の一例を示す。invoke_ws_scantoftp関数709が定義されている。SoapParameter関数710は、SOAP形式のパラメータを生成するための関数で、本例では「string」型のデータとして、FTP送信するファイルの名称、ファイルの形式、送信先FTPサーバ、保存先パスを設定している。ここではファイルの名称「filename」、ファイルの形式「format」、送信先FTPサーバ「ftpserver」、保存先パス「ftppath」である。
【0035】
また、create_soap_message関数711では、endpointに対して実行を指示するSOAPメッセージの生成を行う。更には、send_soap_message関数712で、実際にサービスプロバイダ450に対してSOAPのリクエストを実行する。その際、job_id変数にFTP送信ジョブを一意に識別するIDが返ってくる。
【0036】
ブロック704には、execute_scan関数713を定義されており、ユーザが入力したFTP送信するファイルの名称及びファイルの形式をパラメータとし、invoke_ws_scantoftp関数709の呼び出す処理714が記述されている。更には、invoke_ws_scantoftp関数709の実行結果として得られるジョブIDをパラメータとし、次画面のデータ取得のためのリクエスト処理の実行指示を行う処理715が記述されている。
【0037】
ブロック705は、Webブラウザ440に表示する画面データを示す。ここでは、画面に表示する内容に加え、ユーザの入力フォーム716、次画面のHTTPデータを要求を行うためのフォーム717が定義されている。入力フォーム716では、FTP送信するファイルの名称の入力と、ファイル形式の選択とが可能であり、実行ボタンを押下するとexecute_scan関数713を呼び出すことが定義されている。また、ブロック704の処理により指示715がなされるとフォーム717が実行される。このフォーム717により、processing.aspxに対して、ジョブIDをパラメータとしてPOST要求が実施される。
【0038】
[実施形態1]
以上、本発明の実施形態に係るシステムの処理の流れの概要を説明した。次に本発明の実施形態1に係る、画面の遷移を抑制する処理の具体例を説明する。
【0039】
図8は、Webブラウザ440が表示する画面の一例を示す図である。画面801は、受信したHTMLデータを用いてWebブラウザ440が表示する画面であり、実施形態1では、Webブラウザ440はMFP101を操作するための画面として画面801を表示する。戻るボタン802は、現在表示している画面の直前に表示していた画面に移動するためのボタンである。進むボタン803は、戻るボタン802で表示している画面を切り替えた場合、切り替え前の画面に再度戻すためのボタンである。アドレスフィールド804は、現在表示している画面のURLを表示する。また、このアドレスフィールド804にURLを直接入力することにより、そのURLにHTTP要求を行って画面を切り替えることもできる。一般的に802から804で示す各機能は、画面801とは独立しており、いつでも操作可能である。つまり、ジョブの実行中に、これら戻るボタン802、進むボタン803、及びアドレスフィールド804のいずれかを操作すると、現在実行中の制御スクリプトが停止して別の画面に切り替わる。これにより、実行途中のジョブ制御ができなくなってしまう。
【0040】
図9(A)は、MFP101のジョブステータス管理部460が管理しているジョブのステータス情報の一例を示す図である。ジョブID901は、ジョブを生成した際にジョブを一意に識別する情報として発行される。ステータス902は、ジョブID901により示されたジョブが現在どのようなステータスかを示す。当該ジョブについて、処理中であれば「処理中」、処理が正常に終了していれば「正常終了」、処理が異常で終了していれば「異常終了」、処理がキャンセルされて終了していれば「キャンセル」がステータス902に記録される。尚、この情報は、Webブラウザ440のスクリプト実行部444の依頼によりサービスプロバイダ450のジョブ生成部452がジョブを生成した場合にのみ、記録が開始される。Webブラウザ440以外からの要求(例えばPCからの印刷要求等)によるジョブでは、この情報の記録は行われない。
【0041】
図9(B)は、ジョブステータス管理部460により実施されるジョブのステータスに応じた処理の流れを示すフローチャートである。この処理は、新規のジョブが開始され、図9(A)に示すジョブステータス情報の記録が開始されるのと同時に開始される。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。
【0042】
まずS1で、画面操作の抑制制御の開始通知を行う。この開始通知は、ジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。次にS2に進み、ステータス通知部462がジョブのステータスを監視し、ジョブのステータスが「処理中」であれば待機し、ジョブの処理が終了してステータスが変化するとS3に進む。S3では、ステータスの判定結果に応じて画面操作の抑制制御の終了通知を行う。この終了通知は開始通知と同様に、ジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。
【0043】
図10は、S1で、画面操作の抑制制御の開始通知を受けた際に、画面操作制御部445が行う処理を説明する図である。ここでは図8と同じ画面例を示しているが、Webブラウザ440に対するユーザからの画面遷移の操作を受け付けないようにして画面遷移を防止する。即ち、画面操作制御部445は、ユーザによる画面遷移の指示の受付を制限する。図8の画面例では、戻るボタン802、進むボタン803、アドレスフィールド804等の所定のエリアの操作は有効であり、ユーザによる操作が可能であった。しかし図10では、戻るボタン1002、進むボタン1003、アドレスフィールド1004等の所定のエリアへの操作は全て無効状態に設定されているため、ユーザがこのボタンを押下しても、その入力は受け付けられない。尚、図10では、ボタンやフィールドへのユーザの操作を受け付けないようにすることで、ユーザの操作を無効化する場合について説明したが、これらボタンやフィールドを非表示にしてもよい。
【0044】
以上説明したように本実施形態1によれば、Webブラウザにてジョブ制御中の画面遷移を制御し、処理中のジョブがMFPに滞留することを回避することができる。
【0045】
[実施形態2]
次に本発明に係る実施形態2について説明する。この実施形態2は、前述の実施形態1においてジョブ処理中に実施する処理が異なる場合について説明する。前述の実施形態1では、図10で示した様に、ユーザからの画面遷移の操作を受け付けないという画面制御を行っているが、本実施形態2では、ユーザの操作を受け付けた後に、ユーザに画面遷移をどうするか否かを確認する画面制御を行う。尚、この実施形態2に係る情報処理システム、MFP101及びWebサーバ102の構成は前述の実施形態1と同様であるため、その説明を省略する。
【0046】
図11(A)は、実施形態2において、MFP101の画面操作制御部445が画面操作の抑制制御中に実施する処理を説明するフローチャートである。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。この処理は、図9(B)のS1で画面操作の抑制制御の開始通知を受けて、S3で画面操作の抑制制御の終了通知を受けるまでの間に実行される。
【0047】
まずS11で、画面操作制御部445は、ユーザによる画面遷移操作がなされるまで待機する。ここでユーザが、例えば図8の戻るボタン802、進むボタン803、アドレスフィールド804のいずれかに対して入力操作を行うとS11からS12に進む。S12では、例えば図11(B)に示す確認画面を表示する。
【0048】
図11(B)は、S12で表示される確認画面の一例を示す図である。この例では、確認画面表示制御として、ジョブが実行中のため画面遷移する場合にはジョブをキャンセルする必要がある点を警告している。ユーザは、現在実行中のジョブをキャンセルして画面を遷移するかどうかを、「はい」ボタン1101、或いは「いいえ」ボタン1102を押下することにより指示する。
【0049】
そしてS13で、この確認画面でユーザが入力したボタンを判定する。ここでユーザが「はい」ボタン1101を押下した場合は、画面遷移を実行する指示であるためS14の処理に進む。一方、「いいえ」ボタン1102を押下した場合は画面遷移を実行しないのでS16に進む。S14では、Webブラウザ440は、ジョブステータス管理部460に通知しジョブのキャンセルを行い、S15で、ユーザにより指示された画面へ切り替える。またS16では、ユーザによる画面遷移操作をキャンセルしてS11のユーザによる画面遷移操作の待機に戻る。
【0050】
以上説明したように本実施形態2によれば、前述の実施形態1と同様に、Webブラウザで画面遷移を制御し、処理中のジョブがMFPに滞留することを回避できる。
【0051】
[実施形態3]
次に本発明に係る実施形態3について説明する。この実施形態3は、画面の遷移を抑制するか否かについて、実施形態1ではジョブが処理中か否かのみに基づいて判断していたのに対して、より詳細なジョブのステータスを利用して判断する点で実施形態1と異なっている。尚、この実施形態3に係る情報処理システム、MFP101及びWebサーバ102の構成は前述の実施形態1と同様であるため、その説明を省略する。
【0052】
MFP101のジョブの中には、スキャンジョブのように処理中は対話処理を行っているため、常にWebブラウザ440から対話制御が必要なジョブがある。また、印刷やスキャンした画像をメールやFTPサーバへ送信するジョブの様に、MFP101のバックグラウンド処理機能で実行され、MFP101で処理が開始されるとWebブラウザ440からの制御を行う必要のないジョブがある。本実施形態3では、Webブラウザ440から対話制御が必要なジョブ、即ちWebブラウザ440を使用する処理を実行中の場合は前述の実施形態1,2と同様の処理を行う。一方で、Webブラウザ440から対話制御がなくても処理を継続できるジョブを実行中の場合には、前述の実施形態1,2とは異なる画面操作の抑制制御を実施する。
【0053】
図12(A)は、図9(A)と同様に、ジョブステータス管理部460で処理を行うためのジョブのステータス情報を説明する図である。ジョブID1201、ステータス1202はそれぞれ、図9(A)のジョブID901、ステータス902と同様である。本実施形態3では、ジョブステータス情報にサブステータス1203が追加されている。サブステータス1203は、現在実行中のジョブがWebブラウザ440から対話制御が必要で、画面遷移してはいけない状態である場合は「禁止」が設定されている。一方で、サブステータス1203は、Webブラウザ440から対話制御が必要でない場合には「許可」が設定される。尚、ジョブの処理が終了したらこのステータスは初期化されて何も設定されない。
【0054】
図12(B)は、図9(B)と同様に、ジョブステータス管理部460により実施されるジョブのステータスに応じた処理を説明するフローチャートである。この処理は、新規のジョブが開始され、図12(A)のジョブステータス情報の記録が開始されるのと同時に処理が開始される。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。
【0055】
まずS21で、画面操作の抑制制御の開始通知を行う。この開始通知はジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われ、実施形態1の図10で説明した処理、或いは実施形態2と同様の処理が行われる。次に、S22ではステータス通知部462がジョブのステータスを監視する。S22で、ジョブのステータスが「処理中」であるとステータス通知部462が判定した場合にはS23へ進み、ジョブの処理が終了して終了のステータスに変わった場合にはS26に進む。S26では、画面操作の抑制制御の終了通知を行う。この終了通知は、開始通知と同様にジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。
【0056】
ジョブの処理中の場合はS22からS23に進み、ステータス通知部462がジョブのサブステータス1203を監視する。S23で、このジョブのサブステータス1203が「禁止」を示しているとステータス通知部462が判定した場合には、S24の処理に進み、「許可」の場合はS25の処理に進む。S24では、ステータス通知部462が、画面操作の抑制制御を行うサブステータス通知を行う。従って、この場合は、前述の実施形態1の図10の場合と同様に、ユーザのボタン操作による画面の遷移が抑制(禁止)される。一方、S25では、ステータス通知部462は、ユーザのボタン操作による画面の遷移を許可するサブステータス通知を行う。尚、このサブステータスの通知は、開始や終了通知と同様にジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。
【0057】
図13は、実施形態3において、画面操作制御部445が画面操作の抑制制御をサブステータス「許可」で実行中に実施する処理を説明するフローチャートである。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。この処理は図12(B)で、S24からS26で画面操作の抑制制御の終了通知を受けるまでの処理である。ここでは、前述の実施形態2と同様に、画面の遷移が禁止されている状態でも、ユーザが画面の遷移を許可する操作を行うと画面の遷移を行う場合について説明する。
【0058】
まずS31で、ユーザによる画面遷移操作があるまで待機する。ユーザが戻るボタン802、進むボタン803、及びアドレスフィールド804のいずれかに対して入力を行った場合はS32に進む。S32では警告画面を表示する。
【0059】
図14は、S32で表示を行う警告画面の一例を示す図である。この例では送信ジョブの実行中であるため、画面を切り替えることは可能だが、切り替えてしまうとジョブの結果確認は別途行う必要がある点を警告する。ユーザは当該警告画面に表示された質問に対して、「はい」ボタン1401、或いは「いいえ」ボタン1402のいずれかを押下するとS33に進む。
【0060】
S33では、画面操作制御部445が、警告画面でユーザが入力したボタンを判定する。ここでユーザが「はい」ボタン1401を押下したと判定した場合は、画面遷移を実行する指示であるためS34の処理に進む。「いいえ」ボタン1703を押下した場合には画面遷移を実行しないのでS36に進む。S34で、Webブラウザ440はジョブステータス管理部460に画面を切り替える旨を通知する。そしてS35で、ユーザに指示された画面への切り替えを実施する。尚、ジョブステータス管理部460は、画面切り替えの通知を受けると図12(B)に示すジョブの監視処理を終了する。またS36では、ユーザによる画面の遷移が発生する操作をキャンセルし、S31のユーザによる画面遷移操作の待機に戻る。
【0061】
以上説明したように本実施形態3によれば、前述の実施形態1,2の効果に加え、より詳細な制御を行うことでユーザビリティを向上させることが可能となる。
【0062】
[実施形態4]
次に本発明に係る実施形態4について説明する。この実施形態4は、前述の実施形態1〜3において、画面操作の抑制制御中に制御スクリプトからの画面遷移に失敗した場合や、Webブラウザ440が強制的に終了された場合の処理に関して説明する。尚、この実施形態4に係る情報処理システム、MFP101及びWebサーバ102の構成は前述の実施形態1と同様であるため、その説明を省略する。
【0063】
図5に示す一連の処理で示したとおり、Webブラウザ440は、機能の実行結果に応じて再度Webサーバ102へHTTP要求を行い、ジョブを継続処理するための画面と制御スクリプトとを取得し処理を進めていく。ジョブが実行中で画面操作の抑制制御が行われているときに、このWebサーバ102へのHTTP要求が何らかの要因で失敗した場合、Webブラウザ440はジョブを継続することができなくなる。これにより、処理中のジョブがMFP101に滞留し、Webブラウザ440に対するユーザの操作も禁止された状態のままとなってしまう。また、MFP101には、ユーザのログオフ機能のように現在実行中のWebブラウザ440を強制的に終了してしまう機能が存在する。この場合も同様に処理中のジョブがMFP101に滞留してしまうことになる。
【0064】
図15は、実施形態4において、画面操作制御部445が画面操作抑制を実行中にWebブラウザ440が行う処理を説明するフローチャートである。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。
【0065】
まずS41で、Webブラウザ440は、MFP101より終了要求を受けたか否かを判定する。終了要求を受けた場合はS43に進んで、実行中のジョブをキャンセルする。一方、S41で終了要求を受けていない場合はS42に進み、HTTP要求に失敗したか否かを判定する。HTTP要求が失敗したと判定した場合はS43に進む。失敗していないと判定したときはS41の処理に戻る。S43ではジョブのキャンセルを行う。このときWebブラウザ440は、ジョブステータス管理部460に通知しジョブのキャンセルを行う。
【0066】
以上説明したように本実施形態4によれば、HTTPリクエストに失敗した場合やブラウザが終了された場合でも適切に処理を終了することが可能となる。
【0067】
[実施形態5]
次に本発明に係る実施形態5について説明する。この実施形態5では、サービスプロバイダ450がMFP101の機能を実行中であることを示す「実行中画面」を、操作部219に表示する場合を想定している。ここで、「実行中画面」とは図6のスキャン画面603や送信中画面604のような画面である。このような場合において、MFP101では以下のような問題が発生する可能性がある。
【0068】
MFP101は、Webブラウザ440で表示した操作画面をユーザが操作することにより何らかの指示が入力されると、当該指示をWebサーバ102に通知する。その後、MFP101は、当該指示に応じた処理の実行をWebサーバ102から要求されるまでの間に、ユーザの操作に応じて、表示中の操作画面を他の操作画面に遷移させる場合がある。
【0069】
例えば、MFP101が、Webブラウザ440で表示した操作画面を介して入力された指示をWebサーバ102に通知した後、Webブラウザ440を閉じ、MFP101内の他のアプリケーションが提供する操作画面に表示を遷移させる場合である。あるいは、MFP101が、Webブラウザ440自体は起動させたままの状態で、MFP101内の他のアプリケーションが提供する操作画面を、Webブラウザ440による操作画面よりも前面に新たに表示させる場合である。このような場合には、Webサーバ102から要求される処理が、当該処理の実行においてユーザの操作を必要とするものであると、当該処理を実行したとしても、処理過程においてユーザに必要な操作を行わせることができない可能性がある。その結果、当該処理を実行することが無駄になってしまう可能性がある。例えば、Webサーバ102から要求される処理が原稿の読取処理であり、かつ、読取処理によって得られた画像データをプレビュー機能によりユーザに確認させる必要がある場合、Webブラウザ440が表示されていないとプレビューを行うことができない。その結果、Webサーバ102から要求された処理における各工程のうち、プレビューよりも後の工程に実行を進めることが不可能となり、既に実行済みの処理が無駄になってしまうことになる。
【0070】
あるいは、例えば、ユーザが、Webブラウザ440の操作画面を介して指示を入力した後に、表示中の操作画面を他の操作画面に遷移させた場合に、当該指示に応じたWebサーバ102からの要求が遅れてMFP101に到達する場合である。この場合、MFP101は、要求された処理の実行を開始すると、MFP101自体が保持する画面情報に基づいて、Webサーバ102から要求される処理の実行中であることを示す「実行中画面」を操作部219において最前面に表示する。その結果、操作部219において画面遷移後の操作画面をユーザが操作している間に、「実行中画面」が最前面に表示されてしまい、ユーザの操作が阻害されてしまう。
【0071】
実施形態5は、このような問題に対処するために、MFP101において、Webサーバ102からの要求に基づく処理を実行する際に、操作画面の遷移を制限することを特徴とする。ここで、前述の実施形態1では、画面遷移を抑制するか否かについて、ジョブの処理中か否かのみに基づいて判断していた。これに対して、実施形態5では、Webブラウザ440がサービスプロバイダ450へ画面遷移の禁止を要求することによって、画面遷移を抑制する点で、実施形態1と異なっている。尚、以下では、この実施形態5に係る情報処理システム、MFP101及びWebサーバ102の構成において、これまでに説明した実施形態と共通する部分については、その説明を省略する。
【0072】
図4(b)は、実施形態5に係る情報処理システムのソフトウェア構成を示す図である。ここでは、図4(a)と異なる部分についてのみ説明する。主制御部480は、MFP101における各機能部を制御する。サービスプロバイダ450は、通信部451及びジョブ生成部452に加えて、画面表示部453を有する。ここで、画面表示部443は、解析部442によるHTMLデータの解析結果に基づいて作成した画面を操作部219に表示するのに対して、画面表示部453は、サービスプロバイダ450における処理に基づいて作成した画面を操作部219に表示する。画面制御部470は、操作部219の画面表示について、Webブラウザ440の画面表示部443による表示とサービスプロバイダ450の画面表示部453による表示との切り替えを、主制御部480を介して制御する。なお、実施形態5では、MFP101はジョブのステータスに関する判断を行う必要がないため、図4(b)にはジョブステータス管理部460を図示していない。
【0073】
図16は、実施形態5において、MFP101のサービスプロバイダ450が、要求を受信したときに行う一連の処理を説明するフローチャートである。当該フローチャートにおける各ステップの動作は、MFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。以下では、Webサーバ102のWebアプリケーション410によってサービスプロバイダ450に対して要求される処理の内容が、「ScanToFTP」である場合について説明する。
【0074】
S1601で、サービスプロバイダ450の通信部431は、Webサーバ102のWebアプリケーション410からの要求、又はMFP101内のWebブラウザ440からLocalLoopbackによる要求を受信する。当該受信に応じて、S1602で、サービスプロバイダ450は、S1601で受信した要求により実行すべき処理の内容を判断する。ここで、サービスプロバイダ450は、Webブラウザ440からLocalLoopbackによる画面遷移禁止要求を受信したことにより、当該処理内容が画面遷移の禁止であると判断した場合、処理をS1607へ進める。S1607で、サービスプロバイダ450は、画面制御部470に対して、操作部219に表示中の画面の切り替えを禁止することを指示する。この処理は、後述する図17におけるS1703及びS1704に対応する。当該指示に応じて、画面制御部470は、例えば、ユーザが操作部219を操作して、Webブラウザ440の画面表示部443による表示画面を閉じて別の画面を表示しようとしても、当該操作をキャンセルする制御を実行する。
【0075】
一方、S1602で、サービスプロバイダ450は、Webアプリケーション410から「ScanToFTP」の実行要求を受信したことにより、当該処理内容が「ScanToFTP」であると判断した場合、処理をS1603に進める。S1603で、サービスプロバイダ450の画面表示部453は、「ScanToFTP」を実行中であることを示す「実行中画面」を作成するとともに、当該画面を操作部219に表示することを画面制御部470に対して指示する。ここでは、画面表示部453は、例えば図6に示すスキャン画面603や送信中画面604を「実行中画面」として表示する。
【0076】
次に、サービスプロバイダ450は、S1604で、Webアプリケーション410に対して正常応答を行った後に、S1605で、「ScanToFTP」の処理を実行する。S1605で、サービスプロバイダ450の画面表示部453は、S1603で表示した「実行中画面」を、実行経過を示すように更新してもよい。また、S1603〜S1605の処理の間は、操作部219の表示画面を介したユーザの操作を、スキャン画面603又は送信中画面604の範囲内とし、他の操作画面へ遷移することを禁止としてもよい。「ScanToFTP」の処理が終了すると、S1603へ進み、サービスプロバイダ450は、「実行中画面」を閉じて、要求の受信に応じた一連の処理を終了する。
【0077】
図17は、Webアプリケーション410から要求される処理の内容が「ScanToFTP」である場合の、MFP101及びWebサーバ102を含む情報処理システム全体における処理の流れを示すシーケンス図である。
【0078】
S1701で、Webブラウザ440は、予めWebブラウザ440に登録されたURL、又はユーザにより任意に指定されたURLに従って、Webサーバ102(Webアプリケーション410)にアクセスし、操作画面を要求する。当該要求を受信したWebアプリケーション410は、その応答として、S1702で、Webブラウザ440が操作部219に操作画面を表示するための画面データであるHTMLファイルを、MFP101(Webブラウザ440)に対して送信する。
【0079】
当該HTMLファイルを受信したWebブラウザ440は、S1703で、当該HTMLファイルに記載された制御スクリプトに従って、サービスプロバイダ450に対して、画面遷移禁止要求をLocalLoopbackにより送信する。当該画面遷移禁止要求を受信したサービスプロバイダ450は、S1704で、画面制御部470に対して、ユーザによる操作に応じた画面遷移の禁止を指示する。これにより、画面制御部470は、それ以降に、操作画面を介してユーザによって画面遷移の指示が入力されたとしても、Webアプリケーション410から要求される処理が完了するまでは、当該画面遷移の指示をキャンセルするように制御する。
【0080】
次に、S1705で、Webブラウザ440は、S1702で受信したHTMLファイルに基づいて操作画面を操作部219に表示して、ユーザによる操作を受け付ける。ここで、ユーザが「ScanToFTP」の実行を当該操作画面を用いて指示すると、S1706で、Webブラウザ440は、当該指示をWebアプリケーション410に通知する。
【0081】
S1707で、Webアプリケーション410は、受信した通知に応じて、サービスプロバイダ450に対して「ScanToFTP」の実行を要求する。この要求を受信を受信すると、S1708で、画面表示部453は、処理の実行に合わせて、図6に示すスキャン画面603及び送信中画面604を「実行中画面」として表示することを画面制御部470に指示する(図16のS1603に対応)。さらに、S1709で、サービスプロバイダ450は、Webアプリケーション410に対して、S1707の要求に対する正常応答を行う(図16のS1604に対応)。Webアプリケーション410から要求される処理の実行中においては、「実行中画面」からの画面遷移の指示は画面制御部470によってキャンセルされる。
【0082】
その後、サービスプロバイダ450は、S1710で、要求された読取処理を実行するとともに(図16のS1605に対応)、S1711で、当該読取処理によって得られた画像データをWebアプリケーション410に送信する。サービスプロバイダ450から画像データを受信したWebアプリケーション410は、S1712で、当該画像データをWebブラウザ440に送信する。
【0083】
S1713で、Webブラウザ440は、Webアプリケーション410から受信した画像データをプレビュー機能により操作部219に表示することで、読取処理によって得られた画像データの内容をユーザに確認させる。画像データの内容を確認したユーザが、Webブラウザ440により表示される操作画面を介して画像データの送信の実行を指示すると、S1714で、Webブラウザ440は、当該指示をWebアプリケーション410に通知する。Webアプリケーション410は、当該指示を受信すると、S1715で、読取処理によって得られた画像データのFTP送信を実行する。なお、FTP送信の宛先は、S1705で表示される操作画面を介してユーザが指定されているものとする。
【0084】
以上説明したように、実施形態5によれば、MFP101は、Webアプリケーション410から提供された制御スクリプトの内容に応じて、ユーザに対して画面遷移操作の禁止(キャンセル)を行う。即ち、受信した制御スクリプトにLocalLoopbackによる画面遷移禁止要求の処理の内容が記載されていた場合は、操作部219に表示されたWebブラウザ440による操作画面を他の操作画面に遷移させることを禁止する。
【0085】
これにより、操作部219に表示された画面が他の操作画面に切り替えられる(例えば、Webブラウザが閉じられる)ことにより、制御スクリプトによって要求されたその後の処理の実行が阻害されることを防止することができる。また、例えば、読取処理によって生成された画像データについて、プレビュー機能による確認処理を必要とする場合に、その確認処理がなされない状態が継続することで、画像データがWebサーバ102内に留まってしまうことを防止することができる。さらには、操作部219に表示された操作画面が切り替わった後に、制御スクリプトで要求された処理の実行の開始に応じて「実行中画面」が表示されることによってユーザが操作中の操作画面の表示が阻害されることを防止することができる。なお、本実施形態では、Webアプリケーション410から要求される処理として、「ScanToFTP」を一例として説明したが、他の様々な処理を適用可能である。
【0086】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置、情報処理装置の制御方法及びそのプログラムに関する。
【背景技術】
【0002】
PC等の情報処理装置がネットワーク上のWebサーバに接続され、そのWebサーバにより提供される操作画面を、情報処理装置が備えるWebブラウザ上に表示することが知られている。この場合、まず情報処理装置のWebブラウザが、Webサーバに対して操作画面を要求(リクエスト)する。そして、Webサーバ上のWebアプリケーションが情報処理装置からの要求に応えて、Webブラウザに操作画面を表示させるためのHTMLデータを、その情報処理装置に応答(レスポンス)する。これにより、情報処理装置のWebブラウザは、その受信したHTMLデータを解析し、HTMLデータの記述に基づいた操作画面を表示する。更に、Webブラウザに表示された操作画面を介してユーザが指示を入力すると、その入力された指示をWebブラウザがWebサーバに対して通知する。そして、この通知を受けたWebサーバ上のWebアプリケーションは、その入力された指示に従って処理を実行する。
【0003】
ところで、最近ではスキャナやプリンタを備えた多機能処理装置(MFP:Multi Function Peripheral)の中にも、上述したようなWebブラウザを備えているものがある。このようなMFPは、上述した手順を用いてWebサーバにより提供される操作画面をMFPのWebブラウザに表示し、ユーザからの各種指示を受け付ける。
【0004】
また特許文献1には、MFPが備える各機能を利用するための指示を入力する操作画面と、操作に応じてMFPを制御するための制御スクリプトをWebサーバが提供することが記載されている。即ち、MFPのユーザは、Webブラウザ上に表示された操作画面を介して、MFPに対する指示を入力する。そして、その入力された指示に応じて制御スクリプトが実行される。この制御スクリプトは、ユーザから入力された指示の内容に従ってMFPに対して各種処理の実行を依頼する。そして、この依頼を受けたMFPは、依頼された処理を実行する。これにより、MFPを操作するための全てのメニューデータをMFP内で保持しておく必要がなくなり、またメニューデータの変更もWebサーバ上で容易に行うことができるようになる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−003833号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述した特許文献1のように、Webブラウザに表示された操作画面を介して入力された指示に基づいて、Webブラウザに読み込まれている制御スクリプトから処理の実行を指示する。また制御スクリプトにより実行されるMFP機能は、ジョブという形でMFP機器内に生成される。こうして生成されたジョブは、MFPのスキャナ装置の制御や印刷装置の制御とともに、ユーザに対して、次の入力の要求やエラー改善の要求といった対話的な処理の要求を行う。この処理の要求を制御スクリプトが受け取り、更に次の処理を行う。このように、制御スクリプトとジョブとが対話的に処理を進めていくことで、MFP機能の制御を行っている。
【0007】
一方、Webブラウザは、「戻る」「進む」「アドレスフィールド」「お気に入り」といった、Webブラウザ内に読み込まれているコンテンツの状況とは関係なく、画面遷移を実行する機能を持つのが一般的である。しかしながら、MFPのWebブラウザ内に読み込まれた制御スクリプトでMFPの機能を制御する場合、以下の問題が考えられる。即ち、特許文献1のような構成では、MFPのジョブ実行途中に、ユーザがWebブラウザの「戻る」ボタン等を操作すると、Webブラウザで実行されている制御スクリプトが中断され、表示している画面が切り替わってしまう。このため、現在実行中のジョブを制御するためのスクリプトが失われ、ジョブの制御ができなくなってしまう。更には、実行中のジョブが、ユーザの入力待ちやエラー状態で停止するとMFPに処理が継続できないジョブが滞留してしまうことになる。
【0008】
本発明は上記従来技術の問題点を解決するためになされたものであり、ジョブを実行中に画面を遷移する指示が入力されることにより、実行中のジョブの制御が失われることを回避する仕組みを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webサーバから指示されたジョブを実行する処理手段と、
前記処理手段が実行するジョブのステータスを管理する管理手段と、
前記管理手段が管理しているジョブのステータスに応じて、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする。
【0010】
上記目的を達成するために本発明の別の一態様に係る情報処理装置は以下のような構成を備える。即ち、
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理手段と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定手段と、
前記判定手段によって前記禁止要求が提供されていると判定されると、前記処理手段が処理を実行している間、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする。
【発明の効果】
【0011】
本発明によれば、ジョブを実行中に画面を遷移する指示が入力されることにより、実行中のジョブの制御が失われることを回避することができる。このことにより、処理途中のジョブが情報処理装置内に滞留するのを回避できる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態に係る情報処理システムの全体図。
【図2】本発明の実施形態に係るMFPの構成を示すブロック図。
【図3】本発明の実施形態に係るWebサーバの構成を示すブロック図。
【図4a】、
【図4b】情報処理システムのソフトウェア構成を説明するための図。
【図5】情報処理システムにおける処理の流れを示すシーケンス図。
【図6】情報処理システムの一連の処理で発生する画面遷移の一例を示す図。
【図7】画面表示用のHTMLデータと制御スクリプトの一例を示す図。
【図8】Webブラウザが表示する画面の一例を示す図。
【図9】MFPが管理しているジョブのステータス情報の一例を示す図(A)と、ジョブステータス管理部により実施される処理の流れを示すフローチャート(B)。
【図10】画面操作の抑制制御の開始通知を受けた際に画面操作制御部が行う処理を説明する図。
【図11】実施形態2に係るMFPの画面操作制御部が実施する処理を説明するフローチャート(A)と、S12で表示される確認画面の一例を示す図。
【図12】ジョブのステータス情報を説明する図(A)と、ジョブステータス管理部により実施されるジョブのステータスに応じた処理を説明するフローチャート(B)。
【図13】実施形態3において、画面操作制御部が画面操作の抑制制御をサブステータス「許可」で実行中に実施する処理を説明するフローチャート。
【図14】S32で表示を行う警告画面の一例を示す図。
【図15】実施形態4において、画面操作制御部が画面操作抑制を実行中にWebブラウザが行う処理を説明するフローチャート。
【図16】実施形態5において、MFPのサービスプロバイダが要求を受信したときに行う処理を説明するフローチャート。
【図17】実施形態5に係る情報処理システムにおける処理の流れを示すシーケンス図。
【発明を実施するための形態】
【0013】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【0014】
本発明に係る実施形態として、実施形態1〜5について説明する。後述する実施形態1では、MFPのブラウザで処理された制御スクリプトによりジョブが実行された場合、そのジョブが実行中の間はユーザがブラウザに対する画面遷移操作を行っても、その操作による画面の遷移を抑制する(ユーザの指示をキャンセルする)。これにより、ジョブの滞留を防止することを可能とする。以下では、まず実施形態1〜5に共通する部分について説明した後、実施形態1〜5のそれぞれについて説明する。
【0015】
図1は、本発明の実施形態に係る情報処理システムの全体図である。LAN110には、MFP101及びWebサーバ102が互いに通信可能に接続されている。MFP101は、Webサーバ102から提供される操作画面を表示する。尚、本実施形態では、多機能処理装置(MFP)101は、本発明に係る情報処理装置の一例として示している。
【0016】
図2は、本発明の実施形態に係るMFP101の構成を示すブロック図である。CPU211を含む制御部210は、MFP101全体の動作を制御する。CPU211は、ROM212に記憶されたブートプログラムによりHDD214からOSや各種アプリケーションプログラムを読み出してRAM213に記憶する。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD214は、画像データや各種プログラム、或いは各種情報テーブル等を記憶する。操作部I/F215は、操作部219と制御部210とを接続する。操作部219には、タッチパネル機能を有する液晶表示部やキーボード等が備えられている。またMFP101には後述するWebブラウザ機能が備えられており、MFP101のWebブラウザはWebサーバ102から受信したHTMLデータを解析し、その受信したHTMLデータの記述に基づく操作画面を操作部219の液晶表示部に表示する。プリンタI/F216は、プリンタ220と制御部210とを接続する。プリンタ220で印刷すべき画像データはプリンタI/F216を介して制御部210から転送され、プリンタ220において記録媒体上に印刷される。スキャナI/F217は、スキャナ221と制御部210とを接続する。スキャナ221は、原稿上の画像を読み取って画像データを生成し、生成した画像データをスキャナI/F217を介して制御部210に入力する。ネットワークI/F218は、制御部210(MFP101)をLAN110に接続する。ネットワークI/F218は、LAN110上の外部装置(例えば、Webサーバ102)に画像データや情報を送信したり、LAN110上の外部装置から各種情報を受信したりする。
【0017】
図3は、本発明の実施形態に係るWebサーバ102の構成を示すブロック図である。CPU311を含む制御部310は、Webサーバ102全体の動作を制御する。CPU311は、ROM312に記憶されたブートプログラムによりHDD314からOSや各種アプリケーションプログラムを読み出してRAM313に格納する。RAM313は、CPU311の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD314は、画像データや各種プログラム、或いは各種情報テーブル等を記憶する。ネットワークI/F315は、制御部310(Webサーバ102)をLAN110に接続する。ネットワークI/F315は、LAN110上の他の装置との間で各種情報を送受信する。
【0018】
図4は、本発明の実施形態に係る情報処理システムのソフトウェア構成を説明するための図である。図4に示す各機能部は、MFP101及びWebサーバ102が有している各CPU211,CPU311が、それぞれ対応するRAM213,RAM313にロードされたプログラムを実行することにより実現される。
【0019】
まずMFP101のソフトウェアについて説明する。MFP101のソフトウェアは大きく分けて、Webブラウザ440、サービスプロバイダ450、及びジョブステータス管理部460を含む。Webブラウザ440は、通信部441、解析部442、画面表示部443、スクリプト実行部444、及び画面操作制御部445を有する。通信部441は、HTTPプロトコルに従って、Webサーバ102のWebアプリケーション410に含まれるプレゼンテーション部411と通信する。より具体的には、通信部441は、Webブラウザ440で表示する操作画面をWebアプリケーション410に対して要求する。この場合、通信部441は、Webアプリケーション410から送信されるレスポンス(処理結果)を受信する。また、通信部441はサービスプロバイダ450の通信部451に対して機能の実行依頼を送信する。この場合、通信部441は、サービスプロバイダ450から送信されるレスポンス(処理結果)を受信する。
【0020】
解析部442は、Webアプリケーション410から受信したレスポンスを解析する。このレスポンスの中には、HTMLデータと制御スクリプトが含まれる。HTMLデータには、Webブラウザ440に表示すべき操作画面の内容を示す記述が含まれており、制御スクリプトには、MFP101の機能を制御するための記述が含まれている。画面表示部443は、解析部442によるHTMLデータの解析結果に基づいて、操作部219に操作画面を表示する。スクリプト実行部444は、解析部442による制御スクリプトの解析結果に基づいて処理を行う。この制御スクリプトには、MFP101の機能を制御するためにサービスプロバイダ450へ指示を出すコードや、サービスプロバイダ450のレスポンスに応じて画面更新等の処理を行うコードが含まれる。画面操作制御部445はWebブラウザ440に備わるユーザインタフェースの制御を行う。このユーザインタフェースの制御には、入力ボタンの有効化/無効化、表示/非表示といった処理が含まれる。
【0021】
サービスプロバイダ450は、通信部451及びジョブ生成部452を有する。通信部451は、Webブラウザ440の通信部441から処理依頼を受け付ける。ジョブ生成部452は、通信部451が受け付けた処理依頼を受け取り、依頼された処理を実行するためのジョブを生成して実行する。
【0022】
ジョブステータス管理部460は、ステータス判断部461とステータス通知部462を有する。ステータス判断部461は、Webブラウザ440により実行されたジョブのステータスを判断し、そのステータスに応じた処理を実施する。ステータス通知部462は、ジョブのステータスが変化した際に、Webブラウザ440の画面操作制御部445にステータスの通知を行う。尚、ジョブステータス管理部460は、Webブラウザ440に含まれていてもよいし、サービスプロバイダ450に含まれていてもよい。
【0023】
次にWebサーバ102のソフトウェア構成について説明する。Webサーバ102は、Webアプリケーション410を有する。Webアプリケーション410は、Webサーバ102のCPU311が、RAM313にロードされたプログラムを実行することにより実現される。
【0024】
Webアプリケーション410は、Webブラウザ440からリクエストとして送信される情報を受信し、その受信した情報に基づいて処理を実行する。この処理結果は、Webアプリケーション410からWebブラウザ440に対してレスポンスとして送信される。Webアプリケーション410は、プレゼンテーション部411及びロジック部412を有する。プレゼンテーション部411は通信部441と通信し、MFP101から送信されるリクエストを受信する。次に、プレゼンテーション部411は、MFP101から受信したリクエストをロジック部412へ通知し、ロジック部412からの応答を待つ。ロジック部412からの応答を受け取ったプレゼンテーション部411は、その応答内容に従ってMFP101のWebブラウザ440で表示すべき操作画面に対応するHTMLデータと制御スクリプトとを、レスポンスとして通信部441へ送信する。
【0025】
ロジック部412は、プレゼンテーション部411から通知されるリクエストに応じて各種処理を実行するとともに、MFP101で表示する画面情報のHTMLデータとMFP101で実行する処理の制御スクリプトを生成する。具体的には、MFP101のプリンタ220による印刷処理の実行や、スキャナ221による読み取り処理の実行、或いはネットワークI/F218を介した送信処理の実行を依頼するための制御スクリプトを生成する。MFP101に対して処理の実行を依頼する場合、ロジック部412はプレゼンテーション部411に対して、MFP101にレスポンスとして送信するHTMLデータと制御スクリプトとを渡す。
【0026】
以上、本発明の実施形態に係るシステム構成の概要を説明した。次に本発明の実施形態に係るシステム処理の流れの概要を説明する。図5は、本発明の実施形態に係る情報処理システムにおける処理の流れを示すシーケンス図である。
【0027】
まずMFP101のWebブラウザ440がユーザにより起動されると、Webブラウザ440は、S501でHTTPのリクエストをWebアプリケーション410に送信する。このリクエストを受けたWebアプリケーション410は、Webブラウザ440にて表示する画面のHTMLデータと、Webブラウザ440で実行する制御スクリプトを生成する。そしてS502で、Webアプリケーション410からWebブラウザ440にレスポンスを返す。例えば、S501でのリクエストがメニュー画面の要求であれば、メニュー画面表示用のHTMLデータを、スキャン実行画面の要求であればスキャン画面表示用のHTMLデータとスキャン実行用の制御スクリプトをWebブラウザ440に送る。これによりWebブラウザ440は、解析部442により、その受信したHTMLデータを解析して画面を表示する。また、Webブラウザ440は、制御スクリプトを受信したときは解析部442により解析し、S503で、サービスプロバイダ450に、その解析した機能を実行するように指示する。
【0028】
サービスプロバイダ450は、S503で指示された内容に従って機能を実行し、その機能の実行結果をS504で、Webブラウザ440に応答する。Webブラウザ440は、S504で、その受信したステータスを制御スクリプトで処理し、そのステータスに応じた処理を実施する。本実施形態では、ステータスに応じて、S505でWebアプリケーション410に対して再度HTTPを要求する。ここでは例えば、機能実行結果が処理終了であれば処理終了画面のHTMLデータを要求し、或いは何らかのエラーであれば、エラー処理画面のHTMLデータのリクエストを送信する。
【0029】
Webアプリケーション410は、S505で要求された内容に応じて、画面のHTMLデータと制御スクリプトとを生成する。そしてS506で、Webブラウザ440にそれらをレスポンスとして送信する。以上の処理を繰り返すことにより、MFP101の機能を実現するための一連の処理を進めていくこととなる。
【0030】
図6は、本実施形態に係る情報処理システムの一連の処理で発生する画面遷移の一例を示す図である。ここでは、メニュー画面601、FTP送信設定画面602、スキャン画面603、送信中画面604、送信完了画面605の順に、処理の進行に従って表示される。これら画面はWebブラウザ440により表示され、ユーザの操作や制御スクリプトの内容に応じて遷移する。メニュー画面601は、MFP101により実行させたい機能をユーザが選択するための画面である。この画面でユーザが機能を選択すると、選択した機能に対応した画面に遷移する。FTP送信設定画面602は、メニュー画面601でユーザがFTP送信ボタン606を押下し、FTP送信機能が選択された場合の画面を示す。ユーザは、この画面602でFTP送信のための設定を行うことによりFTP送信機能の実行を指示する。図6の例では、原稿をスキャンして読み取り、その読み取った画像データをPDFフォーマットで、ファイル名「test.pdf」で保存するように設定されている。
【0031】
スキャン画面603は、FTP送信設定画面602でユーザが実行ボタン607を押下したことにより、MFP101がFTP送信機能の実行を開始した場合の画面を示す。この画面603では、制御スクリプトがスキャンのジョブを制御しており、原稿の連続読み込み等の制御を行う。送信中画面604は、スキャン画面603でユーザが送信ボタン608を押下することにより、原稿をスキャンして読み込んだ画像データを実際にFTPサーバへ送信している際に表示される。送信完了画面605はFTPサーバへの送信が完了したときに表示される。
【0032】
図7は、本実施形態に係る画面表示用のHTMLデータと制御スクリプトの一例を示す図である。この例で示すHTMLデータと制御スクリプト701は、FTP送信設定画面602を構成するため情報である。また、HTMLデータと制御スクリプト701は、MFP101からの要求に応じて、Webサーバ102のWebアプリケーション410によって動的に生成される。以下、詳しく説明する。
【0033】
ブロック702には、Webサーバ102のWebアプリケーション410でFTP送信実行のためのパラメータの一部がセットされる。endpoint変数706には、サービスプロバイダ450へFTP送信用のリクエストを出すためのURL情報がセットされる。ftpserver変数707には、データの送信先であるFTPサーバのURLがセットされる。またftppath変数708には、FTPサーバにおけるデータの保存先のパスがセットされる。
【0034】
ブロック703には、実際にFTP送信用のサービスプロバイダ450を呼び出すための処理が記述される。本例ではSOAPを利用してサービスプロバイダ450を呼び出す場合の一例を示す。invoke_ws_scantoftp関数709が定義されている。SoapParameter関数710は、SOAP形式のパラメータを生成するための関数で、本例では「string」型のデータとして、FTP送信するファイルの名称、ファイルの形式、送信先FTPサーバ、保存先パスを設定している。ここではファイルの名称「filename」、ファイルの形式「format」、送信先FTPサーバ「ftpserver」、保存先パス「ftppath」である。
【0035】
また、create_soap_message関数711では、endpointに対して実行を指示するSOAPメッセージの生成を行う。更には、send_soap_message関数712で、実際にサービスプロバイダ450に対してSOAPのリクエストを実行する。その際、job_id変数にFTP送信ジョブを一意に識別するIDが返ってくる。
【0036】
ブロック704には、execute_scan関数713を定義されており、ユーザが入力したFTP送信するファイルの名称及びファイルの形式をパラメータとし、invoke_ws_scantoftp関数709の呼び出す処理714が記述されている。更には、invoke_ws_scantoftp関数709の実行結果として得られるジョブIDをパラメータとし、次画面のデータ取得のためのリクエスト処理の実行指示を行う処理715が記述されている。
【0037】
ブロック705は、Webブラウザ440に表示する画面データを示す。ここでは、画面に表示する内容に加え、ユーザの入力フォーム716、次画面のHTTPデータを要求を行うためのフォーム717が定義されている。入力フォーム716では、FTP送信するファイルの名称の入力と、ファイル形式の選択とが可能であり、実行ボタンを押下するとexecute_scan関数713を呼び出すことが定義されている。また、ブロック704の処理により指示715がなされるとフォーム717が実行される。このフォーム717により、processing.aspxに対して、ジョブIDをパラメータとしてPOST要求が実施される。
【0038】
[実施形態1]
以上、本発明の実施形態に係るシステムの処理の流れの概要を説明した。次に本発明の実施形態1に係る、画面の遷移を抑制する処理の具体例を説明する。
【0039】
図8は、Webブラウザ440が表示する画面の一例を示す図である。画面801は、受信したHTMLデータを用いてWebブラウザ440が表示する画面であり、実施形態1では、Webブラウザ440はMFP101を操作するための画面として画面801を表示する。戻るボタン802は、現在表示している画面の直前に表示していた画面に移動するためのボタンである。進むボタン803は、戻るボタン802で表示している画面を切り替えた場合、切り替え前の画面に再度戻すためのボタンである。アドレスフィールド804は、現在表示している画面のURLを表示する。また、このアドレスフィールド804にURLを直接入力することにより、そのURLにHTTP要求を行って画面を切り替えることもできる。一般的に802から804で示す各機能は、画面801とは独立しており、いつでも操作可能である。つまり、ジョブの実行中に、これら戻るボタン802、進むボタン803、及びアドレスフィールド804のいずれかを操作すると、現在実行中の制御スクリプトが停止して別の画面に切り替わる。これにより、実行途中のジョブ制御ができなくなってしまう。
【0040】
図9(A)は、MFP101のジョブステータス管理部460が管理しているジョブのステータス情報の一例を示す図である。ジョブID901は、ジョブを生成した際にジョブを一意に識別する情報として発行される。ステータス902は、ジョブID901により示されたジョブが現在どのようなステータスかを示す。当該ジョブについて、処理中であれば「処理中」、処理が正常に終了していれば「正常終了」、処理が異常で終了していれば「異常終了」、処理がキャンセルされて終了していれば「キャンセル」がステータス902に記録される。尚、この情報は、Webブラウザ440のスクリプト実行部444の依頼によりサービスプロバイダ450のジョブ生成部452がジョブを生成した場合にのみ、記録が開始される。Webブラウザ440以外からの要求(例えばPCからの印刷要求等)によるジョブでは、この情報の記録は行われない。
【0041】
図9(B)は、ジョブステータス管理部460により実施されるジョブのステータスに応じた処理の流れを示すフローチャートである。この処理は、新規のジョブが開始され、図9(A)に示すジョブステータス情報の記録が開始されるのと同時に開始される。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。
【0042】
まずS1で、画面操作の抑制制御の開始通知を行う。この開始通知は、ジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。次にS2に進み、ステータス通知部462がジョブのステータスを監視し、ジョブのステータスが「処理中」であれば待機し、ジョブの処理が終了してステータスが変化するとS3に進む。S3では、ステータスの判定結果に応じて画面操作の抑制制御の終了通知を行う。この終了通知は開始通知と同様に、ジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。
【0043】
図10は、S1で、画面操作の抑制制御の開始通知を受けた際に、画面操作制御部445が行う処理を説明する図である。ここでは図8と同じ画面例を示しているが、Webブラウザ440に対するユーザからの画面遷移の操作を受け付けないようにして画面遷移を防止する。即ち、画面操作制御部445は、ユーザによる画面遷移の指示の受付を制限する。図8の画面例では、戻るボタン802、進むボタン803、アドレスフィールド804等の所定のエリアの操作は有効であり、ユーザによる操作が可能であった。しかし図10では、戻るボタン1002、進むボタン1003、アドレスフィールド1004等の所定のエリアへの操作は全て無効状態に設定されているため、ユーザがこのボタンを押下しても、その入力は受け付けられない。尚、図10では、ボタンやフィールドへのユーザの操作を受け付けないようにすることで、ユーザの操作を無効化する場合について説明したが、これらボタンやフィールドを非表示にしてもよい。
【0044】
以上説明したように本実施形態1によれば、Webブラウザにてジョブ制御中の画面遷移を制御し、処理中のジョブがMFPに滞留することを回避することができる。
【0045】
[実施形態2]
次に本発明に係る実施形態2について説明する。この実施形態2は、前述の実施形態1においてジョブ処理中に実施する処理が異なる場合について説明する。前述の実施形態1では、図10で示した様に、ユーザからの画面遷移の操作を受け付けないという画面制御を行っているが、本実施形態2では、ユーザの操作を受け付けた後に、ユーザに画面遷移をどうするか否かを確認する画面制御を行う。尚、この実施形態2に係る情報処理システム、MFP101及びWebサーバ102の構成は前述の実施形態1と同様であるため、その説明を省略する。
【0046】
図11(A)は、実施形態2において、MFP101の画面操作制御部445が画面操作の抑制制御中に実施する処理を説明するフローチャートである。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。この処理は、図9(B)のS1で画面操作の抑制制御の開始通知を受けて、S3で画面操作の抑制制御の終了通知を受けるまでの間に実行される。
【0047】
まずS11で、画面操作制御部445は、ユーザによる画面遷移操作がなされるまで待機する。ここでユーザが、例えば図8の戻るボタン802、進むボタン803、アドレスフィールド804のいずれかに対して入力操作を行うとS11からS12に進む。S12では、例えば図11(B)に示す確認画面を表示する。
【0048】
図11(B)は、S12で表示される確認画面の一例を示す図である。この例では、確認画面表示制御として、ジョブが実行中のため画面遷移する場合にはジョブをキャンセルする必要がある点を警告している。ユーザは、現在実行中のジョブをキャンセルして画面を遷移するかどうかを、「はい」ボタン1101、或いは「いいえ」ボタン1102を押下することにより指示する。
【0049】
そしてS13で、この確認画面でユーザが入力したボタンを判定する。ここでユーザが「はい」ボタン1101を押下した場合は、画面遷移を実行する指示であるためS14の処理に進む。一方、「いいえ」ボタン1102を押下した場合は画面遷移を実行しないのでS16に進む。S14では、Webブラウザ440は、ジョブステータス管理部460に通知しジョブのキャンセルを行い、S15で、ユーザにより指示された画面へ切り替える。またS16では、ユーザによる画面遷移操作をキャンセルしてS11のユーザによる画面遷移操作の待機に戻る。
【0050】
以上説明したように本実施形態2によれば、前述の実施形態1と同様に、Webブラウザで画面遷移を制御し、処理中のジョブがMFPに滞留することを回避できる。
【0051】
[実施形態3]
次に本発明に係る実施形態3について説明する。この実施形態3は、画面の遷移を抑制するか否かについて、実施形態1ではジョブが処理中か否かのみに基づいて判断していたのに対して、より詳細なジョブのステータスを利用して判断する点で実施形態1と異なっている。尚、この実施形態3に係る情報処理システム、MFP101及びWebサーバ102の構成は前述の実施形態1と同様であるため、その説明を省略する。
【0052】
MFP101のジョブの中には、スキャンジョブのように処理中は対話処理を行っているため、常にWebブラウザ440から対話制御が必要なジョブがある。また、印刷やスキャンした画像をメールやFTPサーバへ送信するジョブの様に、MFP101のバックグラウンド処理機能で実行され、MFP101で処理が開始されるとWebブラウザ440からの制御を行う必要のないジョブがある。本実施形態3では、Webブラウザ440から対話制御が必要なジョブ、即ちWebブラウザ440を使用する処理を実行中の場合は前述の実施形態1,2と同様の処理を行う。一方で、Webブラウザ440から対話制御がなくても処理を継続できるジョブを実行中の場合には、前述の実施形態1,2とは異なる画面操作の抑制制御を実施する。
【0053】
図12(A)は、図9(A)と同様に、ジョブステータス管理部460で処理を行うためのジョブのステータス情報を説明する図である。ジョブID1201、ステータス1202はそれぞれ、図9(A)のジョブID901、ステータス902と同様である。本実施形態3では、ジョブステータス情報にサブステータス1203が追加されている。サブステータス1203は、現在実行中のジョブがWebブラウザ440から対話制御が必要で、画面遷移してはいけない状態である場合は「禁止」が設定されている。一方で、サブステータス1203は、Webブラウザ440から対話制御が必要でない場合には「許可」が設定される。尚、ジョブの処理が終了したらこのステータスは初期化されて何も設定されない。
【0054】
図12(B)は、図9(B)と同様に、ジョブステータス管理部460により実施されるジョブのステータスに応じた処理を説明するフローチャートである。この処理は、新規のジョブが開始され、図12(A)のジョブステータス情報の記録が開始されるのと同時に処理が開始される。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。
【0055】
まずS21で、画面操作の抑制制御の開始通知を行う。この開始通知はジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われ、実施形態1の図10で説明した処理、或いは実施形態2と同様の処理が行われる。次に、S22ではステータス通知部462がジョブのステータスを監視する。S22で、ジョブのステータスが「処理中」であるとステータス通知部462が判定した場合にはS23へ進み、ジョブの処理が終了して終了のステータスに変わった場合にはS26に進む。S26では、画面操作の抑制制御の終了通知を行う。この終了通知は、開始通知と同様にジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。
【0056】
ジョブの処理中の場合はS22からS23に進み、ステータス通知部462がジョブのサブステータス1203を監視する。S23で、このジョブのサブステータス1203が「禁止」を示しているとステータス通知部462が判定した場合には、S24の処理に進み、「許可」の場合はS25の処理に進む。S24では、ステータス通知部462が、画面操作の抑制制御を行うサブステータス通知を行う。従って、この場合は、前述の実施形態1の図10の場合と同様に、ユーザのボタン操作による画面の遷移が抑制(禁止)される。一方、S25では、ステータス通知部462は、ユーザのボタン操作による画面の遷移を許可するサブステータス通知を行う。尚、このサブステータスの通知は、開始や終了通知と同様にジョブステータス管理部460のステータス通知部462から、Webブラウザ440の画面操作制御部445に対して行われる。
【0057】
図13は、実施形態3において、画面操作制御部445が画面操作の抑制制御をサブステータス「許可」で実行中に実施する処理を説明するフローチャートである。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。この処理は図12(B)で、S24からS26で画面操作の抑制制御の終了通知を受けるまでの処理である。ここでは、前述の実施形態2と同様に、画面の遷移が禁止されている状態でも、ユーザが画面の遷移を許可する操作を行うと画面の遷移を行う場合について説明する。
【0058】
まずS31で、ユーザによる画面遷移操作があるまで待機する。ユーザが戻るボタン802、進むボタン803、及びアドレスフィールド804のいずれかに対して入力を行った場合はS32に進む。S32では警告画面を表示する。
【0059】
図14は、S32で表示を行う警告画面の一例を示す図である。この例では送信ジョブの実行中であるため、画面を切り替えることは可能だが、切り替えてしまうとジョブの結果確認は別途行う必要がある点を警告する。ユーザは当該警告画面に表示された質問に対して、「はい」ボタン1401、或いは「いいえ」ボタン1402のいずれかを押下するとS33に進む。
【0060】
S33では、画面操作制御部445が、警告画面でユーザが入力したボタンを判定する。ここでユーザが「はい」ボタン1401を押下したと判定した場合は、画面遷移を実行する指示であるためS34の処理に進む。「いいえ」ボタン1703を押下した場合には画面遷移を実行しないのでS36に進む。S34で、Webブラウザ440はジョブステータス管理部460に画面を切り替える旨を通知する。そしてS35で、ユーザに指示された画面への切り替えを実施する。尚、ジョブステータス管理部460は、画面切り替えの通知を受けると図12(B)に示すジョブの監視処理を終了する。またS36では、ユーザによる画面の遷移が発生する操作をキャンセルし、S31のユーザによる画面遷移操作の待機に戻る。
【0061】
以上説明したように本実施形態3によれば、前述の実施形態1,2の効果に加え、より詳細な制御を行うことでユーザビリティを向上させることが可能となる。
【0062】
[実施形態4]
次に本発明に係る実施形態4について説明する。この実施形態4は、前述の実施形態1〜3において、画面操作の抑制制御中に制御スクリプトからの画面遷移に失敗した場合や、Webブラウザ440が強制的に終了された場合の処理に関して説明する。尚、この実施形態4に係る情報処理システム、MFP101及びWebサーバ102の構成は前述の実施形態1と同様であるため、その説明を省略する。
【0063】
図5に示す一連の処理で示したとおり、Webブラウザ440は、機能の実行結果に応じて再度Webサーバ102へHTTP要求を行い、ジョブを継続処理するための画面と制御スクリプトとを取得し処理を進めていく。ジョブが実行中で画面操作の抑制制御が行われているときに、このWebサーバ102へのHTTP要求が何らかの要因で失敗した場合、Webブラウザ440はジョブを継続することができなくなる。これにより、処理中のジョブがMFP101に滞留し、Webブラウザ440に対するユーザの操作も禁止された状態のままとなってしまう。また、MFP101には、ユーザのログオフ機能のように現在実行中のWebブラウザ440を強制的に終了してしまう機能が存在する。この場合も同様に処理中のジョブがMFP101に滞留してしまうことになる。
【0064】
図15は、実施形態4において、画面操作制御部445が画面操作抑制を実行中にWebブラウザ440が行う処理を説明するフローチャートである。尚、この処理は、HDD214からRAM213にロードされたプログラムをCPU211が実行することによりなされる。
【0065】
まずS41で、Webブラウザ440は、MFP101より終了要求を受けたか否かを判定する。終了要求を受けた場合はS43に進んで、実行中のジョブをキャンセルする。一方、S41で終了要求を受けていない場合はS42に進み、HTTP要求に失敗したか否かを判定する。HTTP要求が失敗したと判定した場合はS43に進む。失敗していないと判定したときはS41の処理に戻る。S43ではジョブのキャンセルを行う。このときWebブラウザ440は、ジョブステータス管理部460に通知しジョブのキャンセルを行う。
【0066】
以上説明したように本実施形態4によれば、HTTPリクエストに失敗した場合やブラウザが終了された場合でも適切に処理を終了することが可能となる。
【0067】
[実施形態5]
次に本発明に係る実施形態5について説明する。この実施形態5では、サービスプロバイダ450がMFP101の機能を実行中であることを示す「実行中画面」を、操作部219に表示する場合を想定している。ここで、「実行中画面」とは図6のスキャン画面603や送信中画面604のような画面である。このような場合において、MFP101では以下のような問題が発生する可能性がある。
【0068】
MFP101は、Webブラウザ440で表示した操作画面をユーザが操作することにより何らかの指示が入力されると、当該指示をWebサーバ102に通知する。その後、MFP101は、当該指示に応じた処理の実行をWebサーバ102から要求されるまでの間に、ユーザの操作に応じて、表示中の操作画面を他の操作画面に遷移させる場合がある。
【0069】
例えば、MFP101が、Webブラウザ440で表示した操作画面を介して入力された指示をWebサーバ102に通知した後、Webブラウザ440を閉じ、MFP101内の他のアプリケーションが提供する操作画面に表示を遷移させる場合である。あるいは、MFP101が、Webブラウザ440自体は起動させたままの状態で、MFP101内の他のアプリケーションが提供する操作画面を、Webブラウザ440による操作画面よりも前面に新たに表示させる場合である。このような場合には、Webサーバ102から要求される処理が、当該処理の実行においてユーザの操作を必要とするものであると、当該処理を実行したとしても、処理過程においてユーザに必要な操作を行わせることができない可能性がある。その結果、当該処理を実行することが無駄になってしまう可能性がある。例えば、Webサーバ102から要求される処理が原稿の読取処理であり、かつ、読取処理によって得られた画像データをプレビュー機能によりユーザに確認させる必要がある場合、Webブラウザ440が表示されていないとプレビューを行うことができない。その結果、Webサーバ102から要求された処理における各工程のうち、プレビューよりも後の工程に実行を進めることが不可能となり、既に実行済みの処理が無駄になってしまうことになる。
【0070】
あるいは、例えば、ユーザが、Webブラウザ440の操作画面を介して指示を入力した後に、表示中の操作画面を他の操作画面に遷移させた場合に、当該指示に応じたWebサーバ102からの要求が遅れてMFP101に到達する場合である。この場合、MFP101は、要求された処理の実行を開始すると、MFP101自体が保持する画面情報に基づいて、Webサーバ102から要求される処理の実行中であることを示す「実行中画面」を操作部219において最前面に表示する。その結果、操作部219において画面遷移後の操作画面をユーザが操作している間に、「実行中画面」が最前面に表示されてしまい、ユーザの操作が阻害されてしまう。
【0071】
実施形態5は、このような問題に対処するために、MFP101において、Webサーバ102からの要求に基づく処理を実行する際に、操作画面の遷移を制限することを特徴とする。ここで、前述の実施形態1では、画面遷移を抑制するか否かについて、ジョブの処理中か否かのみに基づいて判断していた。これに対して、実施形態5では、Webブラウザ440がサービスプロバイダ450へ画面遷移の禁止を要求することによって、画面遷移を抑制する点で、実施形態1と異なっている。尚、以下では、この実施形態5に係る情報処理システム、MFP101及びWebサーバ102の構成において、これまでに説明した実施形態と共通する部分については、その説明を省略する。
【0072】
図4(b)は、実施形態5に係る情報処理システムのソフトウェア構成を示す図である。ここでは、図4(a)と異なる部分についてのみ説明する。主制御部480は、MFP101における各機能部を制御する。サービスプロバイダ450は、通信部451及びジョブ生成部452に加えて、画面表示部453を有する。ここで、画面表示部443は、解析部442によるHTMLデータの解析結果に基づいて作成した画面を操作部219に表示するのに対して、画面表示部453は、サービスプロバイダ450における処理に基づいて作成した画面を操作部219に表示する。画面制御部470は、操作部219の画面表示について、Webブラウザ440の画面表示部443による表示とサービスプロバイダ450の画面表示部453による表示との切り替えを、主制御部480を介して制御する。なお、実施形態5では、MFP101はジョブのステータスに関する判断を行う必要がないため、図4(b)にはジョブステータス管理部460を図示していない。
【0073】
図16は、実施形態5において、MFP101のサービスプロバイダ450が、要求を受信したときに行う一連の処理を説明するフローチャートである。当該フローチャートにおける各ステップの動作は、MFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。以下では、Webサーバ102のWebアプリケーション410によってサービスプロバイダ450に対して要求される処理の内容が、「ScanToFTP」である場合について説明する。
【0074】
S1601で、サービスプロバイダ450の通信部431は、Webサーバ102のWebアプリケーション410からの要求、又はMFP101内のWebブラウザ440からLocalLoopbackによる要求を受信する。当該受信に応じて、S1602で、サービスプロバイダ450は、S1601で受信した要求により実行すべき処理の内容を判断する。ここで、サービスプロバイダ450は、Webブラウザ440からLocalLoopbackによる画面遷移禁止要求を受信したことにより、当該処理内容が画面遷移の禁止であると判断した場合、処理をS1607へ進める。S1607で、サービスプロバイダ450は、画面制御部470に対して、操作部219に表示中の画面の切り替えを禁止することを指示する。この処理は、後述する図17におけるS1703及びS1704に対応する。当該指示に応じて、画面制御部470は、例えば、ユーザが操作部219を操作して、Webブラウザ440の画面表示部443による表示画面を閉じて別の画面を表示しようとしても、当該操作をキャンセルする制御を実行する。
【0075】
一方、S1602で、サービスプロバイダ450は、Webアプリケーション410から「ScanToFTP」の実行要求を受信したことにより、当該処理内容が「ScanToFTP」であると判断した場合、処理をS1603に進める。S1603で、サービスプロバイダ450の画面表示部453は、「ScanToFTP」を実行中であることを示す「実行中画面」を作成するとともに、当該画面を操作部219に表示することを画面制御部470に対して指示する。ここでは、画面表示部453は、例えば図6に示すスキャン画面603や送信中画面604を「実行中画面」として表示する。
【0076】
次に、サービスプロバイダ450は、S1604で、Webアプリケーション410に対して正常応答を行った後に、S1605で、「ScanToFTP」の処理を実行する。S1605で、サービスプロバイダ450の画面表示部453は、S1603で表示した「実行中画面」を、実行経過を示すように更新してもよい。また、S1603〜S1605の処理の間は、操作部219の表示画面を介したユーザの操作を、スキャン画面603又は送信中画面604の範囲内とし、他の操作画面へ遷移することを禁止としてもよい。「ScanToFTP」の処理が終了すると、S1603へ進み、サービスプロバイダ450は、「実行中画面」を閉じて、要求の受信に応じた一連の処理を終了する。
【0077】
図17は、Webアプリケーション410から要求される処理の内容が「ScanToFTP」である場合の、MFP101及びWebサーバ102を含む情報処理システム全体における処理の流れを示すシーケンス図である。
【0078】
S1701で、Webブラウザ440は、予めWebブラウザ440に登録されたURL、又はユーザにより任意に指定されたURLに従って、Webサーバ102(Webアプリケーション410)にアクセスし、操作画面を要求する。当該要求を受信したWebアプリケーション410は、その応答として、S1702で、Webブラウザ440が操作部219に操作画面を表示するための画面データであるHTMLファイルを、MFP101(Webブラウザ440)に対して送信する。
【0079】
当該HTMLファイルを受信したWebブラウザ440は、S1703で、当該HTMLファイルに記載された制御スクリプトに従って、サービスプロバイダ450に対して、画面遷移禁止要求をLocalLoopbackにより送信する。当該画面遷移禁止要求を受信したサービスプロバイダ450は、S1704で、画面制御部470に対して、ユーザによる操作に応じた画面遷移の禁止を指示する。これにより、画面制御部470は、それ以降に、操作画面を介してユーザによって画面遷移の指示が入力されたとしても、Webアプリケーション410から要求される処理が完了するまでは、当該画面遷移の指示をキャンセルするように制御する。
【0080】
次に、S1705で、Webブラウザ440は、S1702で受信したHTMLファイルに基づいて操作画面を操作部219に表示して、ユーザによる操作を受け付ける。ここで、ユーザが「ScanToFTP」の実行を当該操作画面を用いて指示すると、S1706で、Webブラウザ440は、当該指示をWebアプリケーション410に通知する。
【0081】
S1707で、Webアプリケーション410は、受信した通知に応じて、サービスプロバイダ450に対して「ScanToFTP」の実行を要求する。この要求を受信を受信すると、S1708で、画面表示部453は、処理の実行に合わせて、図6に示すスキャン画面603及び送信中画面604を「実行中画面」として表示することを画面制御部470に指示する(図16のS1603に対応)。さらに、S1709で、サービスプロバイダ450は、Webアプリケーション410に対して、S1707の要求に対する正常応答を行う(図16のS1604に対応)。Webアプリケーション410から要求される処理の実行中においては、「実行中画面」からの画面遷移の指示は画面制御部470によってキャンセルされる。
【0082】
その後、サービスプロバイダ450は、S1710で、要求された読取処理を実行するとともに(図16のS1605に対応)、S1711で、当該読取処理によって得られた画像データをWebアプリケーション410に送信する。サービスプロバイダ450から画像データを受信したWebアプリケーション410は、S1712で、当該画像データをWebブラウザ440に送信する。
【0083】
S1713で、Webブラウザ440は、Webアプリケーション410から受信した画像データをプレビュー機能により操作部219に表示することで、読取処理によって得られた画像データの内容をユーザに確認させる。画像データの内容を確認したユーザが、Webブラウザ440により表示される操作画面を介して画像データの送信の実行を指示すると、S1714で、Webブラウザ440は、当該指示をWebアプリケーション410に通知する。Webアプリケーション410は、当該指示を受信すると、S1715で、読取処理によって得られた画像データのFTP送信を実行する。なお、FTP送信の宛先は、S1705で表示される操作画面を介してユーザが指定されているものとする。
【0084】
以上説明したように、実施形態5によれば、MFP101は、Webアプリケーション410から提供された制御スクリプトの内容に応じて、ユーザに対して画面遷移操作の禁止(キャンセル)を行う。即ち、受信した制御スクリプトにLocalLoopbackによる画面遷移禁止要求の処理の内容が記載されていた場合は、操作部219に表示されたWebブラウザ440による操作画面を他の操作画面に遷移させることを禁止する。
【0085】
これにより、操作部219に表示された画面が他の操作画面に切り替えられる(例えば、Webブラウザが閉じられる)ことにより、制御スクリプトによって要求されたその後の処理の実行が阻害されることを防止することができる。また、例えば、読取処理によって生成された画像データについて、プレビュー機能による確認処理を必要とする場合に、その確認処理がなされない状態が継続することで、画像データがWebサーバ102内に留まってしまうことを防止することができる。さらには、操作部219に表示された操作画面が切り替わった後に、制御スクリプトで要求された処理の実行の開始に応じて「実行中画面」が表示されることによってユーザが操作中の操作画面の表示が阻害されることを防止することができる。なお、本実施形態では、Webアプリケーション410から要求される処理として、「ScanToFTP」を一例として説明したが、他の様々な処理を適用可能である。
【0086】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webサーバから指示されたジョブを実行する処理手段と、
前記処理手段が実行するジョブのステータスを管理する管理手段と、
前記管理手段が管理しているジョブのステータスに応じて、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記画面遷移は、前記操作画面に表示された所定のボタン操作により発生するものであることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記制御手段は、前記管理手段が管理しているジョブのステータスが実行中である場合に、前記受付手段による指示の受付を制限することを特徴とする請求項1に記載の情報処理装置。
【請求項4】
ユーザに対して画面遷移を行うかどうかを問い合わせるための確認画面を表示する確認画面表示制御手段を更に有し、
前記制御手段は、前記確認画面を介してユーザが画面遷移を許可した場合、前記受付手段による指示の受付を許可することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項5】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置の制御方法であって、
ユーザからの画面遷移の指示を受け付ける受付工程と、
前記Webサーバから指示されたジョブを実行する処理工程と、
前記処理工程で実行されるジョブのステータスを管理する管理工程と、
前記管理工程で管理されているジョブのステータスに応じて、前記受付工程における指示の受付を制限する制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項6】
コンピュータを、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置として機能させるためのプログラムであって、前記コンピュータを、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webサーバから指示されたジョブを実行する処理手段と、
前記処理手段が実行するジョブのステータスを管理する管理手段と、
前記管理手段が管理しているジョブのステータスに応じて、前記受付手段による指示の受付を制限する制御手段と、
を有する情報処理装置として機能させるプログラム。
【請求項7】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理手段と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定手段と、
前記判定手段によって前記禁止要求が提供されていると判定されると、前記処理手段が処理を実行している間、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする情報処理装置。
【請求項8】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置の制御方法であって、
ユーザからの画面遷移の指示を受け付ける受付工程と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理工程と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定工程と、
前記判定工程において前記禁止要求が提供されていると判定されると、前記処理工程で処理が実行されている間、前記受付工程における指示の受付を制限する制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項9】
コンピュータを、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置として機能させるためのプログラムであって、前記コンピュータを、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理手段と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定手段と、
前記判定手段によって前記禁止要求が提供されていると判定されると、前記処理手段が処理を実行している間、前記受付手段による指示の受付を制限する制御手段と、
を有する情報処理装置として機能させるプログラム。
【請求項1】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webサーバから指示されたジョブを実行する処理手段と、
前記処理手段が実行するジョブのステータスを管理する管理手段と、
前記管理手段が管理しているジョブのステータスに応じて、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記画面遷移は、前記操作画面に表示された所定のボタン操作により発生するものであることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記制御手段は、前記管理手段が管理しているジョブのステータスが実行中である場合に、前記受付手段による指示の受付を制限することを特徴とする請求項1に記載の情報処理装置。
【請求項4】
ユーザに対して画面遷移を行うかどうかを問い合わせるための確認画面を表示する確認画面表示制御手段を更に有し、
前記制御手段は、前記確認画面を介してユーザが画面遷移を許可した場合、前記受付手段による指示の受付を許可することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項5】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置の制御方法であって、
ユーザからの画面遷移の指示を受け付ける受付工程と、
前記Webサーバから指示されたジョブを実行する処理工程と、
前記処理工程で実行されるジョブのステータスを管理する管理工程と、
前記管理工程で管理されているジョブのステータスに応じて、前記受付工程における指示の受付を制限する制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項6】
コンピュータを、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置として機能させるためのプログラムであって、前記コンピュータを、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webサーバから指示されたジョブを実行する処理手段と、
前記処理手段が実行するジョブのステータスを管理する管理手段と、
前記管理手段が管理しているジョブのステータスに応じて、前記受付手段による指示の受付を制限する制御手段と、
を有する情報処理装置として機能させるプログラム。
【請求項7】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置であって、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理手段と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定手段と、
前記判定手段によって前記禁止要求が提供されていると判定されると、前記処理手段が処理を実行している間、前記受付手段による指示の受付を制限する制御手段と、
を有することを特徴とする情報処理装置。
【請求項8】
Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置の制御方法であって、
ユーザからの画面遷移の指示を受け付ける受付工程と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理工程と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定工程と、
前記判定工程において前記禁止要求が提供されていると判定されると、前記処理工程で処理が実行されている間、前記受付工程における指示の受付を制限する制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項9】
コンピュータを、Webサーバと通信可能であり、当該Webサーバにより提供される操作画面を表示するWebブラウザを備えた情報処理装置として機能させるためのプログラムであって、前記コンピュータを、
ユーザからの画面遷移の指示を受け付ける受付手段と、
前記Webブラウザに表示された操作画面を用いたユーザの操作に応じて前記Webサーバから要求される処理を実行する処理手段と、
前記Webサーバから、前記操作画面とともに、前記画面遷移を禁止することを示す禁止要求が提供されているか否かを判定する判定手段と、
前記判定手段によって前記禁止要求が提供されていると判定されると、前記処理手段が処理を実行している間、前記受付手段による指示の受付を制限する制御手段と、
を有する情報処理装置として機能させるプログラム。
【図1】
【図2】
【図3】
【図4a】
【図4b】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4a】
【図4b】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2011−142608(P2011−142608A)
【公開日】平成23年7月21日(2011.7.21)
【国際特許分類】
【出願番号】特願2010−208434(P2010−208434)
【出願日】平成22年9月16日(2010.9.16)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成23年7月21日(2011.7.21)
【国際特許分類】
【出願日】平成22年9月16日(2010.9.16)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]