Get(InstalledFMPluginsAsJSON)

Retorna um objeto JSON com os atributos dos plug-ins instalados.

Formato 

Get ( InstalledFMPluginsAsJSON )

Parâmetros 

Nenhum

Tipo de dados retornado 

texto

Originada na versão 

19.2.2

Descrição 

Esta função retorna as mesmas informações que a Função Get(InstalledFMPlugins), exceto que é um objeto JSON e inclui informações adicionais.

No exemplo a seguir do objeto JSON retornado, dois plug-ins estão instalados na matriz de plugins.

Copiar
{
    "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": "Este é um exemplo de plug-in do FileMaker."
        },
        {
            "name": "MyPlugin2",
            "id": "BO3B",
            "versão": "1.1.6x3422",
            "estado": "Desativado",
            "filepath": "filemac:/HD/Users/user1/Library/Application Support/FileMaker/FileMaker Pro/20.0/Extensions/MyPlugin2.fmplugin/",
            "descrição": "Este é outro plug-in do FileMaker."
        }
    ]
}

A tabela a seguir descreve os elementos do objeto JSON retornado.

Elemento JSON

Descrição

APIVers

Valor numérico para a versão da estrutura deste objeto JSON. Se a estrutura desse objeto JSON mudar em uma versão subsequente, esse número mudará.

Versão 2: environment adicionado.

environment

Objeto que descreve o sistema em que o plug-in é executado. É retornado mesmo se não houver plug-ins instalados. Inclui estas chaves:

plugins

Matriz que contém um objeto para cada plug-in instalado. Se nenhum plug-in estiver instalado, o valor será nulo.

name

Nome do plug-in

id

ID de quatro caracteres do plug-in (consulte Como controlar o acesso de plug-ins entre arquivos).

version

Número da versão do plug-in como uma string

state

Se o plug-in estiver ativado em Preferências e carregado:

  • Enabled – está ativado e pode ser carregado
  • Disabled – está desativado e não pode ser carregado
  • Ignored – falha ao carregar talvez devido a incompatibilidade de software.
filepath

Caminho do arquivo de plug-in no formato FileMaker (consulte Criação de caminhos de arquivo)

description

Descrição do plug-in

O nome, a versão e a descrição são os valores fornecidos pelo desenvolvedor do plug-in no arquivo de recursos do plug-in (Windows) ou no arquivo info.plist (macOS).

Exemplo 1 

Retorna o número de plug-ins instalados.

Copiar
ValueCount ( JSONListKeys ( Get ( InstalledFMPluginsAsJSON ) ; "plugins" ) )

Exemplo 2 

Retorna o número da versão do plug-in com o ID especificado pela variável $$id. Para o sistema que retorna o objeto JSON de exemplo acima, o cálculo a seguir retorna 1.0 se $$id for "XM32".

Copiar
While ( 
    [
    plugin_json = Get ( InstalledFMPluginsAsJSON ) ;
    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 
)

Exemplo 3 

Consulte o Exemplo 2 em Instalar arquivo de plug-in.