Ir para conteúdo
  • Cadastre-se

dev botao

Farmácia Popular novo DNS do webservice


  • Este tópico foi criado há 1947 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

olá bom dia, estou implementando os novos web service do farmacia popular, e as vezes funciona normalmente as vezes ele retorna o seguinte erro:

Citar

 

O documento XML deve ter um elemento de nível superior

Line: 0

 

Alguem sabe me dizer  que pode estar causando este problema e como solucionar, se for um problema no consumo do web service,

 

esta é uma das funções que estou utilizando na comunicação:

Citar

 

procedure THFarmaciaPopular.executarEstorno;
var
  respEstorno : ConfirmacaoEstornoDTO;
begin
  try
    CoInitialize(nil);    
    
    // instancio o objeto de consulta
    WSFPopular            := GetServicoSolicitacaoWS(false,Addr);
    
    // consulto o web service

   // geralmente o erro acontece aqui
    respEstorno   := WSFPopular.executarEstorno(reqEstorno,usuDTO);
    
    // converto o objeto para o programa
    respObject            := TObject( respEstorno);
  Except
    on e : Exception do
      erro := e.Message;
  end;
end;

 

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Fiz um checkbox no programa para, se marcado, o sistema funcionar no DNS novo. Desmarcado funciona no DNS atual. Está dando erro de timeout. "O certificado não deve estar no estado correto". Ao desmarcar a opção e voltar para o DNS atual funciona na hora. Espero que prorroguem porque estabilizar está difícil.

Link para o comentário
Compartilhar em outros sites

Resposta farmácia popular sobre timeout

 

PREZADO (A),

 

INFORMAMOS QUE ESTÁ SENDO VERIFICADO PARA REESTABELECER A NORMALIDADE.

 

AGRADECEMOS O CONTATO E ESTAMOS A DISPOSIÇÃO PARA OUTROS ESCLARECIMENTOS.

 

ATT.

EQUIPE TÉCNICA DO PROGRAMA FARMÁCIA POPULAR/DAF/SCTIE

logo_fp2

Esplanada dos Ministérios. Bloco G, Ed. Sede, 1º Andar

EP: 70.058-900 - Brasília – DF

www.saude.gov.br/aquitemfarmaciapopular

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Em 27/11/2018 at 11:38, magnosystem disse:

Fiz um checkbox no programa para, se marcado, o sistema funcionar no DNS novo. Desmarcado funciona no DNS atual. Está dando erro de timeout. "O certificado não deve estar no estado correto". Ao desmarcar a opção e voltar para o DNS atual funciona na hora. Espero que prorroguem porque estabilizar está difícil.

Você conseguiu trabalhar com o mesmo código DNA nos dois DNS?

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Na realidade o GBAS antigo está na pasta do meu aplicativo, já o gbas novo eu criei uma pasta chamada GBAS20 que fica na pasta do meu aplicativo e dentro coloquei o gbas novo e seus arquivos dependentes. Portanto, quando o usuário marca a opção para trabalhar com o antigo DNS  eu direciono pro GBAS da pasta do meu aplicativo que é o antigo. Quando o usuário marca para trabalhar no NOVO DNS eu direciono pro GBAS da pasta GBAS20 que é o novo GBAS.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

1 hora atrás, magnosystem disse:

Na realidade o GBAS antigo está na pasta do meu aplicativo, já o gbas novo eu criei uma pasta chamada GBAS20 que fica na pasta do meu aplicativo e dentro coloquei o gbas novo e seus arquivos dependentes. Portanto, quando o usuário marca a opção para trabalhar com o antigo DNS  eu direciono pro GBAS da pasta do meu aplicativo que é o antigo. Quando o usuário marca para trabalhar no NOVO DNS eu direciono pro GBAS da pasta GBAS20 que é o novo GBAS.

 

Fiz como falou, mesmo assim, a versão antiga, só retorna "51S - Solicitação não autorizada. DNA da transação gerado pelo GBAS é inválido."

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

DNA da transação inválido tem outro macete que usei no programa já há algum tempo. Tenho um "quadradinho" chamado ENVIAR DATA E HORA DA PRESCRIÇÃO PARA COMPATIBILIDADE COM O DATASUS.

Se o usuário marcar envia a prescrição com Date + Time, caso contrário envia só Date.

Portanto os usuários estão trabalhando com dois quadradinhos: o que ativa ou desativa o DNS NOVO e este citado acima.

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, Sommus disse:

Qual dos métodos? Tentei tanto o de geração do DNA quanto o de envio.

O de envio, faz um loop de 5 tentativas com pausa de 1 ou 2 segundos

2 minutos atrás, magnosystem disse:

DNA da transação inválido tem outro macete que usei no programa já há algum tempo. Tenho um "quadradinho" chamado ENVIAR DATA E HORA DA PRESCRIÇÃO PARA COMPATIBILIDADE COM O DATASUS.

Se o usuário marcar envia a prescrição com Date + Time, caso contrário envia só Date.

Portanto os usuários estão trabalhando com dois quadradinhos: o que ativa ou desativa o DNS NOVO e este citado acima.

realmente existe esta diferença entre os webservices antigos e novo

Link para o comentário
Compartilhar em outros sites

  • Administradores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

  • Curtir 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1947 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.