filemaker-conditional-formatting-globals-set-1

条件付き書式でグローバル変数を設定してみる

こんにちは。solb system の Teruhiro Kömaki です。

ご無沙汰しております。
中規模の開発が少し落ち着きまして、安心しております。

また、直近で作成するソリューションは、英語がメインになる予定なので、ローカライズ部分の実装が楽しみです。

色々な案件の話はあれど、まだまだ未熟だと思っているので、日々勉強ってことで、
FBAの著名な方の書かれた開発本を改めて読み返したり、DevConの動画を見たり、情報収集は怠らずにしています。

開発者である以上、誰に見られても堂々と ( ̄∇ ̄)v ドヤッ! とできるようなソリューションを作成する力が必要だと思います。

さらに、今月はカンファレンスも間近に迫っているので、楽しみですよね!
私は下記のトラックを特に楽しみにしています。内容よりもスピーカーの方を重視して選びました。楽しみにしています!

  • JavaScriptで FileMaker Go の機能拡張をしよう
  • FileMakerソリューションのアジャイル開発の実践事例
  • トラブルがあってもノーダメージ。データベースの安定稼働ベストプラクティス

話は変わりますが、ソリューションにおける初期値や各種フラグをグローバル値で管理しているケースは多いと思うのですが、
そのグローバル値を条件付き書式で設定してみようってことです。

ということで、今回は条件付き書式でグローバル変数を設定してみるということで、ちょろっと書いてみます。

ここを見ればよいのですけども

Overview – Coding Standards – FileMaker Coding Standardsこのサイトにほぼ詰まってるんですけども。。。

FileMaker Magazineさんのリンクにて、詳しい解説動画と合わせてサンプルファイルもありますので、是非ともご覧ください。
Clean Reading Code – ISO FileMaker Magazine

環境

OS OS X Yosemite v10.10.5
FileMaker FileMaker Pro Advanced v12.0.5

サンプルファイルをダウンロードします

サンプルファイルをリンクからダウンロードします。
ダウンロードページを開く

テキストにLet関数でグローバル変数を記述する

アイキャッチにもあるとおりですが、テキストにLet関数でグローバル変数を記述します。
さらに、条件付き書式に Evaluate を記述します。
filemaker-conditional-formatting-globals-set-1

テキスト内の記述

Let ( [ 
// --------------
$$WindowName = "solb system Sample20151115";
$$Height = 700;
$$Width = 1000;
$$Version = "0.0";
// --------------
$~=""];
False)

条件付き書式の記述

EvaluationError ( Evaluate ( Self ) )

ブラウズモードにしてみる

ブラウズモードにしてみると、Trueで文字色を白にしているで、なにもないように見えます。
ただ、このレイアウトを表示するだけで、グローバル変数が設定されているのがデータビューアを見るとわかると思います。
filemaker-conditional-formatting-globals-set-2

確認してみる

いちお、別のレイアウトで確認してみる。当たり前ですが変数が設定されてます。
filemaker-conditional-formatting-globals-set-3

シンプル

すごくシンプルですね!
できることなら、フィールドやテーブル、リレーションは少なくしたいので、こういうアイデアは非常にありがたいです。
メンテナンスも簡単だし!

おまけ

テキストに名前(text.language)をつけて GetLayoutObjectAttribute で Evaluate して設定することで、スクリプトで柔軟に対応することもできます。

Set Variable [ $uiVariables ; Value: GetLayoutObjectAttribute ( "text.language" ; "content" ) ] 
If [ not IsValidExpression ( Evaluate ( $uiVariables ) ) or IsEmpty ( $uiVariables ) ] 
	#  Perform your error handling here.
	Show Custom Dialog [ "Error" ; "Did not evaluate $$UI.VARIABLES" ] 
End If

関連リンク

【関連】ISO FileMaker Magazine

【関連】Clean Reading Code – ISO FileMaker Magazine

【関連】Overview – Coding Standards – FileMaker Coding Standards

おわり

もし、FBAの有名な企業に勤めていれば、上司や周りのレジェンドの方々から色々なノウハウを教えてもらえることはあると思いますが、
インハウス開発者の方や、ノウハウの少ない企業にお勤めの場合は、なかなかノウハウを得る機会がないと思うので、
積極的に海外のブログや本などから情報収集をしてみると良いと思います!
ISO FileMaker Magazineさんのサブスクライブは $137/年間(2015/11/15時点) なので、良ければ検討してみるのも良いと思います。

FileMakerを勉強したい人へ

FileMakerをしっかりと勉強するのであれば、オフィシャルの学習用テキストが一番確実です。

体系立てて習得できるので、断片的に勉強するよりも理解もしやすいはずです。

ということで FileMaker Training Series をやるべし!

FileMaker Training Series には基礎編応用編の2種類があります。

さらに FileMaker Training Series に近いのですが、もうひとつ別で FileMaker Drill Book というテキストがあります。

まずは、オフィシャルの学習用テキストを購入して、コツコツ勉強することが一番の近道だと思います。

少しでもお役に立てたことがあれば シェアしていただけると嬉しいです

via PressSync

FileMakerの開発を主なる仕事にしてます。 FileMakerのBasicなことやAdvancedなことをメインに記事を書いてますが、FileMakerに関係ないこともバシバシ書いていきます。 現在は Java 勉強中ですので、勉強会などにも参加していきます。 コメント頂けると嬉しいです!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください