JP6119507B2 - Program development support apparatus and program development support method - Google Patents

Program development support apparatus and program development support method Download PDF

Info

Publication number
JP6119507B2
JP6119507B2 JP2013172184A JP2013172184A JP6119507B2 JP 6119507 B2 JP6119507 B2 JP 6119507B2 JP 2013172184 A JP2013172184 A JP 2013172184A JP 2013172184 A JP2013172184 A JP 2013172184A JP 6119507 B2 JP6119507 B2 JP 6119507B2
Authority
JP
Japan
Prior art keywords
browser
program
unit
control
development support
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
JP2013172184A
Other languages
Japanese (ja)
Other versions
JP2015041260A (en
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.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2013172184A priority Critical patent/JP6119507B2/en
Publication of JP2015041260A publication Critical patent/JP2015041260A/en
Application granted granted Critical
Publication of JP6119507B2 publication Critical patent/JP6119507B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援する技術に関し、特に、操作パネルにおいて表示されるべき操作画面の確認を支援する技術に関する。   The present invention relates to technology for supporting development by an information processing apparatus of a control program that defines display operations on an operation panel of an image forming apparatus, and more particularly to technology for supporting confirmation of an operation screen to be displayed on an operation panel.

特許文献1によると、画像形成装置は、ブラウザー機能を有し、ブラウザー機能により、画面データを画像形成装置の操作パネルに表示する。
また、特許文献2によると、画像形成装置において、様々なアプリケーションプログラムが用いられる。このようなアプリケーションプログラムの開発においては、実際の画像形成装置ではなく、画像形成装置の動作をソフトウェアを用いて模擬的に実行するシミュレーターにより、アプリケーションプログラムに関する各種の動作確認テストが行われる。
According to Patent Document 1, the image forming apparatus has a browser function, and screen data is displayed on the operation panel of the image forming apparatus by the browser function.
According to Patent Document 2, various application programs are used in the image forming apparatus. In the development of such an application program, various operation confirmation tests relating to the application program are performed by a simulator that executes not only an actual image forming apparatus but also the operation of the image forming apparatus using software.

このような先行技術を用いて、画像形成装置のブラウザー機能により操作パネルに表示される画像の確認テストを行う際に、実際の画像形成装置に代えて、パーソナルコンピューター(以下、PC)等の情報処理装置により、操作パネルに表示されるべき画像の確認が行われる。   When performing a confirmation test of an image displayed on the operation panel by the browser function of the image forming apparatus using such a prior art, information such as a personal computer (hereinafter referred to as a PC) is used instead of the actual image forming apparatus. The image to be displayed on the operation panel is confirmed by the processing device.

特開2008−37105号公報JP 2008-37105 A 特開2013−4007号公報JP 2013-4007 A 特開2010−39815号公報JP 2010-39815 A

しかし、情報処理装置が有するブラウザー機能と画像形成装置が有するブラウザー機能とが異なる種類や異なる版数のものである場合には、それぞれのブラウザー機能により表示される画面のレイアウトが異なることがある。例えば、情報処理装置が有するブラウザー機能を用いて画像が設計通り表示されることが確認された場合であっても、実際に画像形成装置のブラウザー機能を用いて操作パネルに表示すると、画像が操作パネルからはみ出したり、文字を囲むべき枠が文字に重なったりすることがある。このため、情報処理装置を画像形成装置における操作画面の確認のために用いることができないという問題がある。   However, when the browser function of the information processing apparatus and the browser function of the image forming apparatus are of different types or different versions, the layout of the screen displayed by each browser function may be different. For example, even if it is confirmed that an image is displayed as designed using the browser function of the information processing device, if the image is actually displayed on the operation panel using the browser function of the image forming device, the image is operated. It may protrude from the panel, or the frame around the character may overlap the character. For this reason, there is a problem that the information processing apparatus cannot be used for confirmation of an operation screen in the image forming apparatus.

上記の問題を解決するため、本発明は、情報処理装置を画像形成装置における操作画面の確認のために用いることができるようにするプログラム開発支援装置、プログラム開発支援方法及びコンピュータープログラムを記録している記録媒体を提供することを目的とする。   In order to solve the above problem, the present invention records a program development support apparatus, a program development support method, and a computer program that enable an information processing apparatus to be used for confirmation of an operation screen in an image forming apparatus It is an object to provide a recording medium.

上記目的を達成するため、本発明の一態様は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置であって、前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得手段と、前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザー手段と、複数の前記ブラウザー手段の中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザー手段が存在するか否かを判定するブラウザー判定手段と、前記ブラウザー判定手段により存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザー手段により、前記制御プログラムに従って描画させることにより、画像データを生成させる制御手段と、生成した前記画像データを、表示させるため前記情報処理装置に送信する送信手段とを備えることを特徴とする。   In order to achieve the above object, one aspect of the present invention provides a program development support apparatus that supports development by an information processing apparatus of a control program that defines a display operation on an operation panel of an image forming apparatus, wherein A plurality of model identifiers indicating the model of the image forming apparatus and an acquisition unit for acquiring the control program; and a plurality of browser functions having different specifications, each for rendering an image to be displayed on the operation panel according to the control program. Browser determining means for determining whether or not there is a browser means having a browser function having the same specification as the browser function of the image forming apparatus indicated by the model identifier among the plurality of browser means; If it is determined by the browser determination means that the image is present, the image Control means for generating image data by drawing according to the control program by the browser means having a browser function of the same specification as the browser function of the forming apparatus, and the information processing for displaying the generated image data Transmission means for transmitting to the apparatus.

この態様によると、制御プログラムに従って描画され生成された画像データが情報処理装置に送信されるので、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。   According to this aspect, since the image data drawn and generated according to the control program is transmitted to the information processing apparatus, the information processing apparatus can display the same image as that to be displayed on the operation panel of the image forming apparatus. Therefore, there is an excellent effect that the information processing apparatus can be used for confirming the operation screen on the operation panel of the image forming apparatus.

ここで、前記プログラム開発支援装置は、さらに、前記制御プログラム中に、前記画像形成装置に固有の動作を要求する内部コマンドが含まれるか否かを判定する内部コマンド判定手段と、前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するシミュレート手段を含み、前記制御手段は、さらに、前記ブラウザー手段により、前記第2制御プログラムに従って描画させることにより、第2画像データを生成させ、前記送信手段は、さらに、生成した前記第2画像データを、表示させるために前記情報処理装置に送信してもよい。   Here, the program development support apparatus further includes an internal command determination unit that determines whether or not the control program includes an internal command that requests an operation specific to the image forming apparatus, and the internal command includes Simulation means for simulating the operation of the image forming apparatus according to the internal command and generating a second control program for defining a display operation on the operation panel immediately after the operation when it is determined that the operation is included. The control means further causes the browser means to draw according to the second control program to generate second image data, and the transmission means further displays the generated second image data. Therefore, it may be transmitted to the information processing apparatus.

この態様によると、制御プログラムに含まれる内部コマンドに従って、前記画像形成装置の動作をシミュレートして得られた第2画像データが前記情報処理装置に送信される。この結果、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、制御プログラムに内部コマンドが含まれる場合においても、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。   According to this aspect, the second image data obtained by simulating the operation of the image forming apparatus is transmitted to the information processing apparatus in accordance with an internal command included in the control program. As a result, the information processing apparatus can display the same image as that to be displayed on the operation panel of the image forming apparatus. Therefore, even when an internal command is included in the control program, the information processing apparatus can be used for confirming the operation screen on the operation panel of the image forming apparatus.

ここで、前記取得手段は、さらに、前記情報処理装置から、前記制御プログラムに含まれる表示項目の使用許否を示すライセンス情報を取得し、前記プログラム開発支援装置は、さらに、取得した前記ライセンス情報により、前記制御プログラムに含まれる表示項目について、使用許可がされているか否かを判定する許可判定手段と、使用許可がされていないと判定される場合、代替表示項目を取得する代替表示項目取得手段と、前記表示項目を取得した前記代替表示項目に差し替える差替手段とを含み、前記制御手段は、前記差替手段により、前記表示項目を取得した前記代替表示項目に差し替えさせ、前記ブラウザー手段により、前記代替表示項目を含む前記画像データを生成させるとしてもよい。   Here, the acquisition means further acquires license information indicating permission / inhibition of use of display items included in the control program from the information processing apparatus, and the program development support apparatus further acquires the license information according to the acquired license information. , Permission determination means for determining whether or not use is permitted for the display items included in the control program, and alternative display item acquisition means for acquiring a substitute display item when it is determined that use is not permitted And replacement means for replacing the display item with the acquired alternative display item, and the control means causes the replacement means to replace the display item with the acquired alternative display item, and the browser means. The image data including the alternative display item may be generated.

この態様によると、制御プログラムに含まれる表示項目について、使用許可がされていない場合、表示項目を代替表示項目に差し替える。この結果、表示項目のライセンスに違反することがない。
ここで、当該プログラム開発支援装置又は外部のサーバー装置は、前記代替表示項目を保持し、前記代替表示項目取得手段は、当該プログラム開発支援装置又は外部のサーバー装置から、前記代替表示項目を取得してもよい。
According to this aspect, when the use of display items included in the control program is not permitted, the display items are replaced with alternative display items. As a result, the display item license is not violated.
Here, the program development support device or the external server device holds the alternative display item, and the alternative display item acquisition means acquires the alternative display item from the program development support device or the external server device. May be.

ここで、前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の画像形成装置の機種を示す機種識別子を記憶しており、取得した前記機種識別子が記憶している前記機種識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定してもよい。また、前記取得手段は、前記機種識別子として、前記画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を取得し、前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の機種の画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を記憶しており、取得した前記ブラウザー識別子が記憶している前記ブラウザー識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定してもよい。   Here, the browser determination unit stores a model identifier indicating a model of a plurality of image forming apparatuses in association with the plurality of browser units, and the model stored by the acquired model identifier. It may be determined whether or not the browser means is present by determining whether or not it matches any of the identifiers. Further, the acquisition unit acquires a browser identifier indicating a browser type and a version number of the image forming apparatus as the model identifier, and the browser determination unit is associated with the plurality of browser units, respectively. Stores browser identifiers indicating the types and version numbers of browsers possessed by a plurality of types of image forming apparatuses, and determines whether or not the acquired browser identifier matches any of the stored browser identifiers Thus, it may be determined whether or not the browser means is present.

これらの態様によると、画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザー手段が存在するか否かを判定することができる。
ここで、前記プログラム開発支援装置は、コンピュータープログラムを記憶している記憶手段と、前記コンピュータープログラムを実行するプロセッサーとを含むコンピューターシステムであり、前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、前記取得手段、複数の前記ブラウザー手段、前記ブラウザー判定手段、前記制御手段及び前記送信手段を動作させ、前記記憶手段は、複数の前記ブラウザー手段に対応して、複数の異なる仕様のブラウザープログラムをそれぞれ含む複数の仮想クライアントプログラムを記憶しており、前記ブラウザー判定手段は、複数の仮想クライアントプログラムの中から、前記機種識別子により示される画像形成装置が有するブラウザープログラムを含む仮想クライアントプログラムが存在するか判定し、前記制御手段は、前記画像形成装置が有するブラウザープログラムを含む前記仮想クライアントプログラムを実行状態にし、実行状態の前記仮想クライアントプログラムに含まれるブラウザープログラムを用いて、前記制御プログラムに従って描画させるとしてもよい。
According to these aspects, it is possible to determine whether or not there is a browser unit having a browser function having the same specifications as the browser function of the image forming apparatus.
Here, the program development support apparatus is a computer system including a storage unit that stores a computer program and a processor that executes the computer program. The program development support apparatus includes a processor that executes the computer program. By executing, the acquisition unit, the plurality of browser units, the browser determination unit, the control unit, and the transmission unit are operated, and the storage unit corresponds to the plurality of browser units and has a plurality of different specifications. A plurality of virtual client programs each including the browser program, and the browser determination unit includes a browser program included in the image forming apparatus indicated by the model identifier among the plurality of virtual client programs. And determining whether or not there is a virtual client program that includes the browser program included in the image forming apparatus, and using the browser program included in the virtual client program in the execution state. The image may be drawn according to the control program.

この態様によると、前記ブラウザー手段を、実行状態のブラウザープログラムにより実現できる。
ここで、前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、さらに、前記内部コマンド判定手段及び前記シミュレート手段を動作させ、前記記憶手段は、仮想シミュレートプログラムを、前記シミュレート手段に対応して、記憶しており、前記仮想シミュレートプログラムは、前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するプログラムであり、前記制御手段は、前記シミュレート手段として、仮想シミュレートプログラムを実行状態にしてもよい。
According to this aspect, the browser means can be realized by an executing browser program.
Here, the program development support apparatus further operates the internal command determination unit and the simulation unit when the processor executes the computer program, and the storage unit stores the virtual simulation program, Stored in correspondence with the simulation means, and when the virtual simulation program determines that the internal command is included, the virtual simulation program simulates the operation of the image forming apparatus according to the internal command, and It is a program for generating a second control program that defines the display operation on the operation panel immediately after the operation, and the control means may execute a virtual simulation program as the simulation means.

この態様によると、前記シミュレート手段を、実行状態の仮想シミュレートプログラムにより実現できる。
また、本発明の一態様は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるプログラム開発支援方法であって、前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップとを含むことを特徴とする。
According to this aspect, the simulation means can be realized by the virtual simulation program in the execution state.
Another embodiment of the present invention is a program development support method used in a program development support apparatus that supports development by an information processing apparatus of a control program that defines a display operation on an operation panel of an image forming apparatus. An acquisition step of acquiring a model identifier indicating the model of the image forming apparatus and the control program from the processing device, and drawing an image to be displayed on the operation panel according to the control program, each having a browser function with different specifications A browser determination step for determining whether there is a browser step having a browser function having the same specification as the browser function of the image forming apparatus indicated by the model identifier among a plurality of browser steps and the plurality of browser steps And the browser judgment A control step for generating image data by drawing according to the control program by the browser step having a browser function of the same specification as the browser function of the image forming apparatus, A transmission step of transmitting the image data to the information processing apparatus for display.

この方法をプログラム開発支援装置において用いることにより、制御プログラムに従って描画され生成された画像データが情報処理装置に送信される。この結果、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。   By using this method in the program development support apparatus, image data drawn and generated according to the control program is transmitted to the information processing apparatus. As a result, the information processing apparatus can display the same image as that to be displayed on the operation panel of the image forming apparatus. Therefore, there is an excellent effect that the information processing apparatus can be used for confirming the operation screen on the operation panel of the image forming apparatus.

また、本発明の一態様は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるコンピュータープログラムを記録しているコンピューター読み取り可能な記録媒体であって、コンピューターである前記プログラム開発支援装置に、前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップとを実行させるためのコンピュータープログラムを記録していることを特徴とする。   Another embodiment of the present invention is a computer-readable recording computer program used in a program development support apparatus that supports development by an information processing apparatus of a control program that defines a display operation on an operation panel of an image forming apparatus An acquisition step of acquiring a model identifier indicating the model of the image forming apparatus and the control program from the information processing apparatus to the program development support apparatus, which is a computer-readable recording medium, and the operation according to the control program A plurality of browser steps each for drawing an image to be displayed on the panel and having browser functions of different specifications, and the same specification as the browser function of the image forming apparatus indicated by the model identifier among the plurality of browser steps Browser A browser determination step for determining whether or not there is a browser step having a function, and the browser step having a browser function having the same specifications as the browser function of the image forming apparatus if it is determined by the browser determination step By recording according to the control program, a computer program for executing a control step for generating image data and a transmission step for transmitting the generated image data to the information processing device for display is recorded. It is characterized by.

このプログラムを、コンピューターであるプログラム開発支援装置において用いることにより、制御プログラムに従って描画され生成された画像データが情報処理装置に送信される。この結果、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。   By using this program in a program development support apparatus that is a computer, image data drawn and generated according to the control program is transmitted to the information processing apparatus. As a result, the information processing apparatus can display the same image as that to be displayed on the operation panel of the image forming apparatus. Therefore, there is an excellent effect that the information processing apparatus can be used for confirming the operation screen on the operation panel of the image forming apparatus.

プログラム開発支援システム10の全体構成を示す。1 shows an overall configuration of a program development support system 10. クライアントPC(100)の構成を示すブロック図である。It is a block diagram which shows the structure of client PC (100). プログラム作成サーバー装置200の構成を示すブロック図である。3 is a block diagram showing a configuration of a program creation server device 200. FIG. プログラム作成サーバー装置200により生成される制御プログラム221を示す。A control program 221 generated by the program creation server device 200 is shown. 制御プログラム221に基づいて表示される画面イメージを示す。The screen image displayed based on the control program 221 is shown. プログラム開発支援装置300の構成を示すブロック図である。3 is a block diagram showing a configuration of a program development support device 300. FIG. 仮想制御装置400の構成を示すブロック図である。3 is a block diagram showing a configuration of a virtual control device 400. FIG. 対応表421のデータ構造の一例を示す。An example of the data structure of the correspondence table 421 is shown. 仮想サーバー装置500の構成を示すブロック図である。2 is a block diagram showing a configuration of a virtual server device 500. FIG. 仮想クライアント装置600の構成を示すブロック図である。2 is a block diagram showing a configuration of a virtual client device 600. FIG. 仮想シミュレーター700の構成を示すブロック図である。2 is a block diagram showing a configuration of a virtual simulator 700. FIG. 仮想シミュレーター700により生成されるメッセージを表示する画面741を示す。A screen 741 for displaying a message generated by the virtual simulator 700 is shown. 外部サーバー装置800の構成を示すブロック図である。4 is a block diagram showing a configuration of an external server device 800. FIG. プログラム開発支援システム10の動作を示すシーケンス図(その1)である。図15へ続く。FIG. 6 is a sequence diagram (part 1) illustrating an operation of the program development support system 10; Continue to FIG. プログラム開発支援システム10の動作を示すシーケンス図(その2)である。図16へ続く。FIG. 11 is a sequence diagram (part 2) illustrating the operation of the program development support system 10; Continuing to FIG. プログラム開発支援システム10の動作を示すシーケンス図(その3)である。FIG. 10 is a sequence diagram (part 3) illustrating the operation of the program development support system 10;

1.実施の形態
本発明に係る一の実施の形態としてのプログラム開発支援システム10について、説明する。
1.1 プログラム開発支援システム10
プログラム開発支援システム10は、図1に示すように、クライアントPC(100)、クラウドシステム30及び外部サーバー装置800から構成されている。また、クラウドシステム30は、プログラム作成サーバー装置200及びプログラム開発支援装置300から構成されている。クライアントPC(100)、外部サーバー装置800、プログラム作成サーバー装置200及びプログラム開発支援装置300は、インターネットを代表とするネットワーク20を介して、接続されている。
1. Embodiment A program development support system 10 as an embodiment according to the present invention will be described.
1.1 Program development support system 10
As shown in FIG. 1, the program development support system 10 includes a client PC (100), a cloud system 30, and an external server device 800. The cloud system 30 includes a program creation server device 200 and a program development support device 300. The client PC (100), the external server device 800, the program creation server device 200, and the program development support device 300 are connected via the network 20 represented by the Internet.

ユーザーは、クライアントPC(100)を用いて、ネットワーク20を介して、プログラム作成サーバー装置200に接続して、制御プログラムを作成する。ここで、制御プログラムは、複合機(MFP:Multi-Functional Peripheral、以下、MFPと呼ぶ。)が有する操作パネルにおける表示動作及びMFPの内部処理を規定し、マークアップ言語であるHTML(HyperText Markup Language )により記述されたプログラムである。また、MFPは、プリンター、コピー機、ファクシミリ及びスキャナー等の各装置の機能を一体化した装置である。   The user creates a control program by connecting to the program creation server apparatus 200 via the network 20 using the client PC (100). Here, the control program defines the display operation on the operation panel of the multifunction peripheral (MFP: Multi-Functional Peripheral, hereinafter referred to as MFP) and the internal processing of the MFP, and is a markup language HTML (HyperText Markup Language). ). The MFP is an apparatus that integrates the functions of each apparatus such as a printer, a copier, a facsimile machine, and a scanner.

