名前を使用して現在のフォーム上のラベルフィールドを検索して、メニューオプションを見つけます。これは、現在の 5250 フォーム上のラベルフィールドを検索し、メニューオプションの名前を探します。メニューオプションが見つかった場合、関連するメニューオプション番号が推測されます。
このファンクションは、メニュー・オプションを識別するテキスト文字列を使って、動的に関連のメニュー・オプション番号に変換できるので、アクティビティに関連付けられたメニュー・オプション番号が変化するアプリケーションでは便利です。
このファンクションでは、画面名/検索テキストをキーとしたキャッシュを使用して、同じ操作の繰り返しを最適化します。
キャッシュ・ロジックでは、任意の特定の5250画面上のメニューオプション番号は、1つのサイン・オン・セッション内で変化しないことを前提としています。
構文
GET_MENU_OPTION_NUMBER(sSearchText, bCaseInsensitive, bTryPrecedingField)
パラメータ
sSearchText | 文字列。必須。メニューオプションの検索文字列。 |
bCaseInsensitive | ブール値 (TRUE/FALSE)。任意。デフォルトは TRUE です。検索で大文字小文字を区別するかどうかを示します。 |
bTryPrecedingField | ブール値 (TRUE/FALSE)。 任意。 デフォルトは TRUE です。ラベルに検索テキストが含まれていても、メニュー番号を推測できない場合に、直前のラベルフィールドをメニュー番号の代替ソースとして使用するかどうかを示します。このオプションは、メニューオプション番号とメニューテキストが別であっても隣接したラベルフィールドであるメニューに対応します。 |
戻り値
文字列。関連するメニューオプション番号、またはメニューオプションを推測できなかった場合は空の文字列。
例
次のコードでは、メッセージ "Menu option number returned was 2" が表示されます。
/* I5/OS メインメニューのオフィス・タスクのメニュー・オプション番号を検索 */
var strMenuNumber = GET_MENU_OPTION_NUMBER("office tasks");
alert("Menu option number returned was " + strMenuNumber);
次のコードでは、メッセージ "Menu option number returned was 11" が表示されます。
/* I5/OS メインメニューのクライアント・アクセス/400 タスクのメニュー・オプション番号を検索 */
var strMenuNumber = GET_MENU_OPTION_NUMBER("client acc");
alert("Menu option number returned was " + strMenuNumber);