Get ( 安装的 FM 插件为 JSON )
返回具有已安装插件属性的 JSON 对象。
格式
Get ( 安装的 FM 插件为 JSON )
参数
无
返回的数据类型
文本
原始版本
19.2.2
说明
此函数与 Get (安装的 FM 插件)函数,唯一的区别在于它是一个 JSON 对象,还包含其他信息。
在下面返回的 JSON 对象示例中,plugins
数组中有两个安装的插件。
{
"APIVers": 2,
"environment" :
{
"architecture" : "arm64",
"platform" : 1,
"version" : "11.3"
},
"plugins":
[
{
"name": "MyPlugin1",
"id": "XM32",
"version": "1.0",
"state": "Enabled",
"filepath": "filemac:/HD/Users/user1/Library/Application Support/FileMaker/Extensions/MyPlugin1.fmplugin/",
"description": "This is a sample FileMaker plug-in."
},
{
"name": "MyPlugin2",
"id": "BO3B",
"version": "1.1.6x3422",
"state": "Disabled",
"filepath": "filemac:/HD/Users/user1/Library/Application Support/FileMaker/FileMaker Pro/21.1/Extensions/MyPlugin2.fmplugin/",
"description": "This is another FileMaker plug-in."
}
]
}
下表说明返回的 JSON 对象中的元素。
JSON 元素 |
说明 |
---|---|
APIVers
|
此 JSON 对象的结构版本的数值。如果此 JSON 对象的结构在后续版本中有更改,此版本号也会更改。 版本 2:添加了 |
environment
|
描述插件所在系统的对象。即使当前未安装插件也会返回。包括以下键:
|
plugins
|
包含每个已安装插件的对象的数组。如果未安装插件,则值为 null。 |
name
|
插件的名称 |
id
|
插件的四字符 ID(请参阅关于控制文件间的插件访问) |
version
|
显示为字符串的插件版本 |
state
|
插件当前是否在“设置”中启用并加载:
|
filepath
|
FileMaker 格式的插件文件路径(请参阅创建文件路径) |
description
|
插件的说明 |
名称、版本和说明是插件开发商在插件的资源文件 (Windows) 或 info.plist 文件 (macOS) 中提供的值。
示例 1
返回已安装的插件数。
ValueCount ( JSONListKeys ( Get ( InstalledFMPluginsAsJSON ) ; "plugins" ) )
示例 2
返回插件的版本号,包含 $$id
变量指定的 ID。对于返回上述示例 JSON 对象的系统,以下计算将返回 1.0(如果 $$id
为 "XM32")。
While ( [ plugin_json = Get ( 安装的 FM 插件为 JSON ) ; total = ValueCount ( JSONListKeys ( plugin_json ; "plugins" ) ) ; index = 0 ; version = "" ] ; index < total ; [ version = If ( JSONGetElement ( plugin_json ; "plugins[" & index & "].id" ) = $$id ; JSONGetElement ( plugin_json ; "plugins[" & index & "].version" ) ; "" ) ; index = If ( version = "" ; index + 1 ; total ) ] ; version
)