SETBYNAME
SETBYNAMEコマンドは、現在のaXesターミナル画面のフィールド値を、フィールド名(任意でサブ・フィールドのインデックス)で参照して設定し、(オプションとして)現在のaXes画面データをaXesターミナル・サーバーに送信することもできます。 これは5250ターミナルでタイプする時と似ています。
注: 名前がRTNxxxで始まるクライアント・プログラムの変数に戻り値を受け取るためには、通常コマンド文字列にSERVICE_EXCHANGE(*FIELD)が指定されていなければなりません。 詳細は「aXesTerminalServiceの使用」 を参照してください。
必須
SETBYNAME ------- NAME ------------ 画面フィールド名 --------->
>-- VALUE ----------- 値 ----- ---------------->
任意
>-- INDEX ----------- 0 --- ---------------------->
値
>-- SENDKEY ----------(なし) --------------------->
ENTER
F1 … F9
F10 … F24
HELP
PAGE_UP
PAGE_DOWN
ROLL_UP
ROLL_DOWN
>-- RTNSIG -- ------- フィールド名 ---------------->
>-- RTNSCREEN ------- フィールド名 ----------------|
キーワード
NAME |
このキーワードには、設定する値のフィールド名を指定します。 この名前には、ユーザー定義名(CONNECTコマンドでaXesプロジェクト名が指定された場合)またはaXesのフィールド識別子のいずれかを指定できます。 |
INDEX |
このフィールド名がサブファイルに含まれている場合、このキーワードには取得する属性のフィルードの現在の画面上のインスタンスのインデックスを指定します。 サブファイルのスクロール位置にかかわらず、現画面の最初のインスタンスはインデックス1になります。 ユーザーのプログラムがサブファイルのフィールドを処理しないといけない場合は、1画面ごとに処理をしてSENDコマンドを利用してROLL_UP/ROLL_DOWNを送信します。(これは5250ターミナルのユーザーが行わなければならない動作と同じです) |
VALUE |
このキーワードには指定のフィールドに設定する値を指定します。 |
SENDKEY |
このキーワードに値が指定された場合、コマンドは(フィールド値が正常に設定された後に)ここに指定のファンクション・キーを使ってaXesターミナル・サーバーに現在のaXes画面データを送信します。 上記に示すファンクション・キーのいずれかを使用できます。 指定されない場合は、送信処理は実行されません。 |
RTNSIG |
処理後に表示される画面の画面署名を受け取るJSMとクライアント・プログラムとの間で交換されたフィールド名を指定します。 |
RTNSCREEN |
処理後に表示される画面の画面名を受け取るJSMとクライアント・プログラムとの間で交換されたフィールド名を指定します。 CONNECTコマンドでaXesプロジェクト名が指定された場合は画面名はユーザー定義の名前で、画面に1つの名前が割り当てられます。 それ以外の場合は画面署名が戻されます。 |
例
RDMLの例
DEFINE FIELD(#MYSCREEN) REFFLD(#STD_TEXT)
CHANGE FIELD(#JSMCMD) TO('SETBYNAME NAME(FLD001) VALUE(ABC001) RTNSCREEN(MYSCREEN) SERVICE_EXCHANGE(*FIELD)'
USE BUILTIN(JSM_COMMAND) WITH_ARGS(#JSMCMD) TO_GET(#JSMSTS #JSMMSG)
RDMLXの例
define field(#myscreen) reffld(#std_text)
#jsmcommand := 'SETBYNAME NAME(FLD001) VALUE(ABC001) RTNSCREEN(MYSCREEN) SERVICE_EXCHANGE(*FIELD)'
use builtin(jsmx_command) with_args(#jsmhandle #jsmcommand) to_get(#jsmstatus #jsmmessage)