(57)【要約】【課題】  アプリケーション開発ツールにおいて、グラフを表示する画面を容易に生成する仕組みを提供する。【解決手段】  グラフを表示する画面を含むアプリケーションを生成する情報処理装置であって、グラフを表示する画面の指示を受け付け、画面の画面情報に含まれる文字列を取得する。文字列を取得できた場合は、当該取得できた文字列に基づいて、グラフの表示に用いるデータを取得するテーブルを決定し、文字列を取得できなかった場合は、選択に従って、グラフの表示に用いるデータを取得するテーブルを決定する。決定したテーブルから取得したデータを用いてグラフを描画する画面情報を生成する。指示を受け付けた画面の画面情報と、生成されたグラフを描画する画面情報とを対応付けることを特徴とする情報処理装置。【選択図】  図９
2017182675.tif 000002
【特許請求の範囲】
【請求項１】
グラフを表示する画面を含むアプリケーションを生成する情報処理装置であって、
前記グラフを表示する画面の指示を受け付ける画面指示受付手段と、
前記画面指示受付手段により指示を受け付けた画面の画面情報に含まれる文字列を取得する文字列取得手段と、
前記グラフの表示に用いるデータを取得するテーブルの選択を受け付けるテーブル選択受付手段と、
前記文字列取得手段により文字列を取得できた場合は、当該取得できた文字列に基づいて、前記グラフの表示に用いるデータを取得するテーブルを決定し、
前記文字列取得手段により文字列を取得できなかった場合は、前記テーブル選択受付手段により受け付けた選択に従って、前記グラフの表示に用いるデータを取得するテーブルを決定するグラフ用データ決定手段と、
前記グラフ用データ決定手段により決定したテーブルから取得したデータを用いて前記グラフを描画する画面情報を生成するグラフ描画画面情報生成手段と、
前記画面指示受付手段により指示を受け付けた画面の画面情報と、前記グラフ描画画面情報生成手段により生成されたグラフを描画する画面情報とを対応付ける対応付手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記テーブル選択受付手段により選択を受け付けたテーブルのカラムから、前記グラフの表示に用いるデータを取得するカラムの選択を受け付けるカラム選択受付手段を更に備え、
前記グラフ用データ決定手段は、
前記文字列取得手段により文字列を取得できた場合は、当該取得できた文字列に基づいて、前記グラフの表示に用いるデータを取得すると決定したテーブルのカラムから前記グラフの表示に用いるデータを取得するカラムを決定し、
前記文字列取得手段により文字列を取得できなかった場合は、前記カラム選択受付手段により受け付けた選択に従って、前記グラフの表示に用いるデータを取得するカラムを決定すること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記グラフの種類の選択を受け付けるグラフ種類選択受付手段と、
前記文字列取得手段により文字列を取得できた場合は、当該取得できた文字列に基づいて、前記グラフの種類を決定し、
前記文字列取得手段により文字列を取得できなかった場合は、前記グラフ種類選択受付手段により受け付けた選択に従って、前記グラフの種類を決定するグラフ種類決定手段と
を更に備え、
前記グラフ描画画面情報生成手段は、
前記グラフ種類決定手段により決定した種類のグラフを描画する画面情報を生成すること
を特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記対応付手段は、
前記画面指示受付手段により指示を受け付けた画面の画面情報に、前記グラフ描画画面情報生成手段により生成されたグラフを描画する画面情報を挿入すること
を特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
グラフを表示する画面を含むアプリケーションを生成する情報処理装置における処理方法であって、
前記情報処理装置が、
前記グラフを表示する画面の指示を受け付ける画面指示受付ステップと、
前記画面指示受付ステップにより指示を受け付けた画面の画面情報に含まれる文字列を取得する文字列取得ステップと、
前記グラフの表示に用いるデータを取得するテーブルの選択を受け付けるテーブル選択受付ステップと、
前記文字列取得ステップにより文字列を取得できた場合は、当該取得できた文字列に基づいて、前記グラフの表示に用いるデータを取得するテーブルを決定し、
前記文字列取得ステップにより文字列を取得できなかった場合は、前記テーブル選択受付ステップにより受け付けた選択に従って、前記グラフの表示に用いるデータを取得するテーブルを決定するグラフ用データ決定ステップと、
前記グラフ用データ決定ステップにより決定したテーブルから取得したデータを用いて前記グラフを描画する画面情報を生成するグラフ描画画面情報生成ステップと、
前記画面指示受付ステップにより指示を受け付けた画面の画面情報と、前記グラフ描画画面情報生成ステップにより生成されたグラフを描画する画面情報とを対応付ける対応付ステップと
を実行することを特徴とする処理方法。
【請求項６】
グラフを表示する画面を含むアプリケーションを生成する情報処理装置で実行可能なプログラムであって、
前記情報処理装置を、
前記グラフを表示する画面の指示を受け付ける画面指示受付手段と、
前記画面指示受付手段により指示を受け付けた画面の画面情報に含まれる文字列を取得する文字列取得手段と、
前記グラフの表示に用いるデータを取得するテーブルの選択を受け付けるテーブル選択受付手段と、
前記文字列取得手段により文字列を取得できた場合は、当該取得できた文字列に基づいて、前記グラフの表示に用いるデータを取得するテーブルを決定し、
前記文字列取得手段により文字列を取得できなかった場合は、前記テーブル選択受付手段により受け付けた選択に従って、前記グラフの表示に用いるデータを取得するテーブルを決定するグラフ用データ決定手段と、
前記グラフ用データ決定手段により決定したテーブルから取得したデータを用いて前記グラフを描画する画面情報を生成するグラフ描画画面情報生成手段と、
前記画面指示受付手段により指示を受け付けた画面の画面情報と、前記グラフ描画画面情報生成手段により生成されたグラフを描画する画面情報とを対応付ける対応付手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グラフを表示する画面を含むアプリケーションを生成するための情報処理装置、情報処理装置の処理方法、およびプログラムに関する。
【背景技術】
【０００２】
従来から、設定された入出力定義やデータモデル定義などからアプリケーションを生成するアプリケーション開発ツールが存在する。
そのアプリケーション開発ツールにおいて、データベースに記憶されているデータを用いて描画したグラフを表示する画面を生成したいという要望があった。
特許文献１には、電子文書に含まれる表示対象の文字列を解析して、作成するグラフの種別を決定する仕組みが示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１３０４０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の仕組みは、電子文書に含まれる表示対象の文字列からグラフの種類を決定するのみである。よって、データベースに存在するテーブルの中からグラフの表示に用いるデータを取得するテーブルを決定することができないため、アプリケーション開発ツールのユーザ（つまり、アプリケーション開発者）がテーブルを選択しなければならないという問題がある。
【０００５】
そこで、本発明の目的は、アプリケーション開発ツールにおいて、グラフを表示する画面を容易に生成する仕組みを提供することである。
【課題を解決するための手段】
【０００６】
グラフを表示する画面を含むアプリケーションを生成する情報処理装置であって、前記グラフを表示する画面の指示を受け付ける画面指示受付手段と、前記画面指示受付手段により指示を受け付けた画面の画面情報に含まれる文字列を取得する文字列取得手段と、前記グラフの表示に用いるデータを取得するテーブルの選択を受け付けるテーブル選択受付手段と、前記文字列取得手段により文字列を取得できた場合は、当該取得できた文字列に基づいて、前記グラフの表示に用いるデータを取得するテーブルを決定し、前記文字列取得手段により文字列を取得できなかった場合は、前記テーブル選択受付手段により受け付けた選択に従って、前記グラフの表示に用いるデータを取得するテーブルを決定するグラフ用データ決定手段と、前記グラフ用データ決定手段により決定したテーブルから取得したデータを用いて前記グラフを描画する画面情報を生成するグラフ描画画面情報生成手段と、前記画面指示受付手段により指示を受け付けた画面の画面情報と、前記グラフ描画画面情報生成手段により生成されたグラフを描画する画面情報とを対応付ける対応付手段とを備えることを特徴とする情報処理装置。
【発明の効果】
【０００７】
本発明によれば、アプリケーション開発ツールにおいて、グラフを表示する画面を容易に生成する仕組みを提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明のシステム構成図の一例を示す図
【図２】プログラム開発装置、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント、アプリケーションサーバのハードウエア構成の一例を示す図
【図３】プログラム開発装置１０１の機能構成の一例を示すブロック図
【図４】プログラム開発装置１０１の構成図の一例を示すブロック図
【図５】リポジトリ定義の一例を示す図
【図６】ＥＲ図の一例を示す図
【図７】データモデル定義４０３の一例を示す図
【図８】レイアウトエディタ画面の一例を示す図
【図９】グラフサジェストダイアログの一例を示す図
【図１０】画面レイアウト編集処理のフローチャートの一例を示す図
【図１１】グラフ描画部品生成処理のフローチャートの一例を示す図
【図１２】アプリケーション生成処理のフローチャートの一例を示す図
【図１３】生成されたアプリケーションを実行した画面の一例を示す図
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
図１は、本発明のシステム構成図の一例を示す図である。
本発明のシステムは、プログラム開発装置（開発者がアプリケーション生成のために使用する情報処理装置）、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント（クライアント装置）、アプリケーションサーバを含む情報処理システムである。
【００１０】
プログラム開発装置１０１は、開発者の操作に従って画面レイアウトおよびデータベース検索指示などを定義する。プログラム開発装置１０１単体では、開発者の入力受付を行い、後述するプログラム開発サーバ１０２に実際のプログラム生成処理、アプリケーション生成処理をさせてもよいし、プログラム開発装置１０１単体でプログラム生成、アプリケーション生成まで処理してもよい。
【００１１】
なお、この実施形態においては、プログラム開発装置１０１で生成するアプリケーションはＷｅｂアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Ｗｅｂ技術による通信を利用しないアプリケーションであってもよい。
【００１２】
プログラム開発サーバ１０２ａ〜１０２ｂ（情報処理装置）は、プログラム開発装置１０１により入力された開発者の指示に従って、プログラムを開発する。プログラム開発サーバ１０２ａはＬＡＮなどのネットワーク１０６内に配置されてもよいし、プログラム開発サーバ１０２ｂはインターネット上やクラウド上に配置されてもよい。
【００１３】
データベースサーバ１０３ａ〜１０３ｂ（情報処理装置）は、開発されたアプリケーションが使用するデータベースであり、また本発明では開発時にも動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ１０３は、プログラム開発装置１０１と同一の装置で構成されていてもよいし、ＬＡＮなどのネットワーク１０６内に配置されてもよい（データベースサーバ１０３ａ）。またインターネット上やクラウド上に配置されてもよい（データベースサーバ１０３ｂ）。また、プログラム開発装置１０１が、プログラム開発サーバ１０２と協調する場合には、プログラム開発サーバ１０２とデータベースサーバ１０３が同一の装置内に構成されていてもよい。
【００１４】
アプリケーションサーバ１０５ａ〜１０５ｂ（情報処理装置）は、プログラム開発装置１０１で開発されたアプリケーションを実行する。ＬＡＮなどのネットワーク１０６内に配置されてもよい（アプリケーションサーバ１０５ａ）し、またインターネット上やクラウド上に配置されてもよい（アプリケーションサーバ１０５ｂ）。また、ネットワーク１０６、インターネット、クラウド上のデータベースサーバ１０３と接続して動作する可能である。
【００１５】
アプリケーションクライアント１０４ａ〜１０４ｂ（情報処理装置）は、アプリケーションサーバ１０５と協調してプログラム開発装置１０１で開発したアプリケーションプログラムを動作させる、ユーザの入力端末である。ＬＡＮなどのネットワーク１０６内に配置されてもよい（アプリケーションクライアント１０４ａ）し、またインターネット上やクラウド上に配置されてもよい（アプリケーションクライアント１０４ｂ）。携帯端末などの情報処理装置であってもよい。
【００１６】
図２は、プログラム開発装置、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント、アプリケーションサーバのハードウエア構成の一例を示す図である。
図２において、ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。
【００１７】
また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステム（ＯＳ）や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時待避領域等として機能する。
【００１８】
入力コントローラ２０５は、入力部２０９からの入力を制御する。この入力部２０９としては、情報処理装置では、キーボード、マウス等のポインティングデバイスが挙げられる。
出力コントローラ２０６は、出力部２１０の表示を制御する。この出力部２１０としては、例えば、ＣＲＴや液晶ディスプレイ等が挙げられる。
【００１９】
外部メモリコントローラ２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ２１１へのアクセスを制御する。加えて、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ２１１としては、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）、スマートメディア等が挙げられる。
通信Ｉ／Ｆコントローラ２０８は、ネットワークを介して外部機器との通信制御処理を実行する。
本発明を実現するためのプログラム２１２は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００２０】
図３は、プログラム開発装置１０１の機能構成の一例を示すブロック図の一例である。
プログラム開発装置１０１は、以下の機能部を備える。
画面指示受付部３０１は、グラフを表示する画面の指示を受け付ける機能部である。
文字列取得部３０２は、画面指示受付部３０１により指示を受け付けた画面の画面情報に含まれる文字列を取得する機能部である。
テーブル選択受付部３０３は、グラフの表示に用いるデータを取得するテーブルの選択を受け付ける機能部である。
【００２１】
グラフ用データ決定部３０４は、文字列取得部３０２により文字列を取得できた場合は、当該取得できた文字列に基づいて、グラフの表示に用いるデータを取得するテーブルを決定し、文字列取得部３０２により文字列を取得できなかった場合は、テーブル選択受付部３０３により受け付けた選択に従って、グラフの表示に用いるデータを取得するテーブルを決定する機能部である。
【００２２】
グラフ描画画面情報生成部３０５は、グラフ用データ決定部３０４により決定したテーブルから取得したデータを用いてグラフを描画する画面情報を生成する機能部である。
【００２３】
対応付部３０６は、画面指示受付部３０１により指示を受け付けた画面の画面情報と、グラフ描画画面情報生成部３０５により生成されたグラフを描画する画面情報とを対応付ける機能部である。
【００２４】
カラム選択受付部３０７は、テーブル選択受付部３０３により選択を受け付けたテーブルのカラムから、グラフの表示に用いるデータを取得するカラムの選択を受け付ける機能部である。
【００２５】
グラフ用データ決定部３０４は、文字列取得部３０２により文字列を取得できた場合は、当該取得できた文字列に基づいて、グラフの表示に用いるデータを取得すると決定したテーブルのカラムからグラフの表示に用いるデータを取得するカラムを決定し、文字列取得部３０２により文字列を取得できなかった場合は、カラム選択受付部３０７により受け付けた選択に従って、グラフの表示に用いるデータを取得するカラムを決定する機能部である。
【００２６】
グラフ種類選択受付部３０８は、グラフの種類の選択を受け付ける機能部である。
グラフ種類決定部３０９は、文字列取得部３０２により文字列を取得できた場合は、当該取得できた文字列に基づいて、グラフの種類を決定し、文字列取得部３０２により文字列を取得できなかった場合は、グラフ種類選択受付部３０８により受け付けた選択に従って、グラフの種類を決定する機能部である。
グラフ描画画面情報生成部３０５は、グラフ種類決定部３０９により決定した種類のグラフを描画する画面情報を生成する機能部である。
【００２７】
対応付部３０６は、画面指示受付部３０１により指示を受け付けた画面の画面情報に、グラフ描画画面情報生成部３０５により生成されたグラフを描画する画面情報を挿入する機能部である。
【００２８】
図４は、プログラム開発装置１０１の構成図の一例を示すブロック図である。
プログラム開発装置１０１は、アプリケーションを開発するユーザが定義した定義ファイルをもとにアプリケーションを自動生成することを目的とした装置である。リポジトリ定義部４００、グラフ描画部４１０、レイアウトエディタ部４２０、アプリケーション生成部４３０により構成される。リポジトリ定義部４００は、データベース定義４０１、アプリケーション定義４０２、データモデル定義４０３、入出力定義４０４、ビジネスプロセス定義４０５、グラフ定義４０６を備える。これらのファイルはユーザによって作られ、後述する図７に示すツリー構造で表示される。
【００２９】
グラフ描画部４１０は、グラフ描画部品４１１、グラフ部品４１２を備える。グラフ描画部品４１１は、アプリケーション開発者によって定義されたグラフ定義４０６に含まれるクエリと指定されたデータモデル定義４０３を用いて、グラフ描画部品生成部４３２によって生成される。生成されたグラフ描画部品４１１は、アプリケーションの実行時にデータベース４５０からデータを取得し、グラフ定義４０６に指定されたグラフ部品４１２を用いてグラフを描画する。グラフ部品４１２には、アプリケーションの実行時の画面に表示されるグラフの種類（例えば、棒グラフ・折れ線グラフ・円グラフ等）を描画する部品が用意されている。
レイアウトエディタ部４２０は、レイアウト描画部４２１、レイアウト部品４２２を備える。
アプリケーション生成部４３０は生成処理部４３１、グラフ描画部品生成部４３２を備える。
【００３０】
次に、レイアウトエディタ部４２０が備えるレイアウト描画部４２１について説明する。レイアウト描画部４２１には、ユーザが作成した入出力定義の内容をグラフィカルな画面として表示する。
【００３１】
次に、アプリケーション生成部４３０について説明する。生成処理部４３１はリポジトリ定義部４００からデータベース定義４０１、アプリケーション定義４０２、データモデル定義４０３、入出力定義４０４、ビジネスプロセス定義４０５を読み込む。生成処理部４３１は読み込んだ定義ファイルからソースコード４４１、ＨＴＭＬ／ＪＳＰ／ＪａｖａＳｃｒｉｐｔ（登録商標）４４２／スタイルシート４４３を生成する。なお、ソースコード４４１は生成処理部によって、生成後にコンパイルが行われる。
【００３２】
図５は、アプリケーションを生成するためのリポジトリ定義のツリー構造の一例を示す図である。
図６は、アプリケーションで利用するデータベースのＥＲ図である。
この実施形態においては、例として、商品データモデル６０１と受注データモデル６０２を用意する。これらのデータモデルはデータベースのテーブルに該当する。なお、商品と受注の多重度は１：ｎである。
【００３３】
商品データモデル６０１のデータ構造は表６０３、受注データモデル６０２のデータ構造は表６０４であるとする。また、受注テーブルには、サンプルデータとして、表６０５のようなデータが記憶されているとする。
【００３４】
図７は、データモデル定義４０３の一例を示す図である。図７のデータモデル定義画面７００は、アプリケーション開発ツールにおける受注データモデル６０２の定義画面である。
【００３５】
図８は、レイアウトエディタ画面の一例を示す図である。アプリケーション開発者は、この画面を利用して、生成するアプリケーションの画面レイアウトを編集する。
図９は、グラフサジェストダイアログの一例を示す図である。
【００３６】
図１０は、画面レイアウト編集処理のフローチャートの一例を示す図である。なお、以下のフローチャートの各ステップは、プログラム開発装置１０１のＣＰＵ２０１が実行する。
【００３７】
ステップＳ１００１において、レイアウトを編集する対象画面の選択を受け付ける。すなわち、ステップＳ１００１は、グラフを表示する画面の指示を受け付ける処理の一例を示すステップである。具体的には、図８のリボジトリ定義ツリー８０１（図８）から、画面レイアウトを編集したい入出力定義４０４の選択を受け付ける。ここでは、ユーザによって入出力定義４０４「ＪＵＣＨＵ＿ＤＡＩＬＹ（受注数量日次推移）」（図８の８０２）がクリックされたとする。
【００３８】
ステップＳ１００２において、ステップＳ１００１にて選択を受け付けた入出力定義４０４の画面情報を取得する。ここでは、入出力定義４０４「ＪＵＣＨＵ＿ＤＡＩＬＹ（受注数量日次推移）」の画面情報を取得する。
【００３９】
ステップＳ１００３において、ステップＳ１００２にて取得した画面情報を用いて、レイアウト編集画面を表示する。ここでは、入出力定義４０４「ＪＵＣＨＵ＿ＤＡＩＬＹ（受注数量日次推移）」の画面情報を用いて、「受注数量日次推移」画面のレイアウト編集画面８０３（図８）を表示する。「受注数量日次推移」画面には、出力部品のキャプション８０４（図８）として“受注数量日次推移”という文字列が配置されていることがわかる。
【００４０】
ステップＳ１００４において、画面部品の編集を受け付ける。具体的には、入出力項目パレット８０５（図８）の入力用部品や出力用部品から任意の部品のドラッグ操作、レイアウト編集画面８０３の任意の場所へのドロップ操作を受け付ける。これにより、ユーザが所望するアプリケーションの画面レイアウトを作成することができる。
【００４１】
ステップＳ１００５において、グラフ配置指示を受け付ける。具体的には、入出力項目パレット８０５からグラフ描画部品のアイコン８０６のドラッグ操作、レイアウト編集画面８０３の任意の場所へのドロップ操作を受け付ける。これにより、ユーザが所望する位置にグラフを配置することができる。
ステップＳ１００６において、グラフ描画部品を生成する。この処理の詳細は、図１１にて説明する。
【００４２】
ステップＳ１００７において、ステップＳ１００６にて生成したグラフ描画部品を配置する。つまり、レイアウト編集画面にて編集中の画面に生成したグラフ描画部品を配置することにより、編集中の画面情報とグラフ描画部品とを対応付ける。すなわち、ステップＳ１１０７は、指示を受け付けた画面の画面情報と、生成されたグラフを描画する画面情報とを対応付ける処理の一例を示すステップである。また、ステップＳ１１０７は、指示を受け付けた画面の画面情報に、生成されたグラフを描画する画面情報を挿入する処理の一例を示すステップである。
ステップＳ１００８において、レイアウト編集画面にて編集した画面情報を外部メモリ２１１に記憶する。
以上で、図１０の説明を終了する。
【００４３】
図１１は、グラフ描画部品生成処理のフローチャートの一例を示す図である。
ステップＳ１１０１において、画面情報に含まれる文字列を取得し、取得できた場合はステップＳ１１０２に進み、取得できなかった場合はステップＳ１１１２に進む。すなわち、ステップＳ１００１は、グラフを表示する画面の指示を受け付ける処理の一例を示すステップである。具体的には、レイアウト編集を行っている画面情報から、出力部品情報を取得し、含まれる文字列を取得する。例えば、図８の「受注数量日次推移」画面のレイアウト編集画面８０３には、出力部品のキャプション８０４として“受注数量日次推移”という文字列が配置されているため、文字列“受注数量日次推移”を取得し、判定する。
【００４４】
なお、本実施形態においては、出力部品情報に含まれる文字列を取得するとしたが、この方法に限定するものではなく、例えば、画面情報のファイル名やタイトル名などから文字列を取得する方法であってもよい。
【００４５】
ステップＳ１１０２において、ステップＳ１１０１にて取得した文字列を解析する。具体的には、取得した文字列を単語ごとに分割する。例えば、取得した文字列が“受注数量日次推移”の場合、「受注」「数量」「日次」「推移」という単語に分割する。
【００４６】
ステップＳ１１０３において、ステップＳ１１０１にて取得した解析結果に従って、グラフの基となる対象テーブル（データモデル）を特定し、特定できた場合はステップＳ１１０４に進み、特定できなかった場合はステップＳ１１０５に進む。具体的には、解析により取得された単語を含むテーブルを特定する。例えば、解析結果である「受注」「数量」「日次」「推移」という単語は、商品データモデル６０１のデータ構造６０３のカラム名には含まれていないが、受注データモデル６０２のデータ構造６０４のカラム名には「受注」「数量」が含まれている。よって、解析により取得された単語を最も多く含むデータモデル（受注データモデル６０２）をグラフの基となる対象テーブルとして特定する。
【００４７】
なお、本実施形態においては、解析により取得された単語を最も多く含むデータモデルをグラフの基となる対象テーブルとしたが、この方法に限定するものではなく、外部メモリ２１１に類似語の辞書を備えておき、解析により取得された単語の類似語を最も多く含むデータモデルを対象デーブルとする方法等であってもよい。
【００４８】
ステップＳ１１０４において、ステップＳ１１０３にて特定したテーブルを表示する（図９の９１０）。例えば、受注データモデル６０２を表示する。これにより、アプリケーション開発ツールにおいて、アプリケーション開発者がデータベースに存在するテーブルの中からグラフの表示に用いるデータを取得する「対象テーブル」を選択しなければならないという問題を解決することができる。
【００４９】
ステップＳ１１０５において、グラフの基となる対象テーブルの選択を受け付ける。すなわち、ステップＳ１１０５は、グラフの表示に用いるデータを取得するテーブルの選択を受け付ける処理の一例を示すステップである。つまり、ステップＳ１１０３にて特定できた場合であっても、ユーザの操作に従って、グラフの基となる対象テーブルを変更することができる。例えば、図９の９１０にて「キャンセル」ボタンの押下を受け付けた場合、このステップＳ１１０５を実行し、「ＯＫ」ボタンの押下を受け付けた場合、このステップＳ１１０５を実行しないとする。
【００５０】
すなわち、ステップＳ１１０３〜ステップＳ１１０５は、文字列を取得できた場合は、当該取得できた文字列に基づいて、グラフの表示に用いるデータを取得するテーブルを決定し、文字列を取得できなかった場合は、受け付けた選択に従って、グラフの表示に用いるデータを取得するテーブルを決定する処理の一例を示すステップである。
【００５１】
ステップＳ１１０６において、ステップＳ１１０１にて取得した解析結果に従って、グラフの基となる対象テーブルの対象カラムを特定し、特定できた場合はステップＳ１１０７に進み、特定できなかった場合はステップＳ１１０８に進む。具体的には、解析により取得された単語を含むカラムを特定する。例えば、解析結果である「受注」「数量」「日次」「推移」という単語は、受注データモデル６０２のデータ構造６０４から、「受注ＩＤ」「数量」にそれぞれ含まれている。よって、解析により取得された単語を含むカラムをグラフの基となる対象カラムとして特定する。
【００５２】
なお、本実施形態においては、解析により取得された単語を含むカラムをグラフの基となる対象カラムとしたが、この方法に限定するものではなく、外部メモリ２１１に類似語の辞書を備えておき、解析により取得された単語の類似語を最も多く含むカラムを対象カラムとする方法等であってもよい。
【００５３】
ステップＳ１１０７において、ステップＳ１１０６にて特定したカラムを表示する（図９の９２０）。例えば、受注データモデル６０２のカラム「受注ＩＤ」「数量」を表示する。これにより、アプリケーション開発ツールにおいて、アプリケーション開発者がデータベースに存在するテーブルの中からグラフの表示に用いるデータを取得する対象テーブルの「対象カラム」を選択しなければならないという問題を解決することができる。
【００５４】
ステップＳ１１０８において、グラフの基となる対象カラムの選択を受け付ける。すなわち、ステップＳ１１０８は、選択を受け付けたテーブルのカラムから、グラフの表示に用いるデータを取得するカラムの選択を受け付ける処理の一例を示すステップである。つまり、ステップＳ１１０６にて特定できた場合であっても、ユーザの操作に従って、グラフの基となる対象カラムを変更することができる。例えば、図９の９２０にて「キャンセル」ボタンの押下を受け付けた場合、このステップＳ１１０８を実行し、「ＯＫ」ボタンの押下を受け付けた場合、このステップＳ１１０８を実行しないとする。
【００５５】
すなわち、ステップＳ１１０６〜ステップＳ１１０８は、文字列を取得できた場合は、当該取得できた文字列に基づいて、グラフの表示に用いるデータを取得すると決定したテーブルのカラムからグラフの表示に用いるデータを取得するカラムを決定し、文字列を取得できなかった場合は、受け付けた選択に従って、グラフの表示に用いるデータを取得するカラムを決定する処理の一例を示すステップである。
【００５６】
ステップＳ１１０９において、ステップＳ１１０１にて取得した解析結果に従って、グラフの種類（例えば、棒グラフ・折れ線グラフ・円グラフ等）を特定し、特定できた場合はステップＳ１１１０に進み、特定できなかった場合はステップＳ１１１１に進む。具体的には、解析により取得された単語から、描画するグラフの種類を特定する。
【００５７】
例えば、解析結果である「日次」「推移」という単語から、月毎の推移をグラフとして描画したいと捉え、「折れ線グラフ」と特定する。一方、「割合」「シェア」などの単語があれば「円グラフ」と特定する。
【００５８】
なお、本実施形態においては、解析により取得された単語に従って、グラフの種類を決定するとしたが、この方法に限定するものではなく、ステップＳ１１０６にて特定したカラムのカラム名に従って、グラフの種類を決定する方法等であってもよい。例えば、「数量」というカラム名から「棒グラフ」というように特定してもよい。
【００５９】
ステップＳ１１１０において、ステップＳ１１０９にて特定したグラフの種類を表示する（図９の９３０）。例えば、「折れ線グラフ」を表示する。これにより、アプリケーション開発ツールにおいて、アプリケーション開発者が表示する「グラフの種類」を選択しなければならないという問題を解決することができる。
【００６０】
ステップＳ１１１１において、グラフの種類の選択を受け付ける。すなわち、ステップＳ１１１１は、グラフの種類の選択を受け付ける処理の一例を示すステップである。つまり、ステップＳ１１０９にて特定できた場合であっても、ユーザの操作に従って、グラフの種類を変更することができる。例えば、図９の９３０にて「キャンセル」ボタンの押下を受け付けた場合、このステップＳ１１１１を実行し、「ＯＫ」ボタンの押下を受け付けた場合、このステップＳ１１１１を実行しないとする。
【００６１】
すなわち、ステップＳ１１０９〜ステップＳ１１１１は、文字列を取得できた場合は、当該取得できた文字列に基づいて、グラフの種類を決定し、文字列を取得できなかった場合は、受け付けた選択に従って、グラフの種類を決定する処理の一例を示すステップである。
【００６２】
なお、本実施形態においては、ステップＳ１１０１にて取得した解析結果に従って、「対象テーブル」「対象カラム」「グラフの種類」を特定し、それぞれをステップＳ１１０４、ステップＳ１１０７、ステップＳ１１１０にて表示するとしたが、これに限定するものではなく、特定した「対象テーブル」「対象カラム」「グラフの種類」をまとめて表示する方法や、特定した「対象テーブル」「対象カラム」「グラフの種類」を用いてグラフのプレビューを表示する方法等であってもよい。
【００６３】
以上により、アプリケーション開発ツールにおいて、アプリケーション開発者がデータベースに存在するテーブルの中からグラフの表示に用いるデータを取得する「対象テーブル」「対象カラム」「グラフの種類」を選択しなければならないという問題を解決することができる。
ステップＳ１１１２において、グラフの基となる対象テーブルの選択を受け付ける。
ステップＳ１１１３において、グラフの基となる対象カラムの選択を受け付ける。
ステップＳ１１１４において、グラフの種類の選択を受け付ける。
【００６４】
ステップＳ１１１５において、決定したグラフの基となるテーブル、カラム、グラフ種類に従って、グラフを描画する部品を生成する。すなわち、ステップＳ１１１５は、決定したテーブルから取得したデータを用いてグラフを描画する画面情報を生成する処理の一例を示すステップである。具他的には、アプリケーションの実行により、現在編集している画面の表示が要求された場合、グラフを描画するプログラムを生成する。つまり、対象テーブルの対象カラムからデータを取得するクエリを生成する部品、およびクエリによって取得したデータを用いてグラフとして描画するグラフ描画プログラムを生成する部品をそれぞれ生成する。
以上で、図１１の説明を終了する。
【００６５】
図１２は、アプリケーション生成のフローチャートの一例を示す図である。
ステップＳ１２０１において、ユーザによるアプリケーション生成指示を受け付けると、外部メモリ２１１に記憶されているリポジトリ定義部４００のアプリケーション定義４０２をＲＡＭ２０２に読み込む。
ステップＳ１２０２において、外部メモリ２１１に記憶されているリポジトリ定義部４００のデータモデル定義４０３をＲＡＭ２０２に読み込む。
ステップＳ１２０３において、外部メモリ２１１に記憶されているリポジトリ定義部４００の入出力定義４０４をＲＡＭ２０２に読み込む。
ステップＳ１２０４において、外部メモリ２１１に記憶されているリポジトリ定義部４００のビジネスプロセス定義４０５をＲＡＭ２０２に読み込む。
ステップＳ１２０５において、外部メモリ２１１に記憶されているリポジトリ定義部４００のデータベース定義４０１をＲＡＭ２０２に読み込む。
ステップＳ１２０６において、ＲＡＭ２０２に読み込んだリポジトリ定義部４００の各定義・各ファイルから情報を取得し、ソースコードを生成する。
【００６６】
なお、生成されたソースコードにはプログラミング言語が記載されたファイルに加え、ＨＴＭＬ、ＪＳＰ、ＪａｖａＳｃｒｉｐｔ（登録商標）等のＷｅｂアプリケーションの提供に利用されるファイルも含まれる。
【００６７】
ステップＳ１２０７において、ステップＳ１２０６にて生成したソースコードをアプリケーションサーバ１０５に配置（デプロイ）する。これにより、アプリケーションサーバ１０５上でアプリケーションが動作するようになる。
以上で、図１２の説明を終了する。
【００６８】
次に、図１２のアプリケーション生成フローチャートにて生成したアプリケーションの実行画面について説明する。
図１３は、生成されたアプリケーションを実行した画面の一例を示す図である。このアプリケーションの実行画面１３００は、図８および図９のレイアウト編集画面で編集した「受注数量日次推移」画面の画面情報が、このアプリケーションを実行するアプリケーションクライアント１０４から要求されることにより、アプリケーションサーバ１０５にて「受注数量日次推移」画面の画面情報に対応付けられたグラフ描画部品が実行され、描画されたグラフがアプリケーションクライアント１０４に送信され、アプリケーションクライアント１０４にてグラフ１３０１が表示される。
【００６９】
具体的には、アプリケーションサーバ１０５にてグラフ描画部品が実行されると、グラフ描画部品に対応付けられたクエリが実行され、クエリによって取得したデータを用いてグラフ１３０１を描画する。
以上により、アプリケーション開発ツールにおいて、グラフを表示する画面を容易に生成する仕組みを提供することができる。
【００７０】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【００７１】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【００７２】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【００７３】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７５】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００７６】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【００７７】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００７８】
１０１  プログラム開発装置
１０２  プログラム開発サーバ
１０３  データベースサーバ
１０４  アプリケーションクライアント
１０５  アプリケーションサーバ
１０６  ネットワーク
【図１】
2017182675.tif 000003
【図２】
2017182675.tif 000004
【図３】
2017182675.tif 000005
【図４】
2017182675.tif 000006
【図５】
2017182675.tif 000007
【図６】
2017182675.tif 000008
【図７】
2017182675.tif 000009
【図８】
2017182675.tif 000010
【図９】
2017182675.tif 000011
【図１０】
2017182675.tif 000012
【図１１】
2017182675.tif 000013
【図１２】
2017182675.tif 000014
【図１３】
2017182675.tif 000015