4Dが管理するシステム変数を使用して、異なる動作の実行をコントロールできます。すべてのシステム変数はプロセス変数であり、ひとつのプロセス内でのみアクセスできます。この節では4Dのシステム変数について説明します。
これらの変数の型に関する情報は型指定ガイドのシステム変数を参照してください。
これは最も頻繁に使用されるシステム変数です。通常、処理が成功すると1が代入され、成功しなかったときに0が代入されます。多くの4Dコマンドはシステム変数OKの値を変更します。各コマンドの説明を参照し、コマンドがこのシステム変数に影響を与えるかどうかを調べてください。
このドキュメントでは、アイコン
は、そのコマンドがOK変数の値を更新することを示します。
このアイコンをクリックすると、関連するコマンドのリストを表示させることができます。
システム変数FldDelimitは、テキストを読み込んだり書き出したりする際に、フィールドの区切りとして使用する文字のコードが格納されています。デフォルトの値はタブに相当する9です。区切り文字を変更する場合は、FldDelimitの値を変更してください。
システム変数RecDelimitは、テキストを読み込んだり書き出したりする際に、レコードの区切り文字として使用する文字のコードが格納されています。デフォルトの値はキャリッジリターン(CR)に相当する13です。区切り文字を変更する場合は、RecDelimitの値を変更してください。
これらの変数はON ERR CALLコマンドでインストールされたエラー処理メソッド内でのみ使用できます。エラーの原因となったメソッド内でこれらの値を参照したい場合、自身のプロセス変数にコピーしてください。
- Error: 倍長整数型のシステム変数です。この変数はエラーコードを格納します。4Dおよびシステムのエラーコードはエラーコードテーマでリストされています。
- Error method: テキスト型のシステム変数です。この変数にはエラーの発生元となったメソッド名が格納されます。
- Error line: 倍長整数型のシステム変数です。この変数にはエラー発生元のメソッドの、エラーが発生した行番号が格納されます。
- Error formula: テキスト型のシステム変数です。この変数にはエラーの元となったフォーミュラーの4Dコード(標準テキスト)が格納されます。フォーミュラのテキストは4Dコードのカレント言語にて表現されます。
エラーを引き起こしたソースコードが見つからない場合、Error formulaには空の文字列が含まれます。これは以下の様な場合においてコンパイルされたデータベースで発生する可能性があります:
- ソースコードはアプリケーションビルダーによってコンパイルされたストラクチャーから削除された。
- ソースコードは存在しているが、データベースは範囲をチェックオプションを外してコンパイルされた。
これらのシステム変数は、ON EVENT CALL コマンドでインストールされたメソッドの中でのみ参照できます。(ただし一部の場合での MouseX と MouseY を除く。以下参照)
- システム変数MouseDownは、マウスのボタンが押されたときに1が、それ以外の場合は0に代入されます。
- イベントがMouseDownの時(MouseDown=1)、システム変数MouseXとMouseYにはマウスがクリックされた場所の水平座標と垂直座標が代入されます。両方の値ともピクセル単位で表わされ、ウインドウのローカルな座標システムを使用します。
注: ピクチャフィールドや変数がクリックされると、On ClickedやOn Double clicked、およびOn Mouse EnterとOn Mouse Move内で、MouseXとMouseYシステム変数にクリックのローカル座標が返されます。詳細はピクチャの章およびSVG Find element ID by coordinatesの節を参照してください。またピクチャー内でOn Mouse Up イベントが生成されたとき、はマウスボタンがリリースされたローカルな座標を返します。座標はピクチャーの左上端(0,0)から見た位置のピクセル単位で表現されます。より詳細な情報については、Is waiting mouse upのコマンド詳細を参照して下さい。
- システム変数KeyCodeには、押されたキーのASCIIコードが代入されます。押されたキーがファンクションキーの場合、KeyCodeには特殊コードがセットされます。文字コードとファンクションキーコードについては、Unicodeコード、EXPORT TEXT およびファンクションキーコードの節で説明します。
- システム変数Modifiersは、キーボードのモディファイアキーの値を含んでいます(Ctrl/command、Alt/option、Shift、CapsLock)。システム変数Modifiersは、ON EVENT CALLコマンドによってインストールされた“割り込み処理”においてのみ意味を持ちます。
- システム変数MouseProcは、イベントが発生したプロセス番号を含みます。