JPH0816379A - プログラム自動生成装置 - Google Patents

プログラム自動生成装置

Info

Publication number
JPH0816379A
JPH0816379A JP17192594A JP17192594A JPH0816379A JP H0816379 A JPH0816379 A JP H0816379A JP 17192594 A JP17192594 A JP 17192594A JP 17192594 A JP17192594 A JP 17192594A JP H0816379 A JPH0816379 A JP H0816379A
Authority
JP
Japan
Prior art keywords
screen
file
program
information
skeleton
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.)
Withdrawn
Application number
JP17192594A
Other languages
English (en)
Inventor
Tadao Shogetsu
忠雄 松月
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.)
MARUKIN CORP KK
Original Assignee
MARUKIN CORP KK
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 MARUKIN CORP KK filed Critical MARUKIN CORP KK
Priority to JP17192594A priority Critical patent/JPH0816379A/ja
Priority to CA 2147192 priority patent/CA2147192A1/en
Priority to TW84103852A priority patent/TW393626B/zh
Priority to AU16572/95A priority patent/AU1657295A/en
Priority to SE9501437A priority patent/SE9501437L/xx
Priority to CN 95105409 priority patent/CN1133456A/zh
Priority to DE1995123036 priority patent/DE19523036A1/de
Publication of JPH0816379A publication Critical patent/JPH0816379A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 プログラム言語を熟知しない者でも高品質の
ソースコードを生成することのでき、しかも、生成され
たソースコードど完全に一致する設計書を印字出力する
ことのできるプログラム自動生成装置を提供する。 【構成】 典型的に必要となる複数種類の処理内容につ
いて、そのソースコードを記憶する記憶手段と、作成し
ようとするプログラムの詳細設計をコンソール操作のみ
で実現する詳細設計手段と、前記詳細設計手段において
コンソール入力された情報と、前記記憶手段に記憶され
ているソースコードとを組み合わせて、作成しようとす
るプログラムのソースコードを自動生成する自動生成手
段とを備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、プログラム言語を熟
知しない者でも、常に高品質のソースコードを生成する
ことのできるプログラム自動生成装置に関する。
【0002】
【従来の技術】コンピュータプログラムを作成する手順
としては、処理すべき業務内容を把握した後、プログラ
ムの基本設計および詳細設計を行い、この設計内容に基
づいてプログラムをコーディングするのが一般的であ
る。プログラムの詳細設計やコーディングには多大の労
力の要することから、プログラム作成の容易化を図るべ
く各種の簡易言語が提案されており、典型的な簡易言語
として、例えばRPG(Report Program Generator)言語
が存在する。そして、このRPG言語においては、デー
タベース設計、画面ファイル設計、帳表ファイル設計な
どを先ず行い、その設計内容をデータベース設計書や画
面ファイル設計書にまとめ、その設計書に基づいて所定
の様式でソースコードをコーディングすることを基本と
している。
【0003】
【発明が解決しようとする課題】ところで、どのような
プログラム言語を用いたとしても、各プログラムには、
作成者の能力などに起因する個性が存在するものである
(プログラムの属人性)。つまり、バグが皆無で正常に
動作するプログラムであっても、プログラマーの熟知度
などに応じた品質の相違が存在するものであり、そのた
め、完成後のプログラムの修正などを行うような場合に
は、プログラムの属人性ゆえに、担当プログラマー以外
の者では多大の手間がかかってしまうという問題点があ
る。かかる場合、当初のコーディングの基礎となった各
種設計書が存在したとしても、コーディング内容と設計
書が必ずしも一致しないのが実情であり、特に、RPG
言語のような簡易言語の場合には、そのコーディングの
簡易性の故に、各種の設計書が作成されていない場合も
多いので、後日のプログラム変更には、更に多大の手数
がかかってしまうことになる。この発明は、これらの問
題点に着目してなされたものであって、プログラム言語
を熟知しない者でも高品質のソースコードを生成するこ
とのでき、しかも、生成されたソースコードと完全に一
致する設計書を印字出力することのできるプログラム自
動生成装置を提供することを目的とする。
【0004】
【課題を解決するための手段】上記の目的を達成する
為、請求項1に係るプログラム自動生成装置は、典型
的に必要となる複数種類の処理内容について、そのソー
スコードを記憶する記憶手段と、作成しようとするプ
ログラムの詳細設計をコンソール操作のみで実現する詳
細設計手段と、前記詳細設計手段においてコンソール
入力された情報と、前記記憶手段に記憶されているソー
スコードとを組み合わせて、作成しようとするプログラ
ムのソースコードを自動生成する自動生成手段とを、特
徴的に備えている。また、請求項2に係るプログラム自
動生成装置は、自動生成されたソースコードに対応す
る設計書を印字出力する設計書作成手段を、更に特徴的
に備えている。複数種類の処理内容とは、特に限定され
るものではないが、例えば、エントリー系の処理、照会
系の処理、リスト印刷系の処理、バッチ更新系の処理、
マスター保守系の処理、ウインド照会系の処理に大別さ
れる。また、詳細設計手段でのコンソール操作も限定さ
れるものではないが、例えば、物理ファイルの設計処
理、画面ファイルの設計処理、ユニット情報の登録処
理、残余の情報の登録処理に区分される。
【0005】
【作用】自動生成手段は、詳細設計手段においてコンソ
ール入力された情報と、記憶手段に記憶されているソー
スコードとを組み合わせてソースコードを自動生成す
る。また、設計書作成手段は、自動生成されたソースコ
ードに対応する設計書を印字出力する。従って、生成さ
れたソースコードには属人性がなく、また、設計書とソ
ースコードとは完全対応する。
【0006】
【実施例】以下、実施例に基づいて、この発明を更に詳
細に説明する。今、1レコードに社員名称、住所、生年
月日、入社年月日、退社年月日などのフィールドを有す
る社員マスターファイルを構築し、1レコード毎の登
録、変更、削除、表示を可能にする「社員マスター保守
プログラム」をRPG言語によって作成することを考え
る。かかる場合、従来は、データベース設計書、画面フ
ァイル設計書、プログラム設計書などを作った後、その
仕様に基づいて各ソースコードをコーディングしていた
が、この発明では、以下に説明するように、図1の流れ
図にしたがってコンソール操作をするだけで、一定品質
のソースプログラムを自動的に作成することができる。
【0007】〔物理ファイル設計〕本装置を物理ファイ
ルの設計モードに設定して適宜な操作をすると、コンソ
ール画面は、ベータベース設計書に対応したレイアウト
となる。そこで、物理ファイルID、物理ファイル名
称、レコード様式ID、設定キーワード、項目名称、項
目ID、桁数、タイプ、小数、設定キーワードの各欄
に、適宜な情報を入力することによって物理ファイルの
設計を行うことができる。例えば、物理ファイルID欄
に「RCMEMPP」、物理ファイル名称欄に「社員マ
スター」、レコード様式ID欄に「RCMEMPR」、
項目名称に「社員コード〜最終変更年月日」、項目ID
に「EMPCDE〜EMPUDT」などが入力されたと
すると、コンソール画面は図2の状態となる。但し、各
情報を全てタイプ入力する必要はなく、OPT欄にI,
C(CC),M(MM),D(DD),A,B,Kのい
ずれかを入力したり、ファンクションキーF10などを
打鍵することによって容易に物理ファイルの設計を終え
ることができる。例えば、ファンクションキーF10
は、ファイル/レコードレベルのキーワードを登録した
い場合に使用するものである。ファンクションキーF1
0を打鍵するとコンソール画面は図3(a)の状態に変
化するので、固有(ユニーク)欄に「2」を入力した
後、ファンクションキーF9を打鍵すれば、設定キーワ
ード欄への「UNIQUE,」の入力操作を自動的に行
うことができる。なお、ファイル/レコードレベルのキ
ーワードとしてUNIQUEを登録するのは、1件のデ
ータ(1レコード)をファイル内で特定し(社員マスタ
ーファイルの場合は社員一人のデータ)、重複するキー
を許さないと宣言するためである。
【0008】また、「最終変更年月日」の行のOPT欄
に「K」を入力して実行キーを打鍵すると、このフィー
ルドがS(数値)タイプであることから、コンソール画
面は図4の状態になる。そこで、編集コード(EDTC
DE)欄に「1」を入力し、範囲(RANGE)欄に、
例えば「19910101」と「29991231」を
入力してファンクションキーF9を打鍵してキーワード
を設定すれば良い。なお、編集コード(EDTCDE)
が1とはカンマ編集、小数点あり、符号なしで0消去あ
りの意味である。また、「社員コード」の行のOPT欄
に「K」を入力して実行キーを打鍵すると、このフィー
ルドがA(英数字)タイプであることからコンソール画
面は図5(a)の状態になる。そこで、降順(DESC
END)欄に「2」を入力してファンクションキーF9
を打鍵すると「社員コード」の行の設定キーワード欄に
「DESCEND,」が自動的に表示される。その後、
図5(b)のようにコンパイル時のオプション指定をす
ればコンソール上での物理ファイルの設計が完了する。
【0009】以上の操作の結果、本装置内には、ユニッ
ト情報使用ファイルが作成されると共に、コンソールか
ら入力された情報が変換されて物理ファイルソースコー
ドが作成される(図1参照)。ここで、ユニット情報使
用ファイルとは、ユニット情報の登録時に使用可能な物
理ファイルID「RCMEMPP」と、物理ファイル名
称「社員マスター」を内容とするファイルであって、後
述するユニット情報の登録時に使用されるものである。
なお、図6と図7は、適宜な操作によって印字出力され
るデータベースファイルソースリストとデータベース設
計書とを示しており、データベースファイルソースコー
ドは、AS/400の形式にしたがって作成されてい
る。
【0010】〔スケルトンの特定〕続いて、コンソール
操作によって画面ファイルの設計をするが、画面ファイ
ルの設計に当たっては、社員マスターファイルの1レコ
ード毎の登録、変更、削除、表示を可能にする処理を想
定して、その処理を実現するスケルトンを最初に特定す
る必要がある。ここで、スケルトンとは、プログラム設
計上、典型的に用いられる34種類のプログラムパター
ンをいい、各スケルトンのソースプログラムは、半完成
の状態で構築されている。なお、34種類のプログラム
パターンは、1.エントリー系(ET×××)、2.照
会系(SK×××)、3.リスト印刷系(LT××
×)、4.バッチ更新系(BU×××)、5.マスター
メンテ系(MM×××)、6.ウインドウ系(WN××
×)の6パターンに大別される。
【0011】1.エントリー系のスケルトン エントリー系のスケルトンは、一度に複数のレコードの
登録、変更、削除を可能にするものであり、伝票形式の
入力か否か、ヘッダファイルがあるか否か、第2レベル
のキーがあるか否か、合計行の処理があるか否か、によ
って図8の7種類が用意されている。ここでは、7種類
のスケルトンの処理概要を説明するため、スケルトンE
T010(図9の画面フロー参照)に基づいて作成され
た「仕入伝票処理プログラム」の実行内容を説明する。
尚、仕入伝票処理とは、仕入先および仕入担当者ごと
に、仕入商品とその単価などについて、登録、変更、削
除を行う処理を言う。
【0012】メニュー選択が行われると、最初にキー入
力画面が表示され(図9のST1)、「仕入先コード」
と「伝票日付」の入力可能な状態となる(図10
(a))。なお、この例では、仕入伝票NOが自動的に
採番される形式を採用しているので、仕入伝票NOが入
力されることはない。また、ファンクションキーF5に
よってモード切替えをしない限り「登録」モードの処理
が開始される。その後、キー入力画面に対して、「仕入
先コード」と「伝票日付」が入力されると(図10
(b))、エラーチェック後、図10(c)のように、
ヘッダ入力画面が表示される(図9のST2)。ヘッダ
ファイルを設けるのは、共通な項目(フィールド)が多
い時(例えば、伝票NO・仕入先コード・伝票日付・仕
入担当者)、明細ファイルのレコードにもたすと1デー
タに共通フィールドがそれぞれ付いてしまい無駄なた
め、ヘッダーと明細に分けたものである。ヘッダ入力画
面への入力が完了すると、エラーチェック後、図11
(a)のように、コントロール部とサブファイル明細画
面とが表示される(図9のST3)。なお、ここでコン
トロール部は、行NO、仕入商品コードなどの文字が表
示されている行であり、コントロール部から下がサブフ
ァイル明細画面である。その後、サブファイル明細画面
への入力が完了すると(図11(b))、エラーチェッ
ク後、合計金額が表示される(図11(c))。その
後、実行キーを打鍵すれば、伝票番号が自動的に採番さ
れ(図9のST5)、データベース登録処理が行われ
(図9のST6)、図10(a)のキー入力画面の表示
状態に戻る。
【0013】次に、WINDOW画面処理について説明
する。例えば、図9のステップST3の状態においてフ
ァンクションキーF9を打鍵すると、図12(a)のよ
うなウインドが表示される。そして、この状態におい
て、カーソル位置が6行目であるとすると、2行目の内
容が6行目に複写されることになる。また、図9のステ
ップST1の状態においてファンクションキーF5を打
鍵すると、図12(b)のようなウインドが表示され
る。そして、「2」を入力すると「変更モード」とな
り、変更モードにおけるキー入力画面が表示される。変
更モードにおいては「仕入先コード」、「伝票日付」の
他に「仕入伝票NO」もキーとして必要となるので、図
12(c)のようなコンソール画面となる。なお、図1
2(b)の状態で「3」を入力して「削除モード」に変
えた場合も同様であって、「仕入先コード」、「伝票日
付」、「仕入伝票NO」をキー入力画面(図9のST
1)で入力することになる。以上、仕入伝票処理を例に
挙げて、スケルトンET010について説明したので、
他のスケルトンについては、スケルトンET010と比
較して説明する。
【0014】スケルトンET011もスケルトンET0
10とほぼ同様であって、ヘッダファイルと明細ファイ
ルとを画面表示し、その内容について登録、変更、削除
の処理を行う。また、明細画面は、一画面のサブファイ
ルであって、明細データが行NOで参照される点も同じ
であるが、図9のステップST4において合計行の処理
がない点だけが相違する。スケルトンET050は、画
面フローとしては図9と全く同じであるが、明細ファイ
ルのみを画面表示し、ヘッダファイルが存在しない点で
スケルトンET010の処理と相違する。なお、スケル
トンET050では、図9のステップST2の段階で第
2レベルのキーが入力される。スケルトンET051
は、スケルトンET050とほぼ同じであり、合計行の
処理がない点だけがスケルトンET050と相違する。
スケルトンET052は、第2レベルのキー入力がない
点に特徴があり、画面フローは図13の通りである。ス
ケルトンET150とET153は、例えば、累積トラ
ンザクションの一括更新のパターンの処理であり、画面
フローを示すと図14、図15の通りである。スケルト
ンET150は、ヘッダ入力画面の処理(図14のST
2)がある点及び、合計行の処理(図14のST4)が
ある点で、スケルトンET153の処理と相違する。
【0015】2.照会系スケルトン 照会系のスケルトンは、指定条件に合致する登録済レコ
ードを表示するものであり、アクションコードの有無、
明細選択の有無、合計処理の有無、複数明細表示をする
か否かなどによって図16の8種類に分類される。ここ
で、アクションコードとは、画面に1バイトの入力域を
設けて、その入力値によって実行するプログラムを決定
するフィールドをいう。また、明細選択とは、最初に画
面を表示したときにコードを入力させて、そのコードに
該当するレコードのみを表示させることをいう。なお、
複数明細表示を行う場合にはAS/400独特の機能で
あるサブファイル画面を使用する。図17は、スケルト
ンSK050の画面フローであり、明細(詳細)データ
の表示を行う処理を示している。なお、明細画面は自動
拡張のサブファイルを用いる。以下、スケルトンSK0
50を利用したプログラムの一例である納品処理照会プ
ログラムの実行内容を説明する。
【0016】メニュー選択が行われると、最初にキー入
力画面が表示され(図17のST11)、「得意先コー
ド」、「納品日」、「伝票NO」の入力可能な状態とな
る(図18(a))。そして、キー画面への入力が完了
すると、エラーチェック後、図18(b)のようなコン
トロール画面と、サブファイル明細画面とが表示される
(図17のST12)。図19は、スケルトンSK01
0の画面フローを図示したものである。条件入力画面を
表示し(図19のST13)、その条件に合致する一覧
照会画面を表示した後(同図のST14)、アクション
コードによって照会プログラムを決定して呼び出す(同
図のST15)。なお、明細画面は、自動拡張のサブフ
ァイルで一画面分ずつ読み込まれる。図20は、スケル
トンSK051の画面フローを図示したものであり、表
示された伝票などの合計処理が行われる点でスケルトン
SK050の処理と相違する。スケルトンSK060
は、サブファイル画面を使用せず、明細第1画面のみ表
示するのが特徴である。図21(a)〜(d)は、それ
ぞれスケルトンSK020、SK021、SK040、
SK041の画面フローを図示したものであり、親画面
より受け取ったパラメータに該当するデータを表示す
る。なお、呼出元プログラムから実行するとは、呼出元
プログラムから他のスケルトンSK020,SK02
1,SK040,SK041を使用したプログラムを外
部呼び出しすることを言う。
【0017】3.リスト印刷系 リスト印刷系のスケルトンは、条件を入力するか否か、
明細の選択表示を行うか否か、中間ワークを作成するか
否か、明細ヘッダの有無によって図22のように分類さ
れる。明細の選択表示とは、あるコードが指定された場
合、そのコードをもつ明細を一度画面に表示して、印刷
すべき明細を選択させることをいう。なお、明細の選択
表示を行わない場合には、開始と終了のコードを入力さ
せて、該当するレコードを全て印刷する。また、ここで
明細ヘッダとは、通常のヘッダ以外に、明細のある単位
毎の区切りを分かりやすくする為、その単位毎の最初に
印刷する見出しのことをいう。図23は、スケルトンL
T010の画面フローを図示したものであるが、この処
理を利用して、得意先マスターの一覧表を印刷する場合
の処理内容を説明する。
【0018】図24(a)のメニュー画面において、
「01」を入力すると、図24(b)のような条件入力
画面が表示される(図23のST21)。そこで、帳表
を印刷する条件を入力すると、エラーチェックの後、確
認メッセージを表示し(図23のST22と図24
(c))、実行キーを打鍵すれば「帳表を印刷していま
す」のメッセージを表示して(図23のST23)この
間、帳表が印刷される。図25は、スケルトンLT04
0の画面フローを図示したものである。入力された条件
(図25のST24)に基づいてデータを一覧表示させ
(同図のST25)、アクションコードの指定に基づい
て帳表を印刷する点に特徴がある。なお、明細画面は自
動拡張のサブファイルで一画面分ずつ読み込まれる。図
26は、スケルトンLT030の処理フローを図示した
ものである。この処理は、本来、バッチ更新であるが、
この処理によってワークワァイルを作成する目的は帳表
印字のための集計なので、リスト印刷系のスケルトンの
分類されている。図27と、図28は、スケルトンLT
021とLT020の処理フローを図示したものであ
る。図27は、ヘッダー、明細、(合計)が印刷される
ことを示しており、図28は、ヘッダー、明細ヘッダ
ー、明細、(合計)が印刷されることを示している。
【0019】4.バッチ更新系のスケルトン バッチ更新の仕様として、特定の条件にあうデータのみ
を更新するようにしているので、バッチ更新系のスケル
トンは、更新処理を実行するための条件入力をするスケ
ルトンBU010と、データの更新を行うスケルトンB
U020とに区分されている。図29と図30は、スケ
ルトンBU010の画面フローと、スケルトンBU02
0の処理フローを図示したものである。
【0020】5.マスターメンテ系のスケルトン マスターメンテ系のスケルトンは、明細画面数の数とキ
ー複写機能の有無とによって8種類のスケルトンに区分
される。ここで、キー複写機能とは、新規登録処理の場
合に、既に登録されている別のレコード内容を流用する
機能をいう。図31は、スケルトンMM010の画面フ
ローを図示したものであり、1レコード分の登録、変
更、削除、表示を行う処理を示している。このスケルト
ンの特徴は、ステップST31の処理においてキー複写
機能がないこと、及び、明細画面が1画面であることで
ある。スケルトンMM011は、スケルトンMM010
とほぼ同様の処理であるが、登録モードの場合に、複写
元コードを利用して別のレコード内容を複写できる点
(複写機能)に特徴がある。他のスケルトンについても
同様であり、スケルトンMM020とMM021は明細
画面が2つであること、スケルトンMM030とMM0
31は明細画面が3つであること、スケルトンMM05
0とMM051は明細画面が5つであることに特徴があ
り、これらを除けば、スケルトンMM010とMM01
1とそれぞれ同じである。
【0021】次に、スケルトンMM010を利用して得
意先マスタの保守をするプログラムの実行内容を紹介す
る。メニュー選択が行われると、最初にキー入力画面
(図31のST31)が表示され(図32(a))、
「得意先コード」を入力すると、図32(b)のような
明細第1画面(図31のST32)が表示される。そし
て、この明細第1画面に必要な情報を入力した後、実行
キーを打鍵すると、図33(a)の最終行のような確認
メッセージが表示されるので(図31のST33)、こ
の状態で実行キーを打鍵すればデータベース登録処理
(同図のST34)が行われる。尚、図32(a)の状
態でファンクションキーF5を打鍵すると、モード切替
モードとなって図33(b)のようなウインドが表示さ
れるので、適宜に登録、変更、表示、削除の各モードに
切り換えることができる。また、このプログラムの場合
には、図33(a)の状態でファンクションキーF4を
打鍵すると、コード検索モードとなり、得意先マスター
検索のウインドが表示される(図33(c))。
【0022】6.ウインド系のスケルトン ウインド系のスケルトンは、ウインド画面によってデー
タを照会するものである。明細選択キーの数が複数か否
か、コードのみの検索かコード又はカナによる検索が可
能か、検索キーに固定値を仕様するか否かによってスケ
ルトンWN011,WN010,WN012,WN02
0に区分される(図34)。尚、ここで、明細選択と
は、初期画面が表示された時にコードを入力させて、そ
のコードに該当するレコードのみを表示させることをい
い、入力するコードが一つの場合と複数の場合がある。
スケルトンWN011,WN010,WN012,WN
020の画面フローを図示すると、図35の通りであ
る。スケルトンWN010では、図35のステップST
41の状態で検索開始コードおよびカナの入力が可能で
あるが、スケルトンWN011では検索開始コードのみ
の入力が可能である。また、スケルトンWN012では
検索開始コードの入力と、予め決定されている固定値と
によって検索される。スケルトンWN020は、複数の
検索条件の入力による検索を可能にする処理である。
【0023】スケルトンWN010の説明をするため、
呼出元プログラムが「得意先マスターの保守」プログラ
ムであり、そのプログラムにおいてファンクションキー
F4が打鍵されて検索モードになった以降について動作
内容を紹介する。呼出元プログラムでファンクションキ
ーF4が打鍵されると、ウインドは図36(b)の状態
となる。なお、受け渡されるパラメータが無いとする。
この状態で検索条件たる「得意先コード」の先頭値「0
001」が入力されると(図35のST41)、エラー
チェック後、図37(a)のような明細選択画面が表示
される(図35のST42)。つまり、「得意先コー
ド」が「0001」以降のものが表示される。この状態
で選択する番号「2」を入力すると(図37(b))、
検索結果たる「00002」を呼出元プログラムにパラ
メータセットする(図37(c))。尚、以上の説明
は、「得意先コード」つまりコードを指定して検索した
が、スケルトンWN010ではカナによる検索も可能で
ある。例えば図38(a)において「得意先名」の欄に
「ア」を入力すると、「ア」以降の得意先が表示される
(図38(b))。なお、この場合、コードによる検索
の場合とは別のファイルを読んでいる。以上、34種類
のスケルトンについて説明したが、設計上の便宜のた
め、図39から図42までの設計パターン表が用意され
ている。
【0024】〔画面ファイルの設計〕画面ファイルの設
計に当たっては、上記した34種類のスケルトンのうち
何を利用するかを先ず決定する必要がある。今は、社員
マスターファイルを構築し、1レコード毎の登録、変
更、削除、表示をさせるのであるから、図39〜図42
の設計パターン表からスケルトンMM011を選択する
ことにする。本装置を画面ファイル設計モードに設定す
ると、コンソール画面は、図43(a)の状態となる。
そして、「画面ID」欄に例えば「RC00D001」
を入力して実行キーを打鍵すると、コンソール画面は図
43(b)となる。そこで、「画面名称」、「スケルト
ン本体NO」を入力すると共に、参照用ファイルの設定
をする必要がある。なお、「スケルトン本体NO」とは
前記34種のスケルトンのそれぞれに付された記号であ
る。「スケルトン本体NO」を思い出せない場合もある
が、かかる場合には「スケルトン本体NO」欄にカーソ
ルを合わせてファンクションキーF4を打鍵すれば良
い。すると、コンソール画面は図43(c)の状態とな
るので、所望のスケルトンの位置にカーソルを合わせて
実行キーを打鍵することで「スケルトン本体NO」を入
力することができる。なお、この例では、スケルトンM
M011を選択し、画面名称を「社員マスターメンテナ
ンス」にしたことにする(図44)。なお、図45はス
ケルトンMM011の画面フローを図示したものであ
る。
【0025】次にファイルレベル情報を特定する必要が
あるが、図46(a)のようにファイルレベル情報の登
録が完了すると、次に、キー部入力画面(図45のST
31)に関して、ソースリストのレコードレベル記述部
とフィールドレベル記述部に必要となる情報をコンソー
ルから入力する必要がある。スケルトンが決定されてい
ることから、図46(b)に示される内容が自動的に決
定される。図46(b)の状態で実行キーを打鍵すると
図46(c)のようなウインド画面が表示されるので、
画面名称と、その画面の使用行を入力する必要がある。
今は、1行目から5行目までを「キー部入力画面」にす
るため、図47(a)の状態でファンクションキーF9
を打鍵する。次に、キー部入力画面において使用するフ
ァンクションキーを登録する必要があるが、図45に示
すようにファンクションキーF3,F5は必須であり、
F1,F4,F6を使用するか否かを決定すれば良い。
なお、この例ではファンクションキーF4も使用するこ
とにするので、図47(b)の状態でファンクションキ
ーF4の欄を「Y」にしてファンクションキーF9を打
鍵する。すると、コンソール画面は図47(c)のよう
になるのでファンクションキーF9を打鍵して以降の操
作に進む。
【0026】次にコンソール画面は、図48(a)のよ
うにウインド画面が表示されるので、明細第1画面(図
45のST32)について、画面名称と、その画面の使
用行を入力する必要がある。今は、6行目から22行目
までを「データ部入力画面」と命名したことにする(図
48(b))。その後、「データ部入力画面」で使用す
るファンクションキーを登録し、キーワードを設定す
る。ここでキーワードとは、画面ファイル作成時に特定
の機能を組み込むたための記号である。「データ部入力
画面」についてのキーワードの登録が完了すると、コン
ソール画面は、図49(a)の状態となるので、名称
(「操作ガイド表示画面」)と使用行(23行)を入力
する必要がある(図49(b))。この後、ファンクシ
ョンキーF9を打鍵すると図49(c)の状態となるの
で、ファンクションキーF9を打鍵してOVERLAY
とPROTECTのキーワードを登録する。
【0027】次に、コンソール画面は、図50(a)と
なるので、確認後これを登録すると、コンソール画面
は、図50(b)のようになる。図50(b)の状態で
ファンクションキーF6を打鍵するとコンソール画面
は、図50(c)のようになるので、入力操作画面と同
時に表示されるべき画面を指定する。ここでは、「キー
部入力画面」(入出力操作画面FMT01)と「操作ガ
イド表示画面」(FMT91)を同時に表示させるので
図51(a)のように指定する。同様にして、図52の
ように、「データ部入力画面」と「キー部入力画面」と
「操作ガイド表示画面」とを同時に表示させるべく指定
する。なお、図52(b)の状態でファンクションキー
F9を打鍵すると図52(c)の状態となる。その後、
操作を進めると、コンソール画面は、図53(a)のよ
うになる。この画面は、画面レイアウトに適したものと
なっており、図53(b)(c)のような画面で表示属
性を指定しつつ図54(a)の画面を作っていく。な
お、コンソール画面の下から4行目以降には「1項目配
置,2項目移動,3項目複写,4項目削除,5項目表
示,6項目変更,7拡張定義,8ガイドメッセージ配
置,9複写元用項目配置,10固定文字配置,11固定
値記憶,12表示切替,99処理NOの続き」のOPT
欄があり、画面作成が容易である。例えば、図54
(a)から「項目配置」を行うときは、OPT欄の
「1」を選択すると、「社員コード」に関するフィール
ド情報の設定ができる(図54(b))。
【0028】図54(b)の状態で実行キーを打鍵する
と、コンソール画面が図54(c)の状態となるので、
エラーチェック欄を「2」にして実行キーを打鍵する。
以下、同様にして「キー部入力画面」についてのフィー
ルド情報の登録を完了させる。「操作ガイド表示画面」
や「データ部入力画面」についても同様であり、それぞ
れのフィールド情報をOPT欄の機能などを利用して登
録してゆく。「キー部入力画面」FMT01、「データ
部入力画面」FMT02、「操作ガイド表示画面」FM
T91の各々についてフィールド情報の登録が行われる
と、画面ファイル設計のためのコンソール操作が完了
し、入力された情報に基づいて画面ファイルソースコー
ドが自動生成される。この発明の場合、従来例のよう
に、画面ファイル設計書に基づいてコーディングしなく
ても、誤りのないソースコードが自動作成される。しか
も、誰がコンソール操作をした場合でも、上級者がコー
ディングしたレベルのソースコードが常に一定品質で作
成される。コンソール操作が完了した状態において、必
要があれば、図55〜図63に示す画面ファイル設計書
を印字出力することができる。また、適宜な操作をすれ
ば、図64〜図67に示す画面ファイルソースリストを
印字出力することができる。この場合、画面ファイル設
計書と画面ファイルソースリストの内容は完全に一体一
に対応しているので、誰が見ても明快であり、設計変更
や修正が非常に容易である。
【0029】また、コンソール操作が完了した段階で
は、RPGプログラム生成用データのファイルが構築さ
れている。ここでRPGプログラム生成用データは、ガ
イドメッセージ情報(1) と、画面フィールド情報(2)
と、ファンクションキー情報(3)と、エラー標識情報(4)
と、複写元フィールド情報(5) とからなる。 (1) ガイドメッセージ情報とは、操作ガイド表示画面
(FMT91)に表示されるメッセージに関する情報で
ある。この例の場合には、図45の画面フローの1回目
の表示(ST31)において『F3=終了 F5=モー
ド切換』と表示させ、2回目の表示(ST32)におい
て『F3=終了 F12=前画面』と表示させることに
すると、『F3=終了 F5=モード切換』及び『F3
=終了 F12=前画面』がガイドメッセージ情報とな
る。 (2) 画面フィールド情報とは、画面ファイル設計書の図
60の記載される情報をいう。 (3) ファンクションキー情報とは、「社員マスターファ
イルの保守」プログラム実行時において、各画面でどの
ファンクションキーが使用されるかの情報であって、こ
の例では、キー部入力画面(FMT01)においてファ
ンクションキーF3,F4,F5が使用され、データ部
入力画面(FMT02)においてファンクションキーF
3,F12が使用される旨の情報である(図56、図5
7の画面ファイル設計書参照)。 (4) エラー標識情報とは、エラーチェック用の標識に関
する情報であり、この例では、「社員コード」の欄と
「社員コード(複写)」の欄の入力値においてエラーチ
ェックをする旨が登録されており、対応する各標識は、
「30」及び「31」と登録されている。 (5) 複写元フィールド情報とは、登録モード時に複写元
コードによる複写機能を有するスケルトンにおける情報
であり、この例では複写元のフィールド名称が「社員コ
ード(複写)」であり、フィールドIDが「DS00
2」である旨の情報を言う。
【0030】〔ユニット情報の登録〕画面ファイル設計
が完了すれば、次にユニット情報の登録を行う。なお、
ここでユニット情報とは、設計しようとしているJOB
(CLプログラム)を構成するCLプログラム/RPG
プログラム/書式メンバーの情報をいう。本装置をユニ
ット情報の登録のモードにすると、コンソール画面は図
68(a)の状態になる。ここでユニットタイプは、R
PGと指定されるが、CLPとは、CLプログラム(コ
ントロールランゲージ)の意であり、APW,APPW
は、書式合成するために必要な情報である。次に、今、
作成しようとしているユニット(プログラム)の名称を
「社員マスターの保守」と入力し、ユニットIDを「R
CM001」と入力する。また、ユニット機能説明を入
力しておく(図68(b))。そして、スケルトン本体
NOの欄に「MM011」を入力する。以上の操作によ
ってプログラムの名称と使用するスケルトンの決定がさ
れたことになる。
【0031】次に、プログラムの受け取りパラメータが
ある場合には、図68(c)のような画面においてパラ
メータID、パラメータ名称、桁数、小数桁を決定する
必要がある。また、図69(a)のような画面において
使用ファイルを決定する必要がある。ここで使用するフ
ァイルは「社員マスター」ファイルと「社員マスターメ
ンテナンス」ファイルであるので、図69(b)のよう
にして必要な情報を入力する。尚、「社員マスター」フ
ァイルは、物理ファイル設計で作成されたデータベース
ファイルであり、「社員マスターメンテナンス」ファイ
ルは、画面ファイル設計で作成された画面ファイルであ
る。その後、外部プログラムを決定する(図69
(c))。なお、ここでは「社員マスターの検索」の名
称の外部プログラムを登録しているが、このプログラム
は、「社員マスターの保守」プログラムから呼び出され
る「社員マスターファイル」の検索用のプログラムであ
る。
【0032】以上のようなユニット情報の登録処理によ
って設計用データが作成される。ここで、設計用データ
は、スケルトン情報(6) と、使用ファイル情報(7) と、
パラメータ情報(8) と、外部プログラム情報(9) とから
なる。 (6) スケルトン情報とは、生成しようとしている「社員
マスターファイルの保守」プログラムの元になるスケル
トンを特定するIDであり、この例の場合には「MM0
11」が該当する。 (7) 使用ファイル情報は、「社員マスターファイルの保
守」プログラムで使用されるファイルに関する情報であ
り、ファイルID、ファイル名称、ファイルタイプなど
を特定する情報をいう。なお、この例では、物理ファイ
ルとしてIDが「RCMEMPP」の「社員マスター」
を使用し、画面ファイルとしてIDが「RC00D00
1」の「社員マスターメンテナンス」を使用する旨の情
報となる。使用ファイル情報は、ファイルID、ファイ
ル名称、ファイルに対するI/O、ファイルのキー使用
の有無、オプション(S/R/I)を持っているが(図
69(a))、オプションSは、サブファイルをしよう
する画面ファイル、オプションRはレコード様式のリネ
ームをすること、オプションIはインフォメーションD
Sを使用すること、を意味する。 (8) パラメータ情報は、受渡しパラメータがある場合
の、パラメータID、パラメータ名称、桁数、タイプに
ついての情報であるが、この例の場合には存在しない。 (9) 外部プログラム情報とは、使用される外部プログラ
ムに関する情報であり、プログラムID、プログラム名
称の情報である。この例の場合には、ファンクションキ
ーF4による「コード検索」に関連して、プログラムI
D「WIN001」の「社員マスターの検索」が該当す
る。
【0033】〔スケルトンソースファイル〕以上のユニ
ット情報の登録の操作により、「社員マスターファイル
の保守」プログラムの元になるスケルトンMM011が
特定されるので、次に、スケルトンソースファイルにつ
いて説明しておく。図86〜図92に示すように、スケ
ルトンソースファイルには、自動生成するソースプログ
ラムの基礎となるソースコード(以下、基礎ソースコー
ドという)が記憶されており、基礎ソースコードは、6
桁のDELET欄、6桁のサブルーチン欄、16桁の処
理名ID欄、2桁の開始桁欄、及び、80桁のソースコ
ード欄から構成されている。DELET欄には、例え
ば、「SYRSRT」,「F1F04」,「F1F0
6」,「F2F04」,「F2F06」の処理IDが付
されているが、これらのソースコード行は、削除される
可能性のある行であることを意味している。すなわち、
画面フローに示されている通り、各スケルトンには、必
ず使用される必須ファンクションキーと任意に選択され
る任意ファンクションキーとがあるが、スケルトンソー
スファイルには、全てのキーが使用されることを前提と
して基礎ソースコードが作成されており、任意キーに関
する処理にはDELET欄に処理IDが付されているの
である。
【0034】例えば、スケルトンMM011において
は、ファンクションキーF3,F5,F12は必須キー
であるが、WINDOW画面処理に関してファンクショ
ンキーF1,F4,F6は任意キーである。そこで、画
面iにおけるファンクションキーFjに関する処理に
は、「FiF0j」の処理IDを付しておき、プログラ
ムの自動生成時に適宜に削除するようにしている。な
お、処理ID「SYRSRT」の付されている部分は、
ファンクションキーF6による「処理切替」に関する処
理であることを意味している。サブルーチン欄の処理I
Dは、主としてサブルーチンを識別するためのものであ
り、処理単位ごとに異なる処理IDが付されている。但
し、実際には、「ESIYO」,「ISIYO」,「P
LIST」など、先頭領域の処理IDのみが意義を有し
ており、H仕様書、F仕様書、E仕様書、I仕様書を完
成させるために使用される。例えば、処理ID「ESI
YO」は、この行の前にF仕様書ソースリストが挿入さ
れ、挿入されたF仕様書ソースリストの後にスケルトン
のE使用書ソースコードが続くことを意味する。また、
処理ID「ISIYO」は、この行の前にE仕様書とI
仕様書のソースリストが挿入されることを意味する。な
お、処理ID「PLIST」は、パラメータリストの意
味であるが、実際には、この処理IDの付されたソース
コード行の以降は、サブルーチン欄を無視して、処理名
ID欄や桁欄を参照してソースコードの置き換えやソー
スコードの自動生成を行うべきことを意味している。
【0035】処理名ID欄の処理IDには、置き換え型
IDと挿入型IDとがある。ここで、置き換え型IDと
は、開始桁欄に数字情報を有する処理IDを言い、開始
桁欄の数字以降のコードは、置き換え型IDで特定され
る別のコードで置き換えられることを意味する。例え
ば、処理ID欄に処理ID「RMVPGM」とあり、開
始桁欄に「34」とあれば、その行のソースコード欄の
34桁目以降は、処理ID「RMVPGM」で特定され
るコードで置き換えられる。一方、挿入型IDとは、開
始桁欄に数字情報を有しない処理IDを言い、この処理
IDで特定される一連のソースコードが、挿入型IDの
付された行以降に挿入されることを意味する。例えば、
処理ID欄に「PLIST COMMON」とあれば、
処理ID「PLIST COMMON」で特定される一
連のソースコードがこの行以降に挿入される。
【0036】〔RPGプログラム設計〕RPGプログラ
ム設計においても、コンソール画面での操作によってR
PGプログラムの作成に必要な残りの情報が入力され
る。そして、必要な情報の入力が完了すると、適宜な操
作によって、図70〜図85のプログラム設計書が印字
出力される。コンソール操作で入力された情報は、ワー
クフィールド情報(10)、キーリスト情報(11)、キー編集
情報(12)、部品編集情報(13)、パラメータ編集情報(1
4)、フィールド編集情報(15)、エラーチエック情報(1
6)、更新情報(17)、抽出情報(18)、終了情報(19)に区分
されるが、各情報の内容を図70〜図85のプログラム
設計書などを参照しつつ説明する。
【0037】(10)ワークフィールド情報とは、ワークフ
ィールドに関する設計書(図73)に印字される情報に
対応したものであり、属性、ワークフィールドID、ワ
ークフィールド名称、桁数、タイプ、小数、備考の各欄
の情報をいう。 (11)キーリスト情報とは、キーリストファイル読込情報
に関するものであり、この例の場合には、キーリスト名
「KEYEPM」、アクセス方法「CHAIN」、キー
フィールドID「EMPCDE」がこれに該当する(図
76)。 (12)キー編集情報とは、キーリストファイル読込情報に
関するものであり、この例の場合には、「DS001」
がこれに該当する(図76)。 (13)部品編集情報とは、「社員マスターファイルの保
守」プログラムで使用される部品に関する情報であり、
この例では、部品ID「#CM004」について図77
の設計書に対応した情報が該当する。ここで部品とは、
漢字カット、漢字コード変換、システム日付取得、日付
チェック、時刻チェック、和暦と西暦の間の日付変換、
時間変換、日数計算、時間計算、うるう年判定、曜日判
定、漢字合成、英数字合成、消費税計算、などの使用頻
度の高い上記の各処理を実現する部品プログラムを言
い、本装置にソースプログラムの形式で保有されてい
る。なお、「#CM004」は、日付チェックの処理で
あり、コンソールから入力された日付が不合理なもので
ないかのチェックを行うものである。 (14)パラメータ編集情報は、図80に示す設計書に関す
る情報であり、この例では存在しない。 (15)フィールド編集情報は、物理ファイル「社員マスタ
ー」、画面ファイル「社員マスターメンテナンス」につ
いての図81、図82、図83に示す設計書の情報であ
り、この例では、データベースファイルID「RCME
MPP」や、データベースフィールドID「EMPCD
E」…「EMPUDT」や、編集条件および内容「DS
001」…「WKFYMD」などが該当する。 (16)エラーチエック情報は、エラーチェックに関する情
報であるが、この例では「社員コード」「社員コード
(複写)」が関係しており、図84、図85の情報が該
当する。 (17)更新情報、(18)抽出情報、(19)終了情報は、図7
8、図79の設計書に関する情報であるが、この例の場
合には存在しない。
【0038】〔RPGプログラムの自動生成〕プログラ
ム設計書に印字される上記の各情報は、コンソール操作
によって円滑に入力されるが、入力された各情報に基づ
いて、ソースコード合成前処理とソースコード合成処理
とが行われる。 1.ソースコード合成前処理(図93) 先ず、部品編集情報(13)を参照して部品プログラムが使
用されるか否かを判定し(ST60)、部品プログラム
が必要である場合には、該当する部品ソースプログラム
を複写する。この例の場合には、部品ID「#CM00
4」に対応して、日付チェックプログラムについての部
品ソースファイルが作成される(ST61)。次に、使
用ファイル情報(7) に基づいてF仕様書ファイルが作成
される(ST62)。具体的には、図95のソースリス
ト第1行から第23行の内容を有するF仕様書のソース
ファイルが完成される。続いて、スケルトン情報(6) と
ワークフィード情報(10)とを参照して、I仕様書ファイ
ルが作成される(ST63)。この例の場合には、図9
5、図96のソースリストの第30行〜第93行の内容
がこれに該当し、スケルトンMM011が画面ファイル
を使用することから第33行〜第43行が自動生成さ
れ、また、図73の設計書(ワークフィールド)の内容
に対応して第50行〜第67行と第76行〜第93行と
が生成される。なお、スケルトンMM011ではシステ
ム日付を使用するので第68行〜第75行が生成され
る。
【0039】また、ガイドメッセージ情報(1) 、キー編
集情報(12)、部品編集情報(13)、パラメータ編集情報(1
4)、フィールド編集情報(15)に基づいて、図95のソー
スリストの第29行目に対応するE仕様書のソースファ
イルと、図110の第881行目から第885行目に対
応する配列ファイルが完成される(ST64)。次に、
パラメータ情報(8) などを参照して、必要なPLIST
ファイルを作成する(ST65)。この例の場合にはパ
ラメータ情報(8) は存在しないが、外部プログラムとし
て「社員マスターの検索」を使用するので、これに関連
してソースリストの第136行〜第138行を生成して
いる(図97)。なお、ソースリストの第139行〜第
143行は、部品ソースファイルによるものである。ま
た、キーリスト情報(11)に基づいて、図97のソースリ
スト第150行目から第155行目に対応するKLIS
Tファイルが作成される(ST66)。
【0040】次に、スケルトン情報(6) とファンクショ
ンキー情報(3) とに基づいて、任意ファンクションキー
に関する処理のうち使用しない部分が、DELET欄の
処理IDで特定される(ST67)。この例では、キー
部入力画面(FMT01)ではファンクションキーF6
を使用せず、データ部入力画面(FMT02)ではファ
ンクションキーF4,F6を使用しないと設定している
ので、DELET欄に「F2F04」「SYRSRT」
の処理IDが付されているソースコードの行は使用され
ないことになる。なお、「SYRSRT」の部分には、
ファンクションキーF6が打鍵された場合に呼び出され
る外部プログラムに関する処理が記載されているので、
この部分も使用されないことになる。つまり、基礎ソー
スコード(図86〜図92)のうち、この例において使
用されない処理は、処理ID「F2F04」「SYRS
RT」の付された部分である。続いて、本装置に登録さ
れているスケルトンソースファイルより、不必要な行を
除いた基礎ソースコード(図86〜図92)が複写され
る。この例では、上記ステップST67の処理におい
て、処理ID「F2F04」「SYRSRT」の部分が
不要であると決定されているので、「F2F04」「S
YRSRT」の行を除いて基礎ソースコードが複写され
る(ST68)。なお、複写されるのは、図86〜図9
2に示すもののうちDELET欄より右の部分である。
【0041】基礎ソースコードの複写が完了すると、次
に、画面フィールド情報(2) 、ファンクションキー情報
(3) 、エラー標識情報(4) 、複写元フィールド情報(5)
、使用ファイル情報(7) に基づいて、置き換え型ID
の内容を決定してゆく(図94のST69)。この例の
場合、使用ファイル情報(7) より「MAINFILEN
AME」が「社員マスター」であると特定され、画面フ
ィールド情報(2) より「MAINR NAME」がレコ
ードID「RCMEMPR」と特定される。また、選択
されているスケルトンがMM011であり、登録モード
時に複写元コードによる複写機能を備えているので、画
面フィールド情報(2) を参照することにより、処理ID
「COPY CODE1」,「COPY CODE
2」,「COPY CODE ONLY」がそれぞれ
「DS002」に対応すると特定されてゆく。なお、置
き換え型IDには「×××MSGID×」タイプの処理
IDに28種、「×××PGM」タイプの処理IDに8
種あるが、これらの内容は開発環境が定められた段階で
既に決定されており、今の段階で問題になることはな
い。
【0042】以降は、主として挿入型IDに関する処理
であり、使用ファイル情報(7) 、キーリスト情報(11)、
キー編集情報(12)に基づいて、メインファイルや参照フ
ァイルの読み込み処理についてのソースコードを自動生
成してゆく(図94のST70)。具体的には、処理I
D「MAINR CHAIN1」に対応して、図102
のソースコード420行と421行が生成され、処理I
D「MAINR CHAIN2」に対応して図102と
図103のソースコード448行と449行が生成され
る。また、処理ID「MAINR RECHAIN」に
対応して図108のソースコード742行と743行が
生成される。なお、ソースコード29行、159行、8
84行、885行についても生成される。以上のステッ
プST70までの処理(図93、94)は、使用するス
ケルトンに拘わらず行われるが、以降の処理はスケルト
ンの種類などによって異なる。
【0043】先ず、画面ファイルを使用するスケルトン
か否かが判断される(図94のST71)。スケルトン
は、エントリー系(ET×××)、照会系(SK××
×)、リスト印刷系(LT×××)、バッチ更新系(B
U×××)、マスターメンテ系(MM×××)、ウイン
ド系(WN×××)に大別されるが、リスト印刷系(L
T×××)とバッチ更新系の一部(BU020)には画
面処理がないので、他のものとは処理内容が異なるので
ある。画面処理がある場合、エントリー系(ET××
×)のスケルトンか否かが次に判断される(同図ST7
2)。そして、エントリー系のスケルトンである場合に
は、置き換え型ID及び挿入型IDに関して、エントリ
ー系処理に独特ソースコードが生成される(同図ST7
3)。具体的には、自動採番、排他チェック、伝票番号
獲得などの各処理に関するソースコードが生成される。
画面処理がある場合であって、エントリー系(ET××
×)以外のスケルトンの場合には、ファンション情報
(3) を参照して、必要があれば、外部プログラムの呼び
出し部分を生成する(同図ST74)。具体的には、フ
ァンション情報(3) よりキー部入力画面(FMT01)
ではファンクションキーF4を使用することが分かるの
で、画面フィールド情報(2) 、パラメータ情報(8) 、外
部プログラム情報(9) 、パラメータ情報(14)に基づい
て、検索ルーチンを呼び出す処理である「F1F04
COMMON」の内容を自動生成する。
【0044】次にエラーチェック情報(16)を参照して、
必要があれば、エラーチェック処理の部分を生成する
(同図ST75)。この例では、キー部入力画面(FM
T01)の処理でエラーチェックが必要であるので、エ
ラー標識情報(4) 、複写元フィールド情報(5) 、エラー
チェック情報(16)のデータに基づいて、処理ID「F1
CHK SETOF」、「F1CHK COMMO
N」、「F2CHK SETOF」、「F2CHK C
OMMON」、「F1CHK COPY」の内容を生成
する。最後に、DBファイルや画面ファイルの編集に関
する挿入型IDの内容を自動生成する(同図ST7
6)。具体的には、フィールド編集情報(15)を参照し
て、データベースファイルIDの欄に「RCMEPP」
とあり、また使用ファイル情報(7) よりこれがメインフ
ァイルであると分かるので、フィールド編集情報(15)に
基づいて、メインファイルへの編集処理である処理ID
「SB000 COMMON」の内容を生成する。ま
た、フィールド編集情報(15)のレコードID欄から「H
ENSYUDBTOGMN2」の処理が必要であると分
かるので、ソースコード467行から481行の内容
(図103)が生成される。一方、上記ステップST7
1の判定において画面処理がないとされた場合は、ステ
ップST77の処理に移り、必要があればコントロール
ブレイク用の処理に関する挿入型IDの内容を自動生成
する。そして、DBファイル、帳表ファイルの編集に関
する挿入型IDの内容を自動生成する(図94のST7
8)。
【0045】2.ソースコード合成処理(ST79) 以上の処理が完了すると、合成処理に移行し(図94の
ST79)、ステップST68の処理で複写された基礎
ソースコードについて、サブルーチン欄と処理ID欄と
開始桁欄とを削除しつつ、自動生成されたソースコード
を挿入したり、基礎ソースコードの一部を書き換えたり
する。具体的には、サブルーチン欄に処理IDの無い行
は削除し、処理ID「ESIYO」を検出すると、ステ
ップST62の処理で作成したF仕様書ファイルの内容
(ソースリスト第1〜第23行)を挿入し、その後に、
処理ID「ESIYO」の付されたソースコード行を続
ける(ソースリスト第24〜第28行)。その後、処理
ID「ISIYO」を検出すると、既に生成されている
E仕様書ファイル(ソースリスト第29行)、I仕様書
ファイル(ソースリスト第30〜第93行)、部品のI
仕様書ファイル(ソースリスト第94〜第98行)を挿
入し、その後に、処理ID「ISIYO」の付されたソ
ースコード行を続ける(ソースリスト第99〜第132
行)。
【0046】処理ID「PLIST」を検出すると、以
降はサブルーチン欄の処理IDを無視して、処理ID欄
の処理IDに着目する。そして、処理ID欄に処理ID
が存在しなければ、基礎ソースコードをそのまま使用
し、挿入型IDが検出されたら既に生成されているソー
スコードを挿入し、置き換え型IDが検出されたら、必
要箇所を書き換えてソースコードを完成させる。このよ
うにしてRPGソースコードが自動生成されるが、適宜
な操作によってソースコードリストを印字出力させるこ
とができる。図95〜図110は、印字出力されたソー
スコードリストを図示したものであり、左5桁の行番号
の右には「/」,「//」の記号が付されている。ここ
で、記号「/」の付されている行は、部品ソースファイ
ルに基づくものであり、記号「//」の付されている行
は、スケルトンソースファイルに基づくものであり、そ
の他が自動生成された行である。
【0047】
【発明の効果】以上説明したように、この発明に係るプ
ログラム自動生成装置は、複数種類の処理内容につい
て、そのソースコードを記憶する記憶手段と、プログラ
ムの詳細設計をコンソール操作のみで実現する詳細設計
手段と、コンソール入力された情報と記憶手段に記憶さ
れているソースコードとを組み合わせて、作成しようと
するプログラムのソースコードを自動生成する自動生成
手段とを特徴的に備えている。そのため、プログラム言
語を熟知しない者でも高品質のソースコードを生成する
ことのでき、しかも、生成されたソースコードど完全に
一致する設計書を印字出力させることができる。
【図面の簡単な説明】
【図1】本発明のプログラム自動生成装置について、動
作概要を示した流れ図である。
【図2】物理ファイル設計でのコンソール操作を説明す
る図面である。
【図3】物理ファイル設計でのコンソール操作を説明す
る図面である。
【図4】物理ファイル設計でのコンソール操作を説明す
る図面である。
【図5】物理ファイル設計でのコンソール操作を説明す
る図面である。
【図6】印字出力されるデータファイルソースリストで
ある。
【図7】印字出力されるデータベース設計書である。
【図8】エントリー系スケルトンの細分法を説明した図
面である。
【図9】スケルトンET010の画面フローである。
【図10】スケルトンET010の動作内容を説明する
図面である。
【図11】スケルトンET010の動作内容を説明する
図面である。
【図12】スケルトンET010の動作内容を説明する
図面である。
【図13】スケルトンET052の画面フローである。
【図14】スケルトンET150の画面フローである。
【図15】スケルトンET153の画面フローである。
【図16】照会系スケルトンの細分法を説明した図面で
ある。
【図17】スケルトンSK050の画面フローである。
【図18】スケルトンSK050の動作内容を説明する
図面である。
【図19】スケルトンSK010の画面フローである。
【図20】スケルトンSK051の画面フローである。
【図21】スケルトンSK020、SK021、SK0
40、SK041の画面フローである。
【図22】リスト印刷系スケルトンの細分法を説明した
図面である。
【図23】スケルトンLT010の画面フローである。
【図24】スケルトンLT010の動作内容を説明する
図面である。
【図25】スケルトンLT040の画面フローである。
【図26】スケルトンLT030の画面フローである。
【図27】スケルトンLT020の画面フローである。
【図28】スケルトンLT021の画面フローである。
【図29】スケルトンBU010の画面フローである。
【図30】スケルトンBU020の処理フローである。
【図31】スケルトンMM010の画面フローである。
【図32】スケルトンMM010の動作内容を説明する
図面である。
【図33】スケルトンMM010の動作内容を説明する
図面である。
【図34】ウインド系スケルトンの細分法を説明した図
面である。
【図35】スケルトンWN010の画面フローである。
【図36】スケルトンWM010の動作内容を説明する
図面である。
【図37】スケルトンWM010の動作内容を説明する
図面である。
【図38】スケルトンWM010の動作内容を説明する
図面である。
【図39】設計パターン表である。
【図40】設計パターン表である。
【図41】設計パターン表である。
【図42】設計パターン表である。
【図43】画面ファイル設計でのコンソール操作を説明
する図面である。
【図44】画面ファイル設計でのコンソール操作を説明
する図面である。
【図45】スケルトンMM011の画面フローである。
【図46】画面ファイル設計でのコンソール操作を説明
する図面である。
【図47】画面ファイル設計でのコンソール操作を説明
する図面である。
【図48】画面ファイル設計でのコンソール操作を説明
する図面である。
【図49】画面ファイル設計でのコンソール操作を説明
する図面である。
【図50】画面ファイル設計でのコンソール操作を説明
する図面である。
【図51】画面ファイル設計でのコンソール操作を説明
する図面である。
【図52】画面ファイル設計でのコンソール操作を説明
する図面である。
【図53】画面ファイル設計でのコンソール操作を説明
する図面である。
【図54】画面ファイル設計でのコンソール操作を説明
する図面である。
【図55】画面ファイル設計書である。
【図56】画面ファイル設計書である。
【図57】画面ファイル設計書である。
【図58】画面ファイル設計書である。
【図59】画面ファイル設計書である。
【図60】画面ファイル設計書である。
【図61】画面ファイル設計書である。
【図62】画面ファイル設計書である。
【図63】画面ファイル設計書である。
【図64】画面ファイルソースリストである。
【図65】画面ファイルソースリストである。
【図66】画面ファイルソースリストである。
【図67】画面ファイルソースリストである。
【図68】ユニット情報登録でのコンソール操作を説明
する図面である。
【図69】ユニット情報登録でのコンソール操作を説明
する図面である。
【図70】RPGプログラム設計書である。
【図71】RPGプログラム設計書である。
【図72】RPGプログラム設計書である。
【図73】RPGプログラム設計書である。
【図74】RPGプログラム設計書である。
【図75】RPGプログラム設計書である。
【図76】RPGプログラム設計書である。
【図77】RPGプログラム設計書である。
【図78】RPGプログラム設計書である。
【図79】RPGプログラム設計書である。
【図80】RPGプログラム設計書である。
【図81】RPGプログラム設計書である。
【図82】RPGプログラム設計書である。
【図83】RPGプログラム設計書である。
【図84】RPGプログラム設計書である。
【図85】RPGプログラム設計書である。
【図86】RPG基礎ソースコードを図示したものであ
る。
【図87】RPG基礎ソースコードを図示したものであ
る。
【図88】RPG基礎ソースコードを図示したものであ
る。
【図89】RPG基礎ソースコードを図示したものであ
る。
【図90】RPG基礎ソースコードを図示したものであ
る。
【図91】RPG基礎ソースコードを図示したものであ
る。
【図92】RPG基礎ソースコードを図示したものであ
る。
【図93】プログラム自動生成処理を説明する流れ図で
ある。
【図94】プログラム自動生成処理を説明する流れ図で
ある。
【図95】自動生成されたRPGソースコードを図示し
たものである。
【図96】自動生成されたRPGソースコードを図示し
たものである。
【図97】自動生成されたRPGソースコードを図示し
たものである。
【図98】自動生成されたRPGソースコードを図示し
たものである。
【図99】自動生成されたRPGソースコードを図示し
たものである。
【図100】自動生成されたRPGソースコードを図示
したものである。
【図101】自動生成されたRPGソースコードを図示
したものである。
【図102】自動生成されたRPGソースコードを図示
したものである。
【図103】自動生成されたRPGソースコードを図示
したものである。
【図104】自動生成されたRPGソースコードを図示
したものである。
【図105】自動生成されたRPGソースコードを図示
したものである。
【図106】自動生成されたRPGソースコードを図示
したものである。
【図107】自動生成されたRPGソースコードを図示
したものである。
【図108】自動生成されたRPGソースコードを図示
したものである。
【図109】自動生成されたRPGソースコードを図示
したものである。
【図110】自動生成されたRPGソースコードを図示
したものである。
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成6年10月28日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】図39
【補正方法】変更
【補正内容】
【図39】 設計パターン表である。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】図40
【補正方法】変更
【補正内容】
【図40】 設計パターン表である。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】図41
【補正方法】変更
【補正内容】
【図41】 設計パターン表である。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】図42
【補正方法】変更
【補正内容】
【図42】 設計パターン表である。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 典型的に必要となる複数種類の処理内容
    について、そのソースコードを記憶する記憶手段と、 作成しようとするプログラムの詳細設計をコンソール操
    作のみで実現する詳細設計手段と、 前記詳細設計手段においてコンソール入力された情報
    と、前記記憶手段に記憶されているソースコードとを組
    み合わせて、作成しようとするプログラムのソースコー
    ドを自動生成する自動生成手段とを備えることを特徴と
    するプログラム自動生成装置。
  2. 【請求項2】 請求項1に記載のプログラム自動生成装
    置において、 自動生成されたソースコードに対応する設計書を印字出
    力する設計書作成手段を、更に備えることを特徴とする
    プログラム自動生成装置。
  3. 【請求項3】 前記複数種類の処理内容は、エントリー
    系の処理、照会系の処理、リスト印刷系の処理、バッチ
    更新系の処理、マスター保守系の処理、ウインド照会系
    の処理に大別されることを特徴とする請求項1に記載の
    プログラム自動生成装置。
  4. 【請求項4】 前記詳細設計手段でのコンソール操作
    が、 物理ファイルの設計処理、画面ファイルの設計処理、ユ
    ニット情報の登録処理、残余の情報の登録処理に区分さ
    れていることを特徴とする請求項1に記載のプログラム
    自動生成装置。
  5. 【請求項5】 ソースコードがRPG言語のソースコー
    ドであることを特徴とする請求項1乃至請求項4のいず
    れかに記載のプログラム自動生成装置。
