(57)【要約】【課題】ケースツール等で自動生成された画面プログラムを変更して、ユーザが望む見栄えの良い画面と自動生成された動作ロジックの両方を容易に享受可能な仕組を提供すること。【解決手段】画面雛形生成部１０８は、画面プログラム１１２内から画面レイアウト情報を抽出してレイアウト雛形ファイル１１３を生成する。また、ユーザは、ＨＴＭＬエディタ等でレイアウト雛形ファイル１１３内の画面表示項目をレイアウト変更してレイアウトＨＴＭＬファイル１１４を作成しておく。画面マージ処理部１０９は、レイアウトＨＴＭＬファイル１１４と画面プログラム１１２内のプログラム情報とからなるレイアウト済画面プログラム１１５を生成する構成を特徴とする。【選択図】図１
2007265011.tif 000002
【特許請求の範囲】
【請求項１】
プログラム実行時に表示される複数の画面表示項目のレイアウトを定義する画面レイアウト情報と前記画面レイアウト情報以外の実行時の動作ロジックを定義したプログラム情報から構成される画面プログラムを取得する第１の取得ステップと、
前記画面プログラム内から前記画面レイアウト情報を抽出してレイアウト雛形ファイルを生成する画面雛形生成ステップと、
前記レイアウト雛形ファイル内の画面表示項目がレイアウト変更された状態のレイアウト変更ファイルを取得する第２の取得ステップと、
前記レイアウト変更ファイルと、前記画面プログラム内の前記プログラム情報とからなるレイアウト済画面プログラムを生成する画面マージ処理ステップと、
を有することを特徴とする画面プログラムレイアウト変更方法。
【請求項２】
前記画面プログラムを生成するプログラム生成ステップを有することを特徴とする請求項１記載の画面プログラムレイアウト変更方法。
【請求項３】
前記画面レイアウト情報は、前記複数の画面表示項目をそれぞれ定義する複数の項目情報と前記複数の項目情報をそれぞれ特定する複数の識別子を含むものであり、
前記画面雛形生成ステップは、前記レイアウト雛形ファイルを生成する際に、前記画面プログラム内から抽出した前記画面レイアウト情報内の前記各識別子で特定される各項目情報を、ダミー項目情報に置き換える、
ことを特徴とする請求項１又は２に記載の画面プログラムレイアウト変更方法。
【請求項４】
前記画面レイアウト情報は、前記複数の画面表示項目をそれぞれ定義する複数の項目情報と前記複数の項目情報をそれぞれ特定する複数の識別子を含むものであり、
前記画面マージ処理ステップは、前記レイアウト変更ファイル内の前記各識別子で特定される各項目情報を、前記画面プログラム内の前記各識別子で特定される各項目情報にそれぞれ置き換える、ことを特徴とする請求項１又は２に記載の画面プログラムレイアウト変更方法。
【請求項５】
前記レイアウト変更ファイルは、前記レイアウト雛形ファイルを変更することにより作成されたものであることを特徴とする請求項１乃至４のいずれか１項に記載の画面プログラムレイアウト変更方法。
【請求項６】
前記レイアウト雛形ファイル及び前記レイアウト変更ファイルは、画面レイアウトを表示可能なデータ形式であることを特徴とする請求項１乃至５のいずれか１項に記載の画面プログラムレイアウト変更方法。
【請求項７】
プログラム実行時に表示される複数の画面表示項目のレイアウトを定義する画面レイアウト情報と前記画面レイアウト情報以外の実行時の動作ロジックを定義したプログラム情報から構成される画面プログラムを取得する第１の取得手段と、
前記画面プログラム内から前記画面レイアウト情報を抽出してレイアウト雛形ファイルを生成する画面雛形生成手段と、
前記レイアウト雛形ファイル内の画面表示項目がレイアウト変更された状態のレイアウト変更ファイルを取得する第２の取得手段と、
前記レイアウト変更ファイルと、前記画面プログラム内の前記プログラム情報とからなるレイアウト済画面プログラムを生成する画面マージ処理手段と、
を有することを特徴とする情報処理装置。
【請求項８】
請求項１乃至６のいずれか１項に記載された画面プログラムレイアウト変更方法をコンピュータに実行させるためのプログラム。
【請求項９】
請求項１乃至６のいずれか１項に記載された画面プログラムレイアウト変更方法をコンピュータに実行させるためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションシステムを構成する画面プログラムを自動生成するケースツール環境における画面プログラムのレイアウト変更方法に関する。
【背景技術】
【０００２】
ユーザに定義情報を入力させ、その情報を元にプログラムの自動生成を行うツールがある。これは利用者がプログラミングの知識がなくても、比較的容易な形で業務の情報を入力するだけで、アプリケーションプログラムを作成することができるようになっている。
【０００３】
しかし、一般に自動生成されたアプリケーションの画面は、自動で画面項目のレイアウト位置が決まったり、用意した画面パターンを使用しなければならなかったりと、ユーザの多様な画面レイアウト要求を十分に満たしているとはいえないものである。
【０００４】
その対応として、例えば、自動生成された最終成果物の画面関連プログラム（ＪＳＰなど）を編集することも考えられるが、自動生成されたプログラムは一般に冗長で読みにくく、さらに画面表示に関連のないデータが大量に切り離せない形で埋め込まれており、直接手動でレイアウト変更するのは現実的でない。このプログラムをＨＴＭＬエディタで表示しても、画面表示に関連のないデータがあるゆえ、正しく認識・表示することは出来ない。
【０００５】
この問題を解決するため、アプリケーションの生成時に画面をユーザが自由にカスタマイズする技術が提案されている。特許文献１では、アプリケーションの生成時に初期生成画面イメージを専用プログラム上に出力し、その初期生成画面イメージをユーザが専用プログラム上でカスタマイズすることで要求どおりの画面を作成する方法が提案されている。
【特許文献１】特開２００４−１５７９２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では、上記初期生成画面イメージの変更は、必ず専用のプログラムを介して行う必要があり、その専用プログラムの習熟に時間がかかるという問題点を有している。
【０００７】
また、特に（分業化された）Ｗｅｂ系のシステムの場合、画面作成専任のＨＴＭＬデザイナが画面の変更にあたることが多く、デザイナにはそれぞれ「使い慣れた」「ＨＴＭＬに特化した高機能な」エディタがある。上記初期生成画面イメージの変更に、このような「エディタ」を使用できないことは、作業効率だけでなく、作成画面の品質や機能（の高さ、量）に影響を及ぼしてしまう。
【０００８】
さらに、上記特許文献１では、アプリケーションを作成した後に、生成された画面を変更するという手順がない。なお、近年、（使用感や見栄えを確かめるため）画面だけを先に（上述エディタで一から）作成したり、（工数削減や統一感の為）既にある画面を再利用したりする開発手順も求められている。しかしながら、上記特許文献１の方法では、自動生成の過程にユーザが作成した画面を組み込むことができない。
【０００９】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、一度自動生成された画面プログラム内の「画面レイアウト部分」を分離し、該分離した「画面レイアウト部分」を、ユーザが日頃使い慣れたエディタ等を用いてカスタマイズし、該カスタマイズした「画面レイアウト部分」に、再度、分離前の画面プログラム内の画面以外の「プログラム部分」を合体させることにより、自動生成された画面プログラムを変更して、ユーザが望む見栄えの良い画面と自動生成された動作ロジックの両方を容易に享受可能な仕組を提供することである。
【課題を解決するための手段】
【００１０】
本発明は、プログラム実行時に表示される複数の画面表示項目のレイアウトを定義する画面レイアウト情報と前記画面レイアウト情報以外の実行時の動作を定義したプログラム情報から構成される画面プログラムを取得する第１の取得ステップと、前記画面プログラムから前記画面レイアウト情報を抽出してレイアウト雛形ファイルを生成する画面雛形生成ステップと、前記レイアウト雛形ファイルの画面表示項目がレイアウト変更された状態のレイアウト変更ファイルを取得する第２の取得ステップと、前記レイアウト変更ファイルと、前記画面プログラムの前記プログラム情報とを合体させたレイアウト済画面プログラムを生成する画面マージ処理ステップと、を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ケースツール等で自動生成されたＷｅｂアプリケーションプログラム等の画面プログラムの画面レイアウトだけを抽出したものを画面表示して確認しながら所望の画面レイアウトに変更可能とし、変更後は、再度、元のプログラム動作が可能な画面プログラムに再生成することができる。
【００１２】
従って、ケースツール等で自動生成されるプログラムの実行時の画面レイアウト変更を、効率の良く、且つ、プログラムの動作に支障をきたすことなく行うことができる等の効果を奏する。
【発明を実施するための最良の形態】
【００１３】
〔第１実施形態〕
本発明は、アプリケーションシステムを構成するプログラムや画面等のソフトウェアを自動生成するケースツール環境において、プログラムを自動生成する技術分野に関するものである。このため、ケースツール環境の説明は、本発明と直接関係のある部分についてのみ言及する。
【００１４】
以下、図面を用いて詳細に説明する。
【００１５】
図１は、本発明の一実施形態を示す情報処理装置（プログラム生成装置）の構成を示すブロック図である。
【００１６】
図１において、１０３はプログラム生成装置としてのコンピュータである。１０１はキーボード，ポインティングデバイス（マウス等）の入力装置である。１０２はＣＲＴディスプレイや液晶ディスプレイ等の表示装置である。１０４はハードディスクドライブ（ＨＤＤ）等の外部記憶装置である。
【００１７】
図１に示すように、ユーザは入力装置１０１より、表示装置１０２に表示された画面を通じてコンピュータ１０３に対してプログラム自動生成命令を発行すると、コンピュータ１０３は、全体制御部１０５で自動生成処理を行う。以下、詳細に説明する。
【００１８】
まず、プログラム自動生成命令を受けた画面制御部１０６は、プログラム生成部１０７に処理を委譲する。プログラム生成部１０７は、予め作成されて外部記憶装置（ＨＤＤ）１０４に格納される画面プログラムテンプレート１１１（後述する図５）を元に、予め入力されて外部記憶装置１０４に格納されるユーザ定義情報１１０（後述する図４）を適用し、画面プログラム１１２（後述する図６）を生成し、外部記憶装置１０４に格納する。
【００１９】
この後、ユーザが入力装置１０１より表示装置１０２に表示された画面を通じてコンピュータ１０３に対して画面雛形生成命令を発行すると、コンピュータ１０３は、全体制御部１０５で画面雛形生成処理を行う。以下、詳細に説明する。
【００２０】
まず、画面雛形生成命令を受けた画面制御部１０６は、画面雛形生成部１０８に処理を委譲する。画面雛形生成部１０８は、画面プログラム１１２を元に、そこから「画面レイアウト情報のみ」を抽出したレイアウト雛形ファイル１１３（後述する図８）を出力し、外部記憶装置１０４に格納する。
【００２１】
この後、ユーザは、レイアウト雛形ファイル１１３を適宜カスタマイズし、レイアウトＨＴＭＬファイル１１４（後述する図１０）を作成し、外部記憶装置１０４に格納する。もしくは、予め用意したＨＴＭＬファイルを一定の書式にしたがい編集することで、それをレイアウトＨＴＭＬファイル１１４として外部記憶装置１０４に格納することもできる（後述する図１５）。
【００２２】
次に、ユーザが入力装置1０１より表示装置１０２に表示された画面を通じてコンピュータ１０３に対して画面マージ処理命令を発行すると、コンピュータ１０３は、全体制御部１０５で画面マージ処理を行う。以下、詳細に説明する。
【００２３】
まず、画面マージ処理命令を受けた画面制御部１０６は、画面マージ処理部１０９に処理を委譲する。画面マージ処理部１０９は、画面プログラム１１２にあるレイアウト以外の情報と、レイアウトＨＴＭＬファイル１１４にある画面レイアウト情報をマージして、レイアウト済画面プログラム１１５（後述する図１３）を出力し、外部記憶装置１０４に格納する。
【００２４】
次に、図２を参照して、図１に示したコンピュータ１０３のハードウェア構成について説明する。
【００２５】
図２は、図１のコンピュータ１０３のハードウェア構成を示すブロック図であり、図１と同一のものには同一の符号を付してある。
【００２６】
図２において、２０１はＣＰＵ（中央演算処理装置）２０１であり、ＲＯＭ２０３或いは外部記憶装置１０４に記憶されている制御プログラムに基づいて、システムバスに接続されている各種デバイスとのアクセスを総括的に制御する構成となっている。
【００２７】
システムバスには、ＣＰＵ２０１の主メモリ、ワークエリア等として機能するＲＡＭ（ランダム・アクセス・メモリ）２０２が接続されている。ＲＯＭ２０３或いは外部記憶装置１０４には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Basic Input ／ Output System）やオペレーティングシステム（以下、「ＯＳ」という。）プログラム、コンピュータ１０３が実行する処理を実現するために必要な各種プログラム等が記憶されている。
【００２８】
ＣＰＵ２０１は、処理の実行に際して必要な各種プログラム等をＲＡＭ２０２にロードして、当該プログラム等を実行することで図１に示した全体制御部１０５の機能及び各種動作を実現するものである。
【００２９】
外部記憶装置１０４は、上述した各種プログラムとして、図示しないブートプログラム、各種アプリケーションプログラム、フォントデータ、ユーザーファイル等を記憶する。
【００３０】
ＣＰＵ２０１は、例えば、ＲＡＭ２０２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、表示装置１０２上でＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ２０１は、表示装置１０２上のマウスカーソル(不図示)等で指示されたコマンドに基づいて、登録された種々なウィンドウを開き、種々のデータ処理を実行する。
【００３１】
以下、図３〜図６を参照して、図１で示したコンピュータ１０３のプログラム生成部１０７で行われるプログラム生成処理について説明する。
【００３２】
図３は、本発明における第１の制御処理手順の一例を示すフローチャートであり、図１で示したコンピュータ１０３のプログラム生成部１０７で行われるプログラム生成処理に対応する。なお、このフローチャートの処理は、図２に示したＣＰＵ２０１が外部記憶装置１０４に格納されたプログラムをＲＡＭ２０２に読み出して実行するプログラム生成部１０７により実現される。なお、図中、Ｓ３０１〜Ｓ３０３は各ステップを示す。
【００３３】
まず、入力装置１０１から入力されるプログラム自動生成命令の指示を受けると、全体制御部１０５内の画面制御部１０６は、プログラム生成部１０７に処理を委譲し、ステップＳ３０１に処理を進める。
【００３４】
ステップＳ３０１では、プログラム生成部１０７は、まず外部記憶装置１０４からユーザ定義情報１１０（図４）を読み込み、これをＲＡＭ２０２に保管する。
【００３５】
次に、ステップＳ３０２において、プログラム生成部１０７は、生成するプログラムの元となる画面プログラムテンプレート１１１を外部記憶装置１０４から読み込み、これをＲＡＭ２０２に保管する。
【００３６】
画面プログラムテンプレートは、画面プログラムの原型であり、これのみでは動作しない。画面項目の仕様を定義したユーザ定義情報を画面プログラムテンプレートに当てはめ、画面プログラムテンプレートを構成する画面レイアウト情報及び画面レイアウト情報以外のプログラム動作に関するプログラム情報を実体のある仕様に変換して動作可能な画面プログラムを生成する。詳しくは後述する。
【００３７】
次に、ステップＳ３０３において、プログラム生成部１０７は、ステップＳ３０１で取得したユーザ定義情報１１０を、ステップＳ３０２で取得した画面プログラムテンプレート１１１の所定の変数部分に、組み込むことによって、画面プログラム（１１２）を生成し、外部記憶装置１０４に格納する。以下、図４〜図６を用いて具体的に説明する。
【００３８】
図４は、図１に示したユーザ定義情報１１０の一例を示す図である。なお、ここでは一例としてログイン画面を定義したユーザ定義情報を示してある。
【００３９】
図４に示すように、ユーザ定義情報１１０は、「IO_CODE」４０１、「IOITEM_CODE」４０２、「IOITEM_NAME」４０３、「ITEM_TYPE」４０４で構成される。
【００４０】
「IO_CODE」４０１は、画面コードを示す。また、「IOITEM_CODE」４０２は、画面項目コードを示す。さらに、「IOITEM_NAME」４０３は、画面項目表示名を示す。また、「ITEM_TYPE」４０４は、画面項目の部品タイプを示す。具体的には、「ITEM_TYPE」４０４が「Ｉ」の場合は、インプット部品を示し、「Ａ」の場合は、アクション（ボタン）部品を示す。
【００４１】
図５は、図１に示した画面プログラムテンプレート１１１の一例を示す図である。
【００４２】
画面プログラムテンプレート１１１は、レイアウト関連の情報とアプリケーションロジックの情報が、明確に区別できる構成となっている。具体的に、アプリケーションロジック情報は、レイアウト情報が始まる＜html＞タグ前の「ロジック情報（前）５０４」と、レイアウト情報が終わる＜/html＞タグ以降の「ロジック情報（後）５０５」と、「部品コメント（開始）５０２」「部品コメント（終了）５０３」に囲まれている「画面部品情報５０１」の部分である。
【００４３】
「部品コメント（開始）５０２」、「部品コメント（終了）５０３」は、画面表示の項目情報を区分し、識別するための識別子としての機能を果たす。
【００４４】
アプリケーションロジック情報には、実際に動作するプログラムが記述してあるが、この記述があるとHTMLエディタでファイルを正しく表示・編集することが出来ない。
【００４５】
なお、本実施形態では、ＨＴＭＬを使用した事例で示すが、他のマークアップ言語や、スクリプト言語であってもかまわない。
【００４６】
図６は、図１に示した画面プログラム１１２の一例を示す図であり、図２のステップＳ３０３においてユーザ定義情報１１０（図４）及び画面プログラムテンプレート１１１（図５）に基づいて生成されたものに対応する。
【００４７】
図５の画面プログラムテンプレート１１１は、プログラムの下敷き（テンプレート）としての役割を持ち、具体的なデータは変数化されている。この変数化されている場所に、図４のユーザ定義情報１１０がはめ込まれ、図６の画面プログラム１１２が生成される。以下、具体的に説明する。
【００４８】
図５の５１０に示す「${ioitem.name}」の部分に、図４の「IOITEM_CODE」４０２列のデータ「USER_ID」が組み込まれ、図６の６１０に示すようにソースが生成される。例えば、図５の画面部品情報５０１中の「name="${ioitem.code}"」の部分は、図４の「IOITEM_CODE」４０２列のデータ「USER_ID」が組み込まれ、図６の画面部品情報６０１「name="USER_ID"」のようにソースが生成される。
【００４９】
また「部品コメント（開始）５０２」，「部品コメント（終了）５０３」の「＜!--${ioitem.code}.LABEL{--＞」，「＜!--${ioitem.code}.LABEL」--＞」にも同様に「USER_ID」が埋め込まれ「部品コメント（開始）６０２」「部品コメント（終了）６０３」のように「＜!--USER_ID.LABEL{--＞」，「＜!--USER_ID.LABEL」--＞」になる。これが後述する「識別情報」となる。
【００５０】
また、図５の５１１に示す「${ioitem.name}」の部分に、図４の「IOITEM_NAME」４０３列のデータ「ユーザID」が組み込まれ、図６の６１１に示すようにソースが生成される。
【００５１】
さらに、図５の５１２に示す「${ioitem.code}」の部分に、図４の「IOITEM_CODE」４０２列のデータ「PASSWORD」が組み込まれ、図６の６１２に示すようにソースが生成される。
【００５２】
また、図５の５１３に示す「${ioitem.name}」の部分に、図４の「IOITEM_NAME」４０３列のデータ「パスワード」が組み込まれ、図６の６１３に示すようにソースが生成される。
【００５３】
さらに、図５の５１４に示す「${ioitem.code}」の部分に、図４の「IOITEM_CODE」４０２列のデータ「LOGIN」が組み込まれ、図６の６１４に示すようにソースが生成される。
【００５４】
また、図５の５１５に示す「${ioitem.name}」の部分に、図４の「IOITEM_NAME」４０３列のデータ「ログイン」が組み込まれ、図６の６１５に示すようにソースが生成される。
【００５５】
以下、図７〜図９を参照して、図１で示したコンピュータ１０３の画面雛形生成部１０８で行われるレイアウト雛形生成処理について説明する。
【００５６】
図７は、本発明における第２の制御処理手順の一例を示すフローチャートであり、図１で示したコンピュータ１０３の画面雛形生成部１０８で行われるレイアウト雛形生成処理に対応する。なお、このフローチャートの処理は、図２に示したＣＰＵ２０１が外部記憶装置１０４に格納されたプログラムをＲＡＭ２０２に読み出して実行する画面雛形生成部１０８により実現される。なお、図中、Ｓ７０１〜Ｓ７０３は各ステップを示す。
【００５７】
まず、入力装置１０１から入力される画面雛形生成命令の指示を受けると、全体制御部１０５内の画面制御部１０６は、画面雛形生成部１０８に処理を委譲し、ステップＳ７０１に処理を進める。
【００５８】
ステップＳ７０１では、画面雛形生成部１０８は、まず外部記憶装置１０４から画面プログラム１１２（図６）を読み込み、これをＲＡＭ２０２に保管する。
【００５９】
次に、ステップＳ７０２において、画面雛形生成部１０８は、ステップＳ７０１で取得した画面プログラム１１２から画面レイアウト情報のみ抽出する。詳細には、画面雛形生成部１０８は、画面プログラム１１２から「ロジック情報（前）６０５」，「ロジック情報（後）６０６」以外をそのまま抽出する（即ち、「部品コメント（開始）６０２」，「部品コメント（終了）６０３」は含む）。そして、抽出した情報内の「画面部品情報６０１」，「画面部品情報６０４」の部分を、表示便宜情報（図８の８０１，８０２）に差し替えて、これをＲＡＭ２０２に保管する。
【００６０】
なお、上述の「表示便宜情報」とは、レイアウト雛形ファイル１１３をエディタやＷｅｂブラウザで表示した際、画面イメージがマージ処理後の完成品（レイアウト済画面プログラム１１５）実行時と同等となるような（見た目同じで実際に動作しない）ダミーの部品情報（ダミー項目情報）のことである。これは、図６の６０１に示すような「画面部品情報」の読み込み時、部品種別を識別できるキーワードを見つけて、ダミー部品に差し替えるという方法を取っている。
【００６１】
例えば、図６の画面部品情報６０１中のように「input type="text"」とあれば、図８の８０１に示すようにダミーのテキストボックスと、図６の画面部品情報６０４中のように「input type="button"」とあれば、図８の８０２に示すようにダミーのボタンと差し替えるようにしている。ただし、画面部品情報内に表示に関係のある情報が「画面部品情報」内にあった場合は、これを取得し、その情報を上述の「ダミー部品」に埋め込んで、「表示便宜情報」とするように構成する。例えば、図６の画面部品情報６０４中の「value="ログイン"」という情報は、画面表示時のボタン名となり、上述の画面部品情報内に表示に関係のある情報に相当する。
【００６２】
次に、ステップＳ７０３において、画面雛形生成部１０８は、ステップＳ７０２で抽出したレイアウト情報をレイアウト雛形ファイル１１３（図８）として出力し、外部記憶装置１０４に記憶する。そして、処理を終了する。
【００６３】
図８は、図１に示したレイアウト雛形ファイル１１３の一例を示す図であり、図７のステップＳ７０３で出力される。なお、図６と同一のものには同一の符号を付してある。
【００６４】
このレイアウト雛形ファイル１１３は、入力である図６に示された画面プログラム１１２からレイアウト部分のみ抽出されている。なお、後の画面マージ処理部１０９でマージ場所情報として使用するため「部品コメント（開始）６０２」，「部品コメント（終了）６０３」も含めて抽出されている。
【００６５】
また、部品コメント（開始）と部品コメント（終了）の間には、表示用ダミー部品である表示便宜情報８０１，８０２が出力されている。
【００６６】
また、例えば、図６の画面部品情報６０４中のように、画面表示時ボタン名となる「value="ログイン"」という情報があった場合、表示に関係のある情報として、図８に示すように表示便宜情報８０２に反映される。
【００６７】
図９は、図８に示したレイアウト雛形ファイル１１３をＨＴＭＬエディタ等でプレビューした画面の一例を示す図である。
【００６８】
図８に示したレイアウト雛形ファイル１１３には、表示便宜情報８０１，８０２が埋め込まれているため、完成画面と同等の画面表示が得られている。
【００６９】
ここで、ユーザは生成されたレイアウト雛形ファイル１１３を、ＨＴＭＬエディタ等で、自由にカスタマイズし、画面表示して変更されたレイアウトを確認できる。このようなカスタマイズ作業により、レイアウト雛形ファイル１１３から変更されたレイアウトＨＴＭＬファイル１１４を作成する。
【００７０】
ユーザがレイアウト雛型ファイルを画面上でレイアウト変更したものが、「レイアウト変更ファイル」となる。この場合、ＨＴＭＬとは限らない他のマークアップ言語やスクリプト言語、構造化言語も適用可能である。本実施例では、ＨＴＭＬを使用しているので、「レイアウト変更ファイル」を「レイアウトＨＴＭＬファイル」としているが、これは「レイアウト変更ファイル」の一例である。
【００７１】
なお、レイアウト雛形ファイル１１３は、通常のＨＴＭＬファイルなので、任意のＨＴＭＬエディタを使用することが可能である。
【００７２】
図１０は、図１に示したレイアウトＨＴＭＬファイル１１４の一例を示す図であり、図８に示したレイアウト雛形ファイル１１３をカスタマイズして作成されたものに対応する。
【００７３】
図１０に示す例では、１００１に示すように、図８に示したレイアウト雛形ファイル１１３で最下部にあった「ログインボタン」が先頭に移動されている。また、表を指定するタグ「＜table＞」「＜/table＞」内の、行を指定するタグ「＜tr＞」「＜/tr＞」が１００２に示すように変更され、その結果、図９に示したように縦に並んでいた入力項目（ユーザＩＤ，パスワード）が図１１に示すように横１列に表示されるように変更されている。なお、このように、変更作成したレイアウトＨＴＭＬファイル１１４は、外部記憶装置１０４に格納しておくものとする。
【００７４】
図１１は、図１０に示したレイアウトＨＴＭＬファイル１１４をＨＴＭＬエディタ等でプレビューした画面の一例を示す図である。
【００７５】
以下、図１２〜図１４を参照して、図１で示したコンピュータ１０３の画面マージ処理部１０９で行われる画像マージン処理について説明する。
【００７６】
図１２は、本発明における第３の制御処理手順の一例を示すフローチャートであり、図１で示したコンピュータ１０３の画面マージ処理部１０９で行われる画像マージン処理に対応する。なお、このフローチャートの処理は、図２に示したＣＰＵ２０１が外部記憶装置１０４に格納されたプログラムをＲＡＭ２０２に読み出して実行する画面マージ処理部１０９により実現される。なお、図中、Ｓ１２０１〜Ｓ１２０４は各ステップを示す。
【００７７】
まず、入力装置１０１から入力される画像マージン処理命令の指示を受けると、全体制御部１０５内の画面制御部１０６は、画面マージ処理部１０９に処理を委譲し、ステップＳ１２０１に処理を進める。
【００７８】
ステップＳ１２０１では、画面マージ処理部１０９は、まず外部記憶装置１０４から画面プログラム１１２（図６）を読み込み、該読み込んだ画面プログラム１１２内の「ロジック情報（前）６０５」，「ロジック情報（後）６０６」，「画面部品情報（６０１，６０４等）」部分を抽出し、これをＲＡＭ２０２に保管する。
【００７９】
次に、ステップＳ１２０２において、画面マージ処理部１０９は、外部記憶装置１０４からレイアウトＨＴＭＬファイル１１４（図１０）を読み込み、これをＲＡＭ２０２に保管する。
【００８０】
次に、ステップＳ１２０３において、画面マージ処理部１０９は、ステップＳ１２０１で抽出した「ロジック情報（前）６０５」，「ロジック情報（後）６０６」，「画面部品情報（６０１，６０４等）」部分の情報と、ステップＳ１２０２で読み込んだレイアウトＨＴＭＬファイル１１４をマージ処理する。具体的には、ステップＳ１２０２で読み込んだレイアウトＨＴＭＬファイル１１４の部品コメント（例えば「＜--USER_ID.ITEM{--＞」「＜--USER_ID.ITEM」--＞」）で囲まれた部分を、図１３に示すように、ステップＳ１２０１で抽出した「画面部品情報（６０１等）」に置き換える。その際、部品コメントにある識別子（画面項目コード４０２（例えば、「USER_ID.ITEM」））をキーにして置き換える。その後、図１３に示すように、画面部品情報を置き換えたレイアウトＨＴＭＬファイル１１４全体の先頭，末尾に「ロジック情報（前）６０５」，「ロジック情報（後）６０６」を挿入する。
【００８１】
最後にステップＳ１２０４において、ステップＳ１２０３でマージ処理した情報を、レイアウト済画面プログラム１１５（図１３）として出力し、外部記憶装置１０４に格納する。そして処理を終了する。
【００８２】
図１３は、図１に示したレイアウト済画面プログラム１１５の一例を示す図であり、図１２のステップＳ１２０４で出力されたものに対応する。なお、図６と同一のものには同一の符号を付してある。
【００８３】
レイアウトＨＴＭＬファイル１１４に、「ロジック情報（前）６０５」「ロジック情報（後）６０６」が挿入され、部品コメント間の情報が「画面部品情報（６０４等）」に置き換わっている。
【００８４】
この処理により、ユーザ定義の画面レイアウト情報（レイアウトＨＴＭＬファイル１１４）に、アプリケーションの動作ロジック（「ロジック情報（前）６０５」，「ロジック情報（後）６０６」，「画面部品情報（６０１，６０４等）」部分）が注入され、実際に動作する画面プログラムに復元される。
【００８５】
図１４は、図１３に示したレイアウト済画面プログラム１１５を実行した際の表示の一例を示す図である。
【００８６】
画面の見た目は、図１１に示したレイアウトＨＴＭＬファイル１１４の表示例と変らないが、実際に実行できるＷＥＢアプリケーションとなっている。
【００８７】
以上説明したように、本実施形態によれば、ケースツール等で作成されたＷＥＢアプリケーションプログラムの画面レイアウトだけを抽出したものを画面表示して、望みの画面レイアウトに変更でき、変更後は、再度、元のプログラム動作をするＷＥＢアプリケーションプログラムに再生成することができる。この結果、効率の良い画面レイアウト変更が可能となる。
【００８８】
〔第２実施形態〕
上記第１実施形態では、レイアウトＨＴＭＬファイル１１４は、画面雛形生成部１０８により生成されたレイアウト雛形ファイル１１３をユーザが編集して生成する場合について説明した。本実施形態では、ユーザが用意したＨＴＭＬファイルに「部品コメント」を挿入したものを、レイアウトＨＴＭＬファイル１１４として扱うようにする。以下、図１５〜図１７を参照して、具体的説明する。
【００８９】
図１５は、ユーザが用意したＨＴＭＬファイルの一例を示す図である。
【００９０】
このユーザが容易したＨＴＭＬファイルは、例えば、旧プログラムで使用されていた画面のＨＴＭＬファイルであっても、ＨＴＭＬデザイナ等が一般のＨＴＭＬエディタ等で作成したＨＴＭＬファイル等であってもよい。
【００９１】
図１６は、図１５に示したＨＴＭＬファイルをプレビューした画面の一例を示す図である。
【００９２】
図１７は、図１５に示したユーザが用意したＨＴＭＬファイルに「部品コメント」を挿入してレイアウトＨＴＭＬファイル化したファイルの一例を示す図である。
【００９３】
図１７のファイルには、１７０１〜１７０６に示すように、「部品コメント」が挿入されている。
【００９４】
なお、このファイルを外部記憶装置１０４に格納し、図１に示したレイアウトＨＴＭＬファイル１１４の代わりとして、画面マージ処理部１０９のインプットに使用することができる。即ち、図１２に示したマージ処理を、図１７のＨＴＭＬファイルと図１に示した画面プログラムに基づいて実行可能である。
【００９５】
以上示したように、本実施形態によれば、旧プログラムで使用されていたなじみのある画面レイアウトや、ＨＴＭＬデザイナ等が作成したデザイン性の高い画面レイアウトを、自動生成された画面プログラムにマージして、使用することができる。
【００９６】
従って、ユーザは所望の見栄えの良い画面と自動生成された業務ロジックの両方を享受できる等の効果を奏する。
【００９７】
なお、上記各実施形態では、画面のレイアウト情報としてＨＴＭＬで記述された情報を用いる例について説明したが、画面レイアウト情報を、ＨＴＭＬでなく他の構造化言語等で記述するように構成してもよい。
【００９８】
以上説明したように、本発明では、プログラム生成部１０７により、ユーザ定義情報１１０，画面プログラムテンプレート１１１に基づいて「画面部品情報」を埋め込んだ画面プログラム１１２を生成する。なお、この画面プログラム１１２は、ロジック等のプログラム動作に関係する定義領域と画面レイアウトを構成する定義領域とを識別可能な構成となっている。本実施形態では、「＜html＞タグ」「＜/html＞タグ」により識別しているが、プログラム動作に関係する定義領域と画面レイアウトを構成する定義領域とを識別するためのコメントを挿入するように構成してもよい。また、画面プログラム１１２には、画面レイアウトを構成する項目について、当該項目の画面レイアウトに関連する定義領域（画面部品情報）を識別するコメント情報が埋め込まれている。
【００９９】
次に、画面雛形生成部１０８は、画面プログラム１１２から画面のレイアウト部分のみ（ロジック情報５０４，５０５以外の部分）を抽出した画面表示可能な形式のファイルを生成する。さらに、画面雛形生成部１０８は、このファイルから、画面部分以外のプログラム部分を、実際には動作しないダミープログラム部品に置き換え、レイアウト雛形ファイル１１３を生成する。このレイアウト雛形ファイル１１３は、画面表示して確認できるようにプログラム動作部分を抜き取り、ダミーのプログラム部品に置き換えられている。
【０１００】
なお、上記画面プログラム１１２は、上述のようにプログラム生成部１０７により自動生成されてものを前提とするが、図５にしめしたように、ロジック等のプログラム動作に関係する定義領域と画面レイアウトを構成する定義領域とを識別可能な構成であり、且つ、「画面部品情報」を特定する「部品コメント」が挿入された画面プログラムであれば、他の方法で作成されたものであってもよい。
【０１０１】
上述のレイアウト雛形ファイル１１３を使用等して、ユーザの求める画面レイアウトにユーザがカスタマイズしたユーザ作成の画面部分であるレイアウトＨＴＭＬファイル１１４を用意する。
【０１０２】
次に、画面マージ処理部１０９は、用意されたレイアウトＨＴＭＬファイル１１４と、上述の画面プログラム１１２内の画面レイアウト以外のプログラム部分及び画面部品項目とを関連づけてマージし、レイアウト済画面プログラム１１５を生成する。このレイアウト済画面プログラム１１５は、ユーザの求める画面レイアウトであって実際に動作する画面プログラムとなる。
【０１０３】
このように、一度作成された画面プログラム１１２の画面レイアウトのみをユーザがレイアウト変更する場合であっても、画面プログラム１１２の画面レイアウトに関係する部分のみが抽出されるため、ユーザは、一般の画面編集プログラム（ＨＴＭＬエディタ等）を用いて容易に変更作業を行うことができる。
【０１０４】
そして、画面レイアウトの変更が為された後に、その変更された画面に対して、画面プログラム１１２のプログラム部分を関連する個所にマージして（ユーザによる手作業無しでマージして）、実際の画面プログラムを再生成することができる。
【０１０５】
以上示したように、本発明によれば、一度自動生成された画面プログラムの画面部分を分離し、自動生成された画面レイアウト側を、ユーザが日頃使い慣れたエディタ等を用いてカスタマイズし、再度、分離前の画面プログラムの画面以外のプログラム部分と合体させることにより、自動生成された画面プログラムの画面部分をユーザの所望のレイアウトに、ロジックの矛盾なく変更することができる。従って、ユーザは所望の見栄えの良い画面と自動生成されたロジックの両方を享受できる等の効果を奏する。
【０１０６】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１０７】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１０８】
以下、図１８に示すメモリマップを参照して本発明に係る情報処理装置（図１に示したコンピュータ１０３）で読み取り可能なデータ処理プログラムの構成について説明する。
【０１０９】
図１８は、本発明に係る情報処理装置（図１に示したコンピュータ１０３）で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【０１１０】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１１１】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１１２】
本実施形態における図３，図７，図１２に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１１３】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１１４】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１１５】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【０１１６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１７】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１８】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１１９】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１２０】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【０１２１】
【図１】本発明の一実施形態を示す情報処理装置（プログラム生成装置）の構成を示すブロック図である。
【図２】図１のコンピュータのハードウェア構成を示すブロック図である。
【図３】本発明における第１の制御処理手順の一例を示すフローチャートである。
【図４】図１に示したユーザ定義情報１１０の一例を示す図である。
【図５Ａ】図１に示した画面プログラムテンプレートの一例を示す図である。
【図５Ｂ】図１に示した画面プログラムテンプレートの一例を示す図である。
【図６Ａ】図１に示した画面プログラムの一例を示す図である。
【図６Ｂ】図１に示した画面プログラムの一例を示す図である。
【図７】本発明における第２の制御処理手順の一例を示すフローチャートである。
【図８】図１に示したレイアウト雛形ファイルの一例を示す図である。
【図９】図８に示したレイアウト雛形ファイルをＨＴＭＬエディタ等でプレビューした画面の一例を示す図である。
【図１０】図１に示したレイアウトＨＴＭＬファイルの一例を示す図である。
【図１１】図１０に示したレイアウトＨＴＭＬファイルをＨＴＭＬエディタ等でプレビューした画面の一例を示す図である。
【図１２】本発明における第３の制御処理手順の一例を示すフローチャートである。
【図１３Ａ】図１に示したレイアウト済画面プログラムの一例を示す図である。
【図１３Ｂ】図１に示したレイアウト済画面プログラムの一例を示す図である。
【図１４】図１３に示したレイアウト済画面プログラムを実行した際の表示の一例を示す図である。
【図１５】ユーザが用意したＨＴＭＬファイルの一例を示す図である。
【図１６】図１５に示したＨＴＭＬファイルをプレビューした画面の一例を示す図である。
【図１７】図１５に示したユーザが用意したＨＴＭＬファイルに「部品コメント」を挿入してレイアウトＨＴＭＬ化したファイルの一例を示す図である。
【図１８】本発明に係る情報処理装置（図１に示したコンピュータ）で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【符号の説明】
【０１２２】
１０１  入力装置
１０２  表示装置
１０３  コンピュータ
１０４  外部記憶装置
１０５  全体制御部
１０６  画面制御部
１０７  プログラム生成部
１０８  画面雛形生成部
１０９  画面マージ処理部
１１０  ユーザ定義情報
１１１  画面プログラムテンプレート
１１２  画面プログラム
１１３  レイアウト雛形ファイル
１１４  レイアウトＨＴＭＬファイル
１１５  レイアウト済画面プログラム
【図１】
2007265011.tif 000003
【図２】
2007265011.tif 000004
【図３】
2007265011.tif 000005
【図４】
2007265011.tif 000006
【図５Ａ】
2007265011.tif 000007
【図５Ｂ】
2007265011.tif 000008
【図６Ａ】
2007265011.tif 000009
【図６Ｂ】
2007265011.tif 000010
【図７】
2007265011.tif 000011
【図８】
2007265011.tif 000012
【図９】
2007265011.tif 000013
【図１０】
2007265011.tif 000014
【図１１】
2007265011.tif 000015
【図１２】
2007265011.tif 000016
【図１３Ａ】
2007265011.tif 000017
【図１３Ｂ】
2007265011.tif 000018
【図１４】
2007265011.tif 000019
【図１５】
2007265011.tif 000020
【図１６】
2007265011.tif 000021
【図１７】
2007265011.tif 000022
【図１８】
2007265011.tif 000023