JP2005148976A - Program generating device, program generating method, program, and recording medium - Google Patents

Program generating device, program generating method, program, and recording medium Download PDF

Info

Publication number
JP2005148976A
JP2005148976A JP2003383415A JP2003383415A JP2005148976A JP 2005148976 A JP2005148976 A JP 2005148976A JP 2003383415 A JP2003383415 A JP 2003383415A JP 2003383415 A JP2003383415 A JP 2003383415A JP 2005148976 A JP2005148976 A JP 2005148976A
Authority
JP
Japan
Prior art keywords
program
database
code
input
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003383415A
Other languages
Japanese (ja)
Other versions
JP4444634B2 (en
Inventor
Hiroyuki Nakagawa
裕之 中川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon IT Solutions Inc
Original Assignee
Canon Software Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Software Inc filed Critical Canon Software Inc
Priority to JP2003383415A priority Critical patent/JP4444634B2/en
Publication of JP2005148976A publication Critical patent/JP2005148976A/en
Application granted granted Critical
Publication of JP4444634B2 publication Critical patent/JP4444634B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To construct a Web application program cfeation environment excellent in productivity and maintainability by automatically creating a Web application program capable of accessing the table of a distributed DB from the framework of task specifications by dynamically switching connection to the DB according to the selection of a user, and automatically creating the Web application program capable of accessing the table from the framework of the task specifications by dynamically switching different tables in the same DB according to the selection of the user. <P>SOLUTION: A code creating part 107 creates "program codes 112 to 114 capable performing an access by dynamically switching a plurality of tables" based on task specifications for defining each of the plurality of tables on a DB (the same DB or distributed DB) designated by an input/output table 109 in an external storage device 104" and also based on connection information for connection to the DB designated by log-in information 110. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、ウェブ(Web)アプリケーション開発支援システムにおいて、ユーザが動的にデータベース(DB)の切り替えが可能なウェブアプリケーションプログラムの一連のプログラムコードを業務仕様という枠組みの中から自動生成可能なプログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体に関するものである。   The present invention relates to a web application development support system, in which a program generation that can automatically generate a series of program codes of a web application program that allows a user to dynamically switch a database (DB) from within a framework of business specifications. The present invention relates to an apparatus, a program generation method, a program, and a recording medium.

従来、リレーショナルデータベースシステムなど、複数のテーブルに分かれて格納されているデータベース(DB)システムの場合、DBを構成する複数の関連あるテーブルに対してデータ入力を行わなければならなかった。   Conventionally, in the case of a database (DB) system stored in a plurality of tables such as a relational database system, it has been necessary to input data to a plurality of related tables constituting the DB.

また、膨大なデータを扱い、しかも適切に所望のデータにアクセスするためには、DB固有のデータ構造を意識する必要があった。   Further, in order to handle enormous amounts of data and appropriately access desired data, it is necessary to be aware of the data structure unique to the DB.

この問題に対し特開平6-68151号公報(特許文献1)の「データベースアクセス方法および装置」では、DBのデータ構造を論理的に構築したスキーマを管理し表示するブラウザ手段により、DBアクセス手段を備える方法を提案している。この方法により、ユーザはDBの構造を意識することなく、効率よくDBの操作が行えるようになった。
特開平6-68151号公報
With respect to this problem, in “Database access method and apparatus” of Japanese Patent Laid-Open No. 6-68151 (Patent Document 1), the DB access means is controlled by browser means for managing and displaying a schema that logically constructs the data structure of the DB. Proposes a way to prepare. With this method, the user can efficiently operate the DB without being aware of the DB structure.
JP-A-6-68151

しかしながら、上記特許文献1では、テーブルの切り替えが行えるのは単一のDBシステム内のリレーションが張られているテーブルのみとなっており、分散型DBに対してのアクセス手段については何ら考慮がなされていない。   However, in the above-mentioned patent document 1, the table can be switched only for a table having a relation in a single DB system, and no consideration is given to access means for the distributed DB. Not.

そのため、対象となるDBシステム以外のDBにアクセスしようとする場合、そのDB用のアプリケーションを一から開発しなくてはならないという問題点があった。   Therefore, when trying to access a DB other than the target DB system, there is a problem in that an application for the DB must be developed from scratch.

本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、データベースへアクセスするウェブアプリケーションプログラムを生成するプログラム生成装置(プログラム生成方法)において、指定されるデータベース(同一のデータベース又は分散データベース)上の複数のテーブルをそれぞれ定義する複数の定義情報、及び前記データベースへ接続するための接続情報に基づいて「前記複数のテーブルを動的に切り替えてアクセス可能なプログラムコード」を生成することにより、分散したデータベースに対する接続をユーザの選択により動的に切り替え、該データベースのテーブルへのアクセス処理が可能なウェブアプリケーションプログラム、又は同一のデータベース内の異なるテーブルをユーザの選択により動的に切り替えてアクセス処理が可能なウェブアプリケーションプログラムを業務仕様の枠組みから選択的に自動生成でき、生産性と保守性に優れたウェブアプリケーションプログラムの領域を広げることができる優れたプログラム生成環境を構築できるプログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体を提供することである。   The present invention has been made to solve the above-described problems, and an object of the present invention is to specify a database (identical to a specified database) in a program generation apparatus (program generation method) that generates a web application program for accessing the database. Based on a plurality of definition information respectively defining a plurality of tables on the database or distributed database) and connection information for connecting to the database "program code that can be accessed by dynamically switching the plurality of tables" By dynamically generating connections, a connection to a distributed database is dynamically switched according to the user's selection, and a web application program capable of accessing the database table or a different table in the same database is moved according to the user's selection. In Web application programs that can be accessed and replaced can be automatically and selectively generated from the framework of business specifications, and an excellent program generation environment that can expand the area of web application programs with excellent productivity and maintainability can be constructed. A program generation apparatus, a program generation method, a program, and a recording medium are provided.

本発明の第1の発明は、データベースへアクセスするウェブアプリケーションプログラムを生成するプログラム生成装置において、データベース上の複数のテーブルをそれぞれ定義する複数の定義情報を記憶する第1の記憶手段(図1に示す外部記憶装置104内の入出力テーブル109,図4)と、前記データベースへ接続するための接続情報を記憶する第2の記憶手段(図1に示す外部記憶装置104内のログイン情報110,図5)と、前記第1の記憶手段に記憶される複数の定義情報、及び前記第2の記憶手段に記憶される前記接続情報に基づいて「前記複数のテーブルを動的に切り替えてアクセス可能なプログラムコード(図1に示すJSPコード112,サーブレットコード113,Beanコード114)」を生成する生成手段(図1に示す処理装置103内のコード生成部107,図10〜図15に示す各ステップ)とを有することを特徴とする。   According to a first aspect of the present invention, there is provided a program generation device for generating a web application program for accessing a database. First storage means for storing a plurality of definition information respectively defining a plurality of tables on the database (see FIG. 1). The input / output table 109 in the external storage device 104 shown in FIG. 4) and second storage means for storing connection information for connecting to the database (login information 110 in the external storage device 104 shown in FIG. 5) and the plurality of definition information stored in the first storage unit and the connection information stored in the second storage unit, “the plurality of tables can be dynamically switched and accessed. Generator for generating program code (JSP code 112, servlet code 113, and Bean code 114 shown in FIG. 1) " And having a (code generation unit 107 of the processing apparatus 103 shown in FIG. 1, the steps shown in FIGS. 10 to 15).

本発明の第2の発明は、前記データベースは、異なる複数のデータベースであり(図6,図8に示す分散したDBシステム)、前記データベース上の複数のテーブルは、前記異なる複数のデータベース上にそれぞれ配置されるものであり、前記第2の記憶手段は、前記複数のデータベースへ接続するための複数の接続情報をそれぞれ記憶することを特徴とする。   In the second invention of the present invention, the database is a plurality of different databases (distributed DB system shown in FIGS. 6 and 8), and a plurality of tables on the database are respectively stored on the plurality of different databases. The second storage means stores a plurality of pieces of connection information for connecting to the plurality of databases, respectively.

本発明の第3の発明は、前記データベース上の複数のテーブルは、同一のデータベース(図7に示すDBシステム)上に配置されることを特徴とする。   The third invention of the present invention is characterized in that the plurality of tables on the database are arranged on the same database (DB system shown in FIG. 7).

本発明の第4の発明は、前記データベースは、ローカル接続可能なデータベース(図7に示す内部DBシステム)又はリモート接続可能なデータベース(図8に示す外部DBシステム)を含むことを特徴とする。   According to a fourth aspect of the present invention, the database includes a locally connectable database (internal DB system shown in FIG. 7) or a remotely connectable database (external DB system shown in FIG. 8).

本発明の第5の発明は、前記異なる複数のデータベースは、ローカル接続可能なデータベース及びリモート接続可能なデータベース(図7に示す内部DBシステム及び外部DBシステム)を含むことを特徴とする。   According to a fifth aspect of the present invention, the plurality of different databases include a locally connectable database and a remotely connectable database (internal DB system and external DB system shown in FIG. 7).

本発明の第6の発明は、データベースへアクセスするウェブアプリケーションプログラムを生成するためのプログラム生成方法において、指定されるデータベース上の複数のテーブルをそれぞれ定義する複数の定義情報、及び前記データベースへ接続するための接続情報に基づいて「前記複数のテーブルを動的に切り替えてアクセス可能なプログラムコード」を生成する生成工程(図10〜図15に示す各ステップ)を有することを特徴とする。   According to a sixth aspect of the present invention, there is provided a program generation method for generating a web application program for accessing a database, a plurality of definition information defining a plurality of tables on a specified database, and connection to the database And a generation process (each step shown in FIGS. 10 to 15) for generating “program code that can be accessed by dynamically switching the plurality of tables” based on the connection information.

本発明の第7の発明は、請求項6に記載されたプログラム生成方法を実行するためのプログラムであることを特徴とする。   A seventh aspect of the present invention is a program for executing the program generation method according to the sixth aspect.

本発明の第8の発明は、請求項6に記載されたプログラム生成方法を実行するためのプログラムを記録媒体にコンピュータが読み取り可能に記憶させたことを特徴とする。   According to an eighth aspect of the present invention, a program for executing the program generating method according to the sixth aspect is stored in a recording medium so as to be readable by a computer.

本発明によれば、データベースへアクセスするウェブアプリケーションプログラムを生成するプログラム生成装置(プログラム生成方法)において、指定されるデータベース(同一のデータベース又は分散データベース)上の複数のテーブルをそれぞれ定義する複数の定義情報、及び前記データベースへ接続するための接続情報に基づいて「前記複数のテーブルを動的に切り替えてアクセス可能なプログラムコード」を生成するので、分散したデータベースに対する接続をユーザの選択により動的に切り替え、該データベースのテーブルへのアクセス処理が可能なウェブアプリケーションプログラム、又は同一のデータベース内の異なるテーブルをユーザの選択により動的に切り替えてアクセス処理が可能なウェブアプリケーションプログラムを業務仕様の枠組みから選択的に自動生成でき、生産性と保守性に優れたウェブアプリケーションプログラムの領域を広げることができる優れたプログラム生成環境を構築できる等の効果を奏する。   According to the present invention, in a program generation apparatus (program generation method) for generating a web application program that accesses a database, a plurality of definitions that respectively define a plurality of tables on a specified database (same database or distributed database) Based on the information and connection information for connecting to the database, “program code that can be accessed by dynamically switching the plurality of tables” is generated. Web application program capable of switching and accessing the database table, or a web application program capable of dynamically switching different tables in the same database by user selection. The can selectively automatically generated from the framework of business specifications, the effect of such build and productivity maintenance with excellent excellent program generation environment can be widened area of the web application program.