制御プログラムの作成が終了すると、ユーザーは、クライアントPC(100)を用いて、プログラム作成サーバー装置200からプログラム開発支援装置300に対して、制御プログラムのプレビュー画像の生成を依頼する。
プログラム開発支援装置300は、図1に示すように、仮想的に、仮想制御装置400、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700から構成される。仮想制御装置400、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700は、プログラム開発支援サービス40を提供する。
When the creation of the control program is completed, the user uses the client PC (100) to request the program development support apparatus 300 from the program creation server apparatus 200 to generate a preview image of the control program.
As shown in FIG. 1, the program development support apparatus 300 is virtually composed of a virtual control device 400, a virtual server device 500, a virtual client device 600, and a virtual simulator 700. The virtual control device 400, the virtual server device 500, the virtual client device 600, and the virtual simulator 700 provide the program development support service 40.

仮想制御装置400は、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700を制御する。仮想クライアント装置600は、制御プログラムに従って、MFPに表示されるべき画像を描画し、描画された画像から、画像データを生成する。また、仮想シミュレーター700により、実際のMFPの動作をシミュレートして、MFPの操作パネルにおける表示動作を規定する制御プログラムを生成する。プログラム開発支援装置300は、画像データをクライアントPC(100)に送信する。クライアントPC(100)は、画像データを受信し、受信した画像データを表示する。   The virtual control device 400 controls the virtual server device 500, the virtual client device 600, and the virtual simulator 700. The virtual client device 600 draws an image to be displayed on the MFP according to the control program, and generates image data from the drawn image. In addition, the virtual simulator 700 simulates the actual operation of the MFP and generates a control program that defines the display operation on the operation panel of the MFP. The program development support apparatus 300 transmits image data to the client PC (100). The client PC (100) receives the image data and displays the received image data.

1.2 クライアントPC(100)
クライアントPC(100)は、図2に示すように、マイクロプロセッサー101、ROM(102)、RAM(103)、ハードディスクデバイス104、通信部105及び入出力制御部106から構成されている。入出力制御部106には、モニター107及びキーボード108が接続されている。マイクロプロセッサー101、ROM(102)、RAM(103)、ハードディスクデバイス104、通信部105及び入出力制御部106は、バス109を介して、接続されている。
1.2 Client PC (100)
As shown in FIG. 2, the client PC (100) includes a microprocessor 101, a ROM (102), a RAM (103), a hard disk device 104, a communication unit 105, and an input / output control unit 106. A monitor 107 and a keyboard 108 are connected to the input / output control unit 106. The microprocessor 101, ROM (102), RAM (103), hard disk device 104, communication unit 105 and input / output control unit 106 are connected via a bus 109.

(1)ハードディスクデバイス104、ROM(102)及びRAM(103)
ハードディスクデバイス104は、ブラウザーアプリケーションプログラム(以下、ブラウザーアプリと称する。)121及びその他のコンピュータープログラムを記憶している。ブラウザーアプリ121は、HTMLにより記述された制御プログラムに従って表示動作をするためのコンピュータープログラムである。その他のコンピュータープログラムは、オペレーティングシステム、ネットワークへ接続し他の端末装置と通信を行うためのコンピュータープログラム等である。
(1) Hard disk device 104, ROM (102) and RAM (103)
The hard disk device 104 stores a browser application program (hereinafter referred to as a browser application) 121 and other computer programs. The browser application 121 is a computer program for performing a display operation in accordance with a control program described in HTML. The other computer program is an operating system, a computer program for connecting to a network and communicating with other terminal devices.

また、ハードディスクデバイス104は、制御プログラムに含まれる表示項目の使用許否を示すライセンス情報122を記憶している。ライセンス情報122が表示項目の使用許可を示す場合、表示項目を使用することができる。一方、ライセンス情報122が表示項目の使用禁止を示す場合、表示項目を使用することができない。
表示項目の一例は、フォントである。一例として、ライセンス情報122は、フォントを識別するフォント識別名称を含む。制御プログラムにより表示を行う際に、ライセンス情報に含まれるフォント識別情報により識別されるフォントの使用が許可される。ライセンス情報に含まれないフォント識別情報により識別されるフォントの使用は、許可されない。
Further, the hard disk device 104 stores license information 122 indicating whether or not display items included in the control program are permitted. If the license information 122 indicates permission to use the display item, the display item can be used. On the other hand, when the license information 122 indicates prohibition of use of the display item, the display item cannot be used.
An example of the display item is a font. As an example, the license information 122 includes a font identification name that identifies a font. When the display is performed by the control program, the use of the font identified by the font identification information included in the license information is permitted. Use of the font identified by the font identification information not included in the license information is not permitted.

表示項目は、静止画及び動画であるとしてもよい。一例として、ライセンス情報122がこれらの静止画又は動画を識別する識別情報を含むとき、これらの静止画又は動画の使用が許可される。
ライセンス情報は、ライセンス番号、フォント識別情報、ライセンス発行日、有効期限及び署名データを含むとしてもよい。ライセンス番号は、当該ライセンス情報を一意に識別する識別番号である。フォント識別情報については、上述した通りである。有効期限は、当該ライセンス情報を用いることができる期限を示す。例えば、2015年10月31日までなどと指定される。署名データは、当該フォントのライセンスの発行者に割り当てられた私有鍵(秘密鍵)を用いて、ライセンス番号、フォント識別情報、ライセンス発行日及び有効期限の結合体に対して、公開鍵暗号方式によるデジタル署名を施して、生成した署名データである。なお、ライセンスの正当性を確認する装置、例えば、後述する仮想クライアント装置600は、前記私有鍵に対応する公開鍵を用いて、ライセンス情報の正当性を検証する。検証に成功した場合に、ライセンスが正しいと判定する。検証に失敗した場合に、ライセンスは不正と判定する。
The display items may be a still image and a moving image. As an example, when the license information 122 includes identification information for identifying these still images or moving images, use of these still images or moving images is permitted.
The license information may include a license number, font identification information, license issue date, expiration date, and signature data. The license number is an identification number that uniquely identifies the license information. The font identification information is as described above. The expiration date indicates a time limit during which the license information can be used. For example, it is designated as up to October 31, 2015. The signature data is obtained by public key cryptography for a combination of license number, font identification information, license issuance date and expiration date using a private key (private key) assigned to the issuer of the license for the font. This is signature data generated by applying a digital signature. Note that a device that confirms the validity of the license, for example, a virtual client device 600 described later, verifies the validity of the license information by using a public key corresponding to the private key. If the verification is successful, it is determined that the license is correct. If verification fails, the license is determined to be invalid.

ROM(102)及びRAM(103)は、データやプログラムを記憶するための、半導体メモリである。
(2)マイクロプロセッサー101
マイクロプロセッサー101は、コンピュータープログラムに従って、動作する。特に、マイクロプロセッサー101は、ユーザーによるブラウザーアプリ121の起動の指示により、ブラウザーアプリ121を実行させる。これにより、マイクロプロセッサー101は、ブラウザーを実行状態にする。
A ROM (102) and a RAM (103) are semiconductor memories for storing data and programs.
(2) Microprocessor 101
The microprocessor 101 operates according to a computer program. In particular, the microprocessor 101 causes the browser application 121 to be executed in response to an instruction to start the browser application 121 by the user. Thereby, the microprocessor 101 puts the browser into an execution state.

(3)通信部105
通信部105は、ネットワーク20を介して、他の装置との間で情報の送受信を行う。
具体的には、通信部105は、ユーザーから受け付けたプログラム作成のリクエスト及びプログラム作成のための情報を、ネットワーク20を介して、プログラム作成サーバー装置200に対して、送信する。また、通信部105は、ユーザーの指示により、制御プログラムのプレビュー要求を、ネットワーク20を介して、プログラム作成サーバー装置200に対して送信する。また、通信部105は、URLを指定して、MPF機種ID及びライセンス情報を、プログラム開発支援装置300に対して、送信する。
(3) Communication unit 105
The communication unit 105 transmits / receives information to / from other devices via the network 20.
Specifically, the communication unit 105 transmits a program creation request received from the user and information for program creation to the program creation server device 200 via the network 20. Further, the communication unit 105 transmits a control program preview request to the program creation server device 200 via the network 20 in accordance with a user instruction. The communication unit 105 also designates a URL and transmits the MPF model ID and license information to the program development support apparatus 300.

また、通信部105は、プログラム作成サーバー装置200から、プログラム作成のための情報及び制御プログラムの作成が完了したことを示す完了通知を受け取る。また、通信部105は、プログラム作成サーバー装置200から、ネットワーク20を介して、プログラム開発支援装置300のネットワーク20上における存在位置を示すURLを受け取る。また、通信部105は、プログラム開発支援装置300から、メッセージ、フレーム及び画像データを受け取る。   Further, the communication unit 105 receives from the program creation server device 200 information for creating the program and a completion notification indicating that the creation of the control program has been completed. Further, the communication unit 105 receives a URL indicating the location of the program development support apparatus 300 on the network 20 from the program creation server apparatus 200 via the network 20. Further, the communication unit 105 receives a message, a frame, and image data from the program development support apparatus 300.

(4)入出力制御部106、モニター107及びキーボード108
入出力制御部106は、モニター107及びキーボード108に接続されている。
モニター107は、様々な情報を表示する。
キーボード108は、操作者による入力を受け付ける。具体的には、キーボード108は、ユーザーから、ブラウザーアプリ121を起動する指示、プログラム作成のリクエスト、プログラム作成のための情報、制御プログラムのプレビュー要求を受け付ける。また、キーボード108は、ユーザーからURLの指定とともに、MPF機種ID及びライセンス情報の送信の指示を受け付ける。
(4) Input / output control unit 106, monitor 107, and keyboard 108
The input / output control unit 106 is connected to a monitor 107 and a keyboard 108.
The monitor 107 displays various information.
The keyboard 108 receives input from the operator. Specifically, the keyboard 108 receives an instruction to start the browser application 121, a program creation request, information for program creation, and a control program preview request from the user. The keyboard 108 accepts an instruction to transmit an MPF model ID and license information along with the URL designation from the user.

(5)実行状態にあるブラウザー
キーボード108がユーザーからブラウザーアプリ121を起動する指示を受け付け、次に、マイクロプロセッサー101がハードディスクデバイス104に記憶されているブラウザーアプリ121を実行する。これにより、クライアントPC(100)において、ブラウザーが実行状態となる。
(5) Browser in Execution State The keyboard 108 receives an instruction to start the browser application 121 from the user, and then the microprocessor 101 executes the browser application 121 stored in the hard disk device 104. As a result, the browser enters the execution state in the client PC (100).

実行状態にあるブラウザー(以下、PCのブラウザーと呼ぶ。)と、プログラム作成サーバー装置200とは、ネットワーク20を介して、情報を送受信する。これにより、プログラム作成サーバー装置200において、制御プログラムが作成される。
また、PCのブラウザーは、通信部105から、ネットワーク20を介して、制御プログラムの作成が完了したことを示す完了通知を受け取る。完了通知を受け取ると、PCのブラウザーは、ユーザーの指示により、制御プログラムのプレビュー要求を、通信部105及びネットワーク20を介して、プログラム作成サーバー装置200に対して送信する。
A browser in the execution state (hereinafter referred to as a PC browser) and the program creation server device 200 transmit and receive information via the network 20. As a result, a control program is created in the program creation server device 200.
In addition, the browser of the PC receives a completion notification indicating that the creation of the control program is completed from the communication unit 105 via the network 20. Upon receiving the completion notification, the browser of the PC transmits a control program preview request to the program creation server device 200 via the communication unit 105 and the network 20 in accordance with a user instruction.

