| 4D v18VP SET ALLOWED METHODS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v18
 VP SET ALLOWED METHODS 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| VP SET ALLOWED METHODS ( methodObj ) | ||||||||
| 引数 | 型 | 説明 | ||||||
| methodObj | Object |   | 4D View Pro エリアで許可されたメソッド | |||||
VP SET ALLOWED METHODS コマンドは4D View Pro フォーミュラから呼び出し可能なプロジェクトメソッドを指定します。このコマンドは、呼び出された後、セッション中に初期化された4D View Pro エリア全てに対して適用されます。同じセッション中において異なる設定で初期化をするために、複数回呼び出すこともできます。
セキュリティ上の理由から、デフォルトで、VP SET ALLOWED METHODS コマンドを実行していない場合には、4D View Pro エリアにおいてはメソッドの呼び出しは許可されていません(ただし4D の一般的なSET ALLOWED METHODS コマンドが呼び出されていた場合を除きます。詳細は下記の互換性に関する注意を参照)。見認証のメソッドをフォーミュラ内で使用した場合には、4D View Pro エリアに #NAME? エラーが表示されます。
互換性に関する注意: 4D View Pro は、VP SET ALLOWED METHODS が呼び出されていない場合、4D の汎用的なSET ALLOWED METHODS コマンドをサポートします。ただし、VP SET ALLOWED METHODS の使用が推奨されます。呼び出されると、それ以降SET ALLOWED METHODS コマンドはどの4D View Pro エリアに対しても何の効力も持たなくなります。
methodObj 引数には、それぞれの要素に4D View Pro エリア内で定義したいファンクションの名前を格納しているオブジェクトを渡します:
| プロパティ | 型 | 詳細 | ||||||||||||||||||
| <functionName> | オブジェクト | 4D View Pro フォーミュラで表示するカスタムファンクションの名前(スペースは使用できません) | ||||||||||||||||||
| method | テキスト | (必須) 許可したい既存の4D プロジェクトメソッドの名前 | ||||||||||||||||||
| parameters | オブジェクトのコレクション | 引数のコレクション(メソッド内で定義されている順) | ||||||||||||||||||
| [ ].name | テキスト | <functionName>に表示する引数の名前 注: 引数の名前にスペース文字(" ") を含めることはできません。 | ||||||||||||||||||
| [ ].type | 数値 | 引数の型。サポートされる型: 
 | ||||||||||||||||||
| summary | テキスト | 4D View Pro に表示するファンクションの詳細 | ||||||||||||||||||
| minParams | 数値 | 引数の最小の数 | ||||||||||||||||||
| maxParams | 数値 | 引数の最大の数。ここにparameters のlength より大きな値を渡すことによって、デフォルトの型を持つ"オプション"の引数を宣言することができるようになります。 | 
4D View Pro エリアにおいて、2つのメソッドを許可したい場合を考えます:
 C_OBJECT($allowed)
 $allowed:=New object // コマンドに渡す引数
 
 $allowed.Hello:=New object // "Hello" という名前のシンプルな最初のファンクションを作成
 $allowed.Hello.method:="My_Hello_Method" // 4D メソッドを設定
 $allowed.Hello.summary:="Hello prints hello world"
 
 $allowed.Byebye:=New object // "Byebye" という名前の、引数を受け付ける2つ目のファンクションを作成
 $allowed.Byebye.method:="My_ByeBye_Method"
 $allowed.Byebye.parameters:=New collection
 $allowed.Byebye.parameters.push(New object("name";"Message";"type";Is text))
 $allowed.Byebye.parameters.push(New object("name";"Date";"type";Is date))
 $allowed.Byebye.parameters.push(New object("name";"Time";"type";Is time))
 $allowed.Byebye.summary:="Byebye prints a custom timestamp"
 $allowed.Byebye.minParams:=3
 $allowed.Byebye.maxParams:=3
 
 VP SET ALLOWED METHODS($allowed)このコードが実行されたあと、定義されたファンクションは4D View Pro フォーミュラで使用することができるようになります:

注: 4D View Pro ファンクション名は自動的に大文字で表示されます。
	プロダクト: 4D
	テーマ: 4D View Pro ランゲージ
	番号: 
        9777
        
        
        
	
	初出: 4D v17 R6
	
	4D View Pro リファレンス ( 4D v18)
	
	
	
 コメントを追加
コメントを追加