スクリプトのデバッグ

メモ  この機能は [設定] ダイアログボックスの [一般] タブで [高度なツールを使用する] が選択されている場合に使用できます。高度なツールの使用を参照してください。

スクリプトデバッガは、FileMaker スクリプトをトラブルシューティングするための対話式のツールです。

たとえば、[スクリプト] メニューまたはキーボードショートカットから実行するスクリプトをデバッグ、スクリプトトリガ、ボタン、またはカスタムメニューによってアクティブになっているスクリプトをデバッグ、およびスクリプトデバッガで作業中にスクリプトトリガを一時的に無効/有効にすることができます。

スクリプトをデバッグするには:

  1. 次のいずれかの方法で、[スクリプトデバッガ] を有効にします:
    • [ツール] メニュー > [スクリプトデバッガ] を選択してからスクリプトを実行します。
    • [スクリプト] メニュー > [スクリプトワークスペース...] を選択し、ご自分のスクリプトを選択して デバッグボタン をクリックします。開いているすべてのスクリプトを保存してスクリプトをデバッグするには、Shift キー (Windows) または option (macOS) を押したまま デバッグボタン をクリックします。
  2. スクリプトのデバッグには次のコントロールを使用します:
  3. 選択項目

    目的

    ステップオーバー

    ステップオーバーボタン

    サブスクリプトを表示せずに、スクリプトを一度に 1 ステップずつ実行します。

    実行するスクリプトステップが [スクリプト実行] の場合、スクリプトデバッガは、サブスクリプトを実行してから、呼び出し元のスクリプトの次の行に進みます。ブレークポイントに到達するまで、すべてのサブスクリプトのステップが実行されます。

    ステップイン

    ステップインボタン

    一度に 1 ステップを実行し、サブスクリプトのステップも表示します。

    実行するスクリプトステップが [スクリプト実行] の場合、スクリプトデバッガは、サブスクリプトの最初の行のステップを実行し、次のサブスクリプトステップに進む前にユーザの入力を待機します。

    ステップアウト

    ステップアウトボタン

    現在のスクリプト内のすべてのスクリプトステップを実行します。実行するスクリプトがサブスクリプトの場合は、呼び出し元のスクリプトの [スクリプト実行] スクリプトステップの直後の行に戻ります。

    スクリプトがサブスクリプトでない場合、[ステップアウト] コマンドを使用すると、スクリプトデバッガはブレークポイントに到達するまで、残りのすべてのスクリプトおよびサブスクリプトステップを実行します。

    次のステップを設定

    次のステップを設定ボタン

    ステップの実行ポインタを、強調表示されたスクリプトステップに設定します。

    このコマンドは、強調表示されたステップに制御を渡しますが、ステップの実行は行いません。スクリプトの実行またはステップのデバッグを再開すると、強調表示されたステップが実行されます。最後に実行されたステップと指定された次のステップの間にあるステップは実行されません。強調表示するステップをクリックし、次に 次のステップを設定ボタン をクリックします。

    実行

    実行ボタン

    一時停止

    一時停止ボタン

    スクリプトが終了するまで、またはブレークポイントが現れるまで、すべてのスクリプトステップを実行する動作と、一時停止を切り替えます。スクリプトを一時停止しているときに、[コールスタック] 一覧のスクリプトをダブルクリックすると、編集できます。アクティブなスクリプトは、[スクリプトワークスペース] のタブに別々に表示されるため、複数のスクリプトを編集できます。スクリプトの実行は、変更を保存するまで停止しません。

    スクリプトが一時停止されたときに スクリプトデバッガのステップインボタン を使用してスクリプトをステップスルーすることができます。

    全スクリプト終了

    全スクリプト終了ボタン

    スクリプトの実行を停止します。

    スクリプトトリガを有効/無効にする

    スクリプトトリガ無効を示すスクリプトトリガの有効/無効ボタン 

    ファイルのすべてのスクリプトトリガを一時的に無効または有効にします。

    スクリプトトリガを無効にるには、[完全アクセス] 権限が必要です。スクリプトトリガはデフォルトで有効です。スクリプトデバッガを閉じると、すべての無効のスクリプトトリガが有効になります。

    スクリプトの編集

    スクリプトの編集ボタン

    現在のスクリプトを [スクリプトを編集] ダイアログボックスで開きます。スクリプト実行中にスクリプトを変更することができますが、スクリプトへの変更を保存すると実行は停止します。

    データビューアを開く/閉じる

    データビューアを開く/閉じるボタン

    データビューアウインドウを開閉し、指定したフィールド、変数、計算式を監視できます。データビューアの使用を参照してください。

    スクリプトの認証/認証解除

    スクリプトまたはデータビューアの認証を行うロックボタン スクリプトまたはデータビューアの認証を解除するロック解除ボタン

    変更の権限を許可しないスクリプトに対するスクリプトデバッガまたはデータビューアのロックを解除します。

    スクリプトを認証するには、[完全アクセス] 権限が必要です。高レベルの権限はすべてのスクリプトに適用されますが、他のファイル要素 (レコードやレイアウトなど) には適用されません。編集権限は、スクリプトデバッガおよびデータビューア両方を閉じるまで持続します。

  4. エラー発生時にスクリプトを休止する場合、[エラー時に一時停止] を選択します。