また、PCのブラウザーは、プログラム作成サーバー装置200から、ネットワーク20及び通信部105を介して、プログラム開発支援装置300のネットワーク20における存在位置を示すURLを受け取る。
また、PCのブラウザーは、ユーザーからMFPの機種を示すMFP機種IDの入力を受け付ける。また、制御プログラムに含まれる表示項目の使用許否を示すライセンス情報122をハードディスクデバイス104から読み出す。また、PCのブラウザーは、受け取ったURLを指定して、入力を受け付けたMFP機種ID及び読み出したライセンス情報を、通信部105及びネットワーク20を介して、プログラム開発支援装置300に対して送信する。
The browser of the PC receives a URL indicating the location of the program development support apparatus 300 in the network 20 from the program creation server apparatus 200 via the network 20 and the communication unit 105.
Further, the browser of the PC accepts an input of the MFP model ID indicating the MFP model from the user. Further, the license information 122 indicating whether or not the display item included in the control program is permitted is read from the hard disk device 104. Further, the browser of the PC designates the received URL and transmits the input MFP model ID and the read license information to the program development support apparatus 300 via the communication unit 105 and the network 20.

また、PCのブラウザーは、プログラム開発支援装置300から、ネットワーク20及び通信部105を介して、MFP機種が対応表421に含まれていないことを示すメッセージを受信する。次に、PCのブラウザーは、受信したメッセージを表示する。
また、PCのブラウザーは、プログラム開発支援装置300から、通信部105を介して、フレームを受信する。ここで、フレームは、PCのブラウザーにおいて、表示されるべき画像のフレームである。次に、PCのブラウザーは、フレームを、入出力制御部106を介して、モニター107に出力することにより、フレームを表示する。
Further, the browser of the PC receives a message indicating that the MFP model is not included in the correspondence table 421 from the program development support apparatus 300 via the network 20 and the communication unit 105. Next, the browser of the PC displays the received message.
The browser of the PC receives the frame from the program development support apparatus 300 via the communication unit 105. Here, the frame is a frame of an image to be displayed in the browser of the PC. Next, the browser of the PC displays the frame by outputting the frame to the monitor 107 via the input / output control unit 106.

また、PCのブラウザーは、仮想クライアント装置600から、仮想制御装置400を介して、画像データを受信する。次に、PCのブラウザーは、画像データを、入出力制御部106を介して、モニター107に出力することにより、画像データを表示する。
1.3 プログラム作成サーバー装置200
プログラム作成サーバー装置200は、図3に示すように、ウェブサービスインタフェース部201、サービスユーザーインタフェース部202、プレビュー制御部203、記憶部204、通信部205、HTMLエディタ部206及びIWSコマンド生成部207から構成されている。
Further, the browser of the PC receives image data from the virtual client device 600 via the virtual control device 400. Next, the browser of the PC displays the image data by outputting the image data to the monitor 107 via the input / output control unit 106.
1.3 Program creation server device 200
As shown in FIG. 3, the program creation server device 200 includes a web service interface unit 201, a service user interface unit 202, a preview control unit 203, a storage unit 204, a communication unit 205, an HTML editor unit 206, and an IWS command generation unit 207. It is configured.

プログラム作成サーバー装置200は、具体的には、マイクロプロセッサー、ROM、RAM、ハードディスクデバイスなどから構成されるコンピューターシステムである。前記ハードディスクデバイスには、コンピュータープログラムが記憶されている。前記マイクロプロセッサーが、前記コンピュータープログラムに従って動作することにより、プログラム作成サーバー装置200は、その機能を達成する。   Specifically, the program creation server device 200 is a computer system including a microprocessor, a ROM, a RAM, a hard disk device, and the like. A computer program is stored in the hard disk device. The program creation server apparatus 200 achieves its functions by the microprocessor operating according to the computer program.

(1)記憶部204
記憶部204は、一例として、ハードディスクデバイスから構成され、制御プログラム221を記憶するための領域を備えている。制御プログラム221は、クライアントPC(100)のユーザーにより、クライアントPC(100)とプログラム作成サーバー装置200とを用いて、作成されたプログラムである。
(1) Storage unit 204
For example, the storage unit 204 includes a hard disk device and includes an area for storing the control program 221. The control program 221 is a program created by the user of the client PC (100) using the client PC (100) and the program creation server device 200.

(2)ウェブサービスインタフェース部201、サービスユーザーインタフェース部202及び通信部205
通信部205は、ネットワーク20を介して、他の装置との間で情報の送受信を行う。
ウェブサービスインタフェース部201は、通信部205及びネットワーク20を介して、他の装置との間で、World Wide Web関連技術を用いて、プログラム作成サーバー装置200が有する機能を利用できるようにする。
(2) Web service interface unit 201, service user interface unit 202, and communication unit 205
The communication unit 205 transmits / receives information to / from other devices via the network 20.
The web service interface unit 201 enables the functions of the program creation server device 200 to be used with other devices via the communication unit 205 and the network 20 using World Wide Web related technology.

サービスユーザーインタフェース部202は、HTMLエディタ部206及びプレビュー制御部203に対して、ユーザーインタフェースを提供する。
(3)HTMLエディタ部206及びIWSコマンド生成部207
HTMLエディタ部206は、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201、通信部205及びネットワーク20を介して、クライアントPC(100)のユーザーに対して、HTMLに基づいて記述される制御プログラムの作成、更新、編集、削除などのエディタ機能を提供する。
The service user interface unit 202 provides a user interface to the HTML editor unit 206 and the preview control unit 203.
(3) HTML editor unit 206 and IWS command generation unit 207
The HTML editor unit 206 creates a control program described based on HTML for the user of the client PC (100) via the service user interface unit 202, the web service interface unit 201, the communication unit 205, and the network 20. Provides editor functions such as update, edit and delete.

HTMLエディタ部206は、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プログラム作成のリクエストを受け付ける。リクエストを受け付けると、HTMLエディタ部206は、クライアントPC(100)との間で、情報を送受信して、制御プログラムの作成を開始する。
HTMLエディタ部206は、作成、更新、編集、削除などの操作がされた制御プログラムを、記憶部204に記憶する。
The HTML editor unit 206 accepts a program creation request via the communication unit 205, the web service interface unit 201, and the service user interface unit 202. When receiving the request, the HTML editor unit 206 transmits and receives information to and from the client PC (100), and starts creating a control program.
The HTML editor unit 206 stores in the storage unit 204 a control program that has been subjected to operations such as creation, update, editing, and deletion.

制御プログラムの作成が完了すると、HTMLエディタ部206は、制御プログラムの作成が完了したことを示す完了通知を生成する。次に、HTMLエディタ部206は、制御プログラムの作成が完了したことを示す完了通知を、ネットワーク20を介して、クライアントPC(100)に対して送信する。
IWSコマンド生成部207は、制御プログラムに含まれるIWS(Internal Web Service)コマンドを生成する。
When the creation of the control program is completed, the HTML editor unit 206 generates a completion notification indicating that the creation of the control program is completed. Next, the HTML editor unit 206 transmits a completion notification indicating that the creation of the control program is completed to the client PC (100) via the network 20.
The IWS command generation unit 207 generates an IWS (Internal Web Service) command included in the control program.

制御プログラムの一例を図4に示す。図4に示す制御プログラム221は、HTMLにより記述されたものである。スキャン条件を設定するための複数の入力フィールドとスキャン操作のための操作ボタンを含む画面の表示動作を規定している。この図に示すように、制御プログラム221は、複数のタグを含んでいる。
これらのタグのうち、タグ222は、後述する内部コマンドとして、「scan.py」を含んでいる。「scan.py」は、MFPに対して、スキャンをするよう要求する命令である。
An example of the control program is shown in FIG. The control program 221 shown in FIG. 4 is written in HTML. A screen display operation including a plurality of input fields for setting scanning conditions and operation buttons for scanning operation is defined. As shown in this figure, the control program 221 includes a plurality of tags.
Of these tags, the tag 222 includes “scan.py” as an internal command to be described later. “Scan.py” is a command for requesting the MFP to scan.

制御プログラム221は、表示されるべき文字のフォントの種類の指定を含むとしてもよい。フォントには、使用する際に対価を要求される有償フォントと、対価を要求されない無償フォントが存在する。フォントとして、有償フォントが指定されている場合には、当該有償フォントを使用するための許可を必要とする。上述したライセンス情報により、有償フォントの使用が許可される。すなわち、ライセンス情報に、当該有償フォントを識別するフォント識別情報が含まれる場合には、当該有償フォントの使用が許可される。   The control program 221 may include designation of the font type of characters to be displayed. As fonts, there are paid fonts that require a fee when used, and free fonts that do not require a fee. When a paid font is specified as the font, permission to use the paid font is required. The license information described above permits use of paid fonts. That is, when the license information includes font identification information for identifying the paid font, use of the paid font is permitted.

制御プログラム221は、表示されるべき静止画や動画の指定を含むとしてもよい。静止画や動画にも、フォントと同様に、使用する際に対価を要求されるものと、対価を要求されないものが存在する。対価を要求される静止画や動画を使用する場合には、フォントと同様に、ライセンス情報によりその許可が示される。
また、制御プログラム221に基づいて、MFPの操作パネルに表示される画面のイメージを図5に示す。図5に示す画面261は、スキャンのための条件を設定するための入力フィールド262、263、264、265とスキャン操作のための操作ボタン266を含んでいる。
The control program 221 may include designation of still images and moving images to be displayed. As with fonts, there are still images and moving images that require a fee when used, and those that do not require a fee. In the case of using a still image or a moving image for which compensation is required, the permission is indicated by the license information as in the case of the font.
FIG. 5 shows an image of a screen displayed on the operation panel of the MFP based on the control program 221. A screen 261 shown in FIG. 5 includes input fields 262, 263, 264, and 265 for setting conditions for scanning, and operation buttons 266 for scanning operation.

入力フィールド262は、電子メールアドレスを入力するためのフィールドである。入力フィールド263は、スキャンを行う際の解像度を設定するためのフィールドである。入力フィールド264は、スキャンされた原稿をファイルするときのファイルタイプを設定するためフィールドである。入力フィールド265は、原稿のスキャン面を設定するためのフィールドである。片面又は両面が設定される。   The input field 262 is a field for inputting an e-mail address. The input field 263 is a field for setting a resolution when performing scanning. The input field 264 is a field for setting a file type when the scanned document is filed. The input field 265 is a field for setting the scan surface of the document. One side or both sides are set.

(4)プレビュー制御部203
プレビュー制御部203は、クライアントPC(100)から、ネットワーク20、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プレビュー要求を受け取る。
プレビュー要求を受け取ると、プレビュー制御部203は、記憶部204から作成が完了した制御プログラム221を読み出す。次に、プレビュー制御部203は、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201、通信部205及びネットワーク20を介して、読み出した制御プログラムを、制御プログラムのプレビュー画面の生成の指示とともに、プログラム開発支援装置300に対して、送信する。
(4) Preview control unit 203
The preview control unit 203 receives a preview request from the client PC (100) via the network 20, the communication unit 205, the web service interface unit 201, and the service user interface unit 202.
Upon receiving the preview request, the preview control unit 203 reads the control program 221 that has been created from the storage unit 204. Next, the preview control unit 203 develops the read control program through the service user interface unit 202, the web service interface unit 201, the communication unit 205, and the network 20 together with an instruction to generate a control program preview screen. It transmits to the support apparatus 300.

プレビュー要求を受け取ると、プレビュー制御部203は、プログラム開発支援装置300のネットワーク20における存在位置を示すURLを内部から読み出す。次に、読み出したURLを、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201、通信部205及びネットワーク20を介して、クライアントPC(100)に対して送信する。   When receiving the preview request, the preview control unit 203 reads a URL indicating the location of the program development support apparatus 300 in the network 20 from the inside. Next, the read URL is transmitted to the client PC (100) via the service user interface unit 202, the web service interface unit 201, the communication unit 205, and the network 20.

1.4 プログラム開発支援装置300
プログラム開発支援装置300は、図6に示すように、マイクロプロセッサー301、ROM(302)、RAM(303)、ハードディスクデバイス304及び通信部305から構成されている。マイクロプロセッサー301、ROM(302)、RAM(303)、ハードディスクデバイス304及び通信部305は、バス309を介して、接続されている。
1.4 Program development support device 300
As illustrated in FIG. 6, the program development support apparatus 300 includes a microprocessor 301, a ROM (302), a RAM (303), a hard disk device 304, and a communication unit 305. The microprocessor 301, ROM (302), RAM (303), hard disk device 304, and communication unit 305 are connected via a bus 309.

(1)ハードディスクデバイス304、ROM(302)及びRAM(303)
ハードディスクデバイス304は、仮想サーバーアプリケーションプログラム(以下、仮想サーバーアプリと称する。)331、仮想制御アプリケーションプログラム(以下、仮想制御アプリと称する。)333、仮想シミュレーターアプリケーションプログラム(以下、仮想シミュレーターアプリと称する。)334及びその他のコンピュータープログラムを記憶している。仮想サーバーアプリ331、仮想制御アプリ333及び仮想シミュレーターアプリ334については、後述する。
(1) Hard disk device 304, ROM (302) and RAM (303)
The hard disk device 304 includes a virtual server application program (hereinafter referred to as a virtual server application) 331, a virtual control application program (hereinafter referred to as a virtual control application) 333, a virtual simulator application program (hereinafter referred to as a virtual simulator application). 334 and other computer programs are stored. The virtual server application 331, the virtual control application 333, and the virtual simulator application 334 will be described later.

その他のコンピュータープログラムは、オペレーティングシステム、ネットワークへ接続し他の端末装置と通信を行うためのコンピュータープログラム等である。
ROM(302)及びRAM(303)は、データやプログラムを記憶するための、半導体メモリである。
(2)マイクロプロセッサー301
マイクロプロセッサー301は、それぞれのコンピュータープログラムに従って、動作する。
The other computer program is an operating system, a computer program for connecting to a network and communicating with other terminal devices.
A ROM (302) and a RAM (303) are semiconductor memories for storing data and programs.
(2) Microprocessor 301
The microprocessor 301 operates according to each computer program.

仮想サーバーアプリ331、仮想制御アプリ333及び仮想シミュレーターアプリ334が、それぞれ、マイクロプロセッサー301により、実行状態になることにより、仮想的に、仮想サーバー装置500、仮想制御装置400及び仮想シミュレーター700を実現する。仮想サーバー装置500、仮想制御装置400及び仮想シミュレーター700については、後述する。   The virtual server application 331, the virtual control application 333, and the virtual simulator application 334 are virtually executed by the microprocessor 301, so that the virtual server apparatus 500, the virtual control apparatus 400, and the virtual simulator 700 are virtually realized. . The virtual server device 500, the virtual control device 400, and the virtual simulator 700 will be described later.

なお、プログラム開発支援装置300に対して、電源の投入がされた直後に、仮想サーバーアプリ331、仮想制御アプリ333及び仮想シミュレーターアプリ334が実行され、仮想サーバー装置500、仮想制御装置400及び仮想シミュレーター700が実行状態となる。
(3)通信部305
通信部305は、ネットワーク20を介して、他の装置との間で情報の送受信を行う。
Note that the virtual server application 331, the virtual control application 333, and the virtual simulator application 334 are executed immediately after the program development support apparatus 300 is turned on, and the virtual server apparatus 500, the virtual control apparatus 400, and the virtual simulator are executed. 700 becomes an execution state.
(3) Communication unit 305
The communication unit 305 transmits / receives information to / from other devices via the network 20.

1.5 仮想制御装置400
仮想制御装置400は、上述したように、プログラム開発支援装置300において、仮想制御アプリ333が実行状態になることにより、仮想的に実現される装置である。
仮想制御装置400は、図7に示すように、制御部401、ブラウザー判定部402、記憶部404、通信部405及び実行部406から構成されている。
1.5 Virtual control device 400
As described above, the virtual control device 400 is a device that is virtually realized when the virtual control application 333 enters the execution state in the program development support device 300.
As shown in FIG. 7, the virtual control device 400 includes a control unit 401, a browser determination unit 402, a storage unit 404, a communication unit 405, and an execution unit 406.

制御部401、ブラウザー判定部402、通信部405及び実行部406は、マイクロプロセッサー301が仮想制御アプリ333を実行することにより、仮想的に実現される。
(1)記憶部404
記憶部404は、ハードディスクデバイス304により、実現される。
The control unit 401, the browser determination unit 402, the communication unit 405, and the execution unit 406 are virtually realized when the microprocessor 301 executes the virtual control application 333.
(1) Storage unit 404
The storage unit 404 is realized by the hard disk device 304.

