ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

SNGPC 2.0
Ir à página Anterior  1, 2, 3 ... , 25, 26, 27  Próximo
 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
Alirio
Novato
Novato


Registrado: Quarta-Feira, 16 de Janeiro de 2013
Mensagens: 5

MensagemEnviada: Ter Set 24, 2013 10:00 am    Assunto: Re: Hash do SNGPC Responder com Citação

Bom dia amigo infelizmente a Anvisa ta uma beleza para se trabalhar
não se sabe como mudando o hash depois da transmissão
a solução que estamos usando na empresa é na hora que transmitir o arquivo vc. pode pegar hash que eles retornam para conferencia





lhueilsl escreveu:
Boa tarde!

Somos uma empresa desenvolvedora de Software para Farmácias e desde essa semana começamos a receber rejeições ao hash gerado pelo nosso SNGPC.
Após pesquisar, identificamos que ocorreram essas mudanças em relação ao hash visando simplificar sua criação, porém, não encontramos nenhuma instrução de como implantar essas modificações e não conseguimos obter um suporte adequado através do atendimento da Anvisa.

Alguém pode nos ajudar?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Alirio
Novato
Novato


Registrado: Quarta-Feira, 16 de Janeiro de 2013
Mensagens: 5

MensagemEnviada: Qua Set 25, 2013 8:47 am    Assunto: Re: Hash do SNGPC Responder com Citação

Bom dia Galera estava fazendo uns teste a questão do Hash
é que geramos o hash do xml o que a avisa gera agora é do Arquivo
zip que esta sendo enviado fiz as alterações e agora esta normal
vcs tb. podem pegar o MD5 do File Stream que esta sendo gerado
para passar para o web service




Alirio escreveu:
Bom dia amigo infelizmente a Anvisa ta uma beleza para se trabalhar
não se sabe como mudando o hash depois da transmissão
a solução que estamos usando na empresa é na hora que transmitir o arquivo vc. pode pegar hash que eles retornam para conferencia





lhueilsl escreveu:
Boa tarde!

Somos uma empresa desenvolvedora de Software para Farmácias e desde essa semana começamos a receber rejeições ao hash gerado pelo nosso SNGPC.
Após pesquisar, identificamos que ocorreram essas mudanças em relação ao hash visando simplificar sua criação, porém, não encontramos nenhuma instrução de como implantar essas modificações e não conseguimos obter um suporte adequado através do atendimento da Anvisa.

Alguém pode nos ajudar?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
cd.wagnersena
Novato
Novato


Registrado: Quinta-Feira, 29 de Outubro de 2009
Mensagens: 4

MensagemEnviada: Ter Out 01, 2013 11:39 am    Assunto: erro no arquivo de movimentação Responder com Citação

pessoal, recebi esse erro referente ao arquivo que enviei

Arquivo XML inválido, o SNGPC só aceita codificação Latin-1, porém existem caracteres inválidos no arquivo. Entrar em contato com o desenvolvedor do software do estabelecimento.

a unica coisa que vejo e que tem nomes que possuem pontos para breviação, é isso?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Cambiaghi
Novato
Novato


Registrado: Quinta-Feira, 21 de Fevereiro de 2013
Mensagens: 57

MensagemEnviada: Seg Out 21, 2013 10:44 am    Assunto: Responder com Citação

Bom dia Claudio, desculpe, eu não tinha mais entrado no fórum, não sei porque mas não recebo mais notificações.

A analista disse que esse problema foi extinto em 2007, então enviei a ela documentos relatando e comprovando o problema ocorrido ainda em 2013.
Depois disso não obtive mais retorno.

E por falar nisso, tive esse problema na semana passada ainda.

Att,
Fernando Luís Cambiaghi

claudio.ferreira escreveu:
Cambiaghi,

Bom dia, voce poderia informar o que foi dito pela equipe da ANVISA, quanto a transmitir entradas e saídas no mesmo arquivo ?

Desculpe a pergunta mas creio que seja de insteresse geral e daqueles que não puderam ir ao encontro.

Grato.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
claudio.ferreira
Profissional
Profissional


Registrado: Quarta-Feira, 18 de Setembro de 2013
Mensagens: 667