以下、図を参照して本発明のアプリケーション開発システムについて説明する。   The application development system of the present invention will be described below with reference to the drawings.

図1は、本発明の一実施形態を示すプログラム生成装置の構成を示すブロック図である。   FIG. 1 is a block diagram showing a configuration of a program generation apparatus showing an embodiment of the present invention.

図において、101は入力装置で、キーボードやマウス等のポインティングデバイス等に相当し、業務仕様情報(データ項目のデータベースへの配置とデータ項目間の関係、即ちあるデータがどのような条件のもとにどのようなデータから求められるかを示す情報等)の入力を行うことが可能である。   In the figure, reference numeral 101 denotes an input device, which corresponds to a pointing device such as a keyboard or a mouse, and has business specification information (arrangement of data items in a database and the relationship between data items, that is, under what conditions certain data is present) It is possible to input information indicating what kind of data is to be obtained.

102は表示装置で、CRT,LCD等で構成され、業務仕様情報の入力画面や、該入力画面から入力された業務仕様情報、生成されたプログラムコード等を表示可能である。104はハードディスク等の外部記憶装置で、入力された業務仕様(データベース上の複数のテーブルをそれぞれ定義した定義情報)を記憶するための入出力テーブル109、入力されたデータベースへ接続するための接続情報を記憶するログイン情報110,入力された生成するウェブアプリケーションのアプリケーション名111,生成されたプログラムコード(JSPコード112,サーブレット(Servlet)コード113,Beanコード114)等を記憶するものである。   Reference numeral 102 denotes a display device, which is composed of a CRT, LCD, or the like, and can display a business specification information input screen, business specification information input from the input screen, a generated program code, and the like. Reference numeral 104 denotes an external storage device such as a hard disk, an input / output table 109 for storing input business specifications (definition information defining each of a plurality of tables on the database), and connection information for connecting to the input database The login information 110 is stored, the application name 111 of the input web application to be generated, the generated program code (JSP code 112, servlet code 113, bean code 114), and the like are stored.

103は処理装置で、CPU,ROM,RAM等から構成され、CPUがROM,外部記憶装置104又はその他の記録媒体に格納されるプログラムをRAM上にロードして実行することにより実現されるものであり、画面制御部105,コード生成部107を備える。   A processing unit 103 includes a CPU, a ROM, a RAM, and the like, and is realized by the CPU loading and executing a program stored in the ROM, the external storage device 104, or other recording medium on the RAM. And includes a screen control unit 105 and a code generation unit 107.

画面制御部105は、入力装置101から業務仕様情報の入力を行うために表示装置102の画面(不図示)を制御する業務仕様記述部116を有する。   The screen control unit 105 includes a business specification description unit 116 that controls a screen (not shown) of the display device 102 in order to input business specification information from the input device 101.

コード生成部107は、入力装置101から入力された又は外部記憶装置104から読み出された業務仕様情報に基づいてプログラムコード(JSPコード112,サーブレット(Servlet)コード113,Beanコード114)を生成し、外部記憶装置104に記憶させる。   The code generation unit 107 generates a program code (JSP code 112, servlet code 113, bean code 114) based on the business specification information input from the input device 101 or read from the external storage device 104. And stored in the external storage device 104.

108は全体制御部で、画面制御部105,コード生成部107等の各部の制御を行う。   An overall control unit 108 controls each unit such as the screen control unit 105 and the code generation unit 107.

図2は、図1に示したコード生成部107によって生成したサーブレット、JSP、およびBeanを利用したウェブアプリケーションシステムの全体構成の一例を示す図である。   FIG. 2 is a diagram showing an example of the entire configuration of a web application system using a servlet, JSP, and Bean generated by the code generation unit 107 shown in FIG.

コード生成部107によって生成されたサーブレット、JSP、およびBeanは、それぞれ実行可能な状態で、サーバ304側のアプリケーションサーバ306上に配置される。   The servlet, JSP, and Bean generated by the code generation unit 107 are arranged on the application server 306 on the server 304 side in an executable state.

このWebアプリケーションシステムは、クライアント301からウェブブラウザ302によって利用される。ウェブブラウザ302からJSP309にアクセスすることにより、HTMLページ303を生成し、クライアント301側に返送する。そして、ウェブブラウザ302上には、JSP309から送信されるHTMLページ303が表示される。   This Web application system is used by the Web browser 302 from the client 301. By accessing the JSP 309 from the web browser 302, an HTML page 303 is generated and returned to the client 301 side. Then, an HTML page 303 transmitted from the JSP 309 is displayed on the web browser 302.

また、Webブラウザ302からのリクエストは、HTTP経由でサーバ304側に送信される。サーバ304にはHTTPサーバ305とアプリケーションサーバ306があり、アプリケーションサーバ306にはサーブレットやJSPの実行環境が含まれている。   A request from the Web browser 302 is transmitted to the server 304 side via HTTP. The server 304 includes an HTTP server 305 and an application server 306, and the application server 306 includes a servlet and JSP execution environment.

サーバ304側にリクエストが送信されると、リクエストに応じて該当するサーブレット307が起動される。サーブレット307は、対応するBean308に処理を要求する。さらに、Bean308は、サーブレット307からの要求に応じてDBアクセスオブジェクト310a,DBアクセスオブジェクト310bを利用して内部データベース311a,外部データベース311bにアクセスし、その処理結果をBean308内に保持する。   When a request is transmitted to the server 304 side, the corresponding servlet 307 is activated according to the request. The servlet 307 requests the corresponding Bean 308 to perform processing. Further, the Bean 308 accesses the internal database 311a and the external database 311b using the DB access object 310a and the DB access object 310b in response to a request from the servlet 307, and holds the processing result in the Bean 308.

次に、サーブレット307からJSP309にBean308を渡し、JSP309を呼び出す。JSP309は、Bean308で保持する処理結果を参照して、HTMLページを生成し、クライアント301側に返送する。クライアント301側に返送されたHTMLページは、Webブラウザ302上に表示される。   Next, the Bean 308 is passed from the servlet 307 to the JSP 309 and the JSP 309 is called. The JSP 309 refers to the processing result held by the Bean 308, generates an HTML page, and returns it to the client 301 side. The HTML page returned to the client 301 is displayed on the Web browser 302.

サーブレット307は、Webブラウザ302からのリクエストの受け付け、Bean308への処理要求、およびJSP309の呼び出しという、それぞれの間をつなぎ、制御する役割を持つ。JSP309はHTMLページを出力するための表示に関することを受け持ち、Bean308はデータベース311a,311bへのアクセス等の業務に関する処理を受け持つ。   The servlet 307 has a role of controlling the connection between receiving requests from the Web browser 302, processing requests to the Bean 308, and calling the JSP 309. The JSP 309 is responsible for the display for outputting the HTML page, and the Bean 308 is responsible for processing related to operations such as access to the databases 311a and 311b.

なお、Bean308やJSP309を利用せずにサーブレット307のみで(又は、サーブレット307やBean308を利用せずにJSP309のみで)、Webブラウザ302からのリクエストを処理することは可能であるが、Bean308やJSP309を利用してそれぞれの役割を明確に分離することで、機能分担を簡潔に把握することができる。   Although it is possible to process a request from the Web browser 302 using only the servlet 307 without using the Bean 308 or JSP 309 (or using only the JSP 309 without using the servlet 307 or Bean 308), the Bean 308 or JSP 309 can be processed. By clearly separating each role using the function, it is possible to grasp the functional division in a concise manner.

なお、Bean308は、内部データベースアクセス用のBeanと外部データベースアクセス用のBeanとに分けて実装してもよい。   The bean 308 may be separately implemented for a bean for accessing an internal database and a bean for accessing an external database.

また、内部データベースが複数あってもよいし、外部データベースが複数あってもよい。   Further, there may be a plurality of internal databases or a plurality of external databases.

図3は、本発明のプログラム生成装置における第1の制御処理手順の一例を示すフローチャートであり、図1に示した処理装置103の全体制御部108の動作に対応する。なお、S101〜S105は各ステップを示す。   FIG. 3 is a flowchart showing an example of a first control processing procedure in the program generation apparatus of the present invention, and corresponds to the operation of the overall control unit 108 of the processing apparatus 103 shown in FIG. In addition, S101-S105 show each step.

図1に示した処理装置103は、コード生成する業務仕様(入出力テーブル)の入力を行う入力モードと、入力された業務仕様(入出力テーブル)からプログラムコードを生成する生成モードとを有する。   The processing apparatus 103 shown in FIG. 1 has an input mode for inputting a business specification (input / output table) for generating a code and a generation mode for generating a program code from the input business specification (input / output table).

まず、全体制御部108が起動されると、ステップS101において、入力装置101からオペレータの指示により選択されたモードが生成モードか入力モードかを判定し、入力モードが選択されたと判定した場合には、ステップS102に進み、全体制御部108は、画面制御部105を起動する。   First, when the overall control unit 108 is activated, in step S101, it is determined whether the mode selected by the operator's instruction from the input device 101 is the generation mode or the input mode, and if it is determined that the input mode has been selected. In step S102, the overall control unit 108 activates the screen control unit 105.

起動された画面制御部105は、ステップS103において、業務仕様記述部116により業務仕様入力画面(不図示)を表示させ、オペレータからの業務仕様の一形態である入出力テーブル(詳細は図4に示す)への項目入力,ログイン情報(詳細は図5に示す)の入力,生成するウェブアプリケーションのアプリケーション名111の入力等を受け付け、外部記憶装置104に格納し(入出力テーブル109,ログイン情報110,アプリケーション名111)、処理を終了する。   In step S103, the activated screen control unit 105 causes the business specification description unit 116 to display a business specification input screen (not shown), and an input / output table (details of which are shown in FIG. 4). Are received, input of login information (details are shown in FIG. 5), input of the application name 111 of the web application to be generated, and the like are stored in the external storage device 104 (input / output table 109, login information 110). , Application name 111), the process is terminated.

一方、ステップS101において、入力装置101からオペレータの指示により選択されたモードが生成モードであると判定した場合には、ステップS104に進み、全体制御部108は、外部記憶装置104に格納された入出力テーブルを読み出し、該読み出した入出力テーブル内の業務仕様情報に基づいてコード生成を行う。   On the other hand, if it is determined in step S101 that the mode selected by the operator's instruction from the input device 101 is the generation mode, the process proceeds to step S104, and the overall control unit 108 receives the input stored in the external storage device 104. The output table is read, and code generation is performed based on the business specification information in the read input / output table.

そして、ステップS105において、全体制御部108は、生成されたコードを、オペレータの指示により表示装置102に表示したり、外部記憶装置104に書き込む出力処理を行う。   In step S <b> 105, the overall control unit 108 performs an output process of displaying the generated code on the display device 102 or writing to the external storage device 104 in accordance with an operator instruction.

以下、図4を参照して、本発明のプログラム生成装置における業務仕様情報(入出力テーブル)について説明する。図示しない入力画面から入力される業務仕様情報は、内部的には図4に示すような入出力テーブルの形式で保存される。   Hereinafter, with reference to FIG. 4, the business specification information (input / output table) in the program generation apparatus of the present invention will be described. Business specification information input from an input screen (not shown) is stored internally in the form of an input / output table as shown in FIG.

図4は、本発明のプログラム生成装置における業務仕様情報(図1に示した入出力テーブル109)について説明する模式図であり、ウェブアプリケーションにおけるDBの動的な切り替え機能とそれを表示するための画面の定義を記述した業務仕様を入出力テーブルの形式で示したものに対応する。   FIG. 4 is a schematic diagram for explaining the business specification information (the input / output table 109 shown in FIG. 1) in the program generation apparatus of the present invention, and a DB dynamic switching function in a web application and the display thereof. Corresponds to the business specifications that describe the screen definition in the form of an input / output table.

