第46話 スクリプトによる自動化

エヌ・ケイ・カスタマイズの泉です。
私は、福岡で在宅ワーカーとして働いていて、一日中、家の中にいるので、なかなか気温の変化が感じられないのですが、このブログを読んでくださっている方々は、コロナ禍の2年目の年度始めをどのようにお過ごしでしょうか。

以下の記事は、Claris FileMaker Master Book 初級編(バージョン 19 対応)より、
「11.1 カスタムApp の機能(237ページ)」を元に掲載しています。

この文献から、Claris FileMaker における「スクリプト」について学びました。文献の執筆者、関係者の方々に深謝いたします。

なお、このブログ記事の趣旨は、弊社所属スタッフの Claris FileMaker 学習の成果を公開することを目的とし、同時に、参考文献の内容の紹介に資するものであることを Claris International Inc. が確認しています。

Claris FileMaker 公式トレーニング教材

さて、今日は私の好きな分野「スクリプト」について、説明していこうと思います。
私は、前職はバリバリ、、、ではないんですが、主にVBA、PHP、JavaScriptといったプログラミング開発を行っていました。
なので、Claris FileMakerのプログラミング要素でもある「スクリプト」は、開発していて楽しいです♪

カスタムAppの機能

これまで、構造やレイアウトなど、データの仕組みや見え方について解説してきました。さらに、1 つ重要なことがあります。それは「機能」です。カスタムApp で『なにをするか』です。

Claris FileMaker Pro Advanced には、アプリケーションとして元々持っている「標準の機能(コマンド)」があります。これまでに操作してきた「新規レコード作成」「エクスポート」「検索実行」などがそれです。

カスタムApp には、その役割を果たすために「独自の機能」が必要なことがあります。例えば、『ボタンをクリックすると、ある決まった検索条件で実行する』の、ようなことです。独自の機能といっても難しい物ではありません。標準の機能を順序立てておこなうことで成り立つ内容であることがほとんどです。

その順序を、ユーザが毎回手作業でおこなうのではなく一部あるいはすべての順序を自動的におこなえるようにすること。それが「自動化」です。自動化のために作成されるのが「スクリプト」です。

なぜ自動化するのでしょうか。
それはユーザの作業をサポートするためです。
これまで、データの入力補助のためにフィールドオプションを設定しましたが、同じように作業補助のためのスクリプトを「実行」できるようにします。
スクリプトは、特別なプログラミング言語を習得していなくてもすぐに作成できるものです。
スクリプトの実行の大きな流れは、命令、処理、結果です。
・ 命令する
・ 処理する
・ 結果がでる
ということです。
つまり次図のような流れです。レイアウトを切り替えるという命令の例です。

どうでしょうか?「レイアウト切り替えるなんて大したことない」と思いませんでしたか?
ですが、実際に人間が操作している内容を書き出してみると、図のオレンジの吹き出しのように、意外と色々やってます。
これを、簡単かつ自動化してくれるのが「スクリプト」なわけです!!

スクリプトとスクリプトステップ

スクリプト

そもそも「スクリプト」とは、どのようなものでしょうか。
標準の機能(ここから「コマンド」と記述します)を必要な順番で組み合わせて保存したものが「スクリプト」です。

スクリプトは『あるタイミング』でClaris FileMaker Pro Advanced が実行します。
単純なものから複雑なものまで多種多様に作成できます。次のような特徴があります。
・ 用意されているコマンドを選択して順番に組み合わせるので簡単に作成できる
・ コマンドが日本語名なので内容が直感的に理解できる
・ コマンドに必要な条件が選択時にオプション設定できるのでわかりやすい
なお、スクリプト実行のタイミングは、任意のタイミング(ボタンクリック)や『ユーザが入力を開始したとき』などの細かいイベント(出来事)に連動させることが可能です。

スクリプトステップ

スクリプトを作成するため、あらかじめ用意されているコマンドが「スクリプトステップ」です。

[レイアウト切り替え]や[印刷]などは、単純な最小単位のコマンドです。
各種メニューから実行できる項目を基に作成されています。
スクリプトステップの名前はメニューに表示されるものとほぼ同じです。
スクリプトステップを選択する時、どのような動作なのかイメージしやすいはずです。
また、必要なオプションが用意されています。あらかじめ選択肢が決まっているものや、カスタマイズできるものがあります。
さらに、スクリプトステップにはメニューには無い、作業の自動化のために大切な以下のような「制御コマンド」が用意されています。
・ 分岐 → 条件分岐(『ある条件』に合致した/しない場合で違う処理をおこなう)
・ 反復 → ループ(『ある条件』まで反復処理をおこなう)

まとめ

スクリプト作成は、前述の「レイアウトの切り替え」をスクリプト化したように

ユーザが意識していること/していないことを含めスクリプトステップに置き替える

ということです。
ある1 つの機能をつくるのに正解は特にありませんが、よく使われるスクリプトステップの順番というのはあり得ます。
いろいろな組み合わせを試してください。
スクリプトステップの組み合わせが可能にする機能は無限といっても良い程たくさんあります。

さいごに

私はこれまでに色々なプログラミング言語を習得してきました。
プログラミング言語は「メソッド」と呼ばれる、「スクリプトステップ」のようなものが無数にあり、その全部を覚えることはほぼ不可能です。
Claris FileMakerは「標準メニュー」≒「スクリプトステップ」なので、覚えやすいと感じました。
ですので、まずは、「スクリプトステップ」にどのようなものがあるのか、どのような名称なのかを眺めてみることをおすすめします。

次回は、スクリプトの設計について、学んでいきましょう!!


参考文献:Claris FileMaker 公式トレーニング教材 から、「FileMaker Master Book 初級編」 等を参考にしています
https://content.claris.com/fmb19_reg-ja