Claris FileMaker

商用フリーのWindowsとMacで使えるプラグイン

Windowsなら今まで自作プラグインを作成していたのですが、今回Macユーザーから依頼があり探すことに。

ある程度の機能があって、両OSで使えるプラグインとして「BaseElementsPlugin」を見つけました。

BaseElementsPluginの公式サイトはこちら

ライセンス情報を見ると、オープンソースで配布されていて商用も可能。

ソースの改変もできるようです。

BaseElementsPluginのGitHubプロジェクトはこちら

プラグインをインストールする処理を作成

ZIPファイルをダウンロードしてインストールする方法もありますが、今回はダウンロードページに記載されているURLを利用してインストールする処理を作成します。

BaseElementsPluginプラグインのダウンロードページはこちら

URLは、ダウンロードページ内中央あたりに記載があります。

Mac:   https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmplugin.gz
Win64: https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmx64.gz
Linux: https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmx.gz

OSを判別する

Get (システムプラットフォーム)を使うことで、WindowsかMac、Linuxの判別が行えます。

Linuxを考慮しないでWindowsとMacのみ動作すると考えた場合は、以下のような条件となります。

If[ Get (システムプラットフォーム) = -2]
    # Windows OS
Else
    # Mac OS
End If

オブジェクトフィールドにプラグインを挿入する

データベースにフィールドを作成して、タイプをオブジェクトに設定し、データの格納をグローバル格納とします。

追加したフィールド「Plugin」に、インストールするプラグインを挿入するスクリプトを追記します。

If[ Get (システムプラットフォーム) = -2]
    # Windows OS
    URL から挿入 [選択;ダイアログあり:オフ ターゲット:Plugin::Plugin; "https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmx64.gz"]
Else
    # Mac OS
    URL から挿入 [選択;ダイアログあり:オフ ターゲット:Plugin::Plugin; "https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmplugin.gz"]
End If

オブジェクトフィールドに挿入したプラグインをインストールする

プラグインをダウンロードし挿入したフィールドを指定して、プラグインのインストールを行います。

If[ Get (システムプラットフォーム) = -2]
    # Windows OS
    URL から挿入 [選択;ダイアログあり:オフ ターゲット:Plugin::Plugin; "https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmx64.gz"]
Else
    # Mac OS
    URL から挿入 [選択;ダイアログあり:オフ ターゲット:Plugin::Plugin; "https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmplugin.gz"]
End If
プラグインファイルのインストール[Plugin::Plugin]

すでにプラグインがインストールされている場合の処理を追加

誤って何度もインストールすると無駄ですので、インストールされているか確認する条件を追加します。

またダウンロードしたプラグインがオブジェクトフィールドに挿入されたままでは、ファイル容量が大きくなってしまいます。

ついでに、プラグインがすでにインストール済の場合は、対象フィールドをクリアする処理も追加します。

If[ Position (Get(インストールされた FM プラグイン); "BaseElements"; 1;1)>0]
    フィールド設定[Plugin::Plugin; ""]
    現在のスクリプト終了[テキスト結果:]
End If

If[ Get (システムプラットフォーム) = -2]
    # Windows OS
    URL から挿入 [選択;ダイアログあり:オフ ターゲット:Plugin::Plugin; "https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmx64.gz"]
Else
    # Mac OS
    URL から挿入 [選択;ダイアログあり:オフ ターゲット:Plugin::Plugin; "https://goya.com.au/files/beplugin/4.1.4/BaseElements.fmplugin.gz"]
End If
プラグインファイルのインストール[Plugin::Plugin]

まとめ

プラグインを利用することでFTPサーバーへファイルアップロードなど、ファイルメーカーだけでは出来ない処理も実装することができます。

今回のファイルメーカープラグインのインストールサンプルは、下のリンクからダウンロードできます。

[wpdm_package id=’1116′]

By にど寝

もともと名古屋でシステムエンジニアをしてましたが、現在は地元に帰省してネットショップの社内システムエンジニアをしてます。  

コメントを残す

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