EDIT FORMULA
EDIT FORMULA ( aTable ; formula )
引数 | 型 | 説明 | |
---|---|---|---|
aTable | Table | → | フォーミュラエディタにデフォルトで表示するテーブル |
formula | Text | → | フォーミュラエディタに表示するフォーミュラを含む変 またはエディタの実を表示するには "" |
← | ユーザが確定したフォーミュラ |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
EDIT FORMULAコマンドを使用してフォーミュラーエディターを開き、ユーザーはフォーミュラーを作成したり変更したりできます。次の項目をデフォルトとして表示することができます。
- 左側のリストには引数 aTable に渡したテーブルのフィールド。
- フォーミュラーエリアには、formula 変数に格納されたフォーミュラー。formulaに空の文字列を渡した場合、デフォルトのフォーミュラーは表示されず、フォーミュラーエディターのみが表示されます。
ユーザーは表示されたformulaを変更して保存できます。また新規にフォーミュラーを記述したりロードしたりすることもできます。ユーザーがダイアログを受け入れると、システム変数OKに1が設定され、formula 変数にはユーザーが決定したフォーミュラーが格納されます。ユーザーがフォーミュラーをキャンセルすると、システム変数OKに0が設定され、formula 変数は変更されません。
Note:
- デフォルトで、すべてのユーザーに対してメソッドとコマンドの使用は制限されます。(4D2004.4以降のバージョンにて作成されたデータベースで、DesignerとAdministratorを除く)。このメカニズムが有効であるとき、開発者はSET ALLOWED METHODSコマンドを使用して、ユーザが利用可能な要素を明示的に指定する必要があります。もしformulaが、SET ALLOWED METHODS コマンドを使用してフォーミュラエディターで許可されていないメソッドを呼び出すと、シンタックスエラーが生成され、ダイアログボックスを受け入れることはできません。
- デフォルトでは、フォーミュラーエディターはメニューバーと関連付いていません。フォーミュラーエディター内でカット・コピー・ペースト等のショートカットを使うには、呼び出しプロセスにおいて標準の編集メニューを設定しておく必要があります。
- SET TABLE TITLES およびSET FIELD TITLES コマンドによって定義されたバーチャルストラクチャーは(あった場合)、formula 変数内で使用してはいけません。また返される値においても4D はバーチャルストラクチャーを使用しません。バーチャルストラクチャーはフォーミュラエディターのダイアログボックス内においてのみ使用されます。
ダイアログボックスが確定したとしても、formulaが実行されないことを心に留めてください。フォーミュラの検証と変数の中身が更新されるだけです。formulaを実行する必要がある場合は、EXECUTE FORMULA コマンドを使用しなければなりません。
例題
事前に入力されたフォーミュラは使用せず、[Employees]テーブルを使用してフォーミュラエディタを表示します:
$myFormula:=""
EDIT FORMULA([Employees];$myFormula)
If(OK=1)
APPLY TO SELECTION([Employees];EXECUTE FORMULA($myFormula))
End if
システム変数およびセット
ユーザがダイアログボックスを受け入れるとシステム変数OKに1が、キャンセルすると0が設定されます。