列1は、DBシステム名を示したものであり、DBシステムを利用するときに識別用として用いる。   Column 1 shows the DB system name, which is used for identification when the DB system is used.

列2は、データファイル番号を示したものであり、データファイルを構成するデータ項目として列3のデータファイル項目枝番がある。   Column 2 shows the data file number, and there is a data file item branch number of column 3 as a data item constituting the data file.

列4はデータファイルの名称であり、列5はデータファイル項目枝番に対応する各データ項目の名称である。   Column 4 is the name of the data file, and column 5 is the name of each data item corresponding to the data file item branch number.

列6は、その項目の種別を示したIO区分である。IO区分はそれぞれ、ファイルであることを示す「F」、表示項目であることを示す「D」、複数のテーブルをまとめて、一つの画面で制御できる機能があることを示す「G1」と「G2」がある。この制御については別途下記で説明する。   Column 6 is an IO category indicating the type of the item. Each of the IO categories is “F” indicating a file, “D” indicating a display item, “G1” and “G1” indicating that there is a function that can control a plurality of tables together on one screen. G2 ". This control will be described separately below.

即ち、列6のIO区分で「F」が指定されている場合には、その行のデータはデータ項目を定義し、「D」が指定されている場合には、その行のデータは画面表示項目を定義し、「G1」,「G2」が指定されている場合には、その行のデータはDB・テーブルの切り替え機能を定義するものとなる。   That is, when “F” is specified in the IO classification of column 6, the data of the row defines a data item, and when “D” is specified, the data of the row is displayed on the screen. When an item is defined and “G1” and “G2” are designated, the data in the row defines a DB / table switching function.

列7は、各項目の桁数を表している。列8は、表示方法を示しており、「S」の場合は検索用の項目として表示され、「H」の場合は検索結果を表示する項目として扱われる。また、検索用にも結果用にも使用される項目は「S,H」として定義する。列9は、項目の項番を示している。   Column 7 represents the number of digits of each item. Column 8 shows the display method. When “S” is displayed, the item is displayed as a search item, and when “H” is displayed, the search result is displayed. The item used for both the search and the result is defined as “S, H”. Column 9 shows the item number of the item.

図5は、図1に示したログイン情報を説明するための模式図である。   FIG. 5 is a schematic diagram for explaining the login information shown in FIG.

図において、601はDBシステム名で、生成されるアプリケーションで接続するDBシステムの名称に対応する。602はJDBCドライバで、DBシステムに接続する際に用いるドライバである。603はURL,604はユーザ名,605はパスワードで、DBシステムに接続する際に用いるURL,ユーザ名,パスワードに対応する。   In the figure, reference numeral 601 denotes a DB system name, which corresponds to the name of a DB system connected by a generated application. A JDBC driver 602 is a driver used when connecting to the DB system. Reference numeral 603 denotes a URL, 604 denotes a user name, and 605 denotes a password, which correspond to the URL, user name, and password used when connecting to the DB system.

なお、入出力テーブル109,ログイン情報110,アプリケーション名111は、業務仕様記述部116により表示される業務仕様入力画面(不図示)から入力する構成であってもよいし、その他の任意のアプリケーションにより生成されるテキストファイル,CSVファイル,その他のファイル形式のファイルであってもよい。   The input / output table 109, the login information 110, and the application name 111 may be configured to be input from a business specification input screen (not shown) displayed by the business specification description unit 116, or by any other arbitrary application. It may be a generated text file, CSV file, or other file format file.

以下、図6〜図8を参照して、DBの動的な切り替えについて説明する。   Hereinafter, the dynamic switching of the DB will be described with reference to FIGS.

図6〜図8は、本発明のプログラム生成装置により生成されるアプリケーションによるDB接続切り替えを説明するためのDB構成図であり、特に図6は外部(リモート)分散DB構成図に対応し、図7は内部(ローカル)同一DB構成図に対応し、図8は内部(ローカル)DB及び外部(リモート)DBによる分散DB構成図に対応する。   6 to 8 are DB configuration diagrams for explaining DB connection switching by an application generated by the program generation apparatus of the present invention. In particular, FIG. 6 corresponds to an external (remote) distributed DB configuration diagram. 7 corresponds to an internal (local) identical DB configuration diagram, and FIG. 8 corresponds to a distributed DB configuration diagram using an internal (local) DB and an external (remote) DB.

DBの動的な切り替えとは、一つの生成された画面において検索や更新の対象となるDB・テーブルを画面上の操作で選択することで、対象DB・テーブルを切り替えることができる機能を示している。   Dynamic DB switching refers to a function that can switch the target DB / table by selecting the DB / table to be searched or updated by operating the screen on one generated screen. Yes.

本発明では、図6〜図8に示すように、切り替え対象のDB・テーブルを仮想的に一つのテーブルとして制御する手段をとる(図6〜図8に示す仮想DB401)。   In the present invention, as shown in FIGS. 6 to 8, a means for virtually controlling the DB / table to be switched as one table is taken (virtual DB 401 shown in FIGS. 6 to 8).

具体的には、予め定義してあるログイン情報110(JDBCドライバ,URL,ユーザ名,パスワード)を入出力テーブル109の列6に「G2」が定義されている行(図4の例では「行2」,「行3」)の列3の値(図4の例では「CliDB/ClinicM」,「DruDB/DrugstoreM」)と照らし合わせて取得し、その情報をアプリケーションに付加する。アプリケーション生成後に画面上からユーザがテーブルを選択すれば、上記情報を利用してDBシステム・テーブルへのアクセスを行うことが可能となっている。   Specifically, the login information 110 (JDBC driver, URL, user name, and password) defined in advance is set to a row in which “G2” is defined in column 6 of the input / output table 109 (“row” in the example of FIG. 4). 2 ”,“ Row 3 ”) and the value in column 3 (“ CliDB / ClinicM ”,“ DruDB / DrugstoreM ”in the example of FIG. 4), and the information is added to the application. If the user selects a table from the screen after generating the application, it is possible to access the DB system table using the above information.

この切り替えの際、図6に示すような異なる外部DBシステム同士の切り替えの場合、及び図8に示すような外部DBシステムと内部のDBシステムとを切り替える場合(即ち、分散型DBの場合)は、DBシステムそのものの切り替えを生成されたアプリケーション内で行うこととなる。   At the time of this switching, when switching between different external DB systems as shown in FIG. 6 and when switching between the external DB system and the internal DB system as shown in FIG. 8 (that is, in the case of a distributed DB) The switching of the DB system itself is performed within the generated application.

また、図7に示すような同一DBシステム内での切り替えの場合は、上記の外部DBの切り替えの場合と同様にして、DBシステム内のテーブルをその都度切り替えてセレクトすることを生成されたアプリケーション内で行うこととなる。   In addition, in the case of switching within the same DB system as shown in FIG. 7, in the same manner as the switching of the external DB described above, an application generated to switch and select a table in the DB system each time. Will be done within.

このような制御方法により、生成されたアプリケーションのユーザは、DBシステムの物理的な構成や接続を意識することなく切り替えが行えるようになる。   By such a control method, the user of the generated application can perform switching without being aware of the physical configuration and connection of the DB system.

例えば、図6に示すように、外部のDBシステムに接続されたテーブル同士を交互に切り替えたり、図7に示すように、内部のDB内のテーブルを切り替えたり、図8に示すように、内部と外部のDBシステムを組み合わせたものでも、そのことを意識することなく切り替えることが可能となる。   For example, as shown in FIG. 6, the tables connected to the external DB system are alternately switched, as shown in FIG. 7, the table in the internal DB is switched, or as shown in FIG. Even a combination of an external DB system can be switched without being aware of that.

切り替えの対象となるDB・テーブルは、図4で示した入出力テーブル109の列6で「G2」が指定されている行(図4の例では「行2」「行3」)の列3の値(図4の例では「CliDB/ClinicM」,「DruDB/DrugstoreM」)となる。この値の記述ルールは、DBシステム名/テーブル名のように「/」記号で区切って表す。   The DB / table to be switched is the column 3 in the row in which “G2” is designated in the column 6 of the input / output table 109 shown in FIG. 4 (“row 2” and “row 3” in the example of FIG. 4). (“CliDB / ClinicM”, “DruDB / DrugstoreM” in the example of FIG. 4). The description rule of this value is expressed by delimiting with “/” symbol like DB system name / table name.

このDB切り替え機能を使用すれば、例えばユーザが薬を検索したいといった場合には、CliDB(例えば内部DBシステム)に接続されている病院テーブル(ClinicM)とDruDB(例えば外部ネットワークに接続されている外部DBシステム)に接続されている薬局テーブルを、ユーザが操作画面(後述する図9に示す)上から選択することで、DBの切り替えを行いその検索対象をリアルタイムに切り替えることが可能となる。   If this DB switching function is used, for example, when a user wants to search for a medicine, a hospital table (ClinicM) connected to a CLIDB (for example, an internal DB system) and a DRUDB (for example, an external network connected to an external network) When the user selects a pharmacy table connected to the (DB system) from an operation screen (shown in FIG. 9 described later), the DB can be switched and the search target can be switched in real time.

このように、複数のDB・テーブルをまとめる仮想的なテーブルの生成は、上記の図4に示した入出力テーブル109の「行1」〜「行3」の定義を読み込んで行われる。   In this way, the generation of a virtual table that groups a plurality of DBs / tables is performed by reading the definitions of “row 1” to “row 3” of the input / output table 109 shown in FIG.

まず、入出力テーブル109において、列6のIO区分が「G1」の行(図4の例では「行1」)をセレクトする。この行は、対象となるDB・テーブルを仮想的に一つにまとめるための項目となる。対象となるDB・テーブルは、IO区分に「G2」が指定されている行2,行3に記述されている。   First, in the input / output table 109, a row in which the IO classification in column 6 is “G1” (“row 1” in the example of FIG. 4) is selected. This line is an item for virtually grouping the target DB / table into one. The target DB / table is described in line 2 and line 3 in which “G2” is specified in the IO section.

IO区分に「G2」が指定された行2,行3の列3のデータファイル項目枝番はDB/テーブル名を示している。なお、生成されたアプリケーションの操作画面に表示されるテーブル名称(後述する図9の201a,201b)は列5で指定されているデータファイル項目名(図4の例では、「病院」,「薬局」)となる。   The data file item branch number in the column 3 of the row 2 and the row 3 in which “G2” is designated as the IO section indicates the DB / table name. The table names (201a and 201b in FIG. 9 to be described later) displayed on the operation screen of the generated application are the data file item names specified in the column 5 (in the example of FIG. 4, “hospital”, “pharmacy” ]).

図9は、本発明のプログラム生成装置により生成されるウェブアプリケーションにおける操作画面の一例を示す模式図である。   FIG. 9 is a schematic diagram showing an example of an operation screen in a web application generated by the program generation apparatus of the present invention.

上述したような生成方法により生成された操作画面は、図9の左上にあるようなプルダウン式の選択メニュー201と切り替え検索ボタン202が自動的に生成され、選択メニュー201の中に、201a,201bに示すように、図4の列6で「G2」が定義された行のデータファイル項目名がテーブル名称として表示される。この選択メニュー201でテーブル名称(201a又は201b)を選択し、切り替え検索ボタン202を押下すれば、DB・テーブルの接続を切り替え、選択したテーブルが検索・更新の対象となる。   In the operation screen generated by the generation method as described above, a pull-down selection menu 201 and a switching search button 202 as shown in the upper left of FIG. 9 are automatically generated, and 201a, 201b are included in the selection menu 201. As shown in FIG. 4, the data file item name of the line in which “G2” is defined in column 6 of FIG. 4 is displayed as the table name. When a table name (201a or 201b) is selected from the selection menu 201 and the switch search button 202 is pressed, the connection between the DB and the table is switched, and the selected table is a target for search / update.

