ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
METHOD GET CODE
|
METHOD GET CODE ( path ; code {; option} {; *} ) | ||||||||
引数 | 型 | 説明 | ||||||
path | テキスト, テキスト配列 |
![]() |
メソッドパスを格納したテキストまたはテキスト配列 | |||||
code | テキスト, テキスト配列 |
![]() |
指定したメソッドのコード | |||||
option | 倍長整数 |
![]() |
0 または省略時 = 単純な書き出し(トークンなし)、1 = トークンを使用して書き出し | |||||
* | 演算子 |
![]() |
指定時 = コンポーネントで実行されたとき、コマンドはホストデータベースに適用される (コンポーネントのコンテキスト以外ではこの引数は無視されます) | |||||
METHOD GET CODEコマンドはpath引数で指定したメソッドの内容をcodeに返します。このコマンドはデータベースメソッド、クラス定義、トリガー、プロジェクトメソッド、フォームメソッド、そしてオブジェクトメソッド等すべてのタイプのメソッドコードを返すことができます。
テキスト配列またはテキスト変数に基づく2つのシンタックスを使用できます:
C_TEXT(tVpath) // テキスト変数
C_TEXT(tVcode)
METHOD GET CODE(tVpath;tVcode) // 1つのメソッドのコード
ARRAY TEXT(arrPaths;0) // テキスト配列
ARRAY TEXT(arrCodes;0)
METHOD GET CODE(arrPaths;arrCodes) // 複数メソッドのコード
2つのシンタックスを混合して使用することはできません。
無効なパス名を渡すと、code 引数は空のままエラーが生成されます。
このコマンドからcodeに返されるテキストは以下のとおりです:
// %attributes = {"lang":"fr","invisible":true,"folder":"Web3"}
option引数を使用する際、メソッドのトークナイズドされたランゲージ要素についてのコード書き出しモードを選択する事ができます:
トークナイズドされたランゲージ要素には以下のものが含まれます:
トークンで書き出されたコードは以降のランゲージ要素のどのような改名にも影響されません。トークンのおかげで、METHOD SET CODEコマンドあるいはコピー/ペーストを用いた場合でも、テキストとして提供されたコードは4Dによって常に正常に解釈されます。4D トークンのシンタックスについての詳細は フォーミュラ内でのトークンの使用を参照ください。
コマンドがコンポーネントから実行されると、デフォルトでコンポーネントメソッドに適用されます。* 引数を渡すとホストデータベースにアクセスします。
METHOD SET CODEコマンドの例題参照。
この例では、option引数を使用した際の影響について説明します。
以下の"simple_init"メソッドを書き出したい場合を考えます:
Case of
:(Form event code=On Load)
ALL RECORDS([Customer])
End case
以下のコードを実行した場合:
C_TEXT($path)
C_TEXT($contents)
$path:=METHOD Get path(Path project method;"simple_init")
METHOD GET CODE($path;$contents;0) //トークンなし
TEXT TO DOCUMENT("simple_init.txt";$contents)
書き出されたドキュメントには以下の内容が格納されます:
//%attributes = {"lang":"en"} 4Dによってコメント追加・保存されたコメント
Case of
: (Form event code=On Load)
ALL RECORDS([Customer])
End case
以下のコードを実行した場合:
C_TEXT($path)
C_TEXT($contents)
$path:=METHOD Get path(Path project method;"simple_init")
METHOD GET CODE($path;$contents;Code with tokens) //トークンを使用
TEXT TO DOCUMENT("simple_init.txt";$contents)
書き出されたドキュメントには以下の内容が格納されます:
//%attributes = {"lang":"en"} 4Dによってコメント追加・保存されたコメント
Case of
: (Form event code:C388=On Load:K2:1)
ALL RECORDS:C47([Customer:1])
End case
プロダクト: 4D
テーマ: デザインオブジェクトアクセス
番号:
1190
初出: 4D v13
変更: 4D v14
変更: 4D v15
変更: 4D v15 R4
変更: 4D v18 R3
ランゲージリファレンス ( 4D v20 R7)