記憶部404は、図7に示すように、対応表421、仮想クライアントアプリケーションプログラム(以下、仮想クライアントアプリと称する。)431、432、・・・を記憶している。
仮想クライアントアプリ431、432、・・・のいずれか一つが、マイクロプロセッサー301により、実行状態になることにより、仮想的に、仮想クライアント装置600、・・・のいずれか1台を実現する。仮想クライアント装置600、・・・については、後述する。
As shown in FIG. 7, the storage unit 404 stores a correspondence table 421 and virtual client application programs (hereinafter referred to as virtual client applications) 431, 432,.
When one of the virtual client applications 431, 432,... Is executed by the microprocessor 301, one of the virtual client devices 600,. The virtual client devices 600,... Will be described later.

対応表421は、図8に示すように、複数の対応データを含んでいる。各対応データは、仮想クライアントID及び1個以上のMFP機種IDから構成される。仮想クライアントIDは、仮想クライアントアプリを識別する識別子である。MFP機種IDは、MFPの機種を識別する識別子である。
対応表421は、図7に示すように、対応データ424を含む。対応データ424は、仮想クライアントID(422)「1」及びMFP機種ID(423)「1001」を含む。対応データ424は、仮想クライアント装置に含まれるブラウザープログラムと同一仕様のブラウザープログラムが、MFP機種ID(423)「1001」により識別されるMFPに含まれていることを示している。言い換えると、対応データ424は、仮想クライアント装置に含まれるブラウザー機能と同一仕様のブラウザー機能が、MFP機種ID(423)「1001」により識別されるMFPに含まれていることを示している。当該仮想クライアント装置は、仮想クライアントID(422)「1」により識別される仮想クライアントアプリが実行されることにより仮想的に実現される。
The correspondence table 421 includes a plurality of pieces of correspondence data as shown in FIG. Each correspondence data includes a virtual client ID and one or more MFP model IDs. The virtual client ID is an identifier that identifies a virtual client application. The MFP model ID is an identifier for identifying the MFP model.
The correspondence table 421 includes correspondence data 424 as shown in FIG. The correspondence data 424 includes a virtual client ID (422) “1” and an MFP model ID (423) “1001”. Correspondence data 424 indicates that the browser program having the same specifications as the browser program included in the virtual client device is included in the MFP identified by the MFP model ID (423) “1001”. In other words, the correspondence data 424 indicates that a browser function having the same specifications as the browser function included in the virtual client device is included in the MFP identified by the MFP model ID (423) “1001”. The virtual client device is virtually realized by executing the virtual client application identified by the virtual client ID (422) “1”.

(2)ブラウザー判定部402
ブラウザー判定部402は、以下に示すようにして、複数のブラウザーの中から、MFP機種IDにより示されるMFPが有するブラウザーと同一仕様のブラウザーが存在するか否かを判定する。
ブラウザー判定部402は、制御部401からMFP機種IDを受け取る。
(2) Browser determination unit 402
The browser determination unit 402 determines whether there is a browser having the same specification as the browser of the MFP indicated by the MFP model ID from among a plurality of browsers as described below.
The browser determination unit 402 receives the MFP model ID from the control unit 401.

次に、ブラウザー判定部402は、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれているか否かを判定する。
受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていないと判定する場合、ブラウザー判定部402は、通信部405及びネットワーク20を介して、MFP機種IDが対応表421に含まれていないことを示すメッセージを、クライアントPC(100)に対して、送信する。
Next, the browser determination unit 402 determines whether or not the correspondence table 421 includes the same MFP model ID as the received MFP model ID.
When determining that the same MFP model ID as the received MFP model ID is not included in the correspondence table 421, the browser determination unit 402 sets the MFP model ID in the correspondence table 421 via the communication unit 405 and the network 20. A message indicating that it is not included is transmitted to the client PC (100).

受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていると判定する場合、ブラウザー判定部402は、対応表421から、受け取ったMFP機種IDと同一のMFP機種IDと対応する仮想クライアントIDを読み出す。これにより、仮想クライアントアプリが選択される。次に、ブラウザー判定部402は、読み出した仮想クライアントIDを実行部406に対して、出力する。   When determining that the same MFP model ID as the received MFP model ID is included in the correspondence table 421, the browser determination unit 402 corresponds to the same MFP model ID as the received MFP model ID from the correspondence table 421. The virtual client ID to be read is read. Thereby, a virtual client application is selected. Next, the browser determination unit 402 outputs the read virtual client ID to the execution unit 406.

(3)実行部406
実行部406は、ブラウザー判定部402から、仮想クライアントIDを受け取る。次に、実行部406は、記憶部404に記憶されている仮想クライアントアプリ431、432、・・・のうち、受け取った仮想クライアントIDにより識別される前記仮想クライアントアプリを読み出す。次に、読み出した仮想クライアントアプリを起動して実行状態とする。これにより、仮想クライアント装置600が実行状態となる。こうして、仮想クライアント装置600が仮想的に実現される。
(3) Execution unit 406
The execution unit 406 receives the virtual client ID from the browser determination unit 402. Next, the execution unit 406 reads the virtual client application identified by the received virtual client ID among the virtual client applications 431, 432,... Stored in the storage unit 404. Next, the virtual client application that has been read out is activated to enter an execution state. As a result, the virtual client device 600 enters an execution state. Thus, the virtual client device 600 is virtually realized.

(4)通信部405
通信部405は、クライアントPC(100)との間で、情報の送受信を行い、プログラム作成サーバー装置200との間で、情報の送受信を行う。また、通信部405は、仮想サーバー装置500との間で、情報の送受信を行い、また、仮想クライアント装置600との間で、情報の送受信を行う。
(4) Communication unit 405
The communication unit 405 transmits / receives information to / from the client PC (100), and transmits / receives information to / from the program creation server device 200. The communication unit 405 transmits / receives information to / from the virtual server device 500 and transmits / receives information to / from the virtual client device 600.

(5)制御部401
制御部401は、プログラム作成サーバー装置200から、制御プログラムのプレビュー画面の生成の指示とともに、制御プログラムを受信する。次に、制御部401は、受信した制御プログラムを仮想サーバー装置500に対して送信する。
制御部401は、クライアントPC(100)から、MFP機種ID及びライセンス情報を受信する。次に、制御部401は、MFP機種IDをブラウザー判定部402に対して出力する。
(5) Control unit 401
The control unit 401 receives a control program from the program creation server device 200 together with an instruction to generate a control program preview screen. Next, the control unit 401 transmits the received control program to the virtual server device 500.
The control unit 401 receives an MFP model ID and license information from the client PC (100). Next, the control unit 401 outputs the MFP model ID to the browser determination unit 402.

ブラウザー判定部402により、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていると判定される場合、制御部401は、通信部405及びネットワーク20を介して、クライアントPC(100)に対して、フレームを送信する。ここで、フレームは、クライアントPC(100)で実行状態のブラウザーにおいて、表示されるべき画像のフレームである。   When the browser determination unit 402 determines that the same MFP model ID as the received MFP model ID is included in the correspondence table 421, the control unit 401 transmits the client PC via the communication unit 405 and the network 20. A frame is transmitted to (100). Here, the frame is a frame of an image to be displayed in the browser being executed on the client PC (100).

制御部401は、仮想クライアント装置600に対して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する。また、制御部401は、仮想クライアント装置600に対して、MFP機種ID及びライセンス情報を出力する。
制御部401は、実行状態の前記仮想クライアントアプリ、つまり、仮想クライアント装置600に対して、仮想クライアント装置600が有するブラウザープログラムを用いて、前記制御プログラムに従って描画させ、画像データを生成させる。
The control unit 401 specifies a control program by outputting a program identification number for identifying a control program to the virtual client device 600. Further, the control unit 401 outputs the MFP model ID and license information to the virtual client device 600.
The control unit 401 causes the virtual client application in the running state, that is, the virtual client device 600 to draw according to the control program using a browser program included in the virtual client device 600 and generate image data.

1.6 仮想サーバー装置500
仮想サーバー装置500は、上述したように、プログラム開発支援装置300において、仮想サーバーアプリ331が実行状態になることにより、仮想的に実現される装置である。
仮想サーバー装置500は、図9に示すように、制御部501、記憶部504及び通信部505から構成されている。
1.6 Virtual server device 500
As described above, the virtual server device 500 is a device that is virtually realized when the virtual server application 331 enters the execution state in the program development support device 300.
As illustrated in FIG. 9, the virtual server device 500 includes a control unit 501, a storage unit 504, and a communication unit 505.

制御部501及び通信部505は、マイクロプロセッサー301が仮想サーバーアプリ331を実行することにより、仮想的に実現される。
(1)記憶部504
記憶部504は、ハードディスクデバイス304から構成されている。記憶部504は、制御プログラム521を記憶するための領域を備えている。
The control unit 501 and the communication unit 505 are virtually realized by the microprocessor 301 executing the virtual server application 331.
(1) Storage unit 504
The storage unit 504 includes a hard disk device 304. The storage unit 504 includes an area for storing the control program 521.

(2)制御部501
制御部501は、通信部505を介して、仮想制御装置400から制御プログラムを受け取る。次に、受け取った制御プログラムを、制御プログラム521として、記憶部504に書き込む。
また、制御部501は、仮想クライアント装置600から、通信部505を介して、制御プログラムを識別するプログラム識別番号を受信する。次に、制御部501は、記憶部504から、受信したプログラム識別番号により識別される制御プログラムを読み出す。次に、読み出した制御プログラムを、通信部505を介して、仮想クライアント装置600に対して送信する。
(2) Control unit 501
The control unit 501 receives a control program from the virtual control device 400 via the communication unit 505. Next, the received control program is written in the storage unit 504 as the control program 521.
In addition, the control unit 501 receives a program identification number for identifying a control program from the virtual client device 600 via the communication unit 505. Next, the control unit 501 reads the control program identified by the received program identification number from the storage unit 504. Next, the read control program is transmitted to the virtual client device 600 via the communication unit 505.

(3)通信部505
通信部505は、仮想制御装置400との間で、また、仮想クライアント装置との間で、情報の送受信を行う。
1.7 仮想クライアント装置600
仮想クライアント装置600は、上述したように、プログラム開発支援装置300において、仮想クライアントアプリ431、432、・・・のいずれか一つが実行状態になることにより、仮想的に実現される装置である。
(3) Communication unit 505
The communication unit 505 transmits / receives information to / from the virtual control device 400 and from / to the virtual client device.
1.7 Virtual client device 600
As described above, the virtual client device 600 is a device that is virtually realized when one of the virtual client applications 431, 432,...

仮想クライアント装置600は、図10に示すように、制御部601、画像データ生成部602、シミュレーター制御部603、記憶部604、通信部605、差替判定部606、画像差替部607及びブラウザー制御部608から構成されている。シミュレーター制御部603は、内部コマンド判定部611を含む。
制御部601、画像データ生成部602、シミュレーター制御部603、通信部605、差替判定部606、画像差替部607、ブラウザー制御部608及び内部コマンド判定部611は、マイクロプロセッサー301が仮想クライアントアプリ431、432、・・・のいずれか一つを実行することにより、仮想的に実現される。
As shown in FIG. 10, the virtual client device 600 includes a control unit 601, an image data generation unit 602, a simulator control unit 603, a storage unit 604, a communication unit 605, a replacement determination unit 606, an image replacement unit 607, and browser control. Part 608. The simulator control unit 603 includes an internal command determination unit 611.
The control unit 601, the image data generation unit 602, the simulator control unit 603, the communication unit 605, the replacement determination unit 606, the image replacement unit 607, the browser control unit 608, and the internal command determination unit 611 are configured by the microprocessor 301 as a virtual client application. It is virtually realized by executing any one of 431, 432,.

(1)記憶部604
記憶部604は、ハードディスクデバイス304から構成されている。記憶部604は、制御プログラム631、ブラウザーアプリ632及び画像データ634を記憶するための領域を備えている。
制御プログラム631は、仮想サーバー装置500から受け取った制御プログラムである。
(1) Storage unit 604
The storage unit 604 includes a hard disk device 304. The storage unit 604 includes an area for storing the control program 631, the browser application 632, and the image data 634.
The control program 631 is a control program received from the virtual server device 500.

ブラウザーアプリ632は、マークアップ言語により記述された制御プログラムに従って、表示動作をするブラウザーアプリケーションプログラムである。
画像データ634は、ブラウザーアプリ632を実行状態としたブラウザーにより描画された画像を表すデータである。
(2)シミュレーター制御部603
シミュレーター制御部603は、内部コマンド判定部611を含む。
The browser application 632 is a browser application program that performs a display operation in accordance with a control program written in a markup language.
The image data 634 is data representing an image drawn by a browser in which the browser application 632 is in an execution state.
(2) Simulator control unit 603
The simulator control unit 603 includes an internal command determination unit 611.

内部コマンド判定部611は、以下に示すようにして、記憶部604に記憶されている制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれるか否かを判定する。
内部コマンドには、例えば、印刷を要求するコマンド、スキャンを要求するコマンド、ファクシミリによる送信を要求するコマンドがある。また、内部コマンドの別の一例は、MFPが保持するトナーの残量を取得するコマンドであり、さらに、別の一例は、MFPにセットされた用紙の残り枚数を取得するコマンドである。
The internal command determination unit 611 determines whether or not the control program stored in the storage unit 604 includes an internal command that requests an operation specific to the MFP, as described below.
The internal command includes, for example, a command requesting printing, a command requesting scanning, and a command requesting transmission by facsimile. Another example of the internal command is a command for acquiring the remaining amount of toner held by the MFP, and another example is a command for acquiring the remaining number of sheets set in the MFP.

内部コマンド判定部611は、あらかじめ、これらの内部コマンドを記載したコマンドリスト651を保持している。
内部コマンド判定部611は、制御プログラムに含まれるコマンドが、コマンドリスト651に記載されている内部コマンドと一致するか否かを確認する。これにより、制御プログラムの中に内部コマンドが含まれるか否かを判定する。
The internal command determination unit 611 holds a command list 651 describing these internal commands in advance.
The internal command determination unit 611 checks whether the command included in the control program matches the internal command described in the command list 651. Thus, it is determined whether or not an internal command is included in the control program.

制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれると判定される場合、シミュレーター制御部603は、シミュレートのリクエストを、通信部605を介して、仮想シミュレーター700に対して送信する。また、シミュレーター制御部603は、制御プログラムのうち、内部コマンドを含むタグを、ブラウザー制御部608が受信したMFP機種IDとともに、通信部605を介して、仮想シミュレーター700に対して送信する。なお、制御プログラムが内部コマンドを含む場合、当該制御プログラムを仮想シミュレーター700に対して送信してもよい。   When it is determined that the control program includes an internal command that requests an operation unique to the MFP, the simulator control unit 603 sends a simulation request to the virtual simulator 700 via the communication unit 605. Send. Further, the simulator control unit 603 transmits a tag including an internal command in the control program to the virtual simulator 700 via the communication unit 605 together with the MFP model ID received by the browser control unit 608. When the control program includes an internal command, the control program may be transmitted to the virtual simulator 700.

制御プログラムの中に、MFPの状態に応じた動作をする内部コマンドが含まれないと判定される場合、シミュレーター制御部603は、シミュレートのリクエストを仮想シミュレーター700に対して送信しない。
差替判定部606により、前記制御プログラム内に差替領域が存在すると判定される場合、シミュレーター制御部603は、以下のようにして、仮想シミュレーター700が差替画像を保持しているか否かを判定する。
When it is determined that the control program does not include an internal command that operates according to the state of the MFP, the simulator control unit 603 does not transmit a simulation request to the virtual simulator 700.
When the replacement determination unit 606 determines that a replacement area exists in the control program, the simulator control unit 603 determines whether the virtual simulator 700 holds a replacement image as follows. judge.

