Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

7.33.1 DEFINE_MAPのパラメータ

FOR

CLASS

NAME

PASS

MANDATORY

DESC

HELP


Anchor
FOR
FOR
FOR

パラメータを関連ルーチンから受け取ります。

以下の値が使用可能です。

...

DEFINE_MAPに*Resultが指定されている場合は、メソッド・ルーチンに定義済みの結果パラメータがあることを示します。これは、固有ファンクションの概念に似ているため、メソッド・ルーチンを式の一部として使用するようにできます。

Anchor
CLASS
CLASS
CLASS

 CLASSは、渡される値のタイプを定義します。CLASSの値は、リポジトリに定義されているフィールドにすることができます。フィールドは、#SALARYなどの単純なフィールドにするか、#SALARY.VISUALまたは#SALARY.MYPARTなどの表示方法にすることができます。

*VARIANTは、バリアント型変数を使用できます。バリアント型変数から値を読み書きできますが、プロパティはありません。今のところ、バリアント型変数 (#PRIM_VAR) を使用するのがより望ましい選肢です。

1つのDEFINE_MAPステートメントでは1つの値のみを渡すことができることに注意してください。

Anchor
NAME
NAME
NAME

名前によって、マップされた値を固有に識別します。名前は最大20文字まで入力することができ、フィールド名と同様、ハッシュ(#)で始まっている必要があります。

...

  • フィールドに対する値を設定するためにCHANGEコマンドを使用する場合は、以下のように値のプロパティを参照する必要があります。
             change #empno #curemp.value

  • 値を変更する場合は、以下のようにSETコマンドを使用してください。
             set com(#curemp) value('A0070')

  • サブルーチンおよび組み込み関数では、以下のように、値のプロパティなしで名前を参照することができます。
             use builtin(reverse) with_args(#curemp) to_get(#revname)

  • 同じ名前を異なるイベント、メソッド、およびプロパティ・ルーチンで使用することができます。

  • 名前には、LANSA専用として予約されている、#PRIM_、#LANSA、#SYS、#COM、および#LPの接頭辞を含まないようにしてください。

Anchor
PASS
PASS
PASS

このパラメータを使用して、提供されているパラメータを変数名にマッピングする方法を指定します。

...

値が*BY_REFERENCEとして渡されると、ルーチンでフィールド値にアクセスし、フィールド値を変更することができます。

Anchor
MANDATORY
MANDATORY
MANDATORY

このパラメータを使用して、指定されるパラメータを必須指定(*YES)に設定します。

...

   
任意指定の出力パラメータに値を指定することもできます。この値は、ルーチンの開始時に変数を初期化するために使用されます。ルーチンの呼び出し時にパラメータが指定されている場合は、この値は置き換えられます。

以下のコードでは、#mNumberOfTimesをデフォルト値99に初期化し、#mValidをfalseに設定します。

   define_map *output class(#std_count) name(#mNumberofTimes) mandatory(99)
define_map *result class(#prim_boln) name(#mValid) mandatory(false)

Anchor
DESC
DESC
DESC

マッピングされた値について、DESCパラメータを使用して短い記述を指定できます。40文字が最長です。

Anchor
HELP
HELP
HELP

HELPパラメータを使用して、マッピングされた値の長い記述を指定することができます。ヘルプ・テキストは、ヘルプメニューの機能オプションを使用して表示することができます。250文字が最長です。