[ |../../index.htm#lansa/lansa050_1365.htm]
現在地: RAMP-TSガイド > プログラミング・テクニック > ファンクション キーの記述の使用によるRAMPボタンの条件設定

ファンクション・キーの記述の使用によるRAMPボタンの条件設定

この例では、5250画面上で以下のファンクション・キーの記述を

RAMPボタンおよびファンクション・キーと一致させる方法について説明します。
この例では、JavaScript ファンクション SHARED.apply5250FunctionKeyPatterns を使用します。このファンクションは指定した画面の行で Fn=xxxxxx のパターンを検索し、これらのパターンを使用して、一致する RAMP-TS ボタンおよびファンクション・キーの条件を設定します。
一致にはパターンのテキスト部分は含まれないことに注意してください。通常 RAMP-TS では、ボタンのキャプションは RAMP ツールの 5250 画面とは別に定義されます。    
このサンプルを実行するには、SHARED.apply5250FunctionKeyPatterns のファンクションをコピーして SHARED スクリプト・オブジェクト、UF_SY420_RTS.JS ファイルに貼り付けます。このファンクションのロジックは以下のようになっています。

 
ファンクションの呼び出し
以下の例のように、デスティネーション画面の到着スクリプトからファンクションを呼び出します。
   vHandle_ARRIVE: function(oPayload, oPreviousForm)
   {
     var bReturn = true;
     SHARED.apply5250FunctionKeyPatterns(22,23); /* Must be before SHOW_CURRENT_FORM() */
     SHOW_CURRENT_FORM(true); /* Show the form in the framework and show VLF buttons */
     HIDE_5250_BUTTONS();     /* Hide any 5250 style buttons displayed               */
     GET_FORM_MESSAGE(22);    /* Extract messages and hide the message line          */
     SETBUSY(false);          /* Last thing done - turn off the busy state           */
ここでは、到着画面の行 22 および 23 で Fn=xxxx テキスト・パターンを検索し、RAMP-TS ボタンとファンクション・キーをこれらのパターンと一致させます。これらは単にテキスト・パターンであり、プログラムでは 5250 画面でどのファンクション・キーが実際に有効になっているかとはまったく関係ありません。  テキスト・パターンは 5250 画面上に表示されユーザーが読むためのもので、コンピュータ・プログラムのためのものではありません。 
   
パラメータ
このファンクションには以下のパラメータがあります。

開始行番号

必須。整数。Fn=xxxx パターンを検索する最初の行。

終了行番号

任意。整数。Fn=XXXXX パターンを検索する最後の行。デフォルト値は開始行番号と同じ値です。

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="85f774d6-c046-410f-8806-6564a6cacd00"><ac:plain-text-body><![CDATA[

常に有効にするキー/ボタン 

任意。ファンクション・キー識別子の配列。例: [KeyEnter,KeyF11]

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="8876bc35-2aa0-4788-9303-8803a041db9b"><ac:plain-text-body><![CDATA[

常に無効にするキー/ボタン

任意。ファンクション・キー識別子の配列。例: [ KeyF12, KeyF3 ]

]]></ac:plain-text-body></ac:structured-macro>

 |
 
例えば、
     SHARED.apply5250FunctionKeyPatterns(22, 23, \[KeyEnter,KeyF1\], \[KeyF12\] );
では、画面の行 22 から 23 をチェックし、Enter および F1 キーを常に有効にし、F12 キーを常に無効にするように指定しています。
無条件に PageUp キーと PageDown キーを有効にする場合、これらのキーを有効にするための一致するテキスト・パターンはありません。次のように記述します。 
  
    SHARED.apply5250FunctionKeyPatterns(22, 23, \[ KeyPageUp, KeyPageDown \] );
SHAREDファンクションでは、これを継続的に実行することもできます。
「[<span style="color: #0000ee"><span style="text-decoration: underline; ">ファンクションに関する質問</span></span>|lansa050_1650.htm#_Ref247103940]」も参照してください。
[ !worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32! |../../index.htm#lansa/lansa050_1365.htm]