MensagemEnviada: Seg Out 21, 2013 10:57 am    Assunto: Responder com Citação

Bom dia Cambiaghi, segundo informações deles mesmos (e ainda nesse ano de 2013) o erro de falta de saldo com entrada e saida no mesmo arquivo ocorre quando há outros erros no mesmo arquivo e quando voce corrige os outros erros e reenvia o arquivo, o erro de falta de saldo desaparece, e de fato já vi isso acontecendo, mas também peguei uma vez ocorrendo somente esse, sem que hajam outros erros, infelizmente não guardei como prova.
_________________
Sistema SNGPC para farmácias
http://www.cmasistemas.com.br
Rastreabilidade de Medicamentos
https://www.sncm.com.br
Soluções em Delphi
https://delphisolutions.wordpress.com/
.
"E não sabendo que era impossível, foi lá e fez"
Mark Twain
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Cambiaghi
Novato
Novato


Registrado: Quinta-Feira, 21 de Fevereiro de 2013
Mensagens: 57

MensagemEnviada: Seg Out 21, 2013 11:13 am    Assunto: Responder com Citação

O problema que ocorreu na semana passada comigo foi somente este no arquivo enviado.

claudio.ferreira escreveu:
Bom dia Cambiaghi, segundo informações deles mesmos (e ainda nesse ano de 2013) o erro de falta de saldo com entrada e saida no mesmo arquivo ocorre quando há outros erros no mesmo arquivo e quando voce corrige os outros erros e reenvia o arquivo, o erro de falta de saldo desaparece, e de fato já vi isso acontecendo, mas também peguei uma vez ocorrendo somente esse, sem que hajam outros erros, infelizmente não guardei como prova.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
claudio.ferreira
Profissional
Profissional


Registrado: Quarta-Feira, 18 de Setembro de 2013
Mensagens: 667

MensagemEnviada: Seg Out 21, 2013 11:14 am    Assunto: Responder com Citação

Pois é, essa resposta deles não bate não..
_________________
Sistema SNGPC para farmácias
http://www.cmasistemas.com.br
Rastreabilidade de Medicamentos
https://www.sncm.com.br
Soluções em Delphi
https://delphisolutions.wordpress.com/
.
"E não sabendo que era impossível, foi lá e fez"
Mark Twain
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
magnosystem
Novato
Novato


Registrado: Sábado, 9 de Novembro de 2013
Mensagens: 5

MensagemEnviada: Sáb Nov 09, 2013 10:46 am    Assunto: Hash enviado diferente do Hash Calculado Responder com Citação

Em setembro de 2013 passamos pelo problema de hash. Aqui mesmo no fórum foi postado que o hash passou a ser em cima do arquivo zip e não mais no arquivo xml.

Isto se confirmou em um informe técnico publicado pela ANVISA em 13/11.

Pois bem, tudo voltou ao normal até esta semana. Desta vez é realmente preocupante pois já tentei várias formas de calcular o hash para chegar ao hash da ANVISA e até agora sem sucesso.

Se alguém tiver alguma luz, por favor, publique aqui. Qualquer coisa que eu descubra também vou publicar aqui.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
michelbreyer
Novato
Novato


Registrado: Terça-Feira, 1 de Dezembro de 2009
Mensagens: 25

MensagemEnviada: Seg Nov 11, 2013 7:35 am    Assunto: Re: Hash enviado diferente do Hash Calculado Responder com Citação

Bom dia,

Eu já estou enviando o hash do arquivo .zip, na sexta feira, dia 08/11/2013, vários clientes começaram a entrar em contato com a mensagem de que o hash não estava na base de dados da ANVISA. Pesquisando aqui no fórum vi que alguns colegas implementaram algo para gravar o hash que retorna da ANVISA no momento do envio da movimentação. Não faz sentido esse hash calculado por eles ser diferente, alguém já obteve alguma resposta mais concreta da ANVISA sobre o assunto ?

Att,
Michel

magnosystem escreveu:
Em setembro de 2013 passamos pelo problema de hash. Aqui mesmo no fórum foi postado que o hash passou a ser em cima do arquivo zip e não mais no arquivo xml.

Isto se confirmou em um informe técnico publicado pela ANVISA em 13/11.