なお、検索のための処理は、検索条件入力欄203に値を入力し、検索ボタン204を指示することで行われる。   The search process is performed by inputting a value in the search condition input field 203 and instructing the search button 204.

また、更新のための処理は、検索結果表示入力覧205で値を変更入力し、更新ボタン206を指示することで行われる。   Further, the processing for updating is performed by changing and inputting the value in the search result display input list 205 and instructing the update button 206.

さらに、検索条件入力欄203に値を入力した状態で、切り替え検索ボタン202を指示すると、DB・テーブルの接続を切り替え、該切り替えられたDB・テーブルに対して、該検索条件入力欄203に入力されている検索条件での検索処理が実行される。これにより、同一の検索条件で、DB・テーブルを切り替えて順次検索することが可能である。   Further, when the switch search button 202 is instructed while a value is entered in the search condition input field 203, the connection of the DB / table is switched, and the switched DB / table is input to the search condition input field 203. The search process with the specified search condition is executed. Thereby, it is possible to sequentially search by switching the DB / table under the same search condition.

以下、図10〜図14のフローチャートを参照して、図1に示したコード生成部107によるコード生成処理について説明する。   Hereinafter, the code generation processing by the code generation unit 107 illustrated in FIG. 1 will be described with reference to the flowcharts of FIGS.

図10は、本発明の第2の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるコード生成処理に対応する。なお、S201〜S207は各ステップを示す。   FIG. 10 is a flowchart showing an example of the second control processing procedure of the present invention, and corresponds to the code generation processing by the code generation unit 107 shown in FIG. S201 to S207 indicate each step.

まず、ステップS201において、外部記憶装置104に記憶された入出力テーブル109から1行(1データ項目)を読み取り、ステップS202において、列6のIO区分の値を取得し、ステップS203において、取得したIO区分の値が「G1」であるか否かをチェックする。   First, in step S201, one row (one data item) is read from the input / output table 109 stored in the external storage device 104. In step S202, the value of the IO section in column 6 is acquired. In step S203, the acquired value is acquired. It is checked whether or not the value of the IO section is “G1”.

ステップS203で、列6のIO区分の値に「G1」が定義されていないと判定した場合には、そのままステップS205に進む。   If it is determined in step S203 that “G1” is not defined as the value of the IO section in column 6, the process directly proceeds to step S205.

一方、ステップS203で、列6のIO区分の値に「G1」が定義されていると判定した場合には、ステップS204において、入出力テーブル109から列6のIO区分の値が「G2」となる行を全て取得してグループ化し、列2,列3,列4の情報をグループの「DB情報」としてRAM内のワークエリアに書き込む。   On the other hand, if it is determined in step S203 that “G1” is defined as the IO section value in column 6, the IO section value in column 6 is set to “G2” from the input / output table 109 in step S204. All the rows are acquired and grouped, and the information in columns 2, 3, and 4 is written in the work area in the RAM as “DB information” of the group.

次に、ステップS205において、画面表示項目,ファイル項目情報の取得処理(図11)を行い、ステップS206に進む。   In step S205, screen display item and file item information acquisition processing (FIG. 11) is performed, and the flow advances to step S206.

ステップS206において、入出力テーブル109内の全行(全データ項目)について、ステップS201〜S205の処理を終了したか否かを判定し、まだ終了していないと判定した場合には、ステップS201の処理に戻る。   In step S206, it is determined whether or not the processing in steps S201 to S205 has been completed for all the rows (all data items) in the input / output table 109. Return to processing.

一方、ステップS206で、入出力テーブル109内の全行(全データ項目)について、ステップS201〜S205の処理を終了したと判定した場合には、ステップS207の処理に進む。   On the other hand, if it is determined in step S206 that the processes in steps S201 to S205 have been completed for all rows (all data items) in the input / output table 109, the process proceeds to step S207.

次に、ステップS207において、JSP,サーブレット,Bean生成処理を行い、処理を終了し、図2のフローチャートに戻る。   Next, in step S207, JSP, servlet, and bean generation processing is performed, the processing ends, and the process returns to the flowchart of FIG.

図11は、本発明の第3の制御処理手順の一例を示すフローチャートであり、図10に示したステップS205の画面表示項目,ファイル項目情報の取得処理に対応する。なお、S301〜S304は各ステップを示す。   FIG. 11 is a flowchart showing an example of the third control processing procedure of the present invention, and corresponds to the screen display item / file item information acquisition processing in step S205 shown in FIG. S301 to S304 indicate each step.

まず、ステップS301において、列6のIO区分の値が「D」であるか否かをチェックする。   First, in step S301, it is checked whether or not the value of the IO section in column 6 is “D”.

ステップS301で、列6のIO区分の値に「D」が定義されていると判定した場合には、「画面表示項目指定情報」と判定して、ステップS302に進み、図10のステップS201で入出力テーブル109から読み出した1行のデータ(列2〜列8)を「画面表示項目指定情報」として取得してRAM内のワークエリアに書き込み、ステップS303に進む。   If it is determined in step S301 that “D” is defined as the IO category value in column 6, it is determined as “screen display item designation information”, and the process proceeds to step S302. In step S201 of FIG. One line of data (columns 2 to 8) read from the input / output table 109 is acquired as “screen display item designation information”, written in the work area in the RAM, and the process proceeds to step S303.

一方、ステップS301で、列6のIO区分の値に「D」が定義されていないと判定した場合には、そのままステップS303に進む。   On the other hand, if it is determined in step S301 that “D” is not defined as the value of the IO section in column 6, the process directly proceeds to step S303.

ステップS303で、列6のIO区分の値に「F」が定義されていると判定した場合には、ファイル項目定義情報と判定して、ステップS304に進み、図10のステップS201で入出力テーブル109から読み出した1行のデータ(列1〜列7)を「ファイル項目定義情報」として取得してRAM内のワークエリアに書き込む。   If it is determined in step S303 that “F” is defined as the value of the IO section in column 6, it is determined as file item definition information, and the process proceeds to step S304. In step S201 of FIG. One row of data (column 1 to column 7) read from 109 is acquired as “file item definition information” and written to the work area in the RAM.

一方、ステップS303で、列5のIO区分の値に「F」が定義されていないと判定した場合には、そのまま処理を終了し、図10のフローチャートにリターンする。   On the other hand, if it is determined in step S303 that “F” is not defined as the value of the IO section in column 5, the process is terminated as it is, and the process returns to the flowchart of FIG.

図12は、本発明の第4の制御処理手順の一例を示すフローチャートであり、図10のステップS207に示したJSP,サーブレット,Bean生成処理に対応する。なお、S401〜S403は各ステップを示す。   FIG. 12 is a flowchart showing an example of the fourth control processing procedure of the present invention, and corresponds to the JSP, servlet, and bean generation processing shown in step S207 of FIG. S401 to S403 indicate each step.

まず、ステップS401において、外部記憶装置104に格納されたログイン情報110,アプリケーション名111,RAM内のワークエリアに記憶されたDB情報,ファイル項目情報に基づいて、各データベースへの接続,データ検索,データ更新を行うBean114を生成する(詳細は図13に示す)。   First, in step S401, based on the login information 110, application name 111, DB information stored in the work area in the RAM, and file item information stored in the external storage device 104, connection to each database, data search, A Bean 114 for updating data is generated (details are shown in FIG. 13).

次に、ステップS402において、外部記憶装置104に格納されたアプリケーション名111,RAMに記憶されたDB情報,画面用情報に基づいて、ウェブブラウザからの入力データを取得してBean114,JSP112を呼び出しウェブアプリケーション全体を制御するサーブレット113を生成する(詳細は図14に示す)。   Next, in step S402, based on the application name 111 stored in the external storage device 104, the DB information stored in the RAM, and the screen information, the input data from the web browser is acquired, and the Bean 114, JSP 112 is called to call the web A servlet 113 that controls the entire application is generated (details are shown in FIG. 14).

次に、ステップS403において、外部記憶装置104に格納されたアプリケーション名111,RAMに記憶されたDB情報,画面用情報,ファイル項目情報に基づいて、図9に示した操作画面のウェブブラウザへの表示を制御するJSP112を生成し(詳細は図15に示す)、処理を終了して、図10のフローチャートに戻る。   Next, in step S403, based on the application name 111 stored in the external storage device 104, DB information stored in the RAM, screen information, and file item information, the operation screen shown in FIG. A JSP 112 for controlling the display is generated (details are shown in FIG. 15), the process is terminated, and the process returns to the flowchart of FIG.

図13は、本発明の第5の制御処理手順の一例を示すフローチャートであり、図12のステップS401に示したBean生成処理に対応する。なお、S501〜S505は各ステップを示す。   FIG. 13 is a flowchart showing an example of the fifth control processing procedure of the present invention, and corresponds to the bean generation processing shown in step S401 of FIG. S501 to S505 indicate each step.

まず、ステップS501において、Beanファイルを生成する。なお、Beanファイル名は、例えば、図示しない入力画面より入力されたアプリケーション名に文字列「Bean」を付加し拡張子を「java(登録商標)」としたBeanファイルとする。また、このとき、作成したBeanファイル内の先頭に、「パッケージ名(例えば、アプリケーション名に文字列「Bean」を付加したもの)の宣言、「java(登録商標).sql」パッケージのインポート、Java(登録商標)Beansを利用するために必要なインタフェースの実装等を行うコード、データベース接続オブジェクトの宣言、SQLステートメントオブジェクトの宣言、結果セットオブジェクトの宣言等を行うコード」を格納しておく。   First, in step S501, a Bean file is generated. The bean file name is, for example, a bean file in which a character string “Bean” is added to an application name input from an input screen (not shown) and an extension is “java (registered trademark)”. At this time, at the top of the created Bean file, a declaration of “package name (for example, an application name added with a character string“ Bean ”), an import of a“ Java (registered trademark) .sql ”package, a Java (Registered trademark) Code for implementing an interface necessary for using Beans, code for declaring a database connection object, declaration of an SQL statement object, declaration of a result set object, etc. are stored.

次に、ステップS502において、外部記憶装置104に格納されたログイン情報110,RAMに記憶されたDB情報に基づいて「各DBに対する各DB接続用メソッドに対応する各コード」をBeanファイル内に生成する。   Next, in step S502, “each code corresponding to each DB connection method for each DB” is generated in the Bean file based on the login information 110 stored in the external storage device 104 and the DB information stored in the RAM. To do.

詳細には、「ログイン情報110内のDBシステム名601に対応するJDBCドライバ602を用いてドライバクラスをロードし、さらに、ログイン情報110内のDBシステム名601に対応するURL603,ユーザ名604,パスワード605を用いてデータベースへ接続する処理を行い、さらに、SQLステートメントオブジェクトを生成する処理を行う各DB毎のDB接続用メソッドに対応するコード」をBeanファイル内に生成する。   More specifically, “a driver class is loaded using the JDBC driver 602 corresponding to the DB system name 601 in the login information 110, and the URL 603, user name 604, password corresponding to the DB system name 601 in the login information 110 is loaded. 605 is used to perform processing for connecting to the database, and further, a code corresponding to a DB connection method for each DB that performs processing for generating an SQL statement object is generated in the Bean file.

次に、ステップS503において、RAMに記憶されたDB情報に基づいて「各DBに対する各DB切断用メソッドに対応する各コード」をBeanファイル内に生成する。   Next, in step S503, based on the DB information stored in the RAM, “each code corresponding to each DB cutting method for each DB” is generated in the Bean file.

