JP2018101237A - プログラム生成装置、その処理方法及びプログラム - Google Patents
プログラム生成装置、その処理方法及びプログラム Download PDFInfo
- Publication number
- JP2018101237A JP2018101237A JP2016246200A JP2016246200A JP2018101237A JP 2018101237 A JP2018101237 A JP 2018101237A JP 2016246200 A JP2016246200 A JP 2016246200A JP 2016246200 A JP2016246200 A JP 2016246200A JP 2018101237 A JP2018101237 A JP 2018101237A
- Authority
- JP
- Japan
- Prior art keywords
- screen
- program
- definition information
- information
- screen definition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
【課題】 複数の画面定義情報を用いて表示された画面を容易に制御するプログラムを生成する仕組みを提供する。【解決手段】 アプリケーションの実行のために用いられるプログラムを生成するプログラム生成装置であって、アプリケーションにより表示される画面を定義した画面定義情報を管理する。画面定義情報のうち、複数の画面定義情報の指定を受け付ける。指定を受け付けた複数の画面定義情報を用いて、アプリケーションのクライアントに表示するための画面情報を生成するための第1のプログラムを生成する。画面情報を用いてクライアントに表示された画面を介してユーザの操作を受け付けたときに当該画面に含まれる画面部品を制御するための第2のプログラムを生成する。指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける。第2のプログラムは、選択を受け付けた画面定義情報に含まれる画面部品を制御することを特徴とするプログラム生成装置。【選択図】 図10
Description
本発明は、プログラムを生成するための情報処理装置、情報処理装置の処理方法、およびプログラムに関する。
アプリケーションの画面には、HTML(HyperText Markup Language)のフレーム技術のように複数の画面情報(例:HTMLファイル)を用いて表示される画面がある。
例えば、図12の社員管理アプリケーション画面は、「社員検索」の機能を持つ社員検索フレーム1201、「社員詳細表示」「社員情報登録」「社員情報更新」等の機能を持つ社員詳細フレーム1202の2つのフレームで構成され、各フレームはそれぞれの画面情報を用いて表示されている。
この社員管理アプリケーションでは、図13のように、社員詳細フレーム1312にて新規に登録する社員の情報の入力を受け付け、登録ボタン1313の押下を受け付けることで、社員詳細フレーム1312に入力された社員情報をサーバに送信し社員情報の登録処理を行った後、社員検索フレーム1311の再読込みを自動的に行うことで、最新の社員情報を検索し、社員検索フレーム1321のような画面を表示する。
このように、複数の画面情報を用いて表示されたアプリケーション画面は、画面に含まれる各フレームの画面部品の制御を正しい順序で行う必要があるため、この制御を行うプログラム(例:JavaScript(登録商標))を生成することは非常に困難であった。
特許文献1には、単一のウィンドウに複数のウィンドウ構造を切り替えて表示させることが可能なウィンドウ表示システムの仕組みが記載されている。
特許文献1には、単一のウィンドウに複数のウィンドウ構造を切り替えて表示させることが可能なウィンドウ表示システムの仕組みが記載されている。
しかし、特許文献1の仕組みは、異なるウィンドウ構造を切り替えて表示するのみであり、この仕組みを用いたとしても、上記のような、複数の画面情報を用いて表示されたアプリケーション画面において、画面に含まれる各フレームの画面部品の制御を行うことはできないという問題がある。
一方、従来より、アプリケーション画面のレイアウト(画面部品の配置や機能)を設計し、アプリケーション画面を表示するためのプログラム(例:Java(登録商標)、JSP等)を生成する開発ツールがあるが、このような開発ツールを用いたとしても、フレームのように複数の画面情報を用いて表示されたアプリケーション画面に含まれる画面部品を制御するプログラム(例:JavaScript(登録商標))を生成することは困難であった。
一方、従来より、アプリケーション画面のレイアウト(画面部品の配置や機能)を設計し、アプリケーション画面を表示するためのプログラム(例:Java(登録商標)、JSP等)を生成する開発ツールがあるが、このような開発ツールを用いたとしても、フレームのように複数の画面情報を用いて表示されたアプリケーション画面に含まれる画面部品を制御するプログラム(例:JavaScript(登録商標))を生成することは困難であった。
そこで、本発明の目的は、複数の画面定義情報を用いて表示された画面を容易に制御するプログラムを生成する仕組みを提供することである。
アプリケーションの実行のために用いられるプログラムを生成するプログラム生成装置であって、前記アプリケーションにより表示される画面を定義した画面定義情報を管理する画面定義情報管理手段と、前記画面定義情報管理手段に管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける画面定義情報受付手段と、前記画面定義情報受付手段により指定を受け付けた複数の画面定義情報を用いて、アプリケーションのクライアントに表示するための画面情報を生成するための、第1のプログラムを生成する画面情報生成プログラム生成手段と、前記画面情報を用いてクライアントに表示された画面を介してユーザの操作を受け付けたときに当該画面に含まれる画面部品を制御するための、第2のプログラムを生成する画面部品制御プログラム生成手段と、前記画面定義情報受付手段により指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける選択受付手段とを備え、前記第2のプログラムは、前記選択受付手段により選択を受け付けた画面定義情報に含まれる画面部品を制御すること
を特徴とするプログラム生成装置。
を特徴とするプログラム生成装置。
本発明によれば、複数の画面定義情報を用いて表示された画面を容易に制御するプログラムを生成する仕組みを提供することができる。
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
図1は、本発明に係わるプログラム生成装置(アプリケーションのプログラムを生成するために開発者が使用する情報処理装置)、プログラム生成サーバ、データベースサーバ、アプリケーションクライアント(クライアント装置)、アプリケーションサーバの構成の一例を示すシステム構成図である。
プログラム生成装置101は、開発者の操作に従って画面レイアウトおよびデータベース検索指示などを定義する。プログラム生成装置101単体では、開発者の入力受付を行い、後述するプログラム生成サーバ102に実際のプログラム生成処理、アプリケーション生成処理をさせてもよいし、プログラム生成装置101単体でプログラム生成、アプリケーション生成まで処理してもよい。
なお、この実施形態においては、プログラム生成装置101で生成するアプリケーションはWebアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Web技術を利用しないアプリケーションであってもよい。
プログラム生成サーバ102a〜102b(情報処理装置)は、プログラム生成装置101により入力された開発者の指示に従って、プログラムを開発する。プログラム生成サーバ102aはLANなどのネットワーク106内に配置されてもよいし、プログラム生成サーバ102bはインターネット上やクラウド上に配置されてもよい。
データベースサーバ103a〜103b(情報処理装置)は、開発されたアプリケーションが使用するデータベースであり、また本発明では開発時にも動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ103は、プログラム生成装置101と同一の装置で構成されていてもよいし、LANなどのネットワーク106内に配置されてもよい(データベースサーバ103a)。またインターネット上やクラウド上に配置されてもよい(データベースサーバ103b)。また、プログラム生成装置101が、プログラム生成サーバ102と協調する場合には、プログラム生成サーバ102とデータベースサーバ103が同一の装置内に構成されていてもよい。
アプリケーションサーバ105a〜105b(情報処理装置)は、プログラム生成装置101で開発されたアプリケーションを実行する。LANなどのネットワーク106内に配置されてもよい(アプリケーションサーバ105a)し、またインターネット上やクラウド上に配置されてもよい(アプリケーションサーバ105b)。また、ネットワーク106、インターネット、クラウド上のデータベースサーバ103と接続して動作する可能である。
アプリケーションクライアント104a〜104b(情報処理装置)は、アプリケーションサーバ105と協調してプログラム生成装置101で開発したアプリケーションプログラムを動作させる、ユーザの入力端末である。LANなどのネットワーク106内に配置されてもよい(アプリケーションクライアント104a)し、またインターネット上やクラウド上に配置されてもよい(アプリケーションクライアント104b)。携帯端末などの情報処理装置であってもよい。
図2は、本発明に係わるプログラム生成装置101、プログラム生成サーバ102、データベースサーバ103、アプリケーションクライアント104、アプリケーションサーバ105として適用可能な各ハードウェア構成の一例を示すブロック図である。
図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。
図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。
また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。
RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。
RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。
入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、情報処理装置では、キーボード、マウス等のポインティングデバイスが挙げられる。
出力コントローラ206は、出力部210の表示を制御する。この出力部210としては、例えば、CRTや液晶ディスプレイ等が挙げられる。
出力コントローラ206は、出力部210の表示を制御する。この出力部210としては、例えば、CRTや液晶ディスプレイ等が挙げられる。
外部メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。加えて、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ211としては、ハードディスク(HD)やフレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。
通信I/Fコントローラ208は、ネットワークを介して外部機器との通信制御処理を実行する。
本発明を実現するためのプログラム212は外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。
通信I/Fコントローラ208は、ネットワークを介して外部機器との通信制御処理を実行する。
本発明を実現するためのプログラム212は外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。
図3は、本発明の実施の形態のソフトウェア構成を示すブロック図の一例である。
プログラム生成装置101は、以下の機能部を備える。
画面定義情報管理部301は、アプリケーションにより表示される画面を定義した画面定義情報を管理する機能部である。
画面定義情報受付部302は、画面定義情報管理部301に管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける機能部である。
プログラム生成装置101は、以下の機能部を備える。
画面定義情報管理部301は、アプリケーションにより表示される画面を定義した画面定義情報を管理する機能部である。
画面定義情報受付部302は、画面定義情報管理部301に管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける機能部である。
画面情報生成プログラム生成部303は、画面定義情報受付部302により指定を受け付けた複数の画面定義情報を用いて、アプリケーションのクライアントに表示するための画面情報を生成するための、第1のプログラムを生成する機能部である。
画面部品制御プログラム生成部304は、画面情報を用いてクライアントに表示された画面を介してユーザの操作を受け付けたときに当該画面に含まれる画面部品を制御するための、第2のプログラムを生成する機能部である。
選択受付部305は、画面定義情報受付部302により指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける機能部である。
制御順序受付部306は、選択受付部305により選択を受け付けた画面定義情報の制御順序を受け付ける機能部である。
選択受付部305は、画面定義情報受付部302により指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける機能部である。
制御順序受付部306は、選択受付部305により選択を受け付けた画面定義情報の制御順序を受け付ける機能部である。
図4は、プログラム生成のフローチャートの一例を示す図である。なお、図4・図5のフローチャートの各ステップは、プログラム生成装置101のCPU201が実行する。
ステップS401において、構築するアプリケーションの画面を設計するためのアプリケーション設計画面600(図6)を表示する。
ステップS401において、構築するアプリケーションの画面を設計するためのアプリケーション設計画面600(図6)を表示する。
ステップS402において、画面部品の設定を受け付ける。具体的には、アプリケーションを実行しアプリケーションクライアント104の画面に表示される画面部品の配置操作を受け付けることにより、アプリケーション画面を構築する。
ここでは、アプリケーション設計画面600(図6)に表示されている画面定義情報601から、「子フレーム_社員検索602」の選択を受け付け、603のように画面部品の配置を受け付けたとする。また、同様に、アプリケーション設計画面700(図7)に表示されている画面定義情報から、「子フレーム_社員詳細701」の選択を受け付け、702のように画面部品の配置を受け付けたとする。
ステップS403において、ステップS402にて受け付けた画面部品の設定を画面定義情報として外部メモリ211に記憶する。すなわち、ステップS403は、アプリケーションにより表示される画面を定義した画面定義情報を管理する処理の一例を示すステップである。ここでは、「子フレーム_社員検索」「子フレーム_社員詳細」の画面定義情報を外部メモリ211に記憶したとする。
ステップS404において、フレーム分割を用いた画面の設計を受け付ける。この処理の詳細は、図5のフローチャートを用いて説明する。
ステップS404において、フレーム分割を用いた画面の設計を受け付ける。この処理の詳細は、図5のフローチャートを用いて説明する。
ここで、図5のフレーム画面設計受付のフローチャートについて説明しておく。
ステップS501において、プログラム生成装置101は、複数の画面定義情報の選択を受け付ける。すなわち、ステップS501は、管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける処理の一例を示すステップである。ここでは、アプリケーション設計画面800(図8)に表示されている画面定義情報から、「親フレーム_社員管理801」の選択を受け付け、「親フレーム_社員管理801」の画面部品の設定受付画面を表示し(802)、親フレーム内に表示する「子フレーム_社員検索」「子フレーム_社員詳細」の選択を受け付け(803)、「親フレーム_社員管理801」の画面部品の設定受付画面にドラッグ&ドロップする(804)ことにより、複数の画面定義情報の選択を受け付けたとする。
ステップS501において、プログラム生成装置101は、複数の画面定義情報の選択を受け付ける。すなわち、ステップS501は、管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける処理の一例を示すステップである。ここでは、アプリケーション設計画面800(図8)に表示されている画面定義情報から、「親フレーム_社員管理801」の選択を受け付け、「親フレーム_社員管理801」の画面部品の設定受付画面を表示し(802)、親フレーム内に表示する「子フレーム_社員検索」「子フレーム_社員詳細」の選択を受け付け(803)、「親フレーム_社員管理801」の画面部品の設定受付画面にドラッグ&ドロップする(804)ことにより、複数の画面定義情報の選択を受け付けたとする。
ステップS502において、プログラム生成装置101は、選択された複数の画面定義情報(図8の802)の識別情報(=画面定義ID)を対応付けて外部メモリ211に記憶する。ここでは、「親フレーム_社員管理801」のフレーム内に表示する画面定義情報の識別情報(=画面定義ID)として、「子フレーム_社員検索」と「子フレーム_社員詳細」を対応付けて外部メモリ211に記憶する。
ステップS503において、プログラム生成装置101は、フレームレイアウト設計(図9の901)を受け付ける。具体的には、親フレーム内に子フレームをどのように配置するかの設計を受け付ける。
例えば、親フレーム内に2つの子フレームを横に並べて配置する場合は、設定受付画面802の左右方向から、ステップS501のドラッグ&ドロップを行う。また、親フレーム内に2つの子フレームを縦に並べて配置する場合は、設定受付画面802の上下方向から、ステップS501のドラッグ&ドロップを行う。なお、本実施形態においては、複数の画面定義情報のドラッグ&ドロップした方向で子フレームの配置を決定したが、これに限定するものではなく、複数の画面定義情報を順にドロップした位置等に従って、子フレームの配置を決定するとしてもよい。ここでは、「親フレーム_社員管理801」内の左側に「子フレーム_社員検索」、右側に「子フレーム_社員詳細」のように横に並べて配置する操作を受け付けたとする。
プログラム生成装置101は、ステップS501にて選択された複数の画面定義情報およびステップS503にて受け付けた配置設計に従って、フレームレイアウトのプレビュー画面900(図9)を表示する。
ステップS504において、プログラム生成装置101は、画面部品のプロパティを設定する画面(図10)を表示する。具体的には、プレビュー画面900に表示された画面部品(例えば、登録ボタン902(図9))の選択操作を受け付け、画面部品プロパティ設定画面1000(図10)を表示する。ここで、画面部品プロパティ設定画面1000について説明しておく。
「画面部品名1001」は、ステップS504にて選択された画面部品の部品名であり、画面部品を識別する画面部品識別情報(=画面部品ID)でもある。
「画面部品名1001」は、ステップS504にて選択された画面部品の部品名であり、画面部品を識別する画面部品識別情報(=画面部品ID)でもある。
「次画面1002」は、アプリケーション実行時にアプリケーションクライアント104が「画面部品名1001」の画面部品の操作を受け付けたとき、画面遷移処理を行う画面の画面定義識別情報(=画面定義ID)である。すなわち、「次画面1002」は、「画面部品名1001」の画面部品の操作を受け付けたとき、更新対象となるフレームの識別情報の一例である。
「次画面パラメータ1003」は、画面遷移処理の際に「次画面1002」の画面を表示するプログラム(例:Java(登録商標)、JSP等)に渡すパラメータである。図10のように、パラメータをカンマで区切ることにより、複数のパラメータを「次画面1002」の画面を表示するプログラムに渡し、「次画面1002」の画面を再表示ことができる。また、「次画面パラメータ1003」を<空白>にすることで、パラメータを「次画面1002」の画面を表示するプログラムに渡さず、「次画面1002」の画面を更新することができる。
「追加ボタン1004」を押下することによって、「次画面1002」「次画面パラメータ1003」に設定した値を「遷移順1005」に追加する。また、「遷移順1005」には追加した順に、[遷移順1][遷移順2]…[遷移順n]のように番号が振られる。「画面部品名1001」の画面部品の操作を受け付けたときに行う画面遷移処理は、この[遷移順1][遷移順2]…[遷移順n]の順で、「次画面1002」の画面を表示するプログラムに対して「次画面パラメータ1003」を渡し、「次画面1002」の画面を更新する。
以上で、図10の画面部品プロパティ設定画面1000の説明を終了する。
以上で、図10の画面部品プロパティ設定画面1000の説明を終了する。
ステップS505において、プログラム生成装置101は、ステップS502にて対応付けられた画面定義情報の識別情報を取得し、更新対象となるフレームの識別情報として表示する。具体的には、外部メモリ211から、「親フレーム_社員管理801」のフレーム内に表示する画面定義情報の識別情報として、「子フレーム_社員検索」と「子フレーム_社員詳細」を取得し、図10の「次画面1002」の選択肢として表示する。これにより、ステップS501にてドラッグ&ドロップされた複数の画面定義情報(図8の802)の識別情報のみが図10の「次画面1002」の選択肢として表示されるため、フレーム内に表示する画面定義情報の識別情報を容易に選択することができる。
なお、本実施形態においては、「次画面パラメータ1003」は、アプリケーション開発者がパラメータを入力するとしたが、これに限定するものではなく、「親フレーム_社員管理801」のフレーム内に表示する画面定義情報に含まれる画面部品の識別情報(=画面部品ID)を選択肢として表示し、容易に選択できるようにした方がフレーム内に表示する画面部品の識別情報を容易に選択することができるため望ましい。
ステップS506において、プログラム生成装置101は、ステップS505にて表示した画面定義情報の識別情報から更新対象となるフレームの選択を受け付ける。すなわち、ステップS505〜ステップS506は、指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける処理の一例を示すステップである。
具体的には、アプリケーション実行時にアプリケーションクライアント104が「画面部品名1001」の画面部品の操作を受け付けたときに画面遷移処理を行う画面の画面定義識別情報を、図10の「次画面1002」の選択肢に表示された「子フレーム_社員検索」と「子フレーム_社員詳細」から選択する。
ステップS507において、プログラム生成装置101は、画面部品のプロパティ設定(図10の1001〜1007)の入力を受け付ける。すなわち、ステップS507は、選択を受け付けた画面定義情報の制御順序を受け付ける処理の一例を示すステップである。
ここでは、「次画面1002」=“子フレーム_社員詳細”、「次画面パラメータ1003」=“社員番号,社員名”の入力および「追加ボタン1004」の押下を受け付け、「遷移順1005」に“[遷移順1] 子フレーム_社員詳細 | パラメータ:社員番号,社員名”が追加され、更に「次画面1002」=“子フレーム_社員検索”、「次画面パラメータ1003」=<空白>の入力および「追加ボタン1004」の押下を受け付け、「遷移順1005」に“[遷移順2] 子フレーム_社員検索 | パラメータ:なし”が追加されたとする。
ステップS508において、プログラム生成装置101は、画面部品プロパティ設定を外部メモリ211に記憶する。具体的には、保存ボタン1008(図10)の押下を受け付けると、ステップS507にて入力を受け付けた画面部品のプロパティ設定(図10の1001〜1007)の値を外部メモリ211に記憶する。
ステップS509において、プログラム生成装置101は、ステップS503にて受け付けたフレームレイアウト設計情報を外部メモリ211に記憶する。
ステップS509において、プログラム生成装置101は、ステップS503にて受け付けたフレームレイアウト設計情報を外部メモリ211に記憶する。
なお、本実施形態においては、複数の画面情報を用いて表示されたアプリケーション画面として、フレーム分割を用いたアプリケーション画面を例に挙げたが、フレーム分割に限定するものではなく、例えば、複数ウィンドウで構成されるアプリケーション画面など、アプリケーション画面に含まれる画面部品を制御するプログラム(例:JavaScript(登録商標))が制御可能な複数の画面情報を用いて表示されたアプリケーション画面であればよい。
以上で、図5の説明を終了する。
以上で、図5の説明を終了する。
ステップS405において、ビジネスロジックの設定を受け付ける(不図示)。ビジネスロジックとは、設計した画面を表示するために行う処理や、表示した画面を介して受け付けた操作に従って行う処理である。
ステップS406において、ステップS405にて受け付けたビジネスロジックを外部メモリ211に記憶する。
ステップS406において、ステップS405にて受け付けたビジネスロジックを外部メモリ211に記憶する。
ステップS407において、開発者からアプリケーション構築の指示を受け付ける。なお、アプリケーション構築とは、ステップS401〜ステップS406で受け付けたアプリケーションの設定情報を用いて、アプリケーションを動作させるためのプログラムを生成し、アプリケーションサーバ105に配置する処理である。
ステップS408において、ステップS403にて外部メモリ211に記憶した画面定義情報を用いて、画面情報を出力するプログラム(例えば、図14の画面情報生成プログラム1401、1402等)を生成する。すなわち、ステップS408は、指定を受け付けた複数の画面定義情報を用いて、アプリケーションのクライアントに表示するための画面情報を生成するための、第1のプログラムを生成する処理の一例を示すステップである。
画面情報生成プログラム1401は、「親フレーム_社員管理」の画面情報を出力するプログラムであり、ステップS503にて受け付けたフレームレイアウト設計に従って、フレーム分割する画面情報を出力するプログラムである。画面情報生成プログラム1401の実行により出力された画面情報には、画面情報生成プログラム1402が指定されているため、この画面情報を用いて画面を表示したアプリケーションクライアント104からアプリケーションサーバ105に対して、画面情報生成プログラム1402の実行要求が送信される。
画面情報生成プログラム1402は、「子フレーム_社員詳細」の画面情報を出力するプログラムである。画面情報生成プログラム1402の実行により出力された画面情報には、ステップS402にて配置された画面部品情報が含まれている。なお、「子フレーム_社員検索」の画面情報を出力するプログラムについては省略する。
ステップS409において、ステップS507にて外部メモリ211に記憶したフレームレイアウト設計情報を用いて、フレーム分割された画面を制御するプログラム(例えば、制御プログラム1403〜1405)を生成する。
すなわち、ステップS409は、画面情報を用いてクライアントに表示された画面を介してユーザの操作を受け付けたときに当該画面に含まれる画面部品を制御するための、第2のプログラムを生成する処理の一例を示すステップである。また、第2のプログラムは、選択を受け付けた画面定義情報に含まれる画面部品を制御するプログラムである。また、第2のプログラムは、受け付けた制御順序に従って、選択を受け付けた画面定義情報に含まれる画面部品を制御するプログラムである。
制御プログラム1403は、親フレームから子フレームを制御するプログラムである。ここでは、制御プログラム1403には、ステップS507にて入力を受け付けた「遷移順1005」に従って、「親フレーム_社員管理」から「子フレーム_社員検索」と「子フレーム_社員詳細」を制御するためのプログラムを出力する。ここでは、「遷移順1005」=“[遷移順1] 子フレーム_社員詳細 | パラメータ:社員番号,社員名”、“[遷移順2] 子フレーム_社員検索 | パラメータ:なし”の2レコードが登録されていたため、最初に「子フレーム_社員詳細」(=frame2)をサブミットして社員情報の登録処理を要求し、次に「子フレーム_社員検索」(=frame1)のリロードを要求することにより社員情報の検索処理を要求するプログラムを出力する。
これにより、複数の画面情報を用いて表示されたアプリケーション画面であっても、画面に含まれる各フレームの画面部品の制御を設定した順序で行うことができるため、複数の画面情報を用いて表示されたアプリケーション画面の制御を行うプログラムを容易に生成することができるようになる。
また、制御プログラム1404は、「子フレーム_社員詳細」(=frame2)用のプログラムである。ここでは、「遷移順1005」=“[遷移順1] 子フレーム_社員詳細 | パラメータ:社員番号,社員名”のレコードが登録されていたため、アプリケーションサーバ105に対して「社員番号」「社員名」を送信するフォーム(formRegister)をサブミットさせ、社員情報の登録処理を要求するためのプログラムを実行するプログラムを出力する。
また、制御プログラム1405は、「子フレーム_社員検索」(=frame1)用のプログラムである。ここでは、「遷移順1005」=“[遷移順2] 子フレーム_社員検索 | パラメータ:なし”のレコードが登録されていたため、アプリケーションサーバ105に対して「子フレーム_社員検索」のリロードを要求し、社員情報の検索処理を要求するプログラムを出力する。
なお、この制御プログラム1403〜1405の動作については、図11のフローチャートの説明にて後述する。
なお、この制御プログラム1403〜1405の動作については、図11のフローチャートの説明にて後述する。
ステップS410において、ステップS406にて外部メモリ211に記憶したビジネスロジックを用いて、ビジネスロジックプログラム(例えば、Java(登録商標)ファイル)を生成する。
ステップS411において、ステップS408〜ステップS410にて生成したプログラムまたはそれらをコンパイルした実行ファイル(例えば、Classファイル)をアプリケーションサーバ105に配置(デプロイ)する。これにより、アプリケーションサーバ105上でアプリケーションが動作可能になる。
以上で、図4の説明を終了する。
以上で、図4の説明を終了する。
図11は、アプリケーション実行のフローチャートの一例を示す図である。
ステップS1101において、アプリケーションクライアント104は、ステップS411にて生成・配置されたアプリケーションにログインし、アプリケーションサーバ105に対して検索・詳細画面の表示要求を送信する。
ステップS1102において、アプリケーションサーバ105は、検索・詳細画面の表示要求を受信する。
ステップS1101において、アプリケーションクライアント104は、ステップS411にて生成・配置されたアプリケーションにログインし、アプリケーションサーバ105に対して検索・詳細画面の表示要求を送信する。
ステップS1102において、アプリケーションサーバ105は、検索・詳細画面の表示要求を受信する。
ステップS1103において、アプリケーションサーバ105は、検索・詳細画面の画面情報を生成する。具体的には、アプリケーションサーバ105は、ステップS408にて生成された画面情報出力プログラム(JSPファイル1401、1402等)を実行することにより、フレーム分割された検索・詳細画面の画面情報を生成する。
ステップS1104において、アプリケーションサーバ105は、フレーム分割された画面を制御するためのプログラム(制御プログラム1403〜1405)を取得する。
なお、本実施形態においては、フレーム分割された画面を制御するためのプログラムは、プログラム生成装置101がステップS409にて生成するとしたが、これに限定するものではなく、アプリケーションサーバ105がステップS1104にて生成してもよい。ただし、フレーム分割された画面を制御するためのプログラムが制御プログラム1403〜1405のように、アプリケーションクライアント104の画面で入力された情報によって動的に変化しない場合、プログラム生成装置101がステップS409にて生成した方が、アプリケーション実行時の処理時間が短縮されるため、望ましい。
ステップS1105において、アプリケーションサーバ105は、ステップS1103にて生成した画面情報およびとステップS1104にて取得したプログラムを、アプリケーションクライアント104に送信する。
ステップS1106において、アプリケーションクライアント104は、検索・詳細画面の画面情報およびプログラムを受信する。
ステップS1106において、アプリケーションクライアント104は、検索・詳細画面の画面情報およびプログラムを受信する。
ステップS1107において、アプリケーションクライアント104は、受信した画面情報を用いて、検索・詳細画面1200(図12)を表示する。検索・詳細画面1200は、アプリケーションクライアント104により表示されるアプリケーションの検索・詳細画面の初期画面の一例を示す図である。検索・詳細画面1200のフレーム1201には「子フレーム_社員検索」の画面情報を用いて社員検索を行う画面を表示し、フレーム1202には「子フレーム_社員詳細」の画面情報を用いて社員詳細情報を表示し、社員情報の登録・更新を行う画面を表示する。
ステップS1108において、アプリケーションクライアント104は、フレーム1312にて新規登録する社員情報の入力を受け付けた後、レコード登録指示となる「登録ボタン1313」の押下を受け付ける。
ステップS1109において、アプリケーションクライアント104は、フレーム画面の制御を行うプログラムを実行する。ここでは、制御プログラム1403を実行し、親フレームから子フレームを制御する。具体的には、制御プログラム1403に記載されているように、最初に「子フレーム_社員詳細」(=frame2)をサブミットして社員情報の登録処理を要求し(ステップS1110)、次に「子フレーム_社員検索」(=frame1)のリロードを要求することにより社員情報の検索処理を要求する(ステップS1117)。
ステップS1110において、アプリケーションクライアント104は、レコード登録要求を送信する。
ステップS1111において、アプリケーションサーバ105は、レコード登録要求を受信する。
ステップS1112において、アプリケーションサーバ105は、受信した情報をデータベースサーバ103にレコード登録する。
ステップS1113において、アプリケーションサーバ105は、詳細画面の画面情報を生成する。
ステップS1110において、アプリケーションクライアント104は、レコード登録要求を送信する。
ステップS1111において、アプリケーションサーバ105は、レコード登録要求を受信する。
ステップS1112において、アプリケーションサーバ105は、受信した情報をデータベースサーバ103にレコード登録する。
ステップS1113において、アプリケーションサーバ105は、詳細画面の画面情報を生成する。
ステップS1114において、アプリケーションサーバ105は、ステップS1113で生成した画面情報を、アプリケーションクライアント104に送信する。
ステップS1115において、アプリケーションクライアント104は、詳細画面の画面情報を受信する。
ステップS1116において、アプリケーションクライアント104は、受信した詳細画面の画面情報を用いて、フレーム1322に詳細画面を表示する。
ステップS1117において、アプリケーションクライアント104は、検索処理要求を送信する。
ステップS1118において、アプリケーションサーバ105は、検索処理要求を受信する。
ステップS1119において、アプリケーションサーバ105は、データベースサーバ103のレコードを検索する。
ステップS1120において、アプリケーションサーバ105は、検索画面の画面情報を生成する。
ステップS1115において、アプリケーションクライアント104は、詳細画面の画面情報を受信する。
ステップS1116において、アプリケーションクライアント104は、受信した詳細画面の画面情報を用いて、フレーム1322に詳細画面を表示する。
ステップS1117において、アプリケーションクライアント104は、検索処理要求を送信する。
ステップS1118において、アプリケーションサーバ105は、検索処理要求を受信する。
ステップS1119において、アプリケーションサーバ105は、データベースサーバ103のレコードを検索する。
ステップS1120において、アプリケーションサーバ105は、検索画面の画面情報を生成する。
ステップS1121において、アプリケーションサーバ105は、ステップS1120にて生成した画面情報を、アプリケーションクライアント104に送信する。
ステップS1122において、アプリケーションクライアント104は、検索画面の画面情報を受信する。
ステップS1123において、アプリケーションクライアント104は、検索画面の画面情報を用いて、フレーム1321に検索画面を表示する。
以上で、図11の説明を終了する。
以上により、複数の画面定義情報を用いて表示された画面を容易に制御するプログラムを生成することができるようになる。
ステップS1122において、アプリケーションクライアント104は、検索画面の画面情報を受信する。
ステップS1123において、アプリケーションクライアント104は、検索画面の画面情報を用いて、フレーム1321に検索画面を表示する。
以上で、図11の説明を終了する。
以上により、複数の画面定義情報を用いて表示された画面を容易に制御するプログラムを生成することができるようになる。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、OS(オペレーティングシステム)に供給されるスクリプトデータ等の形態から成ってもよい。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
101 プログラム生成装置
102 プログラム生成サーバ
103 データベースサーバ
104 アプリケーションクライアント
105 アプリケーションサーバ
106 ネットワーク
102 プログラム生成サーバ
103 データベースサーバ
104 アプリケーションクライアント
105 アプリケーションサーバ
106 ネットワーク
Claims (4)
- アプリケーションの実行のために用いられるプログラムを生成するプログラム生成装置であって、
前記アプリケーションにより表示される画面を定義した画面定義情報を管理する画面定義情報管理手段と、
前記画面定義情報管理手段に管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける画面定義情報受付手段と、
前記画面定義情報受付手段により指定を受け付けた複数の画面定義情報を用いて、アプリケーションのクライアントに表示するための画面情報を生成するための、第1のプログラムを生成する画面情報生成プログラム生成手段と、
前記画面情報を用いてクライアントに表示された画面を介してユーザの操作を受け付けたときに当該画面に含まれる画面部品を制御するための、第2のプログラムを生成する画面部品制御プログラム生成手段と、
前記画面定義情報受付手段により指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける選択受付手段と
を備え、
前記第2のプログラムは、
前記選択受付手段により選択を受け付けた画面定義情報に含まれる画面部品を制御すること
を特徴とするプログラム生成装置。 - 前記選択受付手段により選択を受け付けた画面定義情報の制御順序を受け付ける制御順序受付手段を更に備え、
前記第2のプログラムは、
前記制御順序受付手段により受け付けた制御順序に従って、前記選択受付手段により選択を受け付けた画面定義情報に含まれる画面部品を制御すること
を特徴とする請求項1に記載のプログラム生成装置。 - アプリケーションの実行のために用いられるプログラムを生成するプログラム生成装置における処理方法であって、
前記プログラム生成装置が、
前記アプリケーションにより表示される画面を定義した画面定義情報を管理する画面定義情報管理ステップと、
前記画面定義情報管理ステップに管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける画面定義情報受付ステップと、
前記画面定義情報受付ステップにより指定を受け付けた複数の画面定義情報を用いて、アプリケーションのクライアントに表示するための画面情報を生成するための、第1のプログラムを生成する画面情報生成プログラム生成ステップと、
前記画面情報を用いてクライアントに表示された画面を介してユーザの操作を受け付けたときに当該画面に含まれる画面部品を制御するための、第2のプログラムを生成する画面部品制御プログラム生成ステップと、
前記画面定義情報受付ステップにより指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける選択受付ステップと
を実行し、
前記第2のプログラムは、
前記選択受付ステップにより選択を受け付けた画面定義情報に含まれる画面部品を制御すること
を特徴とする処理方法。 - アプリケーションの実行のために用いられるプログラムを生成するプログラム生成装置で実行可能なプログラムであって、
前記プログラム生成装置を、
前記アプリケーションにより表示される画面を定義した画面定義情報を管理する画面定義情報管理手段と、
前記画面定義情報管理手段に管理されている画面定義情報のうち、複数の画面定義情報の指定を受け付ける画面定義情報受付手段と、
前記画面定義情報受付手段により指定を受け付けた複数の画面定義情報を用いて、アプリケーションのクライアントに表示するための画面情報を生成するための、第1のプログラムを生成する画面情報生成プログラム生成手段と、
前記画面情報を用いてクライアントに表示された画面を介してユーザの操作を受け付けたときに当該画面に含まれる画面部品を制御するための、第2のプログラムを生成する画面部品制御プログラム生成手段と、
前記画面定義情報受付手段により指定を受け付けた画面定義情報の識別情報を表示し選択を受け付ける選択受付手段
として機能させ、
前記第2のプログラムは、
前記選択受付手段により選択を受け付けた画面定義情報に含まれる画面部品を制御すること
を特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016246200A JP2018101237A (ja) | 2016-12-20 | 2016-12-20 | プログラム生成装置、その処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016246200A JP2018101237A (ja) | 2016-12-20 | 2016-12-20 | プログラム生成装置、その処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018101237A true JP2018101237A (ja) | 2018-06-28 |
Family
ID=62715494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016246200A Pending JP2018101237A (ja) | 2016-12-20 | 2016-12-20 | プログラム生成装置、その処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018101237A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7415086B1 (ja) | 2023-02-10 | 2024-01-16 | 三菱電機株式会社 | 作画支援プログラム、作画支援装置及び作画支援方法 |
-
2016
- 2016-12-20 JP JP2016246200A patent/JP2018101237A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7415086B1 (ja) | 2023-02-10 | 2024-01-16 | 三菱電機株式会社 | 作画支援プログラム、作画支援装置及び作画支援方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10860779B2 (en) | High performant and high fidelity previews for CSS preprocessing frameworks | |
US11635974B2 (en) | Providing a different configuration of added functionality for each of the stages of predeployment, deployment, and post deployment using a layer of abstraction | |
CN111008051A (zh) | 基于多维规则的动态布局 | |
JP6332533B2 (ja) | 情報処理装置、その処理方法及びプログラム | |
JP2018101237A (ja) | プログラム生成装置、その処理方法及びプログラム | |
JP7014960B2 (ja) | 情報処理装置、サーバ、その処理方法及びプログラム | |
JP6565894B2 (ja) | サーバ、情報処理装置、処理方法およびプログラム | |
JP5418539B2 (ja) | 情報処理システム、およびその情報処理方法、そのプログラム、情報処理装置、およびその情報処理方法、そのプログラム、開発者端末、およびその情報処理方法、そのプログラム | |
JP6056944B2 (ja) | 情報処理装置、情報処理装置の制御方法およびプログラム | |
JP2016076134A (ja) | サーバ装置、端末装置、情報処理方法、およびプログラム | |
JP5413426B2 (ja) | 情報処理システム、およびその情報処理方法、そのプログラム、サーバ、およびその情報処理方法、そのプログラム、開発者端末、およびその情報処理方法、そのプログラム | |
JP2014219813A (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
JP7060788B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびコンピュータプログラム | |
JP5716108B2 (ja) | オンラインシステム、プログラム生成装置および画面制御プログラム生成装置 | |
JP2014026473A (ja) | 情報処理装置、情報処理装置の制御方法、プログラムおよび記録媒体 | |
JP7421137B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP6264399B2 (ja) | 情報処理装置と、その処理方法及びプログラム | |
JP6361770B2 (ja) | 情報処理装置とその処理方法及びプログラム | |
JP2020107020A (ja) | プログラム、情報処理装置及び処理方法 | |
JP2015111413A (ja) | 情報処理システム、情報処理システムの制御方法およびプログラム | |
JP2015069468A (ja) | 情報処理装置、情報処理装置の制御方法、プログラム、および記録媒体 | |
CN115509405A (zh) | 操作图标的控制方法、装置、电子设备及存储介质 | |
JP2017228248A (ja) | 情報処理装置と、その処理方法及びプログラム | |
JP2017199357A (ja) | 電子マニュアルに関連するサービスを提供するためのプログラム、サーバおよびシステム | |
JP2016035773A (ja) | 文字列可視化システム、文字列可視化装置、文字列可視化システムの制御方法、プログラム、及びプログラムを記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20180703 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20181031 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20190111 |