(57)【要約】【課題】本発明の目的は、Ｗｅｂシステムで用いる画面を表示する際に、変更された状態で再度オブジェクト表示できるＷｅｂアプリケーションのプログラムを容易に開発する仕組みを提供することである。【解決手段】Ｗｅｂシステムで実行するプログラムを生成する情報処理装置であって、Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定し、設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する。特定された状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、クライアント装置のストレージへ当該表示状態の情報を記憶し、オブジェクトの再表示時に記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムを生成する。【選択図】図１６
2018010616.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂシステムで実行するプログラムを生成する情報処理装置であって、
前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定手段と、
前記設定手段により設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定手段と、
前記特定手段により特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムを生成する生成手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記生成手段は、クライアント装置において前記画面でオブジェクトを表示する場合に、前記ストレージに表示状態の情報が記憶されているか否かを判定し、ストレージに表示状態の情報が記憶されていると判定された場合に、当該表示状態の情報を用いて、前記オブジェクトの表示状態を変更制御する制御情報を生成することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記オブジェクトを配置する配置手段と、
前記配置したオブジェクトに対して、データモデルを設定するデータモデル設定手段と、
前記データモデル設定手段により設定されたデータモデルの項目名を含む定義情報と、前記オブジェクトに対応する定義情報とを生成する定義情報生成手段と
を更に備えることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記オブジェクトが操作され変更されたオブジェクトの表示状態の情報の記憶タイミングを、前記オブジェクトを示す定義情報に設定するタイミング設定手段を更に備え、
前記生成手段は、前記タイミング設定手段で設定された記憶タイミングで前記クライアント装置のストレージへ表示状態の情報を記憶する制御情報を生成することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記オブジェクトを制御するオブジェクト制御部品を記憶する記憶手段を更に備え、
前記生成手段は、前記特定手段により前記状態変更が可能なオブジェクトが特定された場合に、前記オブジェクト制御部品を呼び出す制御情報を含め、
前記オブジェクト制御部品によりオブジェクトが変更されたことによる表示状態の情報を、前記オブジェクト制御部品から取得して、前記オブジェクトの再表示時に読み出し可能に前記ストレージに記憶する制御情報を生成することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記オブジェクトはデータグリッドであり、前記表示状態の情報は当該データグリッドのスタイル情報であることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
Ｗｅｂシステムで実行するプログラムを生成する情報処理装置の処理方法であって、
前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定ステップと、
前記設定ステップにより設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定ステップと、
前記特定ステップにより特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムを生成する生成ステップと
を含むことを特徴とする処理方法。
【請求項８】
Ｗｅｂシステムで実行するプログラムデータを生成する情報処理装置のプログラムであって、
前記情報処理装置を、
前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定手段と、
前記設定手段により設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定手段と、
前記特定手段により特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムデータを生成する生成手段と
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
プログラム生成する情報処理装置とその処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、ブラウザで表示する画面においても、表形式での表示（以下グリッドの表示）が求められるようになってきている。
そして、表形式のアプリケーションのようなリッチなグリッド表示を行うための技術としてハンズオンテーブルがある。（非特許文献１）
このハンズオンテーブルを用いることで、表示したグリッドのスタイルの変更がブラウザ上で容易に行うことができる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】ｈｔｔｐｓ：／／ｈａｎｄｓｏｎｔａｂｌｅ．ｃｏｍ／
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ハンズオンテーブルの技術では、スタイルの変更は一時的なものであり、Ｗｅｂアプリケーションサーバと通信がされ、再表示されると、Ｗｅｂアプリケーションの開発時の初期のスタイルが適用され表示されてしまうという問題があった。
【０００５】
そのため、ハンズオンテーブルを単純に用いただけでは、ユーザがグリッドのスタイルを変更しても、別の画面に遷移して戻ってきた場合にはスタイルが維持されず使い勝手が悪いという問題があった。また、グリッドのスタイルやデータの変更を維持させるＷｅｂアプリケーションを開発しようとした場合には、Ｗｅｂアプリケーションを開発するユーザが高度な知識を有する必要があるため、Ｗｅｂアプリケーション開発が難しいという問題があった。
【０００６】
そこで、本発明の目的は、Ｗｅｂシステムで用いる画面を表示する際に、変更された状態で再度オブジェクト表示できるＷｅｂアプリケーションのプログラムを容易に開発する仕組みを提供することである。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するためのＷｅｂシステムで実行するプログラムを生成する情報処理装置であって、前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定手段と、前記設定手段により設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定手段と、前記特定手段により特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムを生成する生成手段とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、Ｗｅｂシステムで用いる画面を表示する際に、変更された状態で再度オブジェクト表示できるＷｅｂアプリケーションのプログラムを容易に開発することができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態におけるシステム構成を示す図である。
【図２】本実施形態における各装置に適用可能なハードウェア構成を示す図である。
【図３】プログラム開発装置１０１の処理構成を示す図である。
【図４】アプリケーションサーバ１０５に配置されるＷｅｂアプリケーション４５１の構成を示す図である。
【図５】Ｗｅｂアプリケーション生成処理のフローチャートである。
【図６】入出力定義画面の一例を示す図である。
【図７】アプリケーションクライアント１０４の処理のフローチャートである。
【図８】デフォルトで表示されたグリッドの表示例を示すイメージ図である。
【図９】変更されたスタイル情報で表示されたグリッドの表示例を示すイメージ図である。
【図１０】データグリッドデフォルトスタイルの記述例を示す図である。
【図１１】データグリッドデータ制御部のソースコードの記述例を示す図である。
【図１２】Ｗｅｂストレージからスタイル情報を読み出すソースコードの記述例を示す図である。
【図１３】Ｗｅｂストレージ４９１に保存されているスタイル情報を示す図である。
【図１４】Ｗｅｂストレージ４９１にスタイル情報を書き出すソースコードの記述例を示す図である。
【図１５】画面レイアウト設定画面の一例を示すイメージ図である。
【図１６】プログラム開発装置１０１の機能構成を示す図である。
【図１７】他の実施形態におけるＷｅｂアプリケーション生成のフローチャートの一例を示す図である。
【図１８】他の実施形態におけるアプリケーションクライアント１０４の処理のフローチャートである。
【図１９】他の実施形態における入出力定義画面の一例を示す図である。
【図２０】「ＤＡＴＡＧＲＩＤ」が設定された場合の画面レイアウト設定画面の一例を示すイメージ図である。
【図２１】「ＴＡＢＬＥ」が設定された場合の画面レイアウト設定画面の一例を示すイメージ図である。
【図２２】「ＧＲＡＰＨ」が設定された場合の画面レイアウト設定画面の一例を示すイメージ図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【００１１】
図１は、本発明に係わるプログラム開発装置（開発者がＷｅｂアプリケーション生成のために使用する情報処理装置）、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント（クライアント装置）、アプリケーションサーバの構成の一例を示すシステム構成図である（情報処理システム）。
【００１２】
プログラム開発装置１０１は、開発者の操作に従って画面レイアウトおよびデータベース検索指示などを定義する。プログラム開発装置１０１単体では、開発者の入力受付を行い、後述するプログラム開発サーバ１０２に実際のプログラム生成処理、アプリケーション生成処理をさせてもよいし、プログラム開発装置１０１単体でプログラム生成、アプリケーション生成まで処理してもよい。
【００１３】
なお、この実施形態においては、プログラム開発装置１０１で生成するアプリケーションはＷｅｂアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Ｗｅｂ技術による通信を利用したアプリケーションでなくてもよい。
【００１４】
プログラム開発サーバ１０２ａ〜１０２ｂ（情報処理装置）は、プログラム開発装置１０１により入力された開発者の指示に従って、プログラムを開発する。プログラム開発サーバ１０２ａはＬＡＮなどのネットワーク１０６内に配置されてもよいし、プログラム開発サーバ１０２ｂはインターネット上やクラウド上に配置されてもよい。
【００１５】
データベースサーバ１０３ａ〜１０３ｂ（情報処理装置）は、開発されたアプリケーションが使用するデータベースであり、また本発明では開発時にも動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ１０３は、プログラム開発装置１０１と同一の装置で構成されていてもよいし、ＬＡＮなどのネットワーク１０６内に配置されてもよい（データベースサーバ１０３ａ）。またインターネット上やクラウド上に配置されてもよい（データベースサーバ１０３ｂ）。また、プログラム開発装置１０１が、プログラム開発サーバ１０２と協調する場合には、プログラム開発サーバ１０２とデータベースサーバ１０３が同一の装置内に構成されていてもよい。
【００１６】
アプリケーションサーバ１０５ａ〜１０５ｂ（情報処理装置）は、プログラム開発装置１０１で開発されたアプリケーションを実行する。ＬＡＮなどのネットワーク１０６内に配置されてもよい（アプリケーションサーバ１０５ａ）し、またインターネット上やクラウド上に配置されてもよい（アプリケーションサーバ１０５ｂ）。また、ネットワーク１０６、インターネット、クラウド上のデータベースサーバ１０３と接続して動作する可能である。
【００１７】
アプリケーションクライアント１０４ａ〜１０４ｂ（情報処理装置）は、アプリケーションサーバ１０５と協調してプログラム開発装置１０１で開発したアプリケーションプログラムを動作させる、ユーザの入力端末である。ＬＡＮなどのネットワーク１０６内に配置されてもよい（アプリケーションクライアント１０４ａ）し、またインターネット上やクラウド上に配置されてもよい（アプリケーションクライアント１０４ｂ）。携帯端末などの情報処理装置であってもよい。
【００１８】
図２は、本発明に係わるプログラム開発装置１０１、プログラム開発サーバ１０２、データベースサーバ１０３、アプリケーションクライアント１０４、アプリケーションサーバ１０５として適用可能な各ハードウェア構成の一例を示すブロック図である。
図２において、ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。
【００１９】
また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステム（ＯＳ）や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時待避領域等として機能する。
【００２０】
入力コントローラ２０５は、入力部２０９からの入力を制御する。この入力部２０９としては、情報処理装置では、キーボード、マウス等のポインティングデバイスが挙げられる。
出力コントローラ２０６は、出力部２１０の表示を制御する。この出力部２１０としては、例えば、ＣＲＴや液晶ディスプレイ等が挙げられる。
【００２１】
外部メモリコントローラ２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ２１１へのアクセスを制御する。加えて、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ２１１としては、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）、スマートメディア等が挙げられる。
通信Ｉ／Ｆコントローラ２０８は、ネットワークを介して外部機器との通信制御処理を実行する。
【００２２】
本発明を実現するためのプログラム２１２は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００２３】
次に本実施形態における基本の処理について、図３、図４の構成図を用いて説明する。なお、本実施形態における特徴となる処理の詳細については、図５、図７のフローチャートを用いて説明する。
【００２４】
図３は、プログラム開発装置１０１の処理概要を示す構成図である。プログラム開発装置１０１は、Ｗｅｂアプリケーションを開発する開発者が定義した定義ファイルをもとにＷｅｂアプリケーションを自動生成することを目的とした装置である。プログラム開発装置１０１は、リポジトリ定義部４００、アプリケーション生成部４１０、Ｗｅｂアプリケーションコード生成部４２０、ソースコードコンパイル部４４０により構成される。
【００２５】
リポジトリ定義部４００は、データベース定義４０１、アプリケーション定義４０２、データモデル定義４０３、入出力定義４０４、ビジネスプロセス定義４０５を備える。これらのファイルは、Ｗｅｂアプリケーション開発ツールを介して開発者によって入力され、作成される。
【００２６】
すなわち、リポジトリ定義部４００は、プログラムへ引数として入力される項目を定義する入力定義情報と、プログラムから処理結果として出力する項目を定義する出力定義情報とを入出力定義情報として管理している。
【００２７】
次に、Ｗｅｂアプリケーションコード生成部４２０について説明する。Ｗｅｂアプリケーションコード生成部４２０で生成された情報は、外部メモリ２１１に記憶される。
【００２８】
リポジトリ定義解析部４２１は、リポジトリ定義部４００からデータベース定義４０１、アプリケーション定義４０２、データモデル定義４０３、入出力定義４０４、ビジネスプロセス定義４０５を読み込み解析する。
【００２９】
Ｗｅｂアプリケーションコード生成部４２２は、外部メモリ２１１に記憶されているコード生成ルールと、リポジトリ定義解析部４２１によって解析された内容とを用いて、ソースコード（ＪＳＰ）を生成する。このソースコードを取り込みソースコードコンパイル部４４０でコンパイルされたファイルを生成する。そしてソースコードコンパイル部４４０がコンパイルされたファイルをアプリケーションサーバへデプロイする。デプロイする際に、図４の４７１〜４８４の関連ファイルも合わせてデプロイされる。なお、ソースコード、コンパイルされたファイル、デプロイされたデータを総称してプログラムデータともいう。
【００３０】
より詳細には、生成されるソースコードは、大きくサーバ用（例えば、サーバ処理部４６０）とクライアント用（クライアント処理部４７０）に分かれている。サーバ用のソースコードをコンパイルしコンパイルされたファイルが生成され、クライアント用のソースコードはコンパイルされずファイルとしてプログラム開発装置１０１上に置く。このファイルを用いてアプリケーションサーバ１０５にデプロイする。
【００３１】
また、サーバ用はJavaプログラム（javaは登録商標）が生成され、生成された直後にコンパイルされてclassファイルになり、そのclassファイルがデプロイされる。クライアント用はJSP/JavaScript/CSSが生成され、それらはコンパイルされず、そのままデプロイされる。
【００３２】
デプロイされたモジュールがＷｅｂアプリケーションモジュール４５１である。具体的には、デプロイすると「．ｗａｒ」の拡張子を有するファイルがアプリケーションサーバに配置される。すなわち、Ｗｅｂアプリケーションコード生成部４２２は、Ｗｅｂアプリケーションに用いられるプログラムを生成するルールを記憶している。例えば、予め決められたルールに従って、図１２や図１４のソースコードが生成される。特に、図１５の画面でデータグリッド（一般にグリッドともいう）が設定され、このデータグリッドの入出力定義が設定されると、４８１のデータグリッド部品（ハンズオンテーブル）が読み込まれ、このデータグリッド部品を用いたグリッド表示でレイアウト変更（スタイル変更）した際に、Ｗｅｂストレージにスタイル情報を記憶することが可能な図１４のソースコードが生成される。
【００３３】
４８１のデータグリッド部品（ハンズオンテーブル）は、ＨＴＭＬ（Ｗｅｂ画面）上で、データベースから取得したデータを表形式（グリッドやテーブル）に挿入して表示する部品である。この部品上のセルをクリックして、データを変更したり、表のレイアウト（項目の並び順や列幅など）を変更可能となっている。このデータグリッド部品は、「．ｊｓ」という拡張子を持つファイルであり、プログラム開発装置１０１のアプリケーション生成部４１０で予めセットされている（保持している）。すなわち、グリッド制御部品は、ハードディスク等に記憶している。なお、本実施形態では、グリッド制御部品をオブジェクト制御部品ともいう。
アプリケーションサーバ１０５は、生成したＷｅｂアプリケーション４５１を配置する、Ｗｅｂアプリケーションサーバである。
【００３４】
Ｗｅｂアプリケーション４５１は、データグリッド機能を含む、Ｗｅｂ用のサーバアプリケーションである。このＷｅｂアプリケーション４５１は、図３のＷｅｂアプリケーションコード生成部４２２で生成されたソースコードや各種ファイルをまとめたファイルである。
【００３５】
Ｗｅｂアプリケーション４５１はサーバ処理部４６０とクライアント処理部４７０に分かれている。サーバ処理部４６０とクライアント処理部４７０それぞれについて、図４を用いて説明する。
【００３６】
図４は、Ｗｅｂアプリケーションコード生成部４２２で生成されたＷｅｂアプリケーション４５１を説明する構成図である。アプリケーションサーバ１０５にデプロイした状態の図として説明するが、サーバ処理部４６０とクライアント処理部４７０は、プログラム自動生成するプログラム開発装置１０１で生成してできたファイル群（プログラム開発装置１０１上に存在するファイル）に置き換えることも可能である。
【００３７】
サーバ処理部４６０は、サーバ側で動作する機能部であり、データ処理部４６１によりクライアントからの要求を処理する。具体的には、データベースと通信しデータの検索要求や登録要求などに基づき、データの取得や更新を行う。
【００３８】
クライアント処理部４７０は、実行時にクライアント（アプリケーションクライアント１０４）のブラウザを介してダウンロードするものであり、クライアント側の処理を実現させるファイル群（スクリプトが記述されたファイルがインクルードされたＨＴＭＬファイル）である。具体的には、クライアントから所定のＵＲＬが指定されることにより、データグリッド用ＪＳＰ４７１に基づくＨＴＭＬ形式のＷｅｂ画面、データグリッド用ＣＳＳ４７２、データグリッド部品４８１、データグリッドデフォルトスタイル４８２、データグリッドデータ制御部４８３、データグリッドスタイル制御部４８４をクライアントに送信する。
【００３９】
以下、データグリッド用ＪＳＰ４７１、データグリッド用ＣＳＳ４７２、データグリッド部品４８１、データグリッドデフォルトスタイル４８２、データグリッドデータ制御部４８３、データグリッドスタイル制御部４８４について説明する。
【００４０】
データグリッド用ＪＳＰ４７１は、グリッドを表示することが可能なＨＴＭＬを含むＪＳＰファイルであり、ＪＳＰの実行時に動的にデータをＨＴＭＬに含め、クライアントにダウンロードさせ、表示させるものである。データグリッド用ＪＳＰ４７１には、グリッドの位置を示す情報や、図１５で設定した画面部品の情報が記述される。
【００４１】
このデータグリッド用ＪＳＰ４７１は、データグリッド用ＣＳＳ４７２、データグリッド部品４８１、データグリッドデフォルトスタイル４８２、データグリッドデータ制御部４８３、データグリッドスタイル制御部４８４をインクルードしたファイルである。
データグリッド用ＣＳＳ４７２は、グリッドの色や文字の大きさなどの情報を含んでいるファイルである。
ＪａｖａＳｃｒｉｐｔ（登録商標）ファイル４８０は、グリッドに関連する制御を行うＪａｖａＳｃｒｉｐｔ（登録商標）ファイル群である。
【００４２】
データグリッド部品４８１は、Ｗｅｂアプリケーション用にＪａｖａＳｃｒｉｐｔで書かれた、一覧表示・編集用のコンポーネントである。例えばハンズオンテーブルと呼ばれるグリッド表示するファイルである。
【００４３】
データグリッドデフォルトスタイル４８２は、データグリッドの初期表示用のスタイル情報のファイルである。このスタイル情報は、アプリケーション生成部４１０がユーザの設定に応じてグリッド表示に適用させる情報であり、アプリケーション生成部４１０で生成されるファイルである。データグリッドデフォルトスタイルの例が、図１０の１０００である。各列の項目名と順番が記述されている。図１５でグリッドにデータモデルを設定した際に列名に設定された値に従って、アプリケーション生成部４１０が生成する。
【００４４】
データグリッドデータ制御部４８３は、グリッド（表形式のセル）へデータを設定したり、グリッドからデータを取得したりする制御を記載したファイルである。データグリッドデータ制御部４８３は、データグリッド部品に対して、データを渡したり、データをアプリケーションサーバに送信する役割を担うものである。
【００４５】
データグリッドスタイル制御部４８４は、Ｗｅｂストレージ４９１からスタイル情報を取得して、グリッドのスタイル情報に設定したり、ユーザの操作により変更されたグリッドからスタイル情報を取得し、Ｗｅｂストレージ４９１へスタイル情報を設定（保存）したりする制御ファイルである。スタイル情報には、「行／列の幅／高さの変更」「ある行／列を固定して、他をスクロール」「行／列の非表示、再表示」「行／列の入れ替え」を制御するための情報が含まれている。
【００４６】
ブラウザ４９０は、Ｗｅｂアプリケーションを利用するエンドユーザが利用するアプリケーションであり、クライアント処理部４７０で渡されるＨＴＭＬファイルを表示するアプリケーションである。
【００４７】
Ｗｅｂストレージ４９１は、情報を格納しておくための、ブラウザの機能である。アプリケーションクライアント１０４のハードディスクにグリッドのスタイル情報を格納している。Ｗｅｂストレージに記憶されている情報の一例を示す図は図１３である。Ｗｅｂストレージには、項目名と項目の順番（表示順）なども記憶されている。
【００４８】
図５は、Ｗｅｂアプリケーション生成のフローチャートの一例を示す図である。なお、以下のフローチャートの各ステップは、各装置のＣＰＵ２０１が実行する。
【００４９】
ステップＳ５０１において、プログラム開発装置１０１は、ユーザによるＷｅｂアプリケーション生成指示を受け付けると、外部メモリ２１１に記憶されているリポジトリ定義部４００のアプリケーション定義４０２をＲＡＭ２０２に読み込む。具体的には、開発したＷｅｂアプリケーション（プロジェクト）を決定するものである。このＷｅｂアプリケーション定義に、データモデル定義、入出力定義、ビジネスプロセス定義を設定する。これらの定義は、Ｗｅｂアプリケーション自動生成する設定画面でユーザが任意に設定するものとするが、予め生成された定義を読み込む構成であってもよい。
【００５０】
ステップＳ５０２において、プログラム開発装置１０１は、データモデル定義４０３を生成する。生成されたデータモデル定義４０３は、リポジトリ定義部４００として登録される。具体的には、データモデル設定画面（不図示）でデータベース上の項目をマッピングする。一般的には、１テーブル１データモデルが作成される。データモデル定義の作成はＷｅｂアプリケーションの開発において既知の技術であるため説明を省略する。
【００５１】
ステップＳ５０３において、プログラム開発装置１０１は、入出力定義４０４を生成する。生成された入出力定義４０４は、リポジトリ定義部４００として登録される。具体的には、図６の入出力定義画面でＷｅｂ画面のグリッド定義を行う。
【００５２】
具体的には、まず、画面レイアウト設定画面（図１５）上で、画面エディタ上にグリッドの部品１５０１をドラッグアンドドロップ操作等により配置する。すなわち、グリッドオブジェクトを配置する配置処理の一例を示すものである。
【００５３】
グリッドの部品を配置したタイミングでは、単なる格子状のグリッドが表示されるため、この表にどのデータモデルのどの項目を表示させるかを設定する。この項目の設定も図１５の１５０２からデータモデルをドラッグアンドドロップすることにより設定される。すなわち、配置したグリッドオブジェクトに対して、データモデルを設定するデータモデル設定処理の一例を示すものである。
次に、グリッドが配置された画面の入出力定義を行うため、図６の入出力定義画面に遷移する。
【００５４】
グリッドが配置された画面の場合、入出力定義画面でグリッドに対応する定義情報６０１が表示される。項目タイプには「Ｇグループ」、項目コード「Ｇ」、名前「顧客マスタ」などが設定される。名前については、画面レイアウト設定画面でグリッドを配置する際に設定されたデータモデルの名前が設定される。
【００５５】
このグリッドで各列の定義情報６１０が、定義情報６０１の下に設定される。レベル６１１によって、定義情報６０１の配下の定義情報と判定できるようになっている。定義情報６０１はレベル「１」、定義情報６１０はレベル「２」。
次に、６０１の定義情報を選択すると、入出力項目プロパティが表示され、６０３にはグループタイプ（種別）が「ＤＡＴＡＧＲＩＤ」が設定される。
【００５６】
ここで、グループタイプ（種別）について、より詳細に説明する。
グループタイプ（種別）は、「ＤＡＴＡＧＲＩＤ」のほか、「ＴＡＢＬＥ」「ＧＲＡＰＨ」があり、選択可能となっている。このグループタイプは、入出力定義画面でユーザの操作により変更できる構成となっている。
【００５７】
例えば、図２０のように、２０００の入出力定義で「ＤＡＴＡＧＲＩＤ」が設定された場合に、画面レイアウト設定画面では、２０１０のようにデータグリッド形式で表示される。
【００５８】
また、図２１のように、２１００の入出力定義で「ＴＡＢＬＥ」が設定された場合に、画面レイアウト設定画面では、２１１０のようにＨＴＭＬのテーブルタグで構成される表形式で表示される。
【００５９】
また、図２２のように、２２００の入出力定義で「ＧＲＡＰＨ」が設定された場合に、画面レイアウト設定画面では、２２１０のようにグラフ形式で表示される。グラフの縦軸横軸などはデフォルトの設定を用いて、グラフ表示するものとする。
【００６０】
なお、データグリッドは、アプリケーションクライアント１０４のブラウザ上でレイアウトやデータを変更できる表であり、テーブルは変更できない表である。また、本実施形態ではグラフにおいてもレイアウトやデータを変更できない表となっている。
【００６１】
このように、開発者がグループタイプ（種別）によって、レイアウトやデータの変更ができるものとできないものを区別し、Ｗｅｂストレージへの保存（書き込み）や取得（読み出し）を制御するソースコードを生成し、変更後の状態を再表示させるという技術的に困難な制御を容易にすることができる。
【００６２】
また、６０４〜６０６はユーザが任意に設定可能である。６０４ではＷｅｂストレージへのグリッドのスタイル情報の保存タイミングを設定する。すなわち、グリッドが操作され変更されたグリッドのスタイル情報の記憶タイミングを、グリッドを示す定義情報に設定するタイミング設定処理の一例を示すものである。
【００６３】
保存タイミングとは、例えば、変更操作があった場合、画面が切り替わった場合などである。また、保存しないという設定も可能である。なお、保存しないと設定した場合に、グリッドのスタイルを変更しても、他の画面に遷移して戻ってくるとデフォルトのスタイルでグリッドが表示されることになる。
【００６４】
保存するように設定をした場合には、Ｗｅｂストレージに保存する制御を実行するソースコードが出力され、保存しないように設定をした場合には、Ｗｅｂストレージに保存する制御を実行するソースコードが出力されないようにソースコードを生成する。すなわち、記憶タイミングでクライアント装置のＷｅｂストレージへスタイル情報を記憶する制御情報を生成する処理の一例を示すものである。
【００６５】
これにより、開発者がグリッドのスタイルの変更を維持して表示させるか、変更を維持しないで表示させるかのＷｅｂアプリケーション（プログラム）を容易に生成することができる。
【００６６】
６０５では、保存単位を設定する。保存単位とは、ブラウザ単位（ログインユーザ単位）、ウィンドウ単位などである。この設定の単位でＷｅｂストレージに保存する制御のソースコードが出力される。
【００６７】
６０６では、破棄タイミングを設定する。破棄タイミングとは、Ｗｅｂストレージに永続的に残す、ブラウザを閉じると破棄する、ウィンドウを閉じると破棄するなどである。ブラウザを閉じると破棄する設定がされた場合には、ブラウザを閉じる操作を検知すると、Ｗｅｂストレージのスタイル情報を削除する制御のソースコードが出力される。
すなわち、Ｗｅｂシステムで用いるクライアント装置で表示する画面の定義である入出力定義を設定する設定処理の一例を示すステップである。
【００６８】
これらの各種設定により、データモデルの項目名を含む定義情報と、グリッドオブジェクトに対応する定義情報とが生成される（定義情報生成処理の一例を示す）。
【００６９】
ステップＳ５０４において、プログラム開発装置１０１は、ビジネスプロセス定義４０５を生成する。生成されたビジネスプロセス定義４０５は、リポジトリ定義部４００として登録される。具体的には、受け付けたデータの処理の流れを定義したものである。例えば、入力したデータの重複をチェックして、登録するといったロジックを定義したものである。ビジネスプロセル定義についても、Ｗｅｂアプリケーションの開発において既知の技術であるため説明を省略する。
【００７０】
ステップＳ５０５において、プログラム開発装置１０１は、外部メモリ２１１に記憶されているリポジトリ定義部４００のデータベース定義４０１をＲＡＭ２０２に読み込む。データベース定義４０１は予め生成されているものとする。
【００７１】
ステップＳ５０６において、プログラム開発装置１０１は、設定・読み込みしたリポジトリ定義部４００の各定義・各ファイルから情報を取得し、サーバ処理部のソースコードを生成する。具体的には、「データモデル定義」「ビジネスプロセス定義」に基づき、サーバ処理部４６０を生成する。
【００７２】
ステップＳ５０７において、プログラム開発装置１０１は、設定・読み込みしたリポジトリ定義部４００の各定義・各ファイルから情報を取得し、クライアント処理部のソースコードを生成する。具体的には、「入出力定義」に基づき、クライアント処理部を生成する。入出力定義には、後述する図１５の画面設定の情報も含むものとする。
【００７３】
なお、生成されたソースコードにはプログラミング言語が記載されたファイル（例えば、データグリッド用ＪＳＰ４７１）に加え、ＨＴＭＬ、ＪＳＰ、ＪａｖａＳｃｒｉｐｔ（登録商標）等のＷｅｂアプリケーションの提供に利用されるファイル（例えば、図４の４８１〜４８４）も含まれる。
【００７４】
ステップＳ５０８において、プログラム開発装置１０１は、ステップＳ５０６にて生成したソースコード（ファイル）をアプリケーションサーバ１０５に配置（デプロイ）する。これにより、アプリケーションサーバ１０５上でＷｅｂアプリケーションが動作するようになる。デプロイした際のアプリケーションサーバの構成は、図４の４６０、４７０である。
次に、ステップＳ５０７の処理の詳細な説明をする。
【００７５】
ステップＳ５１０では、ソースコードを生成する基となる入出力定義の定義情報を読み出す。そして、入出力定義の定義情報に入出力項目プロパティに設定されているグループタイプが、ＤＡＴＡＧＲＩＤの定義情報（例えば、６０２のレコード）があるか否かを判定する。すなわち、ソースコードを生成する際に、Ｗｅｂ画面にグリッドが含まれるか否かを判定する処理である。（設定された入出力定義にグリッドを示す定義があるか否かを判定する判定処理の一例を示すステップである。）グリッドが含まれるＷｅｂ画面に対応するＷｅｂアプリケーションのソースコードを生成する場合には、ステップＳ５１１へ処理を移す。グリッドが含まれないＷｅｂ画面に対応するＷｅｂアプリケーションのソースコードを生成する場合には、ステップＳ５１７へ処理を移す。
なお、本実施形態では、ソースコード生成時にグリッドを示す定義があるか否かを自動的に判定するようにしているが、ユーザがグリッドを示す定義を手動にて指定して、本実施形態でのソースコード生成処理で生成させ（個々にソースコードを生成し）、このソースコードを結合処理にてまとめてＷｅｂアプリケーションを作るようにしてもよい。すなわち、本実施形態の状態変更可能なオブジェクト（例えば、グリッド）の定義の判定は、自動手動のいずれでも定義を特定可能な構成と言い換えることが可能である。
【００７６】
ステップＳ５１１では、データグリッド用ＪＳＰ４７１を作成する。具体的には、入出力定義の定義情報に従って、ＪＳＰファイルに、ＨＴＭＬ画面上でのグリッドを表示するための位置やインクルードするファイルを設定する。また、図１５で設定した画面上の他の部品の定義情報（制御情報）も書き込まれる。
【００７７】
ステップＳ５１２では、データグリッド用ＣＳＳ４７２を作成する。具体的にはグリッドのヘッダー（１行目）の色、フォント情報が記述されている。本実施形態では、アプリケーション生成部４１０が予め有している固定値を用いるものとするが、ユーザが任意に設定することも可能である。ＣＳＳファイル内に記載されている情報について、ＣＳＳファイルは既知の技術であるため詳細な説明を省略する。
【００７８】
ステップＳ５１３では、データグリッド部品４８１を複製する。これは、アプリケーション生成部４１０が予め有しているデータグリッド部品を用いて、プログラムを生成するためである。なお、他のファイルは、設定された定義情報に基づいて、新たなファイル（例えば、４８２〜４８４）を作っているため、ここではデータグリッド部品を複製する。
【００７９】
ステップＳ５１４では、データグリッドデフォルトスタイル４８２を生成する。上述したように、デフォルトスタイルの一例は、図１０の１０００であり各列の項目名と順番（項目名の並び順が項目名の表示順となる）を示すように記載されている。なお、図１５の列名を設定した情報を基にデフォルトスタイルが決定される。グリッドのセルの幅はデータグリッド部品４８１が自動で決定するものとする。すなわち、データグリッドデフォルトスタイル４８２を利用した場合には、データグリッド部品４８１が項目名を表示する際に幅を決定して表示するものとする。
【００８０】
ステップＳ５１５では、データグリッドデータ制御部４８３を生成する。具体的には、入出力定義の定義情報（６０１、６１０）に従って、グリッド（表形式のセル）へデータを設定したり、グリッドからデータを取得したりする制御をするソースコードを生成する。データグリッドデータ制御部４８３は、データグリッド部品に対して、データを渡したり、データをアプリケーションサーバに送信する役割を担うものである。
【００８１】
生成されたソースコードの一例を示す図が、図１１の１１００である。１１０１は、グリッドに表示されるデータを示すものであり、予めデータベースより取得したすべてのデータを含むソースコードが出力される。
【００８２】
１１０２は、グリッドの実体を生成するための制御のソースコードである。「ｖａｒ  ＿ｃｏｎｔａｉｎｅｒ  ＝  ＄（＃ｇ）；」によりＪＳＰファイルに記述されたグリッドの位置を取得した後、ハンズオン（データグリッド部品）を呼び出して、グリッドの設定（例えば列の順番など）をする制御のソースコードになっている。
【００８３】
１１０３は、生成したグリッドに１１０１のデータを表示させるために、ハンズオン（データグリッド部品）に対して１１０１を読み込むようにする制御のソースコードになっている。
【００８４】
ステップＳ５１６では、データグリッドスタイル制御部４８４を生成する。具体的には、Ｗｅｂストレージ４９１からスタイル情報を取得して、グリッドのスタイル情報に設定したり、ユーザの操作により変更されたグリッドからスタイル情報を取得し、Ｗｅｂストレージ４９１へスタイル情報を設定（保存）したりする制御のソースコードを出力する。なお、生成されたソースコードは、Ｗｅｂストレージにレイアウト情報が保存されているか否かを判断するソースコードも含まれる。
生成されたソースコードの一例を示す図が、図１２の１２００、図１４の１４００である。
【００８５】
図１２の１２００は、Ｗｅｂストレージからスタイル情報を読み出し、グリッドにスタイル情報を設定する制御のソースコードを示している。
１２０１は、Ｗｅｂストレージから操作されたグリッドに対応するスタイル情報（例えば、各列の幅など）を取得する制御のソースコードである。
【００８６】
１２０２は、１２０１で取得したスタイル情報をグリッドに設定するため、ハンズオン（データグリッド部品）に対してスタイル情報を設定する（渡す）制御のソースコードである。
１２０３は、Ｗｅｂストレージを操作する制御の関数であり、ブラウザの関数を用いて、Ｗｅｂストレージの情報の取得要求を行うソースコードである。
【００８７】
図１４の１４００は、Ｗｅｂストレージにスタイル情報を書き出すソースコードを示している。Ｗｅｂストレージにスタイル情報を書き出すタイミングは、図６の６０４で設定されたタイミングである。グリッドへの変更操作があったタイミングでスタイル情報を保存する設定がされた場合には、ハンズオン（データグリッド部品）からイベントを取得して実行される。
【００８８】
１４０１は、設定された保存タイミングで、ハンズオン（データグリッド部品）からグリッドに対応するスタイル情報（例えば、各列の幅など）を取得し、Ｗｅｂストレージに保存する制御のソースコードである。
１４０２は、Ｗｅｂストレージを操作する制御の関数であり、ブラウザの関数を用いて、Ｗｅｂストレージへ情報を書き込みするソースコードである。
なお、Ｗｅｂストレージのスタイル情報を破棄（削除）する場合のソースコードは、１４００に記載されるものとする。
【００８９】
ステップＳ５１１〜ステップＳ５１６は、設定された入出力定義にグリッドを示す定義があると判定された場合に、グリッドが操作され変更されたグリッドのスタイル情報を取得し、クライアント装置のＷｅｂストレージへスタイル情報を記憶する制御情報を含むプログラムを生成する処理の一例を示すステップである。また、クライアント装置において画面でグリッドを表示する場合に、Ｗｅｂストレージにスタイル情報が記憶されているか否かを判定し、Ｗｅｂストレージにスタイル情報が記憶されていると判定された場合に、当該スタイル情報を用いて、前記グリッドのスタイルを変更制御する制御情報を生成する処理の一例を示すステップである。
【００９０】
ステップＳ５１７では、通常制御用ＪＳＰを生成する。具体的には、グリッドを用いないＷｅｂアプリケーションであるため、入出力定義４０４の定義情報ごとに、ＪＳＰファイルに、画面での制御をコントロールするソースコードが出力される。なお、通常制御用ＪＳＰには、利用しないＪＳファイル、例えば、データグリッド部品がインクルードされないようにソースコードを出力することが望ましい。
【００９１】
ステップＳ５１８では、通常制御用ＣＳＳを生成する。具体的には、ＨＴＭＬの画面の装飾をするための情報が記述されている。ＣＳＳファイル内に記載されている情報について、ＣＳＳファイルは既知の技術であるため詳細な説明を省略する。
【００９２】
なお、本実施形態では、データグリッドに関するソースコードの出力について詳細に説明したが、データグリッド以外の定義情報に関するソースコードも出力されることは言うまでもない。例えば、検索キー入力領域に入力された値を検索する定義情報が有る場合には、検索ボタンを押下した際に、入力された値でアプリケーションサーバ１０５へ検索要求をする制御のソースコードが出力される。
【００９３】
次に図７を用いて、アプリケーションクライアント１０４のブラウザに、アプリケーションクライアント１０４で利用するファイルがダウンロードされた際の処理について説明する。なお、以下のフローチャートの各ステップは、アプリケーションクライアント１０４のＣＰＵ２０１が実行する。
【００９４】
まず、ブラウザを介し、ユーザの操作に応じて指定されたＵＲＬに基づき、アプリケーションクライアント１０４は、アプリケーションサーバ１０５へアクセスする。アプリケーションサーバ１０５は、クライアント処理部４７０を取得して、アプリケーションクライアント１０４へ生成されたＨＴＭＬファイルを送信する。具体的には、アプリケーションサーバ１０５のクライアント処理部４７０の４７１のＪＳＰファイルから、ブラウザで表示可能なＨＴＭＬファイルを生成して、４７２、４８０のファイル群（４８１〜４８４）とともにアプリケーションクライアント１０４へ送信する。このファイル群を受信して、ブラウザで画面を表示する。この画面表示の際に、データグリッド部品４８１が読み出されてスタイル変更やデータ変更可能なグリッドが表示される。
【００９５】
ステップＳ７０１では、データグリッドデータ制御部４８３が、グリッドに配置するデータを取得し、データグリッド部品４８１に渡すことで、グリッドにデータを設定する。設定するデータは、図１１の１１０１のデータを用いるものとするが、ユーザ操作による検索に応じたデータをデータベースから取得して表示してもよいし、初期表示はデータを表示しないようにしてもよい。
【００９６】
ステップＳ７０２では、データグリッドスタイル制御部４８４が、表示されるグリッドに対応するスタイル情報がＷｅｂストレージ４９１に保存されているか否かを判定する。具体的には、グリッドごとにグリッドの識別情報を有しており、このグリッドの識別情報を基に、Ｗｅｂストレージ４９１を検索して、対応するスタイル情報を特定する。グリッドの識別情報は、グリッド名やグリッドＩＤ、画面名など識別できるものであれば何れであってもよい。
【００９７】
Ｗｅｂストレージ４９１に保存されているスタイル情報の例が図１３である。また、１３０１が、レイアウト情報のうち、列幅に関する情報である。１３０１の例では、Ｋｅｙが「＿ｄａｔａｇｒｉｄＣｏｌｕｍｎＷｉｄｔｈ＿ｔｏ＿ｓａｌｅｓ＿ｓｏｌｕｔｉｏｎ＿ｃｕｓｔｏｍｅｒ＿ｎａｍｅ．ｎｏｒｍａｌｉｚｅｄｖａｌｕｅ」、Ｖａｌｕｅが「２４８」となっている。キーは、画面「ｔｏ＿ｓａｌｅｓ＿ｓｏｌｕｔｉｏｎ＿ｃｕｓｔｏｍｅｒ」の「ｎａｍｅ（名前列）」の「＿ｄａｔａｇｒｉｄＣｏｌｕｍｎＷｉｄｔｈ（列幅）」の情報を示している。
【００９８】
グリッドに対応するスタイル情報が有る場合には、ステップＳ７０３へ処理を移す。グリッドに対応するスタイル情報が無い場合には、ステップＳ７０５へ処理を移す。
ステップＳ７０３では、データグリッドスタイル制御部４８４が、Ｗｅｂストレージ４９１から特定（取得した）したスタイル情報を読み込む。
【００９９】
ステップＳ７０４では、データグリッドスタイル制御部４８４は、読み込んだスタイル情報をデータグリッドに設定する。具体的には、データグリッド部品４８１に取得したスタイル情報を渡し、スタイル情報を変更したグリッドが表示される。変更されたスタイル情報で表示されたグリッドの例が、図９の９００である。９００は変更後のレイアウト情報を読み出して設定した例であり、具体的には「顧客名」列の幅を広げている。また、「ふりがな」列を先頭に移動している。「顧客ＩＤ」列を固定している。「メールアドレス」列を非表示としている。
【０１００】
ステップＳ７０５では、データグリッドスタイル制御部４８４が、データグリッドデフォルトスタイル４８２を取得して、データグリッドデフォルトスタイル４８２から取得した情報をデータグリッドに設定する。具体的には、データグリッド部品４８１に設定する情報を渡す。デフォルトで表示されたグリッドの例が、図８の８００である。なお、列幅などは、データグリッド部品４８１が自動で決定するものとする。
【０１０１】
ステップＳ７０６では、Ｗｅｂ画面への操作イベント待ちループに入る。ここでは特に、グリッドに対する操作イベント待ちのループとする。検知したい操作イベントは、データグリッド部品４８１に対して登録することで必要なイベントを取得できる。
【０１０２】
ステップＳ７０７では、データグリッド部品４８１が、グリッドへの操作イベント（例えば、列幅の変更、列の非表示、列順の変更など）が発生したことを検知して、データグリッドスタイル制御部４８４へ渡す。これにより所定の操作イベントが発生したか否かを判定する。グリッドへの操作イベントが発生した場合には、ステップＳ７０８へ処理を移す。操作イベントが発生していない場合には、ステップＳ７１２へ処理を移す。
【０１０３】
ステップＳ７０８では、データグリッドスタイル制御部４８４が、操作イベントが、保存タイミング６０４で設定された保存対象のタイミングかどうか判定する。この保存タイミングはデータグリッドスタイル制御部４８４に保存されている。例えば、ユーザが列の幅を変更した場合、列の幅情報が保存対象で、かつ、保存タイミングが「操作毎」となっていれば、「ＹＥＳ」と判定され、ステップＳ７０９へ処理を移す。
なお、本実施形態では、保存タイミングは変更した場合に保存するように説明しているが、一定間隔でデータグリッドのスタイルを取得して保存させる制御であってもよい。この場合、変更されていない場合でもＷｅｂストレージに保存されるが、いずれかのタイミングで変更されたスタイルが取得され、Ｗｅｂストレージに保存される構成であるため、一定間隔でスタイルを取得して保存させる制御についても本実施形態における効果を得られることは言うまでもない。
【０１０４】
ステップＳ７０９では、データグリッドスタイル制御部４８４が、操作により変更されたスタイル情報をデータグリッド部品４８１から取得し、Ｗｅｂストレージ４９１へスタイル情報をグリッドの識別情報と対応付けて保存する。保存する際には、保存単位６０４で設定された保存の単位ごとに保存処理を行う。ブラウザ単位の場合、そのブラウザでのスタイル情報として管理する。
【０１０５】
ステップＳ７１０では、データグリッドスタイル制御部４８４が、操作イベントが、破棄タイミング６０６で設定された破棄のタイミングかどうか判定する。この破棄タイミングはデータグリッドスタイル制御部４８４に保存されている。破棄のタイミングであれば、ステップＳ７１１へ処理を移す。破棄のタイミングでなければ、ステップＳ７１２へ処理を移す。破棄タイミング６０６が「ＮＥＶＥＲ」であれば、破棄しない設定であるため、ステップＳ７１２へ処理を移す。
【０１０６】
ステップＳ７１１では、グリッドの識別情報に基づき、Ｗｅｂストレージ４９１から削除する。なおグリッド単位で削除してもよいし、画面単位で削除してもよいし、ブラウザ単位で削除してもよい。
【０１０７】
ステップＳ７１２では、Ｗｅｂ画面へのリロードがあったか否かを判定する。Ｗｅｂ画面へのリロードがあった場合には、グリッドの再表示がされるため、ステップＳ７０１へ処理を戻す。リロードがなかった場合にはイベント待ちルールとなる。なお、リロードは、グリッドへのリロードであってもよい。
イベントが破棄対象でなかった場合や、Ｗｅｂストレージ４９１への処理が終わった場合は、イベント待ちループに戻る。
【０１０８】
なお、本実施形態では、Ｗｅｂアプリケーションを生成し構築するシステムとして説明したが、ＸＭＬ形式でやり取りするＷｅｂサービスとして動作するシステムであってもよい。
【０１０９】
次に、図１６を用いて、本実施形態における、特徴を示す機能構成の一例について説明する。
【０１１０】
なお、図１６の機能構成は、プログラム開発装置１０１の機能構成であるが、プログラム開発が可能な装置であればサーバであってもよい。すなわち、クラウド環境で開発できるシステムを利用する場合、サーバの機能構成に置き換えることも可能である。すなわち、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置と言い換えることが可能である。
また、スタイルやデータを変更可能なグリッドとして説明するが、状態を変更可能なオブジェクトであればよく、グリッドに限るものではないことは言うまでもない。
設定部１６０１は、Ｗｅｂシステムで用いるクライアント装置で表示する画面の定義である入出力定義を設定する機能部である。
判定部１６０２は、設定された入出力定義にグリッドを示す定義があるか否かを判定する機能部である。言い換えると、状態変更可能なオブジェクトに対応する定義を特定する機能部である。
【０１１１】
生成部１６０３は、設定された入出力定義にグリッドを示す定義があると判定された場合に、前記グリッドが操作され変更されたグリッドのスタイル情報（変更されたオブジェクトの表示状態の情報）を取得し、前記クライアント装置のＷｅｂストレージへ当該スタイル情報を記憶する制御情報を含むプログラムを生成する機能部である。
【０１１２】
また、クライアント装置において前記画面でグリッドを再表示する場合に、前記Ｗｅｂストレージにスタイル情報（オブジェクトの表示状態の情報）が記憶されているか否かを判定し、Ｗｅｂストレージにスタイル情報（オブジェクトの表示状態の情報）が記憶されていると判定された場合に、当該スタイル情報を用いて、前記グリッドのスタイル（オブジェクトの表示状態）を変更制御する制御情報を生成する機能部である。
また、記憶タイミングで前記クライアント装置のＷｅｂストレージへスタイル情報を記憶する制御情報を生成する機能部である。
【０１１３】
また、設定された入出力定義にグリッドを示す定義があると判定された場合に、グリッド制御部品（オブジェクト制御部品）を呼び出す制御情報を含め、グリッド制御部品（オブジェクト制御部品）によりグリッドが変更されたことによるスタイル情報（オブジェクトの表示状態の情報）を、グリッド制御部品（オブジェクト制御部品）から取得して、Ｗｅｂストレージに記憶する制御情報を生成する機能部である。
配置部１６０４は、グリッドオブジェクトを配置する機能部である。
データモデル設定部１６０５は、配置したグリッドオブジェクトに対して、データモデルを設定する機能部である。
定義情報生成部１６０６は、設定されたデータモデルの項目名を含む定義情報と、前記グリッドオブジェクトに対応する定義情報とを生成する機能部である。
【０１１４】
タイミング設定部１６０７は、グリッドが操作され変更されたグリッドのスタイル情報の記憶タイミングを、前記グリッドを示す定義情報に設定する機能部である。
記憶部１６０８は、グリッド制御部品を記憶する機能部である。
以上、本実施形態の詳細な説明を終了する。
【０１１５】
次にその他の実施形態について説明する。なお、上述の実施形態と同じ説明については省略する。
【０１１６】
図１７を用いて、本実施形態の処理について説明する。図１７は、他の実施形態におけるＷｅｂアプリケーション生成のフローチャートの一例を示す図である。なお、以下のフローチャートの各ステップは、各装置のＣＰＵ２０１が実行する。
【０１１７】
ステップＳ１７０１は、ステップＳ５０３と同様の処理で、プログラム開発装置１０１は、入出力定義４０４を生成する。生成された入出力定義４０４は、リポジトリ定義部４００として登録される。本実施形態では、図１９の入出力定義画面でＷｅｂ画面のグリッド定義を行う。ここで、１８０１でデータグリッドにおいて、データが変更され、このデータをＷｅｂストレージに保存するか否かを設定することができる。「ＯＮ」に設定すると、変更されたデータがＷｅｂストレージに保存やＷｅｂストレージからデータを取得するソースコードが生成される。
【０１１８】
「ＯＦＦ」に設定すると、変更されたデータはＷｅｂストレージに保存されず、レイアウトについてＷｅｂストレージに保存し、取得するソースコードが生成される。
なお、データの保存タイミングなどは、図６の６０４の設定と同様とするが、データの保存タイミングは、別に設定させてもよいことは言うまでもない。
【０１１９】
ステップＳ１７０２は、ステップＳ５１５と同様の処理で、データグリッドデータ制御部４８３を生成する。具体的には、入出力定義の定義情報（６０１、６１０）に従って、グリッド（表形式のセル）へデータを設定したり、グリッドからデータを取得したりする制御をするソースコードを生成する。また、１８０１が「ＯＮ」の場合、ユーザの操作により変更されたグリッドから変更されたデータを取得し、Ｗｅｂストレージ４９１へデータを設定（保存）したり、Ｗｅｂストレージからデータを取得する制御のソースコードを生成する。データの保存は、変更箇所だけでも、データグリッド全体のデータであってもよい。
なお、不図示であるが、Ｗｅｂストレージにデータが保存されているか否かを判断するソースコードも生成されることは言うまでもない。
【０１２０】
データグリッドデータ制御部４８３は、Ｗｅｂストレージへデータを保存する取得する役割のほか、上述の通りデータグリッド部品に対して、データを渡したり、データをアプリケーションサーバに送信する役割を担うものである。
【０１２１】
ステップＳ５１０で、入出力定義の定義情報に入出力項目プロパティに設定されているグループタイプが、ＴＡＢＬＥかＧＲＡＰＨであると判定された場合（グループが設定されていない場合含む）には、ステップＳ１７０３へ処理を移す。
【０１２２】
ステップＳ１７０３では、グループタイプが、ＴＡＢＬＥかＧＲＡＰＨかを判定する。ＧＲＡＰＨの場合、ステップＳ１７０４へ処理を移す。ＴＡＢＬＥの場合には、ステップＳ５１７へ処理を移す。ステップＳ５１７では、テーブルタグを用いて表を生成するものとする。
【０１２３】
ステップＳ１７０４では、グラフ用ＪＳＰを作成する。具体的には、入出力定義の定義情報に従って、ＪＳＰファイルに、ＨＴＭＬ画面上でのグラフを表示するための位置やインクルードするファイルを設定する。また、図１５で設定した画面上の他の部品の定義情報（制御情報）も書き込まれる。
【０１２４】
ステップＳ１７０５では、グラフ用ＣＳＳを作成する。具体的には棒グラフの色、軸のフォント情報が記述されている。本実施形態では、アプリケーション生成部４１０が予め有している固定値を用いるものとするが、ユーザが任意に設定することも可能である。ＣＳＳファイル内に記載されている情報について、ＣＳＳファイルは既知の技術であるため詳細な説明を省略する。
【０１２５】
ステップＳ１７０６では、グラフ部品（不図示）を複製する。これは、アプリケーション生成部４１０が予め有しているグラフ部品を用いて、プログラムを生成するためである。なお、他のファイルは、設定された定義情報に基づいて、新たなファイル（例えば、４８２〜４８４）を作っているため、ここではグラフ部品を複製する。
【０１２６】
ステップＳ１７０７では、グラフデータ制御部を生成する。具体的には、入出力定義の定義情報に従って、グラフへデータを設定する制御のソースコードを生成する。グラフデータ制御部は、グラフ部品に対して、データを渡したり、グラフの設定（棒グラフ、折れ線グラフ、軸の設定）を渡す役割を担うものである。なお、グラフの設定は入出力定義で設定できるが、デフォルトの設定を用いてもよい。
【０１２７】
なお、本実施形態では、データグリッド、グラフ、テーブルを分けて説明したが、入出力定義にデータグリッド、グラフ、テーブルが混在している場合は、それぞれに対するソースコードが生成されることは言うまでもない。
【０１２８】
次に、図１８を用いて、本実施形態の処理について説明する。図１８は、他の実施形態におけるアプリケーションクライアント１０４のブラウザに、アプリケーションクライアント１０４で利用するファイルがダウンロードされた際の処理について説明する。なお、以下のフローチャートの各ステップは、アプリケーションクライアント１０４のＣＰＵ２０１が実行する。
【０１２９】
ステップＳ１８０１では、データグリッドスタイル制御部４８４又はデータグリッドデータ制御部が、表示されるグリッドに対応するスタイル情報又はデータがＷｅｂストレージ４９１に保存されているか否かを判定する。具体的には、グリッドごとにグリッドの識別情報を有しており、このグリッドの識別情報を基に、Ｗｅｂストレージ４９１を検索して、対応するスタイル情報を特定する。グリッドの識別情報は、グリッド名やグリッドＩＤ、画面名など識別できるものであれば何れであってもよい。
【０１３０】
グリッドに対応するスタイル情報又はデータが有る場合には、ステップＳ１８０２へ処理を移す。グリッドに対応するスタイル情報又はデータが無い場合には、ステップＳ７０５へ処理を移す。
【０１３１】
ステップＳ１８０２では、データグリッドスタイル制御部４８４又はデータグリッドデータ制御部が、Ｗｅｂストレージ４９１から特定（取得した）したスタイル情報又はデータを読み込む。
【０１３２】
ステップＳ１８０３では、データグリッドスタイル制御部４８４は、読み込んだスタイル情報をデータグリッドに設定する。具体的には、データグリッド部品４８１に取得したスタイル情報を渡し、スタイル情報を変更したグリッドが表示される。変更されたスタイル情報で表示されたグリッドの例が、図９の９００である。９００は変更後のレイアウト情報を読み出して設定した例であり、具体的には「顧客名」列の幅を広げている。また、「ふりがな」列を先頭に移動している。「顧客ＩＤ」列を固定している。「メールアドレス」列を非表示としている。
【０１３３】
また、データグリッドデータ制御部は、読み込んだデータをデータグリッドに設定する。Ｗｅｂストレージには、データとデータグリッドの位置を記憶しており、この位置に応じてデータを反映させる要求をデータグリッド部品４８１にする。
【０１３４】
ステップＳ７０７、ステップＳ７０８、ステップＳ７１０の処理における、データグリッドスタイル制御部４８４は、データグリッドデータ制御部に置き換えるものとし、データの変更については、データグリッドデータ制御部により保存タイミング、破棄タイミングを判定する。
【０１３５】
ステップＳ１８０４では、データグリッドスタイル制御部４８４が、操作により変更されたスタイル情報をデータグリッド部品４８１から取得し、Ｗｅｂストレージ４９１へスタイル情報をグリッドの識別情報と対応付けて保存する。保存する際には、保存単位６０４で設定された保存の単位ごとに保存処理を行う。ブラウザ単位の場合、そのブラウザでのスタイル情報として管理する。
【０１３６】
また、データグリッドデータ制御部が、操作により変更されたデータをデータグリッド部品４８１から取得し、Ｗｅｂストレージ４９１へデータとデータグリッドの位置とをグリッドの識別情報と対応付けて保存する。
【０１３７】
ステップＳ１８０５では、グリッドの識別情報に基づき、スタイル情報又はデータをＷｅｂストレージ４９１から削除する。なおグリッド単位で削除してもよいし、画面単位で削除してもよいし、ブラウザ単位で削除してもよい。
なお、破棄タイミングは、アプリケーションクライアント１０４のブラウザを操作しているユーザにより決定させる形態であってもよい。例えば、データグリッド上で右クリックし、メニューを表示させ、メニューからデータグリッドクリア（初期に戻す）をすると、Ｗｅｂストレージからスタイル情報やデータを削除し、リロードする。
【０１３８】
本実施形態では、例えば、Ｗｅｂアプリケーションで用いる画面の定義である入出力定義を設定し、設定された入出力定義にグリッドを示す定義があるか否かを判定する（状態変更が可能なオブジェクトを特定する）。グリッド（状態変更が可能なオブジェクト）を示す定義があると判定された場合に、グリッド部品（状態変更が可能なオブジェクト）を含み、グリッド（状態変更が可能なオブジェクト）が操作された場合に、グリッド部品（状態変更が可能なオブジェクト）により変更されたスタイル情報やデータを取得する。この取得したスタイル情報やデータをＷｅｂストレージへスタイル情報を書き込む、読み出す制御情報（例えば、プログラムコード）を埋め込んだＷｅｂアプリケーションプログラムを生成する。
【０１３９】
また、このＷｅｂアプリケーションプログラムを用いてＷｅｂ画面でグリッド（状態変更が可能なオブジェクト）を表示する際には、グリッド（状態変更が可能なオブジェクト）に適用するためのスタイル情報やデータがＷｅｂストレージにあるか否かを判定し、適用するスタイル情報がない場合には、デフォルトのスタイル情報（ＣＳＳファイルとは異なる）を読み出し、Ｗｅｂストレージあるいはアプリケーションサーバから取得したデータを用いてグリッド（状態変更が可能なオブジェクト）を表示する。適用するスタイル情報がある場合には、Ｗｅｂストレージから読み出したスタイル情報を用いてグリッド（状態変更が可能なオブジェクト）を表示するように制御する。
【０１４０】
さらに、Ｗｅｂアプリケーション生成時の設定で、変更されたグリッド（状態変更が可能なオブジェクト）のスタイルやデータを記憶させるか、記憶（保存）するタイミング、破棄するタイミングを設定させ、開発者が容易にグリッドのスタイル関する制御を行うプログラムを生成することが可能となる。
【０１４１】
すなわち、Ｗｅｂ画面を表示する際に、変更された状態（スタイルやデータ）でオブジェクト（グリッド）表示できるＷｅｂ画面を利用するＷｅｂアプリケーションのプログラムを容易に開発することが可能となる。
【０１４２】
特に、開発者がグループタイプ（種別）によって、レイアウトやデータの変更ができるものとできないものを区別し、Ｗｅｂストレージへの保存（書き込み）や取得（読み出し）を制御するソースコードを生成し、変更後の状態を再表示させるという技術的に困難な制御を実現するＷｅｂアプリケーションのプログラムを容易に開発することができる。
【０１４３】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【０１４４】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【０１４５】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【０１４６】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４７】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４８】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１４９】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【０１５０】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１５１】
１０１  プログラム開発装置
１０２  プログラム開発サーバ
１０３  データベースサーバ
１０４  アプリケーションクライアント
１０５  アプリケーションサーバ
２０１  ＣＰＵ
２０２  ＲＡＭ
２１１  外部メモリ
【図１】
2018010616.tif 000003
【図２】
2018010616.tif 000004
【図３】
2018010616.tif 000005
【図４】
2018010616.tif 000006
【図５】
2018010616.tif 000007
【図６】
2018010616.tif 000008
【図７】
2018010616.tif 000009
【図８】
2018010616.tif 000010
【図９】
2018010616.tif 000011
【図１０】
2018010616.tif 000012
【図１１】
2018010616.tif 000013
【図１２】
2018010616.tif 000014
【図１３】
2018010616.tif 000015
【図１４】
2018010616.tif 000016
【図１５】
2018010616.tif 000017
【図１６】
2018010616.tif 000018
【図１７】
2018010616.tif 000019
【図１８】
2018010616.tif 000020
【図１９】
2018010616.tif 000021
【図２０】
2018010616.tif 000022
【図２１】
2018010616.tif 000023
【図２２】
2018010616.tif 000024
【手続補正書】
【提出日】平成29年11月24日(2017.11.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
Ｗｅｂシステムで実行するプログラムを生成する情報処理装置であって、
前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定手段と、
前記設定手段により設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定手段と、
前記特定手段により特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムを生成する生成手段とを備え、
前記生成手段は、指定の前記オブジェクトに対応する記憶タイミングであって、状態変更されたオブジェクトの表示状態の情報の記憶タイミングで、前記クライアント装置のストレージへ表示状態の情報を記憶する制御情報を生成することを特徴とする情報処理装置。
【請求項２】
前記生成手段は、クライアント装置において前記画面でオブジェクトを表示する場合に、前記ストレージに表示状態の情報が記憶されているか否かを判定し、ストレージに表示状態の情報が記憶されていると判定された場合に、当該表示状態の情報を用いて、前記オブジェクトの表示状態を変更制御する制御情報を生成することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記オブジェクトを配置する配置手段と、
前記配置したオブジェクトに対して、データモデルを設定するデータモデル設定手段と、
前記データモデル設定手段により設定されたデータモデルの項目名を含む定義と、前記オブジェクトに対応する定義とを生成する定義生成手段と
を更に備えることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記状態変更されたオブジェクトの表示状態の情報の記憶タイミングを、前記オブジェクトを示す定義に設定するタイミング設定手段を更に備え、
前記生成手段は、前記タイミング設定手段で設定された記憶タイミングで前記クライアント装置のストレージへ表示状態の情報を記憶する制御情報を生成することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記オブジェクトを制御するオブジェクト制御部品を記憶する記憶手段を更に備え、
前記生成手段は、前記特定手段により前記状態変更が可能なオブジェクトが特定された場合に、前記オブジェクト制御部品を呼び出す制御情報を含め、
前記オブジェクト制御部品によりオブジェクトが変更されたことによる表示状態の情報を、前記オブジェクト制御部品から取得して、前記オブジェクトの再表示時に読み出し可能に前記ストレージに記憶する制御情報を生成することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記オブジェクトはデータグリッドであり、前記表示状態の情報は当該データグリッドのスタイル情報であることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
Ｗｅｂシステムで実行するプログラムを生成する情報処理装置の処理方法であって、
前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定ステップと、
前記設定ステップにより設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定ステップと、
前記特定ステップにより特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムを生成する生成ステップとを含み、
前記生成ステップは、指定の前記オブジェクトに対応する記憶タイミングであって、状態変更されたオブジェクトの表示状態の情報の記憶タイミングで、前記クライアント装置のストレージへ表示状態の情報を記憶する制御情報を生成することを特徴とする処理方法。
【請求項８】
Ｗｅｂシステムで実行するプログラムデータを生成する情報処理装置のプログラムであって、
前記情報処理装置を、
前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定手段と、
前記設定手段により設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定手段と、
前記特定手段により特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムデータを生成する生成手段と
として機能させ、
前記生成手段は、指定の前記オブジェクトに対応する記憶タイミングであって、状態変更されたオブジェクトの表示状態の情報の記憶タイミングで、前記クライアント装置のストレージへ表示状態の情報を記憶する制御情報を生成することを特徴とするプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
そこで、本発明の目的は、指定の記憶タイミングでクライアント装置のストレージへ表示状態の情報を記憶させ、Ｗｅｂシステムで用いる画面を表示する際に、変更された状態で再度オブジェクト表示できるＷｅｂシステムで実行するプログラムを容易に開発する仕組みを提供することである。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の目的を達成するためのＷｅｂシステムで実行するプログラムを生成する情報処理装置であって、前記Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義を設定する設定手段と、前記設定手段により設定された入出力定義であって、クライアント装置で表示した画面で状態変更が可能なオブジェクトを示す定義を特定する特定手段と、前記特定手段により特定された前記状態変更が可能なオブジェクトを示す定義に対応するオブジェクトであってクライアント装置で表示した画面のオブジェクトで変更された表示状態の情報を取得し、前記クライアント装置のストレージへ当該表示状態の情報を記憶し、前記オブジェクトの再表示時に前記記憶された表示状態の情報を用いてオブジェクト表示させる制御情報を含むプログラムを生成する生成手段とを備え、前記生成手段は、指定の前記オブジェクトに対応する記憶タイミングであって、状態変更されたオブジェクトの表示状態の情報の記憶タイミングで、前記クライアント装置のストレージへ表示状態の情報を記憶する制御情報を生成ることを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明によれば、指定の記憶タイミングでクライアント装置のストレージへ表示状態の情報を記憶させ、Ｗｅｂシステムで用いる画面を表示する際に、変更された状態で再度オブジェクト表示できるＷｅｂシステムで実行するプログラムを容易に開発することができる。