シミュレーター制御部603は、あらかじめ、表示項目を示す表示項目識別子と、仮想シミュレーター700に保持されている差替画像を示す差替画像識別子とを対応付けて含むリストを保持している。シミュレーター制御部603は、このリストを用いて、前記制御プログラムに含まれる表示項目を示す表示項目識別子が、このリストに含まれるか否かを判定する。前記制御プログラムに含まれる表示項目を示す表示項目識別子が、このリストに含まれる場合、シミュレーター制御部603は、仮想シミュレーター700が差替画像を保持していると判定する。   The simulator control unit 603 previously holds a list including a display item identifier indicating a display item and a replacement image identifier indicating a replacement image stored in the virtual simulator 700 in association with each other. The simulator control unit 603 uses this list to determine whether or not a display item identifier indicating a display item included in the control program is included in the list. When a display item identifier indicating a display item included in the control program is included in this list, the simulator control unit 603 determines that the virtual simulator 700 holds a replacement image.

シミュレーター制御部603は、仮想シミュレーター700が差替画像を保持していると判定する場合、差替画像のリクエストを、通信部605を介して、仮想シミュレーター700に対して送信する。
シミュレーター制御部603は、仮想シミュレーター700が差替画像を保持していないと判定する場合、差替画像のリクエストを、通信部605及びネットワーク20を介して、外部サーバー装置800に対して送信する。
When the simulator control unit 603 determines that the virtual simulator 700 holds a replacement image, the simulator control unit 603 transmits a replacement image request to the virtual simulator 700 via the communication unit 605.
When the simulator control unit 603 determines that the virtual simulator 700 does not hold a replacement image, the simulator control unit 603 transmits a replacement image request to the external server device 800 via the communication unit 605 and the network 20.

差替判定部606により、前記制御プログラム内に差替領域が存在しないと判定される場合、シミュレーター制御部603は、上記の差替画像の取得を行わない。
(3)差替判定部606
差替判定部606は、仮想制御装置400から仮想クライアント装置600に対して、ライセンス情報が送信された場合、ブラウザー制御部608から当該ライセンス情報を受け取る。
When the replacement determination unit 606 determines that no replacement area exists in the control program, the simulator control unit 603 does not acquire the replacement image.
(3) Replacement determination unit 606
When the license information is transmitted from the virtual control device 400 to the virtual client device 600, the replacement determination unit 606 receives the license information from the browser control unit 608.

差替判定部606は、以下に示すようにして、受け取ったライセンス情報を用いて、記憶部604に記憶されている制御プログラム631内に差替領域が存在するか否かを、判定する。
差替判定部606は、記憶部604に記憶されている制御プログラム631から、フォント識別名称を抽出する。次に、抽出したフォント識別名称がライセンス情報に含まれているか否かを判定する。
The replacement determination unit 606 determines whether or not a replacement area exists in the control program 631 stored in the storage unit 604 using the received license information as described below.
The replacement determination unit 606 extracts a font identification name from the control program 631 stored in the storage unit 604. Next, it is determined whether or not the extracted font identification name is included in the license information.

抽出したフォント識別名称がライセンス情報に含まれていないと判定する場合、又は、差替判定部606がライセンス情報を受け取っていない場合、差替判定部606は、差替領域が存在すると判定する。言い換えると、差替判定部606は、前記制御プログラムに含まれる表示項目について、ライセンス情報を取得できていない場合、又は、取得した前記ライセンス情報により、使用許可がされていないと判定する場合、前記制御プログラム内に差替領域が存在すると判定する。   When it is determined that the extracted font identification name is not included in the license information, or when the replacement determination unit 606 has not received the license information, the replacement determination unit 606 determines that a replacement area exists. In other words, the replacement determination unit 606 determines that the license information has not been acquired for the display item included in the control program, or if the use is not permitted by the acquired license information. It is determined that a replacement area exists in the control program.

抽出したフォント識別名称がライセンス情報に含まれていると判定される場合、差替判定部606は、差替領域が存在しないと判定する。言い換えると、差替判定部606は、前記制御プログラムに含まれる表示項目について、取得した前記ライセンス情報により、使用許可がされていると判定する場合、前記制御プログラム内に差替領域が存在しないと判定する。   When it is determined that the extracted font identification name is included in the license information, the replacement determination unit 606 determines that there is no replacement area. In other words, when the replacement determination unit 606 determines that use is permitted for the display item included in the control program based on the acquired license information, there is no replacement area in the control program. judge.

(4)画像差替部607
画像差替部607は、仮想シミュレーター700から、又は、外部サーバー装置800から、差替画像を受信する。仮想シミュレーター700から、又は、外部サーバー装置800から、差替画像を受信した場合、画像差替部607は、制御プログラムにより含まれる表示項目について、受信した差替画像に差し替える。
(4) Image replacement unit 607
The image replacement unit 607 receives a replacement image from the virtual simulator 700 or from the external server device 800. When the replacement image is received from the virtual simulator 700 or from the external server device 800, the image replacement unit 607 replaces the display item included in the control program with the received replacement image.

(5)ブラウザー制御部608
ブラウザー制御部608は、以下に示すようにして、仮想制御装置401のブラウザー判定部402により、複数のブラウザーの中から、MFP機種IDにより示されるMFPが有するブラウザーと同一仕様のブラウザーが存在すると判定される場合、前記MFPが有するブラウザー機能と同一仕様のブラウザー機能を有する仮想クライアント装置600により、前記制御プログラムに従って描画させることにより、画像データを生成させる。
(5) Browser control unit 608
The browser control unit 608 determines that there is a browser having the same specification as the browser of the MFP indicated by the MFP model ID from among a plurality of browsers by the browser determination unit 402 of the virtual control device 401 as described below. In this case, image data is generated by causing the virtual client device 600 having a browser function having the same specifications as the browser function of the MFP to perform drawing according to the control program.

ブラウザー制御部608は、記憶部604に記憶されているブラウザーアプリ632を起動し、実行状態にする。
また、ブラウザー制御部608は、仮想制御装置400から、制御プログラムを識別するプログラム識別番号を受信する。次に、制御部601の制御により、受信したプログラム識別番号を仮想サーバー装置500に送信する。また、ブラウザー制御部608は、仮想制御装置400から、MFP機種ID及びライセンス情報を受信する。受信したライセンス情報を差替判定部606に対して出力し、受信したMFP機種IDをシミュレーター制御部603に対して出力する。
The browser control unit 608 activates the browser application 632 stored in the storage unit 604 and puts it into an execution state.
Also, the browser control unit 608 receives a program identification number for identifying a control program from the virtual control device 400. Next, the received program identification number is transmitted to the virtual server device 500 under the control of the control unit 601. Also, the browser control unit 608 receives the MFP model ID and license information from the virtual control device 400. The received license information is output to the replacement determination unit 606, and the received MFP model ID is output to the simulator control unit 603.

また、ブラウザー制御部608は、仮想サーバー装置500から、通信部605を介して、制御プログラムを受信する。次に、受信した制御プログラムを記憶部604に書き込む。
また、ブラウザー制御部608は、仮想シミュレーター700から、通信部605を介して、状態表示のための制御プログラムを受信する
さらに、ブラウザー制御部608は、実行状態のブラウザーに対して、記憶部604に記憶されている制御プログラム631及び仮想シミュレーター700から受信した制御プログラムに従って、MPFの操作パネルに表示されるべき画像を描画するように、制御する。
Further, the browser control unit 608 receives a control program from the virtual server device 500 via the communication unit 605. Next, the received control program is written in the storage unit 604.
Also, the browser control unit 608 receives a control program for status display from the virtual simulator 700 via the communication unit 605. Furthermore, the browser control unit 608 stores the execution status browser in the storage unit 604. In accordance with the stored control program 631 and the control program received from the virtual simulator 700, control is performed so as to draw an image to be displayed on the operation panel of the MPF.

(6)画像データ生成部602
画像データ生成部602は、ブラウザーにより描画される画像から、画像データを生成する。次に、通信部605は、画像データを仮想制御装置400を介して、クライアントPC(100)に対して、送信する。
(7)制御部601
制御部601は、仮想サーバー装置500に対して、通信部605を介して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する。
(6) Image data generation unit 602
The image data generation unit 602 generates image data from an image drawn by the browser. Next, the communication unit 605 transmits the image data to the client PC (100) via the virtual control device 400.
(7) Control unit 601
The control unit 601 designates a control program by outputting a program identification number for identifying a control program to the virtual server device 500 via the communication unit 605.

(8)通信部605
通信部605は、仮想制御装置400との間で、仮想サーバー装置500との間で、仮想シミュレーター700との間で、及び、外部サーバー装置800との間で、情報の送受信を行う。
通信部605は、画像データ生成部602により生成された画像データを仮想制御装置400を介して、クライアントPC(100)に対して、送信する。
(8) Communication unit 605
The communication unit 605 transmits and receives information to and from the virtual control device 400, between the virtual server device 500, between the virtual simulator 700, and with the external server device 800.
The communication unit 605 transmits the image data generated by the image data generation unit 602 to the client PC (100) via the virtual control device 400.

1.8 仮想シミュレーター700
仮想シミュレーター700は、上述したように、プログラム開発支援装置300において、仮想シミュレーターアプリ334が実行状態になることにより、仮想的に実現される装置である。
仮想シミュレーター700は、図11に示すように、制御部701、MFPシミュレート部702、記憶部704及び通信部705から構成されている。制御部701、MFPシミュレート部702及び通信部705は、マイクロプロセッサー301が仮想シミュレーターアプリ334を実行することにより、仮想的に実現される。
1.8 Virtual Simulator 700
As described above, the virtual simulator 700 is a device that is virtually realized when the virtual simulator application 334 enters the execution state in the program development support device 300.
As shown in FIG. 11, the virtual simulator 700 includes a control unit 701, an MFP simulation unit 702, a storage unit 704, and a communication unit 705. The control unit 701, the MFP simulation unit 702, and the communication unit 705 are virtually realized by the microprocessor 301 executing the virtual simulator application 334.

(1)記憶部704
記憶部704は、ハードディスクデバイス304から構成されている。記憶部704は、タグ731及び差替画像732を記憶するための領域を備えている。
タグ731は、仮想クライアント装置600が仮想サーバー装置500から受け取った制御プログラムのうちの一部分であり、内部コマンドを含む。
(1) Storage unit 704
The storage unit 704 includes a hard disk device 304. The storage unit 704 includes an area for storing the tag 731 and the replacement image 732.
A tag 731 is a part of the control program received from the virtual server device 500 by the virtual client device 600 and includes an internal command.

差替画像732は、制御プログラムに含まれる表示項目について、差し替えられるべき画像である。
(2)MFPシミュレート部702
MFPシミュレート部702は、仮想クライアント装置600から、通信部705を介して、リクエスト、MFP機種ID及びタグを受信する。次に、MFPシミュレート部702は、受信したタグに含まれる内部コマンドに従って、MFP機種IDにより示されるMFPにおける動作を、模擬的に行う。なお、MFPに対して、現実の動作を要求するのではなく、また、MFPが現実に動作するのではないことに、注意を要する。
The replacement image 732 is an image to be replaced with respect to display items included in the control program.
(2) MFP simulation unit 702
The MFP simulation unit 702 receives a request, an MFP model ID, and a tag from the virtual client device 600 via the communication unit 705. Next, the MFP simulation unit 702 simulates the operation in the MFP indicated by the MFP model ID in accordance with the internal command included in the received tag. Note that the MFP does not request an actual operation, and the MFP does not actually operate.

MFPシミュレート部702は、図11に示すように、プロトコル制御部711、MFP機能制御部712、Fax部713、Scan部714及びPrint部715を含む。
プロトコル制御部711は、受け取ったタグをプロトコルに従って処理する。MFP機能制御部712は、Fax部713、Scan部714及びPrint部715を制御する。Fax部713は、MFPのファクシミリ機能をシミュレートし、Scan部714は、MFPのスキャン機能をシミュレートし、Print部715は、MFPの印刷機能をシミュレートする。
As shown in FIG. 11, the MFP simulation unit 702 includes a protocol control unit 711, an MFP function control unit 712, a fax unit 713, a scan unit 714, and a print unit 715.
The protocol control unit 711 processes the received tag according to the protocol. The MFP function control unit 712 controls the fax unit 713, the scan unit 714, and the print unit 715. The fax unit 713 simulates the facsimile function of the MFP, the scan unit 714 simulates the scan function of the MFP, and the print unit 715 simulates the print function of the MFP.

一例として、内部コマンドが、原稿のスキャンを要求するコマンドである場合、当該内部コマンドに従って、Scan部714は、模擬的に原稿のスキャンを行う。このとき、Scan部714は、スキャンの際の設定項目のチェックを行う。例えば、設定された解像度が、設定されたファイル形式のタイプにおいて存在しないものである場合には、セッティングの不正であると判定し、セッティングの不正を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、当該内部コマンドによる動作直後のMFPの操作パネルにおける表示動作を規定し、マークアップ言語により記述された状態表示のための制御プログラムである。   As an example, when the internal command is a command requesting scanning of a document, the scan unit 714 performs a simulated document scanning according to the internal command. At this time, the Scan unit 714 checks setting items at the time of scanning. For example, when the set resolution does not exist in the type of the set file format, it is determined that the setting is incorrect, and a control program that displays a message indicating the setting is generated is generated. This control program defines a display operation on the operation panel of the MFP immediately after the operation by the internal command, and is a control program for displaying a state described in a markup language.

こうして生成された制御プログラムにより表示される画面の一例を図12に示す。
図12に示す画面741は、セッティングが不正であることを示すメッセージを含んでいる。
また、例えば、Scan部714は、一例として、模擬的にスキャンされたデータを格納するメモリの不足を検出し、メモリ不足を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
An example of the screen displayed by the control program generated in this way is shown in FIG.
A screen 741 shown in FIG. 12 includes a message indicating that the setting is invalid.
For example, the scan unit 714 detects, as an example, a shortage of memory for storing simulated scanned data, and generates a control program that displays a message indicating the shortage of memory. This control program is described in a markup language.

また、例えば、MFP機種IDにより示されるMFPが、100dpi×100dpi、200dpi×200dpi及び400dpi×400dpiの解像度によるスキャン機能を有している場合に、100dpi×100dpi、200dpi×200dpi、300dpi×300dpi及び400dpi×400dpiの解像度の選択肢が設定されている場合、Scan部714は、スキャンの際の設定項目のチェックを行い、セッティングの不正であると判定し、セッティングの不正を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。   For example, when the MFP indicated by the MFP model ID has a scan function with resolutions of 100 dpi × 100 dpi, 200 dpi × 200 dpi, and 400 dpi × 400 dpi, 100 dpi × 100 dpi, 200 dpi × 200 dpi, 300 dpi × 300 dpi, and 400 dpi. When a resolution option of × 400 dpi is set, the scan unit 714 checks a setting item at the time of scanning, determines that the setting is incorrect, and displays a control program that displays a message indicating that the setting is incorrect Generate. This control program is described in a markup language.

別の一例として、内部コマンドが、印刷を要求するコマンドである場合、当該内部コマンドに従って、Print部715は、模擬的に印刷を行う。次に、Print部715は、一例として、模擬的に用紙切れを検出し、用紙切れを示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
別の一例として、内部コマンドが、原稿のファクシミリによる送信を要求するコマンドである場合、当該内部コマンドに従って、Fax部713は、模擬的に原稿の送信を試みる。次に、Fax部713は、一例として、模擬的に、送信先が通話中であることを検出し、通話中を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
As another example, when the internal command is a command for requesting printing, the Print unit 715 performs printing in a simulated manner in accordance with the internal command. Next, as an example, the print unit 715 detects a paper out in a simulated manner and generates a control program that displays a message indicating the paper out. This control program is described in a markup language.
As another example, when the internal command is a command for requesting transmission of a document by facsimile, the fax unit 713 attempts to transmit the document in a simulated manner according to the internal command. Next, as an example, the fax unit 713 detects, as a simulation, that the transmission destination is in a call and generates a control program that displays a message indicating that the call is in progress. This control program is described in a markup language.