サブスクリプトの表示

スクリプトデバッガでスクリプトを実行すると、サブスクリプトを表示できます。たとえば、スクリプト A がスクリプト B を呼び出し、スクリプト B がスクリプト C を呼び出す場合、3 つのスクリプトすべてでステップを表示できます。

  1. [ツール] メニュー > [スクリプトデバッガ] を選択します。
  2. サブスクリプトを呼び出すスクリプトステップを実行します。
  3. [ステップイン] をクリックします。

    [コールスタック] 一覧に、サブスクリプトが表示されます。

  4. [コールスタック] 一覧でスクリプトを選択し、表示領域にスクリプトのステップを表示します。

メモ 

  • ブレークポイントを設定またはクリアするには、スクリプトステップ左側の番号をクリックしてください。ブレークポイントによって、スクリプトデバッガはスクリプトの大きいセクションを実行でき、ブレークポイントでマークされたセクションのみを調べるために一時停止します。スクリプトデバッガを使用していない場合、FileMaker Pro では、ブレークポイントは無視されます。ブレークポイントは、複数のステップで設定できます。ボタンまたはカスタムメニューで呼び出したステップは、ブレークポイントを設定できません。
  • 適切なスクリプトのデバッグを効率的に実行するため、スクリプトデバッガでは一部のスクリプトステップは無視されます。[ユーザによる強制終了を許可] スクリプトステップでオプションが [オフ] に設定されていても、スクリプトの実行を停止することを禁止できません。また、[ウインドウの調整] スクリプトステップのオプションが [隠す] または [最小化] に設定されていても、ステップオーバーボタン または ステップインボタン ボタンを使用してそのスクリプトステップに到達したときに、ウインドウは非表示または最小表示になりません。
  • アクセス権が [変更可能] に設定されているスクリプトで [実行のみ可能] アクセスのスクリプトを実行する場合、[実行のみ可能] のスクリプトは実行されますが、スクリプトデバッガにステップは表示されません。[実行のみ可能] のスクリプトで、アクセス権が [変更可能] に設定されているスクリプトを実行する場合、スクリプトデバッガには [変更可能] のスクリプトのステップのみが表示されます。スクリプトを編集するには、スクリプトデバッガで [スクリプトデバッガ] の [認証/認証解除スクリプト] ボタン をクリックします。スクリプトのアクセス権および完全アクセスで実行されるスクリプトの詳細については、スクリプトアクセス権の編集を参照してください。

    [スクリプトデバッガ] の [認証/認証解除スクリプト] ボタン をクリックした後でデータビューアを開くと、アクセス権はスクリプトデバッガを閉じるまで、データビューアとスクリプトデバッガの両方で維持されます。

  • データベースファイルを開く前にスクリプトデバッガを開き、起動スクリプトをデバッグできます。
  • スクリプトが一時停止している間にスクリプトデバッガを閉じると、スクリプトが再開し実行を続けます。