JsonObject e manipulação de JSON
JsonObject():New(); o:FromJson(cJson); o:ToJson()Lê JSON, acessa propriedades e serializa o objeto.
Visão geral
JsonObject cria propriedades dinamicamente, acessíveis por colchetes. FromJson retorna NIL no sucesso e texto de erro na falha; o tipo Caractere mostrado na tabela oficial não substitui essa regra. Validar o resultado antes de acessar o objeto e depois validar o esquema esperado. ToJson devolve string JSON, sem garantir ordem fixa das propriedades. A documentação registra P12 build 131227a a partir da versão 13.2.3.6. (Fontes: refs. 1–3.)
Sintaxe
JsonObject():New(); o:FromJson(cJson); o:ToJson()Métodos
NewCria objeto vazio.JsonObject():New()
FromJsonCarrega texto JSON; NIL indica sucesso.o:FromJson(cJson)
ToJsonExporta o objeto em string.o:ToJson() -> cJson
Exemplo comentado
#Include "Protheus.ch"
User Function Ed501()
Local oJson := JsonObject():New()
Local uError := oJson:FromJson('{"code":"ED01","quantity":3}')
// NIL representa sucesso de parseo, nao erro.
If ValType(uError) == "U"
ConOut(oJson:ToJson())
Else
ConOut(cValToChar(uError))
EndIf
FreeObj(oJson)
Return NilSerializa o documento fictício quando o parseo for válido. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.
- Validar presença e tipo de campos, limites de tamanho e conteúdo antes de executar regras. Não registrar payloads sensíveis integralmente.
- Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.