JP2008052387A - Program generation device, program generation method, program, and recording medium - Google Patents
Program generation device, program generation method, program, and recording medium Download PDFInfo
- Publication number
- JP2008052387A JP2008052387A JP2006226079A JP2006226079A JP2008052387A JP 2008052387 A JP2008052387 A JP 2008052387A JP 2006226079 A JP2006226079 A JP 2006226079A JP 2006226079 A JP2006226079 A JP 2006226079A JP 2008052387 A JP2008052387 A JP 2008052387A
- Authority
- JP
- Japan
- Prior art keywords
- screen
- code
- input
- program
- transition
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、指定情報に基づいてプログラムのソースコードを生成するプログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体に関する。 The present invention relates to a program generation device, a program generation method, a program, and a recording medium that generate a source code of a program based on designation information.
ダイアログは、ユーザが該当する情報を簡便に選択できるので便利なGUI機能である。特許文献1には、ダイアログをプログラム生成要素の一つとするプログラム生成方法が提案されている。
The dialog is a convenient GUI function because the user can easily select the corresponding information.
特許文献1では、例えば、男女の性別についての選択ダイアログのように既に完成されたダイアログ、即ち、いくつかの定型のダイアログをプログラム部品として用意し、定義指定によりソースプログラムパターンに組み込む方法である。
In
特許文献2では、画面遷移プログラムの生成方法が提案されている。
しかし、特許文献1の方法は、ダイアログそのものの構造や選択データを組み込むものではない。即ち、決められたダイアログのみしか生成できず、ダイアログを自由に定義することができないという問題点があった。
However, the method of
通常画面からダイアログを表示する状態は、一種の画面遷移とみなすことができる。 The state in which the dialog is displayed from the normal screen can be regarded as a kind of screen transition.
しかし、特許文献2の方法では、画面遷移であるダイアログを自由形式で作成することは可能であるが、その画面遷移の定義が非常に煩雑になってしまうという問題点があった。
However, in the method of
また、特許文献2の方法では、画面上である部品がクリックされた際に他の部品の状態(選択,非選択,活性,不活性,独立)を遷移させるコードや、他の画面に遷移するコードを生成することは可能である。しかし、特許文献2の方法では、画面遷移時に遷移元画面から遷移先画面に対して値を受け渡しするコード等を自動生成することができない。
In the method of
また、特許文献2の方法では、画面を自由に定義できるものの、遷移元画面から受け取ったパラメータに基づいて外部のデータテーブルを検索してダイナミックにダイアログの表示内容,表示レコード数等を変更するようなコードを自動生成することはできない。
In the method of
結局、このようなコードに関しては、ユーザが手作業で作成する必要があり、非常に煩雑であるばかりでなく、高度なプログラムスキルを有するユーザでなければ行えないという問題点もあった。 After all, such a code needs to be manually created by the user, which is not only very complicated, but also has a problem that it can only be performed by a user with advanced program skills.
従来の技術では、このような画面遷移プログラムを自動生成する技術は見当たらないが、実際このような画面遷移プログラムを自動生成しようとすると、遷移する画面間の関連が存在するので、遷移条件となる項目やクリックの定義、あるいは画面遷移時に抱え込むパラメータ指定、さらに、遷移先画面が主画面に重ならないように付随的な位置に表示させるための指定等の煩雑な指定操作が必要となると推定される。 In the conventional technology, there is no technology for automatically generating such a screen transition program, but in fact, when trying to automatically generate such a screen transition program, there is a relationship between transition screens, which becomes a transition condition. It is estimated that complicated specification operations such as definition of items and clicks, specification of parameters to be held at the time of screen transition, and specification to display the transition destination screen at an accompanying position so as not to overlap the main screen are required. .
このように、自由なダイアログを自動生成するには様々な問題点があり、従来の技術では実現できなかった。 As described above, there are various problems in automatically generating a free dialog, which cannot be realized by the conventional technology.
本発明は、この問題を解決するためになされたものであり、発明の目的は、ダイアログ定義の簡便さを損なわずに、自由なダイアログを実現し、またダイアログとのパラメータの受け渡しを実現するプログラムを自動生成する仕組を提供することである。 The present invention has been made to solve this problem, and an object of the present invention is to realize a free dialog and pass parameters to and from the dialog without impairing the simplicity of the dialog definition. It is to provide a mechanism for automatically generating.
本発明は、プログラムを生成するプログラム生成装置において、生成するプログラムで用いる画面の定義,前記画面に関連する関連データテーブルの指定,前記画面に配置される入出力項目の指定,前記入出力項目への指示に対応する画面遷移の指定,前記画面遷移時に遷移元画面から遷移先画面に受け渡しされるパラメータの指定を含む指定情報に基づいて、プログラムコードを生成する生成手段を有し、前記画面の定義は、生成する画面が遷移元画面に付随する付随タイプの画面か遷移元画面に付随しない非付随タイプの画面かの指定を含むものであり、前記生成手段は、前記指定情報で付随タイプと指定された画面の表示処理を実現させるコードとして、「遷移元画面から渡されるパラメータに基づいて関連データテーブルを検索し、該検索結果を対応する画面上の入出力項目にセットする」コードを生成し、前記指定情報において付随タイプとして定義された画面への画面遷移を実現させるコードとして、「遷移先画面を遷移元画面の付随画面として呼び出すとともに画面遷移時のパラメータとして指定された遷移元画面上の入出力項目にセットされた値を遷移先画面に渡す」コードを生成し、前記指定情報で付随タイプと指定された画面から非付随タイプと指定された画面への画面遷移を実現させるコードとして、「パラメータとして指定された遷移元画面上の入出力項目の値を遷移先の画面へ渡す」コードを生成することを特徴とする。 The present invention relates to a definition of a screen used in a program to be generated, specification of a related data table related to the screen, specification of input / output items arranged on the screen, and input / output items in a program generation device for generating a program Generating means for generating a program code based on designation information including designation of a screen transition corresponding to the instruction of the screen and designation of a parameter passed from the transition source screen to the transition destination screen at the time of the screen transition, The definition includes designation of whether the screen to be generated is an accompanying type screen accompanying the transition source screen or a non-accompanying type screen not accompanying the transition source screen. As a code that realizes the display processing of the specified screen, “Search related data table based on parameters passed from transition source screen, Generate a code that sets the search result in the input / output item on the corresponding screen, and realize the screen transition to the screen defined as the accompanying type in the specified information, A screen that is called as an accompanying screen and passes the value set in the input / output item on the transition source screen specified as a parameter at the time of screen transition to the transition destination screen, and the screen specified as the accompanying type in the specified information Generate code that passes the value of the input / output item on the transition source screen specified as a parameter to the transition destination screen as the code that realizes the screen transition from the specified to the non-accompanying type screen And
プログラム自動生成環境において、入力補助機能として遷移元画面に付随する付随画面(ダイアログ)を自在に設計して自動生成できる。 In an automatic program generation environment, an accompanying screen (dialog) accompanying the transition source screen can be freely designed and automatically generated as an input auxiliary function.
例えば、関連しあった階層の入力項目があった場合に、各階層の入力項目数分ダイアログを開いて、入力項目を決定するのではなく、関連が見やすい表などの形態に項目を表示して、該当する項目グループを選択入力しやすいダイアログを生成できる。 For example, when there are input items of related hierarchies, instead of determining the input items by opening the dialog for the number of input items of each layer, display the items in a form such as a table that is easy to see the relationship. It is possible to generate a dialog that makes it easy to select and input the corresponding item group.
また、ダイアログ表示データを、設計者が指定した項目に関する部分のみに絞って表示する機能と、表示する関連項目グループが多い場合には、ダイアログ画面に検索機能を付加して、多い項目を絞り込む補完機能を生成できる。 In addition, a function that displays the dialog display data only on the part related to the item specified by the designer, and if there are many related item groups to be displayed, a search function is added to the dialog screen to complement the items to be displayed. Capability can be generated.
例えば、既にあるデータをダイアログに使用する場合に、ユーザにとって不用な項目を排除して必要な項目のみを表示し、一方、表示グループが多い場合には、ダイアログの検索により、有意な選択候補値を同一ダイアログ画面内に絞り込み、絞り込み一覧化の効果を維持しつつ、多量な表示にも有用さを発揮する機能を生成できる。 For example, when existing data is used in a dialog, items that are unnecessary for the user are excluded and only necessary items are displayed. On the other hand, when there are many display groups, a significant selection candidate value is obtained by searching the dialog. Can be created within the same dialog screen, and a function that is useful for a large number of displays can be generated while maintaining the effect of the list of refinements.
また、ダイアログから所望のグループが発見できた場合に、該当するグループを1回選択すれば、グループに含まれる項目群から必要な項目のみが入力値として一括セットされる機能を生成できる。即ち、1回の選択で複数項目を一度に選択する簡便さを享受できる。 Further, when a desired group can be found from the dialog, if a corresponding group is selected once, it is possible to generate a function in which only necessary items are collectively set as input values from an item group included in the group. That is, it is possible to enjoy the convenience of selecting a plurality of items at a time by one selection.
従って、アプリケーション開発時の入力画面と入力補助であるダイアログ画面の生成において、入力項目間の階層関係、関連性のあるデータの表示形式をユーザフレンドリにしたプログラムを容易に生成することができる等の効果を奏する。 Therefore, it is possible to easily generate a program that makes the user-friendly hierarchical relationship between the input items and the display format of the relevant data in the generation of the input screen and the dialog screen that is the input assist at the time of application development. There is an effect.
〔第1実施形態〕
本発明は、プログラム生成の効率化、開発物の管理のし易さを目的として構築されたアプリケーションプログラム自動生成システムにおいて、特に一覧表型(マトリクス型)ダイアログに関する自動生成の仕組を提供するものである。
[First Embodiment]
The present invention provides an automatic generation system particularly for a list type (matrix type) dialog in an application program automatic generation system constructed for the purpose of improving efficiency of program generation and ease of management of a developed product. is there.
まず、このアプリケーションプログラム自動生成システムの全体を、図1〜図4を参照して説明し、次いで、本発明に関わる部分を取り上げ、説明していく。 First, the entire application program automatic generation system will be described with reference to FIG. 1 to FIG. 4, and then portions related to the present invention will be taken up and described.
図1は、本発明に係るアプリケーションプログラム自動生成システムを適用可能なプログラム生成装置の一実施形態を示すブロック図である。 FIG. 1 is a block diagram showing an embodiment of a program generation apparatus to which an application program automatic generation system according to the present invention can be applied.
図1において、A101は入力装置であり、キーボードやマウス等のポインティングデバイス等に相当する。この入力装置A101は、業務仕様情報(生成する画面の定義(後述する図5に示す画面情報テーブル300),各画面の項目の定義(後述する図6に示す画面項目情報テーブル400),データ項目のデータベースへの配置とデータ項目間の関係、即ちあるデータがどのような条件のもとにどのようなデータから求められるかを示す情報(不図示)等)や、物理仕様情報(表示画面のプログラムコードを生成する際に用いる配置,色,表示の有無,サイズ等の条件情報等)の入力の選択等を行うためのものである。 In FIG. 1, A101 is an input device and corresponds to a pointing device such as a keyboard and a mouse. The input device A101 includes business specification information (definition of a screen to be generated (screen information table 300 shown in FIG. 5 described later), definition of items of each screen (screen item information table 400 shown in FIG. 6 described later), data items. The relationship between the location of the database in the database and the data items, that is, information (not shown) indicating what data is obtained from under what conditions, and physical specification information (display screen) This is for selecting the input of layout, color, presence / absence of display, condition information such as size) used when generating the program code.
A102は表示装置で、CRT,LCD等で構成される。この表示装置A102は、業務仕様情報,物理仕様情報の入力画面や、該入力画面から入力された業務仕様情報や物理仕様情報、生成されたプログラムコード等を表示可能である。 A102 is a display device, which is composed of a CRT, LCD or the like. The display device A102 can display business specification information and physical specification information input screens, business specification information and physical specification information input from the input screens, generated program codes, and the like.
A104はハードディスク等の外部記憶装置である。この外部記憶装置A104は、入力装置A101から入力された業務仕様を記憶するための入出力テーブルA109や入力された物理仕様を記憶するための物理仕様テーブルA110、生成されたプログラムコード(JSPコード112,サーブレット(Servlet)コード113,Beanコード114)等を記憶するものである。 A 104 is an external storage device such as a hard disk. The external storage device A104 includes an input / output table A109 for storing business specifications input from the input device A101, a physical specification table A110 for storing input physical specifications, and generated program code (JSP code 112). , A servlet code 113, a bean code 114), and the like.
A103は処理装置で、図2に示すCPU101,ROM103,RAM102等から構成される。
A103 is a processing device, and includes the
図2は、図1に示したプログラム生成装置のハードウェア構成の一例を示すブロック図であり、図1と同一のものには同一の符号を付してある。 FIG. 2 is a block diagram showing an example of the hardware configuration of the program generation apparatus shown in FIG. 1, and the same components as those in FIG. 1 are denoted by the same reference numerals.
図2に示すように、図1に示したプログラム生成装置は、パーソナルコンピュータ等で実現可能である。 As shown in FIG. 2, the program generation device shown in FIG. 1 can be realized by a personal computer or the like.
CPU101は、ROM103或いは外部記憶装置A104に記憶されている制御プログラムに基づいて、システムバスに接続されている各種デバイスとのアクセスを総括的に制御する構成となっている。
The
システムバスには、CPU101の主メモリ、ワークエリア等として機能するRAM202が接続されている。ROM203或いは外部メモリ104には、CPU201の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステム(以下、「OS」という。)プログラム、コンピュータA103が実行する処理を実現するために必要な各種プログラム等が記憶されている。
The system bus is connected to a RAM 202 that functions as a main memory, work area, and the like for the
CPU201は、処理の実行に際して必要な各種プログラム等をRAM202にロードして、当該プログラム等を実行することで図1に示した全体制御部A108の機能及び各種動作を実現するものである。 The CPU 201 implements the functions and various operations of the overall control unit A 108 shown in FIG. 1 by loading various programs necessary for execution of processing into the RAM 202 and executing the programs.
外部メモリ104は、上述した各種プログラムとして、図示しないブートプログラム、各種アプリケーションプログラム、フォントデータ、ユーザーファイル等を記憶する。 The external memory 104 stores a boot program, various application programs, font data, user files, etc. (not shown) as the various programs described above.
CPU201は、例えば、RAM202内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、表示装置102上でWYSIWYGを可能としている。また、CPU201は、表示装置102上のマウスカーソル(不図示)等で指示されたコマンドに基づいて、登録された種々なウィンドウを開き、種々のデータ処理を実行する。
For example, the CPU 201 performs WYSIWYG on the
以下、図1の説明に戻る。 Returning to the description of FIG.
処理装置A103のCPU101は、ROM103,外部記憶装置A104又はその他の記録媒体に格納されるプログラムをRAM102上にロードして実行することにより、画面制御部A105,仕様解析部A106,コード生成部A107,全体制御部A108の機能を実現する。
The
画面制御部A105は、入力装置A101から業務仕様情報を入力するために表示装置A102の画面を制御する業務仕様記述部A116と、入力装置A101から物理仕様情報を入力するために表示装置A102の画面を制御する物理仕様記述部A117から構成される。 The screen control unit A105 includes a business specification description unit A116 that controls the screen of the display device A102 in order to input business specification information from the input device A101, and a screen of the display device A102 in order to input physical specification information from the input device A101. It consists of a physical specification description part A117 that controls
仕様解析部A106は、入力装置A101から入力された又は外部記憶装置A104から読み出された業務仕様情報,物理仕様情報に対して字句解析や文法解析を行う。 The specification analysis unit A106 performs lexical analysis and grammatical analysis on the business specification information and physical specification information input from the input device A101 or read from the external storage device A104.
コード生成部A107は、仕様解析部A106により仕様解析された業務仕様情報,物理仕様情報に基づいてプログラムコード(JSPコードA112,サーブレット(Servlet)コードA113,BeanコードA114)を生成し、外部記憶装置A104に記憶させる。 The code generation unit A107 generates a program code (JSP code A112, servlet code A113, bean code A114) based on the business specification information and physical specification information analyzed by the specification analysis unit A106, and an external storage device Store in A104.
なお、コード生成部A107は、外部記憶装置A104から読み出された業務仕様情報(入出力テーブルA109)に基づいて外部記憶装置A104上にデータベース(DB)A115を構築するように構成してもよい。 The code generation unit A107 may be configured to construct a database (DB) A115 on the external storage device A104 based on the business specification information (input / output table A109) read from the external storage device A104. .
全体制御部A108は、画面制御部A105,仕様解析部A106,コード生成部A107等の各部の制御を行う。 The overall control unit A108 controls each unit such as the screen control unit A105, the specification analysis unit A106, and the code generation unit A107.
図3は、図1に示したコード生成部A107によって生成されたサーブレットコードA113、JSPコードA112、およびBeanコードA114を利用したウェブアプリケーションシステムの全体構成であり、本プログラム生成装置から自動生成されたものの一例を示す模式図である。 FIG. 3 shows the overall configuration of the web application system using the servlet code A113, JSP code A112, and Bean code A114 generated by the code generation unit A107 shown in FIG. 1, and is automatically generated from the program generation apparatus. It is a schematic diagram which shows an example of a thing.
コード生成部A107によって生成されたサーブレットコードA113、JSPコードA112、およびBeanコードA114は、図3に示すように、それぞれ実行可能な状態のサーブレットA207、JSP(A209)、およびBean(A208)として、サーバA204側のアプリケーションサーバA206上に配置される。 As shown in FIG. 3, the servlet code A113, JSP code A112, and Bean code A114 generated by the code generation unit A107 are executable servlet A207, JSP (A209), and Bean (A208), respectively. It is arranged on the application server A 206 on the server A 204 side.
このWebアプリケーションシステムは、クライアントA201からウェブブラウザA202によって利用される。ウェブブラウザA202からJSP(A209)にアクセスすることにより、HTMLページを生成し、クライアントA201側に返送する。そして、ウェブブラウザA202上には、JSP(A209)から送信されるHTMLページA203が表示される。 This Web application system is used from the client A201 by the Web browser A202. By accessing the JSP (A209) from the web browser A202, an HTML page is generated and returned to the client A201 side. An HTML page A203 transmitted from the JSP (A209) is displayed on the web browser A202.
また、WebブラウザA202からのリクエストは、HTTP経由でサーバA204側に送信される。サーバA204にはHTTPサーバA205とアプリケーションサーバA206があり、アプリケーションサーバA206にはサーブレットやJSPの実行環境が含まれている。 Further, a request from the Web browser A202 is transmitted to the server A204 side via HTTP. The server A 204 includes an HTTP server A 205 and an application server A 206, and the application server A 206 includes a servlet and JSP execution environment.
サーバA204側にリクエストが送信されると、リクエストに応じて該当するサーブレットA207が起動される。サーブレットA207は、対応するBean(A208)に処理を要求する。さらに、Bean(A208)はDBアクセスオブジェクトA210を利用してデータベースA211にアクセスし、業務に関する処理やデータ加工などを行い、その処理結果を保持する。DBアクセスオブジェクトA210は、業務を分析、設計した結果、作成されるクラスや、再利用可能な既存のクラスである。 When a request is transmitted to the server A 204 side, the corresponding servlet A 207 is activated in response to the request. The servlet A207 requests the corresponding Bean (A208) for processing. Further, Bean (A208) accesses the database A211 by using the DB access object A210, performs business-related processing and data processing, and holds the processing result. The DB access object A210 is a class created as a result of analyzing and designing a business, or an existing class that can be reused.
次に、サーブレットA207からJSP(A209)にBean(A208)を渡し、JSP(A209)を呼び出す。JSP(A209)は、Bean(A208)で保持する処理結果を参照して、HTMLページを生成し、クライアントA201側に返送する。クライアントA201側に返送されたHTMLページは、WebブラウザA202上に表示される。 Next, Bean (A208) is passed from Servlet A207 to JSP (A209), and JSP (A209) is called. The JSP (A209) refers to the processing result held in the Bean (A208), generates an HTML page, and returns it to the client A201 side. The HTML page returned to the client A 201 side is displayed on the Web browser A 202.
サーブレットA207は、WebブラウザA202からのリクエストの受け付け、Bean(A208)への処理要求、およびJSP(A209)の呼び出しという、それぞれの間をつなぎ、制御する役割を持つ。JSP(A209)はHTMLページを出力するための表示に関することを受け持ち、Bean(A208)はデータベースA211へのアクセス等の業務に関する処理を受け持つ。Bean(A208)やJSP(A209)を利用せず、サーブレットA207のみでWebブラウザA202からのリクエストを処理することは可能であるが、Bean(A208)やJSP(A209)を利用することでそれぞれの役割を明確に分離することで、機能分担を簡潔に把握することができる。なお、本実施形態では、コード生成部A107が生成するコードとして、JSPコード,Servletコード,Beanコードを例として挙げている。しかし、コード生成部A107が生成するコードは、JSPコード,Servletコード,Beanコードに限られるものではなく、どのようなプログラム言語のどのようなプログラムコードであってもよい。 The servlet A 207 has a role of controlling and connecting between receiving a request from the Web browser A 202, processing request to the Bean (A 208), and calling the JSP (A 209). JSP (A209) is in charge of the display for outputting the HTML page, and Bean (A208) is in charge of processing related to operations such as access to the database A211. Although it is possible to process a request from the Web browser A202 only by the servlet A207 without using the Bean (A208) or JSP (A209), each bean (A208) or JSP (A209) can be processed. By clearly separating the roles, it is possible to grasp the functional division in a concise manner. In the present embodiment, a JSP code, a Servlet code, and a Bean code are exemplified as codes generated by the code generation unit A107. However, the code generated by the code generation unit A107 is not limited to JSP code, Servlet code, and Bean code, and may be any program code in any program language.
以下、図4を参照して、本発明のプログラム生成装置における処理について説明する。 Hereinafter, with reference to FIG. 4, processing in the program generation device of the present invention will be described.
図4は、本発明のプログラム生成装置におけるにおける第1の制御処理手順の一例を示すフローチャートであり、図1に示した処理装置A103の全体制御部A108の動作に対応する。即ち、このフローチャートは図2に示したCPU101が外部記憶装置A104等に記憶されているプログラムをRAM102上で実行することにより実現される。なお、S101〜S107は各ステップを示す。
FIG. 4 is a flowchart showing an example of a first control processing procedure in the program generation device of the present invention, and corresponds to the operation of the overall control unit A108 of the processing device A103 shown in FIG. That is, this flowchart is realized by the
図1に示した処理装置A103は、コード生成する業務仕様(入出力テーブルA109)や物理仕様テーブルA110の入力を行う入力モードと、入力された業務仕様(入出力テーブルA109)や物理仕様テーブルA110からプログラムコードを生成する生成モードとを有する。 The processing apparatus A103 shown in FIG. 1 has an input mode for inputting a business specification (input / output table A109) and a physical specification table A110 for generating a code, and an input business specification (input / output table A109) and a physical specification table A110. A generation mode for generating program code from the program.
まず、全体制御部A108が起動されると、ステップS101において、全体制御部A108は、入力装置A101からオペレータの指示により選択されたモードが生成モードか入力モードかを判定する。そして、入力モードが選択されたと判定した場合には、全体制御部A108は、ステップS102に処理を進め、画面制御部A105を起動する。 First, when the overall control unit A108 is activated, in step S101, the overall control unit A108 determines whether the mode selected by the operator's instruction from the input device A101 is the generation mode or the input mode. If it is determined that the input mode has been selected, the overall control unit A108 advances the process to step S102 and activates the screen control unit A105.
起動された画面制御部A105は、ステップS103において、業務仕様記述部A116により業務仕様入力画面を表示させ、オペレータから、生成するウェブアプリケーションのアプリケーション名や業務仕様の一形態である入出力テーブルへの項目入力を受け付け、該入出力テーブルを外部記憶装置A104に格納する(図1に示した入出力テーブルA109)。なお、入出力テーブルA109については図5,図6を用いて後述する。 In step S103, the activated screen control unit A105 causes the business specification description unit A116 to display a business specification input screen, and an operator inputs an application name of the web application to be generated and an input / output table that is a form of the business specification. The item input is accepted, and the input / output table is stored in the external storage device A104 (input / output table A109 shown in FIG. 1). The input / output table A109 will be described later with reference to FIGS.
次に、画面制御部A105は、ステップS104において、物理仕様記述部A117を起動させる。起動された物理仕様記述部A117は物理仕様入力画面を表示させ、オペレータから、物理仕様の一形態である物理仕様テーブルへの入力と業務パターンの選択を受け付け、この物理仕様テーブルと業務パターンの選択情報を外部記憶装置A104にそれぞれ格納する(図1に示した物理仕様テーブルA110)。そして、処理を終了する。 Next, in step S104, the screen control unit A105 activates the physical specification description unit A117. The activated physical specification description part A117 displays a physical specification input screen, accepts input from the operator to the physical specification table that is a form of physical specifications and selection of a business pattern, and selects the physical specification table and business pattern. Information is stored in the external storage device A104 (physical specification table A110 shown in FIG. 1). Then, the process ends.
一方、ステップS101において、入力装置A101からオペレータの指示により選択されたモードが生成モードであると判定した場合には、全体制御部A108は、ステップS105に処理を進める。 On the other hand, when it is determined in step S101 that the mode selected by the operator's instruction from the input device A101 is the generation mode, the overall control unit A108 advances the process to step S105.
ステップS105では、全体制御部A108は、外部記憶装置A104に格納された入出力テーブルA109と物理仕様テーブルA110を読み出すとともに、仕様解析部A106を起動させて、読み出した入出力テーブルA109と物理仕様テーブルA110の字句解析,文法解析を行う。 In step S105, the overall control unit A108 reads the input / output table A109 and the physical specification table A110 stored in the external storage device A104, and activates the specification analysis unit A106 to read the input / output table A109 and the physical specification table. Perform A110 lexical analysis and grammatical analysis.
次に、ステップS106において、全体制御部A108は、コード生成部A107を起動させて、仕様解析部A106で字句解析,文法解析が行われた入出力テーブルA109と物理仕様テーブルA110に基づいてコード生成処理及びデータベースの構築を行う。なお、コード生成処理の詳細については図7以降を用いて後述する。 Next, in step S106, the overall control unit A108 activates the code generation unit A107, and generates a code based on the input / output table A109 and the physical specification table A110 that have been subjected to lexical analysis and grammatical analysis by the specification analysis unit A106. Processing and database construction. Details of the code generation process will be described later with reference to FIG.
そして、ステップS107において、全体制御部A108は、生成されたコードを、オペレータの指示により表示装置A102に表示し、かつ外部記憶装置A104に書き込む出力処理を行う。 In step S107, the overall control unit A108 performs an output process in which the generated code is displayed on the display device A102 and written to the external storage device A104 according to an operator instruction.
以下、図5〜図9を参照して、アプリケーションプログラムの自動生成システムから本発明を実施するにおいて、必要となるリソースを抽出して説明する。 Hereinafter, with reference to FIG. 5 to FIG. 9, resources necessary for implementing the present invention from the application program automatic generation system will be described.
図5,図6は、図1に示した入出力テーブルA109内の情報の一例を示す模式図であり、画面,画面内の項目,画面遷移等を定義したものである。コード生成処理時には、プログラムとして成立させるために必要な条件等をこのテーブルを参照してプログラムに表現する。 5 and 6 are schematic diagrams showing an example of information in the input / output table A109 shown in FIG. 1, and define screens, items in the screen, screen transitions, and the like. At the time of code generation processing, conditions and the like necessary to be established as a program are expressed in the program with reference to this table.
図1に示した109は、図5に示す画面情報テーブル300,図6に示す画面項目情報テーブル400を含む。 109 shown in FIG. 1 includes a screen information table 300 shown in FIG. 5 and a screen item information table 400 shown in FIG.
図5の画面情報テーブル300には、画面そのものの定義情報が格納されている。 The screen information table 300 in FIG. 5 stores definition information of the screen itself.
この画面情報テーブル300には、生成する画面の画面名301と、生成する画面が「通常」タイプなのか「ダイアログ」タイプなのかを指定する画面タイプ302と、その画面でデータを「表示」または「登録」するDBテーブルを指定する関連テーブル303と、画面を表示する際、その表示レコードを絞り込む条件(即ち、検索条件)を指定する表示条件304が格納されている。
The screen information table 300 includes a
なお、画面タイプ302の「通常」は、遷移元画面に付随しない非付随タイプの画面(即ち、ダイアログボックス以外の画面)を示し、画面タイプ302の「ダイアログ」は、遷移元画面に付随する付随タイプの画面(即ち、ダイアログボックス)を示す。また、画面タイプ302が「ダイアログ」と定義されている画面は、遷移元の画面から渡されるパラメータと表示条件304とに基づいて関連テーブル303で定義されたDBテーブルからデータを検索し、該検索したデータを表示する画面である。
Note that “normal” of the
図5に示した例では、レコード305により、「通常」タイプの画面である「入力画面」が定義されている。
In the example illustrated in FIG. 5, an “input screen” that is a “normal” type screen is defined by the
また、レコード306により、「ダイアログ」タイプの画面である「ダイアログ画面」が定義されている。この「ダイアログ画面」は、画面表示の際に遷移元の画面から渡されるパラメータと表示条件304での定義された条件とに基づいて関連テーブル303で定義された「部課テーブル」を検索し、該検索したデータを表示する画面となる。
The
図6の画面項目情報テーブル400には、定義情報DBのテーブルに画面に配置される項目の情報が格納されている。 The screen item information table 400 in FIG. 6 stores information on items arranged on the screen in the definition information DB table.
この画面項目情報テーブル400には、画面名401の他、画面に配置される項目の表示名である項目名402と、その項目がテキスト入力部品(入力フィールド)なのかボタン(通常のボタン,関連テーブルへデータを登録する登録ボタン,関連テーブルからデータを削除する削除ボタン等)なのかを設定する項目タイプ403と、その項目が明細形式で配置される「1」か、一覧形式(マトリクス形式)で配置される「2」かを設定する項目レベル404と、特に項目タイプがボタンの際に次に表示する画面を設定する次画面405と、同じく特に項目タイプがボタンの際に次画面に渡すパラメータとして項目名を設定する次画面パラメータ406が格納されている。
In this screen item information table 400, in addition to the
特に、図6の409に示すレコードで定義されるように、値を受け取る側の画面(入力画面)において「ダイアログ画面」を表示するボタン(選択ボタン)では、次画面パラメータ406に「ダイアログ画面」で設定してほしい項目の項目名(ここでは「部署名」,「課名」)を設定する。
In particular, as defined by the
また、図6の415に示すレコードで定義されるように、「ダイアログ画面」側の選択ボタンでも、次画面パラメータ406に設定する項目の項目名(「部署名」,「課名」)を設定する。
In addition, as defined by the
なお、レコード409と415の次画面パラメータは、互いに項目の順番を合わせる必要がある(ここでは「部署名」,「課名」の順となっている)。
Note that the next screen parameters of the
また、値を受け取る側の画面(入力画面)においてダイアログ画面を表示するボタン(選択ボタン)の次画面パラメータ406には、もう1つ、「ダイアログ画面」に渡す項目(初期表示レコード検索用の項目)の意味もある。
In addition, in the
また、図示していないが、図5の画面情報テーブル300と図6の画面項目情報テーブル400に別途他の画面定義を追加することにより、「入力画面」と「ダイアログ画面」の画面遷移だけでなく、「ダイアログ画面」から別のダイアログ画面へと画面遷移させることも簡単に定義できる。本実施形態は、複数の画面遷移を、階層をもって移動できる機能の一部を利用した例を示しているに過ぎず、この例により本発明が限定されるものではない。 Although not shown, by adding another screen definition to the screen information table 300 in FIG. 5 and the screen item information table 400 in FIG. 6, only the screen transitions of “input screen” and “dialog screen” can be achieved. It is also possible to easily define screen transition from “dialog screen” to another dialog screen. The present embodiment merely shows an example using a part of a function capable of moving a plurality of screen transitions in a hierarchy, and the present invention is not limited to this example.
以下、図5に示した画面情報テーブル300,図6に示した画面項目情報テーブル400を、該テーブルから実際に生成されるアプリケーションの画面例(図7,図8)を用いて詳細に説明する。 Hereinafter, the screen information table 300 shown in FIG. 5 and the screen item information table 400 shown in FIG. 6 will be described in detail using screen examples (FIGS. 7 and 8) of applications actually generated from the table. .
図7,図8は、図5に示した画面情報テーブル300,図6に示した画面項目情報テーブル400により定義(指定)され、コード生成部A107で生成構成される画面の一例を示す模式図である。なお、図7,図8では、同一のものには同一の符号を付してある。 FIGS. 7 and 8 are schematic diagrams showing examples of screens defined (designated) by the screen information table 300 shown in FIG. 5 and the screen item information table 400 shown in FIG. It is. In FIG. 7 and FIG. 8, the same components are denoted by the same reference numerals.
図7,図8に示す入力画面501は、図4の画面情報テーブル300の画面名301,図5の画面項目情報テーブル400の画面名401のそれぞれが「入力画面」であるレコード(図5の305,図6の407〜411)に対応する。
The
また、ダイアログ画面502は、図4の画面情報テーブル300の画面名301,図5の画面項目情報テーブル400の画面名401のそれぞれが「ダイアログ画面」であるレコード(図5の306,図4の412〜417)に対応する。
Further, the
また、入力画面501の入力フィールドである部署名505,課名506は、図6のレコード407,408に対応する。
The
さらに、入力画面501の選択ボタン507は、図6のレコード409に対応する。なお、図6のレコード409の次画面405で定義されているように、この選択ボタン507が押下(指示)された場合、ダイアログ画面502が表示される。また、この際、図6のレコード409の次画面パラメータ406で定義されているように、部署名505,課名506に設定されるパラメータ値が、ダイアログ画面502に渡される。さらに、図6のレコード415の次画面パラメータ406で定義された項目に設定されるパラメータ値がダイアログ画面502から入力画面501に戻されるパラメータともなる。
Further, the
また、入力画面501の入力フィールドである社員名508は、図6のレコード410に対応する。
An
さらに、入力画面501の追加ボタン509は、図6のレコード411に対応する。この追加ボタン509が押下(指示)された場合、図6のレコード411の次画面405で定義されているように、画面は自画面(入力画面501)のままとなる。なお、この追加ボタン509は図6のレコード411に定義されるように「登録ボタン」であるので、入力画面501で設定されたデータ(部署名,課名,社員名)が図5のレコード305で定義されている「社員テーブル」に登録されることになる。
Furthermore, an
ダイアログ画面502は、図3のレコード306で定義されるように、前の画面から渡されたパラメータ(「部署名」,「課名」)と表示条件304(部署名が同じ、または、課名が同じ)とに基づいて、部課テーブル504を検索して、検索結果を表示するものである。
As defined in the
図7に示した例では、パラメータの対象となる部署名505,課名506が空白となっているので、ダイアログ画面502では、部課テーブル504のレコード全件が検索され表示されている。
In the example shown in FIG. 7, since the
一方、図8に示した例では、パラメータの対象となる部署名505,課名506にパラメータに値が入力されてダイアログ画面502が表示された例を示してある。
On the other hand, in the example shown in FIG. 8, an example is shown in which a
図8に示すように、入力画面501で部署名505に「人事部」と入力された状態で選択ボタン507が押下されると、部署名505,課名506がパラメータとしてダイアログ画面502に渡され、ダイアログ画面502はこのパラメータ値を検索条件に部課テーブル504のレコードから部署名が「人事部」のデータが検索され(絞り込まれて)表示される。
As shown in FIG. 8, when the
なお、図示は無いが、部課テーブル504が大量である場合には、表示行を自動的に制限して、選択可能な量のみ表示する機能や、ダイアログ画面502に検索キーを入力して、表示を絞り込むこと等のプログラム機能を自動生成するように構成してもよい。
Although not shown, when the department table 504 is large, a display line is automatically limited to display only a selectable amount, or a search key is input to the
また、ダイアログ画面502の入力フィールドである部署検索510,課検索511は、図6のレコード412,413に対応する。
The
さらに、ダイアログ画面502の検索ボタン512は、図6のレコード414に対応する。なお、この検索ボタン512が押下(指示)された場合、図6のレコード414で定義されているように、部署検索510,課検索511の値を、次画面である自画面(ダイアログ画面502)に渡す。これにより、部署検索510,課検索511に設定された値に基づき、部課テーブル504が検索され、検索結果が部署名514,課名515に表示される。
Further, the search button 512 on the
なお、ダイアログ画面502の入力フィールドである部署名514,課名515,選択ボタン513は、図6のレコード412,413,411に対応するものであり、項目レベル404で「2」と定義されているように、一覧形式で配置表示される。
The
なお、一覧形式で配置されるいずれかの選択ボタン513が押下(指示)された場合、図6のレコード415の次画面405で定義されているように、入力画面501が表示される。また、この際、図6のレコード415の次画面パラメータ406で定義されているように、押下された選択ボタン513に対応する部署名514,課名515のパラメータ値が、入力画面501に渡される。
When any
また、ユーザが、ダイアログ画面502の部署検索510,課検索511に検索に適切な値を入れて、検索ボタン512を押下すると、部署検索510,課検索511に入力された値は次画面(ダイアログ画面)へ渡されるパラメータなので、部署検索510,課検索511に入力した値をキーに部課テーブル504が検索され、検索結果が部署名514,課名515,選択ボタン513として一覧表示される。
When the user enters appropriate values for the search in the
そして、ユーザは、この検索結果から選択するレコードを見つけた場合、対応する選択ボタン513を押下する。すると、ダイアログ画面502が閉じられる。なお、入力画面501からダイアログ画面502へ渡す次画面パラメータ406(図6)は入力画面501の部署名505,課名506に設定されていたが、ダイアログ画面502から入力画面501に戻るときも、当該パラメータ格納項目に応答のパラメータが格納される。即ち、入力画面501の部署名505,課名506に対して、順に、ダイアログ画面502で選択された行の「部署名」,「課名」の値が設定される。
Then, when the user finds a record to be selected from the search result, the user presses the
図7に示した例では、入力画面501で、ダイアログ画面502において「部署名」に「人事部」、「課名」に「採用課」のレコードが選択されたため、それぞれ、入力画面501の部署名505,課名506に「人事部」,「採用課」という値が設定されている。
In the example shown in FIG. 7, in the
なお、本実施形態では、部課テーブル504を例示しているが、入出力テーブルA109に他のデータテーブルを定義すれば、様々なダイアログを形成できることはいうまでもない。 In the present embodiment, the department table 504 is illustrated, but it goes without saying that various dialogs can be formed by defining other data tables in the input / output table A109.
以下、図9を参照して、図5,図6で定義(指定)されてコード生成部A107で生成構成されたアプリケーションの各画面におけるパラメータの受け渡し動作について説明する。 In the following, with reference to FIG. 9, a parameter passing operation on each screen of an application defined (designated) in FIGS. 5 and 6 and generated by the code generation unit A107 will be described.
図9は、図5,図6で定義(指定)されてコード生成部A107で生成構成されたアプリケーションの各画面におけるパラメータの受け渡し動作を示す模式図である。 FIG. 9 is a schematic diagram showing parameter passing operations on each screen of the application defined and designated in FIGS. 5 and 6 and generated and configured by the code generation unit A107.
図5に示す画面情報テーブル300,図6に示す画面項目情報テーブル400により定義され、コード生成部A107で生成構成されたアプリケーションプログラムを起動すると、ダイアログを表示する側の画面(図7,図8の入力画面501)がまず表示される(601)。ここでダイアログ表示ボタン(図7,図8の選択ボタン507)が押下されると、アプリケーションプログラムは、ダイアログを開く処理を行う(602)。この際、図6で示した画面項目情報テーブル400で定義されたダイアログ画面502が表示され、ダイアログ画面502に次画面パラメータが渡される。
When the application program defined by the screen information table 300 shown in FIG. 5 and the screen item information table 400 shown in FIG. 6 and generated and configured by the code generation unit A107 is started, a dialog display screen (FIGS. 7 and 8). The input screen 501) is first displayed (601). When a dialog display button (
ダイアログ画面502側では、渡されたパラメータを、ダイアログ側の画面表示処理の表示条件に使用する(603)。即ち、ダイアログを表示するアプリケーションプログラムは、入力画面501から渡されたパラメータを検索キーとし、表示条件304で指定されている表示条件を検索条件として関連テーブル303についてデータ検索を行い、表示するレコードを絞り込む。この場合の関連テーブルは部課テーブルである。これらの実行手順が、ダイアログを表示するアプリケーションプログラムとして生成される。
On the
なお、このダイアログ画面502で表示されているレコードを変更したい場合、ユーザは、検索条件(図7,図8の部署検索510,課検索511)を入力し、検索ボタン512を押下する。
When the user wants to change the record displayed on the
するとアプリケーションプログラムは、自ダイアログ(ダイアログ画面502)の再表示を行う(604)。この際、ダイアログ画面502から自ダイアログ(ダイアログ画面502)にパラメータが渡される。そして、渡されたパラメータは、ダイアログ画面502の画面表示処理の表示条件に使用され、渡されたパラメータを使用してデータ検索が行われ、表示するレコードが絞り込まれる。
Then, the application program redisplays its own dialog (dialog screen 502) (604). At this time, parameters are passed from the
そして、ユーザは、ダイアログ画面502で該当するレコードを見つけた際には、そのレコードの選択ボタン513を押下する。すると、ダイアログ画面502は閉じられ、選択されたレコードの情報が元画面(入力画面501)に渡される(605)。
When the user finds a corresponding record on the
そして、入力画面501では、渡されたデータが部署名505,課名506に設定される。なお、このとき、ダイアログ画面502から渡されるパラメータの各項目への設定位置は、ダイアログ画面502へ渡したパラメータの項目順に対応する。即ち、入力画面501ではダイアログ画面502から渡されるパラメータを、ダイアログ画面502へ渡したパラメータの順に項目に設定していく。以上のように、パラメータの受け渡し動作が行われる。
In the
以上の説明は、図6における次画面パラメータの定義に基づいているが、実施例ではたまたま入力画面501の次画面パラメータ格納項目名とダイアログ画面502の次画面パラメータ格納項目名が、それぞれ「部課名」、「課名」と同じであるので、わかりやすいが、一方の項目を異なるものにしてもよい。ただし、入力画面501の次画面パラメータ格納項目が受ける戻りパラメータは、パラメータの順、データの性格が同じでなければならない。
The above description is based on the definition of the next screen parameter in FIG. 6, but in the embodiment, the next screen parameter storage item name of the
以下、図10〜図14を参照して、図1に示したコード生成部A107におけるコード生成処理について説明する。 Hereinafter, the code generation processing in the code generation unit A107 illustrated in FIG. 1 will be described with reference to FIGS.
図10は、本発明のプログラム生成装置におけるにおける第2の制御処理手順の一例を示すフローチャートであり、図1に示した処理装置A103のコード生成部A107のコード生成処理における本発明に関わる部分の処理に対応する。即ち、このフローチャートは図2に示したCPU101が外部記憶装置A104等に記憶されているプログラムをRAM102上で実行することにより実現される。なお、S901〜S902は各ステップを示す。
FIG. 10 is a flowchart showing an example of a second control processing procedure in the program generation apparatus of the present invention. In the code generation processing of the code generation unit A107 of the processing apparatus A103 shown in FIG. Corresponds to processing. That is, this flowchart is realized by the
まず、ステップS901において、コード生成部A107は、外部記憶装置A104の入出力テーブルA109から画面情報テーブル300を読み込み、その情報から画面生成処理(画面定義の生成処理)を行う。なお、この画面生成処理の詳細は図11に示す。 First, in step S901, the code generation unit A107 reads the screen information table 300 from the input / output table A109 of the external storage device A104, and performs screen generation processing (screen definition generation processing) from the information. Details of the screen generation process are shown in FIG.
まず、ステップS902において、コード生成部A107は、外部記憶装置A104の入出力テーブルA109から画面情報テーブル300と画面項目情報テーブル400を読み込み、その情報から画面項目生成処理(画面項目の生成処理、及び項目選択条件、画面遷移等の機能の組み込む処理)を行う。なお、この画面項目生成処理の詳細は図12に示す。 First, in step S902, the code generation unit A107 reads the screen information table 300 and the screen item information table 400 from the input / output table A109 of the external storage device A104, and generates screen item generation processing (screen item generation processing, and Processes for incorporating functions such as item selection conditions and screen transitions). Details of the screen item generation processing are shown in FIG.
図11は、本発明のプログラム生成装置におけるにおける第3の制御処理手順の一例を示すフローチャートであり、図10のステップS901に示した画面生成処理に対応する。即ち、このフローチャートは図2に示したCPU101が外部記憶装置A104等に記憶されているプログラムをRAM102上で実行することにより実現される。なお、S1001〜S1008は各ステップを示す。
FIG. 11 is a flowchart showing an example of a third control processing procedure in the program generation apparatus of the present invention, and corresponds to the screen generation processing shown in step S901 of FIG. That is, this flowchart is realized by the
まず、ステップS1001において、コード生成部A107は、外部記憶装置A104の入出力テーブルA109から画面情報テーブル300のレコードを全件読み込み、S1002〜S1008に示すように、全ての画面情報レコードに対して、S1003〜S1007の処理を行う。 First, in step S1001, the code generation unit A107 reads all records of the screen information table 300 from the input / output table A109 of the external storage device A104, and for all screen information records, as shown in S1002 to S1008, The processing of S1003 to S1007 is performed.
まず、ステップS1003において、コード生成部A107は、画面情報テーブル300のカレントレコードの画面タイプ302に対応する画面表示用のプログラムファイル(以下、画面表示プログラムファイル)の中間ファイルを外部記憶装置A104内に作成する。即ち、この画面表示プログラムファイルは、画面毎に作成される。なお、この画面表示プログラムファイルは、予めプログラム構造が定められた外部記憶装置A104に格納されているプログラムテンプレートの複製を作成することにより作成される。即ち、この時点でこの画面表示プログラムファイルはまだ雛型となっており、以降S1004〜S1007で画面固有の情報を埋め込む処理を行う。
First, in step S1003, the code generation unit A107 stores an intermediate file of a screen display program file (hereinafter referred to as a screen display program file) corresponding to the
ステップS1004において、コード生成部A107は、S1003で作成した画面表示プログラムファイルに、画面情報テーブル300のカレントレコードの画面名301を設定するコードを埋め込む。
In step S1004, the code generation unit A107 embeds a code for setting the
次にステップS1005において、コード生成部A107は、同様にS1003で作成した画面表示プログラムファイルに、画面情報テーブル300のカレントレコードの画面タイプ302を設定するコードを埋め込む。以下、順次、画面表示する項目テーブルや、表示条件を設定し、該当コードを埋め込む手順に進むが、画面タイプが「ダイアログ」の場合には、このダイアログがオープンされた際にこの画面(ダイアログ)の表示処理を実現させるコードとして、「遷移元の画面から受け取ったパラメータと表示条件を検索条件として、このダイアログに関連するデータテーブルを検索し、検索結果を取得する」汎用的な処理コードも埋め込むものとする。この汎用的な処理コードは、予めプログラム構造が定めされたプログラム生成テンプレートであり、外部記憶装置A104内に格納されている。
In step S1005, the code generation unit A107 embeds a code for setting the
次にステップS1006において、コード生成部A107は、S1003で作成した画面表示プログラムファイルに、画面情報テーブル300のカレントレコードの関連テーブル303をこの画面で表示するテーブルに設定するコードを埋め込む。画面タイプが「ダイアログ」の場合、上述した検索処理を行う汎用的な処理コード内に検索するデータテーブル名として、関連テーブル303で指定されたデータテーブル名を埋め込む。 In step S1006, the code generation unit A107 embeds a code for setting the relation table 303 of the current record in the screen information table 300 in the table displayed on this screen in the screen display program file created in S1003. When the screen type is “dialog”, the data table name specified in the related table 303 is embedded as the data table name to be searched in the general-purpose processing code for performing the above-described search processing.
最後にステップS1007において、コード生成部A107は、S1003で作成した画面表示プログラムファイルに、画面情報テーブル300のカレントレコードの表示条件303を設定するコードを埋め込む。画面タイプが「ダイアログ」の場合、上述した検索処理を行う汎用的な処理コード内に検索条件として、関連テーブル303で指定された表示条件を埋め込む。そして、次の画面情報レコードに処理を移行させる。
Finally, in step S1007, the code generation unit A107 embeds a code for setting the
そして、コード生成部A107は、S1001で読み込んだ全ての画面情報レコードに対してS1003〜S1007の処理を終了したと判定した場合には、本フローチャートの処理を終了する。 If the code generation unit A107 determines that the processing of S1003 to S1007 has been completed for all the screen information records read in S1001, the processing of this flowchart ends.
図12は、本発明のプログラム生成装置におけるにおける第4の制御処理手順の一例を示すフローチャートであり、図10のステップS902に示した画面項目生成処理に対応する。即ち、このフローチャートは図2に示したCPU101が外部記憶装置A104等に記憶されているプログラムをRAM102上で実行することにより実現される。なお、S1101〜S1118は各ステップを示す。
FIG. 12 is a flowchart showing an example of a fourth control processing procedure in the program generation device of the present invention, and corresponds to the screen item generation processing shown in step S902 of FIG. That is, this flowchart is realized by the
まず、ステップS1101において、コード生成部A107は、外部記憶装置A104の入出力テーブルA109から画面情報テーブル300のレコードを全件読み込み、S1102〜S1118に示すように、全ての画面情報レコードに対して、S1103〜S1117の処理を行う。 First, in step S1101, the code generation unit A107 reads all records of the screen information table 300 from the input / output table A109 of the external storage device A104, and for all screen information records, as shown in S1102 to S1118. The processing of S1103 to S1117 is performed.
まず、ステップS1103において、コード生成部A107は、外部記憶装置A104から画面項目情報テーブル400のレコードを全件読み込み、S1104〜S1117に示すように、全ての画面項目情報レコードに対して、S1105〜S1116の処理を行う。 First, in step S1103, the code generation unit A107 reads all records of the screen item information table 400 from the external storage device A104, and as shown in S1104 to S1117, S1105 to S1116 for all screen item information records. Perform the process.
まず、ステップS1105において、コード生成部A107は、図10のステップS901で生成されたカレントの画面情報レコードに対応する画面表示プログラムファイル(以下、カレントの画面表示プログラムファイル)に対して、カレントの画面項目情報レコードの項目名402を設定するコードを埋め込む。
First, in step S1105, the code generation unit A107 executes the current screen for the screen display program file (hereinafter, the current screen display program file) corresponding to the current screen information record generated in step S901 in FIG. A code for setting the
次に、ステップS1106において、コード生成部A107は、カレントの画面項目情報レコードの項目タイプ403を参照して、カレントの項目が「ボタン」であるか否かを判定する。
Next, in step S1106, the code generation unit A107 refers to the
ステップS1106で、カレントの項目が「ボタン」でないと判定した場合には、コード生成部A107は、ステップS1108において、カレントの画面表示プログラムファイルに対して入力フィールドを配置するコードを埋め込む。この際、カレントの項目の項目レベル404の値が「1」の場合は明細形式で、「2」の場合は一覧形式で(即ち、動的に変化する表示対象の全レコードが一覧表示(マトリクス形式で表示)されるように)配置するコードを埋め込む。即ち、一覧形式(マトリクス形式)の場合、関連データテーブルの検索結果に基づいてこの入力フィールドをマトリクス形式に配置させ、該マトリクス形式に配置されたこの入力フィールドに、前記検索結果の各レコード内の対応する項目の値をそれぞれセットするコードを埋め込む。例えば図7,図8の部署名514,課名515のように入力フィールドが配置されるようにコードを埋め込む。そして、ステップS1117に処理を進め、次の項目に処理を移行させる。
If it is determined in step S1106 that the current item is not a “button”, the code generation unit A107 embeds a code for arranging the input field in the current screen display program file in step S1108. At this time, when the value of the
一方、ステップS1106で、カレントの項目が「ボタン」であると判定した場合には、コード生成部A107は、ステップS1107において、カレントの画面表示プログラムファイルに対してボタンを配置するコードを埋め込む。この際、カレントの項目の項目レベル404の値が「1」の場合は明細形式で、「2」の場合は一覧形式で(即ち、動的に変化する表示対象の全レコードに対応して一覧表示されるように)配置するコードを埋め込む。一覧形式の場合、例えば図7,図8の選択ボタン513のようにボタンが配置されるコードを埋め込む。そして、ステップS1109に処理を進める。
On the other hand, if it is determined in step S1106 that the current item is “button”, the code generation unit A107 embeds a code for arranging buttons in the current screen display program file in step S1107. At this time, if the value of the
ステップS1109では、コード生成部A107は、カレントの画面項目情報レコードの次画面405及びカレントの画面情報レコードに基づいて、次画面が「ダイアログ」であるか否かを判定する。
In step S1109, the code generation unit A107 determines whether the next screen is a “dialog” based on the
ステップS1109で、次画面が「ダイアログ」であると判定した場合には、ステップS1110において、コード生成部A107は、ボタンが押下(指示)された際に実行される処理として、遷移先がダイアログである場合の処理コード(例えば図13の702)を、カレントの画面表示プログラムファイルに対して設定する(埋め込む)。さらに、この処理コードに対して、コード生成部A107は、カレントの画面項目情報レコードの次画面405の情報(次画面の画面名)を設定するコードを埋め込む。例えば、図13の704に示すコードを埋め込む。このコードにより、自画面からダイアログを開くことができるようになる。
If it is determined in step S1109 that the next screen is “dialog”, in step S1110, the code generation unit A107 performs processing when the button is pressed (instructed), and the transition destination is a dialog. A processing code in a certain case (for example, 702 in FIG. 13) is set (embedded) in the current screen display program file. Further, in this processing code, the code generation unit A107 embeds a code for setting information (screen name of the next screen) of the
さらに、ステップS1111において、コード生成部A107は、遷移先のダイアログの次画面パラメータとして、カレントの画面項目情報レコードの次画面パラメータ406の情報を、カレントの画面表示プログラムファイルに対して設定するコードを埋め込む。例えば、図13の701,703に示すコードを埋め込む。このコードにより、自画面からダイアログへパラメータを渡すこと(及び受け取ること)ができるようになる。本実施例では、701と703には同じ項目名をセットするので、次画面パラメータとしてダイアログ画面に渡すパラメータ格納項目は、ダイアログ画面から戻ってきたときのパラメータ格納項目にもなる。即ち、ステップS1110,S1111では、ダイアログタイプの画面への画面遷移を実現させるコードとして、「遷移先画面をダイアログとして呼び出すとともに画面遷移時の次画面パラメータとして指定された遷移元画面上の入力フィールドにセットされた値を遷移先画面に渡す」コードを生成する。そして、ステップS1117に処理を進め、次の項目に処理を移行させる。
Further, in step S1111, the code generation unit A107 sets a code for setting the information of the
また、ダイアログ画面から遷移元画面へ戻る処理は、後述するステップS1113,S1114において、「遷移先画面から戻された値を次画面パラメータとして指定された遷移元画面の入力フィールドにセットする」コードを生成する。このようにして、入力画面からダイアログ画面にパラメータと共に画面遷移し、また、応答用のパラメータを持って入力画面に戻ってくる処理を生成できる。 In addition, in the process of returning from the dialog screen to the transition source screen, a code “set the value returned from the transition destination screen in the input field of the transition source screen specified as the next screen parameter” in steps S1113 and S1114 described later. Generate. In this way, it is possible to generate a process of transitioning from the input screen to the dialog screen together with the parameters, and returning to the input screen with the response parameters.
なお、図13は、図12のステップS1110,S1111の結果出力されるダイアログへ遷移するボタン部分の処理コードの断片の一例を示す図である。 FIG. 13 is a diagram illustrating an example of a processing code fragment of a button portion that transitions to a dialog output as a result of steps S1110 and S1111 of FIG.
一方、ステップS1109で、次画面が「ダイアログ」でないと判定した場合には、ステップS1112において、コード生成部A107は、カレントの画面情報レコードの画面タイプ302に基づいて、自画面が「ダイアログ」であるか否かを判定する。
On the other hand, if it is determined in step S1109 that the next screen is not “dialog”, in step S1112, the code generation unit A107 determines that the own screen is “dialog” based on the
ステップS1112で、自画面が「ダイアログ」であると判定した場合には、ステップS1113において、コード生成部A107は、遷移先がダイアログでなく且つ遷移元がダイアログである場合の処理コード(例えば、図14の803)を、カレントの画面表示プログラムファイルに対して設定する(埋め込む)。これが、ダイアログ画面(元は遷移先、今は遷移元)から入力画面(元は遷移元、今は遷移先)へ戻る処理を含む。このコードにより、自画面(ダイアログ)から通常画面へ遷移させることができるようになる。即ち、ステップS1113,S1114では、ダイアログから通常の画面への画面遷移を実現させるコードとして、「押下(指示)されたボタンに対応してマトリクス形式で配置された入力フィールド(押下されたボタンと同じ行(又は列)の入力フィールド)のうち次画面パラメータとして指定された入力フィールドの値を、遷移先画面へ渡す」コードを生成する。 If it is determined in step S1112 that the own screen is a “dialog”, in step S1113, the code generation unit A107 performs processing code when the transition destination is not a dialog and the transition source is a dialog (for example, FIG. 14 803) is set (embedded) in the current screen display program file. This includes a process of returning from the dialog screen (originally the transition destination, now the transition source) to the input screen (original is the transition source, now the transition destination). This code makes it possible to transition from the own screen (dialog) to the normal screen. In other words, in steps S1113 and S1114, as the code for realizing the screen transition from the dialog to the normal screen, “input fields arranged in a matrix format corresponding to the pressed (instructed) button (the same as the pressed button). "Code of the input field specified as the next screen parameter in the input field of the row (or column)" is generated.
さらに、ステップS1114において、コード生成部A107は、カレントの画面項目情報レコードの次画面パラメータ406の情報を、カレントの画面表示プログラムファイルに対して設定するコードを埋め込む。例えば、図13の801,802に示すコードを埋め込む。このコードにより、自画面(ダイアログ)から通常画面へパラメータを渡すことができるようになる。そして、ステップS1117に処理を進め、次の項目に処理を移行させる。
Further, in step S1114, the code generation unit A107 embeds a code for setting the information of the
なお、図14は、図12のステップS1113,S1114の結果出力されるダイアログから元画面へ遷移するボタン部分の処理コードの断片の一例を示す図である。 FIG. 14 is a diagram illustrating an example of a processing code fragment of a button portion that transitions from the dialog output as a result of steps S1113 and S1114 in FIG. 12 to the original screen.
一方、ステップS1112で、自画面が「ダイアログ」でないと判定した場合には、ステップS1115において、コード生成部A107は、遷移先及び遷移元が通常画面である場合の処理コード(不図示)を、カレントの画面表示プログラムファイルに対して設定する(埋め込む)。画面項目情報テーブル400のレコード411の場合(追加ボタン509の場合)もこれに相当する。なお、この追加ボタン509は「登録ボタン」であるため、このステップで、関連テーブルへの登録処理に対応するコードが埋め込まれる。この処理コードも、予め作成された部品として外部記憶装置A104内に格納されているものとする。そして、埋め込んだ処理コードに、カレントの画像情報レコード内の関連テーブル303の情報(ここでは「社員テーブル」)を埋め込むものとする。
On the other hand, if it is determined in step S1112 that the own screen is not a “dialog”, in step S1115, the code generation unit A107 obtains a processing code (not shown) when the transition destination and the transition source are normal screens. Set (embed) the current screen display program file. The case of the
さらに、ステップS1116において、コード生成部A107は、カレントの画面項目情報レコードの次画面パラメータ406の情報を、カレントの画面表示プログラムファイルに対して設定するコードを埋め込む。そして、次の項目に処理を移行させる。
Furthermore, in step S1116, the code generation unit A107 embeds a code for setting the information of the
そして、コード生成部A107は、ステップS1103で読み込んだ全ての画面項目情報レコードに対してS1105〜S1116の処理を終了したと判定した場合には、次の画面に処理を移行させる。 If the code generation unit A107 determines that the processing of S1105 to S1116 has been completed for all the screen item information records read in step S1103, the code generation unit A107 shifts the processing to the next screen.
そして、コード生成部A107は、ステップS1101で読み込んだ全ての画面情報レコードに対してS1103〜S1117の処理を終了したと判定した場合には、ステップS1118に処理を進め、本フローチャートの処理を終了する。 If the code generation unit A107 determines that the processing of S1103 to S1117 has been completed for all the screen information records read in step S1101, the code generation unit A107 advances the processing to step S1118 and ends the processing of this flowchart. .
以上示したように、本発明では、入力補助としての選択ダイアログを通常画面の定義と同様に自由に設計でき、これらを図5,図6に示したような簡便な指定情報により定義して、プログラムコードを自動生成することができる。 As described above, in the present invention, the selection dialog as input assistance can be freely designed in the same way as the definition of the normal screen, and these are defined by simple designation information as shown in FIGS. Program code can be automatically generated.
そして、一覧表形式(マトリクス形式)のようなユーザに見やすい画面を自在に設計できるので、関連項目を一覧表にして、選択ダイアログに適用でき、見やすく、かつ1回の選択で複数項目を一度に選択する簡便さを実現できる。 In addition, a user-friendly screen such as a list format (matrix format) can be designed freely, so that related items can be applied to the selection dialog as a list, easy to view, and multiple items can be selected at one time. Easy to select.
例えば、関連しあった階層の入力項目があった場合に、各階層の入力項目数分ダイアログを開いて、入力項目を決定するのではなく、関連が見やすい表などの形態に項目を表示するので、該当する項目グループを発見しやすいダイアログに設計できる。 For example, when there are input items of related hierarchies, the dialog is opened for the number of input items in each hierarchy and the items are displayed in a form such as a table that is easy to see, rather than determining the input items. , It is possible to design a dialog that makes it easy to find the corresponding item group.
さらに、ダイアログから所望のグループが発見できた場合に、該当するグループを1回選択すれば、グループに含まれる項目群から必要な項目のみが入力値として一括セットされる機能を設定できる効果を奏する。即ち、1回の選択で複数項目を一度に選択する簡便さを享受できる。 Furthermore, when a desired group can be found from the dialog, if a corresponding group is selected once, an effect can be set in which only a necessary item from the group of items included in the group is set as an input value. . That is, it is possible to enjoy the convenience of selecting a plurality of items at a time by one selection.
このように、アプリケーション開発時における、入力画面と入力補助であるダイアログ画面の生成において、入力項目間の階層関係、関連性のあるデータの表示形式をユーザフレンドリにするプログラムを楽に構築できる効果を奏する。 As described above, in the generation of the input screen and the dialog screen which is the input assist at the time of application development, there is an effect that it is possible to easily construct a program that makes the hierarchical relationship between the input items and the display format of the related data user-friendly. .
そのうえ、ダイアログ表示データは、おしきせのデータではなく、設計者が指定することにより、必要な項目を絞って表示できる。 In addition, the dialog display data can be displayed by narrowing down the necessary items by specifying it by the designer, not the data of the wisdom.
また同様に、選択ダイアログの選択項目を外部のデータテーブル等から持ってくる場合、データが大量にある場合は、検索機能をダイアログ画面に適用でき、ほどよいデータ量に絞って表示できる。 Similarly, when the selection items of the selection dialog are brought from an external data table or the like, if there is a large amount of data, the search function can be applied to the dialog screen, and the data can be displayed with a moderate amount of data.
よって、ダイアログ表示データを、設計者が指定した項目に関する部分のみに絞って表示する機能と、表示する関連項目グループが多い場合には、ダイアログ画面に検索機能を付加して、多い項目を絞り込む補完機能を設定できる。 Therefore, the function to display only the part related to the items specified by the designer and display the dialog display data, and if there are many related item groups to be displayed, a search function is added to the dialog screen to complement the items to be displayed. Function can be set.
例えば、既にあるデータをダイアログに使用する場合に、ユーザにとって不用な項目を排除し、必要な項目のみを表示するようにし、一方、表示グループが多い場合には、検索により、有意な選択候補値を同一ダイアログ画面内に絞り込むので、絞り込み一覧化の効果を維持しつつ、多量な表示にも有用さを発揮するダイアログ画面を構築することができる。 For example, when existing data is used in a dialog, items unnecessary for the user are excluded and only necessary items are displayed. On the other hand, when there are many display groups, a significant selection candidate value is obtained by searching. Can be narrowed down within the same dialog screen, so that it is possible to construct a dialog screen that is useful for a large number of displays while maintaining the effect of narrowing down the list.
さらに、画面遷移に付随する面倒な定義を必要とせず、画面タイプを指定するといった簡便な定義のみで、ダイアログ形式の画面表示ができるプログラムを自動生成できる。 Furthermore, it is possible to automatically generate a program that can display a screen in a dialog format with only a simple definition such as specifying a screen type without requiring a troublesome definition associated with screen transition.
このように、プログラム自動生成環境において、ダイアログ本来の役割である入力補助機能として、表形式のようなユーザに見やすい表示形式を自在に設計でき、ダイアログ定義の簡便さを損なわずに、自由なダイアログ設計やダイアログ画面の遷移機能を享受できる。 In this way, in the automatic program generation environment, a user-friendly display format such as a table format can be freely designed as an input assist function, which is the original role of the dialog, and a free dialog can be created without impairing the simplicity of the dialog definition. You can enjoy design and dialog screen transition functions.
上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。 The configuration and contents of the various data described above are not limited to this, and it goes without saying that the various data and configurations are configured according to the application and purpose.
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。 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.
以下、図15に示すメモリマップを参照して本発明に係るプログラム生成装置で読み取り可能なデータ処理プログラムの構成について説明する。 The configuration of a 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.
図15は、本発明に係るプログラム生成装置で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。 FIG. 15 is a diagram for explaining a memory map of a recording medium (storage medium) for storing various data processing programs that can be read by the program generating 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.
本実施形態における図4,図10,図11,図12に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。 The functions shown in FIGS. 4, 10, 11, and 12 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 in which a program code of software for realizing the functions of the above-described embodiments is recorded is supplied to the system or apparatus, and the computer (or CPU or MPU) of the system or apparatus is stored in the recording medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the 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 a recording medium storing a program represented by 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.
なお、上述した実施形態およびその変形例のいずれか又は全てを組み合わせた構成も全て本発明に含まれるものである。 In addition, all the structures which combined any one or all of embodiment mentioned above and its modification are also included in this invention.
A101 入力装置
A102 表示装置
A103 処理装置
A104 外部記憶装置
A105 画面制御部
A107 コード生成部
A108 全体制御部
A109 入出力テーブル
A112 JSPコード
A113 サーブレットコード
A114 Beanコード
A101 Input device A102 Display device A103 Processing device A104 External storage device A105 Screen control unit A107 Code generation unit A108 Overall control unit A109 Input / output table A112 JSP code A113 Servlet code A114 Bean code
Claims (12)
生成するプログラムで用いる画面の定義,前記画面に関連する関連データテーブルの指定,前記画面に配置される入出力項目の指定,前記入出力項目への指示に対応する画面遷移の指定,前記画面遷移時に遷移元画面から遷移先画面に受け渡しされるパラメータの指定を含む指定情報に基づいて、プログラムコードを生成する生成手段を有し、
前記画面の定義は、生成する画面が遷移元画面に付随する付随タイプの画面か遷移元画面に付随しない非付随タイプの画面かの指定を含むものであり、
前記生成手段は、
前記指定情報で付随タイプと指定された画面の表示処理を実現させるコードとして、「遷移元画面から渡されるパラメータに基づいて関連データテーブルを検索し、該検索結果を対応する画面上の入出力項目にセットする」コードを生成し、
前記指定情報において付随タイプとして定義された画面への画面遷移を実現させるコードとして、「遷移先画面を遷移元画面の付随画面として呼び出すとともに画面遷移時のパラメータとして指定された遷移元画面上の入出力項目にセットされた値を遷移先画面に渡す」コードを生成し、
前記指定情報で付随タイプと指定された画面から非付随タイプと指定された画面への画面遷移を実現させるコードとして、「パラメータとして指定された遷移元画面上の入出力項目の値を遷移先の画面へ渡す」コードを生成する、
ことを特徴とするプログラム生成装置。 In a program generation device for generating a program,
Definition of screen used in generated program, specification of related data table related to the screen, specification of input / output items to be arranged on the screen, specification of screen transition corresponding to instructions to the input / output items, screen transition Based on designation information including designation of parameters that are sometimes passed from the transition source screen to the transition destination screen, a generating means for generating a program code is provided.
The definition of the screen includes designation of whether the screen to be generated is an accompanying type screen accompanying the transition source screen or a non-accompanying type screen not accompanying the transition source screen,
The generating means includes
As a code for realizing the display processing of the screen specified as the accompanying type in the specification information, “search the related data table based on the parameter passed from the transition source screen and input the input / output items on the screen corresponding to the search result Generate code to set
The code that realizes the screen transition to the screen defined as the accompanying type in the designation information is “call the transition destination screen as the accompanying screen of the transition source screen and input on the transition source screen specified as the parameter at the time of screen transition. Generate code that passes the value set in the output item to the transition destination screen,
As a code that realizes the screen transition from the screen specified as the accompanying type in the specification information to the screen specified as the non-accompanying type, the value of the input / output item on the transition source screen specified as the parameter Generate code to pass to screen
A program generation device characterized by the above.
前記生成手段は、前記指定情報で付随タイプと指定され且つマトリクス形式の入出項目の配置が指定される画面内の表示処理を実現させるコードとして、「遷移元画面から渡されるパラメータに基づいて関連データテーブルを検索し、該検索結果に基づいてマトリクス形式で指定された入出力項目をマトリクス形式に配置させ、該マトリクス形式に配置された各入出力項目に、前記検索結果の各レコード内の対応する項目の値をそれぞれセットする」コードを生成することを特徴とする請求項1に記載のプログラム生成装置。 The designation of the input / output items includes designation of whether or not the input / output items are arranged in a matrix format,
The generation means is a code that realizes display processing in a screen that is designated as an accompanying type in the designation information and in which arrangement of input / output items in a matrix format is designated as “related data based on parameters passed from the transition source screen” A table is searched, input / output items specified in a matrix format based on the search result are arranged in a matrix format, and each input / output item arranged in the matrix format corresponds to each record in the search result The program generation apparatus according to claim 1, wherein a code for setting each item value is generated.
前記生成手段は、前記指定情報で指定された関連データテーブルを検索するコードとして、「遷移元画面から渡されるパラメータと検索条件とに基づいて関連データテーブルを検索する」コードを含めることを特徴とすることを特徴とする請求項1乃至3のいずれか1項に記載のプログラム生成装置。 The designation information includes a search condition of the related data table,
The generating means includes a code for “searching the related data table based on parameters and search conditions passed from the transition source screen” as a code for searching the related data table specified by the specification information. The program generation device according to claim 1, wherein the program generation device is a program generation device.
生成するプログラムで用いる画面の定義,前記画面に関連する関連データテーブルの指定,前記画面に配置される入出力項目の指定,前記入出力項目への指示に対応する画面遷移の指定,前記画面遷移時に遷移元画面から遷移先画面に受け渡しされるパラメータの指定を含む指定情報に基づいて、プログラムコードを生成する生成ステップを有し、
前記画面の定義は、生成する画面が遷移元画面に付随する付随タイプの画面か遷移元画面に付随しない非付随タイプの画面かの指定を含むものであり、
前記生成ステップは、
前記指定情報で付随タイプと指定された画面の表示処理を実現させるコードとして、「遷移元画面から渡されるパラメータに基づいて関連データテーブルを検索し、該検索結果を対応する画面上の入出力項目にセットする」コードを生成し、
前記指定情報において付随タイプとして定義された画面への画面遷移を実現させるコードとして、「遷移先画面を遷移元画面の付随画面として呼び出すとともに画面遷移時のパラメータとして指定された遷移元画面上の入出力項目にセットされた値を遷移先画面に渡す」コードを生成し、
前記指定情報で付随タイプと指定された画面から非付随タイプと指定された画面への画面遷移を実現させるコードとして、「パラメータとして指定された遷移元画面上の入出力項目の値を遷移先の画面へ渡す」コードを生成する、
ことを特徴とするプログラム生成方法。 In a program generation method for generating a program,
Definition of screen used in generated program, specification of related data table related to the screen, specification of input / output items to be arranged on the screen, specification of screen transition corresponding to instructions to the input / output items, screen transition A generation step for generating a program code based on designation information including designation of a parameter sometimes passed from the transition source screen to the transition destination screen,
The definition of the screen includes designation of whether the screen to be generated is an accompanying type screen accompanying the transition source screen or a non-accompanying type screen not accompanying the transition source screen,
The generating step includes
As a code for realizing the display processing of the screen specified as the accompanying type in the specification information, “search the related data table based on the parameter passed from the transition source screen and input the input / output items on the screen corresponding to the search result Generate code to set
The code that realizes the screen transition to the screen defined as the accompanying type in the designation information is “call the transition destination screen as the accompanying screen of the transition source screen and input on the transition source screen specified as the parameter at the time of screen transition. Generate code that passes the value set in the output item to the transition destination screen,
As a code that realizes the screen transition from the screen specified as the accompanying type in the specification information to the screen specified as the non-accompanying type, the value of the input / output item on the transition source screen specified as the parameter Generate code to pass to screen
A program generation method characterized by the above.
前記生成ステップは、前記指定情報で付随タイプと指定され且つマトリクス形式の入出項目の配置が指定される画面内の表示処理を実現させるコードとして、「遷移元画面から渡されるパラメータに基づいて関連データテーブルを検索し、該検索結果に基づいてマトリクス形式で指定された入出力項目をマトリクス形式に配置させ、該マトリクス形式に配置された各入出力項目に、前記検索結果の各レコード内の対応する項目の値をそれぞれセットする」コードを生成することを特徴とする請求項6に記載のプログラム生成方法。 The designation of the input / output items includes designation of whether or not the input / output items are arranged in a matrix format,
In the generation step, a code that realizes display processing in a screen that is designated as an accompanying type in the designation information and in which arrangement of input / output items in a matrix format is designated as “related data based on parameters passed from transition source screen” A table is searched, input / output items specified in a matrix format based on the search result are arranged in a matrix format, and each input / output item arranged in the matrix format corresponds to each record in the search result The program generation method according to claim 6, wherein a code for setting each item value is generated.
前記生成ステップは、前記指定情報で指定された関連データテーブルを検索するコードとして、「遷移元画面から渡されるパラメータと検索条件とに基づいて関連データテーブルを検索する」コードを含めることを特徴とすることを特徴とする請求項6乃至8のいずれか1項に記載のプログラム生成方法。 The designation information includes a search condition of the related data table,
The generating step includes a code for “searching the related data table based on parameters and search conditions passed from the transition source screen” as a code for searching the related data table specified by the specification information. The program generation method according to any one of claims 6 to 8, wherein:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006226079A JP4976783B2 (en) | 2006-08-23 | 2006-08-23 | PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006226079A JP4976783B2 (en) | 2006-08-23 | 2006-08-23 | PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008052387A true JP2008052387A (en) | 2008-03-06 |
JP2008052387A5 JP2008052387A5 (en) | 2009-05-21 |
JP4976783B2 JP4976783B2 (en) | 2012-07-18 |
Family
ID=39236405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006226079A Active JP4976783B2 (en) | 2006-08-23 | 2006-08-23 | PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4976783B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016173721A (en) * | 2015-03-17 | 2016-09-29 | キヤノンマーケティングジャパン株式会社 | Information processing device, control method of information processing device, and program |
JP2020024724A (en) * | 2015-03-17 | 2020-02-13 | キヤノンマーケティングジャパン株式会社 | Information processor, method for controlling information processor, and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08286899A (en) * | 1995-04-18 | 1996-11-01 | Hitachi Ltd | Program composition by using display screen state transition table |
JP2000029677A (en) * | 1998-07-15 | 2000-01-28 | Hitachi Software Eng Co Ltd | Automatic generating device for screen constitution |
JP2000330774A (en) * | 1999-05-20 | 2000-11-30 | Nec Corp | System and method for automatically generating specifications editor, and storage medium |
JP2005070831A (en) * | 2003-08-22 | 2005-03-17 | Canon Software Inc | Program generator, program generating method, program, and recording medium |
-
2006
- 2006-08-23 JP JP2006226079A patent/JP4976783B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08286899A (en) * | 1995-04-18 | 1996-11-01 | Hitachi Ltd | Program composition by using display screen state transition table |
JP2000029677A (en) * | 1998-07-15 | 2000-01-28 | Hitachi Software Eng Co Ltd | Automatic generating device for screen constitution |
JP2000330774A (en) * | 1999-05-20 | 2000-11-30 | Nec Corp | System and method for automatically generating specifications editor, and storage medium |
JP2005070831A (en) * | 2003-08-22 | 2005-03-17 | Canon Software Inc | Program generator, program generating method, program, and recording medium |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016173721A (en) * | 2015-03-17 | 2016-09-29 | キヤノンマーケティングジャパン株式会社 | Information processing device, control method of information processing device, and program |
JP2020024724A (en) * | 2015-03-17 | 2020-02-13 | キヤノンマーケティングジャパン株式会社 | Information processor, method for controlling information processor, and program |
Also Published As
Publication number | Publication date |
---|---|
JP4976783B2 (en) | 2012-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100863125B1 (en) | User interface element representation with simplified view | |
KR101159390B1 (en) | Method and system for displaying and interacting with paginated content | |
US8745581B2 (en) | Method and system for selectively copying portions of a document contents in a computing system (smart copy and paste | |
KR101038896B1 (en) | Service program generation technology | |
JP4306991B2 (en) | Data processing apparatus and method, computer program, and storage medium | |
JP5697661B2 (en) | Platform extensibility framework | |
US8074167B2 (en) | Cross domain presence of web user interface and logic | |
JP2002189595A (en) | Integrated method for creating refreshable web query | |
US20060015810A1 (en) | Web page rendering priority mechanism | |
US20110197162A1 (en) | Method and system for organizing information with sharable user interface | |
JP4893108B2 (en) | Information processing apparatus, information processing method, and computer program | |
US7296222B1 (en) | Method and system for preparing and displaying page structures for web sites | |
EP1143351A2 (en) | Multimedia information structuring and application generating method and apparatus | |
EP1582976A2 (en) | Graphical user interface for guiding the customisation of layout templates | |
CN107832052B (en) | Method and device for displaying preview page, storage medium and electronic equipment | |
JP5284030B2 (en) | Search condition specifying device, search condition specifying method and program | |
US9535692B2 (en) | Systems and methods for managing related files in a software development environment | |
JP2011180796A (en) | Content sharing system | |
JP2006302243A (en) | Task-based interface with underlying extensible framework | |
JP2006350477A (en) | File management device, its control method, computer program, and computer readable storage medium | |
JP4976783B2 (en) | PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM | |
JP4386243B2 (en) | PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM AND RECORDING MEDIUM | |
JP4885651B2 (en) | PROCESSING DEVICE, CONTROL METHOD IN PROCESSING DEVICE, PROGRAM, AND RECORDING MEDIUM | |
EP1691278B1 (en) | Method and computer system for editing documents | |
JP2004326626A (en) | Structured document file management system and structured document file management method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20080403 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081224 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090408 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110816 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111017 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120117 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120221 |
|
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: 20120321 |
|
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: 20120413 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4976783 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150420 Year of fee payment: 3 |
|
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 |
|
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 |
|
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 |