No vídeo de hoje, vamos demonstrar em como utilizar a classe JSONObject para transformar uma String em um objeto JSON.
Hoje, a dúvida foi feita pelo grande Lucas, onde ele perguntou em como pegar uma string JSON e manipular ela via AdvPL.
Com isso em mente, fiz um vídeo explicando como sobre usar a classe JSONObject para transformar a String em um objeto.
E abaixo o código fonte desenvolvido para exemplificar:
//Bibliotecas
#Include "TOTVS.ch"
/*/{Protheus.doc} User Function zVid0029
Função de exemplo, pegando uma string (json) e transformando em objeto
@type  Function
@author Atilio
@since 21/04/2022
/*/
User Function zVid0029()
    Local aArea  := FWGetArea()
    Local cTexto := '{"nome":"daniel", "empresa":"atilio sistemas", "site":"https://atiliosistemas.com", "contatos":[{"email":"contato@atiliosistemas.com"}, {"email":"suporte@terminaldeinformacao.com"}]}'
    Local oJson
    Local cErro  := ''
    Local cNome  := ''
    Local cSite  := ''
    //Pega o texto e transforma em objeto
    oJson := JsonObject():New()
    cErro := oJson:FromJson(cTexto)
    //Se houve erro
    If ! Empty(cErro)
        FWAlertError("Falha ao converter texto para Objeto JSON: " + CRLF + cErro, "Conversão JSON")
    //Senão, manipula o JSON
    Else
        If ! Empty(oJson:GetJsonObject('nome'))
            cNome := oJson:GetJsonObject('nome')
        EndIf
        If ! Empty(oJson:GetJsonObject('site'))
            cSite := oJson:GetJsonObject('site')
        EndIf
        FWAlertSuccess("Nome: " + cNome + CRLF + "Site: " + cSite, "Sucesso na conversão JSON")
    EndIf
    FWRestArea(aArea)
Return
Bom pessoal, por hoje é só.
Abraços e até a próxima.
 
 
 
Oie, boa noite!
Muito legal o video, ajudou demais!
Por favor, faz um video ensinando a receber objetos json e a acessar seus valores. Existem diversos materiais na internet, mas nenhum simples igual ao seu.
Bom dia Julio, tudo joia?
Opa, obrigado pelo feedback.
Então, temos algumas aulas de exemplo, no curso de JSON, veja as aulas 09 a 12, segue link – https://tipremium.com/page.php?slug=curso-json
Caso você não seja aluno nosso ainda, e quiser apenas ver essas aulas, tem um período gratuito de 24 horas, ai você pode assinar, assistir as aulas desejadas e depois ver se a assinatura adere ao que você precisa, segue o link de como fazer o período de teste: https://tipremium.com/page.php?slug=testar-assinatura
Tenha uma ótima e abençoada semana.
Um forte abraço.