9.7 ALLOW_EXTRA_USER_KEY

LANSA

9.7 ALLOW_EXTRA_USER_KEY


Þ 注:組み込み関数の規則

DISPLAY、 REQUEST、またはPOP_UPコマンドのパラメータによって使用可能になる通常のユーザー定義のファンクション・キーに加えて、「拡張」ユーザー定義のファンクション・キーを使用可能にします。

各製品の対応

LANSA/AD

使用可

Visual LANSA for Windows

使用可

Visual LANSA for Linux

使用可

 

引数

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

N

必須

使用可能にする拡張ファンクション・キーの番号を指定するか、これを含むリテラルまたは変数。指定される値は、1から24の範囲にある必要があります。それ以外の場合は無視されます。

1

2

0

0

2

A

任意

画面パネルのファンクション・キー領域に表示される際に、ファンクション・キーに関連付ける記述を指定するかこれを含むリテラルまたは変数

1

10

 

 

 

戻り値

戻り値はありません。

技術上の注記

·         ALLOW_EXTRA_USER_KEYによって拡張ファンクション・キーが使用可能になると、現在のファンクション内で後続するDISPLAY、REQUESTまたはPOP_UPの各コマンドの処理が影響を受けます。

·         ALLOW_EXTRA_USER_KEYが実行されるたびに、以降のすべてのDISPLAY、REQUEST、またはPOP_UPコマンドによって使用可能になる拡張キーの「スタック」に別の(または同じ)ファンクション・キーが追加されます。この使用可能になった拡張ファンクション・キーの「スタック」は、最大24個の項目を含むことができます。24個を超える拡張ファンクション・キーを使用可能にしようとすると(同じファンクション・キーを繰り返し使用可能にする場合を含む)、実行時アプリケーション・エラーを引き起こします。

·         組み込み関数DROP_EXTRA_USER_KEYSを使用すると、拡張ファンクション・キーの「スタック」にあるすべての項目は削除されます。

·         この方法で使用可能にする拡張ファンクション・キーが、DISPLAY、REQUEST、またはPOP_UPコマンドによって自動的に使用可能になるファンクション・キーと競合しないように十分注意してください。このような競合があると、予測不可能または予期しない結果が発生する場合があります。

·         この組み込み関数は、ファンクション・キーをダイナミックに使用可能または使用不能にし、関連する記述をダイナミックに変更することができるので、全構文検査および画面設計機能によって使用される画面パネル・イメージでは、イメージのファンクション・キー領域にそれらのファンクション・キーが表示されません。このようなファンクション・キーは、アプリケーションの実行時にのみファンクション・キー領域に表示されます。

使用例

ファンクション内のすべてのパネルおよびポップアップ上で、ファンクション・キー5を使用可能にします。

FUNCTION OPTIONS( ........)
USE      BUILTIN(ALLOW_EXTRA_USER_KEY) WITH_ARGS(5 'Refresh')
 

特定のパネル上で、ファンクション・キー18および19を使用可能にし、その他の余分なキーが偶発的に使用可能になることがないようにします。

USE      BUILTIN(DROP_EXTRA_USER_KEYS)
USE      BUILTIN(ALLOW_EXTRA_USER_KEY) WITH_ARGS(18 '''Hold''')
USE      BUILTIN(ALLOW_EXTRA_USER_KEY) WITH_ARGS(19 '''Save''')
 
DISPLAY  FIELDS(........)
 
CASE     OF_FIELD(#IO$KEY)
WHEN     VALUE_IS('= ''18''')
         << hold processing >>
WHEN     VALUE_IS('= ''19''')
         << save processing >>
ENDCASE
 

ファンクション・キー14から21を使用可能にします。

DEFINE     FIELD(#I) TYPE(*DEC) LENGTH(2) DECIMALS(0)
USE        BUILTIN(DROP_EXTRA_USER_KEYS)
BEGIN_LOOP FROM(14) TO(21) USING(#I)
USE      BUILTIN(ALLOW_EXTRA_USER_KEY) WITH_ARGS(#I)
END_LOOP