대상체 이름, 배열 인덱스 또는 경로로 지정된 JSON 데이터에 요소를 추가하거나 수정합니다.
JSONSetElement(json ; 키 또는 인덱스 ; 값 ; 유형)
json
- JSON 대상체나 배열을 포함하는 임의의 텍스트 표현식 또는 필드
키 또는 인덱스 또는 경로
- JSON 대상체 이름(키), 배열 인덱스 또는 경로를 지정하는 임의의 텍스트 표현식 또는 필드 JSON 함수 작업하기를 참조하십시오.
값
- 숫자, 텍스트 또는 JSON 데이터를 포함하는 임의의 표현식 또는 필드.
유형
- 설정할 데이터 유형을 지정하는 이름이 붙여진 값(아래 참조).
텍스트
FileMaker Pro 16.0
이 함수는 지정된 키 또는 인덱스 또는 경로
에 값
이 있는 json
을 반환합니다. json
매개 변수가 비어 있는 경우(""), 키 또는 인덱스 또는 경로
매개 변수의 첫 부분이 "[" 문자로 시작하지 않으면 이 함수는 JSON 대상체({ } 괄호 안)에 값
을 추가합니다. 그러한 경우에 이 함수는 값
을 JSON 배열([] 괄호 안)에 추가합니다.
유형
매개 변수의 경우, 다음 값 중 하나를 사용하십시오. 값
이 json
에 추가되면, 유형
매개 변수는 값
을 특정 JSON 유형으로 변환할지 또는 유형을 변경하지 않고 값
을 삽입할지 지정합니다.
|
| 출력 유형 |
| FileMaker 텍스트 | JSON 문자열(" ") |
| FileMaker 숫자 | JSON 숫자 |
| JSON 대상체 | JSON 대상체( { } ) |
| JSON 배열 | JSON 배열( [] ) |
| FileMaker 값 또는 JSON 불리언 값 | JSON 불리언 |
| 유형이 무시됩니다 | JSON null |
| JSON 요소 | JSON 요소(또는 |
1. 괄호에 있는 이름이 있는 값 또는 숫자 값을 사용하여 유형
을 지정할 수 있습니다(예: JSONString
또는 1).
JSONBoolean
을 사용할 때, 값
이 true
이거나 0이 아닌 숫자인 경우 true로 처리되며 값
이 false
또는 0인 경우 false로 처리됩니다. 그렇지 않은 경우 값
이 true인지 false인지 여부는 If 함수의 테스트
매개 변수와 동일한 방법으로 결정됩니다.
JSONRaw
를 사용할 때, JSON 파서는 값이 유효한 구문을 사용하는지 확인하기 위해 값
을 처리합니다. 값
이 유효한 JSON인 경우, 아무 요소도 JSON 데이터 유형으로 변환하지 않고 분석 결과가 이 함수의 반환 값에 사용됩니다. 값
의 첫 번째 JSON 요소 뒤에 있는 모든 문자는 무시됩니다(예: 값
이 "4,2"인 경우 쉼표는 JSON 구문에서 요소 구분자이기 때문에 "4"만 삽입됨). 값
이 유효한 JSON이 아닌 경우, 값
은 반환된 값에서 JSON 문자열로 변환됩니다.
각 요소를 [] 괄호로 묶은 키 또는 인덱스 또는 경로
, 값
및 유형
매개 변수 세트를 추가로 제공하여 여러 요소를 구성할 수 있습니다. 다음 구문은 N 요소를 한번에 구성합니다.
JSONSetElement(json ;
[키 또는 인덱스 또는 경로1 ; 값1 ; 유형1] ;
[키 또는 인덱스 또는 경로2 ; 값2 ; 유형2] ;
...
[키 또는 인덱스 또는 경로N ; 값N ; 유형N] ;
)
•이 함수는 런타임 솔루션에서 지원되지 않으며 "?"를 반환합니다.
JSON 대상체의 루트에 키와 키값을 추가합니다.
JSONSetElement("{ \"a\" : 11 }" ; "b" ; 22.23 ; JSONNumber)
는 {"a":11,"b":22.23}을 반환합니다.
JSON 대상체를 다른 JSON 대상체의 요소로 추가합니다. $$JSON 변수가 다음과 같이 설정되어 있는 경우
{
"a" : {
"id" : 12,
"lnk" : 34
}
}
그런 다음
JSONFormatElements(
JSONSetElement($$JSON ; "b" ; "{ \"id\" : 14, \"lnk\" : 73 } " ;
JSONObject
)
)
다음을 반환합니다.
{
"a" :
{
"id" : 12,
"lnk" : 34
},
"b" :
{
"id" : 14,
"lnk" : 73
}
}
$$JSON 변수에 저장된 JSON 데이터 예제에서 배열의 첫 번째 "제품" 요소에 있는 "특별 메뉴" 및 "재고" 키값을 변경합니다.
JSONFormatElements(
JSONSetElement($$JSON ;
["제과.제품[0].특별 메뉴" ; 0 ; JSONBoolean] ;
["제과.제품[0].재고" ; 0 ; JSONNumber]
)
)
$$JSON에 있는 데이터와 동일하지만 "제품" 배열의 첫 번째 요소가 다음으로 변경된 데이터를 반환합니다.
{
"범주" : "빵",
"id" : "FB1",
"이름" : "도너츠",
"가격" : 1.99,
"특별 메뉴" : false,
"재고" : 0
}