Erro Farmácia Popular Processo de Pesquisa de Transações

Delphi

07/07/2011

Olá para todos.

Estou com um grande problema quando vou realizar o processo de pesquisa de transações no WebService do DataSys, estou utilizando o seguinte código:

var
  wDataSUS     : ServicoSolicitacaoWS ;
  Autorizacao  : RetornoPesquisaDTO;
  Usuario      : UsuarioFarmaciaDTO;
  Pesquisa     : PesquisaDTO;
  medicamentos : arrayofitempesquisadto;
  datai,dataf  : TDate;
  i            : integer;
begin
   application.CreateForm(tpesquisa_web, pesquisa_web);
   pesquisa_web.showmodal;
   datai := pesquisa_web.DateTimePicker1.Date;
   dataf := pesquisa_web.DateTimePicker2.Date;
   pesquisa_web.Release;
   pesquisa_web := nil;
   if acao = false then exit;
   modulos.qrfunc.Open;
   modulos.qrfunc.Locate('codigo',modulos.qrfuncCODIGO.AsString,[]);
   if ini_ambiente = 1 then begin
      HTTPRIO1.URL := 'https://200.214.130.41:9443/farmaciahomologa/services/ServicoSolicitacaoWS';
      HTTPRIO1.WSDLLocation := 'https://200.214.130.41:9443/farmaciahomologa/services/ServicoSolicitacaoWS?wsdl';
   end
   else begin
      HTTPRIO1.URL := 'https://200.214.130.55:9443/farmaciapopular/services/ServicoSolicitacaoWS';
      HTTPRIO1.WSDLLocation := 'https://200.214.130.55:9443/farmaciapopular/services/ServicoSolicitacaoWS?wsdl';
   end;
   HTTPRIO1.Service := 'ServicoSolicitacaoWSService';
   HTTPRIO1.Port := 'ServicoSolicitacaoWS';

   wDaTaSUS := HTTPRIO1 AS ServicoSolicitacaoWS ;
   Usuario := UsuarioFarmaciaDTO.Create;
   Usuario.usuarioFarmacia := ini_farm_codigo;
   Usuario.senhaFarmacia := ini_farm_senha ;
   Usuario.usuarioVendedor := trim(corrige(modulos.qrfunccpf.asstring));
   Usuario.senhaVendedor:= trim(modulos.qrfuncACESSO_FPOP.asstring);
   Pesquisa := PesquisaDTO.Create;
   Pesquisa.nuCnpj := corrige(modulos.qrempresacnpj.asstring);
   Pesquisa.dataInicio := TXSDateTime.Create;
   Pesquisa.dataInicio.AsDateTime := datai;
   Pesquisa.dataFim := TXSDateTime.Create;
   Pesquisa.dataFim.AsDateTime := dataf;
   Pesquisa.numeroPagina := 1;
   Pesquisa.statusTransacao := '2F';
   Pesquisa.nuCnpjMatriz := corrige(modulos.qrempresacnpj.asstring);


   Autorizacao := RetornoPesquisaDTO.Create;
   Autorizacao.arrItemPesquisaDTO := medicamentos;
   Autorizacao := wDataSUS.pesquisarAutorizacoes(Pesquisa,Usuario);


   if ((Autorizacao.codigoRetorno = '00P') or (Autorizacao.codigoRetorno = '01P')) then begin
      relatorio('LIMPA');
      relatorio('CAB');
      relatorio('<BR><B>Relatório de Autorizações - Farmácia Popular</B><br>');
      relatorio('Período: '+formatdatetime('dd/mm/yyyy',datai)+' a '+formatdatetime('dd/mm/yyyy',dataf)+'<br><br><br>');
      relatorio('Pesquisa realizada com sucesso.<bR>');
      relatorio('<table border =1>');
      relatorio('<tr><td>'+Autorizacao.arrItemPesquisaDTO[1].nuCpf+'</td></tr>');
      relatorio(Autorizacao.mensagemRetorno);

      for I := 0 to Length(Autorizacao.arrItemPesquisaDTO)-1 do
         if Assigned(Autorizacao.arrItemPesquisaDTO[I]) then begin
            relatorio(autorizacao.arrItemPesquisaDTO[I].nuCupomFiscal+'<br>');
            Autorizacao.arrItemPesquisaDTO[I].Free;
         end;

      relatorio('SALVA');
   end
   else begin
      relatorio('LIMPA');
      relatorio('CAB');
      relatorio('<BR><B>Relatório de Autorizações - Farmácia Popular</B><br>');
      relatorio('Período: '+formatdatetime('dd/mm/yyyy',datai)+' a '+formatdatetime('dd/mm/yyyy',dataf)+'<br><br><br>');
      relatorio(Autorizacao.codigoRetorno+'-'+Autorizacao.mensagemRetorno);
      relatorio('SALVA');
   end;

Sempre que vai realizar a consulta ao webservice para pesquisar as Autorizações, está me retornando o seguinte erro:

br.gov.datasus.farmaciapopular.modelo.excecao.DAOException: java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer-

Já pesquisei e realizei vários testes, se deixar de passar alguma parametro no Pesquisa até que retorna as mensagens de erro do webservices, mas quando mando tudo certinho, dá, esse erro de JAVA. Já gastei todas as minhas opções, se alguém tiver uma idéia para me ajudar, fico muito agradecido.


Yomega Software

Yomega Software

Curtidas 0

Respostas

Jean Peixoto

Jean Peixoto

07/07/2011

Boa tarde amigo,   Estou recebendo este mesmo erro q vc esta recebendo:   br.gov.datasus.farmaciapopular.modelo.excecao.DAOException: java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer   Ja descobriu o que é?    
GOSTEI 0
Paulo Vitor

Paulo Vitor

07/07/2011

Também estou na mesma situação, alguém descobriu ?
GOSTEI 0
José

José

07/07/2011

Este tópico esta sendo fechado por inatividade. Se necessário, sinalizar para que seja reaberto ou abrir um novo.
GOSTEI 0
POSTAR