PERGUNTAS E RESPOSTAS
 
Bem Vindo, Visitante  Todos os Fórums
  ADVPL
Enviar para a impressoraImprimir  Enviar e-mail para um amigoEnviar Para um Amigo
Precisa estar Logado

Subject Assunto:
Duvida com FWREST
Versão:
12.1.33
Plataforma:
Microsoft
Complemento:
DB:
Postgre
Complemento:
LinkedIn
Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário PSNEVES PSNEVES em 10/03/2023, 10:48 h
Local: ES  Registro: 20/05/2022  Postagens: 7
Bom dia, tudo bem?? Sou novo em programação ADVPL e estou com uma dúvida relacionado ao POST Json. Estou enviando um Json utilizando a classe FWREST, o retorno que recebo é o 200, utilizando getResult eu recebo as atualizações, porém quando vou lá no site e vejo o post, e eu não tenho atualização alguma. Alguém sabe me dizer o que pode ser isso??Segue montagem e envio do Json

// Montagem Json

Static Function SendTableMob(oObj)

    Local nI
    Local nX := 1
    Local oMobAgile as object
    // Local oJson    as object
    Local oModelCab := oObj:GetModel( "DA0MASTER" )
    Local oModelIte := oObj:GetModel( "DA1DETAIL" )
    Local nQtdLinhas := oModelIte:GetQtdLine()
       
    
     U_SendMobPro(oModelCab:GetValue("DA0_CODTAB"))
    
    oMobAgile := JsonObject():New()
    oMobAgile["produtos"] := {}
    

    For nI:= 1 to nQtdLinhas

        If nX == 1


            oMobAgile[‘codtab‘]       := oModelCab:GetValue("DA0_CODTAB")

           // oMobAgile["produtos"] := {}
        EndIf

        aAdd(oMobAgile["produtos"], JsonObject():new())
       
        oMobAgile["produtos"][len(oMobAgile["produtos"])][‘cod‘]   := AllTrim(oModelIte:GetValue("DA1_CODPRO",nI))
        oMobAgile["produtos"][len(oMobAgile["produtos"])][‘prc‘]   := oModelIte:GetValue("DA1_PRCVEN",nI)
        oMobAgile["produtos"][len(oMobAgile["produtos"])][‘sts‘]   := AllTrim(oModelIte:GetValue("DA1_ATIVO",nI))


// Enviando de 200 em 200 devido a timeout ao enviar um json maior do que isso.
        If nX == 200
        //If nX == 10
            U_JsonMobAgile("DA0",oMobAgile )
            FreeObj( oMobAgile)
            oMobAgile := JsonObject():New()
            oMobAgile["produtos"] := {}
            nX := 0
        Endif
        nX ++
    Next
    If Len(oMobAgile["produtos"]) > 0
        U_JsonMobAgile("DA0",oMobAgile )
        FreeObj(oMobAgile)
    Endif
return


// POST da função JsonMobAgile

REENCHE CABE ALHO DA REQUISICAO
    aHeader := {}

    AAdd(aHeader, "Content-Type: application/json; charset=UTF-8")
    AAdd(aHeader, "Accept: application/json")
     Aadd(aHeader,‘Authorization: Bearer ‘ + cToken)
     

     // INFORMA O RECURSO E INSERE O JSON NO CORPO (BODY) DA REQUISIÇÃO
    //oRest:nTimeOut := 900000
    //cJson := oJson:ToJson()
    oRest:SetPath(cEndPoint)
    oRest:SetPostParams(oJson:ToJson())

    // REALIZA O M TODO POST E VALIDA O RETORNO
     if oRest:Post(aHeader)
          cError := ""
          nStatus := HTTPGetStatus(@cError)
        oRest:GetResult()
          if ! nStatus >= 200 .And. nStatus <= 299
          //      MsgInfo("Registro enviado ao MobAgile.")
          // else
               MsgStop("Falha ao Enviar Dados: " + cError)
               lRetorno := .F.
          endif
     else
          lRetorno := .F.
          oParseJSON := JsonObject():new()
          oParseJSON:fromJson(oRest:CRESULT)
          If(Valtype(oParseJSON:GetJsonText("message")) == "U")
               MsgStop("Falha ao Enviar Dados: " + oRest:getLastError() + CRLF + DecodeUTF8(oRest:getResult(), "cp1252"))
          Else
               MsgStop("Falha ao Enviar Dados: " + oRest:getLastError() + CRLF + DecodeUTF8(oParseJSON:GetJsonText("message"), "cp1252"))
          EndIf               
     endif

Para postar no Fórum você precisa efetuar o seu login ou se registrar

 Mudar para Fórum

 

 

 
 
   
Pagina Principal Shopping PROTHEUS Tire suas duvidas Vagas Microsiga em todo Brasil Aprofunde seus conhecimentos Noticias Online Fale Conosco Pagina Principal