リファレンス > 関数リファレンス > 論理関数 > SetRecursion
 

SetRecursion

式内部の再帰とループの最大繰り返し数を設定します。

構文 

SetRecursion (式 ; 最大繰り返し)

引数 

= 任意の計算フィールド、または定数

最大繰り返し - 繰り返しの最大数。

戻り値のデータタイプ 

テキスト、数字、日付、時刻、タイムスタンプ、オブジェクト

起点 

FileMaker Pro 18.0 Advanced

説明 

While 関数と再帰的カスタム関数の繰り返しは、デフォルトでそれぞれ 50,000 回にまで制限されます。この関数を使用すれば、制限を最大繰り返しまで増やしたり、減らしたりできます。最大繰り返しを超えた場合、この関数は「?」を返します。それ以外の場合は、この関数はの結果を返します。

メモ 

非末尾再帰を使用するカスタム関数は、SetRecursion によって指定された最大繰り返しの影響も受けます。ただし、SetRecursion に関係なく、メモリ内で使用できるスタックの容量が少なすぎる場合、終了して「?」を返します。

例 1 

While ループが SetRecursion によって指定された 5 回の制限を超えて繰り返すため「?」を返します。

SetRecursion (
While (
[i = 0 ; out = ""] ;
i ≤ 10 ; 
[
i = i + 1 ;
out = out & $variable [i] & ¶
] ;
out
) ;
5)

例 2 

SetRecursion が繰り返しの制限を 200000 まで増やすため「100000」を返します。

SetRecursion (
While (
i = 0 ;
i < 100000 ; 
i = i + 1 ;
i
) ;
200000)

関連項目 

関数リファレンス (種類順)

関数リファレンス (名前順)

計算式について

関数について

計算フィールドの定義

計算式での演算子の使い方