このドキュメントでは、機能別に分類された Natural ステートメントの概要を示します。
注意:
DLOGOFF
、DLOGON
、SHOW
、IMPORT
および EXPORT
は、Entire DB がインストールされている場合にのみ利用できます。詳細については、『Entire DB』ドキュメントを参照してください。
次のタイプのステートメントが有効です。
データベース内の情報にアクセスして操作するには、次の Natural データ操作言語(DML)ステートメントを使用します。
READ |
データベースファイル内の物理的または論理的な一連のレコードを読み取ります。 |
FIND |
ユーザー指定の条件に基づいて、データベースファイルからレコードを選択します。 |
HISTOGRAM |
データベースフィールドの値を読み取ります。 |
GET |
ISN(内部シーケンス番号)または RNO(レコード番号)を指定してレコードを読み取ります。 |
GET
SAME |
現在処理中のレコードを再読み取りします。 |
ACCEPT/REJECT |
ユーザー指定の条件に基づいて、レコードの受け入れ/除外を行います。 |
PASSW |
パスワード保護されたファイルにアクセスするためのパスワードを指定します。 |
LIMIT |
READ 、FIND または HISTOGRAM 処理ループの実行回数を制限します。
|
STORE |
新しいレコードをデータベースに追加します。 |
UPDATE |
データベース内のレコードを更新します。 |
DELETE |
データベースからレコードを削除します。 |
END
TRANSACTION |
論理トランザクションの終了を示します。 |
BACKOUT
TRANSACTION |
完了していない論理トランザクションをバックアウトします。 |
GET TRANSACTION
DATA |
直前の END
TRANSACTION ステートメントで保存したトランザクションデータを読み取ります。
|
RETRY |
他のユーザー用にホールド状態になっているレコードの再読み取りを試みます。 |
AT START OF
DATA |
処理ループで一連のレコードの先頭が処理されるときに実行されるステートメントを指定します。 |
AT END OF
DATA |
処理ループで一連のレコードの最後が処理されたときに実行されるステートメントを指定します。 |
AT
BREAK |
制御フィールドの値が変更されるときに実行されるステートメントを指定します(ブレイク処理)。 |
BEFORE BREAK
PROCESSING |
ブレイク処理の実行前に実行されるステートメントを指定します。 |
PERFORM BREAK
PROCESSING |
直ちにブレイク処理を呼び出します。 |
Natural では、Natural DML ステートメントの他に、SQL データベース上でデータを操作する Natural プログラムで使用する SQL ステートメントも提供しています。
次の Natural SQL ステートメントが有効です。
CALLDBPROC |
Natural からアクセスできる SQL データベースシステムのストアドプロシージャを呼び出します。 |
COMMIT |
論理トランザクションの終了を示し、トランザクション中にロックされた全データを解放します。すべてのデータ変更がコミットされて確定されます。 |
DELETE |
カーソルを使用しないでテーブル内の行を削除したり("検索済"DELETE )、カーソルが位置づけられたテーブル内の行を削除したり("位置決め"DELETE )します。
|
INSERT |
1 つ以上の行をテーブルに新しく追加します。 |
PROCESS
SQL |
基準データベースに対して SQL ステートメントを発行します。 |
READ RESULT SET |
前の CALLDBPROC ステートメントで呼び出されたストアドプロシージャによって作成された結果セットを読み込みます。
|
ROLLBACK |
最後のリカバリ単位の開始以降に行われたデータベース更新をすべて元に戻します。 |
SELECT |
任意の行数を取得するためのカーソル選択と、多くても 1 つの行を取得する非カーソル選択(単独 SELECT )の両方をサポートします。
|
UPDATE |
カーソルを使用しないでテーブル内の行に対して更新処理を実行したり("検索済"UPDATE )、カーソルが位置づけられた行の列に対して更新処理を実行したり("位置決め"UPDATE )します。
|
算術演算とデータ移動操作には次のステートメントを使用します。
COMPUTE |
算術演算を実行するか、値をフィールドに割り当てます。 |
ADD |
複数のオペランドを加算します。 |
SUBTRACT |
1 オペランドから他の 1 つ以上のオペランドを減算します。 |
MULTIPLY |
複数のオペランドを乗算します。 |
DIVIDE |
1 オペランドを他のオペランドに除算します。 |
EXAMINE
TRANSLATE |
フィールド内の文字を大文字/小文字または他の文字に変換します。 |
MOVE |
1 オペランドの値を 1 つ以上のフィールドに移動します。 |
MOVE
ALL |
値の複数オカレンスを他のフィールドに移動します。 |
COMPRESS |
複数のフィールドの値を 1 フィールドに連結します。 |
SEPARATE |
1 フィールドの内容を複数のフィールドに分割します。 |
EXAMINE |
特定の値でフィールドをスキャンし、それを置き換えたり、出現回数をカウントしたりします。 |
RESET |
フィールドの値を 0(数値の場合)、空白(英数字の場合)、またはその初期値に設定します。 |
処理ループの実行には次のステートメントが関係します。
ESCAPE |
処理ループの実行を停止します。 |
FOR |
処理ループを開始し、ループの処理回数を制御します。 |
REPEAT |
処理ループを開始し、指定された条件に基づいて終了します。 |
SORT |
レコードをソートします。 |
出力レポートの作成には次のステートメントを使用します。
FORMAT |
出力パラメータ設定を指定します。 |
DISPLAY |
列形式で出力するフィールドを指定します。 |
WRITE / PRINT |
列形式以外で出力するフィールドを指定します。 |
WRITE
TITLE |
レポートの各ページの上に出力するテキストを指定します。 |
WRITE
TRAILER |
レポートの各ページの下に出力するテキストを指定します。 |
AT TOP OF
PAGE |
新しい出力ページの開始時に実行される処理を指定します。 |
AT END OF
PAGE |
出力ページの最後に達したときに実行される処理を指定します。 |
SKIP |
レポートに 1 行以上の空行を作成します。 |
EJECT |
タイトルやヘッダーを含まずにページ送りを行います。 |
NEWPAGE |
タイトルやヘッダー付きでページ送りを行います。 |
SUSPEND IDENTICAL
SUPPRESS |
1 レコードに対して同一値の省略を中止します。 |
DEFINE PRINTER |
論理出力先にレポートを割り当てます。 |
CLOSE
PRINTER |
プリンタをクローズします。 |
データの対話型処理のためにデータ画面(マップ)を生成するには、次のステートメントを使用します。
INPUT |
データを表示したり、入力したりするための形式化された画面(マップ)を作成します。 |
REINPUT |
INPUT ステートメントを再実行します(前の INPUT ステートメントに対する入力データが誤りであった場合)。
|
DEFINE
WINDOW |
ウィンドウのサイズ、位置、および属性を指定します。 |
SET
WINDOW |
ウィンドウを稼動したり解除したりします。 |
PROCESS
PAGE |
Web リッチ GUI 画面に対するデータマッピングを作成します。 |
PROCESS PAGE
USING |
ページレイアウトから生成されたアダプタオブジェクトを使用してリッチ GUI I/O 処理を実行します。 |
PROCESS PAGE
UPDATE |
PROCESS PAGE ステートメントを再実行します。
|
PROCESS PAGE
MODAL |
処理ブロックを開始し、リッチ GUI ウィンドウの存続期間を制御します。 |
Natural プログラムの実行中に検出された条件に基づいてステートメントの実行を制御するには、次のステートメントを使用します。
IF |
論理条件に基づいてステートメントを実行します。 |
IF
SELECTION |
一連の英数字フィールドのうちの 1 つにのみ値が含まれていることを確認します。 |
DECIDE
FOR |
複数の論理条件に基づいてステートメントを実行します。 |
DECIDE
ON |
変数の内容に基づいてステートメントを実行します。 |
プログラムおよびルーチンの実行と関連して次のステートメントを使用します。
CALL |
Natural プログラムから Natural 以外のプログラムを呼び出します。 |
CALLNAT |
Natural サブプログラムを呼び出します。 |
CALL
FILE |
Natural 以外のプログラムを呼び出し、Adabas 以外のファイルからレコードを読み取ります。 |
CALL
LOOP |
Natural 以外のプログラムへのコールを含む処理ループを生成します。 |
DEFINE
SUBROUTINE |
Natural サブルーチンを定義します。 |
ESCAPE |
ルーチンの実行を中止します。 |
FETCH |
Natural プログラムを呼び出します。 |
PERFORM |
Natural サブルーチンを呼び出します。 |
PROCESS
COMMAND |
コマンドプロセッサを呼び出します。 |
RUN |
ソースプログラムをコンパイルて実行します。 |
関数を作成するには次の Natural ステートメントを使用します。
DEFINE
FUNCTION |
Natural ステートメントのオペランドの代わりに呼び出すことができる関数を作成します。関数は、タイプファンクションの Natural オブジェクトで定義されます。 |
DEFINE
PROTOTYPE |
ファンクションコールに使用するプロパティを指定します。 |
ファンクションコール | タイプファンクションの Natural オブジェクトを呼び出すために使用します。 |
アプリケーションの実行または Natural セッションを終了するには、次の Natural ステートメントを使用します。
STOP |
アプリケーションの実行を終了します。 |
TERMINATE |
Natural セッションを終了します。 |
(Adabas 以外の)物理順ワークファイルに対するデータの読み取り/書き込みには次の Natural ステートメントを使用します。
WRITE WORK
FILE |
ワークファイルにデータを書き込みます。 |
DOWNLOAD PC
FILE |
メインフレーム、UNIX、または OpenVMS プラットフォームから PC へのデータ転送を可能にします。 |
READ WORK
FILE |
ワークファイルからデータを読み取ります。 |
UPLOAD PC
FILE |
PC からメインフレーム、UNIX、または OpenVMS プラットフォームへのデータ転送を可能にします。 |
CLOSE WORK
FILE |
ワークファイルをクローズします。 |
CLOSE PC
FILE |
特定の PC ワークファイルをクローズします。 |
DEFINE WORK
FILE |
ファイル名をワークファイルに割り当てます。 |
コンポーネントベースプログラミングと関連して次の Natural ステートメントを使用します。
DEFINE
CLASS |
Natural クラスモジュール内からクラスを指定します。 |
CREATE
OBJECT |
指定したクラスのオブジェクト(インスタンスとも呼ばれる)を作成します。 |
SEND
METHOD |
オブジェクトのメソッドを呼び出します。 |
INTERFACE |
クラスの特定機能に対するインターフェイス(メソッドおよびプロパティの集合)を定義します。 |
METHOD |
インターフェイス定義外のメソッドの実装として、サブプログラムを割り当てます。 |
PROPERTY |
インターフェイス定義外のプロパティに対する実装として、オブジェクトデータ変数を割り当てます。 |
EXPAND |
ダイナミック変数の割り当てメモリを指定したサイズに拡張します。または、X-array のオカレンス数を拡張します。 |
REDUCE |
ダイナミック変数のサイズまたは X-array のオカレンス数を縮小します。 |
RESIZE |
ダイナミック変数のサイズまたは X-array のオカレンス数を調整します。 |
OPEN
CONVERSATION |
これにより、クライアントは会話を開き、会話に取り込むリモートサブプログラムを指定することができます。 |
CLOSE
CONVERSATION |
これにより、クライアントは会話を閉じることができます。現在の会話、開かれた別の会話、または開かれたすべての会話を閉じることができます。 |
DEFINE
DATA CONTEXT |
コンテキスト変数と呼ばれる変数を定義します。コンテキスト変数では、対応する CALLNAT ステートメントで変数をパラメータとして明示的に渡さなくても、1 つの会話の中で複数のリモートサブプログラムがこの変数を使用できます。
|
『Natural RPC(リモートプロシージャコール)』ドキュメントの「関係する Natural ステートメント」セクションも参照してください。
PARSE |
Natural プログラムから XML ドキュメントを解析できるようになります。 |
REQUEST
DOCUMENT |
外部システムへのアクセスを可能にします。 |
DEFINE
DATA |
Natural プログラムまたはルーチンで使用するデータ要素を定義します。 |
END |
Natural プログラムまたはルーチンのソースコードの終了を示します。 |
INCLUDE |
コンパイル時に Natural コピーコードを組み込みます。 |
ON
ERROR |
ランタイムエラーをインターセプトします。インターセプトしない場合は、Natural エラーメッセージが表示された後、Natural プログラムが終了します。 |
RELEASE |
Natural スタックの内容を削除します。FIND ステートメントによって保存された ISN の集合を解放します。Natural グローバル変数を解放します。
|
SET
CONTROL |
Natural プログラム内から Natural 端末コマンドを実行します。 |
SET
KEY |
端末キーに機能を割り当てます。 |
SET
GLOBALS |
セッションパラメータの値を設定します。 |
SET
TIME |
*TIMD システム変数に対する参照開始時点を設定します。
|
STACK |
Natural スタックにデータ/コマンドを挿入します。 |
次のステートメントは、レポーティングモードでのみ使用できます。
LOOP |
処理ループを閉じます。 |
DO/DOEND |
論理条件に基づいて実行するステートメントのグループを指定します。 |
OBTAIN |
ファイルから 1 つ以上のフィールドを読み取ります。 |
REDEFINE |
フィールドを再定義します。 |
次のステートメントは、ストラクチャードモードとレポーティングモードの両方で使用できます。ただし、ステートメント構造と機能が異なるものがあります。
AT START OF
DATA |
処理ループで一連のレコードの先頭が処理されるときに実行されるステートメントを指定します。 |
AT END OF
DATA |
処理ループで一連のレコードの最後が処理されたときに実行されるステートメントを指定します。 |
AT
BREAK |
制御フィールドの値が変更されるときに実行されるステートメントを指定します(ブレイク処理)。 |
AT TOP OF
PAGE |
新しい出力ページの開始時に実行される処理を指定します。 |
AT END OF
PAGE |
出力ページの最後に達したときに実行される処理を指定します。 |
BEFORE BREAK
PROCESSING |
ブレイク処理の実行前に実行されるステートメントを指定します。 |
CALL
LOOP |
Natural 以外のプログラムへのコールを含む処理ループを生成します。 |
CALL
FILE |
Natural 以外のプログラムを呼び出し、Adabas 以外のファイルからレコードを読み取ります。 |
COMPUTE |
算術演算を実行するか、値をフィールドに割り当てます。 |
DEFINE
SUBROUTINE |
Natural サブルーチンを定義します。 |
ESCAPE |
処理ループの実行を停止します。 |
FIND |
ユーザー指定の条件に基づいて、データベースファイルからレコードを選択します。 |
GET
SAME |
現在処理中のレコードを再読み取りします。 |
HISTOGRAM |
データベースフィールドの値を読み取ります。 |
IF |
論理条件に基づいてステートメントを実行します。 |
IF
SELECTION |
一連の英数字フィールドのうちの 1 つにのみ値が含まれていることを確認します。 |
ON
ERROR |
ランタイムエラーをインターセプトします。インターセプトしない場合は、Natural エラーメッセージが表示された後、Natural プログラムが終了します。 |
READ |
データベースファイル内の物理的または論理的な一連のレコードを読み取ります。 |
READ WORK
FILE |
ワークファイルからデータを読み取ります。 |
REPEAT |
処理ループを開始し、指定された条件に基づいて終了します。 |
SORT |
レコードをソートします。 |
STORE |
新しいレコードをデータベースに追加します。 |
UPDATE |
データベース内のレコードを更新します。 |
UPLOAD PC
FILE |
PC からメインフレーム、UNIX、または OpenVMS プラットフォームへのデータ転送を可能にします。 |