ricardo.medeiros
Membros-
Total de ítens
5 -
Registro em
-
Última visita
Contact Methods
-
Website URL
http://www.cbninfo.com.br
ricardo.medeiros's Achievements
-
[ RESOLVIDO ] Retorno Web Service CC-e
ricardo.medeiros replied to ricardo.medeiros's tópico in ACBrNFe
Então, a demo está apenas um evento por lote, não é? Vou fazer isso então. Apenas um evento por lote. -
[ RESOLVIDO ] Retorno Web Service CC-e
ricardo.medeiros replied to ricardo.medeiros's tópico in ACBrNFe
Olha amigo, esse é o XML de retorno do Web Service. Propriedade RetornoWS da classe TWebServiceBase. (Ignore a identação que eu fiz meio que na mão aqui porque peguei o valor direto do campo no debug do delphi.) ' 41 1.00 182PR-Evt-1_1_541128Lote de Evento Processado 2 PR-Evt-1_1_5 41 135Evento registrado e vinculado a NF-e 41120701934032000127550000000000301000000300 110110 Carta de Correção 6 2012-07-27T14:31:55-03:00 141120000898963 ' Engraçado que só tem mesmo 1 evento, sendo que no XML de envio gerado pelo componentes tinha os dois que eu criei pelo sistema. Caso for problema no webservice mesmo, qual seria uma solução plausível? Criar uma conscistência para o usuário adicionar apenas um evento por lote? Sei que isso não cabe a vocês, mas o que vocês fariam no meu caso. Minha empresa só atende essa fábrica, então só vamos trabalhar com o Web Service do Paraná mesmo. -
[ RESOLVIDO ] Retorno Web Service CC-e
ricardo.medeiros replied to ricardo.medeiros's tópico in ACBrNFe
Obrigado, vou verificar mesmo. Eu cheguei a ver esse post, mas a data parecia ser antiga e a solução parece que foi atualizar os componentes, por isso criei este. Vou debugar aqui, já posto o resultado. -
[ RESOLVIDO ] Retorno Web Service CC-e
ricardo.medeiros replied to ricardo.medeiros's tópico in ACBrNFe
Obrigado, mas em relação a minha dúvida. Alguém pode me ajudar? -
Bom dia galera, não sei se postei no lugar correto mas vamos lá. Estou finalizando a implementação da CC-e utilizando o componente do AcBR, o AcBRNFe. Está tudo OK, porém quando envio um lote com mais de um evento, ao pegar o retorno do segundo evento do lote ele dá erro IndexOfBound, que é estouro de lista. Como se não houvesse mais de um evento no retorno do lote. O Web Service é do Paraná e os componentes estão atualizados, hoje mesmo atualizei. Segue o meu código fonte: { Setando e gravando os dados do XML de retorno pelo objeto do AcBR } { Salvando os dados de retorno do lote } Lote.Retorno.Stat := IntToStr( self.AcbrNfe.WebServices.CartaCorrecao.CCeRetorno.cStat ); Lote.Retorno.Motivo := self.AcbrNfe.WebServices.CartaCorrecao.CCeRetorno.xMotivo; Lote.Retorno.Save; for nX := 0 to ( Lote.Eventos.Count - 1 ) do begin { Salvando os dados de retorno dos eventos } Lote.Eventos.Items[nX].CriaRetorno; Lote.Eventos.Items[nX].Retorno.Stat := IntToStr( self.AcbrNfe.WebServices.CartaCorrecao.CCeRetorno.retEvento.Items[nX].RetInfEvento.cStat ); Lote.Eventos.Items[nX].Retorno.Motivo := self.AcbrNfe.WebServices.CartaCorrecao.CCeRetorno.retEvento.Items[nX].RetInfEvento.xMotivo; Lote.Eventos.Items[nX].Retorno.Save; { Salvando o XML no banco de dados } Lote.Eventos.Items[nX].Retorno.CriaXML; if Assigned( Lote.Eventos.Items[nX].Retorno.XML ) then begin XMLStream := nil; try XMLStream := TStringStream.Create( self.AcbrNfe.WebServices.CartaCorrecao.CCeRetorno.retEvento.Items[nX].RetInfEvento.XML ); Lote.Eventos.Items[nX].Retorno.XML.CriaStream; Lote.Eventos.Items[nX].Retorno.XML.XML.LoadFromStream( XMLStream ); Lote.Eventos.Items[nX].Retorno.XML.Save; finally if Assigned( XMLStream ) then begin XMLStream.Free; XMLStream := nil; end; end; end; end; O erro ocorre na linha: Lote.Eventos.Items[nX].Retorno.Stat := IntToStr( self.AcbrNfe.WebServices.CartaCorrecao.CCeRetorno.retEvento.Items[nX].RetInfEvento.cStat ); Como se não houvesse essa posição na lista. O Count() da lista de eventos (retEvento) só retorna 1, como se houvesse apenas 1 evento, quando na verdade há dois. Desde já agradeço pessoal.