V5R2 での変更点

V5R2 における ILE RPG の拡張機能について、以下に記載します。

表 5. V5R1 以降に変更された言語要素
言語単位 要素 説明
組み込み関数 %DEC(式) 文字タイプのパラメーターを使用できるようになりました。
%DECH(式)
%FLOAT(式)
%INT(式)
%INTH(式)
%UNS(式)
%UNSH(式)
定義仕様書キーワード DTAARA({*VAR:}データ域名) データ域名は、名前、'LIBRARY/NAME' を指定する文字リテラル、または実行時に実際のデータ域を判別する文字変数にすることができます。
DIM データ構造仕様書に使用できます。
LIKEDS サブフィールド仕様書に使用できます。
EXTNAME(ファイル名{:形式名}
{:*ALL|*INPUT|*OUTPUT|*KEY}
)
オプションの「タイプ」パラメーターは、外部記述データ構造のどのタイプのフィールドを抽出するかを制御します。
定義仕様書 長さと小数部の桁数入力 パック・フィールドおよびゾーン・フィールドでは、長さおよび小数点以下の桁数として 31 桁まで指定できます。
命令コード CHAIN, DELETE, READE, READPE, SETGT, SETLL 自由形式演算において、演算項目 1 をキー値のリストにすることができます。
CHAIN, READ, READC, READE, READP, READPE, UPDATE, WRITE 外部記述ファイルまたはレコード様式で使用される場合、データ構造を結果フィールドに指定できます。
UPDATE 自由形式演算において、最後の引数に更新されるフィールドのリストを入れることができます。
FEOD 命令拡張 N を使用できます。これは、書き出されていないバッファーをデータベースが使用できるようにする必要があるが、 必ずしもディスクに書き出す必要がないことを指定します。
演算仕様書 長さと小数部の桁数入力 パック・フィールドおよびゾーン・フィールドでは、長さおよび小数点以下の桁数として 31 桁まで指定できます。
表 6. V5R1 以降の新しい言語要素
言語単位 要素 説明
代入演算子 += -= *= /= **= これらの割り当て演算子を使用する場合、演算のターゲットも演算の第 1 オペランドになります。
制御仕様書キーワード DECPREC(30|31) %EDITC および %EDITW などの場合に、提示する 10 進数の中間の値の精度を制御します。
定義仕様書キーワード
LIKEREC(intrecname{:*ALL|
*INPUT|*OUTPUT|*KEY})
サブフィールドがレコード様式と同じであるデータ構造を定義します。
組み込み関数 %BITAND(expression : expression) オペランドの対応するビットが両方ともオンである場合、ビットがオンである結果を戻します。
%BITNOT(式) ビットが引数内のビットの逆である結果を戻します。
%BITOR(expression : expression) オペランド内の対応するビットのいずれかがオンである場合、ビットがオンである結果を戻します。
%BITXOR(expression : expression) オペランド内の対応するビットのちょうど 1 つがオンである場合、ビットがオンである結果を戻します。
%FIELDS(名前{:名前...}) 自由形式の UPDATE で、更新するフィールドを指定する場合に使用。
%KDS(data structure) 自由形式のキー順命令コード CHAIN、SETLL、 SETGT、READE、および READPE で使用し、操作のキーがデータ構造内に存在することを指定します。