import.css=/download/attachments/6062824/tecnologia.css

Coloca um Vetor ou um Objeto Json na raiz do JsonObject.

Sintaxe

JsonObject:Set( aJson )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

aJSON

Array

Array de Objetos Tipo Json que serão inseridos na raiz do documento.



Retorno

Nome

Tipo

Descrição

-

-

-


Exemplo

#include "protheus.ch"

user function exemploSet()
	Local aJson := {}
	local aLast := {}
	local wrk
	local nItens := 5
	local i
	
	wrk := JsonObject():new()

	//Preenche o vetor com objetos JsonObject
	For i := 1 to nItens
    	Aadd(aJson,JsonObject():new())
       	nPos := Len(aJson) 
    	aJson[nPos]['name' ] := 'Nome'+cValtoChar(i)
    	aJson[nPos]['value' ] := 'Value'+cValtoChar(i)
    	aJson[nPos]['key' ] := 'Key'+cValtoChar(i)
    	aJson[nPos]['source' ] := 'Source'+cValtoChar(i)
	Next 

	for i:= 1 to nItens
    	Aadd(aLast,JsonObject():new())
    	aLast[i]['sample'] := 'sample ' + cValtoChar(i)
	next

 	aJson[Len(aJson)]['SampleArray'] := aLast     //Cria uma propriedade do tipo array no ultimo elemento

	/*
	após o preenchimento o vetor terá essa estrutura:
	[
	{"key":"Key1","name":"Nome1","value":"Value1","source":"Source1"},
	{"key":"Key2","name":"Nome2","value":"Value2","source":"Source2"},
	{"key":"Key3","name":"Nome3","value":"Value3","source":"Source3"},
	{"key":"Key4","name":"Nome4","value":"Value4","source":"Source4"},
	{"key":"Key5","name":"Nome5","value":"Value5","source":"Source5","SampleArray":[{"sample":"sample 1"},
																					{"sample":"sample 2"},
																					{"sample":"sample 3"},
																					{"sample":"sample 4"},
																					{"sample":"sample 5"}]}
	]
	*/
 
	wrk:set(aJson)                          //Será Inserido Array na Raiz do documento (Somente Array ou JsonObject deve ser informado no parametro)
	conout(Len(wrk))                       //Imprime a contagem de elementos
	conout(wrk:toJSON())                   //Imprime Json
return


Abrangência
Versão 17.3.0.14 e superiores