詳細には、「SQLステートメントオブジェクトとデータベース接続オブジェクトをクローズする処理を行う各DB毎のDB切断用メソッドに対応するコード」をBeanファイル内に生成する。   Specifically, “a code corresponding to a DB disconnection method for each DB that performs processing for closing the SQL statement object and the database connection object” is generated in the Bean file.

次に、ステップS504において、RAMに記憶されたDB情報,ファイル項目情報に基づいて「各テーブルに対する各データ検索用メソッドに対応するコード」をBeanファイル内に生成する。   Next, in step S504, based on the DB information and file item information stored in the RAM, “code corresponding to each data retrieval method for each table” is generated in the Bean file.

詳細には、「データファイル番号をテーブル名、該データファイル番号内のデータ項目枝番をテーブル内の項目名とし、セットされた検索条件によりテーブルデータを検索するSQL文を生成し、該SQL文のクエリを実行し検索結果を取得する各テーブル毎のデータ検索用メソッドに対応するコード」をBeanファイル内に生成する。   Specifically, “a SQL statement for searching table data according to a set search condition is generated using a data file number as a table name, a data item branch number in the data file number as an item name in the table, and the SQL statement The code corresponding to the data search method for each table for executing the above query and obtaining the search result is generated in the Bean file.

次に、ステップS505において、RAMに記憶されたDB情報,ファイル項目情報に基づいて「各テーブルに対する各データ更新用メソッド」をBeanファイル内に生成する。   In step S505, based on the DB information and file item information stored in the RAM, “each data update method for each table” is generated in the Bean file.

詳細には、「データファイル番号をテーブル名、該データファイル番号内のデータ項目枝番をテーブル内の項目名とし、セットされた更新データによりテーブルデータを更新するSQL文を生成し、該SQL文のクエリを実行する各テーブル毎のデータ更新用メソッドに対応するコード」をBeanファイル内に生成する。   More specifically, “a SQL statement for updating the table data with the set update data is generated using the data file number as the table name and the data item branch number in the data file number as the item name in the table. The code corresponding to the data update method for each table that executes the query is generated in the Bean file.

そして、処理を終了し、図12のフローチャートにリターンする。   Then, the process ends, and the process returns to the flowchart of FIG.

図14は、本発明の第6の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるサーブレット作成処理(図12のステップS402)に対応する。なお、S601〜S607は各ステップを示す。   FIG. 14 is a flowchart showing an example of the sixth control processing procedure of the present invention, and corresponds to the servlet creation processing (step S402 in FIG. 12) by the code generation unit 107 shown in FIG. In addition, S601-S607 shows each step.

まず、ステップS601において、サーブレットファイルを生成する。このサーブレットファイルのファイル名は、例えば、アプリケーション名に文字列「Servlet」を付加し拡張子を「java(登録商標)」とする。なお、このとき、サーブレットファイル内の先頭に、「使用するBeanパッケージ及びその他必要なパッケージをインポートするコード、アクセス修飾子,クラスの定義,クラス(例えば、HttpServletクラス)の継承、ウェブブラウザ(HTMLフォーム)から送信されたパラメータ(送信情報)を受け取るためのメソッドを示すコード」を格納しておく。   First, in step S601, a servlet file is generated. As for the file name of the servlet file, for example, a character string “Servlet” is added to the application name and the extension is set to “java (registered trademark)”. At this time, at the top of the servlet file, “code to import the Bean package to be used and other necessary packages, access modifier, class definition, inheritance of class (for example, HTTP Servlet class), web browser (HTML form) ”) Is stored in the“ code indicating the method for receiving the parameter (transmission information) transmitted from () ”.

次に、ステップS602において、RAMに記憶された画面表示項目情報に基づいて「ウェブブラウザからの送信情報を受け取るコード」をサーブレットファイル内に生成する。   Next, in step S602, based on the screen display item information stored in the RAM, a “code for receiving transmission information from the web browser” is generated in the servlet file.

次に、ステップS603において、RAMに記憶されたDB情報に基づいて「切り替え検索が指示された場合、Beanのメソッドを用いて、テーブル切り替え検索処理を行うコード」をサーブレットファイル内に生成する。   In step S603, based on the DB information stored in the RAM, “a code for performing table switching search processing using a Bean method when a switching search is instructed” is generated in the servlet file.

詳細には、「ウェブブラウザからの送信情報に基づいてユーザからの指示に基づいて切り替え検索が指示された(ユーザにより切り替え検索ボタン202が指示された)と判定した場合、さらに、切り替え先のテーブルが現在接続されているDBか判定し、現在接続されているDBでない場合、現在接続されているDBのDB切断用メソッドにより切断し、切り替え先のテーブルのDBのDB接続用メソッドにより切り替え先のテーブルのDBに接続し、接続したDBの情報を所定の記憶領域(セッションオブジェクト)に保存し、切り替え先のテーブルのデータ検索用メソッドを用いて、ウェブブラウザから取得した検索条件での検索処理を実行し、一方、切り替え先のテーブルが現在接続されているDBの場合には、切り替え先のテーブルのデータ検索用メソッドを用いて、ウェブブラウザから取得した検索条件での検索処理を実行するコード」をサーブレットファイル内に生成する。   Specifically, when it is determined that “switching search is instructed based on an instruction from the user based on transmission information from the web browser (the switching search button 202 is instructed by the user), a switching destination table is further displayed. Is not the currently connected DB, if it is not the currently connected DB, it is disconnected by the DB disconnection method for the currently connected DB, and the switching destination DB is specified by the DB connection method for the DB of the switching destination table. Connects to the DB of the table, saves the information of the connected DB in a predetermined storage area (session object), and uses the data search method of the table at the switching destination to perform search processing with the search conditions acquired from the web browser On the other hand, if the switch-destination table is a currently connected DB, the switch-destination table By using the data search method, to generate a code "in which to perform search operations in the search conditions obtained from the web browser to the servlet within the file.

次に、ステップS604において、RAMに記憶されたDB情報に基づいて「検索が指示された場合、Beanのメソッドを用いて、データ検索処理を行うコード」をサーブレットファイル内に生成する。   Next, in step S604, based on the DB information stored in the RAM, a “code for performing a data search process using a Bean method when a search is instructed” is generated in the servlet file.

詳細には、「ウェブブラウザからの送信情報に基づいてユーザからの指示に基づいて検索が指示された(ユーザにより検索ボタン204が指示された)と判定した場合、さらに、現在のテーブルのDBが接続されているか判定し、現在のテーブルのDBが接続されていない場合は、現在のテーブルのDBに対応するDB接続用メソッドにより現在のテーブルのDBに接続し、接続したDBの情報を所定の記憶領域(セッションオブジェクト)に保存し、現在のテーブルのデータ検索用メソッドを用いて、ウェブブラウザから取得した検索条件での検索処理を実行し、一方、現在のテーブルのDBが接続されている場合は、そのまま、現在のテーブルのデータ検索用メソッドを用いて、ウェブブラウザから取得した検索条件での検索処理を実行するコード」をサーブレットファイル内に生成する。   Specifically, “when it is determined that a search is instructed based on an instruction from the user based on transmission information from the web browser (the search button 204 is instructed by the user), the DB of the current table is further updated. It is determined whether or not the DB of the current table is connected. When the DB of the current table is not connected, the DB connection method corresponding to the DB of the current table is connected to the DB of the current table, and information on the connected DB When the data is saved in the storage area (session object) and the search process using the search method obtained from the web browser is executed using the data search method for the current table, while the DB of the current table is connected Executes the search process with the search conditions obtained from the web browser using the data search method of the current table as it is To generate that code "to the servlet within the file.

次に、ステップS605において、RAMに記憶されたDB情報に基づいて「更新が指示された場合、Beanのメソッドを用いて、データ更新処理を行うコード」をサーブレットファイル内に生成する。   Next, in step S605, based on the DB information stored in the RAM, “a code for performing data update processing using a Bean method when an update is instructed” is generated in the servlet file.

詳細には、「ウェブブラウザからの送信情報に基づいてユーザからの指示に基づいて更新が指示された(ユーザにより更新ボタン206が指示された)と判定した場合、さらに、現在のテーブルのDBが接続されているか判定し、現在のテーブルのDBが接続されていない場合は、現在のテーブルのDBに対応するDB接続用メソッドにより現在のテーブルのDBに接続し、接続したDBの情報を所定の記憶領域(セッションオブジェクト)に保存し、現在のテーブルのデータ更新用メソッドを用いて、ウェブブラウザから取得した更新データの更新処理を実行し、一方、現在のテーブルのDBが接続されている場合は、そのまま、現在のテーブルのウェブブラウザから取得した更新データの更新処理を実行するコード」をサーブレットファイル内に生成する。   Specifically, “when it is determined that the update is instructed based on the instruction from the user based on the transmission information from the web browser (the update button 206 is instructed by the user), the DB of the current table is further updated. It is determined whether or not the DB of the current table is connected. If the DB of the current table is not connected, the DB connection method corresponding to the DB of the current table is connected to the DB of the current table, and the information of the connected DB is set to a predetermined value. If it is stored in the storage area (session object) and the update process for the update data obtained from the web browser is executed using the data update method for the current table, while the DB of the current table is connected As is, the code that executes the update processing of the update data obtained from the web browser of the current table " To generate in the Le.

次に、ステップS606において、「Beanを所定の記憶領域(例えば、セッションオブジェクト)に保存するコード」をサーブレットファイル内に生成する。   Next, in step S606, “code for saving Bean in a predetermined storage area (for example, session object)” is generated in the servlet file.

次に、ステップS607において、「JSPを呼び出すコード」をサーブレットファイル内に生成し、処理を終了して図12のフローチャートにリターンする。   Next, in step S607, “code for calling JSP” is generated in the servlet file, the process is terminated, and the process returns to the flowchart of FIG.

図15は、本発明の第7の制御処理手順の一例を示すフローチャートであり、図1に示したコード生成部107によるJSP作成処理(図12のステップS403)に対応する。なお、S701〜S710は各ステップを示す。   FIG. 15 is a flowchart showing an example of the seventh control processing procedure of the present invention, and corresponds to the JSP creation processing (step S403 in FIG. 12) by the code generation unit 107 shown in FIG. In addition, S701-S710 shows each step.

まず、ステップS701において、JSPファイルを生成する。このJSPファイルのファイル名は、例えば、アプリケーション名に拡張子を「jsp」とする。なお、このJSPファイル内には、「JSPページのMIMEタイプとエンコードするキャラクタセットを設定するコード、当該データファイルに対応するBeanをインスタンスするコード、htmlのタグである「<html><head><title>アプリケーション名</title>」等のコード」を生成し格納しておくものとする。   First, in step S701, a JSP file is generated. The file name of the JSP file is, for example, an application name with an extension “jsp”. The JSP file includes “a code for setting a MIME type of the JSP page and a character set to be encoded, a code for instantiating a Bean corresponding to the data file, and an html tag“ <html> <head> < It is assumed that a code such as “title> application name </ title>” is generated and stored.

次に、ステップS702において、「所定の記憶領域(セッションオブジェクト)からBeanを取得するコード」をJSPファイル内に生成する。   Next, in step S <b> 702, “a code for obtaining a Bean from a predetermined storage area (session object)” is generated in the JSP file.

次に、htmlのタグである「</head><body>」等を格納した後、ステップS703において、「フォームのパラメータが送信されたときに、起動するサーブレットを指定するコード」を生成する。詳細には、htmlのタグである「<form method="post" action=サーブレットのurl>」等のコードを格納する。   Next, after storing the html tag “</ head> <body>” and the like, in step S703, “code for specifying a servlet to be activated when a form parameter is transmitted” is generated. Specifically, a code such as “<form method =“ post ”action = url of servlet” ”which is an html tag is stored.

