Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - TOTVS Backoffice (Linha Protheus) - ADVPL - É possivel alterar a limitação de 8 decimais da Classe JsonObject?

time.pngTempo aproximado para leitura: 00:02:00 min


Dúvida
É possivel alterar a limitação de 8 decimais da Classe JsonObject?


Ambiente
Cross Segmentos - Backoffice (Linha Protheus) – ADVPL – A partir da versão 12.1.2310


Solução
Para isso, a solução seria utilizando as funções DEC_CREATE que indica a quantidade total de dígitos do número, e a escala indica a quantidade reservada para as casas decimais do número e a função cValToChar para transformar este número em String para passar no JSON.

 

Observação 
Reforçamos que campos do Protheus continuarão recebendo por padrão no máximo 8 casas decimais.

Exemplo:

#include "protheus.ch"


user function FJDEC()
local oJson
local ret
local nCoord1 := DEC_CREATE(-49.354684361, 10, 9)
local nCoord2 := DEC_CREATE(-23.353524586, 10, 9)
local nCoord1Str := cValToChar(nCoord1)
local nCoord2Str := cValToChar(nCoord2)
local cJson := '{"coordenada" : "' + nCoord1Str + '" , "coordenada2" : "' + nCoord2Str + '"}'
Alert(cJson)

oJson := JsonObject():new()

ret := oJson:FromJson(cJson)

if ValType(ret) == "U"
Alert("JsonObject populado com sucesso")
else
Conout("Falha ao popular JsonObject. Erro: " + ret)
endif
FreeObj(oJson)
return


/*
Impressão ao executar o u_FJSucesso():
 
JsonObject populado com sucesso
*/

 

Saiba mais
Classe JsonObject

- Função DEC_CREATE

- Função cValToChar

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _