作業を自動化するためのスクリプトの作成
スクリプトを使用すると、用紙方向の設定のような単純な作業から、クライアントごとにカスタマイズしたメールの送信準備のような複雑な作業まで自動化することができます。
たとえば顧客データベース内の前の週に購入した顧客にお礼のメールを送るといった複雑な一連のタスクを定義することができます。スクリプトを使用してそれぞれの顧客に合わせた電子メールを作成できます。電子メールが完成するとスクリプトがプレビューモードに切り替わり、一時停止するので、送信前にそのメッセージのプレビューを確認できます。上記の作業はすべて「売上入力」レイアウト上のボタンをクリックして行います。
スクリプトを作成するには、FileMaker Pro コマンドの一覧 (
スクリプトステップと呼ばれる) からステップを選択して必要に応じてオプションを指定し、正しい順序にステップを並べてからタスクを実行します。
スクリプトは通常
クライアント上で実行しますが、FileMaker Server 上で一部のスクリプトを実行すると、パフォーマンスを向上させたり、スケジュールに従って自動的に実行することができます。
FileMaker Server でのスクリプトの実行を参照してください。
スクリプトの検討
スクリプトの検討を慎重に行うと、目的の作業を効果的に実行することができます。次の点を考慮して検討してください。
•作業をさらに細かく分けることができますか? 細かく分けた作業それぞれに対する
サブスクリプトを定義してから、サブスクリプトを実行するスクリプトを定義することもできます。スクリプトのデザインとテストは、1 つの複雑なスクリプトに対して行うよりも、いくつかの小さなスクリプトに対して行う方が簡単です。また、サブスクリプトは他のエリアで再使用することもできます。(サブスクリプトを別のスクリプト内で実行する場合は、
スクリプト実行 スクリプトステップを使用します。)
•どの
スクリプトステップをどの条件で実行しますか? 常にすべてのスクリプトステップを実行する必要がありますか? ある条件が満たされるまで何度も実行する必要のあるスクリプトがありますか? スクリプトは他のスクリプトやサブスクリプトを呼び出しますか? スクリプトの進行は様々な方法で制御できます。条件分岐スクリプトステップを使用したスクリプトの作成の詳細については、
制御に関連するスクリプトステップを参照してください。
•スクリプトを特定の
レイアウトで実行しますか? スクリプトはファイルレベルで定義され、どのレイアウトでも使用することができるため、意図したレイアウトで実行されることを確認する必要があります。レイアウトの変更には、
レイアウト切り替え スクリプトステップを使用します。
•スクリプトは、データベース、現在の対象レコード、または特定のレコードセット内のすべてのレコードで機能する必要がありますか? (作業に必要なレコードだけを対象レコードに含める場合は、
対象レコードに関連するスクリプトステップを使用します。)
•必要なデータがすべて 1 つの
データベースファイルに含まれていますか? それとも、スクリプトで複数のファイルを処理しますか? 複数のファイルを使用する場合、スクリプトで開く必要のあるファイルはどれですか? スクリプトはどのファイルで定義すべきですか? 通常、スクリプトは処理するデータと同じファイルで定義します。複数のファイルを使用したデータベースソリューションの場合、実行するタスクの複雑さによっては、各ファイルに別個のスクリプトが必要になることがあります。
•どのウインドウを使用しますか? スクリプトは最初に特定のウインドウに付けられます。このウインドウは背景にある場合があります。スクリプトは、その中に記述された動作によって他のウインドウに切り替わるまで、そのウインドウに付けられたままとなります。たとえば、異なるウインドウを指定するには、
ウインドウを選択 スクリプトステップを使用します。指定したウインドウが使用できない場合、スクリプトはファイルの一番手前のウインドウに切り替わります。スクリプトを一時停止すると、関連ウインドウは一番手前になります (使用可能な場合)。
ウインドウに関連するスクリプトステップを参照してください。
メモ レイアウトモードでスクリプトを実行すると、自動的にブラウズモードに切り替わります。
•実行中のスクリプトをユーザが停止できる必要がありますか? スクリプトの終了が早すぎると未完了のデータや間違ったデータが生成されるプロセスがスクリプトに含まれていますか?
ユーザによる強制終了を許可 スクリプトステップを使用して、ユーザがスクリプトを停止できるかどうかを制御します。
•スクリプトのテストはどのように実行しますか? あらかじめ定義された位置でスクリプトを一時停止する場合は、
スクリプト一時停止/続行 スクリプトステップを使用します。元のデータを保持するには、データベースのコピーを保存してから、コピーしたデータベース内でスクリプトの管理とテストを行います。
メモ FileMaker Pro Advanced を使用している場合、スクリプトデバッガを使用してスクリプトのテストとトラブルシューティングを行うことができます。
•すべてのユーザにすべてのスクリプトの実行を許可しますか? スクリプトに対するユーザのアクセスを制御するには、
アクセス権セットを使用します。アクセス権セットを使用することで、ユーザがスクリプトを実行または変更する権限を、個々のスクリプトに対して許可するか、すべてのスクリプトに対して許可するか、それともどのスクリプトにも許可しないかを設定することができます。また、今後ファイルに定義する新しいスクリプトの各アクセス権セットに対して、デフォルトのアクセス権を設定することもできます。完全アクセス権で実行するスクリプトを設定すると、割り当てられているアクセス権では通常は実行できない操作を、ユーザに代わってスクリプトで処理することが可能です。
アクセス権セットの作成と編集を参照してください。
•ユーザはこのスクリプトをどのように実行しますか? スクリプトを実行するには、
ボタンを作成するか、[スクリプト] メニューへのスクリプトの追加を指定します。スクリプトは、[スクリプトワークスペース] から実行でき、
スクリプトトリガがアクティブになったときにも実行できます。たとえば、
OnFirstWindowOpen スクリプトトリガを使用してデータベースが開いたときにスクリプトを実行できます。
これらの点を考慮して、データベースにスクリプトを定義します。
スクリプトの作成と編集を参照してください。
関連項目