次に、ステップS704において、RAMに記憶されたDB情報に基づいて「選択メニュー201を生成するコード」をJSPファイル内に生成する。   Next, in step S704, “a code for generating the selection menu 201” is generated in the JSP file based on the DB information stored in the RAM.

次に、ステップS705において、「フォームのパラメータを送信する機能を備える切り替え検索ボタン202を生成するコード」をJSPファイル内に生成する。   Next, in step S705, “a code for generating a switching search button 202 having a function of transmitting a form parameter” is generated in the JSP file.

次に、ステップS706において、RAMに記憶された画面表示項目情報(特に「S」「S,H」のある項目)に基づいて「検索条件入力欄203を生成するコード」をJSPファイル内に生成する。なお、この検索条件入力欄203を生成するコードは、画面表示項目情報内で指定される各項目の桁数に応じて各項目の入力欄を生成するにコードとする。   Next, in step S706, “code for generating search condition input field 203” is generated in the JSP file based on the screen display item information stored in RAM (particularly, items having “S” and “S, H”). To do. The code for generating the search condition input field 203 is a code for generating an input field for each item in accordance with the number of digits of each item specified in the screen display item information.

次に、ステップS707において、「フォームのパラメータを送信する機能を備える検索ボタン202を生成するコード」をJSPファイル内に生成する。   Next, in step S707, “a code for generating the search button 202 having a function of transmitting a form parameter” is generated in the JSP file.

次に、ステップS708において、RAMに記憶された画面表示項目情報(特に「S,H」「H」のある項目)に基づいて「検索結果表示入力欄205を生成するコード」をJSPファイル内に生成する。なお、この検索結果表示入力欄205を生成するコードは、画面表示項目情報内で指定される各項目の桁数に応じて各項目の表示入力欄を生成するにコードとする。   Next, in step S708, based on the screen display item information stored in the RAM (particularly, items having “S, H” and “H”), a “code for generating the search result display input field 205” is stored in the JSP file. Generate. The code for generating the search result display input field 205 is a code for generating a display input field for each item according to the number of digits of each item specified in the screen display item information.

次に、ステップS709において、「フォームのパラメータを送信する機能を備える更新ボタン206を生成するコード」をJSPファイル内に生成する。   Next, in step S709, “a code for generating an update button 206 having a function of transmitting a form parameter” is generated in the JSP file.

次に、ステップS710において、RAM内に格納された画面表示項目情報に基づいて「Bean内に検索条件情報が格納されている場合、該検索条件情報を検索条件入力欄203にセットし、また、Bean内に検索結果情報が格納されている場合、該検索結果情報を検索結果表示入力欄205にセットするコード」をJSPファイル内に生成する。   Next, in step S710, based on the screen display item information stored in the RAM, “if the search condition information is stored in the bean, the search condition information is set in the search condition input field 203; If search result information is stored in the bean, a code for setting the search result information in the search result display input field 205 is generated in the JSP file.

最後に、htmlのタグである"</form></body></html>"等を格納し、処理を終了して図12のフローチャートにリターンする。なお、このJSP内に、Java(登録商標)Script等の各種スクリプトコード等も含むように構成してもよい。   Finally, “</ form> </ body> </ html>” or the like, which is an html tag, is stored, the process ends, and the process returns to the flowchart of FIG. The JSP may include various script codes such as Java (registered trademark) Script.

図4に示すように、テーブルの定義と画面構成を業務仕様の一部として定義することにより、DB接続切り替え、操作に関するコードと画面を自動生成することができる。これにより、業務仕様の変更などに柔軟に対応でき、設計・実装・管理を一元管理し高品質でスピーディーなウェブアプリケーションの開発が可能となる。   As shown in FIG. 4, by defining the table definition and the screen configuration as a part of the business specification, it is possible to automatically generate a DB connection switching and operation code and screen. As a result, it is possible to flexibly respond to changes in business specifications, etc., and it is possible to develop high-quality and speedy web applications by centrally managing design, implementation and management.

以下、図4に示した入出力テーブル109の内容にそって、図10〜図15に示した処理による、ユーザが動的にDB・テーブルを切り替え可能な操作画面(図9)の生成例について示す。   Hereinafter, with reference to the contents of the input / output table 109 shown in FIG. 4, an example of generating an operation screen (FIG. 9) by which the user can dynamically switch the DB / table by the processing shown in FIGS. 10 to 15. Show.

図4に示した入出力テーブル109の行1では、列6に「G1」が定義されおり、同じ列6に「G2」が定義されている行2,行3の項目をまとめて仮想的に一つのテーブルとする処理が行われる。   In row 1 of the input / output table 109 shown in FIG. 4, “G1” is defined in column 6 and the items in rows 2 and 3 in which “G2” is defined in the same column 6 are virtually combined. One table is processed.

また、行2では、列6に「G2」が定義されていることから、列3で定義している「CliDB/ClinicM」を画面上で選択可能なテーブルとして使用できることを示している。   Further, in row 2, since “G2” is defined in column 6, it indicates that “CliDB / ClinicM” defined in column 3 can be used as a selectable table on the screen.

同様に、行3も「DruDB/DrugstoreM」が選択可能なテーブルとして定義されている。   Similarly, row 3 is also defined as a table in which “DruDB / DrugstoreM” can be selected.

さらに、行4〜行10では、列6に「D」が定義されているので、実際に画面の表示項目となることを示している。それぞれ列5のデータファイル項目名が画面に表示され、列7で指定した桁数分の入力項目が生成される。なお、生成される画面は検索用とその結果表示用という構成になっている。検索用(図9の検索条件入力欄203)には、列8で「S」又は「S,H」が指定されている行4〜行7までの項目が表示され、結果表示用(図9の検索結果表示入力欄205)には「H」又は「S,H」が指定されている行6〜行10の項目が表示される。   Further, in rows 4 to 10, since “D” is defined in column 6, it indicates that it actually becomes a display item on the screen. The data file item names in column 5 are displayed on the screen, and input items for the number of digits specified in column 7 are generated. The generated screen is configured for searching and displaying the result. For search (search condition input field 203 in FIG. 9), items from row 4 to row 7 in which “S” or “S, H” is specified in column 8 are displayed, and the results are displayed (FIG. 9). In the search result display input field 205), items 6 to 10 in which "H" or "S, H" is designated are displayed.

また、行11〜行24では、列6に「F」が定義されているので、ファイル定義であることを示している。このファイル定義は行2,行3で定義されている「病院」と「薬局」の二つのDB・テーブルについて定義しており、行11〜行17が「病院」を示し、行18〜行24が「薬局」を示している。   In lines 11 to 24, “F” is defined in column 6, which indicates a file definition. This file definition defines two DB tables “hospital” and “pharmacy” defined in line 2 and line 3, line 11 to line 17 indicate “hospital”, and line 18 to line 24. Indicates “pharmacy”.

そして、上記図4に示した入出力テーブル109に基づく図10〜図15の処理の結果、実行時に図9のような操作画面を表示するウェブアプリケーションが生成される。   Then, as a result of the processing shown in FIGS. 10 to 15 based on the input / output table 109 shown in FIG. 4, a web application that displays an operation screen as shown in FIG. 9 at the time of execution is generated.

まず、図4に示した入出力テーブル109の行1の定義より、この画面がDB・テーブルを動的に切り替えることが出来る機能がある画面ということになり、図9に示すようなDB・テーブルの選択メニュー201と切り替え確認のための切り替え検索ボタン202が図1に示したコード生成部107により自動的に生成される。   First, from the definition of line 1 of the input / output table 109 shown in FIG. 4, this screen is a screen having a function capable of dynamically switching the DB table, and the DB table as shown in FIG. The selection menu 201 and the switching search button 202 for switching confirmation are automatically generated by the code generation unit 107 shown in FIG.

選択メニュー201に表示されているテーブル201a,201bは、図1の行2,行3で定義されているDB・テーブルとなる。例えば、ここで「Clinic(病院)」201aを選択し、切り替え検索ボタン202を押下すれば検索の対象は図4に示した入出力テーブル109の行11〜行17で定義されている「CliDB」DBシステムの「ClinicM」テーブルとなる。   The tables 201a and 201b displayed on the selection menu 201 are DB tables defined in row 2 and row 3 of FIG. For example, when “Clinic (hospital)” 201a is selected and the switching search button 202 is pressed, the search target is “CliDB” defined in the lines 11 to 17 of the input / output table 109 shown in FIG. It becomes the “ClinicM” table of the DB system.

また、検索するためのキーを入力する項目は、図4に示した入出力テーブル109の行4〜行7の項目となっている。   The items for inputting the key for searching are the items in the lines 4 to 7 of the input / output table 109 shown in FIG.

これにより生成された検索条件入力欄203に必要な値を入力し、検索ボタン204を指示すると、指定されたテーブルを検索し、図9に示す検索結果表示入力欄205に結果一覧が表示される。   When a necessary value is input to the generated search condition input field 203 and a search button 204 is designated, the specified table is searched, and a result list is displayed in the search result display input field 205 shown in FIG. .

この検索結果表示入力欄205は、図4に示した入出力テーブル109の行6〜行10で定義された項目が表示される。なお、図4に示した入出力テーブル109で利用したアプリケーションにおけるDBの構成は図6に示すDB構成に対応する。   In the search result display input field 205, items defined in line 6 to line 10 of the input / output table 109 shown in FIG. 4 are displayed. The DB configuration in the application used in the input / output table 109 shown in FIG. 4 corresponds to the DB configuration shown in FIG.

なお、この図4に示した入出力テーブル109を用いた生成例は、異なる外部DBシステム間での切り替えに対応するが、図4に示した入出力テーブル109の定義を変更すれば、図6に示したような外部DBを切り替える機能以外にも、図8に示したような内部DB内のテーブルを切り替える機能や、図9に示したような内部と外部DBの切り替えを行う機能を付加することが可能である。   The generation example using the input / output table 109 shown in FIG. 4 corresponds to switching between different external DB systems. However, if the definition of the input / output table 109 shown in FIG. 4 is changed, FIG. In addition to the function of switching the external DB as shown in FIG. 8, a function of switching the table in the internal DB as shown in FIG. 8 or a function of switching between the internal and external DB as shown in FIG. 9 is added. It is possible.

図16は、本発明のプログラム生成装置における業務仕様情報(図1に示した入出力テーブル109)について説明する模式図であり、同一のDBシステム(内部DB又は外部DB)内でテーブル切り替えを行う場合に対応する。   FIG. 16 is a schematic diagram for explaining the business specification information (the input / output table 109 shown in FIG. 1) in the program generation apparatus of the present invention, and performs table switching within the same DB system (internal DB or external DB). Corresponds to the case.

例えば、入出力定義を図16に示した入出力テーブルのように行2,行3の列3の値を「CliDB/ClinicM」,「CliDB/DrugstoreM」とし、「/」記号の前のDBシステム名称を同一の「CliDB」として記述し、図16の行11〜行24のファイル定義も列1のDBシステム名を「CliDB」と同一とする。このように定義を変更した場合は、同一のDB(内部DBのみ又は外部DBのみ)の「ClinicM」テーブルと「DrugstoreM」テーブルを交互に切り替えることになる。内部DBのみのDB構成は、図7に示した例に対応する。   For example, the input / output definition is the input / output table shown in FIG. 16 and the values of column 3 in row 2 and row 3 are “CliDB / ClinicM” and “CliDB / DrugstoreM”, and the DB system before the “/” symbol. The name is described as the same “CliDB”, and the file definition in the rows 11 to 24 in FIG. 16 also has the same DB system name in column 1 as “CliDB”. When the definition is changed in this way, the “ClinicM” table and the “DrugstoreM” table of the same DB (only the internal DB or only the external DB) are switched alternately. A DB configuration with only an internal DB corresponds to the example shown in FIG.

