Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20.6
JSON PARSE ARRAY
|
JSON PARSE ARRAY ( cadeiaJSON ; arrayObjeto ) | ||||||||
Parâmetro | Tipo | Descrição | ||||||
cadeiaJSON | String |
![]() |
Cadeia JSON a analisar | |||||
arrayObjeto | Array |
![]() |
Array que contém o resultado da análise da cadeia JSON | |||||
O comando JSON PARSE ARRAY analisa o conteúdo de uma cadeia com formato JSON e localiza os dados extraídos no array arrayObjeto. Este comando não realiza os dados JSON, realiza a ação inversa do comando JSON Stringify array.
Em cadeiaJSON, passe a cadeia com formato JSON cujo conteúdo deseja analisar. Esta cadeia deve ter o formato correto, caso contrário é gerado um erro de análise.
Em arrayObjeto, passe o objeto que deve receber os resultados da análise.
Note: A partir de 4D v16 R4, JSON PARSE ARRAY pode geralmente ser substituído por uma chamada a JSON Parse que retorna uma coleção. Coleções são baseadas em arrays JSON permite armazenar dados de diversos tipos, o que oferece mais flexibilidade que arrays.
Neste exemplo, os dados dos campos dos registros de uma tabela se extraem e localizam nos arrays de objetos:
C_OBJECT($ref)
ARRAY OBJECT($sel;0)
ARRAY OBJECT($sel2;0)
C_TEXT(v_String)
OB SET($ref;"name";->[Company]Company Name)
OB SET($ref;"city";->[Company]City)
While(Not(End selection([Company])))
$ref_company:=OB Copy($ref;True)
APPEND TO ARRAY($sel;$ref_company)
// $sel{1}={"name":"4D SAS","city":"Clichy"}
// $sel{2}={"name":"MyComp","city":"Lyon"}
// ...
NEXT RECORD([Company])
End while
v_String:=JSON Stringify array($sel)
// v_String= [{"name":"4D SAS","city":"Clichy"},{"name":"MyComp","city":"Lyon"}...]
JSON PARSE ARRAY(v_String;$sel2)
// $sel2{1}={"name":"4D SAS","city":"Clichy"}
// $sel2{2}={"name":"MyComp","city":"Lyon"}
//...
Produto: 4D
Tema: JSON
Número
1219
Criado por: 4D v14
Modificado: 4D v16 R4
Manual de linguagem 4D ( 4D v20)
Manual de linguagem 4D ( 4D v20.1)
Manual de linguagem 4D ( 4D v20.2)
Manual de linguagem 4D ( 4D v20.3)
Manual de linguagem 4D ( 4D v20.4)
Manual de linguagem 4D ( 4D v20.5)
Manual de linguagem 4D ( 4D v20.6)