FileMaker

お役立ちブログ

変数設定について

今回はスクリプトを書くときに必ずと言っていいほどお世話になる、変数設定についてです。

変数を設定

ローカル変数またはグローバル変数を指定値に設定します。

 

オプション

  • [名前] は作成する変数の名前です。ローカル変数の場合は「$」、グローバル変数の場合は「$$」の接頭語を名前に使用します。接頭語を追加しない場合は「$」が自動的に名前の先頭に追加されます。
  • [] は変数の設定後の値です。テキストを入力するか計算式を指定することができます。
  • [繰り返し] は作成する変数の繰り返し数 (索引) です。繰り返しが指定されていない場合デフォルトは 1 です。

例 1

ローカル変数を使用して情報を照合フィールドにコピーすることによって関連レコードを作成します。

変数を設定 [$現在の_顧客_ID; 値:顧客::顧客 ID]
レイアウト切り替え [「請求書詳細」]
新規レコード/検索条件
フィールド設定 [請求書::顧客 ID; $現在の_顧客_ID]

この例1では、レイアウトを顧客画面から請求書画面に切り替えると顧客テーブルのフィールドから値を取ってくることができなくなるので、変数にしてIDを保持してからレイアウト切り替えを行なっています。

変数は、規則やルールを決めて正しく使えば、スクリプトの簡易化や利便化に非常に有効的です。

例えば、例1においては顧客IDを”$現在の_顧客_ID”とすることによって、この変数が何のIDなのか?という認識がしやすく、デバックしながら このIDは何だっけ?と なることもなくなります。

同じスクリプトを実行している間は変数設定はそのまま継続されるので、スクリプト内で同じ変数を複数回使用することもできます。

また、上記のように必ず必要となる場合の変数もあれば、メンテナンス性を高めるために活用することもできます。

例えば、例1の続きにこんな式があったとします。

変数を設定 [$現在の_顧客_ID; 値:顧客::顧客 ID]

レイアウト切り替え [「請求書詳細」]
新規レコード/検索条件
フィールド設定 [請求書::顧客 ID; $現在の_顧客_ID]

レイアウト切り替え [「販売詳細」]
新規レコード/検索条件
フィールド設定 [販売::顧客 ID; $現在の_顧客_ID]

レイアウト切り替え [「売上詳細」]
新規レコード/検索条件
フィールド設定 [売上::顧客 ID; $現在の_顧客_ID]

これをもし、顧客::顧客 IDではなく顧客::顧客新ID にしたい、となったとき、
フィールド設定の箇所を全て変更する必要がありますが、
変数を設定しているので一番上の変数設定を変えるだけで済みます。

変数を日本語でも設定できてしまうところがまたFileMakerの便利なところですね☺️

統一性やかっこよさの観点から、英語で変数を作る場合もありますが、わからない英単語を使って無理やり揃えても、どの変数が何だったか、後から混乱する可能性もあります…(スペルミスに気づかずエラー箇所を探し続けた実体験あり)

日本語でも英語でも、ミスを起こさないようにわかりやすい変数を心がけることが大切かと思います!

FileMaker開発記事

顔パス受付システム

AIサーマルカメラとFileMakerとの連動による新型受付システムです。
顔認証で体温測定と受付を同時に完了、会員登録の手間も不要に。学習塾などでは入退出時に親へメール自動送付サービスもつけられます。

受発注システム [EC-CUBE連携]

受発注業務をEC-CUBEと連携する事により、顧客情報と受注情報それぞれの入力を自動化。その後の各種事務手続(伝票作成・郵送業務・売上レポート作成等)すべても同時に効率化するツールです。

修理受付システム

修理受付から請求までの業務を一元管理。Web予約連動、クレジット請求連動などの業務を効率化します。ほか顧客履歴、部品在庫管理、発注リストなどあらゆる関連業務に対応しています。

CRM 顧客管理システム

顧客の現状を俯瞰し、商談状況を一望、そして営業成績を向上させる……企業が顧客との関係をより深く把握し、戦略的に顧客へアプローチすることが可能になるシステムです。

その他の記事

GetFieldについて

今回は、フィールド名を評価して、指定したフィールドの内容を返してくれる、GetFieldについてです。

Positionについて

今回は、特定のテキストの場所を指定し値を取り出たい時に活用できる、Position関数のご紹介です。