Pois bem, tudo voltou ao normal até esta semana. Desta vez é realmente preocupante pois já tentei várias formas de calcular o hash para chegar ao hash da ANVISA e até agora sem sucesso.

Se alguém tiver alguma luz, por favor, publique aqui. Qualquer coisa que eu descubra também vou publicar aqui.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
magnosystem
Novato
Novato


Registrado: Sábado, 9 de Novembro de 2013
Mensagens: 5

MensagemEnviada: Seg Nov 11, 2013 10:35 am    Assunto: Responder com Citação

Pois é Michel. O que estamos fazendo é pegar o hash do aviso retornado pela ANVISA na hora do envio.

O problema é que quando a conexão com a ANVISA não está boa este aviso não é retornado.

Seria de extrema importância calcular o mesmo hash da ANVISA.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
claudio.ferreira
Profissional
Profissional


Registrado: Quarta-Feira, 18 de Setembro de 2013
Mensagens: 667

MensagemEnviada: Ter Nov 12, 2013 6:11 pm    Assunto: Responder com Citação

Calcular o Hash e passar para o web-service é o que fazemos aqui. A ANVISA recebe o arquivo porque o hash calculado está correto.

E o hash calculado e passado como parâmetro no web-service é calculado com base no arquivo .ZIP.

Porque cargas dagua eles geram o arquivo lá com outro hash diferente do que foi passado no WB ?

e se fazem assim, como calcular o HASH gerado pela ANVISA (que não é igual ao que foi passado no webservice) ?


Código:
Function CalculaHashMD5Indy (NomeArq : String) : String;
Var
     idmd5  : TIdHashMessageDigest5;
     Arq    : String;
Begin
     Arq := Rotinas.LoadFileToStr (NomeArq);
     idmd5 := TIdHashMessageDigest5.Create;
     try
       result := idmd5.AsHex(idmd5.HashValue(Arq));
     finally
       idmd5.Free;
     end;
end;

function LoadFileToStr(const FileName: TFileName): String;
var
    FileStream : TFileStream;
begin
    FileStream:= TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
    try
     if FileStream.Size>0 then
     begin
      SetLength(Result, FileStream.Size);
      FileStream.Read(Pointer(Result)^, FileStream.Size);
     end;
    finally
     FileStream.Free;
    end;
end;

_________________
Sistema SNGPC para farmácias
http://www.cmasistemas.com.br
Rastreabilidade de Medicamentos
https://www.sncm.com.br
Soluções em Delphi
https://delphisolutions.wordpress.com/
.
"E não sabendo que era impossível, foi lá e fez"
Mark Twain
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
claudio.ferreira
Profissional
Profissional


Registrado: Quarta-Feira, 18 de Setembro de 2013
Mensagens: 667

MensagemEnviada: Ter Nov 12, 2013 6:32 pm    Assunto: Responder com Citação

Tem gente aqui que sabe como faz, mas infelizmente só gostam de perguntar sobre suas dúvidas e ter suas dúvidas respondidas, na hora de responder a dúvida dos outros ficam calados.

Mas dor de barriga não dá só uma vez.. ainda mais de tratando de SNGPC e ANVISA.
_________________
Sistema SNGPC para farmácias
http://www.cmasistemas.com.br
Rastreabilidade de Medicamentos
https://www.sncm.com.br
Soluções em Delphi
https://delphisolutions.wordpress.com/
.
"E não sabendo que era impossível, foi lá e fez"
Mark Twain
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
EvertonLima
Novato
Novato


Registrado: Quarta-Feira, 13 de Novembro de 2013
Mensagens: 2

MensagemEnviada: Qua Nov 13, 2013 11:19 am    Assunto: Responder com Citação

Tentei chegar ao valor do calculo de hash realizado pela Anvisa de diversas maneiras, porém não obtive exito, alguém ai sabe o que eles aprontaram por la?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
magnosystem
Novato
Novato


Registrado: Sábado, 9 de Novembro de 2013
Mensagens: 5

MensagemEnviada: Qua Nov 13, 2013 3:17 pm    Assunto: Responder com Citação

A única coisa que notei foi com base em um teste que eu fiz aqui.

