Get(JSON으로 설치된 FM 플러그인)

설치된 플러그인의 속성이 있는 JSON 대상체를 반환합니다.

포맷 

Get(JSON으로 설치된 FM 플러그인)

매개 변수 

없음.

반환되는 데이터 유형 

텍스트

다음 버전에서 시작됨 

19.2.2

설명 

이 함수는 JSON 대상체이며 추가 정보를 포함하는 점을 제외하면 Get(설치된 FM 플러그인) 함수와 같은 정보를 반환합니다.

다음의 반환된 JSON 대상체 예시에는 플러그인 배열에 두 개의 설치된 플러그인이 있습니다.

복사
{
    "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/19.0/Extensions/MyPlugin2.fmplugin/",
            "description": "This is another FileMaker plug-in."
        }
    ]
}

다음 표는 반환된 JSON 대상체의 요소를 설명합니다.

JSON 요소

설명

APIVers

이 JSON 대상체 구조 버전의 숫자 값입니다. 이 JSON 대상체의 구조가 다음 릴리즈에서 변경되면 이 숫자가 변경됩니다.

버전 2: environment가 추가되었습니다.

environment

플러그인이 실행되는 시스템을 설명하는 대상체입니다. 현재 설치된 플러그인이 없는 경우에도 반환됩니다. 다음 키를 포함합니다.

plugins

설치된 각각의 플러그인 대상체를 포함하는 배열입니다. 설치된 플러그인이 없으면 값은 비어 있을 수 있습니다(null).

name

플러그인의 이름입니다.

id

네 글자로 된 플러그인 ID입니다(파일 간 플러그인 접근 제어 정보를 참조하십시오.)

version

문자열로 된 플러그인 버전 숫자입니다.

state

플러그인이 환경설정에서 현재 사용 가능한지와 로드되었는지를 표시합니다.

  • Enabled – 사용 가능하며 로드될 수 있습니다.
  • Disabled – 사용 불가능하며 로드될 수 없습니다.
  • Ignored - 로드하지 못했으며 소프트웨어 비호환성 때문일 수 있습니다.
filepath

FileMaker 포맷으로 된 플러그인 파일 경로입니다(파일 경로 생성하기를 참조하십시오.).

description

플러그인에 대한 설명입니다.

이름, 버전 및 설명은 플러그인 리소스 파일(Windows) 또는 info.plist 파일(macOS)에서 플러그인 개발자가 제공하는 값입니다.

예제 1 

설치된 플러그인의 개수를 반환합니다.

복사
ValueCount ( JSONListKeys ( Get(JSON으로 설치된 FM 플러그인) ; "plugins" ) )

예제 2 

$$id 변수로 지정된 ID가 있는 플러그인의 버전 숫자를 반환합니다. 위에 나오는 예제의 JSON 대상체를 반환하는 시스템에서는 $$id가 ‘XM32’인 경우 다음의 계산에서 1.0이 반환됩니다.

복사
While( 
    [ 
    plugin_json = Get(JSON으로 설치된 FM 플러그인) ;
    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 
)

예제 3 

플러그인 파일 설치에서 예제 2를 참조하십시오.