JP17192594A 1994-06-29 1994-06-29 プログラム自動生成装置 Withdrawn JPH0816379A (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP17192594A JPH0816379A (ja) 1994-06-29 1994-06-29 プログラム自動生成装置
CA 2147192 CA2147192A1 (en) 1994-06-29 1995-04-18 Automatic program generator
TW84103852A TW393626B (en) 1994-06-29 1995-04-19 Automatic program generator
AU16572/95A AU1657295A (en) 1994-06-29 1995-04-20 Automatic program generator
SE9501437A SE9501437L (sv) 1994-06-29 1995-04-20 Automatisk programgenerator
CN 95105409 CN1133456A (zh) 1994-06-29 1995-05-11 自动程序生成器
DE1995123036 DE19523036A1 (de) 1994-06-29 1995-06-24 Automatischer Programmgenerator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17192594A JPH0816379A (ja) 1994-06-29 1994-06-29 プログラム自動生成装置

Publications (1)

Publication Number Publication Date
JPH0816379A true JPH0816379A (ja) 1996-01-19

Family

ID=15932395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17192594A Withdrawn JPH0816379A (ja) 1994-06-29 1994-06-29 プログラム自動生成装置

Country Status (1)

Country Link
JP (1) JPH0816379A (ja)

Similar Documents

Publication Publication Date Title
US4445795A (en) Method and apparatus for merge processing in a text processing system
US5347629A (en) Graphical user interface including updating of multiple panels using what you see is what you get (WYSIWYG) editor
JPH0816379A (ja) プログラム自動生成装置
JPH08202539A (ja) プログラム自動生成装置
EP0564790A2 (en) Graphical user interface including integration of what you see is what you get (WYSIWYG) editor and compiler
JPH06103485B2 (ja) 工程管理処理装置
JP3008807B2 (ja) データ処理装置
EP0358860B1 (en) Apparatus and method for processing data corresponding to labels
Hersey et al. Computer usage in the development of a water resources thesaurus
JP3213455B2 (ja) 文書処理装置の並べ換え方法
JPH02133822A (ja) データ処理装置
JPH0281267A (ja) 画面作成方法
JPH04158469A (ja) 文書作成装置
Feuchter et al. FORTRAN software for creating and maintaining a library cataloging system on scientifically oriented computers. Volume 2: Program LIBLIST, catalog listings
JP4116650B2 (ja) 画面制御方法、画面制御装置
JPH08212161A (ja) 業務マニュアル作成支援システム
Allan et al. MicroCheck: for catalog conversion and updating
Bayer et al. Wildlife Database Management for New York Ecosystems
JPH04252367A (ja) 帳票出力方式
JPH0816557A (ja) データ処理装置
JPH06251041A (ja) 帳票処理装置
JPH02136933A (ja) テストデータ編集方式
JPH09160701A (ja) 表示画面及びデータ入力項目の遷移方法
JPH01159761A (ja) 番号入力方式
JPH08147153A (ja) 部品管理システム

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010904