Quando XML é enviado enviamos o Arquivo zip no formato TByteDynArray. A anvisa pega o TByteDynArray e transforma de volta em arquivo zip para poder calcular o hash e processar o arquivo xml que está zipado.

Pois bem, peguei uma função na internet que transforma o Tipo TByteDynArray em TStream para assim do TStream gerar o zip de novo.

Pelo resultado do teste acredito que a ANVISA mexeu em alguma coisa por aí. Na função que eu achei na NET o arquivo voltou válido e perfeito. Consegui extrair o arquivo xml de dentro do zip normalmente. Todavia, o arquivo original gerado pelo meu programa tinha um tamanho de 600 bytes mais ou menos e o arquivo gerado de volta pela função da internet ficou com tamanho de 1200 bytes, o dobro praticamente.

Ou seja, o hash gerado é outro.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
claudio.ferreira
Profissional
Profissional


Registrado: Quarta-Feira, 18 de Setembro de 2013
Mensagens: 667

MensagemEnviada: Qua Nov 13, 2013 6:06 pm    Assunto: Responder com Citação

Recebi hoje resposta de email que enviei a eles questionando esse problema do HASH. A resposta diz que :

A fórmula de cálculo do MD5 está devidamente descrita no manual do desenvolvedor http://www.anvisa.gov.br/sngpc/manual_guia2.asp , que foi atualizado no início do mês passado para sanar as dúvidas do cálculo do MD5.

Então segundo eles o manual foi atualizado mes passado, mas ninguém ficou sabendo..

Olhei o manual e não vi mudanças em relação ao anterior a não ser em posicionamento de texto.

Texto do manual que também foi citado no email que recebi :

"No momento da transmissão do arquivo, o SNGPC irá calcular o MD5 sobre o valor da base64 do arquivo compactado. Este valor é usado para simples comparação, um valor diferente calculado pelo usuário, não impedirá a recepção do arquivo, mas é importante ser armazenado para futura consulta a situação do arquivo"


Com base nesse texto fizemos inúmeros testes (hoje), mas basicamente os testes foram esses :

1o. método de teste:

- Compactamos o arquivo XML
- Convertemos para base 64 o arquivo ZIP
- Calculamos o HASH MD5 em cima do arquivo ZIP de base 64

2o. método de teste (invertemos):
- Convertemos para base 64 o arquivo XML
- Compactamos o arquivo XML já em base64
- Calculamos o HASH MD5 em cima do arquivo ZIP

Como exemplo baixamos um arquivo do hot-site do SNGPC já transmitido cujo HASH se encontra visível no status de transmissão e aplicamos os testes.

Em nenhum dos 2 métodos conseguimos obter o HASH da ANVISA.


Aqui estão as rotinas utilizadas :

Código:
// Calcula HASH
Function CalculaHashMD5IndyTexto (Texto : String) : String;
Var
     idmd5  : TIdHashMessageDigest5;
Begin
     idmd5 := TIdHashMessageDigest5.Create;
     try
       result := idmd5.AsHex(idmd5.HashValue(Texto));
     finally
       idmd5.Free;
     end;
end;

Function EncodeBase64 (Texto : String) : String;
Var
     Encoder64 : TIDEncoderMime;
Begin
     Encoder64 := TIDEncoderMime.Create (Nil);
     Result    := Encoder64.EncodeString(Texto);
     Encoder64.Free;
End;



Concluindo :
Respondi o email deles pedindo que divulgassem exemplo em DELPHI pois muita gente que usa o DELPHI não está conseguindo resolver. Vamos aguardar para saber se eles nos atendem.

Se alguém tiver alguma idéia de outro teste possível, por favor colocar aqui.

PS : Curioso saber é que o HASH que passamos no web-service mesmo não batendo com o deles, mesmo assim o arquivo é recebido.

Grato.
_________________
Sistema SNGPC para farmácias
http://www.cmasistemas.com.br
Rastreabilidade de Medicamentos
https://www.sncm.com.br
Soluções em Delphi
https://delphisolutions.wordpress.com/
.
"E não sabendo que era impossível, foi lá e fez"
Mark Twain
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial Todos os horários são GMT - 3 Horas
Ir à página Anterior  1, 2, 3 ... , 25, 26, 27  Próximo
Página 26 de 27

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB