プラグイン更新の例
次の例は、インストールされたプラグインのバージョンと、FileMaker Proファイルのオブジェクトフィールドに配置されるバージョンを比較し、必要に応じてプラグインを更新します。
1.
ソリューションファイルで、「プラグインの更新」というテーブルを作成してプラグイン情報を保存します。
2.
 
3.
4.
エラー処理 [オン]
プラグインファイルのインストール [プラグインの更新::プラグインファイル]
#
#エラー処理
If [Get(最終エラー)
0]
If [Get(最終エラー) = 3]
カスタムダイアログを表示[プラグインの更新::プラグインファイル & " をインストールできませんでした。FileMaker Pro の [プラグイン] 環境設定で [ソリューションにファイルのインストールを許可] オプションが選択されていることを確認してください。"]
Else If [Get(最終エラー) = 1550]
カスタムダイアログを表示[プラグインの更新::プラグインファイル & " をインストールしましたが初期化できませんでした。"]
Else If [Get(最終エラー) = 1551]
カスタムダイアログを表示[プラグインの更新::プラグインファイル & " をインストールできませんでした。"]
Else
カスタムダイアログを表示 [プラグインの更新::プラグインファイル] & "をインストール時に一般エラー " & Get(最終エラー) & " が発生しました。"]
End If
End If
5.
レイアウト切り替え [“プラグイン更新情報”]
レコード / 検索条件 / ページへ移動 [最初の]
Loop
If [プラグインの更新::インストールされたプラグインのバージョン < プラグインの更新::必要なプラグインのバージョン]
#プラグインは、インストールまたは更新が必要です。
スクリプト実行[「プラグインをインストール」]
End If
レコード/検索条件/ページへ移動 [次の; 最後まできたら終了]
End Loop
6.
エラー処理 [オン]
検索実行 [記憶する]
#「インストールされたプラグインの状態」フィールドで "Enabled" を検索します。
If [Get(対象レコード数)
0]
カスタムダイアログを表示 ["一部の必須プラグインは有効になっていません。FileMaker Pro の [プラグイン] 環境設定で [ソリューションにファイルのインストールを許可] オプションが選択されていることを確認してください。"]
End If
7.
スクリプト実行 [「プラグインバージョンを確認」]
スクリプト実行 [「有効かどうかの確認」]
レイアウト切り替え [元のレイアウト]
クライアントプラグインバージョンの計算式
Let (
[
PluginNamePosition = Position ( Get( インストールされた FM プラグイン ); Plugin Name ; 1 ; 1 );
PluginVersionStart = PluginNamePosition + Length( Plugin Name ) + 1;
PluginVersionEnd = Position ( Get( インストールされた FM プラグイン ); ";" ; PluginNamePosition ; 2 );
PluginVersionLength = PluginVersionEnd - PluginVersionStart
];
If ( PatternCount ( Get( インストールされた FM プラグイン ) ; Plugin Name ) = 0 ; “” ; Middle ( Get( インストールされた FM プラグイン ) ; PluginVersionStart ; PluginVersionLength ) )
)
クライアントプラグイン有効状態の計算式
Let (
[
PluginNamePosition = Position ( Get( インストールされた FM プラグイン ); Plugin Name ; 1 ; 1 );
PluginStateStart = Position ( Get( インストールされた FM プラグイン ); ";" ; PluginNamePosition ; 2 ) + 1;
PluginStateEnd = If ( Position ( Get( インストールされた FM プラグイン ); "¶" ; PluginNamePosition ; 1 ) > 0; Position ( Get( インストールされた FM プラグイン ); "¶" ; PluginNamePosition ; 1 ); Length( Get( インストールされた FM プラグイン ) ) + 1 );
PluginStateLength = PluginStateEnd - PluginStateStart
];
If ( PatternCount ( Get( インストールされた FM プラグイン ) ; プラグイン名 ) = 0 ;
“” ; Middle ( Get( インストールされた FM プラグイン ) ; PluginStateStart ; PluginStateLength ) )
)
関連項目 
カスタムプラグインの作成
Get ( インストールされた FM プラグイン )
プラグインファイルのインストール