スクリプトを作成したらボタンを作成して動作を制御するのも良いのですが、「スクリプトトリガ」を利用するとより高度な機能を追加することができます。
この記事では、「スクリプトトリガ」の簡単な使用例を解説します。
目次
OnFirstWindowOpen
その名の通り、ファイルの最初のウインドウが開いた後に設定したスクリプトが実行されます。
どのような活用法があるのでしょう?
- データベースファイルを起動した日付と時刻を履歴を残す
- アカウントによって表示させるレイアウトを指定する
などが最も簡単な活用法でしょうか。
今回は、「データベースファイルを起動した日付と時刻を履歴を残す」機能を、OnFirstWindowOpenスクリプトトリガを利用して作成していきます。
起動履歴を残すためのテーブルを作成
まず、「ファイル」→「管理」→「データベース」をクリックします。
「テーブル」を選択して、テーブル名に「起動履歴」と入力して「作成」をクリックします。
「起動履歴」というテーブルが作成されました。フィールドをクリックして、「起動履歴」のテーブル上にフィールドを作成します。
作成するフィールドは、
- アカウント名 タイプ テキスト
- 「動作」 タイプ テキスト
- 「日付」 タイプ 日付
- 「時刻」 タイプ 時刻
この4つを作成します。
次に、「日付」フィールドの箇所を選択して、「オプション」をクリックします。
「入力値の自動化」を選択して「作成情報」にチェックを入れて「日付」になっていることを確認したら「OK」をクリックします。
次に、「時刻」のフィールドでも同様の設定をします。
オプションが設定されていることを確認して「OK」をクリックします。
「起動履歴」というテーブルを作成したのと同時に、「起動履歴」というレイアウトも作成されます。レイアウトを調整しますので、「起動履歴」のレイアウトに切り替えましょう。
レイアウトの調整
デフォルトでは、このようなレイアウトになっています。
では、レイアウトを調整していきます。まず、「レイアウトの編集」をクリックしてレイアウトモードに切り替えます。
「レイアウト」→「レイアウトの設定」を選択します。
「表示」タブの「リスト形式」だけにチェックをつけます。「OK」をクリックします。
ラベルをヘッダ上に移動し、各フィールドを横並べにします。また、フィールドの大きさも整えます。
↓
ヘッダに移動したラベルが、背景色と同化して見づらいので、ラベルのテキスト色を白に変更します。ドラッグしてラベルを全て選択します。
「表示」→「書式設定バー」をクリックして、「書式設定バー」を表示させます。
テキスト色を適当な色に変えます。今回はラベルを「白」にしました。
ラベルの色が白になり、だいぶ見やすくなりました。
「ボディ」の幅をフィールドにあわせて縮小します。ボディとフッタの境界ドラッグしてフィールドの幅に合わせます。
↓
スクリプトの作成
起動時に動かすスクリプトを作成します。
このスクリプトがファイルを開いたときに、自動的に「起動履歴」テーブルに新規レコードを作成してその時の日時を記録するようにします。
「スクリプト」から「スクリプトワークスペース」をクリックします。
「+」をクリックします。
スクリプト名を「起動時スクリプト」とします。
論理を組み立てていきます。
「切り替え/移動」→「レイアウトの切り替え」をダブルクリックします。
「元のレイアウト」の部分をクリックして「レイアウト」を選択します。
「起動履歴」のレイアウトを選択します。この動作は、まずファイルを開いたときに「起動履歴」レイアウトにしますよってことです。
次に「レコード」から「新規レコード/検索条件」をダブルクリックします。
次にアカウント名を入れるために「フィールド」のなかから「計算結果を挿入」をダブルクリックします。
ターゲットの「指定」を選択します。
「アカウント名」フィールドを選択します。
計算結果の「指定」を選択します。
Get ( アカウント名 ) と入れます。これは、関数というものになります。
まずは難しく考えず、赤文字の部分をコピーペーストして入力してください。最後に「OK」をクリックします。
次に「フィールド」のなかから「テキストを挿入」をダブルクリックします。
ターゲットの指定で、「動作」フィールドを指定します。
テキストの「指定」を選択します。「ログイン」と入力して「OK」を押します。
次に「切り替え/移動」→「レイアウトの切り替え」をダブルクリックします。
「元のレイアウト」の部分を選択して「レイアウト…」をクリックします。
「リスト」レイアウトを選択して「OK」を押します。
ここまできたら、一度「スクリプトワークスペース」のウインドウを閉じて「すべてを保存」をクリックします。
OnFirstWindowOpenのスクリプトトリガを設定
「ファイル」→「ファイルオプション」を選択します。
「スクリプトトリガ」タブから「OnFirstWindowOpen」にチェックを入れます。
先ほど作成した「起動時スクリプト」を選択して「OK」を押します。
最後に「OK」を押します。
動作の確認
これで作業は終了です。一度FileMakerを閉じて、再度起動しましょう。
再びファイルを開きます。
リストが表示されるはずです。
レイアウトを切り替えて、「起動履歴」にしてみましょう。
今起動したときの日付と時刻が記録されています。
スクリプトはファイルを開いたときに正常に動作しています。これがスクリプトトリガ活用法の一例です。
お疲れ様でした。