(57)【要約】【課題】  マスタメンテナンスシステムの開発に際し、設計情報からプログラムを自動生成する手段を提供することで、コーディング作業が不要にし、開発の効率化を図る。【解決手段】  マスタメンテナンスの設計成果物から、マスタメンテナンスシステムの開発に必要な情報を抽出し、抽出した情報をコードに変換する。得られたコードを実行してマスタメンテナンス画面を生成する。【選択図】図３
2010157165.tif 000002
【特許請求の範囲】
【請求項１】
データベースシステムで管理されている各種のマスタデータの編集を行うための情報を生成する情報処理装置であって、
タグ情報によって情報の取得箇所が定義された文書データを取得する第１の取得手段と、
前記タグ情報に従って、前記第１の取得手段で取得した文書データ中に定義されているマスタデータの設計情報を取得する第２の取得手段と、
前記第２の取得手段で取得した設計情報に基づき、マスタデータのエンティティ情報を生成する第１の生成手段と、
前記第１の生成手段で生成したエンティティ情報を有するマスタデータの編集画面の定義情報を前記文書データから取得する第３の取得手段と、
前記第３の取得手段で取得した編集画面の定義情報に基づき、前記第１の生成手段で生成したエンティティ情報を持つマスタデータの編集に用いる画面情報を生成する第２の生成手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記文書データには前記マスタデータの設計情報として、データ種別を一意に識別するＩＤ情報、データタイプ及びデータの入力許容桁数が少なくとも定義されていること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記文書データには前記編集画面の定義情報として、データ名称、項目名、及びコントロールのスタイルが定義されていること
を特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記文書データには、マスタデータの関連情報が設定されており、
前記関連情報に基づき、マスタデータ間の関連定義を生成する第３の生成手段をさらに備えること
を特徴と請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記文書データはスプレッドシートで生成されたデータベースの設計書であること
を特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記文書データは前記編集画面の構成情報がセルの結合情報として定義されていること
を特徴とする請求項５に記載の情報処理装置。
【請求項７】
データベースシステムで管理されている各種のマスタデータの編集を行うための情報を生成する情報処理装置によって行われる情報処理方法であって、
タグ情報によって情報の取得箇所が定義された文書データを取得する第１の取得工程と、
前記タグ情報に従って、前記第１の取得工程で取得した文書データ中に定義されているマスタデータの設計情報を取得する第２の取得工程と、
前記第２の取得工程で取得した設計情報に基づき、マスタデータのエンティティ情報を生成する第１の生成工程と、
前記第１の生成工程で生成したエンティティ情報を有するマスタデータの編集画面の定義情報を前記文書データから取得する第３の取得工程と、
前記第３の取得工程で取得した編集画面の定義情報に基づき、前記第１の生成工程で生成したエンティティ情報を持つマスタデータの編集に用いる画面情報を生成する第２の生成工程と
を備えることを特徴とする情報処理方法。
【請求項８】
コンピュータを、データベースシステムで管理されている各種のマスタデータの編集を行うための情報を生成する情報処理装置として機能させるためのコンピュータプログラムであって、
前記コンピュータを、
タグ情報によって情報の取得箇所が定義された文書データを取得する第１の取得手段と、
前記タグ情報に従って、前記第１の取得手段で取得した文書データ中に定義されているマスタデータの設計情報を取得する第２の取得手段と、
前記第２の取得手段で取得した設計情報に基づき、マスタデータのエンティティ情報を生成する第１の生成手段と、
前記第１の生成手段で生成したエンティティ情報を有するマスタデータの編集画面の定義情報を前記文書データから取得する第３の取得手段と、
前記第３の取得手段で取得した編集画面の定義情報に基づき、前記第１の生成手段で生成したエンティティ情報を持つマスタデータの編集に用いる画面情報を生成する第２の生成手段と
として機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、マスタメンテナンスプログラムの生成に関し、特に２層システムにおけるリッチクライアント技術を用いた編集画面にてマスタメンテナンスを行うプログラムの生成方法に関する。
【背景技術】
【０００２】  マスタメンテナンスでは、ＧＵＩ技術を用いたマスタ情報の編集や取得といった操作を行う。一般的に、マスタメンテナンスプログラムの開発を行う際には、まずテーブル定義と画面定義の設計書を作成し、その後作成された設計書を元にしたプログラム開発を行うことになる。【０００３】  大規模なシステムでは、マスタ情報の数に比例してマスタメンテナンスの画面数が増大し、開発工数が増大する傾向にある。また、仕様変更などによる設計書を修正に応じて、ソースコードを作り直す必要があり、開発工数に与える影響が大きかった。【０００４】  そのため、画面数の増加や仕様変更に対応できるようにマスタメンテナンスの開発を効率化、自動化する方法、およびシステムが求められている。【０００５】  特許文献１には、Ｗｅｂアプリケーションとしてのマスタメンテナンスの自動生成に関する技術が開示されている。【０００６】  特許文献２には、スプレッドシートに記述した入力データからプログラムおよび仕様書の自動生成に関する技術が開示されている。
【特許文献１】  特開２００６−２８５６９０号
【特許文献２】  特開２００３−２６３３１５号
【発明の開示】
【発明が解決しようとする課題】
【０００７】  しかしながら、特許文献１に記載の画面自動生成装置およびそのプログラムにおいては、テーブル定義の変更を自動で画面に反映することが可能であるが、Ｗｅｂアプリケーションであるため、マスタメンテナンスを行うためにはＷｅｂサーバを介する必要があり、２層システムで構成されたケースに対応していない。【０００８】また、特許文献２に記載のプログラム自動生成装置においては、仕様変更に対して入力データを修正することでプログラムおよび設計書が自動的に生成することができるが、生成される設計書のフォーマットが固定されるため、要件によっては自動生成後に設計書のフォーマットを修正する必要がある。【０００９】  本発明は、２層システムのマスタメンテナンスにおいて、プログラム設計書から、設計情報を抽出してプログラムを生成することで開発工数を抑制することを目的とする。また、設計書は一般的にスプレッドシートにて様々なフォーマットで記述されるため、フォーマットを固定することなく汎用的な設計書に対応できるように、抽出する情報をスプレッドシート内に柔軟に定義できるようにする。
【課題を解決するための手段】
【００１０】  上記した目的を達成するために、本発明の情報処理装置は以下の構成を備える。即ち、
データベースシステムで管理されている各種のマスタデータの編集を行うためのプログラムを生成する情報処理装置であって、
タグ情報によって情報の取得箇所が定義された文書データを取得する第１の取得手段と、
前記タグ情報に従って、前記第１の取得手段で取得した文書データ中に定義されているマスタデータの設計情報を取得する第２の取得手段と、
前記第２の取得手段で取得した設計情報に基づき、マスタデータのエンティティ情報を生成する第１の生成手段と、
前記第１の生成手段で生成したエンティティ情報を有するマスタデータの編集画面の定義情報を前記文書データから取得する第３の取得手段と、
前記第３の取得手段で取得した編集画面の定義情報に基づき、前記第１の生成手段で生成したエンティティ情報を持つマスタデータの編集に用いる画面情報を生成する第２の生成手段と
を備えることを特徴とする。【００１１】  上記した目的を達成するために、本発明の情報処理方法は以下の構成を備える。即ち、
データベースシステムで管理されている各種のマスタデータの編集を行うための情報を生成する情報処理装置によって行われる情報処理方法であって、
タグ情報によって情報の取得箇所が定義された文書データを取得する第１の取得工程と、
前記タグ情報に従って、前記第１の取得工程で取得した文書データ中に定義されているマスタデータの設計情報を取得する第２の取得工程と、
前記第２の取得工程で取得した設計情報に基づき、マスタデータのエンティティ情報を生成する第１の生成工程と、
前記第１の生成工程で生成したエンティティ情報を有するマスタデータの編集画面の定義情報を前記文書データから取得する第３の取得工程と、
前記第３の取得工程で取得した編集画面の定義情報に基づき、前記第１の生成工程で生成したエンティティ情報を持つマスタデータの編集に用いる画面情報を生成する第２の生成工程と
を備えることを特徴とする。【００１２】  上記した目的を達成するために、本発明のコンピュータプログラムは以下の構成を備える。即ち、
コンピュータを、データベースシステムで管理されている各種のマスタデータの編集を行うための情報を生成する情報処理装置として機能させるためのコンピュータプログラムであって、
前記コンピュータを、
タグ情報によって情報の取得箇所が定義された文書データを取得する第１の取得手段と、
前記タグ情報に従って、前記第１の取得手段で取得した文書データ中に定義されているマスタデータの設計情報を取得する第２の取得手段と、
前記第２の取得手段で取得した設計情報に基づき、マスタデータのエンティティ情報を生成する第１の生成手段と、
前記第１の生成手段で生成したエンティティ情報を有するマスタデータの編集画面の定義情報を前記文書データから取得する第３の取得手段と、
前記第３の取得手段で取得した編集画面の定義情報に基づき、前記第１の生成手段で生成したエンティティ情報を持つマスタデータの編集に用いる画面情報を生成する第２の生成手段と
として機能させることを特徴とする。
【発明の効果】
【００１３】本発明によれば、マスタメンテナンス開発におけるプログラム設計書から設計情報を抽出してプログラムのコードを生成できる自動生成部、および生成されたコードを実行できるプログラム実行部を提供できる。【００１４】  設計が終了すると、プログラム実行がただちに行えるため、開発工数が抑制される。また、仕様に変更があった場合、設計書を修正することでプログラムに修正が反映されるため、仕様変更に容易に対処することが可能である。【００１５】  特に、スプレッドシートに記述された設計書であれば任意のフォーマットに対応できるため、システム開発者はスプレッドシートを使った自由な設計が可能である。
【発明を実施するための最良の形態】
【００１６】  以下、図面を参照して本発明の実施の形態の一例について説明する。【００１７】  図１は本発明の実施形態の２層システムの構成を示す図である。図１にいて、１０１はデータベースサーバであって、顧客マスタや売上マスタなどの各種マスタデータを記録管理するデータベース機構を備える。【００１８】  クライアント端末１０２−１及び１０２−２（以下、まとめてクライアント端末１０２という）は、マスタメンテナンスプログラムを実行して、ＧＵＩにてデータベースサーバ１０１が管理するデータベースに登録、更新、削除、検索などを要求する。データベースサーバ１０１は要求に応じてそれら処理を行う。【００１９】  １０３は例えばローカルエリアネットワーク（ＬＡＮ）等のネットワークであり、データベースサーバ１０１、クライアント端末１０２を相互にデータ通信可能に接続する。【００２０】  次に、図２を参照して、データベースサーバ１０１、及びクライアント端末１０２のハードウエア構成について説明する。図２は、データベースサーバ１０１、及び情報処理装置１０２のハードウエア構成の一例を示すブロック図である。【００２１】  図２において、２０１はＣＰＵであり、主記憶２０２に格納されているプログラムやデータを用いて、端末（コンピュータ）全体の制御を行うとともに、本コンピュータを適用するデータベースサーバ１０１、若しくはクライアント端末１０２が行う後述する各処理を実行する。【００２２】  ２０２は主記憶であり、二次記憶２０３からロードされたプログラムやデータを一時的に記憶し、ＣＰＵ２０１が各種処理を行うために使用するワークエリアを備える。【００２３】  ２０３は二次記憶であり、ＯＳ（オペレーティングシステム）や、本コンピュータを適用するデータベースサーバ１０１、若しくはクライアント端末１０２が行う後述の処理をＣＰＵ２０１に実行させるためのプログラムやデータ等の各種データを保存しており、これらは必要に応じてＣＰＵ２０１の制御により主記憶２０２に読み出され実行されることになる。【００２４】  ２０４の入力装置は、キーボードやポインティングデバイス等で構成されており、各種の指示をＣＰＵ２０１に入力する。【００２５】  ２０５のディスプレイ装置はＣＲＴや液晶画面等で構成されており、文字や画像等の情報を表示画面上に表示する機能を有する。【００２６】  ２０６はネットワークＩ／Ｆ（インタフェース）であり、コンピュータをネットワーク１０３に接続するためのものである。コンピュータは、このネットワークＩ／Ｆ２０６を介してネットワーク上の他の機器とデータ通信を行うことが可能である。【００２７】  ２０７はシステムバスであり、上述の各種構成要素を相互に接続するバスとして機能する。【００２８】  図３は、本発明におけるプログラム設計書を解析して、マスタメンテナンス画面を生成する情報処理装置３０５と入出力の構成である。【００２９】  ３０１は、スプレッドシートに記述された設計書であり、本発明における情報処理装置へ入力される設計書であり、設計情報とタグ情報が定義されている。３０２は、情報処理装置３０５が備える、設計書からタグ情報を解析して設計情報を抽出し、抽出情報からコード３０３を生成す��機能である。【００３０】  ３０３は、エンティティおよび画面プログラムのソースコードおよび設定ファイルであり、プログラム起動時に情報処理装置３０５のマスタメンテナンス実行部３０４によって読込まれる。３０４は、情報処理装置３０５が備える、コード３０３を読込むマスタメンテナンス実行部で、ユーザインターフェイスの編集画面を生成する機能と、データベースサーバ１０１に対してデータの取得や更新を行うデータアクセス機能である。【００３１】  クライアント端末１０２でマスタメンテナンスを実行するには、コード３０３とマスタメンテナンス実行部３０４のセット（以下、実行プログラム）を二次記憶２０３にインストールする必要がある。図４は、クライアント端末１０２に実行プログラムをインストールしたシステム構成である。【００３２】  クライアント端末１０２にてマスタメンテナンスを実行すると、二次記憶２０３から主記憶２０２にプログラムが読込まれ、ＣＰＵ２０１にて処理が実行され、ディスプレイ装置２０５にマスタデータ編集画面が表示される。編集画面にて、ユーザが一覧取得を要求すると、マスタメンテナンス実行部３０４が一覧取得するためのＳＱＬをデータベース１０１に対して実行し、リストを取得する。取得したリストはマスタメンテナンス実行部３０４によって編集画面に描画される。【００３３】  以上、本発明のシステム構成に関する説明である。【００３４】  以下、本発明における情報処理装置が行う処理内容について説明する。【００３５】  図５は、マスタメンテナンス実行フローであり、特にコード自動生成部３０２に焦点を当てた処理フローである。本処理は例えば、図１のクライアント装置１０２のＣＰＵ２０１により実行される処理である。【００３６】  Ｓ５０１では、アプリケーションの設定情報として、使用するデータベースの種類や、スプレッドシート３０１のファイルパスなどを取得する。Ｓ５０２，５０４では、スプレッドシート３０１に記述されたテーブル定義や画面設計情報を解析して、エンティティ５０３や画面プログラム５０５を作成する。【００３７】  また、Ｓ５０６にてテーブル関連定義を使用するならば、Ｓ５０７にてエンティティ間の関連情報が定義されたテーブル関連定義を解析して、関連エンティティ５０８を作成する。関連を定義することで、マスタメンテナンスにて永続データの各データ間にある関連性を扱うことができる。【００３８】  作成されたエンティティ５０３、画面プログラム５０５および関連エンティティ５０８をコンパイルしてコード３０３が得られ、Ｓ５０９でマスタメンテナンス実行部３０４を実行すると、マスタメンテナンスプログラムが起動される。【００３９】  図６は、マスタメンテナンス実行部３０４にて生成される画面イメージである。６０１はメニュー画面である。６０２は一覧表画面で、エンティティ５０３のリストを表示したものである。６０３は行列表で、Ｎ対Ｎのエンティティ間の関連エンティティ５０８を表示する。【００４０】  Ｓ５０２，Ｓ５０４およびＳ５０７では、各設計書に対しての解析処理を行っている。以下、各ステップの詳細について説明する。【００４１】  図７は、図５のＳ５０２の処理を詳細に説明する処理フローで、テー��ル設計書からエンティティ５０３を作成するフローである。【００４２】  テーブル設計書は、１シートに全テーブルを定義するか、１シートに１テーブルを定義する２つのパターンがあり、コード自動生成部３０２は２つのパターンに対応する。【００４３】  Ｓ５０１で取得した設定情報から、テーブル設計を記述したスプレッドシート３０１のパスが得られるので、Ｓ７０１では取得したパスからスプレッドシート３０１を主記憶２０２に読込む。【００４４】  Ｓ７０２では、読込んだスプレッドシート内からタグ情報を検索する。タグ情報は抽出対象の設計情報を定義するための情報である。図８にて、タグ情報を定義したテーブル設計書の一例を８０１に示す。また、８０２は、使用しているタグ情報の意味を表す。【００４５】  Ｓ７０３では、コード自動生成部３０２がタグ情報の定義に従って設計情報を抽出する。抽出した情報は、主記憶２０２にて保持しておく。【００４６】  Ｓ７０４では、抽出した情報でエンティティ５０３のソースコードを作成する。ソースコードの生成は、雛形のコードテンプレートを主記憶２０２に読込み、プレースホルダに該当する部分をタグ情報の値で置換し、コードを得る。【００４７】  図９は、タグ情報の検索フローである。スプレッドシート内からタグ情報を検索する処理について説明する。この処理は、図７のステップＳ７０２の詳細を示す処理である。【００４８】  図９の説明の前に、まず、タグ情報について説明する。【００４９】  タグ情報は山括弧にて囲まれたキーワードで表現され、２種類のタグ情報に分類される。【００５０】  １．  制御用タグ情報：
コード自動生成部３０２によるシートの読取動作を制御する。キーワードの先頭に「！」を付けて、スプレッドシートの１列目に定義する。以下の４種類がある。
１）読取開始：検索の開始を表す。次のタグを使用する。〈！ＳＴＡＲＴ〉，〈！ＦＯＲＭＡＴ＿ＳＴＡＲＴ〉
２）読取終了：検索の終了を表す。次のタグを使用する。〈！ＥＮＤ〉，〈！ＦＯＲＭＡＴ＿ＥＮＤ〉
３）読取行スキップ：当該行を読込まない。次のタグを使用する。〈！ＣＯＭＭＥＮＴ〉
４）フォーマット定義：列要素を検索する。次のタグを使用する。〈！ＦＯＲＭＡＴ〉，〈！ＶＡＬＵＥ＿ＬＯＣＡＴＯＲ〉【００５１】  ２．  抽出用タグ情報：
セル値を取得する方法を定義する。以下の２種類がある。
１）アドレス指定：指定アドレスのセル値を取得する。書式は、〈タグ名〉＝アドレス、となる。
２）列インデックス指定：指定した列インデックスにあるセル値を取得する。書式は、〈タグ名〉、となる。【００５２】  以下、図９を参照して、タグ情報の検索方法について説明する。【００５３】  Ｓ９０１では、読込んだスプレッドシートから１行分データを読込み、Ｓ９０２では、読取ったデータの１列目から制御用タグ情報を取得する。【００５４】  Ｓ９０３では、制御用タグ情報が「読取終了」ならば、検索処理を終了する。【００５５】  Ｓ９０４，９０５では、制御用タグ情報が「フォーマット定義」ならば、読取ったデータに対して、列要素の検索を行う。列要素から抽出用タグ情報を取得して、得られた抽出用タグ情報の集合を「フォーマット」として主記憶２０２に格納する。【００５５】  フォーマットは、大別すると以下の２種類になる。【００５６】  １．シートフォーマット：
フォーマット定義が〈！ＶＡＬＵＥ＿ＬＯＣＡＴＯＲ〉の場合に定義されるフォーマットで、列要素にはアドレス指定のタグ情報を定義する。シート固有の情報を保持するため、シートフォーマットと呼ぶ。【００５７】  ２．行フォーマット：
フォーマット定義が〈！ＦＯＲＭＡＴ〉の場合に定義されるフォーマットで、列要素には列インデックス指定のタグ情報を定義する。行フォーマットによって、任意の列項目から値が抽出される。１シートに複数の行フォーマットを指定できるので、行フォーマットに名前を付けることができる。行フォーマットの名前は、〈！ＦＯＲＭＡＴ＿ＸＸＸ〉と指定された場合、ＦＯＲＭＡＴ＿以下のＸＸＸがフォーマット名になる。【００５８】  Ｓ９０６で、読取り対象を次行に移動して、再びＳ９０１から開始して、読取終了になるまで処理をループする。【００５９】  図１０は、タグ情報から設計情報を抽出するフローである。その処理について説明する。【００６０】  Ｓ１００１では、シートフォーマットから設計情報を抽出する。シートフォーマットは１シートに１つ存在する。シートフォーマットは、アドレス指定のタグ情報の集合であり、アドレス指定のタグ情報は、タグ名とアドレスのペアである。タグ情報から当該アドレスを参照し、セル値を取得する。集合要素のタグ情報すべてに対して実施する。【００６１】  Ｓ１００２では、行フォーマットから設計情報を抽出する。行フォーマットは、１シートに複数存在する。行フォーマットは名前が付けられており、Ｓ１００３では、行フォーマット名に対応する読取開始の制御用タグ情報を検索する。行フォーマット名がＸＸＸだった場合、読取開始は〈！ＸＸＸ＿ＳＴＡＲＴ〉と定義される。【００６２】  Ｓ１００４では、１行分のデータを取得して、Ｓ１００５では、制御用タグ情報が読取終了であれば、当該行フォーマットによる抽出を終了し、次の行フォーマットにてＳ１００２より処理を開始する。【００６３】  読取終了でなければ、Ｓ１００６にて、行フォーマットから列インデックス指定のタグ情報を取得し、列インデックスが一致する当該行の列から情報を抽出する。これは行フォーマットを構成するタグ情報の数だけ繰り返えされる。【００６４】  Ｓ１００７では、読取位置を次行に移動して、Ｓ１００４から処理を開始する。【００６５】  Ｓ１００８では、抽出情報がタグ名と値のペアといったデータ構造のフォーマット名で管理される。【００６６】  図１１は、以上の処理の実施例である。１１０１は、タグ情報が定義されたスプレッドシートで、１１０２は解析後、抽出情報から得られたデータ構造である。【００６７】  図１２は、画面設計書から画面プログラムを作成するフローであり、画面設計書を読み込み解析することで画面プログラムを作成する。【００６８】  Ｓ１２０１では、画面設計情報を定義したスプレッドシート３０１を読込む。Ｓ１２０２では、読込んだシート内からタグ情報を検索する。図１３で、１３０１はタグ情報を定義した画面設計書の一例である。また、１３０２は、使用しているタグ情報の意味を示す。【００６９】  Ｓ１２０３では、コード自動生成部３０２がタグ情報の定義に従って設計情報を抽出する。抽出した情報は、主記憶２０２にて保持しておく。【００７０】  本発明のマスタメンテナンスは、編集画面のグリッドに多段組みのセルレイアウトを結合セルにて定義できる。Ｓ１２０４では、コード自動生成部３０２にて結合セルを解析することで、多段組みレイアウトの構造を論理���な情報に変換して、設定ファイルにレイアウト構造を出力する。【００７１】  Ｓ１２０５では、抽出した情報で画面プログラム５０５のソースコードを作成する。ソースコードの生成は、雛形のコードテンプレートを主記憶２０２に読込み、プレースホルダに該当する部分をタグ情報の値で置換し、コードを得る。【００７２】  そして画面設計書の数だけ、上記処理を繰返して、画面プログラム５０５を生成する。【００７３】  作成されたソースコードや設定ファイルはコンパイル後、マスタメンテナンス実行部３０４に読込まれて、マスタメンテナンス画面が生成される。【００７４】  図１４は、セルレイアウトを解析する処理フローである。【００７５】  Ｓ１４０１では、画面設計書より、セルレイアウトを定義したタグ情報から当該セル範囲を抽出する。【００７６】  Ｓ１４０２では、結合セルのサイズを取得して、主記憶２０２上に同サイズの二次元配列を割り当てて、論理的な単位セルを作成する。【００７７】  Ｓ１４０３では、主記憶２０２上の論理的な単位セル（二次元配列の要素）に対して、結合セル時の値を割り当てて、各単位セルを結合セル時の値でグルーピングする。【００７８】  Ｓ１４０４では、二次元配列に対して、図１４の「４．セルの値が同一の複数行を削除」に示すように全要素が同一の重複行を削除する。【００７９】  Ｓ１４０５では、二次元配列に対して、図１４の「５．セルの値が同一の複数列を削除」に示すように全要素が同一の重複列を削除する。【００８０】  Ｓ１４０６では、残った二次元配列がセルレイアウトの論理的な構造である。論理構造は、Ｔｏｐ，Ｂｏｔｔｏｍ，Ｌｅｆｔ，Ｒｉｇｈｔで表現する。図１４の「６．セルレイアウトの論理構造を取得」に示すような二次元配列が得られた場合、論理構造は、Ａ＝｛Ｔｏｐ：０，Ｂｏｔｔｏｍ：０，Ｌｅｆｔ：０，Ｒｉｇｈｔ：０｝，Ｂ＝｛Ｔｏｐ：１，Ｂｏｔｔｏｍ：１，Ｌｅｆｔ：０，Ｒｉｇｈｔ：０｝，Ｃ＝｛Ｔｏｐ：０，Ｂｏｔｔｏｍ：１，Ｌｅｆｔ：１，Ｒｉｇｈｔ：１｝となる。【００８１】  解析結果は、画面の設定ファイルに出力する。編集画面のグリッドは、設定ファイルのレイアウトを基に作成される。【００８２】  図１５は、テーブル関連定義から関連エンティティを作成するフローである。【００８３】  関連エンティティとは、テーブル間の関係を定義するエンティティで、関連は以下の３種類に分類される。【００８４】  １．親子：異なるエンティティを同一テーブルに永続化する場合。（エンティティ間の関連は、オブジェクト指向の「継承」で表現される。）【００８５】  ２．リレーション：エンティティ同士のＮ対Ｎの関連を定義。【００８６】  ３．コンポジション：エンティティ同士の１対Ｎの関連を定義。【００８７】  Ｓ１５０１では、テーブル関連情報を定義したスプレッドシート３０１を主記憶２０２に読込み、Ｓ１５０２では、読込んだシート内からタグ情報を検索する。【００８８】  Ｓ１５０３では、タグ情報から設計情報を抽出し、Ｓ１５０４で関連エンティティのソースコードを作成する。ソースコードの生成には雛形のコードテンプレートを使用し、雛形の内容を設計情報で置換して得られたコードを出力する。【００８９】  作成されたソース��ードはコンパイル後、関連エンティティとしてマスタメンテナンス実行部３０４に読み込まれる。【００９０】  以上、本発明における情報処理装置が行う処理内容の説明である。【００９１】  以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。【００９２】  この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。【００９３】  プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。【００９４】  また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。【００９５】  さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。【００９６】  また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。【００９７】  さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【図面の簡単な説明】
【００９８】
【図１】本発明の実施形態の２層システムの構成を示す図である。
【図２】本発明の各種端末のハードウエア構成を示す図である。
【図３】本発明におけるプログラム設計書を解析して、マスタメンテナンス画面を生成する情報処理装置３０５と入出力の構成である。
【図４】クライアント端末１０２に実行プログラムをインストールしたシステム構成である。
【図５】マスタメンテナンス実行フローであり、特にコード自動生成部３０２に焦点を当てた処理フローである。
【図６】マスタメンテナンス実行部３０４にて生成される画面イメージである。
【図７】Ｓ５０２の詳細処理フローで、テーブル設計書からエンティティ５０３を作成するフローである。
【図８】タグ情報を定義したテーブル設計書の一例と、テーブル設計書で使用されるタグ情報の意味の説明を示す図である。
【図９】スプレッドシート内からタグ情報を検索する処理について説明する図である。
【図１０】タグ情報から設計情報を抽出するフローである。
【図１１】タグ情報が定義されたスプレッドシートと、当該シートから抽出される情報を示す図である。
【図１２】画面設計書から画面プログラムを作成するフローである。
【図１３】タグ情報を定義した画面設計書の一例と、画面設計書で使用されるタグ情報の意味の説明を示す図である。
【図１４】セルレイアウトを解析する処理フローである。
【図１５】テーブル関連定義から関連エンティティを作成するフローである。
【符号の説明】
【００９９】１０１  データベースサーバ
１０２−１，１０２−２  クライアント端末
１０３  ネットワーク
２０１  ＣＰＵ
２０２  主記憶
２０３  二次記憶
２０４  入力装置
２０５  ディスプレイ装置
２０６  ネットワークＩ／Ｆ
３０１  設計書（スプレッドシート）
３０２  コード自動生成部
３０３  コード
３０４  マスタメンテナンス実行部
３０５  情報処理装置
５０３  エンティティ
５０５  画面プログラム
５０８  関連エンティティ
６０１  メニュー画面
６０２  一覧表画面
６０３  行列表画面
８０１  テーブル設計書
８０２  テーブル設計書用タグ情報
１１０１  タグ定義済み設計書
１１０２  抽出情報
１３０１  画面設計書
１３０２  画面設計書用タグ情報
【図１】
2010157165.tif 000003
【図２】
2010157165.tif 000004
【図３】
2010157165.tif 000005
【図４】
2010157165.tif 000006
【図５】
2010157165.tif 000007
【図６】
2010157165.tif 000008
【図７】
2010157165.tif 000009
【図８】
2010157165.tif 000010
【図９】
2010157165.tif 000011
【図１０】
2010157165.tif 000012
【図１１】
2010157165.tif 000013
【図１２】
2010157165.tif 000014
【図１３】
2010157165.tif 000015
【図１４】
2010157165.tif 000016
【図１５】
2010157165.tif 000017