また、図4の行2の列3に示した「CliDB」を外部DBとし、図4の行3の列3の「DruDB」を内部DBとする。なお、内部DB,外部DBの区別は、図5に示したログイン情報110のURL603で定義される。   Further, “CliDB” shown in column 3 of row 2 of FIG. 4 is an external DB, and “DruDB” of column 3 of row 3 of FIG. 4 is an internal DB. The distinction between the internal DB and the external DB is defined by the URL 603 of the login information 110 shown in FIG.

このようなDB構成の場合は、外部DB「CliDB」のテーブル「ClinicM」と内部DB「DruDB」のテーブル「DrugstoreM」を交互に切り替えることが可能となる。このような外部DB及び内部DBからなるDB構成は、図8に示した例に対応する。   In the case of such a DB configuration, the table “ClinicM” of the external DB “CliDB” and the table “DrugstoreM” of the internal DB “DruDB” can be switched alternately. Such a DB configuration including an external DB and an internal DB corresponds to the example illustrated in FIG.

以上示したように、DBの接続方法(URL指定(ネットワーク接続でもローカルでもよい)等)とDBのテーブル構成を業務仕様を入力として、DBの選択画面プログラム(JSP112)を生成するステップと、DBへの接続(割り当て)処理プログラム(サーブレット113)を生成するステップと、DBへのアクセス処理プログラム(Bean114)を生成するステップとを備えることにより、ウェブアプリケーション開発支援システムにおいて、ネットワーク接続された複数のDBをユーザ選択により動的に切り替えてアクセスする機能、又は、同一DB上の複数のテーブルをユーザ選択により動的に切り替えてアクセスできる機能を、業務仕様の枠組みの中で定義し、プログラムコードを自動生成することができる。   As described above, a DB selection screen program (JSP112) is generated by inputting a DB connection method (URL designation (network connection or local) or the like) and DB table configuration with business specifications as input, and DB In the web application development support system, there are provided a plurality of network connection (assignment) processing program (servlet 113) and a DB access processing program (Bean 114). Define the function to dynamically switch and access DB by user selection, or the function to dynamically switch and access multiple tables on the same DB by user selection, and program code Can be generated automatically.

従って、生成された操作画面上で対象となるDB上のテーブルへの割り当てとアクセス処理をユーザが動的に切り替えることができる機能を有するアプリケーションプログラムを、DB接続のための定義を業務仕様の枠組みの中で定義して自動生成することができ、生産性,保守性,管理性を著しく向上することができる。   Therefore, an application program having a function that allows the user to dynamically switch the assignment to the table on the target DB and the access processing on the generated operation screen, and the definition for DB connection are defined in the framework of the business specification. It can be defined and automatically generated in the network, and productivity, maintainability, and manageability can be remarkably improved.

また、分散したDBに対してユーザの選択による動的に接続を切り替え、また該テーブルへのアクセス処理が自動生成可能となったことで、生産性と保守性に優れたWebアプリケーションプログラムの領域を広げることができる。   In addition, it is possible to dynamically switch the connection to the distributed DB according to the user's selection, and to automatically generate the access processing to the table, so that a web application program area with excellent productivity and maintainability can be created. Can be spread.

同様な定義・生成方式の枠組みの中で、同一DBで異なるテーブルへの接続、アクセス処理を自動生成可能とした。   Within the same definition / generation scheme framework, connection to different tables and access processing can be automatically generated in the same DB.

また、上記実施形態中では、2つのDB・テーブルを例にして、該2つのDB・テーブルを切り替え可能なウェブアプリケーションの生成方法について説明したが、切り替え可能なDB・テーブルは2つに限られるものではなく、入出力テーブル109に切り替え可能な3つ以上のDB・テーブルを定義し、ログイン情報110に対応するDBの接続情報をそれぞれ定義することにより、3つ以上のDB・テーブルを切り替え可能なウェブアプリケーションを生成することができる。   In the above-described embodiment, a method for generating a web application that can switch between two DBs / tables has been described as an example. However, the number of DB / tables that can be switched is limited to two. 3 or more DB tables that can be switched to the I / O table 109 are defined, and 3 or more DB tables can be switched by defining DB connection information corresponding to the login information 110. A simple web application.

また、ログイン情報110に、DBシステム名,JDBCドライバ名,URL,ユーザ名,パスワードを記憶させる場合について説明したが、JDBCドライバ名,URL,ユーザ名,パスワードの代わりに、DBシステムのオブジェクト名を記憶させるように構成してもよい。その場合、DBシステムのオブジェクト名からDBシステムを検索して接続するようなDB接続用メソッドを生成するように構成する。   In the above description, the DB system name, the JDBC driver name, the URL, the user name, and the password are stored in the login information 110. However, instead of the JDBC driver name, the URL, the user name, and the password, the object name of the DB system is used. You may comprise so that it may memorize | store. In this case, a DB connection method that searches and connects the DB system from the object name of the DB system is generated.

また、図4,図5,図16の各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。   Also, the configurations and contents of the various data in FIGS. 4, 5, and 16 are not limited to this, and it is needless to say that they are configured with various configurations and contents according to applications and purposes.

以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。   Although one embodiment has been described above, the present invention can take an embodiment as, for example, a system, apparatus, method, program, or recording medium, and specifically includes a plurality of devices. The present invention may be applied to a system including a single device.

また、本発明のプログラム生成装置により生成されるプログラムコードを、ASP(Active Server Pages),PHP(Hypertext Preprosessor)等のJava(登録商標)以外の他のプログラムによるウェブアプリケーションとすることで、本発明のプログラム生成装置を各種ウェブアプリケーションの生成にも適用可能である。   Moreover, the present invention is such that the program code generated by the program generation apparatus of the present invention is a web application using a program other than Java (registered trademark) such as ASP (Active Server Pages), PHP (Hypertext Preprocessor), etc. This program generation apparatus can also be applied to generation of various web applications.

さらに、上記実施形態では、入出力テーブル109で指定されるデータベース上の複数のテーブルをそれぞれ定義する複数の定義情報、及びログイン情報110で指定される前記データベースへ接続するための接続情報に基づいて「前記複数のテーブルを動的に切り替えてアクセス可能なプログラムコード」を生成するプログラム生成装置について説明したが、複数のテーブルを動的に切り替えてアクセスすることができるデータベースアクセス装置(方法)そのものも本発明に含まれるものである。   Further, in the above embodiment, based on a plurality of definition information respectively defining a plurality of tables on the database designated by the input / output table 109, and connection information for connecting to the database designated by the login information 110. The program generation apparatus that generates “the program code that can be accessed by dynamically switching the plurality of tables” has been described, but the database access apparatus (method) that can be accessed by dynamically switching the plurality of tables is also provided. It is included in the present invention.

さらに、上記各実施形態では、ウェブアプリケーションサーバ上で動作するウェブアプリケーションプログラムを生成するプログラム生成装置について説明したが、ミドルウェアとしてウェブアプリケーションサーバの代わりに、ノーツ(商品名)・アプリケーションサーバやドミノ(商品名)・アプリケーションサーバ等のグループウェアを利用したアプリケーションを生成するように構成してもよい。   Further, in each of the embodiments described above, the program generation device that generates the web application program that operates on the web application server has been described. However, instead of the web application server as middleware, a Notes (product name) application server or Domino (product) is used. Name)-An application using groupware such as an application server may be generated.

この場合、サーブレットの代わりに、エージェントと呼ばれるJava(登録商標)で作成されたプログラムをプログラム生成装置で生成し、グループウェアのアプリケーションサーバに配置するものとする。また、JSPにより表示していた入出力画面は、フォームと呼ばれるコンテンツとして、プログラム生成装置で生成して、グループウェアのデータベースに登録しておく。また、Beanは上記実施形態と同一のものを使用可能である。   In this case, instead of a servlet, a program created by Java (registered trademark) called an agent is generated by a program generation device and placed on an application server of groupware. The input / output screen displayed by JSP is generated by a program generation device as content called a form and registered in a groupware database. Further, the same bean can be used as in the above embodiment.

また、本発明のプログラム生成装置が生成するアプリケーションは、PDA(携帯情報端末)や携帯電話といった携帯端末をクライアントとするアプリケーションとしてもよい。   The application generated by the program generation apparatus of the present invention may be an application using a mobile terminal such as a PDA (personal digital assistant) or a mobile phone as a client.

そして、クライアントとの間のプロトコルもHTTPのみではなく、WAP(Wireless Application Protocol)等とし、JSPにより生成されるコードも、HTMLに限られるものではなく、XML,WML等のその他の構造化言語とするような、プログラムを、本発明のプログラム生成装置が生成するように構成してもよい。   The protocol between the client and the client is not only HTTP but also WAP (Wireless Application Protocol), and the code generated by JSP is not limited to HTML, but other structured languages such as XML and WML. Such a program may be configured to be generated by the program generation device of the present invention.

また、上記実施形態では、プログラム生成装置が、データベースへのアクセスを行うためのBean,各データ項目の入出力画面を選択された画面パターンで表示するためのJSP、入出力画面からの入力情報を取得して該入力情報に基づいてBean,JSPの実行を制御してアプリケーション全体を統括制御するサーブレットから構成されるウェブアプリケーションを生成する場合について説明したが、上記Bean,JSPの機能をも含んだサーブレットのみ、上記Beanの機能を含んだサーブレットとJSPのみ、又は、上記JSPの機能を含んだサーブレットとBeanのみ、から構成されるウェブアプリケーションを生成するように構成してもよいことはいうまでもない。   Further, in the above embodiment, the program generation apparatus receives the bean for accessing the database, the JSP for displaying the input / output screen of each data item in the selected screen pattern, and the input information from the input / output screen. The description has been given of the case where a web application configured by a servlet that controls the execution of the Bean and JSP based on the input information and controls the entire application is generated, but includes the functions of the Bean and JSP. Needless to say, it may be configured to generate a web application including only a servlet, only a servlet and JSP including the above-mentioned Bean function, or only a servlet and Bean including the above-mentioned JSP function. Absent.

さらに、上記実施形態内に記載された各変形例を組み合わせた構成も全て本発明に含まれるものである。   Furthermore, the present invention includes all configurations in which the modified examples described in the above embodiments are combined.

以下、図17に示すメモリマップを参照して本発明に係るプログラム生成装置で読み取り可能なデータ処理プログラムの構成について説明する。   The configuration of the data processing program that can be read by the program generation device according to the present invention will be described below with reference to the memory map shown in FIG.

図17は、本発明に係るプログラム生成装置で読み取り(読み出し)可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。   FIG. 17 is a diagram for explaining a memory map of a recording medium (storage medium) that stores various data processing programs that can be read (read) by the program generation apparatus according to the present invention.

なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。   Although not specifically shown, information for managing a program group stored in the recording medium, for example, version information, creator, etc. is also stored, and information depending on the OS on the program reading side, for example, a program is identified and displayed. Icons may also be stored.

さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。   Further, data depending on various programs is also managed in the directory. In addition, when a program or data to be installed is compressed, a program to be decompressed may be stored.

本実施形態における図3,図10,図11,図12,図13,図14,図15に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。   The functions shown in FIGS. 3, 10, 11, 12, 13, 14, and 15 in this embodiment may be performed by a host computer by a program installed from the outside. In this case, the present invention is applied even when an information group including a program is supplied to the output device from a recording medium such as a CD-ROM, a flash memory, or an FD, or from an external recording medium via a network. Is.

