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 ... 12, 13, 14 ... 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
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Seg Jan 28, 2013 8:01 am    Assunto: Responder com Citação

Alguém tá conseguindo consultar os arquivos pelo webservice?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
thiagomzan
Novato
Novato


Registrado: Segunda-Feira, 21 de Janeiro de 2013
Mensagens: 13

MensagemEnviada: Seg Jan 28, 2013 12:31 pm    Assunto: Responder com Citação

Samware escreveu:
Alguém tá conseguindo consultar os arquivos pelo webservice?


Os arquivos que eu enviei pelo site estou conseguindo consultar via WebService.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Seg Jan 28, 2013 1:30 pm    Assunto: Responder com Citação

E os que enviou pelo WebService não, certo?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
thiagomzan
Novato
Novato


Registrado: Segunda-Feira, 21 de Janeiro de 2013
Mensagens: 13

MensagemEnviada: Seg Jan 28, 2013 2:50 pm    Assunto: Responder com Citação

Samware escreveu:
E os que enviou pelo WebService não, certo?


Então, sempre que tento enviar pelo webservice aparece o seguinte erro:
Código:
Erro desconhecido na inclusão do arquivo! ORA-06550: linha 1, coluna 7:
PLS-00306: número incorreto de tipos de argumentos na chamada para 'SP038_INC_RECEB_ARQUIVO'
ORA-06550: linha 1, coluna 7:
PL/SQL: Statement ignored


Mas enviando pelo site e consultando pelo hash aqui está dando certo.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Seg Jan 28, 2013 4:36 pm    Assunto: Responder com Citação

Em relação ao erro do envio, vc tentou o que eu disse nos posts anteriores?

Em relação a consulta, quando envio o arquivo pelo WebService, o hash que eu gero e o hash retornado são o mesmo. Ao ir em Status de Transmissão, o hash lá também está igual. Entretanto, ao consultar via WebService, diz que o hash não existe na base.

Quando eu somente gero o arquivo zipado em pasta, eu gero um hash. Depois vou no site e envio o arquivo, e o SNGPC faz o favor de gerar um hash diferente. Eu testei pra ver se seria o hash somente do xml, sem estar zipado, mas não é! É diferente! Não sei como eles geram... E mesmo se eu consultar usando o hash que eles geraram, não é possivel consultar, retorna o mesmo erro de que o hash não existe. Não sei como pode pra você ter dado certo e pra mim não... Alguma ideia?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
thiagomzan
Novato
Novato


Registrado: Segunda-Feira, 21 de Janeiro de 2013
Mensagens: 13

MensagemEnviada: Ter Jan 29, 2013 7:05 am    Assunto: Responder com Citação

Samware escreveu:
Em relação ao erro do envio, vc tentou o que eu disse nos posts anteriores?

Em relação a consulta, quando envio o arquivo pelo WebService, o hash que eu gero e o hash retornado são o mesmo. Ao ir em Status de Transmissão, o hash lá também está igual. Entretanto, ao consultar via WebService, diz que o hash não existe na base.

Quando eu somente gero o arquivo zipado em pasta, eu gero um hash. Depois vou no site e envio o arquivo, e o SNGPC faz o favor de gerar um hash diferente. Eu testei pra ver se seria o hash somente do xml, sem estar zipado, mas não é! É diferente! Não sei como eles geram... E mesmo se eu consultar usando o hash que eles geraram, não é possivel consultar, retorna o mesmo erro de que o hash não existe. Não sei como pode pra você ter dado certo e pra mim não... Alguma ideia?


Como que você está gerando o hash para o envio? Eu estou gerando o MD5 do XML, não é isso?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Ter Jan 29, 2013 7:20 am    Assunto: Responder com Citação

Eu to gerando do arquivo zipado, consigo enviar e validar o arquivo e tudo.. só não consulta...
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
thiagomzan
Novato
Novato


Registrado: Segunda-Feira, 21 de Janeiro de 2013
Mensagens: 13

MensagemEnviada: Ter Jan 29, 2013 8:37 am    Assunto: Responder com Citação

Samware escreveu:
Eu to gerando do arquivo zipado, consigo enviar e validar o arquivo e tudo.. só não consulta...


Opa, você poderia postar a rotina?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Ter Jan 29, 2013 9:02 am    Assunto: Responder com Citação

Código:

    // Usei o componente TZipMaster pra zipar
   
    sStream := TStringStream.Create(vtIXMLCt_msgMovimentacao.OwnerDocument.XML.GetText);
    Zip.FSpecArgs.Clear;
   // path do .zip
    Zip.ZipFilename := 'c:\nomearquivo.zip';
    Zip.ZipStream.LoadFromStream(sStream);
   // nome do arquivo dentro do .zip
    Zip.AddStreamToFile('nomearquivo.xml', 0, 0);
    if (Zip.SuccessCnt = 0) then
    begin
      Result := 'Erro compactando arquivo.';
      Exit;
    end;
         
   sHash := SuaFuncaoMd5File('nomearquivo.zip');


Implementa ai, ai tenta consultar um arquivo q vc mandou e me diz se funciona, fazendo favor.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
thiagomzan
Novato
Novato


Registrado: Segunda-Feira, 21 de Janeiro de 2013
Mensagens: 13

MensagemEnviada: Ter Jan 29, 2013 10:05 am    Assunto: Responder com Citação

Saware, bom dia.

Cara, aqui está muito estranho. Eu estou utilizando o D7 para consumir o webservice da Anvisa mas não estou conseguindo, sempre me da o mesmo erro:

Código:
Erro: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.ArgumentException: The path is not of a legal form.
   at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)
   at System.IO.Path.GetFullPathInternal(String path)
   at System.IO.Directory.Delete(String path, Boolean recursive)
   at sngpc.sngpc.getArquivoXMLFromZip(Byte[] arquivoByte, String Email, String& ValidacaoXml) in C:\inetpub\wwwroot\sngpc\webservice\sngpc.asmx.cs:line 996
   at sngpc.sngpc.EnviaArquivoSNGPC(String Email, String Senha, Byte[] Arq, String HashIdentificacao) in C:\inetpub\wwwroot\sngpc\webservice\sngpc.asmx.cs:line 734


Para qualquer operação aparece este mesmo erro até mesmo para validar o usuário. Por isso eu tentei consumir o webservice pelo PHP e deu certo, consegui validar o usuário e consultar. Então eu criei um webservice em PHP que consome o webservice da Anvisa e dessa forma consegui consumir pelo D7.

Mas au enviar o arquivo está sempre dando a mensagem:

Código:
Erro desconhecido na inclusão do arquivo! ORA-06550: linha 1, coluna 7:
PLS-00306: número incorreto de tipos de argumentos na chamada para 'SP038_INC_RECEB_ARQUIVO'
ORA-06550: linha 1, coluna 7:
PL/SQL: Statement ignored


O estranho é que está chegando tudo certo para o webservice deles, pois se coloco alguma informação errada noo XML vem a resposta, por exemplo de CPF incorreto.

Então estou muito confuso. Vou tentar instalar um Delphi mais atual para tentar consumir o webservice para ver se da certo.

Já abri um chamado na Anvisa relativo a este problema mas sabe como são, sempre 5 dias para responder e ainda por cima vem uma resposta que não tem nada a ver.

Se eu tiver alguma novidade te informo.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Ter Jan 29, 2013 10:21 am    Assunto: Responder com Citação

Ao importar o xml no delphi 7 é gerado .pas.
Nesse .pas, verifique lá em inicialization se estão todas essas linhas:

Código:

  InvRegistry.RegisterInterface(TypeInfo(sngpcSoap), 'http://tempuri.org/', 'utf-8');
  InvRegistry.RegisterDefaultSOAPAction(TypeInfo(sngpcSoap), 'http://tempuri.org/%operationName%');
  InvRegistry.RegisterInvokeOptions(TypeInfo(sngpcSoap), ioDocument);


Geralmente está faltando a última linha e pode dar esses erros loucos..
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
thiagomzan
Novato
Novato


Registrado: Segunda-Feira, 21 de Janeiro de 2013
Mensagens: 13

MensagemEnviada: Ter Jan 29, 2013 11:49 am    Assunto: Responder com Citação

Samware, tu é o cara!

Agora deu tudo certo aqui. Estou conseguindo enviar e consultar os arquivos utilizando o webservice da anvisa.

Muito, muito, muito obrigado mesmo!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Ter Jan 29, 2013 12:23 pm    Assunto: Responder com Citação

Que bom que deu certo!


E o esquema do hash, vc faz md5 do xml ou do .zip?


Aqui não consulta de jeito nenhum, não sei o que faço mais...
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
thiagomzan
Novato
Novato


Registrado: Segunda-Feira, 21 de Janeiro de 2013
Mensagens: 13

MensagemEnviada: Ter Jan 29, 2013 12:30 pm    Assunto: Responder com Citação

Samware escreveu:
Que bom que deu certo!
E o esquema do hash, vc faz md5 do xml ou do .zip?
Aqui não consulta de jeito nenhum, não sei o que faço mais...


Então, o Hash de envio eu gerei do Zip mesmo mas esse não é o mesmo que deve utilizar para consultar depois.
Quando você envia o arquivo o webservice te retorna um Hash do envio e é este que deve ser utilizado para fazer a consulta posteriormente.

Estou fazendo a seguinte rotina quando envio:
Código:
//enviando o arquivo para o webservice//
            Resultado := GetsngpcSoap().EnviaArquivoSNGPC(Email,Senha,FileData,Hash);

            TeladeEspera(False,'','');

            //verificando se o arquivo foi enviado com sucesso//
            if Copy(Resultado,1,28) = 'Arquivo recebido com sucesso' then
            begin
               Dm.cdsXML.Edit;
               Dm.cdsXML.FieldByName('str_hash').AsString := Copy(Resultado,Length(Resultado) - 31,32);
               Dm.cdsXML.Post;
               Dm.cdsXML.ApplyUpdates(0);
            end;


Tente utilizar desta forma para ver se da certo. Caso não dê certo, posta ai a rotina.

Abraços!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Samware
Novato
Novato


Registrado: Segunda-Feira, 27 de Dezembro de 2010
Mensagens: 39

MensagemEnviada: Ter Jan 29, 2013 12:42 pm    Assunto: Responder com Citação

O hash que eu gero é exatamente igual ao hash retornado na mensagem.
No ambiente web, também apresenta o arquivo com o hash igual.

Simplesmente consulto assim:

Código:

    sRes := SNGPC.ConsultaDadosArquivoSNGPC(AEmail, ASenha, ACNPJ, AHashArquivo);

    // Se achar essa TAG, retorno é xml
    if (Pos('<transmissaoSNGPC>', sRes) > 0) then
    begin
    ...
    end;


Sendo a variavel AHashArquivo igual ao hash que gerei, hash retornado e hash que está no ambiente web do sngpc...
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
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 ... 12, 13, 14 ... 25, 26, 27  Próximo
Página 13 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