別の一例として、内部コマンドが、MFPが保持するトナーの残量を取得するコマンドである場合、当該内部コマンドに従って、Print部715は、模擬的にMFPのトナーの残量を取得する。例えば、Print部715は、乱数を生成し、生成した乱数に基づいて、トナーの残量を算出する。次に、Print部715は、取得したトナーの残量が20パーセント未満であれば、その旨を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。   As another example, when the internal command is a command for acquiring the remaining amount of toner held by the MFP, the Print unit 715 acquires the remaining amount of toner of the MFP in a simulated manner in accordance with the internal command. For example, the print unit 715 generates a random number, and calculates the remaining amount of toner based on the generated random number. Next, if the remaining amount of acquired toner is less than 20%, the print unit 715 generates a control program that displays a message indicating that. This control program is described in a markup language.

別の一例として、内部コマンドがMFPにセットされた用紙の残り枚数を取得するコマンドである場合、当該内部コマンドに従って、Print部715は、模擬的に用紙の残り枚数を取得する。例えば、Print部715は、乱数を生成し、生成した乱数に基づいて、残り枚数を算出する。次に、Print部715は、取得した用紙の残り枚数が10パーセント未満であれば、その旨を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。   As another example, when the internal command is a command for acquiring the remaining number of sheets set in the MFP, the print unit 715 acquires the remaining number of sheets in a simulated manner in accordance with the internal command. For example, the Print unit 715 generates a random number, and calculates the remaining number based on the generated random number. Next, if the remaining number of acquired sheets is less than 10%, the Print unit 715 generates a control program that displays a message to that effect. This control program is described in a markup language.

次に、MFPシミュレート部702は、生成した制御プログラムを、通信部705を介して、仮想クライアント装置600に対して送信する。
(3)制御部701
制御部701は、通信部705を介して、仮想クライアント装置600から、差替画像のリクエストを受信する。次に、リクエストを受信すると、制御部701は、リクエストに応じて、記憶部704から差替画像732を読み出す。次に、制御部701は、読み出した差替画像を、通信部705を介して、仮想クライアント装置600に対して、送信する。
Next, the MFP simulation unit 702 transmits the generated control program to the virtual client device 600 via the communication unit 705.
(3) Control unit 701
The control unit 701 receives a replacement image request from the virtual client device 600 via the communication unit 705. Next, when receiving the request, the control unit 701 reads the replacement image 732 from the storage unit 704 in response to the request. Next, the control unit 701 transmits the read replacement image to the virtual client device 600 via the communication unit 705.

(4)通信部705
通信部705は、仮想制御装置400との間で、及び、仮想クライアント装置600との間で、情報の送受信を行う。
1.9 外部サーバー装置800
外部サーバー装置800は、図13に示すように、制御部801、記憶部804及び通信部805から構成されている。
(4) Communication unit 705
The communication unit 705 transmits / receives information to / from the virtual control device 400 and from / to the virtual client device 600.
1.9 External server device 800
As shown in FIG. 13, the external server device 800 includes a control unit 801, a storage unit 804, and a communication unit 805.

外部サーバー装置800は、具体的には、マイクロプロセッサー、ROM、RAM、ハードディスクデバイスなどから構成されるコンピューターシステムである。前記ハードディスクデバイスには、コンピュータープログラムが記憶されている。前記マイクロプロセッサーが、前記コンピュータープログラムに従って動作することにより、外部サーバー装置800は、その機能を達成する。   Specifically, the external server device 800 is a computer system including a microprocessor, a ROM, a RAM, a hard disk device, and the like. A computer program is stored in the hard disk device. The external server device 800 achieves its functions by the microprocessor operating according to the computer program.

(1)記憶部804
記憶部804は、一例として、ハードディスクデバイスから構成されている。記憶部804は、差替画像831を記憶している。差替画像831は、制御プログラムに含まれる表示項目について、差し替えられるべき画像である。
(2)制御部801
制御部801は、通信部805を介して、仮想クライアント装置600から、差替画像のリクエストを受信する。
(1) Storage unit 804
The storage unit 804 is constituted by a hard disk device as an example. The storage unit 804 stores a replacement image 831. The replacement image 831 is an image to be replaced with respect to the display items included in the control program.
(2) Control unit 801
The control unit 801 receives a replacement image request from the virtual client device 600 via the communication unit 805.

次に、リクエストを受信すると、制御部801は、リクエストに応じて、記憶部804から差替画像831を読み出す。次に、制御部801は、読み出した差替画像を、通信部805を介して、仮想クライアント装置600に対して、送信する。
(3)通信部805
通信部805は、ネットワーク20を介して、仮想クライアント装置600との間で、情報の送受信を行う。
Next, when receiving the request, the control unit 801 reads the replacement image 831 from the storage unit 804 in response to the request. Next, the control unit 801 transmits the read replacement image to the virtual client device 600 via the communication unit 805.
(3) Communication unit 805
The communication unit 805 transmits / receives information to / from the virtual client device 600 via the network 20.

1.10 プログラム開発支援システム10の動作
プログラム開発支援システム10の動作について、図14〜図16に示すシーケンス図を用いて、説明する。
クライアントPC(100)のキーボード108は、ユーザーからブラウザーアプリ121を起動する指示を受け付ける。次に、マイクロプロセッサー101は、ブラウザーアプリ121を実行する。これにより、クライアントPC(100)において、ブラウザーが実行状態となる(ステップS101)。
1.10 Operation of Program Development Support System 10 The operation of the program development support system 10 will be described with reference to the sequence diagrams shown in FIGS.
The keyboard 108 of the client PC (100) receives an instruction to start the browser application 121 from the user. Next, the microprocessor 101 executes the browser application 121. As a result, the browser enters the execution state in the client PC (100) (step S101).

次に、キーボード108は、ユーザーから制御プログラムの作成のリクエストを受け付ける。次に、通信部105は、受け付けたリクエストを、ネットワーク20を介して、プログラム作成サーバー装置200に対して、送信する(ステップS102)。プログラム作成サーバー装置200のHTMLエディタ部206は、クライアントPC(100)から、ネットワーク20、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プログラム作成のリクエストを受け取る(ステップS102)。   Next, the keyboard 108 receives a request for creating a control program from the user. Next, the communication unit 105 transmits the received request to the program creation server device 200 via the network 20 (step S102). The HTML editor unit 206 of the program creation server device 200 receives a program creation request from the client PC (100) via the network 20, the communication unit 205, the web service interface unit 201, and the service user interface unit 202 (step S102). ).

次に、クライアントPC(100)とプログラム作成サーバー装置200とは、ネットワーク20を介して、情報を送受信し、プログラム作成サーバー装置200のHTMLエディタ部206は、制御プログラムを作成する(ステップS103、S104、S105、S106、・・・)。
制御プログラムの作成が完了すると、HTMLエディタ部206は、制御プログラムの作成が完了したことを示す完了通知を生成する。次に、生成した完了通知を、ネットワーク20を介して、クライアントPC(100)に対して送信する(ステップS107)。通信部105は、ネットワーク20を介して、完了通知を受け取る(ステップS107)。
Next, the client PC (100) and the program creation server device 200 transmit and receive information via the network 20, and the HTML editor unit 206 of the program creation server device 200 creates a control program (steps S103 and S104). , S105, S106,...
When the creation of the control program is completed, the HTML editor unit 206 generates a completion notification indicating that the creation of the control program is completed. Next, the generated completion notification is transmitted to the client PC (100) via the network 20 (step S107). The communication unit 105 receives a completion notification via the network 20 (step S107).

完了通知を受け取ると、クライアントPC(100)の実行状態のブラウザーは、ユーザーの指示により、制御プログラムのプレビュー要求を、通信部105及びネットワーク20を介して、プログラム作成サーバー装置200に対して送信する(ステップS108)。プログラム作成サーバー装置200のプレビュー制御部203は、クライアントPC(100)から、ネットワーク20、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プレビュー要求を受け取る(ステップS108)。   Upon receiving the completion notification, the browser in the execution state of the client PC (100) transmits a control program preview request to the program creation server device 200 via the communication unit 105 and the network 20 in accordance with a user instruction. (Step S108). The preview control unit 203 of the program creation server device 200 receives a preview request from the client PC (100) via the network 20, the communication unit 205, the web service interface unit 201, and the service user interface unit 202 (step S108).

次に、プレビュー要求を受け取ると、プログラム作成サーバー装置200のプレビュー制御部203は、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201及び通信部205を介して、作成が完了した制御プログラムを、プログラム開発支援装置300に対して、送信する(ステップS109)。仮想制御装置400の制御部401は、通信部405を介して、制御プログラムを受信する(ステップS109)。次に、制御部401は、受信した制御プログラムを仮想サーバー装置500に対して送信する(ステップS110)。仮想サーバー装置500の通信部505は、仮想制御装置400から制御プログラムを受信し(ステップS110)、受信した制御プログラムを記憶部504に書き込む(ステップS111)。   Next, when a preview request is received, the preview control unit 203 of the program creation server device 200 develops a control program that has been created through program development via the service user interface unit 202, the web service interface unit 201, and the communication unit 205. It transmits with respect to the assistance apparatus 300 (step S109). The control unit 401 of the virtual control device 400 receives the control program via the communication unit 405 (step S109). Next, the control unit 401 transmits the received control program to the virtual server device 500 (step S110). The communication unit 505 of the virtual server device 500 receives the control program from the virtual control device 400 (step S110), and writes the received control program in the storage unit 504 (step S111).

次に、プレビュー要求を受け取ると、プログラム作成サーバー装置200のプレビュー制御部203は、プログラム開発支援装置300のネットワーク20における存在位置を示すURLを内部から読み出す。次に、読み出したURLを、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201及び通信部205を介して、クライアントPC(100)に対して送信する(ステップS112)。クライアントPC(100)で実行状態にあるブラウザーは、プログラム作成サーバー装置200から、ネットワーク20及び通信部105を介して、URLを受け取る(ステップS112)。   Next, when receiving a preview request, the preview control unit 203 of the program creation server device 200 reads a URL indicating the location of the program development support device 300 in the network 20 from the inside. Next, the read URL is transmitted to the client PC (100) via the service user interface unit 202, the web service interface unit 201, and the communication unit 205 (step S112). The browser in the execution state on the client PC (100) receives the URL from the program creation server device 200 via the network 20 and the communication unit 105 (step S112).

次に、クライアントPC(100)で実行状態にあるブラウザーは、ユーザーからMFPの機種を示すMFP機種IDの入力を受け付ける。また、制御プログラムに含まれる表示項目について、使用許否を示すライセンス情報122をハードディスクデバイス104から読み出す。次に、クライアントPC(100)で実行状態にあるブラウザーは、受け取ったURLを指定して、入力を受け付けたMFP機種ID及び読み出したライセンス情報を、通信部105及びネットワーク20を介して、プログラム開発支援装置300に対して送信する(ステップS113)。仮想制御装置400のブラウザー判定部402は、クライアントPC(100)から、ネットワーク20及び通信部405を介して、MFP機種ID及びライセンス情報を受け取る(ステップS113)。   Next, the browser in the execution state on the client PC (100) accepts an input of the MFP model ID indicating the MFP model from the user. In addition, the license information 122 indicating whether or not to use the display items included in the control program is read from the hard disk device 104. Next, the browser in the execution state on the client PC (100) designates the received URL, develops the MFP model ID that has received the input and the read license information via the communication unit 105 and the network 20, and develops a program. It transmits with respect to the assistance apparatus 300 (step S113). The browser determination unit 402 of the virtual control device 400 receives the MFP model ID and license information from the client PC (100) via the network 20 and the communication unit 405 (step S113).

ブラウザー判定部402は、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれているか否かを判定する(ステップS114)。受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていないと判定する場合(ステップS115で「無し」)、ブラウザー判定部402は、通信部405及びネットワーク20を介して、MFP機種IDが対応表421に含まれていないことを示すメッセージを、クライアントPC(100)に対して、送信する(ステップS116)。クライアントPC(100)で実行状態にあるブラウザーは、プログラム開発支援装置300から、ネットワーク20及び通信部105を介して、メッセージを受信する(ステップS116)。次に、クライアントPC(100)で実行中のブラウザーは、受信したメッセージを表示する(ステップS117)。次に、クライアントPC(100)で実行中のブラウザーは、処理を終了する。   The browser determination unit 402 determines whether or not the MFP model ID that is the same as the received MFP model ID is included in the correspondence table 421 (step S114). When determining that the same MFP model ID as the received MFP model ID is not included in the correspondence table 421 (“None” in step S115), the browser determination unit 402 via the communication unit 405 and the network 20 A message indicating that the MFP model ID is not included in the correspondence table 421 is transmitted to the client PC (100) (step S116). The browser in the execution state on the client PC (100) receives a message from the program development support apparatus 300 via the network 20 and the communication unit 105 (step S116). Next, the browser running on the client PC (100) displays the received message (step S117). Next, the browser running on the client PC (100) ends the process.

受け取ったMFP機種IDと同一のMFP機種IDが、記憶部404に記憶されている対応表421に含まれていると判定する場合(ステップS115で「有り」)、制御部401は、通信部405及びネットワーク20を介して、クライアントPC(100)に対して、フレームを送信する(ステップS118)。フレームは、クライアントPC(100)で実行状態のブラウザーにおいて、表示されるべき画像のフレームである。クライアントPC(100)で実行状態のブラウザーは、プログラム開発支援装置300から、通信部105を介して、フレームを受信する(ステップS118)。次に、ブラウザーは、フレームを表示する(ステップS119)。   When it is determined that the same MFP model ID as the received MFP model ID is included in the correspondence table 421 stored in the storage unit 404 (“Yes” in step S115), the control unit 401 communicates with the communication unit 405. The frame is transmitted to the client PC (100) via the network 20 (step S118). The frame is a frame of an image to be displayed in the browser in an execution state on the client PC (100). The browser running in the client PC (100) receives the frame from the program development support apparatus 300 via the communication unit 105 (step S118). Next, the browser displays a frame (step S119).

受け取ったMFP機種IDと同一のMFP機種IDが、記憶部404に記憶されている対応表421に含まれていると判定する場合(ステップS115で「有り」)、ブラウザー判定部402は、対応表421から、受け取ったMFP機種IDと同一のMFP機種IDと対応する仮想クライアントIDを読み出す。これにより、仮想クライアントアプリを選択する(ステップS120)。次に、ブラウザー判定部402は、読み出した仮想クライアントIDを実行部406に対して、出力する。実行部406は、仮想クライアントIDを受け取り、受け取った仮想クライアントIDにより識別される仮想クライアントアプリを、記憶部404から読み出し、読み出した仮想クライアントアプリを起動して実行状態とする(ステップS121)。これにより、仮想クライアント装置600が実行状態となる。   When it is determined that the same MFP model ID as the received MFP model ID is included in the correspondence table 421 stored in the storage unit 404 (“Yes” in step S115), the browser determination unit 402 From 421, a virtual client ID corresponding to the same MFP model ID as the received MFP model ID is read. Thereby, a virtual client application is selected (step S120). Next, the browser determination unit 402 outputs the read virtual client ID to the execution unit 406. The execution unit 406 receives the virtual client ID, reads the virtual client application identified by the received virtual client ID from the storage unit 404, and activates the read virtual client application to be in an execution state (step S121). As a result, the virtual client device 600 enters an execution state.

次に、制御部401は、仮想クライアント装置600に対して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する(ステップS122)。仮想クライアント装置600のブラウザー制御部608は、仮想制御装置400から、プログラム識別番号を受信する(ステップS122)。次に、制御部401は、仮想クライアント装置600に対して、MFP機種ID及びライセンス情報を出力する(ステップS123)。仮想クライアント装置600のブラウザー制御部608は、仮想制御装置400から、MFP機種ID及びライセンス情報を受信する(ステップS123)。   Next, the control unit 401 specifies a control program by outputting a program identification number for identifying the control program to the virtual client device 600 (step S122). The browser control unit 608 of the virtual client device 600 receives the program identification number from the virtual control device 400 (step S122). Next, the control unit 401 outputs the MFP model ID and license information to the virtual client device 600 (step S123). The browser control unit 608 of the virtual client device 600 receives the MFP model ID and license information from the virtual control device 400 (step S123).

