|
プロシージャの作成・実行
|
プロシージャとは、指示またはコマンドをCOMMANDウィンドウに個々に入力したものではなく、ファイルに入力した集まりを指します。
プロシージャの作成
プロシージャを作成するためには、エディタを使用して、コマンドをファイルに入力してください。
EDITコマンドを実行すると、NOMAD環境からエディタを表示し、編集することができます。
-
EDIT プロシージャ名 ;
プロシージャの名前は31文字までです。
例:[hello.nom]
EDIT HELLO ; ←プロシージャ名を宣言し、エディタを開く(拡張子を付けない場合、自動的に .nomが付きます)。
以下のコマンドも参照してください。
EDIT
プロシージャのフォーマット
- コマンドは、複数行に渡って入力できます。
- コマンドの最後には、コマンドの終了を示すセミコロンを付けなければなりません。
- プロシージャにおけるさまざまなステップを説明するために、プロシージャにコメントを追加することができます。
- コメントの開始および終了には、感嘆符( ! )か、アスタリスクおよびスラッシュ(開始には /*、終了には */)を付けてください。
コメントは、複数行に渡って入力することができます。NOMADは、開始の ! または /* から記号の終了までのテキストは、すべてコメントとして認識します。
例:[hello.nom]
DECLARE &AAA AS A10; ! 変数宣言 !
/* 「こんにちは」と表示します */
&AAA = 'こんにちは';
PRINT &AAA;
/* 直接表示します */
PRINT 'こんにちは';
以下のコマンドも参照してください。
DECLARE
PRINT
プロシージャの実行
プロシージャを実行するためには、プロシージャ名をCOMMANDウィンドウに入力し、「実行」をクリックするか、[Ctrl] + [Enter]を押してください。
-
プロシージャ名 ;
例:[hello.nom]
HELLO ; ←プロシージャを実行する(拡張子はいりません)。
実行結果:[hello.nom]
&AAA=こんにちは
こんにちは
フォームオブジェクトプロシージャ
構造化タイプのプロシージャで作成します。これは、一般のプロシージャ(従来のNOMADプロシージャ)よりも精密な構造になっています。
コマンドフォーマット
プロシージャにコマンドを入力する場合、使用するコマンドに関わらず、同一の基本フォーマットで入力します。
-
コマンド名 ;
-
コマンド名 {OTHERWISE / OTW} 他コマンド名 ;
[IFOK 他コマンド名 ;]
-
コマンド名 IFOK 他コマンド名 ;
[{OTHERWISE / OTW} 他コマンド名 ;]
{OTHERWISE / OTW} 他コマンド名
前のコマンドにエラーが発生し、処理が終了した場合に実行するコマンドを指定します。OTW文節の処理が完了すると、IFOK文節が存在する場合はこれをスキップして、次のコマンドへ制御が移行します。
OTWのあと、コマンドを指定しない場合、エラー状態は無視され、処理は次のコマンド行に続きます。
IFOK 他コマンド名
前のコマンドの実行が完了した場合に実行するコマンドを指定します。
プロシージャのオブジェクト化
- プロシージャのコンパイル
プロシージャが初めて呼び出されるとき、NOMADはコマンドをコンピュータの読み取れる形式に変換(コンパイル)します。
コンパイルの処理中、NOMADはプロシージャ内の各コマンドの構文をエラーがないかどうかチェックします。
構文エラーが検出されると、コンパイルは中止し、どのような構文エラーが発生したかを示すメッセージが表示されます。
プロシージャを実行するためにはエラーを訂正しなくてはなりません。
- PRESCANコマンド
プロシージャをオブジェクト化し、その結果を .NPCファイルに保存します。
オブジェクト化されたプロシージャは、NOMADプロシージャと同じ名前で、また識別子 .NPCをつけて格納されます。
PRESCAN プロシージャ名 [プロシージャ名]... ;
- PURGEコマンド
PURGEコマンドは、プロシージャについての情報をメモリーから削除します。
ALLを指定してPURGEコマンドを発行すると、カレントセッションのすべてのプロシージャ、定義化項目、ユーザー定義の&変数、ユーザー定義のウィンドウ、ビューが削除されます。
PURGE ALL / {プロシージャ名...} ;