コンパイラーウインドウを表示するには、デザインメニューのシンタックスチェック...コマンドを選択するか、またはデザインモードのツールバーにあるコンパイラーボタンをクリックします:
![](../../picture/513005/pict513005.en.png)
注: データベースにメソッドが1 つも存在しない場合、これらのコマンドは選択不可になります。
このウインドウを使用して、データベースのコンパイルの開始や、メソッドのシンタックスチェックを行います。さらに各ボタンを使用して、データベースの変数定義メソッドの生成や再生成、コンパイル済コードの消去、警告の表示や非表示、環境設定への直接アクセスなどの操作を行うことができます。
![](../../picture/512984/pict512984.en.png)
注: データベースのコンパイルには、適切なライセンスが必要です。ライセンスがない場合、コンパイルを実行することができません (コンパイル開始コマンドとコンパイラーボタンは無効になります)。その場合でも、シンタックスチェックと変数定義メソッドの生成は行うことができます。
コンパイラーボタンは、データベースのコンパイル処理を直ちに開始します。このボタンの動作はデザインメニューのコンパイル開始コマンドとまったく同じです。データベースが既にコンパイルされている場合、新たにコンパイルされたコードで以前のコードが置き換えられます。
まず初めにデータベース設定のコンパイラーページ上の設定に基づき、チェックや変数定義、初期設定などの各種パスが実行されます。
エラーが検出されなければ、実際のコンパイルが開始します。エラーが検出されると、処理が中止され、問題となるメソッド名と行番号がウインドウの情報エリアに階層リスト形式で表示されます:
関係するメソッドを直接4D のメソッドエディター上で開くには、検出された各エラーをダブルクリックします。エラーを含む行が反転表示され、エラーのタイプがウインドウのシンタックスエリアに表示されます。エディターのメソッドメニューから前のエラー / 次のエラーコマンドを選択すると、エラーが含まれる各行を移動することができます。
![](../../picture/513036/pict513036.en.png)
注: 初めてのコンパイルで検出されるエラーの数に辟易するかもしれませんが、気にすることはありません。ほどなく、これらのエラーが同じ原因によるものであることに気づくでしょう。例えば特定のデータベース規約に対する違反などです。常にコンパイラーでは、エラーの訂正に役立つように、正確なエラー診断が提供されます。
シンタックスチェックボタンは、シンタックスチェックフェーズの実行を開始します。チェックが終了すると、検出されたエラーがすべて情報エリアに表示されます。エラー行をダブルクリックすると、対応するメソッドを表示することができます。
アプリケーションをコンパイルするための適切なライセンスを持たない場合は、このオプションしか使用できません。
ツールバーのコンパイラーボタンに割り当てられたシンタックスチェックコマンドから実行することもできます。
変数定義を生成ボタンは、変数定義である“コンパイラーメソッド”を作成(または更新)します。コンパイラーメソッドはプロジェクトメソッドであり、すべての変数定義宣言や、プロセス配列とインタープロセス配列、およびメソッドの引数定義が集められています。 コンパイラーは、これらのメソッドが存在すると、コードのコンパイル中に直接そのメソッドを利用するため、コンパイル速度が向上します。これらのメソッドが既に存在している場合、その内容が更新されます。
これらのメソッドは、4D により生成され、その名前は必ず“Compiler_”で始まります。環境設定では、5 つのコンパイラーメソッドそれぞれに対してデフォルト名を設定することができます (コンパイラーメソッド...参照)。4D により生成、管理されるコンパイラーメソッドは自動的に“非表示”属性が割り当てられます:
![](../../picture/513175/pict513175.fr.png)
必要となるコンパイラーメソッド(つまり、データベース内に既存する項目のコンパイラーメソッド)だけが作成されます。
情報エリアには、メソッドの作成や更新時に検出されたエラーが示されます。エラー行をダブルクリックすると、対応するメソッドと行がメソッドエディター上に表示されます。
変数定義メソッドについては4Dランゲージリファレンスの コンパイラを参照してください。
コンパイル済みコードをクリアボタンを使用すると、ストラクチャファイルのコンパイル済みコードが削除されます。ボタンをクリックすると、コンパイル時に生成されたコードがすべて削除されます。圧縮を行うと、それに応じてストラクチャファイルのサイズが小さくなります (GET STYLE SHEET INFO参照)。
実行メニューのコンパイル済み再起動コマンドが無効になり、データベースを開くダイアログボックスと開くボタンに割り当てられたメニュー内のコンパイルモードで開くオプションはグレー表示されます。
このコマンドを使用しても、生成されたコンパイラーメソッドは削除されない点に注意してください。
警告は、コンパイラーがシンタックスチェックを行う際に生成する特定のメッセージです。これらのメッセージの目的は、実行時エラーを引き起こす可能性のあるステートメントに注意を向けることです。警告によりコンパイルが中断されることはありません。警告に関する詳細は警告を参照してください。
状況や使用されるプログラミングスタイルによって、これらのメッセージの重要度は変化します。警告を表示オプションを使用すると、コンパイラーウインドウの情報エリアの警告を表示したり、または隠すことができます。
![](../../picture/513199/pict513199.fr.png)
このオプションを選択すると、ウインドウには他のエラータイプの後に警告(存在する場合)が表示されます:
![](../../picture/513201/pict513201.en.png)
警告をダブルクリックすると、対応するメソッドが開かれます。
コンパイル時に特定の警告を選択的に無効にすることができます。これを行うには、4Dメソッドのコード内に次のコードを挿入します:
警告番号は、コンパイルエラー一覧の各メッセージの最後に示されています。例えば、次の警告を無効にしたいものとします:
1: 配列定義コマンド内にポインタが存在します (518.5)
この場合、4D メソッド(できればCOMPILER_xxx メソッド)に次のコメントを記述します:
ボタンを使用してデータベース設定のコンパイラーページページを開くことができます。このダイアログボックスで設定した内容は、開いているデータベースにのみ適用されます。