(57)【要約】【課題】業務仕様を入力とし、画面分割のためのプログラムコードを含めたウェブアプリケーションプログラムコードを自動生成して、ウェブアプリケーションにおいて画面表示を分割・表示する機能を業務仕様の枠組みの中で定義して、業務仕様の変更などに柔軟に対応可能とし、設計・実装・管理を一元管理し高品質でスピーディーなウェブアプリケーションの開発を可能とすること。【解決手段】コード生成部が、入出力テーブルに格納される画面の分割を指示する情報を含む業務仕様情報（図４（ａ））に基づいて「画面を複数の分割画面に分割表示するプログラムコード」を生成するとともに、複数のデータ項目のデータベースへの配置を示す情報を含む業務仕様情報（図（ｂ））に基づいて「前記分割画面に、前記第１の業務仕様情報に対応する表示を行うプログラムコード」を生成する構成を特徴とする。【選択図】          図１
2005070879.tif 000002
【特許請求の範囲】
【請求項１】
ウェブアプリケーションプログラムを生成するプログラム生成装置において、
複数のデータ項目のデータベースへの配置を示す情報を含む第１の業務仕様情報を複数記憶可能な記憶手段と、
「画面を複数の分割画面に分割表示するプログラムコード」を生成するとともに、前記記憶手段に記憶される第１の業務仕様情報に基づいて「前記分割画面に、前記第１の業務仕様情報に対応する表示を行うプログラムコード」を生成する生成手段と、
有することを特徴とするプログラム生成装置。
【請求項２】
前記記憶手段は、画面の分割を指示する情報を含む第２の業務仕様情報をも記憶するものであり、
前記生成手段は、前記記憶手段に前記第２の業務使用情報が記憶されている場合に「画面を複数の分割画面に分割表示するプログラムコード」を生成することを特徴とする請求項１記載のプログラム生成装置。
【請求項３】
前記第２の業務仕様情報は、画面の分割方向を示す情報を含むものであり、
前記生成手段は、前記記憶手段に記憶される前記第２の業務使用情報に基づいて「前記分割方向に画面を分割表示するプログラムコード」を生成することを特徴とする請求項２記載のプログラム生成装置。
【請求項４】
前記第２の業務仕様情報は、前記第１の業務仕様情報に紐付けられたメニュー項目の情報を含むものであり、
前記生成手段は、前記メニュー項目の情報に基づいて「前記メニュー項目の表示を、前記第１の業務仕様情報に対応する表示とは異なる分割画面に行うプログラムコード」を生成することを特徴とする請求項２又は３記載のプログラム生成装置。
【請求項５】
前記生成手段は、「前記メニュー項目の表示が指示された場合に、該指示されたメニュー項目に紐付けられた第１の業務仕様情報に対応する表示を、前記メニュー項目の表示とは異なる分割画面に行うプログラムコード」を生成することを特徴とする請求項３記載のプログラム生成装置。
【請求項６】
前記第２の業務仕様情報は、前記メニュー項目をグループ化する情報を含むものであり、
前記生成手段は、前記メニュー項目をグループ化する情報に基づいて「前記メニュー項目をグループ毎に表示するプログラムコード」を生成することを特徴とする請求項４又は５記載のプログラム生成装置。
【請求項７】
前記生成手段は、前記メニュー項目をグループ化する情報に基づいて「前記各メニュー項目を前記グループ毎にツリー構造で表示するプログラムコード」を生成することを特徴とする請求項６記載のプログラム生成装置。
【請求項８】
前記生成手段は、「前記ツリー構造で表示される各メニュー項目を、展開及び畳み込み処理するプログラムコード」を生成することを特徴とする請求項７記載のプログラム生成装置。
【請求項９】
前記第１の業務仕様情報は、前記グループの展開属性として、該グループに属する各メニューを展開及び畳み込み可能な第１の展開属性、又は、該グループに属する各メニューを展開済みで表示し畳み込み不可能な第２の展開属性を含むものであり、
前記生成手段は、前記第１の展開属性に対応するグループに対して「前記ツリー構造で表示される各メニュー項目を、展開及び畳み込み処理するプログラムコード」を生成することを特徴とする請求項８記載のプログラム生成装置。
【請求項１０】
ウェブアプリケーションプログラムを生成するプログラム生成装置におけるプログラム生成方法において、
画面の分割を指示する情報を含む業務仕様情報に基づいて「画面を複数の分割画面に分割表示するプログラムコード」を生成する第１の生成工程と、
複数のデータ項目のデータベースへの配置を示す情報を含む第１の業務仕様情報に基づいて「前記分割画面に、前記第１の業務仕様情報に対応する表示を行うプログラムコード」を生成する第２の生成工程と、
を有することを特徴とするプログラム生成方法。
【請求項１１】
請求項１０に記載されたプログラム生成方法を実行するためのプログラム。
【請求項１２】
請求項１０に記載されたプログラム生成方法を実行するためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ウェブ（Ｗｅｂ）アプリケーション開発支援に関し、フレームによる画面の分割とそれらを制御する処理の生成、その一連のプログラムコードを業務仕様という枠組みの中から自動生成可能なプログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体に関するものである。
【０００２】
【従来の技術】
従来、ＷＷＷを用いた業務システムでは、画面を業務システム毎に全画面切り替えるのが主流だった。また、一部で行われていたフレーム分割を行った業務システム作成では、設計者によってフレームの適用の仕方が異なり、業務を遂行するのに最適なユーザインタフェースを効率よく開発できないという問題があった。
【０００３】
この問題に対し、特開平１０−１７１７５５号公報（特許文献１）に開示された「業務システム」では、ＷＷＷサーバが保持するＨＴＭＬファイルを、クライアントにおけるＷＷＷブラウザ画面を業務目的に応じて複数フレームに分割して表示可能なように構成するアイディアを提示している。
【０００４】
このアイディアでは、フレームのＨＴＭＬファイルを画面制御系とコンテンツ系に分類して管理し、画面表示するということを実現することで、画面の切り替えと操作性の向上を図っている。
【０００５】
【特許文献１】
特開平１０−１７１７５５号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、上記従来の技術では、画面の制御と表示するコンテンツの管理を行うことができるが、実際の画面一つ一つについては、手動で作成しなくてはならず、効率的でなく、また不慣れなユーザでは困難であるという問題点があった。
【０００７】
また、業務仕様や画面構成に変更があると、フレーム構成の定義、画面構成の定義、ＨＴＭＬファイルの３種類の項目を手動で修正しなければならず、生産性が著しく損なわれるという問題点があった。
【０００８】
さらに、フレーム構成の定義、画面構成の定義、ＨＴＭＬファイルの３つがそれぞれ別々に定義されているため、更新漏れなどによる品質低下も懸念される。
【０００９】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、画面の分割を指示する情報を含む業務仕様情報に基づいて「画面を複数の分割画面に分割表示するプログラムコード」を生成するとともに、複数のデータ項目のデータベースへの配置を示す情報を含む業務仕様情報に基づいて「前記分割画面に、前記第１の業務仕様情報に対応する表示を行うプログラムコード」を生成することにより、業務仕様を入力とし、画面分割のためのプログラムコードを含めたウェブアプリケーションプログラムコードを自動生成して、ウェブアプリケーションにおいて画面表示を分割・表示する機能を業務仕様の枠組みの中で定義できることにより、業務仕様の変更などに柔軟に対応でき、設計・実装・管理を一元管理し高品質でスピーディーな開発が可能となるプログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体を提供することである。
【００１０】
【課題を解決するための手段】
本発明の第１の発明は、ウェブアプリケーションプログラムを生成するプログラム生成装置において、複数のデータ項目のデータベースへの配置を示す情報を含む第１の業務仕様情報（図４（ｂ））を複数記憶可能な記憶手段（図１に示す外部記憶装置に記憶される入出力テーブル１０９）と、「画面を複数の分割画面に分割表示するプログラムコード」を生成するとともに、前記記憶手段に記憶される第１の業務仕様情報に基づいて「前記分割画面に、前記第１の業務仕様情報に対応する表示を行うプログラムコード」を生成する生成手段（図１に示すコード生成部１０７，図１６のステップＳ３０５〜Ｓ３０８）とを有することを特徴とする。
【００１１】
本発明の第２の発明は、前記記憶手段は、画面の分割を指示する情報を含む第２の業務仕様情報（図４（ａ）の行１に示すデータファイル番号「Ｐａｎｅｌ」）をも記憶するものであり、前記生成手段は、前記記憶手段に前記第２の業務使用情報が記憶されている場合に「画面を複数の分割画面に分割表示するプログラムコード」を生成する（図１６のステップＳ３０５，Ｓ３０７）ことを特徴とする。
【００１２】
本発明の第３の発明は、前記第２の業務仕様情報は、画面の分割方向を示す情報（図４（ａ）の行１に示すデータファイル番号「Ｐａｎｅｌ」の加工区分（列６）の値（「Ｄ１」，「Ｄ２」））を含むものであり、前記生成手段は、前記記憶手段に記憶される前記第２の業務使用情報に基づいて「前記分割方向に画面を分割表示するプログラムコード」を生成する（図１６のステップＳ３０５，Ｓ３０７）ことを特徴とする。
【００１３】
本発明の第４の発明は、前記第２の業務仕様情報は、前記第１の業務仕様情報に紐付けられたメニュー項目の情報（図４（ａ）の行３〜行５，行８，行１１に示すデータファイル番号「ＩＯＬｉｎｋ」）を含むものであり、前記生成手段は、前記メニュー項目の情報に基づいて「前記メニュー項目の表示を、前記第１の業務仕様情報に対応する表示とは異なる分割画面に行うプログラムコード」を生成する（図１６のステップＳ３０６，Ｓ３０８）ことを特徴とする。
【００１４】
本発明の第５の発明は、前記生成手段は、「前記メニュー項目の表示が指示された場合に、該指示されたメニュー項目に紐付けられた第１の業務仕様情報に対応する表示を、前記メニュー項目の表示とは異なる分割画面に行うプログラムコード」を生成する（図１６のステップＳ３０６，Ｓ３０８）ことを特徴とする。
【００１５】
本発明の第６の発明は、前記第２の業務仕様情報は、前記メニュー項目をグループ化する情報（図４（ａ）の行２に示すデータファイル番号「ＸＦｉｅｌｄＡｃ」から行６に示すデータファイル番号「ＸＦｉｅｌｄＥｎｄ」までの第１のグループ，行７に示すデータファイル番号「ＸＦｉｅｌｄＡｃ」から行９に示すデータファイル番号「ＸＦｉｅｌｄＥｎｄ」までの第２のグループ，行１０に示すデータファイル番号「ＸＦｉｅｌｄ」から行１２に示すデータファイル番号「ＸＦｉｅｌｄＥｎｄ」までの第３のグループ）を含むものであり、前記生成手段は、前記メニュー項目をグループ化する情報に基づいて「前記メニュー項目をグループ毎に表示するプログラムコード」を生成する（図１７のステップＳ４０３，Ｓ４０５）ことを特徴とする。
【００１６】
本発明の第７の発明は、前記生成手段は、前記メニュー項目をグループ化する情報に基づいて「前記各メニュー項目を前記グループ毎にツリー構造で表示するプログラムコード」を生成する（図１７のステップＳ４０２，Ｓ４０６）ことを特徴とする。
【００１７】
本発明の第８の発明は、前記生成手段は、「前記ツリー構造で表示される各メニュー項目を、展開及び畳み込み処理するプログラムコード」を生成する（図１７のステップＳ４０２）ことを特徴とする。
【００１８】
本発明の第９の発明は、前記第１の業務仕様情報は、前記グループの展開属性として、該グループに属する各メニューを展開及び畳み込み可能な第１の展開属性（図４（ａ）の行２，行７に示すデータファイル番号「ＸＦｉｅｌｄＡｃ」）、又は、該グループに属する各メニューを展開済みで表示し畳み込み不可能な第２の展開属性（図４（ａ）の行１０に示すデータファイル番号「ＸＦｉｅｌｄ」）を含むものであり、前記生成手段は、前記第１の展開属性に対応するグループに対して「前記ツリー構造で表示される各メニュー項目を、展開及び畳み込み処理するプログラムコード」を生成する（図１７のステップＳ４０２）ことを特徴とする。
【００１９】
本発明の第１０の発明は、ウェブアプリケーションプログラムを生成するプログラム生成装置におけるプログラム生成方法において、画面の分割を指示する情報を含む業務仕様情報に基づいて「画面を複数の分割画面に分割表示するプログラムコード」を生成する第１の生成工程（図１６のステップＳ３０５，Ｓ３０７）と、複数のデータ項目のデータベースへの配置を示す情報を含む第１の業務仕様情報に基づいて「前記分割画面に、前記第１の業務仕様情報に対応する表示を行うプログラムコード」を生成する第２の生成工程（図１６のステップＳ３０６，Ｓ３０８）と有することを特徴とする。
【００２０】
本発明の第１１の発明は、第１０の発明に記載されたプログラム生成方法を実行するためのプログラムであることを特徴とする。
【００２１】
本発明の第１２の発明は、第１０の発明に記載されたプログラム生成方法を実行するためのプログラムを記録媒体にコンピュータが読み取り可能に記憶することを特徴とする。
【００２２】
【発明の実施の形態】
以下、図を参照して本発明のアプリケーション開発システムについて説明する。
【００２３】
図１は、本発明の一実施形態を示すプログラム生成装置の構成を示すブロック図である。
【００２４】
図において、１０１は入力装置で、キーボードやマウス等のポインティングデバイス等に相当し、業務仕様情報（データ項目のデータベースへの配置とデータ項目間の関係、即ちあるデータがどのような条件のもとにどのようなデータから求められるかを示す情報等）や、業務パターン（画面表示パターンと該画面表示パターンに付随したロジックの組み合わせを規定したもの）の選択等を行うことが可能である。
【００２５】
１０２は表示装置で、ＣＲＴ，ＬＣＤ等で構成され、業務仕様情報，業務パターンの選択情報の入力画面や、該入力画面から入力された業務仕様情報や業務パターン選択情報、生成されたプログラムコード等を表示可能である。１０４はハードディスク等の外部記憶装置で、入力された業務仕様を記憶するための入出力テーブル１０９、業務パターン選択情報１１０、生成されたプログラムコード（ｈｔｍｌコード１１１，ＪＳＰコード１１２，サーブレット（Ｓｅｒｖｌｅｔ）コード１１３，Ｂｅａｎコード１１４）等を記憶するものである。
【００２６】
１０３は処理装置で、ＣＰＵ，ＲＯＭ，ＲＡＭ等から構成され、ＣＰＵがＲＯＭ，外部記憶装置１０４又はその他の記録媒体に格納されるプログラムをＲＡＭ上にロードして実行することにより実現されるものであり、画面制御部１０５，仕様解析部１０６，コード生成部１０７を備える。
【００２７】
画面制御部１０５は、入力装置１０１から業務仕様情報の入力を行うために表示装置１０２の画面（不図示）を制御する業務仕様記述部１１６と、入力装置１０１から業務処理パターンの選択を行うために表示装置１０２の画面（不図示）を制御する物理仕様記述部１１７を有する。
【００２８】
仕様解析部１０６は、入力装置１０１から入力された又は外部記憶装置１０４から読み出された業務仕様情報に対して字句解析や文法解析を行う。コード生成部１０７は、仕様解析部１０６により仕様解析された業務仕様情報，業務パターン選択情報に基づいてプログラムコード（ｈｔｍｌコード１１１，ＪＳＰコード１１２，サーブレット（Ｓｅｒｖｌｅｔ）コード１１３，Ｂｅａｎコード１１４）を生成し、外部記憶装置１０４に記憶させる。また、コード生成部１０７は、外部記憶装置１０４から読み出された業務仕様情報（入出力テーブル１０９）に基づいて図示しないデータベースシステムに対してデータベース（ＤＢ）を作成する。
【００２９】
１０８は全体制御部で、画面制御部１０５，仕様解析部１０６，コード生成部１０７等の各部の制御を行う。
【００３０】
図２は、図１に示したコード生成部１０７によって生成したサーブレット、ＪＳＰ、およびＢｅａｎを利用したウェブアプリケーションシステムの全体構成の一例を示す図である。
【００３１】
コード生成部１０７によって生成されたサーブレット、ＪＳＰ、およびＢｅａｎは、それぞれ実行可能な状態で、サーバ３０４側のアプリケーションサーバ３０６上に配置される。
【００３２】
このＷｅｂアプリケーションシステムは、クライアント３０１からウェブブラウザ３０２によって利用される。ウェブブラウザ３０２からＪＳＰ３０９にアクセスすることにより、ＨＴＭＬページを生成し、クライアント３０１側に返送する。そして、ウェブブラウザ３０２上には、ＪＳＰ３０９から送信されるＨＴＭＬページ３０３が表示される。
【００３３】
また、Ｗｅｂブラウザ３０２からのリクエストは、ＨＴＴＰ経由でサーバ３０４側に送信される。サーバ３０４にはＨＴＴＰサーバ３０５とアプリケーションサーバ３０６があり、アプリケーションサーバ３０６にはサーブレットやＪＳＰの実行環境が含まれている。
【００３４】
サーバ３０４側にリクエストが送信されると、リクエストに応じて該当するサーブレット３０７が起動される。サーブレット３０７は、対応するＢｅａｎ３０８に処理を要求する。さらに、Ｂｅａｎ３０８はＤＢアクセスオブジェクト３１０を利用してデータベース３１１にアクセスし、業務に関する処理やデータ加工などを行い、その処理結果を保持する。ＤＢアクセスオブジェクト３１０は、業務を分析、設計した結果、作成されるクラスや、再利用可能な既存のクラスである。
【００３５】
次に、サーブレット３０７からＪＳＰ３０９にＢｅａｎ３０８を渡し、ＪＳＰ３０９を呼び出す。ＪＳＰ３０９は、Ｂｅａｎ３０８で保持する処理結果を参照して、ＨＴＭＬページを生成し、クライアント３０１側に返送する。クライアント３０１側に返送されたＨＴＭＬページは、Ｗｅｂブラウザ３０２上に表示される。
【００３６】
サーブレット３０７は、Ｗｅｂブラウザ３０２からのリクエストの受け付け、Ｂｅａｎ３０８への処理要求、およびＪＳＰ３０９の呼び出しという、それぞれの間をつなぎ、制御する役割を持つ。ＪＳＰ３０９はＨＴＭＬページを出力するための表示に関することを受け持ち、Ｂｅａｎ３０８はデータベース３１１へのアクセス等の業務に関する処理を受け持つ。Ｂｅａｎ３０８やＪＳＰ３０９を利用せず、サーブレット３０７のみでＷｅｂブラウザ３０２からのリクエストを処理することは可能であるが、Ｂｅａｎ３０８やＪＳＰ３０９を利用することでそれぞれの役割を明確に分離することで、機能分担を簡潔に把握することができる。
【００３７】
図３は、本発明のプログラム生成装置における第１の制御処理手順の一例を示すフローチャートであり、図１に示した処理装置１０３の全体制御部１０８の動作に対応する。なお、Ｓ１０１〜Ｓ１０７は各ステップを示す。
【００３８】
図１に示した処理装置１０３は、コード生成する業務仕様（入出力テーブル）の入力や業務パターンの選択を行う入力モードと、入力された業務仕様（入出力テーブル）や業務パターン選択情報からプログラムコードを生成する生成モードとを有する。
【００３９】
まず、全体制御部１０８が起動されると、ステップＳ１０１において、入力装置１０１からオペレータの指示により選択されたモードが生成モードか入力モードかを判定し、入力モードが選択されたと判定した場合には、ステップＳ１０２に進み、全体制御部１０８は、画面制御部１０５を起動する。
【００４０】
起動された画面制御部１０５は、ステップＳ１０３において、業務仕様記述部１１６を起動して業務仕様入力画面（不図示）を表示させ、生成するウェブアプリケーションのアプリケーション名，オペレータからの業務仕様の一形態である入出力テーブルへの項目入力を受け付け、該入出力テーブルを外部記憶装置１０４に格納する。
【００４１】
次に、画面制御部１０５は、ステップＳ１０４において、物理仕様記述部１１７を起動させる。起動された物理仕様記述部１１７は物理仕様入力画面（不図示）を表示させ、オペレータからの業務パターンの選択を受け付け、この業務パターンの選択情報を外部記憶装置１０４に格納し、処理を終了する。
【００４２】
一方、ステップＳ１０１において、入力装置１０１からオペレータの指示により選択されたモードが生成モードであると判定した場合には、ステップＳ１０５に進み、全体制御部１０８は、外部記憶装置１０４に格納された入出力テーブルを読み出すとともに、仕様解析部１０６を起動させて、読み出した入出力テーブルの字句解析，文法解析を行う。
【００４３】
次に、ステップＳ１０６において、全体制御部１０８は、コード生成部１０７を起動させて、仕様解析部１０６で字句解析，文法解析が行われた入出力テーブルと選択された業務パターンに基づいてコード生成及びデータベースの作成を行う。
【００４４】
そして、ステップＳ１０７において、全体制御部１０８は、生成されたコードを、オペレータの指示により表示装置１０２に表示したり、外部記憶装置１０４に書き込む出力処理を行う。
【００４５】
以下、オペレータによって入力モードが選択された場合について説明する。
【００４６】
入力モードの選択により、全体制御部１０８は業務仕様記述部１１６を起動する。これにより、表示装置１０２に図示しない業務仕様入力画面が表示され、オペレータはこの業務仕様入力画面より業務仕様を入力装置１０１を用いて入力する。
【００４７】
以下、図４を参照して、本発明のプログラム生成装置における業務仕様（入出力テーブル）について説明する。図示しない入力画面から入力される業務仕様は、内部的には図４に示すような入出力テーブルの形式で保存される。
【００４８】
図４は、本発明のプログラム生成装置における業務仕様（入出力テーブル１０９）について説明する模式図であり、図４（ａ）はウェブアプリケーションにおける画面のフレーム分割とそこに表示されるメニューと画面の対応を記述した第１の業務仕様情報に対応し、図４（ｂ）はデータ項目の定義と各データ項目のデータベースへの配置と各データ項目間の関係を記述した第２の業務仕様情報に対応する。
【００４９】
図４（ａ），（ｂ）において、列１は入出力のデータファイル番号を示したものであり、データファイルを構成するデータ項目として列２のデータファイル項目枝番（以下、データ項目枝番）がある。列３はデータファイルの名称で、列４はデータ項目枝番に対応する各データ項目の名称である。
【００５０】
列５は参照先データファイルで、データファイル番号のリンク先を指定する項目である。なお、この参照先データファイルに頭に「＠」が付加された文字列が指定されている場合には、外部で作成された画面（ＵＲＬ，ｈｔｍｌファイル名等）と当該メニュー項目とのリンク（紐付け）を示し、頭に「＠」が付加されていない文字列が指定されている場合には、図４（ｂ）に示すような業務使用に基づいて本プログラム生成装置で作成された画面（ＪＳＰ等）と当該メニュー項目とのリンク（紐付け）を示す。
【００５１】
列６は加工区分で、フレーム分割を行う際に、その分割パターンを示している。列７は項目の項番を示している。
【００５２】
なお、図１では、図４に示した入出力テーブルを、図示しない入力画面から入力する構成について説明したが、入出力テーブルをテキストファイルやＣＳＶファイル等で構成し、ユーザがテキストエディタやその他のアプリケーションで作成し、外部記憶装置１０４に格納するように構成してもよい。
【００５３】
図５は、図４に示した入出力テーブルのデータファイル番号（列１）の種別について説明する一覧図である。
【００５４】
まず、データファイル番号（列１）が、「Ｐａｎｅｌ」の場合、その画面をフレームにより分割することを示す。
【００５５】
また、データファイル番号（列１）が、「ＸＦｉｅｌｄＡｃ」の場合、それ以降の項目が展開・縮小（畳み込み）可能なツリー構造で表示される第１の展開属性を有するグループ（初期表示では畳み込まれている）として扱うことを示す。
【００５６】
なお、本実施形態におけるグループ化とは、ある特定のアイテム（本実施形態ではメニュー項目）をツリー構造の概念のように、「親」とそれに関連する「子」の関係を構築することである。
【００５７】
具体的な動作としては、「親」にあたいする項目（親メニュー）をクリックするとその親の下についている「子」の項目（子メニュー）が表示される。その状態で再び「親」の項目をクリックすると「子」の項目は隠れ、「親」の項目のみが表示されるという動きを実現する。
【００５８】
さらに、データファイル番号（列１）が、「ＸＦｉｅｌｄ」の場合、それ以降の項目が展開されて（畳み込み不可）表示される第２の展開属性を有するグループとして扱うことを示す。
【００５９】
また、データファイル番号（列１）が、「ＸＦｉｅｌｄＥｎｄ」の場合、「ＸＦｉｅｌｄＡｃ」，「ＸＦｉｅｌｄ」で始まったグループ化の終わりを示す。
【００６０】
さらに、データファイル番号（列１）が、「ＩＯＬｉｎｋ」の場合、指定された画面にリンクを張り、クリック（ウェブブラウザ上で指示）されることでその画面を表示するアイテムを示す。
【００６１】
また、データファイル番号（列１）が、その他（「Ｐａｎｅｌ」，「ＸＦｉｅｌｄＡｃ」，「ＸＦｉｅｌｄ」，「ＸＦｉｅｌｄＥｎｄ」，「ＩＯＬｉｎｋ」以外）の場合、データファイル（データ項目のデータベースへの配置の定義）であることを示す。
【００６２】
即ち、図４（ａ）の１行は、「Ｐａｎｅｌ」であるため、フレームにより分割する画面を定義していることを示す。
【００６３】
また、図４（ｂ）は、「Ｐａｎｅｌ」，「ＸＦｉｅｌｄＡｃ」，「ＸＦｉｅｌｄ」，「ＸＦｉｅｌｄＥｎｄ」，「ＩＯＬｉｎｋ」以外（その他）のデータファイル番号で構成されるため、データファイル（複数のデータ項目より構成される業務仕様，各データ項目のデータベースへの配置）を定義していることを示す。
【００６４】
以下、図４（ａ）の内容にそって生成されるフレーム分割された画面及びメニューについて具体的に説明する。
【００６５】
図４（ａ）の行１では、列１のデータファイル番号に「Ｐａｎｅｌ」が定義されているため、画面をフレームにより分割することを示しており、その分割パターンは列６の加工区分に定義されている。
【００６６】
図４（ａ）の行１の場合は、列６の加工区分に「Ｄ１」が指定されているので、縦分割であることを示している。なお、列６の加工区分に「Ｄ２」が指定されている場合は横分割であることを示す。本実施形態では、画面を２分割する場合について示したが、Ｄ１，Ｄ２以外に分割パターンを設け、３つ以上に分割、或いは縦横組み合わせたパターンに分割可能に構成してもよい。
【００６７】
また、列５の参照先データファイルに示す「＠ｍａｉｎ．ｈｔｍｌ」の定義はリンク先の画面を示しており、外部で作成された「ｍａｉｎ．ｈｔｍｌ」という画面を指している。例えば、列１のデータファイル番号の値が「Ｐａｎｅｌ」場合は最初にクライアントを起動し、表示された画面の右側に「ｍａｉｎ．ｈｔｍｌ」の画面が表示されるということを示している。
【００６８】
図４（ａ）の行２では、列１のデータファイル番号に「ＸＦｉｅｌｄＡｃ」が定義されているため、「ＸＦｉｅｌｄＡｃ」以降に続く項目が展開・畳み込みが可能なツリー構造で表示される第１の展開属性を有するグループとなる（Ｊａｖａ（登録商標）Ｓｃｒｉｐｔにより展開・畳込みされる）ことを示しており、列３のデータファイル名は、グループ単位に表示される名称を示している。図４（ａ）の行２の場合、「分析申込み」というグループが生成される。
【００６９】
図４（ａ）の行３では、列１のデータファイル番号に「ＩＯＬｉｎｋ」が定義されているため、この項目にリンク先が指定されたメニューであることを示しており、列５の参照先データファイルの「Ｓｉｎｓｅｉ」はそのリンク先画面を示している。
【００７０】
また、この図４（ａ）の行３の列３のデータファイル名は、この項目が実際の画面で表示される名称を示しており、図４（ａ）の行３の場合「申込み」と表示される。この項目をクリックしたときに右フレームには「Ｓｉｎｓｅｉ」が表示されることになる。
【００７１】
さらに、この図４（ａ）の行３で定義している項目は、図４（ａ）の行２で定義された「分析申込み」グループに自動的に含まれることになる。
【００７２】
同様に、図４（ａ）の行４，行５も生成され、「分析申込み」グループに追加されることを示している。
【００７３】
また、図４（ａ）の行６では、列１のデータファイル番号に「ＸＦｉｅｌｄＥｎｄ」が定義されているため、グループ化の作業が終了することを示している。この図４（ａ）の行６の場合、行２の定義から始まったグループ化が終了することを示している。
【００７４】
また、図４（ａ）の行７では、列１のデータファイル番号に「ＸＦｉｅｌｄＡｃ」が定義されているので、「ＸＦｉｅｌｄＡｃ」以降に続く項目が展開・畳み込みが可能なツリー構造で表示される第１の展開属性を有する図４（ａ）の行２〜行６のグループとは別のグループ「分析結果登録」となる（Ｊａｖａ（登録商標）Ｓｃｒｉｐｔにより展開・畳込みされる）ことを示している。
【００７５】
また、図４（ａ）の行８は、図４（ａ）の行３等と同様にクリック（ウェブブラウザ上で指示）することで右フレームに指定した画面を表示する項目である「登録」を生成することを示している。
【００７６】
さらに、図４（ａ）の行９は、図４（ａ）の行６と同様に列１のデータファイル番号に「ＸＦｅｌｉｄＥｎｄ」が定義されているので、行７から始まったグループ化が終了することを示している。
【００７７】
また、図４（ａ）の行１０では、列１のデータファイル番号に「ＸＦｉｅｌｄ」が定義されているため、以降に続く項目が展開された状態（畳み込み不可）なツリー構造で表示される第２の展開属性を有するグループ「分析結果登録」（図４（ａ）の行２〜行６で定義されたグループとは別）となることを示している。なお、図４（ａ）の行１０では、列１０のデータファイル名が空白のため、このグループには名称は付けられず、画面の表示上の枠のみで構成されることを示している。
【００７８】
さらに、図４（ａ）の行１１は、図４（ａ）の行３等と同様にクリックすることで右フレームに指定した画面を表示する項目である「分析結果一覧」を生成することを示している。
【００７９】
また、図４（ａ）の行１２は、図４（ａ）の行６と同様に列１のデータファイル番号に「ＸＦｅｌｉｄＥｎｄ」が定義されているので、行１０から始まったグループ化が終了することを示している。
【００８０】
上記の図４（ａ）に基づいて、図６に示すような画面が生成され表示される。
【００８１】
図６〜図８は、図４（ａ）に示した入出力ファイルに基づいて生成される画面の一例を示す模式図である。
【００８２】
図４（ａ）の行１の定義より画面がフレームにより縦分割され、左フレームに行２〜６の定義から生成された「分析申込み」グループと、図４（ａ）の行７〜９で定義された項目から生成された「分析結果登録」グループと、図４（ａ）の行１０〜１２で定義された項目から生成された「分析結果一覧」を含むグループ（名称無し）が表示される。右には図４（ａ）の行１の参照先データファイル（列５）で定義されている外部ファイル「ｍａｉｎ．ｈｔｍｌ」が表示されている。
【００８３】
図６の画面において、図４（ａ）の行２〜行６の定義で生成された左フレームの項目「分析申込み」をクリックすると、「分析申込み」グループが、後述するように自動生成されたＪａｖａ（登録商標）Ｓｃｒｉｐｔにより展開され、グループの中に含まれている項目「申込み」，「承認」，「否認一覧」が図７に示すように表示される。このとき、展開を行ってもサーバ側にリクエストは出さずに、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔによりクライアント（ウェブブラウザ）側のみで展開（および畳み込み）が可能となっている。
【００８４】
図６に示したように、「分析申込み」グループの展開が行われた状態で、例えば「申込み」をクリックすると図４（ａ）の行３の列５で定義されている「Ｓｉｎｓｅｉ」画面が図８に示すように右フレーム内に呼び出される処理が行われる。
【００８５】
続けて、「承認」をクリックすると図４（ａ）の行４の列５で定義されている「Ｓｙｏｕｎｉｎ」画面が右フレーム内に呼び出される。
【００８６】
また、再び「分析申込み」をクリックするとグループは畳み込みされ、「申込み」，「承認」，「否認一覧」の項目は表示されなくなる。つまり図６で示した状態に戻るのである。
【００８７】
同じような動作が「分析結果登録」グループでも行われる。
【００８８】
また、図４（ａ）の行１０〜行１２で定義された「分析結果一覧」は展開済みのグループに含まれており、図６で示す通り初めから項目「分析結果一覧」が表示されている。この「分析結果一覧」をクリックすると、図４（ａ）の行１１の列５で定義されている「ｋｅｋｋａＬ」画面（不図示）が右フレーム内に呼び出される。
【００８９】
この「分析結果一覧」の表示状態は固定されており「分析申込み」グループのようにグループを畳み込みして表示することは出来ない。
【００９０】
以下、図４（ｂ）の内容にそって作成されるデータベース内のテーブル及び業務処理画面について具体的に説明する。
【００９１】
図４（ｂ）の行１〜行４では、列１のデータファイル番号に「Ｓｉｎｓｅｉ」が定義されている（「Ｐａｎｅｌ」，「ＸＦｉｅｌｄＡｃ」，「ＸＦｉｅｌｄ」，「ＸＦｉｅｌｄＥｎｄ」，「ＩＯＬｉｎｋ」以外（その他）が定義されている）ため、図示しないデータベースに対して、列１のデータファイル番号「Ｓｉｎｓｅｉ」をテーブル名とするテーブルが作成される。なお、該テーブルの項目は、図４（ｂ）の行１〜行４の列２のデータファイル項目枝番「ＳｉｎｓｅｉＮｏ」，「ＳｉｎｓｅｉＭＤ」，「Ｓｉｎｓｅｉｎａｉｙｏ」，「Ｓｉｎｓｅｉｒｉｙｕ」とする。
【００９２】
また、データベースに対してアクセスして、列１のデータファイル番号をテーブル名とするテーブルのデータのデータベースへの格納、データベースからの取得を行うプログラム（Ｂｅａｎ１１４）が作成される。
【００９３】
さらに、図４（ｂ）の行１〜行４からは、図９に示す業務パターン選択情報１１０に対応する画面をウェブブラウザに表示するプログラム（ＪＳＰ１１２），ウェブブラウザから送信されるデータを取得しＢｅａｎ１１４，ＪＳＰ１１２を呼び出して、図９に示す業務パターン選択情報１１０に対応する業務処理全体を制御するプログラム（Ｓｅｒｖｌｅｔ１１３）等が生成される。
【００９４】
なお、図４（ｂ）では、データファイル番号「Ｓｉｎｓｅｉ」に対応する業務処理情報について示したが、図４（ａ）の参照先データファイル（列５）に記載されたその他のデータファイル（「Ｓｙｏｕｎｉｎ」，「ＲｅＳｉｎｓｅｉ」，「Ｔｏｕｒｏｋｕ」，「ｋｅｋｋａＬ」）の業務処理情報も入出力テーブル１０９に格納されている必要がある。なお、これらの業務処理情報については、図４（ｂ）と同様であるので省略する。
【００９５】
図９は、本発明のプログラム生成装置における業務パターン選択情報１１０について説明する模式図である。
【００９６】
図において、９０２は業務パターンで、データファイル番号９０１に対して選択された業務パターンを示している。なお、業務パターンに関しては、後述する図１０〜図１４で示す。
【００９７】
９０３は表示データ項目枝番で、データファイル番号９０１内で表示するように選択されたデータ項目のデータ項目枝番を示している。即ち、この表示データ項目枝番９０３で選択されたデータ項目が、業務パターン９０２で選択された業務パターンに対応する画面に表示されることとなる。
【００９８】
なお、図１では、図９に示した業務パターン選択情報１１０を、図示しない入力画面から入力する構成について説明したが、業務パターン選択情報１１０をテキストファイルやＣＳＶファイル等で構成し、ユーザがテキストエディタやその他のアプリケーションで作成し、外部記憶装置１０４に格納するように構成してもよい。
【００９９】
なお、図９では、データファイル番号「Ｓｉｎｓｅｉ」に対応する業務パターン選択情報について示したが、図４（ａ）の参照先データファイル（列５）に記載されたその他のデータファイル（「Ｓｙｏｕｎｉｎ」，「ＲｅＳｉｎｓｅｉ」，「Ｔｏｕｒｏｋｕ」，「ｋｅｋｋａＬ」）の業務パターン選択情報も、業務パターン選択情報１１０内に格納されている必要がある。なお、これらに対応する業務パターン選択情報については、図９に示した「Ｓｉｎｓｅｉ」に対応する業務パターン選択情報と同様であるので省略する。
【０１００】
図１０〜図１４は、本発明のプログラム生成装置における業務パターンに対応する表示画面の一例を示す模式図である。
【０１０１】
図１０に示す一覧表示パターンは、図４（ｂ）の行１〜行４の列１のデータファイル番号に対応するテーブル内の項目データをデータベースから取得し、一覧表示する業務処理に対応する。なお、図１０では、表示データ項目枝番９０３として「ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ，Ｓｉｎｓｅｉｎａｉｙｏ」が指定されている場合に対応する。
【０１０２】
図１１に示す登録パターンは、図４（ｂ）の行１〜行４の列１のデータファイル番号に対応するテーブル内の項目データを入力画面から入力させ、データベースへ格納（新規登録）する業務処理に対応する。なお、図１１では、表示データ項目枝番９０３として「ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ，Ｓｉｎｓｅｉｎａｉｙｏ，Ｓｉｎｓｅｉｒｉｙｕ」が指定されている場合に対応する。
【０１０３】
図１２に示す更新パターンは、図４（ｂ）の行１〜行４の列１のデータファイル番号に対応するテーブル内のデータを入力画面から入力させ、データベースへ更新登録，新規登録させたり、入力画面から入力されたデータに対応するレコードをデータベースから削除させたり、入力画面から入力されたデータに対応するレコードをデータベース取得して表示させる業務処理に対応する。なお、図１２では、表示データ項目枝番９０３として「ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ，Ｓｉｎｓｅｉｎａｉｙｏ，Ｓｉｎｓｅｉｒｉｙｕ」が指定されている場合に対応する。
【０１０４】
図１３に示す一覧更新パターンは、図４（ｂ）の行１〜行４の列１のデータファイル番号に対応するテーブル内の項目データをデータベースから取得し、一覧表示したり、表示されたデータに対して追加，変更，削除等を行わせてデータベースに更新する業務処理に対応する。なお、図１３では、表示データ項目枝番９０３として「ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ，Ｓｉｎｓｅｉｎａｉｙｏ」が指定されている場合に対応する。
【０１０５】
図１４に示す検索一覧パターンは、図４（ｂ）の行１〜行４の列１のデータファイル番号に対応するテーブル内のデータを入力画面から入力させ、該入力されたデータをキーにしてデータを検索して一覧表示する業務処理に対応する。なお、図１４では、表示データ項目枝番９０３として「（ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ），（ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ，Ｓｉｎｓｅｉｎａｉｙｏ，Ｓｉｎｓｅｉｒｉｙｕ）」が指定されている場合に対応する。即ち、上段の検索画面の表示項目として「ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ」が指定され、下段の一覧画面の表示項目として「ＳｉｎｓｅｉＮｏ，ＳｉｎｓｅｉＭＤ，Ｓｉｎｓｅｉｎａｉｙｏ，Ｓｉｎｓｅｉｒｉｙｕ」が指定されている場合に対応する。
【０１０６】
なお、本発明のプログラム生成装置に適用可能な業務パターンは、図１０〜図１４に示した業務パターンに限られるものではなく、その他の各種業務パターンを含めてもよい。
【０１０７】
例えば、複数の画面を使用した業務パターン、詳細には、第１の画面で一覧表示を行い、該一覧表示から選択された項目に対して、第２の画面で詳細に表示するような業務処理パターンを含めてもよい。
【０１０８】
以下、図１５〜図２２のフローチャートを参照して、図１に示したコード生成部１０７によるコード生成処理について説明する。
【０１０９】
図１５は、本発明の第２の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７によるコード生成処理に対応する。なお、Ｓ２０１〜Ｓ２０５は各ステップを示す。
【０１１０】
まず、ステップＳ２０１において、入出力テーブル１０９からデータファイルを１つ取得し、ステップＳ２０２において、カレントのデータファイル番号の値をチェックし、データファイル番号＝「Ｐａｎｅｌ」であるか否かを判定し、データファイル番号がその他でない（データファイル番号が「Ｐａｎｅｌ」，「ＸＦｉｅｌｄＡｃ」，「ＸＦｉｅｌｄ」，「ＸＦｉｅｌｄＥｎｄ」，「ＩＯＬｉｎｋ」のいずれかである）と判定した場合には、ステップＳ２０３に進み、フレーム分割パネル作成処理（詳細は図１６に示す）を実行し、ステップＳ２０５に進む。
【０１１１】
一方、ステップＳ２０２で、データファイル番号がその他である（データファイル番号が「Ｐａｎｅｌ」，「ＸＦｉｅｌｄＡｃ」，「ＸＦｉｅｌｄ」，「ＸＦｉｅｌｄＥｎｄ」，「ＩＯＬｉｎｋ」のいずれでもない）と判定した場合には、ステップＳ２０４に進み、業務処理作成処理（詳細は図１８に示す）を実行し、ステップＳ２０５に進む。
【０１１２】
次に、ステップＳ２０５において、全データファイルについてステップＳ２０１〜Ｓ２０４の処理を終了したか否かを判定し、まだ全データファイルについて終了していないと判定した場合には、ステップＳ２０１に戻り次のデータファイルの処理に移行する。
【０１１３】
一方、ステップＳ２０５で、全データファイルについてステップＳ２０１〜Ｓ２０４の処理を終了したと判定した場合には、生成されたコードをＤＢ（リポジトリ）に格納して処理を終了し、図３のフローチャートに戻る。
【０１１４】
図１６は、本発明の第３の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７によるフレーム分割パネル作成処理（図１５のステップＳ２０３）に対応する。なお、Ｓ３０１〜Ｓ３０９は各ステップを示す。
【０１１５】
まず、ステップＳ３０１において、カレントのデータファイル番号の値をチェックし、データファイル番号＝「Ｐａｎｅｌ」であるか否かを判定し、データファイル番号＝「Ｐａｎｅｌ」であると判定した場合には、ステップＳ３０２において、パネル用ｈｔｍｌファイルを生成し、ステップＳ３０３において、メニュー用ｈｔｍｌファイルを生成する。なお、パネル用ｈｔｍｌファイル名は、例えば図示しない入力画面から入力されるアプリケーション名等を用いるものとし、メニュー用ｈｔｍｌファイル名は、例えばアプリケーション名に文字列「ｍｅｎｕ」を付加したものとする。
【０１１６】
次に、ステップＳ３０４において、カレントのデータファイルの列６で定義されている加工区分の値を参照し、加工区分＝「Ｄ１」であるか否かを判定し、加工区分＝「Ｄ１」であると判定した場合には、ステップＳ３０５において、「フレームにより画面を縦分割するコード」をパネル用ｈｔｍｌ内に生成する。
【０１１７】
次に、ステップＳ３０６において、「分割された左フレームにメニュー用のｈｔｍｌを割り当て、右フレームに参照先データファイル（列５）で指定された画面を割り当てるコード」をパネル用ｈｔｍｌ内に生成し、処理を終了して図１５のフローチャートに戻る。
【０１１８】
一方、ステップＳ３０４で、カレントのデータファイルの列６で定義されている加工区分＝「Ｄ１」でない（加工区分＝「Ｄ２」）と判定した場合には、ステップＳ３０７において、「フレームにより画面を横分割するコード」をパネル用ｈｔｍｌ内に生成する。
【０１１９】
次に、ステップＳ３０８において、「分割された上フレームにメニュー用のｈｔｍｌを割り当て、下フレームに参照先データファイル（列５）で指定された画面を割り当てるコード」をパネル用ｈｔｍｌ内に生成し、処理を終了して図１５のフローチャートに戻る。
【０１２０】
一方、ステップＳ３０１で、カレントのデータファイル番号＝「Ｐａｎｅｌ」でないと判定した場合には、ステップＳ３０９において、メニュー作成処理（詳細は図１７に示す）を実行した後、処理を終了して図１５のフローチャートに戻る。
【０１２１】
なお、ステップＳ３０６／Ｓ３０８で、右／下フレームに割り当てる画面（参照先データファイル（列５）で指定された画面）の先頭に「＠」が指定されているものは、外部（本発明のプログラム生成装置以外）で作成された画面でありそれ以降に続く文字列が割り当てる画面名（ＵＲＬ等も可）となる。一方、割り当てられる画面の先頭に「＠」が指定されていない場合には、本発明のプログラム生成装置で生成されるＪＳＰファイル（ＵＲＬ等も可）が割り当てられることとなる。
【０１２２】
図１７は、本発明の第４の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７によるメニュー作成処理（図１６のステップＳ３０９）に対応する。なお、Ｓ４０１〜Ｓ４０６は各ステップを示す。
【０１２３】
まず、ステップＳ４０１において、カレントのデータファイル番号の値をチェックし、データファイル番号＝「ＸＦｉｅｌｄ」又は「ＸＦｉｅｌｄＡｃ」であるか否かを判定し、データファイル番号＝「ＸＦｉｅｌｄ」又は「ＸＦｉｅｌｄＡｃ」であると判定した場合には、ステップＳ４０２において、「データファイル名（列３）の名称で親メニューを作成するコード」をメニュー用ｈｔｍｌファイル内に生成する。なお、フローチャートには詳細に示していないが、データファイル番号＝「ＸＦｉｅｌｄ」の場合には、「単なるテキスト表示により親メニューを生成するコード」を生成し、データファイル番号＝「ＸＦｉｅｌｄＡｃ」の場合（第１の展開属性を有するグループの場合）には、「Ｊａｖａ（登録商標）Ｓｃｒｉｐｔにより、親メニューを指示するとツリー構造を有する子メニューが展開／畳み込みされるように親メニューを生成するコード」を生成するものとする。
【０１２４】
そして、ステップＳ４０３において、ステップＳ４０２で生成した親メニューのグループ化を開始処理して、処理を終了し図１６のフローチャートに戻る。なお、フローチャートには詳細に示していないが、データファイル番号＝「ＸＦｉｅｌｄ」の場合には、単なるグループの開始の判断を行い、データファイル番号＝「ＸＦｉｅｌｄＡｃ」の場合には、「ステップＳ４０２で生成した親メニューを親に指定したグループの開始タグ」をメニュー用ｈｔｍｌファイル内に生成するものとする。
【０１２５】
一方、ステップＳ４０１で、カレントのデータファイル番号が「ＸＦｉｅｌｄ」，「ＸＦｉｅｌｄＡｃ」の何れでもないと判定した場合には、ステップＳ４０４において、カレントのデータファイル番号＝「ＸＦｉｅｌｄＥｎｄ」であるか否かを判定し、データファイル番号＝「ＸＦｉｅｌｄＥｎｄ」であると判定した場合には、ステップＳ４０５において、ステップＳ４０３で生成したグループ化を終了処理して、処理を終了し図１６のフローチャートに戻る。なお、フローチャートには詳細に示していないが、終了するグループが「ＸＦｉｅｌｄ」のグループの場合には、単なるグループの終了の判断を行い、「ＸＦｉｅｌｄＡｃ」のグループの場合には、「ステップＳ４０３で生成したグループの開始タグに対応するグループの終了タグ」をメニュー用ｈｔｍｌファイル内に生成するものとする。
【０１２６】
一方、ステップＳ４０４で、カレントのデータファイル番号が「ＸＦｉｅｌｄＥｎｄ」でないと判定した場合には、ステップＳ４０６において、「データファイル名（列３）の名称で子メニュー（親メニューからツリー構造で表示される子メニュー）を作成するコード」をメニュー用ｈｔｍｌファイル内に生成する。
【０１２７】
なお、この処理では、子メニューに参照先データファイル（列５）で指定された画面をリンクさせるようにし、その表示ターゲットを、メニューを割り当てているフレームではないもう一方のフレームとするようにコードを生成するものとする。また、子メニューにリンクさせる画面の先頭に「＠」が指定されているものは、外部（本発明のプログラム生成装置以外）で作成された画面であり、それ以降に続く文字列がリンク先となる画面名（ＵＲＬ等も可）となる。一方、子メニューにリンクさせる画面の先頭に「＠」が指定されていない場合には、本発明のプログラム生成装置で生成されるＪＳＰファイル（ＵＲＬ等も可）がリンク先になることとなる。
【０１２８】
さらに、メニュー作成の処理はグループ化の有無に関係なく処理される。
【０１２９】
以上の処理により、一つのグループに含まれるアイテムはデータファイル番号に「ＸＦｉｅｌｄ」もしくは「ＸＦｉｅｌｄＡｃ」が定義され、それ以降のデータファイル番号に「ＸＦｉｅｌｄＥｎｄ」が指定されるまでに読み込まれた入出力テーブルの内容で生成される。
【０１３０】
図１８は、本発明の第５の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７による業務処理作成処理（図１５のステップＳ２０４）に対応する。なお、Ｓ５０１〜Ｓ５０４は各ステップを示す。
【０１３１】
まず、ステップＳ５０１において、入出力テーブル１０９に格納された業務仕様情報に基づいて、図示しないデータベースシステムにアクセスし、データベース（ＤＢ）を作成する（詳細は図１９に示す）。
【０１３２】
次に、ステップＳ５０２において、ステップＳ５０１で作成したデータベースに対するデータ操作処理を行うＢｅａｎコード１１４を、入出力テーブル１０９に基づいて生成する（詳細は図２０に示す）。
【０１３３】
次に、ステップＳ５０３において、入出力テーブル１０９に基づいて、ウェブブラウザからの入力データを取得して業務処理全体を制御するサーブレットコード１１３を生成する（詳細は図２１に示す）。
【０１３４】
次に、ステップＳ５０４において、ウェブブラウザへの表示を制御するＪＳＰコード１１２を生成し（詳細は図２２，図２３に示す）、処理を終了して図１５のフローチャートにリターンする。
【０１３５】
図１９は、本発明の第６の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７によるデータベース作成処理（図１８のステップＳ５０１）に対応する。なお、Ｓ６０１〜Ｓ６０４は各ステップを示す。
【０１３６】
まず、ステップＳ６０１において、図示しないデータベースシステムに対して、アプリケーション名をデータベース名とするＤＢを作成するコマンドを発行する（既にデータベースが作成済みの場合には、この処理は行わない）。次に、ステップＳ６０２において、作成されたデータベースに接続する。
【０１３７】
そして、ステップＳ６０３において、カレントのデータファイル番号をテーブル名、該データファイル番号内の各データ項目枝番をテーブル内の項目名としたテーブルを作成するＳＱＬ文を生成し、該ＳＱＬ文のクエリを実行する。
【０１３８】
次に、ステップＳ６０４において、データベースから切断する処理を行い、処理を終了して図１８のフローチャートにリターンする。
【０１３９】
図２０は、本発明の第７の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７によるＢｅａｎ作成処理（図１８のステップＳ５０２）に対応する。なお、Ｓ７０１〜Ｓ７０５は各ステップを示す。
【０１４０】
まず、ステップＳ７０１において、カレントのデータファイル番号に対応するデータベース操作用のＢｅａｎファイルを生成する。なお、Ｂｅａｎファイル名は、例えば、アプリケーション名にデータファイル番号及び文字列「Ｂｅａｎ」を付加し拡張子を「Ｊａｖａ（登録商標）」」としたＢｅａｎファイルとする。また、このとき、作成したＢｅａｎファイル内の先頭に、「パッケージ名（例えば、アプリケーション名にデータファイル番号及び文字列「Ｂｅａｎ」を付加したもの）の宣言、「ｊａｖａ（登録商標）．ｓｑｌ」パッケージのインポート、Ｊａｖａ（登録商標）Ｂｅａｎｓを利用するために必要なインタフェースの実装等を行うコード」を格納しておく。
【０１４１】
次に、ステップＳ７０２において、検索処理コードを生成する。詳細には、「ＤＢに接続し、指定されたパラメータを検索条件として当該データファイル番号に対応するテーブルに対する検索処理を行うためのＳＱＬ文のクエリを実行し、検索結果を返し、ＤＢから切断するコード（検索メソッド）」を当該Ｂｅａｎファイル内に生成する。
【０１４２】
次に、ステップＳ７０３において、新規登録処理コードを生成する。詳細には、「ＤＢに接続し、指定されたパラメータを新規追加データとして当該データファイル番号に対応するテーブルに対して追加処理を行うためのＳＱＬ文のクエリを実行し、新規追加結果を返し、ＤＢから切断するコード（登録メソッド）」を当該Ｂｅａｎファイル内に生成する。
【０１４３】
次に、ステップＳ７０４において、更新処理コードを生成する。詳細には、「ＤＢに接続し、指定されたパラメータを更新データとして当該データファイル番号に対応するテーブルに対して更新処理を行うためのＳＱＬ文のクエリを実行し、更新結果を返し、ＤＢから切断するコード（更新メソッド）」を当該Ｂｅａｎファイル内に生成する。
【０１４４】
次に、ステップＳ７０５において、削除処理コードを生成する。詳細には、「ＤＢに接続し、指定されたパラメータにより削除対象レコードを指定して削除処理を行うためのＳＱＬ文のクエリを実行し、削除結果を返し、ＤＢから切断するコード（削除メソッド）」を当該Ｂｅａｎファイル内に生成する。
【０１４５】
そして、処理を終了して図１８のフローチャートにリターンする。
【０１４６】
なお、上記ステップＳ７０２〜Ｓ７０５により当該Ｂｅａｎファイル内に生成されるコードには、「ドライバクラスをロードする処理、データベースに接続する処理、ＳＱＬステートメントオブジェクトを生成する処理、サーブレットから渡されたデータに基づくＳＱＬ文のクエリを実行して結果を取得する処理、結果をセットする処理、ＳＱＬステートメントオブジェクトとデータベース接続オブジェクトをクローズする処理を行うためのコード」等が記載されているものとする。
【０１４７】
また、ステップＳ７０２〜Ｓ７０５で生成する検索処理コード，新規登録処理コード，更新処理コード，削除処理コードは、Ｂｅａｎファイル内で定義される業務処理用のクラス（例えば、クラス名：データファイル名に文字列「ＤＢＡｃｃｅｓｓ」を付加）内の検索メソッド，登録メソッド，更新メソッド，削除メソッドとして生成するものとする。
【０１４８】
さらに、図２０のフローチャートでは、いずれのデータファイルに対して、検索処理コード，新規登録処理コード，更新処理コード，削除処理コードを生成する構成について示したが、業務パターン選択情報１１０に応じて、必要なコードのみ生成するように構成してもよい。
【０１４９】
例えば、業務パターンとして「一覧表示パターン（図１３）」が選択されているデータファイルでは、検索処理コードのみを生成するように構成する。
【０１５０】
図２１は、本発明の第８の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７によるサーブレット作成処理（図１８のステップＳ５０３）に対応する。なお、Ｓ８０１〜Ｓ８０４は各ステップを示す。
【０１５１】
まず、ステップＳ８０１において、サーブレットファイルを生成する。このサーブレットファイルのファイル名は、例えば、アプリケーション名にカレントのデータファイル名及び文字列「Ｓｅｒｖｌｅｔ」を付加し拡張子を「ｊａｖａ（登録商標）」とする。なお、このとき、サーブレットファイル内の先頭に、「使用するＢｅａｎパッケージ及びその他必要なパッケージをインポートするコード、アクセス修飾子，クラスの定義，クラス（例えば、ＨｔｔｐＳｅｒｖｌｅｔクラス）の継承、ウェブブラウザ（ＨＴＭＬフォーム）から送信されたパラメータ（送信情報）を受け取るためのメソッドを示すコード」を格納しておく。
【０１５２】
次に、ステップＳ８０２において、「ウェブブラウザからの送信情報を受け取るコード」をサーブレットファイル内に生成する。
【０１５３】
次に、ステップＳ８０３において、「ステップＳ８０２で生成したコードで受け取るウェブブラウザからの送信情報に対応する業務処理のＢｅａｎのメソッドを起動して業務処理を実行させるためのコード」をサーブレットファイル内に生成する。なお、ここで生成されるコードは、選択された業務パターンによって異なるものとなる。詳細は省略するが、例えば、業務パターン選択情報が「登録パターン」の場合には、登録ボタンが指示されたことを示すウェブブラウザからの送信情報に応じて、登録用のメソッドを呼び出して実行させるコードを生成し、また、業務パターン選択情報が「更新パターン」の場合には、更新ボタン／新規ボタン／削除ボタン／表示ボタンが指示が入力されたことを示すウェブブラウザからの送信情報に応じて、更新用メソッド／新規登録用メソッド／削除用メソッド／検索用メソッドを選択的に呼び出して実行させるコードを生成する。
【０１５４】
なお、ステップＳ８０３では、「Ｂｅａｎのメソッドの処理結果をＪＳＰから取得可能な記憶領域（例えば、セッションオブジェクト）に格納するコード」も生成するものとする。
【０１５５】
次に、ステップＳ８０４において、「対応するＪＳＰを呼び出すコード」をサーブレットファイル内に生成し、処理を終了して図１８のフローチャートにリターンする。
【０１５６】
図２２は、本発明の第９の制御処理手順の一例を示すフローチャートであり、図１に示したコード生成部１０７によるＪＳＰ作成処理（図１８のステップＳ５０４）に対応する。なお、Ｓ９０１〜Ｓ９０３は各ステップを示す。
【０１５７】
まず、ステップＳ９０１において、カレントのデータファイルに対応するＪＳＰファイルを生成する。このＪＳＰファイルのファイル名は、例えば、アプリケーション名にデータファイル名を付加し拡張子を「ＪＳＰ」とする。なお、このＪＳＰファイル内には、「ＪＳＰページのＭＩＭＥタイプとエンコードするキャラクタセットを設定するコード、当該データファイルに対応するＢｅａｎをインスタンスするコード、ｈｔｍｌのタグである「＜ｈｔｍｌ＞＜ｈｅａｄ＞＜ｔｉｔｌｅ＞アプリケーション名＜／ｔｉｔｌｅ＞」等のコード」を生成し格納しておくものとする。
【０１５８】
次に、ステップＳ９０２において、選択された業務パターン（業務パターン選択情報１１０）がいずれの業務パターンであるか判断し、業務パターン選択情報１１０に応じて、「表示用データを取得するコード」をＪＳＰファイル内に生成する。詳細は省略するが、例えば、業務パターン選択情報が「一覧表示パターン」，「一覧更新パターン」等の場合には、「業務処理用のＢｅａｎの検索用メソッドを呼び出して実行させ、検索用メソッドの処理結果をＢｅａｎから取得するコード」を生成する。また、業務パターン選択情報が「検索一覧パターン」等の場合には、「前の画面で検索が指示されてセッション等に検索結果が格納されているかを判定し、格納されている場合には、該検索結果を取得するコード」を生成する。
【０１５９】
次に、ステップＳ９０３において、業務パターン選択情報１１０に応じて、「画面を生成するコード」をＪＳＰファイル内に生成する。詳細は省略するが、業務パターン選択情報１１０に応じた画面（図１０〜図１４等に示したような画面）を、図９に示した表示データ項目枝番９０３で指定されたデータ項目を、ステップＳ９０２で取得した表示用データを初期値として表示するように生成するコード」を生成する。
【０１６０】
そして、処理を終了して図１８のフローチャートにリターンする。
【０１６１】
以上説明したように、業務仕様から自動生成することによりアプリケーションへ簡単にフレームの機能を実装することができ、フレーム間のメッセージのやりとりが出来るウェブアプリケーションを容易に開発することができる。
【０１６２】
また、生成されたウェブアプリケーションの管理も一元化され、そのため開発期間を短縮することが可能となるばかりでなく、保守の面でも優れたシステムを構築することができる。
【０１６３】
なお、本実施形態では、サーバサイドのＪａｖａ（登録商標）プログラムを用いたウェブアプリケーションを生成する場合について説明したが、生成されるプログラムコードは、Ｊａｖａ（登録商標）に限られるものではなく、ＡＳＰ（Ａｃｔｉｖｅ  Ｓｅｒｖｅｒ  Ｐａｇｅｓ），ＰＨＰ（Ｈｙｐｅｒｔｅｘｔ  Ｐｒｅｐｒｏｓｅｓｓｏｒ）等のその他のプログラムによるウェブアプリケーションであってもよい。  また、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔを用いる場合について説明したが、その他のスクリプト言語を用いてもよい。  さらに、図４に示した入出力テーブル，図９に示した業務パターン選択情報の各種データの構成及びその内容は、これらに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１６４】
また、上記実施形態の各変形例を組み合わせた構成も全て本発明に含まれるものである。
【０１６５】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１６６】
なお、本実施形態で示したプログラム生成装置は、図４に示した入出力テーブルに基づいて、Ｗｅｂアプリケーションで必要な全てのコード（但し、「＠」が付加された外部で作成された画面は除く）を生成するものであり、本発明のプログラム生成装置のユーザはＪａｖａ（登録商標）プログラミングを一切行う必要がなく一括して生成される。
【０１６７】
これに対して、従来の技術の欄に示した特許文献１に示される業務システムでは、画面の制御と表示するコンテンツの管理を行うことはできるが、実際の画面一つ一つについては、個々に作成する必要がある。この点において、本発明のプログラム生成装置とは根本的に異なるものである。
【０１６８】
それゆえに、上記特許文献１で示される業務システムでは、業務仕様や画面構成に変更があると、フレーム構成の定義、画面構成の定義、ＨＴＭＬファイルの３種類の項目を手動で修正しなければならず、生産性が著しく損なわれてしまう。また、フレーム構成の定義、画面構成の定義、ＨＴＭＬファイルの３つがそれぞれ別々に定義されているため、更新漏れなどによる品質低下も懸念されるという問題点があるが、本実施形態のプログラム生成装置では、このような問題点を解決し、保守性の優れたウェブアプリケーションを容易に生成することができる。
【０１６９】
また、一般に広く普及しているホームページ作成ソフト等でも、フレーム分割が可能なものもあるが、このようなソフトウェアは、個々の画面を作成することはできるものの、データ項目のデータベースへの配置等を示す業務仕様を含めた業務システム全体を設計、生成することは到底できるものではなく、個々の業務処理プログラミングを行う必要があり、開発に多大な時間や手間を要してしまう。また、業務処理と画面とが別個に作成されるため、業務仕様や画面構成の変更に漏れなく対応することは困難である。
【０１７０】
以上示した点は、本実施形態で示したプログラム生成装置と、上記特許文献１に記載されるような発明や既存のソフトウェア（ホームページ作成ソフト等）との相違を考察する上で、特に留意すべき事項と考える。
【０１７１】
以上説明したように、本発明のプログラム生成装置は、業務仕様を入力とし、フレーム分割のためのプログラムコードを自動生成するので、ウェブアプリケーションにおいて画面表示をフレーム機能により分割・表示する機能を業務仕様の枠組みの中で定義でき自動的に生成することができる。
【０１７２】
即ち、本発明では、フレームとその画面に表示するＨＴＭＬを業務仕様の一部と定義することにより、フレームの構成、そこに表示するＨＴＭＬファイルの定義、それらを制御するコードを自動的に生成する。
【０１７３】
これにより業務仕様の変更などに柔軟に対応でき、設計・実装・管理を一元管理し高品質でスピーディーな開発が可能となる。
【０１７４】
また、業務仕様中の展開属性情報に基づいて、メニュー項目の畳み込み・展開に関するプログラムコードを自動生成するので、分割時のメニュー構成において各項目をグループ化し、畳み込み・展開する機能を業務仕様内で定義でき自動的に生成することができる。
【０１７５】
従って、業務仕様上でフレームの構成、表示する画面の定義を設定でき、このような業務仕様から、それら関連するコードを自動生成および実装させることで、生産性と保守性をより向上させるものである。
【０１７６】
また、フレーム分割を行ったときに必要になる、業務画面を呼び出すメニュー項目も業務仕様の枠組みの中で定義でき自動生成させることができ、フレーム間のメッセージのやりとりが容易に出来るようになる。
【０１７７】
また、その管理も一元化される。そのため開発期間を短縮することが可能となるばかりでなく、保守の面でも優れたシステムが構築できる。
【０１７８】
以下、図２３に示すメモリマップを参照して本発明に係るプログラム生成装置で読み出し可能なデータ処理プログラムの構成について説明する。
【０１７９】
図２３は、本発明に係るプログラム生成装置で読み出し可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【０１８０】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１８１】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１８２】
本実施形態における図３，図１５，図１６，図１７，図１８，図１９，図２０，図２１，図２２に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１８３】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１８４】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１８５】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【０１８６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１８７】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１８８】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウエアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１８９】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１９０】
【発明の効果】
以上説明したように、本発明によれば、画面の分割を指示する情報を含む業務仕様情報に基づいて「画面を複数の分割画面に分割表示するプログラムコード」を生成するとともに、複数のデータ項目のデータベースへの配置を示す情報を含む業務仕様情報に基づいて「前記分割画面に、前記第１の業務仕様情報に対応する表示を行うプログラムコード」を生成するので、業務仕様を入力とし、画面分割のためのプログラムコードを含めたウェブアプリケーションプログラムコードを自動生成して、ウェブアプリケーションにおいて画面表示を分割・表示する機能を業務仕様の枠組みの中で定義できることより、業務仕様の変更などに柔軟に対応でき、設計・実装・管理を一元管理し高品質でスピーディーな開発が可能となる。
【０１９１】
また、業務仕様中の展開属性情報に基づいて、メニュー項目の畳み込み・展開に関するプログラムコードを自動生成するので、画面分割時のメニュー構成において各項目をグループ化し、畳み込み・展開する機能を業務仕様内で定義でき自動的に生成することができる。
【０１９２】
従って、業務仕様上で画面の分割構成、表示する画面の定義を設定でき、このような業務仕様から、それら関連するコードを自動生成および実装させることで、生産性と保守性をより向上させるものである。
【０１９３】
また、画面分割を行ったときに必要になる、業務画面を呼び出すメニュー項目も業務仕様の枠組みの中で定義でき自動生成させることができ、フレーム間のメッセージのやりとりが容易に出来るようになる。
【０１９４】
また、その管理も一元化される。そのため開発期間を短縮することが可能となるばかりでなく、保守の面でも優れたシステムを構築することができる等の効果を奏する。
【図面の簡単な説明】
【図１】本発明の一実施形態を示すプログラム生成装置の構成を示すブロック図である。
【図２】図１に示したコード生成部によって生成したサーブレット、ＪＳＰ、およびＢｅａｎを利用したウェブアプリケーションシステムの全体構成の一例を示す図である。
【図３】本発明のプログラム生成装置における第１の制御処理手順の一例を示すフローチャートである。
【図４】本発明のプログラム生成装置における業務仕様（入出力テーブル）について説明する模式図である。
【図５】図４に示した入出力テーブルのデータファイル番号（列１）の種別について説明する覧図である。
【図６】図４（ａ）に示した入出力ファイルに基づいて生成される画面の一例を示す模式図である。
【図７】図４（ａ）に示した入出力ファイルに基づいて生成される画面の一例を示す模式図である。
【図８】図４（ａ）に示した入出力ファイルに基づいて生成される画面の一例を示す模式図である。
【図９】本発明のプログラム生成装置における業務パターン選択情報について説明する模式図である。
【図１０】本発明のプログラム生成装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図１１】本発明のプログラム生成装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図１２】本発明のプログラム生成装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図１３】本発明のプログラム生成装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図１４】本発明のプログラム生成装置における業務パターンに対応する表示画面の一例を示す模式図である。
【図１５】本発明の第２の制御処理手順の一例を示すフローチャートである。
【図１６】本発明の第３の制御処理手順の一例を示すフローチャートである。
【図１７】本発明の第４の制御処理手順の一例を示すフローチャートである。
【図１８】本発明の第５の制御処理手順の一例を示すフローチャートである。
【図１９】本発明の第６の制御処理手順の一例を示すフローチャートである。
【図２０】本発明の第７の制御処理手順の一例を示すフローチャートである。
【図２１】本発明の第８の制御処理手順の一例を示すフローチャートである。
【図２２】本発明の第９の制御処理手順の一例を示すフローチャートである。
【図２３】本発明に係るプログラム生成装置で読み出し可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【符号の説明】
１０１  入力装置
１０２  表示装置
１０３  処理装置（ＣＰＵ，ＲＡＭ，ＲＯＭ）
１０４  外部記憶装置（ハードディスク）
１０５  画面制御部
１１６  業務仕様記述部
１１７  物理仕様記述部
１０６  仕様解析部
１０７  コード生成部
１０８  全体制御部
１０９  入出力テーブル
１１０  業務パターン選択情報
１１１  ｈｔｍｌコード
１１２  ＪＳＰコード
１１３  Ｓｅｒｖｌｅｔコード
１１４  Ｂｅａｎコード
【図１】
2005070879.tif 000003
【図２】
2005070879.tif 000004
【図３】
2005070879.tif 000005
【図４】
2005070879.tif 000006
【図５】
2005070879.tif 000007
【図６】
2005070879.tif 000008
【図７】
2005070879.tif 000009
【図８】
2005070879.tif 000010
【図９】
2005070879.tif 000011
【図１０】
2005070879.tif 000012
【図１１】
2005070879.tif 000013
【図１２】
2005070879.tif 000014
【図１３】
2005070879.tif 000015
【図１４】
2005070879.tif 000016
【図１５】
2005070879.tif 000017
【図１６】
2005070879.tif 000018
【図１７】
2005070879.tif 000019
【図１８】
2005070879.tif 000020
【図１９】
2005070879.tif 000021
【図２０】
2005070879.tif 000022
【図２１】
2005070879.tif 000023
【図２２】
2005070879.tif 000024
【図２３】
2005070879.tif 000025