JP2008052387A - Program generation device, program generation method, program, and recording medium - Google Patents

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

Info

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
Application number
JP2006226079A
Other languages
Japanese (ja)
Other versions
JP4976783B2 (en
JP2008052387A5 (en
Inventor
Tomoko Suzuki
智子 鈴木
Isao Ueda
勲 上田
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 JP2006226079A priority Critical patent/JP4976783B2/en
Publication of JP2008052387A publication Critical patent/JP2008052387A/en
Publication of JP2008052387A5 publication Critical patent/JP2008052387A5/ja
Application granted granted Critical
Publication of JP4976783B2 publication Critical patent/JP4976783B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a mechanism for automatically generating a program realizing free dialogue and transfer of a parameter to/from the dialogue without being impaired in simplicity of a screen definition. <P>SOLUTION: Based on designation information inside an input/output table A109, a code generation part A107 generates a code, which is used for searching an associated data table based on a parameter given from a transition source screen and setting a retrieval result in a table format to a matching input/output item, as a display processing code of a dialogue screen, a code, which is used for calling a transition destination screen as a dialogue and transferring a value designated as a next screen parameter and set in the input/output item on the transition source screen to the transition destination screen, as a screen transition code to the dialogue screen, and a code, which is used for transferring the value of the input/output item on the transition source screen designated as the next screen parameter to the transition destination screen, as a screen transition code from the dialog screen to a normal screen. <P>COPYRIGHT: (C)2008,JPO&INPIT

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. Patent Document 1 proposes a program generation method in which a dialog is one of the program generation elements.

特許文献1では、例えば、男女の性別についての選択ダイアログのように既に完成されたダイアログ、即ち、いくつかの定型のダイアログをプログラム部品として用意し、定義指定によりソースプログラムパターンに組み込む方法である。   In Patent Document 1, for example, a dialog that has already been completed, such as a selection dialog for gender sex, that is, some fixed dialogs are prepared as program parts and incorporated into a source program pattern by definition designation.

特許文献2では、画面遷移プログラムの生成方法が提案されている。
特許第3227066号 特開平8−286899号公報
Patent Document 2 proposes a method for generating a screen transition program.
Japanese Patent No. 3227066 JP-A-8-286899

しかし、特許文献1の方法は、ダイアログそのものの構造や選択データを組み込むものではない。即ち、決められたダイアログのみしか生成できず、ダイアログを自由に定義することができないという問題点があった。   However, the method of Patent Document 1 does not incorporate the structure of the dialog itself or selection data. That is, there is a problem that only a predetermined dialog can be generated, and the dialog cannot be freely defined.

通常画面からダイアログを表示する状態は、一種の画面遷移とみなすことができる。   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 Patent Document 2, it is possible to create a dialog which is a screen transition in a free format, but there is a problem that the definition of the screen transition becomes very complicated.

また、特許文献2の方法では、画面上である部品がクリックされた際に他の部品の状態(選択,非選択,活性,不活性,独立)を遷移させるコードや、他の画面に遷移するコードを生成することは可能である。しかし、特許文献2の方法では、画面遷移時に遷移元画面から遷移先画面に対して値を受け渡しするコード等を自動生成することができない。   In the method of Patent Document 2, when a part on the screen is clicked, a code for transitioning the state of another part (selected, non-selected, active, inactive, independent), or transition to another screen is performed. It is possible to generate code. However, with the method of Patent Document 2, it is not possible to automatically generate a code or the like for passing a value from the transition source screen to the transition destination screen during screen transition.

また、特許文献2の方法では、画面を自由に定義できるものの、遷移元画面から受け取ったパラメータに基づいて外部のデータテーブルを検索してダイナミックにダイアログの表示内容,表示レコード数等を変更するようなコードを自動生成することはできない。   In the method of Patent Document 2, although the screen can be freely defined, an external data table is searched based on the parameters received from the transition source screen, and the display content of the dialog, the number of display records, etc. are dynamically changed. It is not possible to automatically generate simple code.

結局、このようなコードに関しては、ユーザが手作業で作成する必要があり、非常に煩雑であるばかりでなく、高度なプログラムスキルを有するユーザでなければ行えないという問題点もあった。   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 CPU 101, ROM 103, RAM 102, and the like shown in FIG.

図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 CPU 101 is configured to comprehensively control access to various devices connected to the system bus based on a control program stored in the ROM 103 or the external storage device A104.

システムバスには、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 CPU 101. In the ROM 203 or the external memory 104, a BIOS (Basic Input / Output System), an operating system (hereinafter referred to as “OS”) program, which is a control program of the CPU 201, and various types of processing necessary for realizing the processing executed by the computer A103. Programs and so on are stored.

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 display device 102 by executing outline font rasterization processing on a display information area in the RAM 202. Further, the CPU 201 opens various registered windows based on commands instructed by a mouse cursor (not shown) on the display device 102 and executes various data processing.

以下、図1の説明に戻る。   Returning to the description of FIG.

処理装置A103のCPU101は、ROM103,外部記憶装置A104又はその他の記録媒体に格納されるプログラムをRAM102上にロードして実行することにより、画面制御部A105,仕様解析部A106,コード生成部A107,全体制御部A108の機能を実現する。   The CPU 101 of the processing device A103 loads a program stored in the ROM 103, the external storage device A104 or other recording medium onto the RAM 102 and executes it, thereby executing a screen control unit A105, a specification analysis unit A106, a code generation unit A107, The function of the overall control unit A 108 is realized.

画面制御部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 CPU 101 shown in FIG. 2 executing a program stored in the external storage device A 104 or the like on the RAM 102. S101 to S107 indicate each step.

図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 screen name 301 of a screen to be generated, a screen type 302 for designating whether the screen to be generated is a “normal” type or a “dialog” type, and “display” or “data” on the screen. A related table 303 that specifies a DB table to be “registered” and a display condition 304 that specifies a condition (that is, a search condition) for narrowing the display record when the screen is displayed are stored.

なお、画面タイプ302の「通常」は、遷移元画面に付随しない非付随タイプの画面(即ち、ダイアログボックス以外の画面)を示し、画面タイプ302の「ダイアログ」は、遷移元画面に付随する付随タイプの画面(即ち、ダイアログボックス)を示す。また、画面タイプ302が「ダイアログ」と定義されている画面は、遷移元の画面から渡されるパラメータと表示条件304とに基づいて関連テーブル303で定義されたDBテーブルからデータを検索し、該検索したデータを表示する画面である。   Note that “normal” of the screen type 302 indicates a non-accompanying type screen (that is, a screen other than the dialog box) not associated with the transition source screen, and the “dialog” of the screen type 302 is associated with the transition source screen. A type screen (ie, a dialog box) is shown. In addition, a screen in which the screen type 302 is defined as “dialog” is searched for data from the DB table defined in the related table 303 based on the parameters passed from the transition source screen and the display condition 304, and the search is performed. It is a screen that displays the data.

図5に示した例では、レコード305により、「通常」タイプの画面である「入力画面」が定義されている。   In the example illustrated in FIG. 5, an “input screen” that is a “normal” type screen is defined by the record 305.

また、レコード306により、「ダイアログ」タイプの画面である「ダイアログ画面」が定義されている。この「ダイアログ画面」は、画面表示の際に遷移元の画面から渡されるパラメータと表示条件304での定義された条件とに基づいて関連テーブル303で定義された「部課テーブル」を検索し、該検索したデータを表示する画面となる。   The record 306 defines a “dialog screen” that is a “dialog” type screen. This “dialog screen” searches the “division table” defined in the related table 303 based on the parameters passed from the transition source screen at the time of screen display and the conditions defined in the display conditions 304, and The screen displays the retrieved data.

図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 screen name 401, an item name 402 which is a display name of an item arranged on the screen, and whether the item is a text input component (input field) or a button (ordinary button, related An item type 403 for setting whether the item is a registration button for registering data in a table, a delete button for deleting data from a related table, and the item is arranged in a detailed format “1” or a list format (matrix format) The item level 404 that is set to “2” arranged in the above, the next screen 405 that sets the screen to be displayed next when the item type is a button, and the next screen when the item type is a button are also passed to the next screen A next screen parameter 406 for setting an item name as a parameter is stored.

特に、図6の409に示すレコードで定義されるように、値を受け取る側の画面(入力画面)において「ダイアログ画面」を表示するボタン(選択ボタン)では、次画面パラメータ406に「ダイアログ画面」で設定してほしい項目の項目名(ここでは「部署名」,「課名」)を設定する。   In particular, as defined by the record 409 in FIG. 6, a button (select button) for displaying a “dialog screen” on the screen (input screen) that receives a value has “dialog screen” as the next screen parameter 406. Set the item name (in this case, “Department name”, “Section name”) of the item you want to set.

また、図6の415に示すレコードで定義されるように、「ダイアログ画面」側の選択ボタンでも、次画面パラメータ406に設定する項目の項目名(「部署名」,「課名」)を設定する。   In addition, as defined by the record 415 in FIG. 6, the item name (“department name”, “section name”) of the item to be set in the next screen parameter 406 is set with the selection button on the “dialog screen” side. To do.

なお、レコード409と415の次画面パラメータは、互いに項目の順番を合わせる必要がある(ここでは「部署名」,「課名」の順となっている)。   Note that the next screen parameters of the records 409 and 415 need to match the order of the items with each other (in this case, “Department name”, “Section name”).

また、値を受け取る側の画面(入力画面)においてダイアログ画面を表示するボタン(選択ボタン)の次画面パラメータ406には、もう1つ、「ダイアログ画面」に渡す項目(初期表示レコード検索用の項目)の意味もある。   In addition, in the next screen parameter 406 of the button (select button) for displaying the dialog screen on the screen that receives the value (input screen), another item to be passed to the “dialog screen” (the item for initial display record search) ) Also has a meaning.

また、図示していないが、図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 input screen 501 shown in FIGS. 7 and 8 is a record in which the screen name 301 in the screen information table 300 in FIG. 4 and the screen name 401 in the screen item information table 400 in FIG. 5 are “input screen” (FIG. 5). 305, corresponding to 407 to 411 in FIG.

また、ダイアログ画面502は、図4の画面情報テーブル300の画面名301,図5の画面項目情報テーブル400の画面名401のそれぞれが「ダイアログ画面」であるレコード(図5の306,図4の412〜417)に対応する。   Further, the dialog screen 502 includes records in which the screen name 301 in the screen information table 300 in FIG. 4 and the screen name 401 in the screen item information table 400 in FIG. 5 are “dialog screen” (306 in FIG. 5 and FIG. 4). 412 to 417).

また、入力画面501の入力フィールドである部署名505,課名506は、図6のレコード407,408に対応する。   The department name 505 and the section name 506, which are input fields on the input screen 501, correspond to the records 407 and 408 in FIG.

さらに、入力画面501の選択ボタン507は、図6のレコード409に対応する。なお、図6のレコード409の次画面405で定義されているように、この選択ボタン507が押下(指示)された場合、ダイアログ画面502が表示される。また、この際、図6のレコード409の次画面パラメータ406で定義されているように、部署名505,課名506に設定されるパラメータ値が、ダイアログ画面502に渡される。さらに、図6のレコード415の次画面パラメータ406で定義された項目に設定されるパラメータ値がダイアログ画面502から入力画面501に戻されるパラメータともなる。   Further, the selection button 507 on the input screen 501 corresponds to the record 409 in FIG. As defined in the next screen 405 of the record 409 in FIG. 6, when this selection button 507 is pressed (instructed), a dialog screen 502 is displayed. At this time, the parameter values set in the department name 505 and the section name 506 are passed to the dialog screen 502 as defined in the next screen parameter 406 of the record 409 in FIG. Furthermore, the parameter value set in the item defined by the next screen parameter 406 of the record 415 in FIG. 6 is also a parameter returned from the dialog screen 502 to the input screen 501.

また、入力画面501の入力フィールドである社員名508は、図6のレコード410に対応する。   An employee name 508 that is an input field on the input screen 501 corresponds to the record 410 in FIG.

さらに、入力画面501の追加ボタン509は、図6のレコード411に対応する。この追加ボタン509が押下(指示)された場合、図6のレコード411の次画面405で定義されているように、画面は自画面(入力画面501)のままとなる。なお、この追加ボタン509は図6のレコード411に定義されるように「登録ボタン」であるので、入力画面501で設定されたデータ(部署名,課名,社員名)が図5のレコード305で定義されている「社員テーブル」に登録されることになる。   Furthermore, an add button 509 on the input screen 501 corresponds to the record 411 in FIG. When this add button 509 is pressed (instructed), the screen remains as its own screen (input screen 501) as defined in the next screen 405 of the record 411 in FIG. Since the add button 509 is a “registration button” as defined in the record 411 in FIG. 6, the data (department name, section name, employee name) set on the input screen 501 is the record 305 in FIG. Will be registered in the “employee table” defined in.

ダイアログ画面502は、図3のレコード306で定義されるように、前の画面から渡されたパラメータ(「部署名」,「課名」)と表示条件304(部署名が同じ、または、課名が同じ)とに基づいて、部課テーブル504を検索して、検索結果を表示するものである。   As defined in the record 306 in FIG. 3, the dialog screen 502 includes parameters (“Department name” and “Section name”) passed from the previous screen and display conditions 304 (the same department name or the same section name). Is the same), the department table 504 is searched and the search result is displayed.

図7に示した例では、パラメータの対象となる部署名505,課名506が空白となっているので、ダイアログ画面502では、部課テーブル504のレコード全件が検索され表示されている。   In the example shown in FIG. 7, since the department name 505 and the section name 506 that are the parameters are blank, all the records in the department table 504 are retrieved and displayed on the dialog screen 502.

一方、図8に示した例では、パラメータの対象となる部署名505,課名506にパラメータに値が入力されてダイアログ画面502が表示された例を示してある。   On the other hand, in the example shown in FIG. 8, an example is shown in which a dialog screen 502 is displayed with values entered for parameters in the department name 505 and the section name 506 that are the parameters.

図8に示すように、入力画面501で部署名505に「人事部」と入力された状態で選択ボタン507が押下されると、部署名505,課名506がパラメータとしてダイアログ画面502に渡され、ダイアログ画面502はこのパラメータ値を検索条件に部課テーブル504のレコードから部署名が「人事部」のデータが検索され(絞り込まれて)表示される。   As shown in FIG. 8, when the selection button 507 is pressed while “HR” is entered in the department name 505 on the input screen 501, the department name 505 and the section name 506 are passed to the dialog screen 502 as parameters. In the dialog screen 502, the data whose department name is “Human Resources Department” is searched from the records of the department table 504 using this parameter value as a search condition and displayed.

なお、図示は無いが、部課テーブル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 dialog screen 502 and displayed. A program function such as narrowing down may be automatically generated.

また、ダイアログ画面502の入力フィールドである部署検索510,課検索511は、図6のレコード412,413に対応する。   The department search 510 and section search 511, which are input fields on the dialog screen 502, correspond to the records 412 and 413 in FIG.

さらに、ダイアログ画面502の検索ボタン512は、図6のレコード414に対応する。なお、この検索ボタン512が押下(指示)された場合、図6のレコード414で定義されているように、部署検索510,課検索511の値を、次画面である自画面(ダイアログ画面502)に渡す。これにより、部署検索510,課検索511に設定された値に基づき、部課テーブル504が検索され、検索結果が部署名514,課名515に表示される。   Further, the search button 512 on the dialog screen 502 corresponds to the record 414 in FIG. When the search button 512 is pressed (instructed), as defined in the record 414 in FIG. 6, the values of the department search 510 and the section search 511 are set to the next screen as the own screen (dialog screen 502). To pass. As a result, the department table 504 is searched based on the values set in the department search 510 and the section search 511, and the search result is displayed in the department name 514 and the section name 515.

なお、ダイアログ画面502の入力フィールドである部署名514,課名515,選択ボタン513は、図6のレコード412,413,411に対応するものであり、項目レベル404で「2」と定義されているように、一覧形式で配置表示される。   The department name 514, section name 515, and selection button 513, which are input fields on the dialog screen 502, correspond to the records 412, 413, and 411 in FIG. 6 and are defined as “2” at the item level 404. As shown in the list format.

なお、一覧形式で配置されるいずれかの選択ボタン513が押下(指示)された場合、図6のレコード415の次画面405で定義されているように、入力画面501が表示される。また、この際、図6のレコード415の次画面パラメータ406で定義されているように、押下された選択ボタン513に対応する部署名514,課名515のパラメータ値が、入力画面501に渡される。   When any selection button 513 arranged in the list format is pressed (instructed), an input screen 501 is displayed as defined in the next screen 405 of the record 415 in FIG. At this time, the parameter values of the department name 514 and the section name 515 corresponding to the pressed selection button 513 are passed to the input screen 501 as defined by the next screen parameter 406 of the record 415 in FIG. .

また、ユーザが、ダイアログ画面502の部署検索510,課検索511に検索に適切な値を入れて、検索ボタン512を押下すると、部署検索510,課検索511に入力された値は次画面(ダイアログ画面)へ渡されるパラメータなので、部署検索510,課検索511に入力した値をキーに部課テーブル504が検索され、検索結果が部署名514,課名515,選択ボタン513として一覧表示される。   When the user enters appropriate values for the search in the department search 510 and section search 511 on the dialog screen 502 and presses the search button 512, the values input in the department search 510 and section search 511 are displayed on the next screen (dialog. The department table 504 is searched using the values input to the department search 510 and section search 511 as keys, and the search results are displayed as a list of department names 514, section names 515, and selection buttons 513.

そして、ユーザは、この検索結果から選択するレコードを見つけた場合、対応する選択ボタン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 corresponding selection button 513. Then, the dialog screen 502 is closed. The next screen parameter 406 (FIG. 6) passed from the input screen 501 to the dialog screen 502 is set to the department name 505 and the section name 506 of the input screen 501, but when returning from the dialog screen 502 to the input screen 501, Response parameters are stored in the parameter storage item. That is, for the department name 505 and the section name 506 on the input screen 501, the values of “part name” and “section name” in the row selected on the dialog screen 502 are set in order.

図7に示した例では、入力画面501で、ダイアログ画面502において「部署名」に「人事部」、「課名」に「採用課」のレコードが選択されたため、それぞれ、入力画面501の部署名505,課名506に「人事部」,「採用課」という値が設定されている。   In the example shown in FIG. 7, in the input screen 501, a record of “HR department” is selected as “Department name” and “Recruitment section” is selected as “Section name” on the dialog screen 502. In the name 505 and the section name 506, values of “HR department” and “recruitment section” are set.

なお、本実施形態では、部課テーブル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 (selection button 507 in FIGS. 7 and 8) is pressed here, the application program performs processing for opening the dialog (602). At this time, the dialog screen 502 defined in the screen item information table 400 shown in FIG. 6 is displayed, and the next screen parameter is passed to the dialog screen 502.

ダイアログ画面502側では、渡されたパラメータを、ダイアログ側の画面表示処理の表示条件に使用する(603)。即ち、ダイアログを表示するアプリケーションプログラムは、入力画面501から渡されたパラメータを検索キーとし、表示条件304で指定されている表示条件を検索条件として関連テーブル303についてデータ検索を行い、表示するレコードを絞り込む。この場合の関連テーブルは部課テーブルである。これらの実行手順が、ダイアログを表示するアプリケーションプログラムとして生成される。   On the dialog screen 502 side, the passed parameters are used as display conditions for screen display processing on the dialog side (603). In other words, the application program that displays the dialog performs a data search on the related table 303 using the parameters passed from the input screen 501 as search keys and the display conditions specified in the display conditions 304 as search conditions, and displays records to be displayed. Narrow down. The related table in this case is a department table. These execution procedures are generated as an application program that displays a dialog.

なお、このダイアログ画面502で表示されているレコードを変更したい場合、ユーザは、検索条件(図7,図8の部署検索510,課検索511)を入力し、検索ボタン512を押下する。   When the user wants to change the record displayed on the dialog screen 502, the user inputs search conditions (department search 510 and section search 511 in FIGS. 7 and 8) and presses the search button 512.

するとアプリケーションプログラムは、自ダイアログ(ダイアログ画面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 dialog screen 502 to the own dialog (dialog screen 502). The passed parameters are used as display conditions for the screen display process of the dialog screen 502, and data search is performed using the passed parameters to narrow down the records to be displayed.

そして、ユーザは、ダイアログ画面502で該当するレコードを見つけた際には、そのレコードの選択ボタン513を押下する。すると、ダイアログ画面502は閉じられ、選択されたレコードの情報が元画面(入力画面501)に渡される(605)。   When the user finds a corresponding record on the dialog screen 502, the user presses a selection button 513 for that record. Then, the dialog screen 502 is closed and the information of the selected record is transferred to the original screen (input screen 501) (605).

そして、入力画面501では、渡されたデータが部署名505,課名506に設定される。なお、このとき、ダイアログ画面502から渡されるパラメータの各項目への設定位置は、ダイアログ画面502へ渡したパラメータの項目順に対応する。即ち、入力画面501ではダイアログ画面502から渡されるパラメータを、ダイアログ画面502へ渡したパラメータの順に項目に設定していく。以上のように、パラメータの受け渡し動作が行われる。   In the input screen 501, the passed data is set in the department name 505 and the section name 506. At this time, the setting position of each parameter item passed from the dialog screen 502 corresponds to the parameter item order passed to the dialog screen 502. That is, on the input screen 501, parameters passed from the dialog screen 502 are set in the items in the order of parameters passed to the dialog screen 502. As described above, the parameter passing operation is performed.

以上の説明は、図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 input screen 501 and the next screen parameter storage item name of the dialog screen 502 happen to be “section name”. ”And“ Section Name ”, so that it is easy to understand, but one item may be different. However, the return parameters received by the next screen parameter storage item of the input screen 501 must have the same parameter order and data characteristics.

以下、図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 CPU 101 shown in FIG. 2 executing a program stored in the external storage device A 104 or the like on the RAM 102. S901 to S902 indicate each step.

まず、ステップ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 CPU 101 shown in FIG. 2 executing a program stored in the external storage device A 104 or the like on the RAM 102. S1001 to S1008 indicate each step.

まず、ステップ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 screen type 302 of the current record of the screen information table 300 in the external storage device A104. create. That is, this screen display program file is created for each screen. The screen display program file is created by creating a copy of the program template stored in the external storage device A104 having a predetermined program structure. That is, at this time, the screen display program file is still a template, and the process of embedding screen-specific information is performed in S1004 to S1007.

ステップS1004において、コード生成部A107は、S1003で作成した画面表示プログラムファイルに、画面情報テーブル300のカレントレコードの画面名301を設定するコードを埋め込む。   In step S1004, the code generation unit A107 embeds a code for setting the screen name 301 of the current record in the screen information table 300 in the screen display program file created in S1003.

次にステップS1005において、コード生成部A107は、同様にS1003で作成した画面表示プログラムファイルに、画面情報テーブル300のカレントレコードの画面タイプ302を設定するコードを埋め込む。以下、順次、画面表示する項目テーブルや、表示条件を設定し、該当コードを埋め込む手順に進むが、画面タイプが「ダイアログ」の場合には、このダイアログがオープンされた際にこの画面(ダイアログ)の表示処理を実現させるコードとして、「遷移元の画面から受け取ったパラメータと表示条件を検索条件として、このダイアログに関連するデータテーブルを検索し、検索結果を取得する」汎用的な処理コードも埋め込むものとする。この汎用的な処理コードは、予めプログラム構造が定めされたプログラム生成テンプレートであり、外部記憶装置A104内に格納されている。   In step S1005, the code generation unit A107 embeds a code for setting the screen type 302 of the current record in the screen information table 300 in the screen display program file created in step S1003. In the following, set the item table to be displayed on the screen and the display conditions and proceed to the procedure for embedding the corresponding code. If the screen type is “dialog”, this screen (dialog) will be displayed when this dialog is opened. As a code that realizes the display processing of, embed general-purpose processing code that "searches the data table related to this dialog using the parameters and display conditions received from the transition source screen as search conditions and obtains search results" Shall. This general-purpose processing code is a program generation template having a predetermined program structure, and is stored in the external storage device A104.

次にステップ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 display condition 303 of the current record in the screen information table 300 in the screen display program file created in S1003. When the screen type is “dialog”, the display condition specified in the related table 303 is embedded as a search condition in the general-purpose processing code for performing the above-described search process. Then, the processing is shifted to the next screen information record.

そして、コード生成部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 CPU 101 shown in FIG. 2 executing a program stored in the external storage device A 104 or the like on the RAM 102. S1101 to S1118 indicate each step.

まず、ステップ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 item name 402 of the item information record is embedded.

次に、ステップS1106において、コード生成部A107は、カレントの画面項目情報レコードの項目タイプ403を参照して、カレントの項目が「ボタン」であるか否かを判定する。   Next, in step S1106, the code generation unit A107 refers to the item type 403 of the current screen item information record and determines whether or not the current item is a “button”.

ステップ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 item level 404 of the current item is “1”, it is in a detailed format, and in the case of “2”, it is in a list format (that is, all records to be dynamically changed are displayed in a list (matrix). Embed the placement code (as displayed in the format). That is, in the case of the list format (matrix format), this input field is arranged in a matrix format based on the search result of the related data table, and the input field arranged in the matrix format is set in each record of the search result. Embed the code that sets the value of the corresponding item. For example, the code is embedded so that the input field is arranged as in the department name 514 and the section name 515 in FIGS. Then, the process proceeds to step S1117 to shift the process to the next item.

一方、ステップ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 item level 404 of the current item is “1”, it is in the detailed format, and if it is “2”, it is in the list format (that is, the list corresponding to all the records to be dynamically changed) Embed the code to be placed (as displayed). In the case of the list format, for example, a code in which a button is arranged is embedded like a selection button 513 in FIGS. Then, the process proceeds to step S1109.

ステップS1109では、コード生成部A107は、カレントの画面項目情報レコードの次画面405及びカレントの画面情報レコードに基づいて、次画面が「ダイアログ」であるか否かを判定する。   In step S1109, the code generation unit A107 determines whether the next screen is a “dialog” based on the next screen 405 of the current screen item information record and the current screen information record.

ステップ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 next screen 405 of the current screen item information record. For example, a code indicated by 704 in FIG. 13 is embedded. This code makes it possible to open a dialog from its own screen.

さらに、ステップ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 next screen parameter 406 of the current screen item information record for the current screen display program file as the next screen parameter of the transition destination dialog. Embed. For example, the codes indicated by 701 and 703 in FIG. 13 are embedded. This code allows you to pass (and receive) parameters from your screen to the dialog. In this embodiment, since the same item name is set in 701 and 703, the parameter storage item to be passed to the dialog screen as the next screen parameter is also the parameter storage item when returning from the dialog screen. That is, in steps S1110 and S1111, as a code for realizing a screen transition to a dialog type screen, “call the transition destination screen as a dialog and enter the input field on the transition source screen specified as the next screen parameter at the time of screen transition”. Generate code that passes the set value to the transition destination screen. Then, the process proceeds to step S1117 to shift the process to the next item.

また、ダイアログ画面から遷移元画面へ戻る処理は、後述するステップ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 screen type 302 of the current screen information record. It is determined whether or not there is.

ステップ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 next screen parameter 406 of the current screen item information record in the current screen display program file. For example, the codes indicated by 801 and 802 in FIG. 13 are embedded. This code makes it possible to pass parameters from the own screen (dialog) to the normal screen. Then, the process proceeds to step S1117 to shift the process to the next item.

なお、図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 record 411 of the screen item information table 400 (in the case of the add button 509) corresponds to this. Since this add button 509 is a “registration button”, a code corresponding to the registration process in the related table is embedded in this step. This processing code is also stored in the external storage device A104 as a part created in advance. Then, it is assumed that the information (here, “employee table”) of the related table 303 in the current image information record is embedded in the embedded processing code.

さらに、ステップS1116において、コード生成部A107は、カレントの画面項目情報レコードの次画面パラメータ406の情報を、カレントの画面表示プログラムファイルに対して設定するコードを埋め込む。そして、次の項目に処理を移行させる。   Furthermore, in step S1116, the code generation unit A107 embeds a code for setting the information of the next screen parameter 406 of the current screen item information record in the current screen display program file. Then, the processing is shifted to the next item.

そして、コード生成部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.

本発明に係るアプリケーションプログラム自動生成システムを適用可能なプログラム生成装置の一実施形態を示すブロック図である。It is a block diagram which shows one Embodiment of the program production | generation apparatus which can apply the application program automatic generation system which concerns on this invention. 図1に示したプログラム生成装置のハードウェア構成の一例を示すブロック図である。It is a block diagram which shows an example of the hardware constitutions of the program generation apparatus shown in FIG. 図1に示したコード生成部によって生成されたサーブレットコード、JSPコード、およびBeanコードを利用したウェブアプリケーションシステムの全体構成であり、本プログラム生成装置から自動生成されたものの一例を示す模式図である。FIG. 2 is a schematic diagram illustrating an example of an entire configuration of a web application system using a servlet code, a JSP code, and a bean code generated by the code generation unit illustrated in FIG. 1 and automatically generated from the program generation apparatus. . 本発明のプログラム生成装置におけるにおける第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 which shows an example of the information in the input / output table shown in FIG. 図1に示した入出力テーブル内の情報の一例を示す模式図である。It is a schematic diagram which shows an example of the information in the input / output table shown in FIG. 図5に示した画面情報テーブル,図6に示した画面項目情報テーブルにより定義(指定)され、コード生成部で生成構成される画面の一例を示す模式図である。FIG. 7 is a schematic diagram showing an example of a screen defined (designated) by the screen information table shown in FIG. 5 and the screen item information table shown in FIG. 図5に示した画面情報テーブル,図6に示した画面項目情報テーブルにより定義(指定)され、コード生成部で生成構成される画面の一例を示す模式図である。FIG. 7 is a schematic diagram showing an example of a screen defined (designated) by the screen information table shown in FIG. 5 and the screen item information table shown in FIG. 図5,図6で定義(指定)されてコード生成部で生成構成されたアプリケーションの各画面におけるパラメータの受け渡し動作を示す模式図である。FIG. 7 is a schematic diagram showing a parameter passing operation in each screen of an application defined (designated) in FIG. 5 and FIG. 本発明のプログラム生成装置におけるにおける第2の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 2nd control processing procedure in the program generator of this invention. 本発明のプログラム生成装置におけるにおける第3の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 3rd control processing procedure in the program generator of this invention. 本発明のプログラム生成装置におけるにおける第4の制御処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 4th control processing procedure in the program generator of this invention. 図12のステップS1110,S1111の結果出力されるダイアログへ遷移するボタン部分の処理コードの断片の一例を示す図である。It is a figure which shows an example of the fragment | piece of the process code of the button part which changes to the dialog output as a result of step S1110 of FIG. 12, and S1111. 図12のステップS1113,S1114の結果出力されるダイアログから元画面へ遷移するボタン部分の処理コードの断片の一例を示す図である。It is a figure which shows an example of the fragment | piece of the processing code of the button part which changes to the original screen from the dialog output as a result of step S1113, S1114 of FIG. 本発明に係るプログラム生成装置で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。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 with the program generator which concerns on this invention.

符号の説明Explanation of symbols

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.
前記生成手段は、前記指定情報でマトリクス形式に指定された入出項目に対する指示に応じて前記指定情報で付随タイプと指定された画面から非付随タイプと指定された画面への画面遷移を実現させるコードとして、「指示された入出力項目に対応してマトリクス形式で配置された入出力項目のうちパラメータとして指定された入出力項目の値を、遷移先画面へ渡す」コードを生成することを特徴とする請求項2に記載のプログラム生成装置。   The generating means is a code for realizing a screen transition from a screen designated as an accompanying type to a screen designated as a non-associated type in the designation information in response to an instruction for an entry / exit item designated in a matrix format by the designation information. As a feature of generating a code that "passes the value of the input / output item specified as a parameter to the transition destination screen among the input / output items arranged in a matrix format corresponding to the specified input / output item" The program generation device according to claim 2. 前記指定情報は、前記関連データテーブルの検索条件を含むものであり、
前記生成手段は、前記指定情報で指定された関連データテーブルを検索するコードとして、「遷移元画面から渡されるパラメータと検索条件とに基づいて関連データテーブルを検索する」コードを含めることを特徴とすることを特徴とする請求項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.
前記生成手段は、予めプログラム構造が定められたプログラムテンプレートに対して前記指定情報で指定された情報を組み込むことによりプログラムコードを生成することを特徴とする請求項1乃至4のいずれか1項に記載のプログラム生成装置。   5. The method according to claim 1, wherein the generation unit generates the program code by incorporating information specified by the specification information into a program template having a predetermined program structure. The program generation device described. プログラムを生成するプログラム生成方法において、
生成するプログラムで用いる画面の定義,前記画面に関連する関連データテーブルの指定,前記画面に配置される入出力項目の指定,前記入出力項目への指示に対応する画面遷移の指定,前記画面遷移時に遷移元画面から遷移先画面に受け渡しされるパラメータの指定を含む指定情報に基づいて、プログラムコードを生成する生成ステップを有し、
前記画面の定義は、生成する画面が遷移元画面に付随する付随タイプの画面か遷移元画面に付随しない非付随タイプの画面かの指定を含むものであり、
前記生成ステップは、
前記指定情報で付随タイプと指定された画面の表示処理を実現させるコードとして、「遷移元画面から渡されるパラメータに基づいて関連データテーブルを検索し、該検索結果を対応する画面上の入出力項目にセットする」コードを生成し、
前記指定情報において付随タイプとして定義された画面への画面遷移を実現させるコードとして、「遷移先画面を遷移元画面の付随画面として呼び出すとともに画面遷移時のパラメータとして指定された遷移元画面上の入出力項目にセットされた値を遷移先画面に渡す」コードを生成し、
前記指定情報で付随タイプと指定された画面から非付随タイプと指定された画面への画面遷移を実現させるコードとして、「パラメータとして指定された遷移元画面上の入出力項目の値を遷移先の画面へ渡す」コードを生成する、
ことを特徴とするプログラム生成方法。
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.
前記生成ステップは、前記指定情報でマトリクス形式に指定された入出項目に対する指示に応じて前記指定情報で付随タイプと指定された画面から非付随タイプと指定された画面への画面遷移を実現させるコードとして、「指示された入出力項目に対応してマトリクス形式で配置された入出力項目のうちパラメータとして指定された入出力項目の値を、遷移先画面へ渡す」コードを生成することを特徴とする請求項7に記載のプログラム生成方法。   The generating step is a code for realizing a screen transition from a screen designated as an accompanying type to a screen designated as a non-associated type in the designation information in response to an instruction for an entry / exit item designated in a matrix format by the designation information. As a feature of generating a code that "passes the value of the input / output item specified as a parameter to the transition destination screen among the input / output items arranged in a matrix format corresponding to the specified input / output item" The program generation method according to claim 7. 前記指定情報は、前記関連データテーブルの検索条件を含むものであり、
前記生成ステップは、前記指定情報で指定された関連データテーブルを検索するコードとして、「遷移元画面から渡されるパラメータと検索条件とに基づいて関連データテーブルを検索する」コードを含めることを特徴とすることを特徴とする請求項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:
前記生成ステップは、予めプログラム構造が定められたプログラムテンプレートに対して前記指定情報で指定された情報を組み込むことによりプログラムコードを生成することを特徴とする請求項6乃至9のいずれか1項に記載のプログラム生成方法。   10. The program code according to claim 6, wherein the generating step generates a program code by incorporating information specified by the specified information into a program template having a predetermined program structure. 10. The program generation method described. 請求項6乃至10のいずれか1項に記載されたプログラム生成方法をコンピュータに実行させるためのプログラム。   A program for causing a computer to execute the program generation method according to any one of claims 6 to 10. 請求項6乃至10のいずれか1項に記載されたプログラム生成方法をコンピュータに実行させるためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。   A recording medium storing a computer-readable program for causing a computer to execute the program generation method according to claim 6.
JP2006226079A 2006-08-23 2006-08-23 PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, PROGRAM, AND RECORDING MEDIUM Active JP4976783B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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