はじめに
連載6回目となる本稿は、作成したスクリプトのデバッグ作業には欠かせないFileMaker Pro Advancedの「データビューア」と「スクリプトデバッガ」について紹介します。その他、スクリプト作成のポイントについてもいくつか紹介します。
「データビューア」と「スクリプトデバッガ」を使いこなそう
開発者にとっては、いかに効率よくデバッグできるツールが揃っているかが重要なポイントとなってきます。例えば、処理内容を追うことができるデバッガは最も必要とされるツールと言えます。
FileMaker Pro Advancedには「データビューア」や「スクリプトデバッガ」などのツールが用意されているため、複雑なスクリプトで問題が発生したときに、その問題となるステップやデータの状態を確認し、確実に対応することが可能となります。
スクリプトデバッガを起動する
スクリプトをデバッグするときは事前に「スクリプトデバッガ」を起動しておきます。
スクリプトデバッガには、いくつかのボタンがあり、これらのボタン操作でスクリプトをコントロールします。
| ボタン | 処理 |
| [ステップオーバー] | 1ステップずつ実行します。実行するステップが[スクリプト実行]の場合は次のブレークポイントまでステップが実行されます。サブスクリプトにブレークポイントがあれば、そこで停止します。 |
| [ステップイン] | 1ステップずつ実行します。実行するステップが[スクリプト実行]の場合はサブスクリプトの先頭のステップで停止します。 |
| [ステップアウト] | 現在のスクリプトのステップすべてを実行します。サブスクリプトを含めて途中にブレークポイントがあれば、そこで停止します。 |
| [次のステップを設定] | 実行するステップを指定した位置に移動します。現在のステップから指定されたステップの間は実行されません。 |
| [実行/一時停止] | すべてのステップを実行します。ただし、途中にブレークポイントがあれば、そこで停止します。 |
| [全スクリプト終了] | 実行を停止します。 |
| [ブレークポイントの設定/消去] | 選択したスクリプトステップに対して、ブレークポイントの設定と解除を行います。設定されたステップにはマークが表示され、「実行/一時停止」ボタンをクリックしたときに、設定されたステップで一時停止します。 |
| [スクリプトの編集] | 現在実行しているスクリプトの[スクリプトの編集]ウインドウを開きます。スクリプトの作成時と同様に編集することができます。スクリプト実行途中で編集内容を保存した場合、スクリプトは停止します。 |
| [データビューアを開く/閉じる] | [データビューア]の開閉を行います。 |
| [スクリプトの認証/認証解除] | スクリプトのロックを解除します。FileMaker Proは高度なセキュリティ機能によりデータベースに対してさまざまなアクセス権を設定することができます。スクリプトについても編集権限のないユーザーはデバッグすることができません。 |
[データビューアを開く/閉じる]ボタンをクリックし、[データビューア]を表示してみると、サンプルで選択されたレコードの値が表示されます。
または[ツール]メニューから[データビューア]を選択し表示することもできます。
![図01 [ツール]メニューから[スクリプトデバッガ]を選択しスクリプトデバッガを表示します。](http://static.shoeisha.jp/cz/static/images/article/4063/01_s.gif)
![図02 [スクリプトデバッガ]ウインドウが表示された状態で、スクリプトを実行するとスクリプトデバッガにスクリプトが表示されます。](/static/images/article/4063/02_s.gif)
![図03 実際に[ステップオーバー]ボタンをクリックしてスクリプトステップをすすめていくと順番に実行しているステップに青い矢印マークが移動します。](/static/images/article/4063/03_s.gif)
![図04 [スクリプト実行]ステップで[ステップイン]ボタンをクリックするとサブスクリプトの先頭に青い矢印マークが移動します。](/static/images/article/4063/04_s.gif)
![図05 [スクリプトデバッガ]ダイアログの下部にある[アクティブなスクリプト]の枠内には、呼び出し元のスクリプト名とサブスクリプト名が表示されます。](/static/images/article/4063/05_s.gif)
![図06 ステップをすすめ[レイアウト切り替え]ステップを実行するとサンプルのレイアウトが実際に切り替わっていることが確認できます。](/static/images/article/4063/06_s.gif)

![図08 [データビューア]には実行中のスクリプトで[フィールド設定]ステップで指定されたフィールド名がすべて表示されます。また、ステップをすすめていく過程で各フィールドの値の変化を見ることができます。](/static/images/article/4063/08_s.gif)



