Páginas filhas
  • FWJsonDeserialize - Deserializa uma string no formato JSON

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Descrição

Essa função realiza o parse de uma string no formato Json (http://json.org/) para um objeto.
Esse objeto possui todos atributos de acordo com o conteúdo encontrado na string e não possui nenhum método. 

Observações

1. Objetos serão restaurados com uma classe dinâmica, mesmo em casos onde a origem da string seja a serialização de uma classe em ADVPL.

2. Devido a uma limitação da função, não é permitido atributos com contendo apenas conteúdo numéricos, para . Para utilizar atributos contendo apenas conteúdo numérico é necessário utilizar a função Json_Hash.

Exemplos

User Function JsonTest

Local cJson
Local oObj

cJSon := '{"menu": {'
cJSon += '"id": "file",'
cJSon += '"value": "File",'
cJSon += '"popup": {'
cJSon += ' "menuitem": ['
cJSon += ' {"value": "New", "onclick": "CreateNewDoc()"},'
cJSon += ' {"value": "Open", "onclick": "OpenDoc()"},'
cJSon += ' {"value": "Close", "onclick": "CloseDoc()"}'
cJSon += ' ]'
cJSon += ' }'
cJSon += '}}'

If FWJsonDeserialize(cJson,@oObj)
MsgStop(oObj:menu:popup:menuitem[3]:onclick) //Será exibida a mensagem 'CloseDoc()'
Endif

Return

Idioma

Português(Brasil)

Versões

Microsiga_Protheus11

Sistemas Operacionais Suportados

Todos

Compatível com as Bases de Dados

Todas

Parâmetros

cParam - String no formato JSON
uRet - Variável passada por referência que irá receber o objeto deserializado.

Retorno

lRet - Verdadeiro se não houve erro na sintaxe informada

Programa Fonte

FWJsonSerialize.prw