カテゴリー

関数の基本

ファイルメーカーの基本 基本編

関数を制す者はFileMakerを制す?

あるデータを、○○のように加工する。今の時間を知りたいなど、さまざまな関数がFileMakerには用意されています。計算式を設定するうえでも、かなり重要です。場合によっては、計算式に、関数を一つ記述して今いるレイアウトやアカウント名などを取得するといった使い方もあります。

関数は計算式を記述するウィンドウに一覧が表示され、ダブルクリックで計算式に簡単に挿入できます。100種類以上の関数が存在しますが、よく使うのはせいぜい20~30程度でしょう。覚えておくと楽にはなりますが、「こういうことができる関数があったな」程度でいいでしょう。

各関数の詳細は上部メニューの関数リファレンスを参照してください。

2つのタイプ

関数には2つのタイプがあり、一つが、引数を必要とするもの。もう一つは必要としないものです。引数が必要なものは、正しく引数を設定しないと思ったように作動しません。必要のないものは、それをリストからダブルクリックで値を返します。

引数って?

Right ( テキスト;文字数)

上記はある関数の例ですが、()内の「テキスト」「文字数」と書かれたものが、引数です。リストからダブルクリックしたままの状態では機能しません。引数に正しく値を入れる必要があります。例えば、テキストそのものだったり、フィールド名だったり、変数だったりします。

Right ( “あいうえお”;3 )

これは実際に引数を指定した例です。この関数は引数で渡されたテキストから、引数で指定された文字数分を右側から取得するというものです。返る値は「うえお」となります。

Right ( 名前::住所録;3)

また、このように、引数にフィールド名を指定すると、今いるレコードの値を参照して計算が行われます。例えばこのフィールドに「たなかさん」という値があったとするとこの関数では「かさん」が返ります。

引数の必要のない関数

自分自身(フィールド)の値を参照するための「self」や取得関数などは引数を必要としません。厳密には取得関数の()の中身は引数ですが、特別入力が必要というわけでもないので、そのように区分けしています。

Get(日付)

上記は日付を返す取得関数でこれを実行するPCの時計に基づく日付を返します。

FileMakerの定義はかなり寛容

計算式や関数を記述する場合、メンテナンス性を高めるためにスペースを入れたりしますが、関数名の記述がすべて大文字アルファベットでも、小文字でも、混在していても動きます。またスペースや改行は無視され、実行には影響がありませんが、他のソフト等では禁止される全角スペースでも実行できたりします。ですが、メンテナンス性や将来的に厳格化される可能性もないとは言えないので、日本語以外は半角で記述しましょう。またアルファベットの関数名などは半角で記述する必要があります。