JP2013142965A - プログラム生成装置、その制御方法、および、プログラム生成用プログラム - Google Patents
プログラム生成装置、その制御方法、および、プログラム生成用プログラム Download PDFInfo
- Publication number
- JP2013142965A JP2013142965A JP2012002163A JP2012002163A JP2013142965A JP 2013142965 A JP2013142965 A JP 2013142965A JP 2012002163 A JP2012002163 A JP 2012002163A JP 2012002163 A JP2012002163 A JP 2012002163A JP 2013142965 A JP2013142965 A JP 2013142965A
- Authority
- JP
- Japan
- Prior art keywords
- program
- application
- script
- processing
- mfp
- 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.)
- Pending
Links
Images
Abstract
【課題】ユーザーが過去の操作履歴等の操作内容を利用して情報処理装置を簡単に操作でき、かつ、アプリケーション開発者による情報処理装置の制御プログラムの修正等の煩雑な作業を必要としない、プログラム生成装置を提供する。
【解決手段】MFPにおいて、ユーザーが、設定値を入力してアプリケーションの実行を指示すると、それ以降の当該ユーザーについての表示画面には、アイコン511が追加される。アイコン511は、上記設定値を含むアプリケーションプログラム(スクリプト)の起動を指示するためのアイコンである。当該スクリプトは、既存のスクリプトに対して、ユーザーが入力した情報に基づいた変更が加えられている。
【選択図】図16
【解決手段】MFPにおいて、ユーザーが、設定値を入力してアプリケーションの実行を指示すると、それ以降の当該ユーザーについての表示画面には、アイコン511が追加される。アイコン511は、上記設定値を含むアプリケーションプログラム(スクリプト)の起動を指示するためのアイコンである。当該スクリプトは、既存のスクリプトに対して、ユーザーが入力した情報に基づいた変更が加えられている。
【選択図】図16
Description
本発明は、プログラム生成装置、その制御方法、および、プログラム生成用プログラムに関し、特に、ユーザーが情報処理装置に対して行なった操作内容に従って操作プログラムを生成するための、プログラム生成装置、その制御方法、および、プログラム生成用プログラムに関する。
従来から、画像形成装置等の装置において、ユーザーの操作に従った処理を実行し、かつ、一度なされた操作に従った処理と内容が同じ処理を容易な操作で実行するための技術が種々開示されている。
たとえば、特許文献1(特開2006−044167号公報)には、画像形成装置において、ユーザーの操作履歴を記録しておき、当該操作履歴を呼び出すことにより、当該操作履歴に従った画像形成動作を実行する技術が開示されている。また、当該画像形成装置では、上記のように呼び出された操作履歴の一部に変更させ、当該変更後の内容に従った画像形成動作も可能とされている。
また、特許文献2(特開2006−190033号公報)には、WWW(World Wide Web)ブラウザがHTML(HyperText Markup Language)ドキュメントを取得するためにWWWサーバーに接続する情報処理システムにおいて、これらの間に、中継装置、HTTP通信定義生成装置、および、HTTP通信再生装置を設ける技術が開示されている。当該中継装置は、WWWブラウザからの通信ログ記録開始リクエストから、通信ログ記録停止リクエストまでの間、WWWブラウザとWWWサーバーとの通信メッセージを通信ログとして格納する。HTTP通信定義生成装置は、中継装置からの通信ログを解析し、WWWブラウザからWWWサーバーに与えられたリクエストを再現するための通信定義情報を生成する。HTTP通信再生装置は、WWWブラウザーから再生開始リクエストを受け付けると、一連のリクエストをHTTP通信定義情報に基づき生成し、WWWサーバーに順次送信する。そして、一連のリクエストのうちの最後のリクエストに対するWWWサーバーのレスポンスをWWWブラウザに返信する。
しかしながら、上記したような過去の操作履歴や通信ログを利用して情報処理装置に処理を実行させようとした場合、当該情報処理装置においてアプリケーションが追加されたとき、当該追加されたアプリケーションについては操作履歴や通信ログが利用できないという事態が想定される。したがって、そのような場合、アプリケーション開発者が、操作履歴や通信ログを利用できるようにするために制御プログラムを修正する必要があり、当該開発者に煩雑な作業を強いることとなる。
本発明は、係る実情に鑑み考え出されたものであり、その目的は、ユーザーが過去の操作履歴等の操作内容を利用して情報処理装置を簡単に操作でき、かつ、アプリケーション開発者による情報処理装置の制御プログラムの修正等の煩雑な作業を必要としない、プログラム生成装置、その制御方法、および、プログラム生成用プログラムを提供することである。
本発明に従ったプログラム生成装置は、アプリケーションの実行の指示に基づいてプログラムを生成するためのプログラム生成装置であって、アプリケーションを実行するためのプログラムを記憶するための記憶手段と、アプリケーションの実行の指示、および、当該アプリケーションの実行における設定値を入力するための入力手段と、入力手段に実行の指示を入力されたアプリケーションのプログラムを記憶手段から読み出して処理するためのプログラム処理手段とを備え、プログラム処理手段は、プログラムを、入力手段に入力された設定値に応じて必要な箇所を変更して処理し、変更後のプログラムを記憶手段に記憶し、変更後のプログラムに関連付けられたアイコンを表示装置に表示し、アイコンに対して操作がなされたときは、記憶手段に記憶した変更後のプログラムを処理する。
好ましくは、記憶手段は、各プログラムを、当該プログラムがプログラム処理手段によって変更後のプログラムとして記憶されたものであるか否かを示す情報と関連付けて記憶し、プログラム処理手段は、入力手段に実行の指示を入力されたアプリケーションのプログラムが変更後のプログラムとして記憶手段に記憶されたものではないことを条件として、変更後のプログラムを記憶手段に記憶する。
好ましくは、他の装置と通信するための通信手段をさらに備え、プログラム処理手段は、入力手段に、他の装置への変更後のプログラムの送信の要求が入力された場合には、変更後のプログラムおよびアイコンを当該他の装置の表示部に表示するための指示を、他の装置に送信する。
好ましくは、画像処理動作を実行するための画像処理エンジンをさらに備え、プログラム処理手段は、画像処理エンジンによる画像処理動作やを駆動することによって、Webサービスとして画像処理についてのアプリケーションを実行する。
本発明に従ったプログラム生成装置の制御方法は、記憶手段を備え、アプリケーションの実行の指示に基づいてプログラムを生成するためのプログラム生成装置のコンピューターによって実行される、当該プログラム生成装置の制御方法であって、アプリケーションを実行するためのプログラムを記憶手段に記憶するステップと、アプリケーションの実行の指示、および、当該アプリケーションの実行における設定値を入力するステップと、実行の指示を入力されたアプリケーションのプログラムを、記憶手段から読み出し、入力された設定値に応じて必要な箇所を変更して処理するステップと、変更後のプログラムを記憶手段に記憶するステップと、変更後のプログラムに関連付けられたアイコンを表示装置に表示するステップと、アイコンに対して操作がなされた場合に、記憶手段に記憶した変更後のプログラムを処理するステップとを備える。
本発明に従ったプログラム生成用プログラムは、記憶手段を備え、アプリケーションの実行の指示に基づいてプログラムを生成するためのプログラム生成装置のコンピューターによって実行される、プログラム生成用プログラムであって、コンピューターに、アプリケーションを実行するためのプログラムを記憶手段に記憶するステップと、アプリケーションの実行の指示、および、当該アプリケーションの実行における設定値を入力するステップと、実行の指示を入力されたアプリケーションのプログラムを、記憶手段から読み出し、入力された設定値に応じて必要な箇所を変更して処理するステップと、変更後のプログラムを記憶手段に記憶するステップと、変更後のプログラムに関連付けられたアイコンを表示装置に表示するステップと、アイコンに対して操作がなされた場合に、記憶手段に記憶した変更後のプログラムを処理するステップとを実行させる。
本発明によれば、アプリケーション開発者による制御プログラムの修正等の煩雑な作業を必要とすることなく、ユーザーが、過去の操作履歴等の操作内容を利用して情報処理装置を簡単に操作できる。
以下、本発明に係るプログラム作成装置の実施の形態について、図面を参照して説明する。なお、各図において、同様の作用および機能を奏する構成要素については、同じ符号を付し、その説明は繰返さない。
<画像処理システムの構成>
図1は、本発明に係るプログラム生成装置の一実施の形態であるMFP(Multi-Functional Peripheral)を含む画像処理システムの概略構成を示す図である。
図1は、本発明に係るプログラム生成装置の一実施の形態であるMFP(Multi-Functional Peripheral)を含む画像処理システムの概略構成を示す図である。
図1を参照して、画像処理システムは、ネットワーク500を介して通信可能なMFP100,200およびパーソナルコンピューター(PC)300を含む。
MFP100は、自機において受け付けた操作に従って、画像処理動作を含む種々の動作を実行する。また、MFP100は、ネットワーク500を介してPC300等からの要求に応じても、種々の動作を実行する。MFP100は、Webサーバーとして機能することができ、また、上記した種々の動作を、Webサービスとして画像処理や電子メールを送受信するためのアプリケーションを実行することができる。
MFP100は、アプリケーションの実行を指示された場合、当該実行の指示の履歴を、指示の際に入力された設定値とともに、履歴として格納する。なお、MFP100では、当該履歴が、プログラムとして格納される。本明細書では、アプリケーションの実行のために処理されるプログラムは、1以上のスクリプトの集合体として表現される場合もある。
<MFPのハードウェア構成>
図2は、MFP100のブロック図である。
図2は、MFP100のブロック図である。
図2を参照して、MFP100は、当該MFP100の動作を全体的に制御するCPU(Central Processing Unit)10に加え、RAM(Random Access Memory)11と、NV−RAM(Non Volatile Random Access Memory)12とを含む。CPU10は、適切なプログラムを処理することにより、ブラウザー10A、Webサーバー10B、スクリプトエンジン10C、新モジュール制御部10D、および、common処理部10Eとして機能する。
Webサーバー10Bは、後述するようなスキャンアプリケーションやコピーアプリケーション等のサービスを提供する。ブラウザー10Aは、Webサーバー10Bによるサービス提供のためのホームページをタッチパネル50に表示させる。スクリプトエンジン10Cは、Webサーバー10Bによって提供されるサービスを実現するために、スクリプトを実行(処理)する。新モジュール制御部10Dは、MFP100において実行を指示されたアプリケーションについて、当該指示の際に入力された設定値を含めた処理を実行するためのプログラム(スクリプト)を作成する。common処理部10Eは、MFP100において、情報の入出力等の一般的な処理を実行する。
RAM11は、CPU10のワークエリアとして機能する。NV−RAM12は、MFP100の初期設定等のデータを記憶する。
MFP100は、さらに、ハードディスクドライブ(HDD)20を含む。HDD20は、CPU10が処理するプログラムを記憶するためのプログラム記憶部21と、各種のデータを記憶するためのデータ記憶部22とを含む。上記したスクリプトは、たとえばプログラム記憶部21に格納される。
CPU10が処理するプログラムは、MFP100の出荷時等、予めHDD20に格納されている場合もあれば、ネットワーク経由でダウンロードされてHDD20に格納される場合もある。また、プログラムは、MFP100に対して着脱可能な記憶媒体400に格納され、CPU10は、メディアドライブ40を介して当該記憶媒体から読み出し、当該プログラムを処理する場合もある。記憶媒体400としては、CD−ROM(Compact Disc - Read Only Memory)、DVD−ROM(Digital Versatile Disk - Read Only Memory)、USB(Universal Serial Bus)メモリー、メモリーカード、FD(Flexible Disk)、ハードディスク、磁気テープ、カセットテープ、MO(Magnetic Optical Disc)、MD(Mini Disc)、IC(Integrated Circuit)カード(メモリーカードを除く)、光カード、マスクROM、EPROM、EEPROM(Electronically Erasable Programmable Read-Only Memory)などの、不揮発的にプログラムを格納する媒体が挙げられる。
また、MFP100は、操作パネル150と、エンジン13とを含む。操作パネル150は、MFP100の本体に設けられたハードウェアキー(以下、「ハードキー」と略す)15と、タッチセンサー51と、液晶表示装置等からなるディスプレイ52とを含む。操作パネル150の構成は、図3等を参照して後述する。エンジン13は、スキャナーやプリンターなどの画像処理動作を実行する要素を含む。
図3は、操作パネル150の平面図である。
図3を参照して、本発明の実施の形態1に従う操作パネル150では、タッチセンサー51がディスプレイ52に重ねられるように一体的に配置されることにより、タッチパネル50が構成されている。以下、本明細書では、タッチパネル50という文言が、その機能から、タッチセンサー51および/またはディスプレイ52と同義で使用される場合がある。
図3を参照して、本発明の実施の形態1に従う操作パネル150では、タッチセンサー51がディスプレイ52に重ねられるように一体的に配置されることにより、タッチパネル50が構成されている。以下、本明細書では、タッチパネル50という文言が、その機能から、タッチセンサー51および/またはディスプレイ52と同義で使用される場合がある。
また、操作パネル150には、複数のハードウェアボタンによって構成されるハードキー15が設けられている。なお、ハードキー15を構成するボタンの数や配列は、図3に示されたものに限定されない。
図4は、MFP200のブロック図である。
図4を参照して、MFP200は、基本的にはMFP100と同様のハードウェア構成を備えている。具体的には、MFP200は、当該MFP200の動作を全体的に制御するCPU210に加え、RAM211と、NV−RAM212とを含む。CPU210は、適切なプログラムを処理することにより、表示制御部210A、Webサーバー210B、スクリプトエンジン210C、新モジュール制御部10D、および、common処理部210Eとして機能する。表示制御部210Aは、後述するディスプレイ272の表示動作を制御する。なお、表示制御部210Aは、MFP100のブラウザー10Aとは異なり、ブラウザー機能は有していない。
図4を参照して、MFP200は、基本的にはMFP100と同様のハードウェア構成を備えている。具体的には、MFP200は、当該MFP200の動作を全体的に制御するCPU210に加え、RAM211と、NV−RAM212とを含む。CPU210は、適切なプログラムを処理することにより、表示制御部210A、Webサーバー210B、スクリプトエンジン210C、新モジュール制御部10D、および、common処理部210Eとして機能する。表示制御部210Aは、後述するディスプレイ272の表示動作を制御する。なお、表示制御部210Aは、MFP100のブラウザー10Aとは異なり、ブラウザー機能は有していない。
RAM211は、CPU210のワークエリアとして機能する。NV−RAM212は、MFP200の初期設定等のデータを記憶する。
MFP200は、さらに、HDD220を含む。HDD220は、CPU210が処理するプログラムを記憶するためのプログラム記憶部221と、各種のデータを記憶するためのデータ記憶部222とを含む。
CPU210が処理するプログラムは、MFP200の出荷時等、予めHDD220に格納されている場合もあれば、ネットワーク経由でダウンロードされてHDD220に格納される場合もある。また、プログラムは、MFP200に対して着脱可能な記憶媒体400に格納され、CPU210は、メディアドライブ240を介して当該記憶媒体から読み出し、当該プログラムを処理する場合もある。
また、MFP200は、操作パネル260と、エンジン213とを含む。操作パネル260は、MFP200の本体に設けられたハードキー215と、タッチセンサー271と、液晶表示装置等からなるディスプレイ272とを含む。タッチセンサー271とディスプレイ272によって、タッチパネル250が構成される。
<プログラム生成処理>
図5は、MFP100においてアプリケーションの実行指示があった場合に、当該指示の入力の際に併せて入力された設定値を含めた処理内容の組合せに対応するプログラムを生成する処理のシーケンス図である。
図5は、MFP100においてアプリケーションの実行指示があった場合に、当該指示の入力の際に併せて入力された設定値を含めた処理内容の組合せに対応するプログラムを生成する処理のシーケンス図である。
本実施の形態では、まず、ユーザーは、MFP100にログインする。これにより、タッチパネル50には図6に示されるような画面が表示される。
図6を参照して、タッチパネル50には、アイコン501〜503が表示されている。アイコン501は、スキャンアプリケーションを実行させるために操作される。アイコン502は、コピーアプリケーションを実行させるために操作される。アイコン503は、ファイルのアップロードするアプリケーション(以下、「アップロードアプリケーション」ともいう)を実行させるために操作される。
MFP100では、上記したようなスキャンアプリケーション、コピーアプリケーション、および、アップロードアプリケーションは、Webサーバー10BによってWebサービスとして提供される。本明細書では、このようにWebサーバー10BによってWebサービスとして提供されるアプリケーションを、「IWS(Internal Web Server)アプリ」ともいう。
ログイン時等にタッチパネル50に表示されるアイコンの種類は、ユーザー管理テーブルにおいて、ログインユーザーに関連付けられているアプリケーションの種類に応じて決定される。データ記憶部22には、ユーザー毎に、利用可能なアプリケーションを特定するためのユーザー管理テーブルが格納されている。図7は、ユーザー管理テーブルの内容の一例を模式的に示す図である。
図7を参照して、ユーザー管理テーブルには、ユーザー名と、アプリケーション毎のID(アプリID)と、アプリケーションのプログラムが格納されるアドレス(URL(Uniform Resource Locator))と、自動生成済フラグの状態(「済」または「未」)と、スクリプト管理テーブルIDとが、互いに関連付けられて登録されている。
図7に示されたユーザー管理テーブルでは、ユーザーA(表3中の「userA」)は、「IWS_Scan_ID」「IWS_Copy_ID」「IWS_Upload_ID」という3つのアプリケーションに関連付けられている。「IWS_Scan_ID」は、スキャナーで原稿の画像データを生成するスキャン処理のアプリケーションである。「IWS_Copy_ID」は、スキャナーで原稿の画像データを生成し、当該画像データの画像を形成するコピー処理のアプリケーションである。「IWS_Upload_ID」は、MFP100に格納されたデータをネットワーク上にアップロードするアップロード処理のアプリケーションである。
ブラウザー10Aは、タッチパネル50に、ユーザー管理テーブルにおいてログインユーザーに関連付けられているアプリケーションを起動させるためのアイコンを表示させる。図6の画面は、ユーザーAがログインしたときの画面に相当する。アイコン501,502,503は、それぞれ、図7のユーザー管理テーブルにおいてユーザーAに関連付けられた「IWS_Scan_ID」,「IWS_Copy_ID」,「IWS_Upload_ID」に対応する。
自動生成済フラグについては、後述する。
スクリプト管理テーブルIDは、各アプリケーションのプログラムを構成するスクリプトの情報を管理するテーブルを特定する。
スクリプト管理テーブルIDは、各アプリケーションのプログラムを構成するスクリプトの情報を管理するテーブルを特定する。
図8は、スクリプト管理テーブルIDが「1」であるスクリプト管理テーブルの内容の一例を模式的に示す図である。
図8を参照して、スクリプト管理テーブルでは、スクリプト名と、スクリプトIDと、設定値置き場と、自動生成処理置き場とが、互いに関連付けられて格納されている。スクリプト名は、アプリケーションのプログラムを構成する各スクリプトの名称である。スクリプトIDは、各スクリプトを特定する情報である。設定値置き場は、既に登録されているスクリプトを実行するための設定値の格納場所を特定する情報である。「なし」とされている場合には、そのような設定値の登録がないことを意味している。自動生成処理置き場は、各スクリプトの格納場所を特定する情報である。
図8には、「scan_screen1.py」「scan_screen2.py」「scan_screen3.py」の3つの名称のスクリプトの情報が登録されている。図8は、図7のスクリプト管理テーブルIDの「1」に対応するスクリプト管理テーブルが示されている。つまり、図7のアプリIDが「IWS_Scan_ID」のプログラムは、図8の「scan_screen1.py」「scan_screen2.py」「scan_screen3.py」の3つのスクリプトを含むことを意味する。
図5に戻って、図6のような画面が表示された状態で、ユーザーがIWSアプリの起動を指示すると、ブラウザー10Aは、Webサーバー10Bに対して、当該IWSアプリの実行に関するコンテンツを要求する。本明細書では、起動を指示されるIWSアプリとして、スキャンアプリケーションを例示する。
Webサーバー10Bは、ブラウザー10Aからのコンテンツの要求に応じて、当該要求を解析し、そして、起動を指示されたアプリケーションについて、スクリプトが登録済か否かをチェックする(図5中のステップSA)。具体的には、Webサーバー10Bは、起動を要求されたアプリケーションについて、自動生成済フラグの状態のチェックを、新モジュール制御部10Dに対して要求する。
新モジュール制御部10Dは、Webサーバー10Bからの要求に応じて、common処理部10Eに対して、現在MFP100にログインしているユーザーを特定する情報を要求する。common処理部10Eは、当該要求に応じて、ログインユーザーを特定する情報(たとえば、ログインID)を新モジュール制御部10Dに通知する。
新モジュール制御部10Dは、common処理部10Eから通知されたユーザーについて、ユーザー管理テーブル(図7参照)における、Webサーバー10Bから要求を受けたアプリケーションの自動生成済フラグの状態を参照する。
そして、新モジュール制御部10Dは、自動生成済フラグの状態が「未」であれば、その旨をWebサーバー10Bに返信するとともに、自動作成中フラグをONして、それ以降の処理を進める。
一方、自動生成済フラグが「済」であった場合には、新モジュール制御部10Dは、Webサーバー10Bに対してその旨を通知する。これに応じて、Webサーバー10Bは、スクリプトエンジン10Cに、起動を指示されたアプリケーションのプログラムを構成するスクリプトの実行を指示して、処理を終了する。
なお、図5には、起動を指示されたアプリケーションについての自動生成済フラグが「未」であった場合の処理のみが記載されている。
新モジュール制御部10Dから自動生成済フラグが「未」である旨の通知を受けると、Webサーバー10Bは、スクリプトエンジン10Cに対して、起動を指示されたアプリケーションのプログラムを構成するスクリプトの起動を指示する。これに応じて、スクリプトエンジン10Cは、当該スクリプトの実行結果をWebサーバー10Bに通知する。
また、スクリプトエンジン10Cにおけるスクリプトの起動と並行して、新モジュール制御部10Dは、スクリプト保存処理を実行する(ステップSB(1))。
スクリプト保存処理では、スクリプトエンジン10Cは、新モジュール制御部10Dに対して、スクリプト/CGI(Computer Graphics Interface)保存要求を出す。これに応じて、新モジュール制御部10Dは、スクリプトエンジン10Cが起動したCGIスクリプトのコピーをHDD20に保存するとともに、当該CGIにFORMデータがあれば、それも併せてHDD20に保存する。
また、新モジュール制御部10Dは、保存したスクリプトを解析し、当該スクリプトに変更を加えるべき箇所を特定し、スクリプトを変更する。ここでもスクリプトの変更とは、たとえば、ユーザーがIWSアプリの起動の際に入力した情報に従って変更を意味する。
スクリプトエンジン10Cからのスクリプトの実行結果に応じて、Webサーバー10Bは、ブラウザー10Aに画面表示させるコンテンツを生成する。そして、Webサーバー10Bは、ブラウザー10Aに対して、当該コンテンツを送信する。これに応じて、ブラウザー10Aは、タッチパネル50に当該コンテンツを表示させる。これにより、ユーザーは、表示されたコンテンツを視認することができる。
図9は、このときにタッチパネル50に表示される画面の一例を示す図である。図9には、ユーザーによるIWSアプリの起動指示の結果としてタッチパネル50に表示される画面が示されている。なお、図9の画面は、IWSアプリとしてスキャンアプリケーションが選択されたときの、当該スキャン条件設定のための画面である。ここで、設定される条件としては、ファイル形式、解像度、および、カラー(カラー/モノクロ)が挙げられる。
ユーザーが、各条件についての設定内容を入力した後、スタートボタン507を操作すると、ブラウザー10Aは、IWSアプリについての起動の条件を取得する。これに応じたアプリケーションの実行の指示をWebサーバー10Bに送る。このとき、ブラウザー10Aは、指示したアプリケーションの実行に関するコンテンツを、Webサーバー10Bに要求する。図5では、スタートボタン507に対する操作は、「OK押下」に対応している。
ブラウザー10Aからのアプリケーションの実行指示があると、Webサーバー10Bは、当該アプリケーションの実行のためのスクリプトの起動の指示をスクリプトエンジン10Cに送る。
スクリプトエンジン10Cは、Webサーバー10Bからの指示に応じてスクリプトを起動するとともに、その結果をWebサーバー10Bに通知する。なお、スクリプトエンジン10Cは、ユーザーが入力した設定値に従って既存の(予めHDD20に格納された)スクリプトに変更を加えて、スクリプトを実行する。このとき、新モジュール制御部10Dは、ステップSB(2)として、スクリプトエンジン10Cから、既存のスクリプトに対する変更箇所や変更内容を取得し、HDD20へ格納する。このとき、新モジュール制御部10Dは、当該スクリプトにFORMデータがあれば、それも合わせてHDD20へ保存する。これにより、スクリプトエンジン10Cが、ユーザーのアプリケーション実行指示の際に入力された設定値に基づいて、既存のスクリプトに変更を加え、当該変更後のスクリプトを実行した場合、当該変更後のスクリプトがHDD20へ保存される。
つまり、本実施の形態では、ユーザーの操作履歴ではなく、ユーザーの操作内容に応じたプログラム(スクリプト)自体が、HDD20に保存される。
図5に示されるように、本実施の形態では、スクリプトエンジン10Cがアプリケーションの実行のためにスクリプトを処理するのと並行して、新モジュール制御部10Dは、スクリプト保存処理を実行する。
スクリプトエンジン10Cは、スクリプトの実行中の適切なタイミングで、Webサーバー10Bに、実行状況を通知する。これに応じて、Webサーバー10Bは、当該実行状況を示す画面データ(コンテンツ)を生成し、ブラウザー10Aに対して表示を指示する。これに応じて、ブラウザー10Aは、タッチパネル50に画面を表示する。
図5は、スクリプトエンジン10CからWebサーバー10Bへの結果の通知(図5
では「OK」)、および、Webサーバー10Bからブラウザー10Aへのコンテンツの送信が1度だけ行なわれるように記載されているが、これらは、スクリプトエンジン10CがWebサーバー10Bに上記通知を行なうたびに、行なわれる。つまり、これらは2回以上行なわれる場合もある。
では「OK」)、および、Webサーバー10Bからブラウザー10Aへのコンテンツの送信が1度だけ行なわれるように記載されているが、これらは、スクリプトエンジン10CがWebサーバー10Bに上記通知を行なうたびに、行なわれる。つまり、これらは2回以上行なわれる場合もある。
図10および図11は、このときにタッチパネル50に表示される画面の一例を示す図である。
図10には、スキャンアプリケーションにおいて画像の読み込みが行なわれている際に表示される画面が示されている。図10の画面では、タッチパネル50には、処理の状況を示すメッセージ(読み込み中)を表示する表示欄508が示されている。
図11には、スキャンアプリケーションにおいて画像の読み込みが行なわれている際に表示される画面が示されている。図10の画面では、タッチパネル50には、処理の状況を示すメッセージ(読み込み完了)を表示する表示欄508が示されている。
図5に戻って、ユーザーがタッチパネル50に対して、実行中のアプリケーションを終了させるための操作を行なうと(図5中の「IDキー押下」「アプリ終了」)、ブラウザー10Aは、Webサーバー10Bに対して終了イベントを送信する。これに応じて、Webサーバー10Bは、スクリプトエンジン10Cに終了イベントを送信する。これに応じて、スクリプトエンジン10Cは、アプリケーションのプログラムを構成するスクリプトの処理を終了するとともに、新モジュール制御部10Dに終了処理要求を送信する。これに応じて、新モジュール制御部10Dは、生成したスクリプトについて、ユーザー管理テーブルに登録するとともに、当該プログラムについての自動生成済フラグを「済」に設定し、HDD20へ登録する。
図12は、図5のステップSB(2)に示されたスクリプト保存処理によって保存されたスクリプトに対応するアプリケーションが追加された状態のユーザー管理テーブルを示す図である。
図7と比較して、図12のユーザー管理テーブルでは、URLを「bbbbbbb」とするアプリケーションが追加されている。当該アプリケーションは、ユーザーAに関連付けられている。当該アプリケーションの自動生成済フラグは「済」である。このことは、このアプリケーションのプログラムが、図5を参照して説明したように既存のアプリケーションのプログラム(スクリプト)に対して変更を加えられて格納されたものに対応することを意味している。また、当該アプリケーションのスクリプト管理テーブルIDは「4」である。このアプリケーションのスクリプト管理テーブルの内容の一例を、図13に示す。
図13に示されたスクリプト管理テーブルは、図8のスクリプト管理テーブルと比較して、スクリプト名「scan_screen4.py」のスクリプトが追加されている。このスクリプトには、設定値置き場「/Doc/Auto/setting/004」に格納された設定値が関連付けられている。この設定値は、図9を参照して説明した、ユーザーから入力された設定条件に対応する内容を含む。
<自動生成状態確認処理>
図14は、図5のステップSAの処理内容を詳細に説明するためのシーケンス図である。
図14は、図5のステップSAの処理内容を詳細に説明するためのシーケンス図である。
図14を参照して、ブラウザー10Aからコンテンツの要求を受けると、Webサーバー10Bは、新モジュール制御部10Dに対して、ユーザーから起動の要求があったアプリケーションについて、自動生成済フラグの状態を確認する要求を送信する(ステップSA10)。
これに応じて、新モジュール制御部10Dは、common処理部10Eから、現在MFP100にログインしているユーザーのIDとユーザーから起動の要求があったアプリIDを取得する(ステップSA20)。そして、新モジュール制御部10Dは、ステップSA20で取得したユーザーIDとアプリIDに基づいて、ユーザー管理テーブル(図7参照)に登録されている情報を「scan_screen4.py」にすることにより、当該アプリIDの自動生成済フラグが「未」であるか否かを判断し、そうであると判断するとステップSA40へ処理を進め、そうではないと判断するとそのまま処理を終了する。
ステップSA40では、新モジュール制御部10Dは、自動生成追加フラグがONであるか否かを判断し、そうであると判断するとステップSA50へ処理を進め、そうではないと判断するとそのまま処理を終了する。
ステップSA50では、新モジュール制御部10Dは、自動生成中フラグをONに設定して、処理を終了する。
自動生成追加フラグとは、MFP100において、ユーザーの操作に従って当該操作内容に従ったプログラム(およびアイコン)を自動生成する設定がなされているか否かを示すフラグである。自動生成追加フラグの設定内容は、たとえば、操作パネル150を操作することにより、その設定内容の変更が可能とされている。
以上、図14を参照して説明した処理によれば、ユーザーが起動を指示したアプリケーションに関連付けられた自動生成済フラグが「未」であり、かつ、自動生成追加フラグがONとされていることを条件として、自動生成中フラグがONに設定される。そして、MFP100では、自動生成中フラグがONとされていることを条件として、ユーザーからの起動指示に従って実行されたスクリプトがHDD20へ保存され、また、当該スクリプト(プログラム)に対応したアイコンが、タッチパネル50に表示される。
<スクリプト保存処理>
図15は、図5においてステップSB(1)またはステップSB(2)で示された処理の詳細な内容を説明するためのシーケンス図である。
図15は、図5においてステップSB(1)またはステップSB(2)で示された処理の詳細な内容を説明するためのシーケンス図である。
図15を参照して、Webサーバー10Bは、まず、ステップSB10で、スクリプトエンジン10Cに対して、CGI起動の要求(図5の「スクリプト起動要求」)を送信する。
これに応じて、スクリプトエンジン10Cは、ステップSB20で、要求されたCGIを実行して、ステップSB30へ処理を進める。
ステップSB30では、スクリプトエンジン10Cは、自動生成中フラグがONであるか否かを判断し、ONであると判断するとステップSB40へ処理を進める。一方、自動生成中フラグがOFFであれば、処理をステップSB70へ進める。
ステップSB40では、スクリプトエンジン10Cは、ステップSB20で実行したCGIについて、ユーザーからの入力値が含まれていたか否かを判断し、含まれていたと判断するとステップSB50へ処理を進め、含まれていなかったと判断するとステップSB60へ処理を進める。
ステップSB50では、スクリプトエンジン10Cは、ステップSB40で含まれていたと判断したユーザーの入力値を新モジュール制御部10Dへ送信して、ステップSB60へ処理を進める。
ステップSB60では、スクリプトエンジン10Cは、オリジナルのCGIをHDD20へコピーする要求を新モジュール制御部10Dへ送信して、ステップSB70へ処理を進める。ここで、オリジナルのCGIとは、たとえばスキャンアプリケーション実行が指示された場合の、「IWS_Scan_ID」を構成するスクリプトであって、ステップSB20で実行されたCGIである。
ステップSB60におけるスクリプトエンジン10Cからの要求に応じて、新モジュール制御部10Dは、ステップSB100で、ステップSB60において要求されたスクリプト(オリジナルのCGI)をHDD20へコピーするとともに、HDD20にコピーしたスクリプトの中の必要な箇所を、ステップSB50においてスクリプトエンジン10Cから送信された入力値で置き換える。
一方、ステップSB70では、スクリプトエンジン10Cは、ステップSB20におけるCGIの実行結果をWebサーバー10Bへ送信する。
これに応じて、Webサーバー10Bは、ステップSB80で、ブラウザー10Aに対して、スクリプトエンジン10Cから送信されたCGI実行結果を表示するためのコンテンツの表示を要求して、処理を終了する。
以上図15を参照して説明した処理によれば、自動生成中フラグがONである場合には、ユーザーの実行指示に従ってスクリプトエンジン10Cが実行したスクリプトが、HDD20へコピーされる。なお、当該スクリプトの実行の際に、ユーザーの指示に含まれる入力値が含まれる場合には、当該入力値も併せて、HDD20にコピーする要求がなされる。そして、新モジュール制御部10Dは、当該コピーの要求に応じて、HDD20へ、スクリプトをコピーする。
これにより、ユーザーが、ブラウザー10Aに、設定値とともにアプリケーションの実行を指示した場合、当該アプリケーションのプログラムを構成するスクリプト毎に、実行されたスクリプトがユーザーに入力された設定値とともにHDD20へ保存(コピー)される。
このように保存されたスクリプトは、図13の「/Doc/Auto/setting/004」のように、スクリプト管理テーブルに登録される。スクリプト管理テーブルは、図12および図13を参照して説明したように、各ユーザーに関連付けられたアプリケーションに関連付けられて、登録される。したがって、新たに登録されたスクリプト(プログラム)は、ユーザーに関連付けられて登録されることになる。これにより、ブラウザー10Aがログインユーザーに対応してタッチパネル50に表示する画面には、新たに登録されたスクリプト(プログラム)に対応したアイコンが表示されることになる。
このように追加されて登録されたスクリプト(プログラム)に対応したアイコンが追加で表示された場合のタッチパネル50の表示画面を、図16に示す。
図16に示された画面では、図6の画面と比較して、アイコン511が追加で表示されている。アイコン511は、図12のユーザー管理テーブルのアプリIDが「IWS_Scan_ID」であり、かつ、スクリプト管理テーブルIDが「4」のアプリケーションに対応するアイコンである。
<MFPの動作内容>
ここで、本実施の形態におけるスクリプト保存による効果をより具体的に説明するために、MFP100の動作内容を説明する。
ここで、本実施の形態におけるスクリプト保存による効果をより具体的に説明するために、MFP100の動作内容を説明する。
MFP100では、ユーザーAがMFP100にログインすると、まず、図6に示されたような画面がタッチパネル50に表示される。
次に、ユーザーは、アイコン501を操作する。これにより、ブラウザー10Aは、Webサーバー10Bに、スキャンアプリケーションの起動を要求する。
図7に示されたユーザー管理テーブルにおいて、ユーザーAのスキャンアプリケーション(アプリID「IWS_Scan_ID」)の自動生成済フラグは「未」である。MFP100では、自動生成追加フラグ(図14参照)はONに設定されているとする。これにより、自動生成中フラグがONに設定される。
そして、スキャンアプリケーションの起動の指示に応じて、Webサーバー10Bはブラウザー10Aに図9に示すような画面の表示(コンテナ)の表示を指示する。
図9に示された画面の表示に応じて、ユーザーは、図9の各条件について設定値を入力し、スタートボタン507を操作する。これに応じて、再度、ブラウザー10Aは、Webサーバー10Bに対してコンテンツを要求(CGIの実行)を指示する。
これに応じて、Webサーバー10Bは、スクリプトエンジン10Cに、図9に示された設定条件(入力値)を利用したスクリプトの実行を指示する。これに応じて、スクリプトエンジン10Cが適切なスクリプトを実行することにより、MFP100は、図9に示された設定条件に従って、スキャン動作が実行される。
そして、スクリプトエンジン10Cは、上記スクリプトを実行するとともに、当該実行したスクリプトをHDD20に保存するように、新モジュール制御部10Dに指示する。これに応じて、新モジュール制御部10Dはスクリプトエンジン10Cから送信されたスクリプトをHDD20のプログラム記憶部21に保存する。
また、新モジュール制御部10Dは、このように保存したスクリプトについて、ユーザー管理テーブル(図12)およびスクリプト管理テーブル(図13参照)に情報を登録する。
これに応じて、それ以降のユーザーAがログインした際に表示される画面は、図6に示されたものから図16に示されたものへと変更される。図16に示された画面には、図6に示された画面に加えて、アイコン511が追加されている。アイコン511は、図6および図9を参照して説明した画面に従ってユーザーが入力した情報を含む、アプリケーションプログラム(スクリプト)の起動を指示するためのアイコンである。当該スクリプトは、既存のスクリプトに対して、ユーザーが入力した情報に基づいた変更が加えられている。
<プログラム実行処理>
次に、図16のアイコン511のように、ユーザーの実行指示に従って追加して登録されたアプリケーションプログラムの実行について、説明する。図17は、このようなアプリケーションプログラムの実行の際の、MFP100におけるシーケンス図である。
次に、図16のアイコン511のように、ユーザーの実行指示に従って追加して登録されたアプリケーションプログラムの実行について、説明する。図17は、このようなアプリケーションプログラムの実行の際の、MFP100におけるシーケンス図である。
図17を参照して、ユーザーがアイコン511を操作することにより、当該アイコン511に対応するIWSアプリの起動を指示すると、ブラウザー10Aは、Webサーバー10Bに対して、当該アプリケーションに対応するコンテンツを要求する。
これに応じて、Webサーバー10Bは、スクリプトエンジン10Cに対して、起動を指示されたアプリケーションのCGIの起動を指示する。
これに応じて、スクリプトエンジン10Cは、起動を指示されたIWSアプリのCGIの結果をWebサーバー10Bへ通知するとともに、起動を指示されたIWSアプリの起動を新モジュール制御部10Dへ指示する。これに応じて新モジュール制御部10Dは、HDD20から、上記IWSアプリを構成するスクリプト(図13参照)を順次取得し、実行する(図17中のLOOP)。
スクリプトエンジン10Cは、当該スクリプトを順次実行し、その結果をWebサーバー10Bへ通知する。これに応じて、Webサーバー10Bは、ブラウザー10Aに対して、その実行結果を示す表示画面のコンテンツを送信する。これに応じて、ブラウザー10Aは、受信したコンテンツを表示する。これにより、ユーザーは、アプリケーションの実行結果を、タッチパネル50上で視認することができる。
以上図17を参照して説明した処理では、実行を指示されたIWSアプリに対応する自動生成済フラグは、「済」となっている(図12のスクリプト管理テーブルID「4」に対応する自動生成済フラグの値を参照)。これにより、図17を参照して説明した処理においてスクリプトエンジン10Cが実行したスクリプトについては、HDD20へコピーされることはない。
図18および図19は、スクリプトエンジン10Cによるスクリプトの実行に応じて、Webサーバー10Bからブラウザー10Aに対して、その実行結果を示す画面が示されている。
図18は、スキャンアプリケーションの実行中にタッチパネル50に表示される画面を示す。図18の画面には、スキャンアプリケーションが実行中であることを示すメッセージが、表示欄512に、表示されている。なお、表示欄512中のメッセージにおける「自動」とは、アイコン511のように、MFP100においてユーザーの操作に従って実行されたアプリケーションスクリプトとして既にMFPに登録された処理内容に対応するアプリケーションが実行中であることを意味する。
図19は、スキャンアプリケーションの実行が完了したことを示すメッセージを表示する表示欄513を含む。表示欄513中のメッセージにおける「自動」も、同様に、上記実行が完了したのが、上記のようにユーザー操作によって実行された処理内容のスクリプトを含むアプリケーションであることを示している。
<スクリプト保存処理の詳細な内容>
図20は、図15のステップSB100における、新モジュール制御部10Dの内容を説明するためのフローチャートである。
図20は、図15のステップSB100における、新モジュール制御部10Dの内容を説明するためのフローチャートである。
図20を参照して、新モジュール制御部10Dは、まずステップSB110で、スクリプトエンジン10Cから要求を受けたオリジナルCGIをHDD20へコピーして、ステップSB120へ処理を進める。
ステップSB120では、新モジュール制御部10Dは、オリジナルCGIの実行に際してユーザーの入力値が使用されたか否かを判断し、使用されたと判断するとステップSB130へ処理を進め、使用されていないと判断するとそのまま処理を終了する。なお、新モジュール制御部10Dは、ステップSB50においてスクリプトエンジン10Cがユーザーの入力値を送信した場合には入力値を使用したと判断し、そのようなスクリプトエンジン10Cからの送信がなかった場合には、ユーザーの入力値を使用しなかったと判断する。
ステップSB130では、新モジュール制御部10Dは、オリジナルCGIのスクリプトを解析し、ステップSB140へ処理を進める。
ステップSB140では、新モジュール制御部10Dは、上記CGIスクリプトに、関数「cgi.FieldStorage()」があるか否かを判断し、あると判断するとステップSB150以降へ処理を進める。
一方、そのような関数がないと判断すると、そのまま処理を終了する。
ステップSB150以降では、新モジュール制御部10Dは、CGIスクリプトの関数「cgi.FieldStorage()」における変数をユーザーの入力値に置換えて、HDD20上で更新する。図20では、このような変数の置換えの処理として、ステップSB150〜ステップSB180が例示されている。ステップSB150は、「X1」をユーザー入力値「X1−1」に置換える処理である。また、ステップSB160〜ステップSB180は、変数「X2」,「X3」,「X4」のそれぞれを、ユーザー入力値「X2−1」に置換える処理が記載されている。なお、スクリプトにおいて、入力値に置き換えられる変数の数は、図20に示されたものに限定されない。そして、HDD20にコピーされたスクリプトにおける、変数の入力値への必要な置換がすべて完了すると、図20に示された処理は終了する。
ステップSB150以降では、新モジュール制御部10Dは、CGIスクリプトの関数「cgi.FieldStorage()」における変数をユーザーの入力値に置換えて、HDD20上で更新する。図20では、このような変数の置換えの処理として、ステップSB150〜ステップSB180が例示されている。ステップSB150は、「X1」をユーザー入力値「X1−1」に置換える処理である。また、ステップSB160〜ステップSB180は、変数「X2」,「X3」,「X4」のそれぞれを、ユーザー入力値「X2−1」に置換える処理が記載されている。なお、スクリプトにおいて、入力値に置き換えられる変数の数は、図20に示されたものに限定されない。そして、HDD20にコピーされたスクリプトにおける、変数の入力値への必要な置換がすべて完了すると、図20に示された処理は終了する。
<他の装置における処理>
本実施の形態の画像処理システムでは、MFP100においてユーザーからの実行指示に従って生成されたプログラムおよびアイコンは、MFP200へコピーすることができる。図21は、MFP200において、アイコン等のコピーの指示が入力された際にMFP200において実行される処理のシーケンスを示す図である。
本実施の形態の画像処理システムでは、MFP100においてユーザーからの実行指示に従って生成されたプログラムおよびアイコンは、MFP200へコピーすることができる。図21は、MFP200において、アイコン等のコピーの指示が入力された際にMFP200において実行される処理のシーケンスを示す図である。
図21を参照して、MFP200において、ユーザーが、タッチパネル250を操作することによりMFP100のアイコン等のコピーを指示すると、当該指示が、表示制御部210Aを介して新モジュール制御部10Dに送られる。これに応じて、新モジュール制御部10Dは、MFP100から、ログインユーザーに対応したスクリプト(プログラム)および当該スクリプトに対応したアイコンの送信を要求し、当該要求に応じて送信されてきたスクリプトおよびアイコンをHDD220へ保存する(ステップSC10)。
そして、新モジュール制御部210Dは、ステップSC20で、自機にブラウザーが搭載されているか否かを判断する。ここでは、MFP200では、ブラウザーの機能がないので、ステップSC30へ処理が進められる。
ステップSC30では、新モジュール制御部210Dは、初期画面に、MFP100からコピーされたアイコンを追加するようcommon処理部210Eに指示して、ステップSC40へ処理を進める。これにより、MFP200において、ユーザーAがログインした際に表示される初期画面が更新される(ステップSC40)。
初期画面の更新について、図22および図23を参照して説明する。
図22は、タッチパネル250に表示される、更新前の初期画面の一例を示す図である。
図22は、タッチパネル250に表示される、更新前の初期画面の一例を示す図である。
タッチパネル250には、MFP200にスキャンアプリケーションを実行させるためのアイコン251と、コピーアプリケーションを実行させるためのアイコン252と、アップロードアプリケーションを実行させるためのアイコン253とが表示されている。
図23は、更新後の初期画面の一例を示す図である。
図23を参照して、更新後の初期画面には、図22に示された画面と比較して、アイコン254が追加されている。アイコン254は、ステップSC10においてコピーされたアイコンであり、ステップSC10でコピーされたスクリプトを実行させるために操作されるアイコンである。
図23を参照して、更新後の初期画面には、図22に示された画面と比較して、アイコン254が追加されている。アイコン254は、ステップSC10においてコピーされたアイコンであり、ステップSC10でコピーされたスクリプトを実行させるために操作されるアイコンである。
図21に戻って、ステップSC40の後、ステップSC50で、新モジュール制御部210Dは、common処理部210Eに対して、アイコン254(図23参照)の押下によって実行されたアプリケーションの実行中および実行結果として表示する画面を、ステップSC10でHDD220にコピーされたコンテンツに変更することをcommon処理部210Eに指示する。これにより、アイコン254の操作によって開始されたアプリケーションの実行中に、ステップSC10においてMFP100から受信したコンテンツが表示される。なお、これらのコンテンツも、ステップSC10において、スクリプトやアイコンとともにMFP100から送信され、HDD220へ格納されている。
以上説明したステップSC10〜ステップSC50の処理により、ユーザーAがMFP200にログインすると、図23に示されたような初期画面がタッチパネル250に表示される。
そして、ユーザーAがアイコン254を操作することにより、アプリケーションの起動を指示すると、新モジュール制御部210Dは、当該起動要求に応じて、ステップSC50で設定された画面を、表示制御部210Aに指示する。これにより、タッチパネル250には、図24に示されるような画面が表示される。
図24を参照して、タッチパネル250に表示される画面には、表示欄261が含まれる。表示欄261には、アイコン254に関連付けられてHDD220に登録されたアプリケーションの実行状態を表示するメッセージが表示されている。表示欄261におけるメッセージ中の「自動」とは、MFP100においてユーザーの起動指示によって実行され登録されたアプリケーションスクリプトが実行されていることを意味する。つまり、ユーザーがMFP100において入力した設定値が自動的に組込まれて、アイコン254を操作することのみで、自動的に組込まれて、アプリケーションが実行されていることを意味する。
また、スクリプトエンジン210Cは、ユーザーからのアプリケーションの起動指示に応じて、アイコン254に関連付けられてHDD220に格納されたモジュールの起動が、新モジュール制御部210Dに対して、指示される。これにより、新モジュール制御部210Dは、ステップSC110で、HDD220に格納されたスクリプトを取得し、スクリプトエンジン210CにCGIの起動を指示する。
これに応じて、スクリプトエンジン210Cは、CGIの結果を新モジュール制御部210Dにその結果を通知する。そして、新モジュール制御部210Dは、上記したスクリプトの実行結果を、表示制御部210Aに対して、表示を指示する。これにより、表示制御部210Aは、タッチパネル250に、実行結果を表示させる。
図25は、このときにタッチパネル250に表示される実行結果の表示例を示す。
図25に示された画面には、実行結果を表示するための表示欄262が含まれる。表示欄262に表示されたメッセージ中の「自動」とは、図24中の「自動」と同様の意味を有する。
図25に示された画面には、実行結果を表示するための表示欄262が含まれる。表示欄262に表示されたメッセージ中の「自動」とは、図24中の「自動」と同様の意味を有する。
図21に示された処理では、MFP200において、他のMFPからのスクリプト等の取得が指示されたが、本実施の形態では、MFP100において、他のMFPにスクリプト等の送信の指示がなされても良い。この場合、MFP100のブラウザー10Aは、当該指示を受けると、新モジュール制御部10Dに、MFP200に対するスクリプト等の送信を指示する。これに応じて、新モジュール制御部10Dは、指示されたスクリプト等のデータを、MFP200へ送信する。MFP200では、新モジュール制御部210Dは、MFP100から上記データを受信すると、ステップSC10以降の処理を実行する。
<実施の形態の効果等>
本実施の形態によれば、アプリケーションの実行が指示された場合に、当該アプリケーションの実行に際して入力された設定値に応じて必要な箇所を変更されたプログラムが、生成されて記憶される。また、それ以降、変更後のプログラムに関連付けられたアイコンが表示装置に表示される。これにより、ユーザーは、当該アイコンを操作することにより、操作履歴に従った態様でアプリケーションを実行させることができる。
本実施の形態によれば、アプリケーションの実行が指示された場合に、当該アプリケーションの実行に際して入力された設定値に応じて必要な箇所を変更されたプログラムが、生成されて記憶される。また、それ以降、変更後のプログラムに関連付けられたアイコンが表示装置に表示される。これにより、ユーザーは、当該アイコンを操作することにより、操作履歴に従った態様でアプリケーションを実行させることができる。
なお、操作履歴ではなく変更後のプログラム自体が記憶される。このため、情報処理装置においてアプリケーションの追加や削除などのシステム変更が加えられた場合であっても、上記変更後のプログラムが実行されれば、操作履歴に応じた処理が実行される。したがって、システム管理者が制御プログラムの修正等の煩雑な作業を行なわなくとも、ユーザーは、情報処理装置に、操作履歴に応じた処理を実行させることができる。
以上説明した本実施の形態では、HDD20と操作パネル150とCPU10によって、プログラム作成装置が実現される。当該プログラム作成装置によって作成されるプログラムは、エンジン13の動作を制御するためのプログラムである。なお、プログラム作成装置は、MFP100のように、制御対象となる要素と一体的に構成されても良い。また、プログラム作成装置は、制御対象となる要素と別体で構成されても良い。つまり、エンジン13の動作を制御するためのプログラムを作成するプログラム作成装置が、汎用のコンピューター等によって、つまりMFP100とは別体で、実現されても良い。
今回開示された各実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。また、実施の形態および各変形例において説明された発明は、可能な限り、単独でも、組合わせても、実施することが意図される。
10A ブラウザー、10B,210B サーバー、10C,210C スクリプトエンジン、10D,210D 新モジュール制御部、10E,210E common処理部、20,220 HDD、21,221 プログラム記憶部、22,222 データ記憶部、50,250 タッチパネル、51,271 タッチセンサー、52,272 ディスプレイ、100,200 MFP、150,260 操作パネル、210A 表示制御部。
Claims (6)
- アプリケーションの実行の指示に基づいてプログラムを生成するためのプログラム生成装置であって、
前記アプリケーションを実行するためのプログラムを記憶するための記憶手段と、
前記アプリケーションの実行の指示、および、当該アプリケーションの実行における設定値を入力するための入力手段と、
前記入力手段に実行の指示を入力されたアプリケーションのプログラムを前記記憶手段から読み出して処理するためのプログラム処理手段とを備え、
前記プログラム処理手段は、
前記プログラムを、前記入力手段に入力された設定値に応じて必要な箇所を変更して処理し、
前記変更後のプログラムを前記記憶手段に記憶し、
前記変更後のプログラムに関連付けられたアイコンを表示装置に表示し、
前記アイコンに対して操作がなされたときは、前記記憶手段に記憶した前記変更後のプログラムを処理する、プログラム生成装置。 - 前記記憶手段は、各前記プログラムを、当該プログラムが前記プログラム処理手段によって変更後のプログラムとして記憶されたものであるか否かを示す情報と関連付けて記憶し、
前記プログラム処理手段は、前記入力手段に実行の指示を入力されたアプリケーションのプログラムが変更後のプログラムとして前記記憶手段に記憶されたものではないことを条件として、前記変更後のプログラムを前記記憶手段に記憶する、請求項1に記載のプログラム生成装置。 - 他の装置と通信するための通信手段をさらに備え、
前記プログラム処理手段は、前記入力手段に、前記他の装置への前記変更後のプログラムの送信の要求が入力された場合には、前記変更後のプログラムおよび前記アイコンを前記他の装置の表示部に表示するための指示を、前記他の装置に送信する、請求項1または請求項2に記載のプログラム生成装置。 - 画像処理動作を実行するための画像処理エンジンをさらに備え、
前記プログラム処理手段は、前記画像処理エンジンによる画像処理動作やを駆動することによって、Webサービスとして画像処理についてのアプリケーションを実行する、請求項1〜請求項3のいずれかに記載のプログラム生成装置。 - 記憶手段を備え、アプリケーションの実行の指示に基づいてプログラムを生成するためのプログラム生成装置のコンピューターによって実行される、当該プログラム生成装置の制御方法であって、
前記アプリケーションを実行するためのプログラムを前記記憶手段に記憶するステップと、
前記アプリケーションの実行の指示、および、当該アプリケーションの実行における設定値を入力するステップと、
実行の指示を入力されたアプリケーションのプログラムを、前記記憶手段から読み出し、前記入力された設定値に応じて必要な箇所を変更して処理するステップと、
前記変更後のプログラムを前記記憶手段に記憶するステップと、
前記変更後のプログラムに関連付けられたアイコンを表示装置に表示するステップと、
前記アイコンに対して操作がなされた場合に、前記記憶手段に記憶した前記変更後のプログラムを処理するステップとを備える、プログラム生成装置の制御方法。 - 記憶手段を備え、アプリケーションの実行の指示に基づいてプログラムを生成するためのプログラム生成装置のコンピューターによって実行される、プログラム生成用プログラムであって、
前記コンピューターに、
前記アプリケーションを実行するためのプログラムを前記記憶手段に記憶するステップと、
前記アプリケーションの実行の指示、および、当該アプリケーションの実行における設定値を入力するステップと、
実行の指示を入力されたアプリケーションのプログラムを、前記記憶手段から読み出し、前記入力された設定値に応じて必要な箇所を変更して処理するステップと、
前記変更後のプログラムを前記記憶手段に記憶するステップと、
前記変更後のプログラムに関連付けられたアイコンを表示装置に表示するステップと、
前記アイコンに対して操作がなされた場合に、前記記憶手段に記憶した前記変更後のプログラムを処理するステップとを実行させる、プログラム生成用プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012002163A JP2013142965A (ja) | 2012-01-10 | 2012-01-10 | プログラム生成装置、その制御方法、および、プログラム生成用プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012002163A JP2013142965A (ja) | 2012-01-10 | 2012-01-10 | プログラム生成装置、その制御方法、および、プログラム生成用プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013142965A true JP2013142965A (ja) | 2013-07-22 |
Family
ID=49039509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012002163A Pending JP2013142965A (ja) | 2012-01-10 | 2012-01-10 | プログラム生成装置、その制御方法、および、プログラム生成用プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013142965A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017117238A (ja) * | 2015-12-24 | 2017-06-29 | 株式会社リコー | 情報処理システム、情報処理装置および情報処理方法 |
JP2020077442A (ja) * | 2020-02-20 | 2020-05-21 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
-
2012
- 2012-01-10 JP JP2012002163A patent/JP2013142965A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017117238A (ja) * | 2015-12-24 | 2017-06-29 | 株式会社リコー | 情報処理システム、情報処理装置および情報処理方法 |
JP2020077442A (ja) * | 2020-02-20 | 2020-05-21 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4890605B2 (ja) | 複合機、複合機制御システム、プログラムおよび記録媒体 | |
KR101238364B1 (ko) | 화상 형성 장치의 커스터마이즈 방법 및 시스템 | |
US9411610B2 (en) | Server, screen control method, and screen transition method for effectively displaying screens on a terminal device | |
JP5424614B2 (ja) | 情報処理システム、情報処理装置、Webサーバ、制御方法、及びプログラム | |
JP5414242B2 (ja) | 画像処理装置、画像処理装置の制御方法、プログラム | |
JP5743671B2 (ja) | 情報処理装置およびその制御方法 | |
US20200409685A1 (en) | Electronic apparatus, information processing system, and information processing method | |
JP5995602B2 (ja) | 画像処理装置、情報処理方法及びプログラム | |
JP2007140588A (ja) | 情報処理装置、サーバ装置、印刷制御システム、プログラムおよび記録媒体 | |
JP2008167417A (ja) | 画像形成装置、表示制御方法及び表示制御プログラム | |
JP2012099011A (ja) | 通信システムおよび中継装置 | |
JP5223189B2 (ja) | 画像形成装置、画面管理方法及び画面管理プログラム | |
US10430130B2 (en) | Information processing system, information processing method | |
US20120226990A1 (en) | Information processing apparatus, information processing system, method for controlling information processing apparatus, and storage medium | |
US11330133B2 (en) | Electronic apparatus and method for controlling display of a notification screen | |
JP2008181521A (ja) | ドキュメント処理装置のユーザ・インターフェイス画面をカスタム化するシステムおよび方法 | |
JP2012199647A (ja) | 画像処理装置、画像処理システムおよび画像処理装置の設定用プログラム | |
JP2024040145A (ja) | 電子機器、情報処理システムおよび情報処理方法 | |
JP6790797B2 (ja) | 画像処理システム、画像形成装置、アプリケーション実行方法、およびコンピュータプログラム | |
JP5963420B2 (ja) | 画像処理システム、画像処理装置及びその制御方法、並びにプログラム | |
US9648179B2 (en) | Screen image providing apparatus, screen image providing method, and computer readable medium | |
JP5148677B2 (ja) | 複合機 | |
US20160072967A1 (en) | Information processor creating communication application, and computer-readable non-transitory recording medium storing application creation program for creating communication application | |
US20120033258A1 (en) | Image processing apparatus, control method of image processing apparatus, and storage medium | |
JP2013142965A (ja) | プログラム生成装置、その制御方法、および、プログラム生成用プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20130416 |