次に、仮想クライアント装置600の制御部601は、仮想サーバー装置500に対して、通信部605を介して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する(ステップS124)。次に、制御部501は、仮想クライアント装置600から、通信部505を介して、プログラム識別番号を受信する(ステップS124)。次に、制御部501は、記憶部504から受信したプログラム識別番号により識別される制御プログラムを読み出す(ステップS125)。次に、読み出した制御プログラムを、通信部505を介して、仮想クライアント装置600に対して送信する(ステップS126)。次に、仮想クライアント装置600のブラウザー制御部608は、仮想サーバー装置500から、通信部605を介して、制御プログラムを受信する(ステップS126)。   Next, the control unit 601 of the virtual client device 600 specifies a control program by outputting a program identification number for identifying the control program to the virtual server device 500 via the communication unit 605 (step S124). ). Next, the control unit 501 receives a program identification number from the virtual client device 600 via the communication unit 505 (step S124). Next, the control unit 501 reads the control program identified by the program identification number received from the storage unit 504 (step S125). Next, the read control program is transmitted to the virtual client device 600 via the communication unit 505 (step S126). Next, the browser control unit 608 of the virtual client device 600 receives the control program from the virtual server device 500 via the communication unit 605 (step S126).

シミュレーター制御部603の内部コマンド判定部611は、制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれるか否かを判定する(ステップS127)。
制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれると判定される場合(ステップS127で「有り」)、シミュレーター制御部603は、シミュレートのリクエスト、MFP機種ID及び制御プログラムのうち内部コマンドを含むタグを、通信部605を介して、仮想シミュレーター700に対して送信する(ステップS128)。仮想シミュレーター700のMFPシミュレート部702は、仮想クライアント装置600から、通信部705を介して、リクエスト、MFP機種ID及びタグを受信する(ステップS128)。
The internal command determination unit 611 of the simulator control unit 603 determines whether or not the control program includes an internal command for requesting an operation specific to the MFP (step S127).
When it is determined that the control program includes an internal command for requesting an operation unique to the MFP (“Yes” in step S127), the simulator control unit 603 determines the simulation request, the MFP model ID, and the control program. The tag including the internal command is transmitted to the virtual simulator 700 via the communication unit 605 (step S128). The MFP simulation unit 702 of the virtual simulator 700 receives the request, the MFP model ID, and the tag from the virtual client device 600 via the communication unit 705 (step S128).

次に、MFPシミュレート部702は、受信したタグに含まれる内部コマンドに従って、MFP機種IDにより示されるMFPを模擬的に動作させる。次に、当該内部コマンドによる動作直後のMFPの操作パネルにおける表示動作を規定し、マークアップ言語により記述された状態表示のための制御プログラムを生成する(ステップS129)。
次に、MFPシミュレート部702は、生成した状態表示のための制御プログラムを、通信部705を介して、仮想クライアント装置600に対して送信する(ステップS130)。仮想クライアント装置600のブラウザー制御部608は、仮想シミュレーター700から、通信部605を介して、状態表示のための制御プログラムを受信する(ステップS130)。
Next, the MFP simulation unit 702 operates the MFP indicated by the MFP model ID in a simulated manner in accordance with the internal command included in the received tag. Next, a display operation on the operation panel of the MFP immediately after the operation by the internal command is defined, and a control program for displaying a state described in a markup language is generated (step S129).
Next, the MFP simulation unit 702 transmits the generated control program for status display to the virtual client device 600 via the communication unit 705 (step S130). The browser control unit 608 of the virtual client device 600 receives a control program for displaying a state from the virtual simulator 700 via the communication unit 605 (step S130).

制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれないと判定される場合(ステップS127で「無し」)、シミュレーター制御部603は、シミュレートのリクエストを仮想シミュレーター700に対して送信しない。
次に、差替判定部606は、前記制御プログラム内に差替領域が存在するか否かを判定する(ステップS131)。
When it is determined that the control program does not include an internal command requesting an operation unique to the MFP (“None” in step S127), the simulator control unit 603 sends a simulation request to the virtual simulator 700. Do not send.
Next, the replacement determination unit 606 determines whether a replacement area exists in the control program (step S131).

前記制御プログラム内に差替領域が存在すると判定される場合(ステップS131で「有り」)、シミュレーター制御部603は、仮想シミュレーター700に差替画像が存在するか否かを判定する(ステップS132)。シミュレーター制御部603は、仮想シミュレーター700に差替画像が存在すると判定する場合(ステップS132で「有り」)、差替画像のリクエストを、通信部605を介して、仮想シミュレーター700に対して送信する(ステップS133)。仮想シミュレーター700の制御部701は、通信部705を介して、仮想クライアント装置600から、差替画像のリクエストを受信する(ステップS133)。   When it is determined that a replacement area exists in the control program (“Yes” in step S131), the simulator control unit 603 determines whether a replacement image exists in the virtual simulator 700 (step S132). . If the simulator control unit 603 determines that a replacement image exists in the virtual simulator 700 (“Yes” in step S132), the simulator control unit 603 transmits a request for the replacement image to the virtual simulator 700 via the communication unit 605. (Step S133). The control unit 701 of the virtual simulator 700 receives a replacement image request from the virtual client device 600 via the communication unit 705 (step S133).

次に、リクエストを受信すると、制御部701は、リクエストに応じて、記憶部704から差替画像732を読み出す(ステップS134)。次に、制御部701は、読み出した差替画像を、通信部705を介して、仮想クライアント装置600に対して、送信する(ステップS135)。次に、仮想クライアント装置600の画像差替部607は、仮想シミュレーター700から、通信部605を介して、差替画像を受信する(ステップS135)。   Next, when receiving the request, the control unit 701 reads the replacement image 732 from the storage unit 704 in response to the request (step S134). Next, the control unit 701 transmits the read replacement image to the virtual client device 600 via the communication unit 705 (step S135). Next, the image replacement unit 607 of the virtual client device 600 receives the replacement image from the virtual simulator 700 via the communication unit 605 (step S135).

シミュレーター制御部603は、仮想シミュレーター700に差替画像が存在しないと判定する場合(ステップS132で「無し」)、差替画像のリクエストを、通信部605及びネットワーク20を介して、外部サーバー装置800に対して送信する(ステップS136)。外部サーバー装置800の制御部801は、通信部805を介して、仮想クライアント装置600から、差替画像のリクエストを受信する(ステップS136)。   When the simulator control unit 603 determines that there is no replacement image in the virtual simulator 700 (“No” in step S132), the simulator control unit 603 sends a request for the replacement image to the external server device 800 via the communication unit 605 and the network 20. (Step S136). The control unit 801 of the external server device 800 receives a replacement image request from the virtual client device 600 via the communication unit 805 (step S136).

次に、リクエストを受信すると、制御部801は、リクエストに応じて、記憶部804から差替画像831を読み出す(ステップS137)。次に、制御部801は、読み出した差替画像を、通信部805を介して、仮想クライアント装置600に対して、送信する(ステップS138)。次に、仮想クライアント装置600の画像差替部607は、外部サーバー装置800から、通信部605を介して、差替画像を受信する(ステップS138)。   Next, when receiving the request, the control unit 801 reads the replacement image 831 from the storage unit 804 in response to the request (step S137). Next, the control unit 801 transmits the read replacement image to the virtual client device 600 via the communication unit 805 (step S138). Next, the image replacement unit 607 of the virtual client device 600 receives the replacement image from the external server device 800 via the communication unit 605 (step S138).

仮想シミュレーター700から、又は、外部サーバー装置800から、差替画像を受信した場合、画像差替部607は、制御プログラムに含まれる表示項目について、受信した差替画像に差し替える(ステップS139)。
仮想クライアント装置600の差替判定部606により、前記制御プログラム内に差替領域が存在しないと判定される場合(ステップS131で「無し」)、シミュレーター制御部603は、上記の差替画像の取得を行わない。
When the replacement image is received from the virtual simulator 700 or from the external server device 800, the image replacement unit 607 replaces the display item included in the control program with the received replacement image (step S139).
When the replacement determination unit 606 of the virtual client device 600 determines that there is no replacement area in the control program (“No” in step S131), the simulator control unit 603 acquires the replacement image described above. Do not do.

次に、仮想クライアント装置600の画像データ生成部602は、ブラウザーにより描画される画像から、画像データを生成する(ステップS140)。次に、通信部605は、画像データを仮想制御装置400を介して、クライアントPC(100)に対して、送信する(ステップS141〜S142)。
クライアントPC(100)は、仮想クライアント装置600から、仮想制御装置400を介して、画像データを受信する(ステップS141〜S142)。次に、クライアントPC(100)で実行状態にあるブラウザーは、画像データを、入出力制御部106を介して、モニター107に出力することにより、画像データを表示する(ステップS143)。
Next, the image data generation unit 602 of the virtual client device 600 generates image data from the image drawn by the browser (step S140). Next, the communication unit 605 transmits the image data to the client PC (100) via the virtual control device 400 (steps S141 to S142).
The client PC (100) receives image data from the virtual client device 600 via the virtual control device 400 (steps S141 to S142). Next, the browser in the execution state on the client PC (100) outputs the image data to the monitor 107 via the input / output control unit 106, thereby displaying the image data (step S143).

2.その他の変形例
本発明について、上記の実施の形態に基づいて説明しているが、上記の実施の形態に限定されない。以下に示すようにしてもよい。
(1)上記のプログラム開発支援システム10においては、クライアントPC(100)とプログラム作成サーバー装置200とは、別々の装置により構成されている。しかし、このような構成には、限定されない。
2. Other Modifications Although the present invention has been described based on the above embodiment, it is not limited to the above embodiment. You may make it show below.
(1) In the program development support system 10 described above, the client PC (100) and the program creation server device 200 are configured by different devices. However, the configuration is not limited.

クライアントPC(100)とプログラム作成サーバー装置200とは、一体として、一台の装置により構成されているとしてもよい。
(2)上記のプログラム開発支援システム10においては、仮想制御装置400は、図8に示す対応表421を保持している。ブラウザー判定部402は、クライアントPC(100)から、MFP機種IDを受け取る。次に、ブラウザー判定部402は、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれているか否かを判定する。これにより、MFPが有するブラウザー機能と同一のブラウザー機能を有する仮想クライアントアプリが存在するか否かを判定する。
The client PC (100) and the program creation server device 200 may be integrally configured by a single device.
(2) In the program development support system 10 described above, the virtual control device 400 holds the correspondence table 421 shown in FIG. The browser determination unit 402 receives the MFP model ID from the client PC (100). Next, the browser determination unit 402 determines whether or not the correspondence table 421 includes the same MFP model ID as the received MFP model ID. Thereby, it is determined whether or not there is a virtual client application having the same browser function as that of the MFP.

しかし、このような構成には、限定されない。
対応表421に記憶されている対応データは、仮想クライアントID及びMFP機種IDに代えて、仮想クライアントID、ブラウザーの種類及び版数を含むとしてもよい。
ここで、仮想クライアントIDは、仮想クライアントアプリを識別する識別情報である。また、ブラウザーの種類及び版数は、仮想クライアントアプリが有するブラウザーの種類及び版数を示す。
However, the configuration is not limited.
The correspondence data stored in the correspondence table 421 may include a virtual client ID, a browser type, and a version number instead of the virtual client ID and the MFP model ID.
Here, the virtual client ID is identification information for identifying the virtual client application. The browser type and version number indicate the browser type and version number of the virtual client application.

ブラウザー判定部402は、クライアントPC(100)から、MFPが有するブラウザーの種類及び版数を受け取る。次に、ブラウザー判定部402は、受け取ったブラウザーの種類及び版数と同一の種類及び版数が、対応表421に含まれているか否かを判定する。これにより、MFPが有するブラウザーの種類と版数と同一のブラウザーの種類と版数を有する仮想クライアントアプリが存在するか否かを判定する。   The browser determination unit 402 receives the browser type and version number of the MFP from the client PC (100). Next, the browser determination unit 402 determines whether or not the correspondence table 421 includes the same type and version number as the received browser type and version number. Thus, it is determined whether or not there is a virtual client application having the same browser type and version number as the browser type and version number of the MFP.

(3)上記の実施の形態においては、仮想クライアント装置600において、画像データが生成される。生成された画像データは、仮想制御装置400を介して、クライアントPC(100)に送信される。クライアントPC(100)は、画像データを表示する。
しかし、このような構成には、限定されない。
仮想クライアント装置600は、画像データを生成し、生成した画像データを高効率に圧縮してもよい。こうして、仮想クライアント装置600は、圧縮画像データを生成する。圧縮画像データは、一例として、JPEG(Joint Photographic Experts Group)に基づいて生成される。生成された圧縮画像データは、仮想制御装置400を介して、クライアントPC(100)に送信される。クライアントPC(100)は、圧縮画像データを伸張して、元の画像データを生成し、生成した画像データを表示する。
(3) In the above embodiment, the virtual client device 600 generates image data. The generated image data is transmitted to the client PC (100) via the virtual control device 400. The client PC (100) displays image data.
However, the configuration is not limited.
The virtual client device 600 may generate image data and compress the generated image data with high efficiency. Thus, the virtual client device 600 generates compressed image data. As an example, the compressed image data is generated based on JPEG (Joint Photographic Experts Group). The generated compressed image data is transmitted to the client PC (100) via the virtual control device 400. The client PC (100) decompresses the compressed image data, generates original image data, and displays the generated image data.

(4)上記の実施の形態においては、プログラム開発支援装置300において、仮想的に、仮想制御装置400、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700が生成される。しかし、このような構成には、限定されない。
クラウドシステム30は、プログラム開発支援装置300に代えて、制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aを含むとしてもよい。
(4) In the above embodiment, the program development support device 300 virtually generates the virtual control device 400, the virtual server device 500, the virtual client device 600, and the virtual simulator 700. However, the configuration is not limited.
The cloud system 30 may include a control device 400a, a server device 500a, a client device 600a, and a simulator 700a instead of the program development support device 300.

制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aは、それぞれ、プログラム開発支援装置300上で動作するコンピュータープログラムではない。制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aは、それぞれ、図7、図9、図10及び図11に示すように、実体のある要素から構成される装置である。   The control device 400a, the server device 500a, the client device 600a, and the simulator 700a are not computer programs that operate on the program development support device 300, respectively. The control device 400a, the server device 500a, the client device 600a, and the simulator 700a are devices composed of substantial elements as shown in FIGS. 7, 9, 10, and 11, respectively.

また、制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aは、それぞれ、コンピュータープログラムを記憶している記憶手段と、前記コンピュータープログラムを実行するプロセッサーとを含むコンピューターシステムである。
(5)上述したように、プログラム開発支援装置は、情報処理装置をMFPにおける操作画面の確認のために用いることができる。しかし、これには限定されない。プログラム開発支援装置は、プリンター、コピー機、ファクシミリ及びスキャナー等における操作画面の確認のために用いることができるとしてもよい。
The control device 400a, the server device 500a, the client device 600a, and the simulator 700a are each a computer system that includes a storage unit that stores a computer program and a processor that executes the computer program.
(5) As described above, the program development support apparatus can use the information processing apparatus for confirming the operation screen in the MFP. However, it is not limited to this. The program development support apparatus may be used for confirming an operation screen in a printer, a copier, a facsimile, a scanner, or the like.

(6)上述したように、各装置は、マイクロプロセッサーとメモリとを備えたコンピューターシステムである。前記メモリは、コンピュータープログラムを記憶しており、前記マイクロプロセッサーは、前記コンピュータープログラムに従って動作するとしてもよい。
ここで、コンピュータープログラムは、所定の機能を達成するために、コンピューターに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
(6) As described above, each device is a computer system including a microprocessor and a memory. The memory may store a computer program, and the microprocessor may operate according to the computer program.
Here, the computer program is configured by combining a plurality of instruction codes indicating instructions for the computer in order to achieve a predetermined function.

また、前記コンピュータープログラムは、コンピューター読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、ブルーレィディスク、半導体メモリなどに記録されているとしてもよい。
また、前記コンピュータープログラムを、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するとしてもよい。
The computer program may be recorded on a computer-readable recording medium such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, a Blu-ray disk, and a semiconductor memory. Good.
The computer program may be transmitted via an electric communication line, a wireless or wired communication line, a network represented by the Internet, a data broadcast, or the like.

