[ |../../index.htm#lansa/lansa050_0940.htm]
現在地: RAMP-TSガイド > スクリプト > 使用方法 > GET_FORM_MESSAGE ファンクション

GET_FORM_MESSAGE ファンクション

指定した行番号の 5250 メッセージ・テキストを取得し、オプションでフレームワーク・メッセージとして転送します。 
構文
var bMoreRecords = GET_FORM_MESSAGE(\[iRow,\] \[sMoreIndicator,\]\[bRoute\])  
パラメータ

iRow

任意。 メッセージ行番号を指定する整数。デフォルトは最後の行です。

sMoreIndicator

任意。 さらにメッセージがあるかどうかを示すためにアプリケーションで使用される文字列。デフォルトは "+" です。

bRoute

任意。 メッセージをフレームワークのメッセージ ・エリアにルーティングするかどうかを指定するブール値。TRUE の場合、画面のメッセージのテキストは削除されます。デフォルトは TRUE です。

 |
 
戻り値
ブール値。次のいずれかの値を返します。

TRUE

メッセージ行に表示されたエレメントでさらにインジケータが見つかりました。

FALSE

メッセージ行に表示されたエレメントでさらにインジケータは見つかりませんでした。

 |
 
備考
さらに、RAMP は取得した最後のメッセージを格納する vLastMessage というプロパティを現在のフォーム・オブジェクトに設定します。このプロパティをスクリプトで使用するには、以下のようにします。
var sLastMsg = this.vLastMessage;
このポインターの使用は現在のスクリプト内のみで有効です。
 

GET_FORM_MESSAGE(22);    /* Extract messages and hide the message line  */
if (this.vLastMessage != "") ALERT_MESSAGE("ERROR:" + this.vLastMessage);
GET_FORM_MESSAGE(22, "More"); 
  
以下のサンプルは、到着スクリプトで GET_FORM_MESSAGES を使用して、すべての 5250 メッセージをフレームワークに転送しています。
この GET_FORM_MESSAGE は、5250 画面で表示されているテキストを指定した行で取得します。
5250 画面でさらにメッセージがあることが示された場合は、結果として TRUE を返します。その他のメッセージを読み取るためには、メッセージを表示する必要があります。これは、メッセージを表示している行にカーソルを設定し、PageDown キーを 5250 画面に送信することで実現します。5250 画面が到着したら、新しいメッセージを取得します。これはリソースを多く使う演習であることに注意してください。
 
   /* ====================================================== /    / ==================  vHandle_ARRIVE  ================== /    / ====================================================== /    / Handle arrival at this Destination /    / oPayload: The payload supplied by the event initiator /    / oPreviousForm: Reference to previous object Form*/
   vHandle_ARRIVE: function(oPayload, oPreviousForm)    {      var bReturn = true;
     SHOW_CURRENT_FORM(true);      HIDE_5250_BUTTONS();      SETBUSY(false); /* Turn off the busy state to allow user interaction */
     /* Get the 5250 message text from the message area */      var flagMoreRecords = GET_FORM_MESSAGE(22);
    /* If there are more messages */
     if (flagMoreRecords == true)      {
        /* Move the cursor to the line displaying the Messages */         SETCURSORTOROW(22);
        /* Bring up the next message */         SENDKEY(KeyPageDown);
     }
    /* <ARRIVE /> - Do not remove or alter this line */
     return(bReturn);    },
   
[ |../../index.htm#lansa/lansa050_0940.htm]