以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。   As described above, a recording medium recording software program codes for realizing the functions of the above-described embodiments is supplied to a system or apparatus, and a computer (or CPU or MPU) of the system or apparatus stores the recording medium in the recording medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the programmed program code.

この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。   In this case, the program code itself read from the recording medium realizes the novel function of the present invention, and the recording medium storing the program code constitutes the present invention.

プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。   As a recording medium for supplying the program code, for example, a flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, DVD-ROM, magnetic tape, nonvolatile memory card, ROM, EEPROM, A silicon disk or the like can be used.

また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) or the like running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Furthermore, after the program code read from the recording medium is written in a memory provided in a function expansion board inserted in the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウエアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。   Further, the present invention may be applied to a system composed of a plurality of devices or an apparatus composed of a single device. Needless to say, the present invention can be applied to a case where the present invention is achieved by supplying a program to a system or apparatus. In this case, by reading the recording medium storing the program represented by the software for achieving the present invention into the system or apparatus, the system or apparatus can enjoy the effects of the present invention. .

さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。   Furthermore, by downloading and reading out a program represented by software for achieving the present invention from a server, database, etc. on a network using a communication program, the system or apparatus can enjoy the effects of the present invention. It becomes.

本発明のプログラム生成装置により生成されるプログラムコードを、ASP(Active Server Pages),PHP(Hypertext Preprosessor)等のJava(登録商標)以外の他のプログラムによるアプリケーションとすることで、本発明のプログラム生成装置を各種アプリケーションの生成にも適用可能である。   By generating the program code generated by the program generation apparatus of the present invention as an application using a program other than Java (registered trademark) such as ASP (Active Server Pages), PHP (Hypertext Preprocessor), etc. The device can also be applied to generate various applications.

本発明の一実施形態を示すプログラム生成装置の構成を示すブロック図である。It is a block diagram which shows the structure of the program production | generation apparatus which shows one Embodiment of this invention. 図1に示したコード生成部によって生成したサーブレット、JSP、およびBeanを利用したウェブアプリケーションシステムの全体構成の一例を示す図である。It is a figure which shows an example of the whole structure of the web application system using the servlet produced | generated by the code production | generation part shown in FIG. 1, JSP, and Bean. 本発明のプログラム生成装置における第1の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 1st control processing procedure in the program generator of this invention. 本発明のプログラム生成装置における業務仕様情報(図1に示した入出力テーブル)について説明する模式図である。It is a schematic diagram explaining the business specification information (input / output table shown in FIG. 1) in the program generation apparatus of the present invention. 図1に示したログイン情報を説明するための模式図である。It is a schematic diagram for demonstrating the login information shown in FIG. 本発明のプログラム生成装置により生成されるアプリケーションによるDB接続切り替えを説明するためのDB構成(外部(リモート)分散DB構成)を示す図である。It is a figure which shows DB structure (external (remote) distributed DB structure) for demonstrating DB connection switching by the application produced | generated by the program production | generation apparatus of this invention. 本発明のプログラム生成装置により生成されるアプリケーションによるDB接続切り替えを説明するためのDB構成(内部(ローカル)同一DB構成)を示す図である。It is a figure which shows DB structure (internal (local) same DB structure) for demonstrating DB connection switching by the application produced | generated by the program production | generation apparatus of this invention. 本発明のプログラム生成装置により生成されるアプリケーションによるDB接続切り替えを説明するためのDB構成(内部(ローカル)DB及び外部(リモート)DBによる分散DB構成)を示す図である。It is a figure which shows DB structure (distributed DB structure by internal (local) DB and external (remote) DB) for demonstrating DB connection switching by the application produced | generated by the program production | generation apparatus of this invention. 本発明のプログラム生成装置により生成されるウェブアプリケーションにおける操作画面の一例を示す模式図である。It is a schematic diagram which shows an example of the operation screen in the web application produced | generated by the program production | generation apparatus of this invention. 本発明の第2の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 2nd control processing procedure of this invention. 本発明の第3の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 3rd control processing procedure of this invention. 本発明の第4の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 4th control processing procedure of this invention. 本発明の第5の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 5th control processing procedure of this invention. 本発明の第6の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 6th control processing procedure of this invention. 本発明の第7の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 7th control processing procedure of this invention. 本発明のプログラム生成装置における業務仕様情報(図1に示した入出力テーブル)について説明する模式図である。It is a schematic diagram explaining the business specification information (input / output table shown in FIG. 1) in the program generation apparatus of the present invention. 本発明に係るプログラム生成装置で読み取り(読み出し)可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。It is a figure explaining the memory map of the recording medium (storage medium) which stores the various data processing program which can be read (read) with the program generator which concerns on this invention.

符号の説明Explanation of symbols

101 入力装置
102 表示装置
103 処理装置(CPU,RAM,ROM)
104 外部記憶装置(ハードディスク)
105 画面制御部
116 業務仕様記述部
107 コード生成部
108 全体制御部
109 入出力テーブル
110 ログイン情報
111 アプリケーション名
112 JSPコード
113 Servletコード
114 Beanコード
101 Input device 102 Display device 103 Processing device (CPU, RAM, ROM)
104 External storage device (hard disk)
105 Screen Control Unit 116 Business Specification Description Unit 107 Code Generation Unit 108 Overall Control Unit 109 Input / Output Table 110 Login Information 111 Application Name 112 JSP Code 113 Servlet Code 114 Bean Code

Claims (8)

データベースへアクセスするウェブアプリケーションプログラムを生成するプログラム生成装置において、
データベース上の複数のテーブルをそれぞれ定義する複数の定義情報を記憶する第1の記憶手段と、
前記データベースへ接続するための接続情報を記憶する第2の記憶手段と、
前記第1の記憶手段に記憶される複数の定義情報、及び前記第2の記憶手段に記憶される前記接続情報に基づいて「前記複数のテーブルを動的に切り替えてアクセス可能なプログラムコード」を生成する生成手段と、
を有することを特徴とするプログラム生成装置。
In a program generation device for generating a web application program for accessing a database,
First storage means for storing a plurality of definition information that respectively defines a plurality of tables on the database;
Second storage means for storing connection information for connecting to the database;
Based on the plurality of definition information stored in the first storage unit and the connection information stored in the second storage unit, “program code accessible by dynamically switching the plurality of tables” Generating means for generating;
A program generation apparatus comprising:
前記データベースは、異なる複数のデータベースであり、
前記データベース上の複数のテーブルは、前記異なる複数のデータベース上にそれぞれ配置されるものであり、
前記第2の記憶手段は、前記複数のデータベースへ接続するための複数の接続情報をそれぞれ記憶することを特徴とする請求項1記載のプログラム生成装置。
The database is a plurality of different databases;
The plurality of tables on the database are respectively arranged on the different databases.
2. The program generating apparatus according to claim 1, wherein the second storage unit stores a plurality of pieces of connection information for connecting to the plurality of databases.
前記データベース上の複数のテーブルは、同一のデータベース上に配置されることを特徴とする請求項1記載のプログラム生成装置。   The program generation apparatus according to claim 1, wherein the plurality of tables on the database are arranged on the same database. 前記データベースは、ローカル接続可能なデータベース又はリモート接続可能なデータベースを含むことを特徴とする請求項1〜3のいずれかに記載のプログラム生成装置。   The program generation apparatus according to claim 1, wherein the database includes a locally connectable database or a remotely connectable database. 前記異なる複数のデータベースは、ローカル接続可能なデータベース及びリモート接続可能なデータベースを含むことを特徴とする請求項2記載のプログラム生成装置。   3. The program generating apparatus according to claim 2, wherein the plurality of different databases include a locally connectable database and a remotely connectable database. データベースへアクセスするウェブアプリケーションプログラムを生成するためのプログラム生成方法において、
指定されるデータベース上の複数のテーブルをそれぞれ定義する複数の定義情報、及び前記データベースへ接続するための接続情報に基づいて「前記複数のテーブルを動的に切り替えてアクセス可能なプログラムコード」を生成する生成工程を有することを特徴とするプログラム生成方法。
In a program generation method for generating a web application program for accessing a database,
Generates "program code that can be accessed by dynamically switching between the plurality of tables" based on a plurality of definition information that respectively defines a plurality of tables on a specified database and connection information for connecting to the database. A program generation method comprising: a generation step of:
請求項6に記載されたプログラム生成方法を実行するためのプログラム。   A program for executing the program generation method according to claim 6. 請求項6に記載されたプログラム生成方法を実行するためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。   A recording medium storing a computer-readable program for executing the program generation method according to claim 6.
JP2003383415A 2003-11-13 2003-11-13 PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM Expired - Lifetime JP4444634B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003383415A JP4444634B2 (en) 2003-11-13 2003-11-13 PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003383415A JP4444634B2 (en) 2003-11-13 2003-11-13 PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM

Publications (2)

Publication Number Publication Date
JP2005148976A true JP2005148976A (en) 2005-06-09
JP4444634B2 JP4444634B2 (en) 2010-03-31

Family

ID=34692139

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003383415A Expired - Lifetime JP4444634B2 (en) 2003-11-13 2003-11-13 PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM

Country Status (1)

Country Link
JP (1) JP4444634B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8615756B2 (en) 2009-02-05 2013-12-24 Ricoh Company, Ltd. Server device and computer-readable recording medium for generating a driver package
CN111796810A (en) * 2020-07-03 2020-10-20 福建天晴在线互动科技有限公司 Method and system for configurable rapid generation of Mysql database codes

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8615756B2 (en) 2009-02-05 2013-12-24 Ricoh Company, Ltd. Server device and computer-readable recording medium for generating a driver package
CN111796810A (en) * 2020-07-03 2020-10-20 福建天晴在线互动科技有限公司 Method and system for configurable rapid generation of Mysql database codes

Also Published As

Publication number Publication date
JP4444634B2 (en) 2010-03-31

Similar Documents

Publication Publication Date Title
JP4381708B2 (en) Graphical user interface system
JP4381709B2 (en) server
KR100446183B1 (en) Database System
US7165073B2 (en) Dynamic, hierarchical data exchange system
KR101038896B1 (en) Service program generation technology
US9189132B2 (en) Dynamic configurable menu using self-describing applications
US20080231642A1 (en) Data Distribution System and Method Therefor
JP2010009623A (en) Transformation of platform specific graphical user interface widgets migrated between heterogeneous device platforms
CN104603777A (en) External action suggestions in search results
US6862601B2 (en) Method, system, and program for transforming files from a source file format to a destination file format
JP2010250529A (en) Device, and method for retrieving image, and program
CN113360211A (en) Loading display method based on control and related equipment
JP2002024243A (en) Scientific information browse system and host computer and browsing computer used for the same
CN113312052A (en) Component calling method and device, electronic equipment and storage medium
JP2003022184A (en) Application program generation system, data processor, application program providing device, computer program, and recording medium
JP4444634B2 (en) PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM
KR100732134B1 (en) Table display switching method, text data conversion program, and tag program
JP2002202987A (en) Data management method
CN113626032A (en) List page configuration method and device and storage medium
JP2005078119A (en) Support system and method for software development support, program, and recording medium
JP2005242760A (en) Information retrieval support method, and information retrieval support system and server using method
JP2014207019A (en) Information processing apparatus, control method therefor, and program; as well as information processing system, control method therefor, and program
KR102181579B1 (en) Method for providing patient information sticker service and dental insurance claim system therefor
JP7441576B1 (en) Information processing system, information processing method and program
JP2004213302A (en) Error monitoring device, error monitoring method, computer-readable storage medium, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061027

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091019

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091020

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100114

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4444634

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140122

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term