また、前記コンピュータープログラムを前記記録媒体に記録して移送することにより、又は前記コンピュータープログラムをネットワーク等を経由して移送することにより、独立した他のコンピューターシステムにより実行するとしてもよい。
(7)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
The computer program may be executed by another independent computer system by recording the computer program on the recording medium and transferring it, or by transferring the computer program via a network or the like.
(7) The above embodiment and the above modifications may be combined.

本発明にかかるプログラム開発支援装置は、情報処理装置を画像形成装置における操作画面の確認のために用いることができるという優れた効果を奏し、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援する技術、特に、操作パネルにおいて表示されるべき操作画面の確認を支援する技術として有用である。   The program development support apparatus according to the present invention has an excellent effect that the information processing apparatus can be used for confirming an operation screen in the image forming apparatus, and controls the display operation on the operation panel of the image forming apparatus. This is useful as a technology for supporting development by the information processing apparatus, particularly as a technology for supporting confirmation of an operation screen to be displayed on the operation panel.

10 プログラム開発支援システム
20 ネットワーク
30 クラウドシステム
100 クライアントPC
101 マイクロプロセッサー
102 ROM
103 RAM
104 ハードディスクデバイス
105 通信部
106 入出力制御部
107 モニター
108 キーボード
200 プログラム作成サーバー装置
201 ウェブサービスインタフェース部
202 サービスユーザーインタフェース部
203 プレビュー制御部
204 記憶部
205 通信部
206 HTMLエディタ部
207 IWSコマンド生成部
300 プログラム開発支援装置
301 マイクロプロセッサー
302 ROM
303 RAM
304 ハードディスクデバイス
305 通信部
400 仮想制御装置
401 制御部
402 ブラウザー判定部
404 記憶部
405 通信部
406 実行部
500 仮想サーバー装置
501 制御部
504 記憶部
505 通信部
600 仮想クライアント装置
601 制御部
602 画像データ生成部
603 シミュレーター制御部
604 記憶部
605 通信部
606 差替判定部
607 画像差替部
608 ブラウザー制御部
611 内部コマンド判定部
700 仮想シミュレーター
701 制御部
702 MFPシミュレート部
704 記憶部
705 通信部
711 プロトコル制御部
712 MFP機能制御部
713 Fax部
714 Scan部
715 Print部
800 外部サーバー装置
801 制御部
804 記憶部
805 通信部
10 Program Development Support System 20 Network 30 Cloud System 100 Client PC
101 Microprocessor 102 ROM
103 RAM
DESCRIPTION OF SYMBOLS 104 Hard disk device 105 Communication part 106 Input / output control part 107 Monitor 108 Keyboard 200 Program creation server apparatus 201 Web service interface part 202 Service user interface part 203 Preview control part 204 Storage part 205 Communication part 206 HTML editor part 207 IWS command generation part 300 Program development support device 301 Microprocessor 302 ROM
303 RAM
304 hard disk device 305 communication unit 400 virtual control device 401 control unit 402 browser determination unit 404 storage unit 405 communication unit 406 execution unit 500 virtual server device 501 control unit 504 storage unit 505 communication unit 600 virtual client device 601 control unit 602 image data generation Unit 603 Simulator control unit 604 Storage unit 605 Communication unit 606 Replacement determination unit 607 Image replacement unit 608 Browser control unit 611 Internal command determination unit 700 Virtual simulator 701 Control unit 702 MFP simulation unit 704 Storage unit 705 Communication unit 711 Protocol control Unit 712 MFP function control unit 713 Fax unit 714 Scan unit 715 Print unit 800 External server device 801 Control unit 804 Storage unit 805 Communication unit

Claims (10)

画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置であって、
前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得手段と、
前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザー手段と、
複数の前記ブラウザー手段の中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザー手段が存在するか否かを判定するブラウザー判定手段と、
前記ブラウザー判定手段により存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザー手段により、前記制御プログラムに従って描画させることにより、画像データを生成させる制御手段と、
生成した前記画像データを、表示させるため前記情報処理装置に送信する送信手段と
を備えることを特徴とするプログラム開発支援装置。
A program development support apparatus that supports development by an information processing apparatus of a control program that defines display operations on an operation panel of an image forming apparatus,
An acquisition means for acquiring a model identifier indicating the model of the image forming apparatus and the control program from the information processing apparatus;
A plurality of browser means for drawing an image to be displayed on the operation panel according to the control program and having browser functions of different specifications;
Browser determining means for determining whether or not there is a browser means having a browser function of the same specification as the browser function of the image forming apparatus indicated by the model identifier among the plurality of browser means;
Control means for generating image data by drawing according to the control program by the browser means having a browser function of the same specification as the browser function of the image forming apparatus when the browser determination means determines that the image data exists; ,
A program development support apparatus comprising: a transmission unit configured to transmit the generated image data to the information processing apparatus for display.
前記プログラム開発支援装置は、さらに、
前記制御プログラム中に、前記画像形成装置に固有の動作を要求する内部コマンドが含まれるか否かを判定する内部コマンド判定手段と、
前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するシミュレート手段を含み、
前記制御手段は、さらに、前記ブラウザー手段により、前記第2制御プログラムに従って描画させることにより、第2画像データを生成させ、
前記送信手段は、さらに、生成した前記第2画像データを、表示させるために前記情報処理装置に送信する
ことを特徴とする請求項1に記載のプログラム開発支援装置。
The program development support device further includes:
Internal command determination means for determining whether or not the control program includes an internal command for requesting an operation specific to the image forming apparatus;
When it is determined that the internal command is included, the operation of the image forming apparatus is simulated according to the internal command, and a second control program that defines the display operation on the operation panel immediately after the operation is generated Including
The control means further generates second image data by causing the browser means to draw according to the second control program,
The program development support apparatus according to claim 1, wherein the transmission unit further transmits the generated second image data to the information processing apparatus for display.
前記取得手段は、さらに、前記情報処理装置から、前記制御プログラムに含まれる表示項目の使用許否を示すライセンス情報を取得し、
前記プログラム開発支援装置は、さらに、
取得した前記ライセンス情報により、前記制御プログラムに含まれる表示項目について、使用許可がされているか否かを判定する許可判定手段と、
使用許可がされていないと判定される場合、代替表示項目を取得する代替表示項目取得手段と、
前記表示項目を取得した前記代替表示項目に差し替える差替手段とを含み、
前記制御手段は、前記差替手段により、前記表示項目を取得した前記代替表示項目に差し替えさせ、前記ブラウザー手段により、前記代替表示項目を含む前記画像データを生成させる
ことを特徴とする請求項1に記載のプログラム開発支援装置。
The acquisition means further acquires license information indicating permission / inhibition of use of display items included in the control program from the information processing apparatus,
The program development support device further includes:
Permission determination means for determining whether or not use is permitted for the display item included in the control program, based on the acquired license information;
An alternative display item acquisition means for acquiring an alternative display item when it is determined that the use is not permitted;
Replacement means for replacing the display item with the acquired alternative display item,
The control unit causes the replacement unit to replace the display item with the acquired alternative display item, and causes the browser unit to generate the image data including the alternative display item. The program development support apparatus described in 1.
当該プログラム開発支援装置又は外部のサーバー装置は、前記代替表示項目を保持し、
前記代替表示項目取得手段は、当該プログラム開発支援装置又は外部のサーバー装置から、前記代替表示項目を取得する
ことを特徴とする請求項3に記載のプログラム開発支援装置。
The program development support device or the external server device holds the alternative display item,
The program development support apparatus according to claim 3, wherein the alternative display item acquisition unit acquires the alternative display item from the program development support apparatus or an external server device.
前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の画像形成装置の機種を示す機種識別子を記憶しており、取得した前記機種識別子が記憶している前記機種識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定する
ことを特徴とする請求項1に記載のプログラム開発支援装置。
The browser determination unit stores a model identifier indicating a model of a plurality of image forming apparatuses in association with the plurality of browser units, and any of the model identifiers stored in the acquired model identifier. The program development support apparatus according to claim 1, wherein it is determined whether or not the browser means is present by determining whether or not it matches.
前記取得手段は、前記機種識別子として、前記画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を取得し、
前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の機種の画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を記憶しており、取得した前記ブラウザー識別子が記憶している前記ブラウザー識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定する
ことを特徴とする請求項1に記載のプログラム開発支援装置。
The acquisition unit acquires a browser identifier indicating a browser type and a version number of the image forming apparatus as the model identifier,
The browser determination unit stores a browser identifier indicating the type and version number of a browser included in a plurality of image forming apparatuses in association with the plurality of browser units, and the acquired browser identifier is stored. The program development support apparatus according to claim 1, wherein it is determined whether or not the browser means is present by determining whether or not the browser identifier matches one of the browser identifiers.
前記プログラム開発支援装置は、コンピュータープログラムを記憶している記憶手段と、前記コンピュータープログラムを実行するプロセッサーとを含むコンピューターシステムであり、
前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、前記取得手段、複数の前記ブラウザー手段、前記ブラウザー判定手段、前記制御手段及び前記送信手段を動作させ、
前記記憶手段は、複数の前記ブラウザー手段に対応して、複数の異なる仕様のブラウザープログラムをそれぞれ含む複数の仮想クライアントプログラムを記憶しており、
前記ブラウザー判定手段は、複数の仮想クライアントプログラムの中から、前記機種識別子により示される画像形成装置が有するブラウザープログラムを含む仮想クライアントプログラムが存在するか判定し、
前記制御手段は、前記画像形成装置が有するブラウザープログラムを含む前記仮想クライアントプログラムを実行状態にし、実行状態の前記仮想クライアントプログラムに含まれるブラウザープログラムを用いて、前記制御プログラムに従って描画させる
ことを特徴とする請求項2に記載のプログラム開発支援装置。
The program development support device is a computer system including a storage unit that stores a computer program and a processor that executes the computer program,
The program development support apparatus operates the acquisition unit, the plurality of browser units, the browser determination unit, the control unit, and the transmission unit when the processor executes the computer program,
The storage means stores a plurality of virtual client programs each including a plurality of browser programs with different specifications corresponding to the plurality of browser means,
The browser determination unit determines whether a virtual client program including a browser program included in the image forming apparatus indicated by the model identifier exists from among a plurality of virtual client programs,
The control means causes the virtual client program including a browser program included in the image forming apparatus to be in an execution state, and draws according to the control program using a browser program included in the virtual client program in the execution state. The program development support apparatus according to claim 2.
前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、さらに、前記内部コマンド判定手段及び前記シミュレート手段を動作させ、
前記記憶手段は、仮想シミュレートプログラムを、前記シミュレート手段に対応して、記憶しており、
前記仮想シミュレートプログラムは、前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するプログラムであり、
前記制御手段は、前記シミュレート手段として、仮想シミュレートプログラムを実行状態にする
ことを特徴とする請求項7に記載のプログラム開発支援装置。
The program development support device further operates the internal command determination unit and the simulation unit by causing the processor to execute the computer program,
The storage means stores a virtual simulation program corresponding to the simulation means,
When it is determined that the internal command is included, the virtual simulation program simulates the operation of the image forming apparatus according to the internal command, and defines a display operation on the operation panel immediately after the operation. 2 is a program that generates a control program,
The program development support apparatus according to claim 7, wherein the control unit puts a virtual simulation program into an execution state as the simulation unit.
画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるプログラム開発支援方法であって、
前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、
前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、
複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、
前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、
生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップと
を含むことを特徴とするプログラム開発支援方法。
A program development support method used in a program development support device that supports development by an information processing device of a control program that defines a display operation on an operation panel of an image forming device,
Obtaining a model identifier indicating the model of the image forming apparatus and the control program from the information processing apparatus;
A plurality of browser steps for drawing an image to be displayed on the operation panel according to the control program and having browser functions of different specifications,
A browser determination step for determining whether or not there is a browser step having a browser function of the same specification as the browser function of the image forming apparatus indicated by the model identifier among the plurality of browser steps;
A control step for generating image data by drawing according to the control program by the browser step having a browser function of the same specification as the browser function of the image forming apparatus when it is determined by the browser determination step; ,
A program development support method comprising: a transmission step of transmitting the generated image data to the information processing apparatus for display.
画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるコンピュータープログラムを記録しているコンピューター読み取り可能な記録媒体であって、
コンピューターである前記プログラム開発支援装置に、
前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、
前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、
複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、
前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、
生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップと
を実行させるためのコンピュータープログラムを記録している記録媒体。
A computer-readable recording medium recording a computer program used in a program development support apparatus that supports development by an information processing apparatus of a control program that defines a display operation on an operation panel of an image forming apparatus,
In the program development support device that is a computer,
Obtaining a model identifier indicating the model of the image forming apparatus and the control program from the information processing apparatus;
A plurality of browser steps for drawing an image to be displayed on the operation panel according to the control program and having browser functions of different specifications,
A browser determination step for determining whether or not there is a browser step having a browser function of the same specification as the browser function of the image forming apparatus indicated by the model identifier among the plurality of browser steps;
A control step for generating image data by drawing according to the control program by the browser step having a browser function of the same specification as the browser function of the image forming apparatus when it is determined by the browser determination step; ,
A recording medium recording a computer program for executing a transmission step of transmitting the generated image data to the information processing apparatus for display.
JP2013172184A 2013-08-22 2013-08-22 Program development support apparatus and program development support method Expired - Fee Related JP6119507B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013172184A JP6119507B2 (en) 2013-08-22 2013-08-22 Program development support apparatus and program development support method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013172184A JP6119507B2 (en) 2013-08-22 2013-08-22 Program development support apparatus and program development support method

Publications (2)

Publication Number Publication Date
JP2015041260A JP2015041260A (en) 2015-03-02
JP6119507B2 true JP6119507B2 (en) 2017-04-26

Family

ID=52695383

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013172184A Expired - Fee Related JP6119507B2 (en) 2013-08-22 2013-08-22 Program development support apparatus and program development support method

Country Status (1)

Country Link
JP (1) JP6119507B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11282840A (en) * 1998-03-26 1999-10-15 Hitachi Software Eng Co Ltd Document preparation edit support system and recording medium
JP5281029B2 (en) * 2010-03-31 2013-09-04 ヤフー株式会社 Confirmation system and method
JP5747751B2 (en) * 2011-09-06 2015-07-15 富士通株式会社 Regression test support program and regression test support device

Also Published As

Publication number Publication date
JP2015041260A (en) 2015-03-02

Similar Documents

Publication Publication Date Title
US9092704B2 (en) Image forming system, image forming apparatus, and recording medium
CN107077544B (en) Information processing system, information processing apparatus, and information processing method
JP2004288026A (en) Service processing system, method for recognizing processing result of service processing system, and service processing program
JP2010063087A (en) Image forming apparatus, log storing method, and log storing program
US8984623B2 (en) Image processing system, image processing apparatus and computer-readable recording medium
JP6387740B2 (en) Server apparatus, image forming apparatus, program, and communication system
JP5548607B2 (en) Image processing apparatus and image processing system
JP2008083941A (en) Information embedding device, information embedding program, inforamtion embedding system, information reader, infomration reading program and infomation reading system
JP2012199647A (en) Image processing apparatus, image processing system, and program for setting the image processing apparatus
JP2018129767A (en) Information processing apparatus, information processing apparatus control method, and program
JP6492711B2 (en) Relay device, operation screen providing device, and program
JP6464712B2 (en) Information processing apparatus and information processing method
JP6119507B2 (en) Program development support apparatus and program development support method
JP5831695B2 (en) Information processing apparatus, information processing system, and program
JP2009232113A (en) Image forming apparatus and image forming system
JP2012243286A (en) Information processing device, document data update method and computer program
JP6323371B2 (en) Information processing apparatus and information processing method
JP5978780B2 (en) Information processing apparatus and control program therefor, control program for portable terminal, and printing system
JP5821194B2 (en) Output device, output information transmitting device, output system, and program
JP5140350B2 (en) Information processing device
US20120050775A1 (en) Image delivery system, image forming apparatus, and delivery management apparatus
JP6680141B2 (en) Image processing device
JP5389343B2 (en) Information processing device
JP2002230419A (en) Device and method for providing information
JP5194271B2 (en) Information processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170217

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170313

R150 Certificate of patent or registration of utility model

Ref document number: 6119507

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees