Ir para conteúdo
  • Cadastre-se

ivantgm

Membros
  • Total de ítens

    27
  • Registro em

  • Última visita

Tudo que ivantgm postou

  1. Italo, grato pela rápida resposta. Sim, existe a linha com o Add, mas ela esta fora do while, então, caso exista mais de uma NFS na lista, o índice acessado na segunda interação do while será 1, e não foi adicionado esse item na lista. Bem, pelo menos foi assim que entendi. Como disse acima, devo estar fazendo algo errado. Após alterar o código como postado acima, consegui sucesso com a operação, inclusive acabei de verificar os retornos obtidos, e os XMLs foram todos retornados corretamente. Note que funcionava quando o lote contem 1 RPS. O erro acontece qdo o lote contém N RPS
  2. Senhores, bom dia Estou utilizando o componente para consumir o provedor fiorilli. Tudo tem funcionado perfeitamente! Porém, ao utilizar a função ACBrNFSe.EnviarSincrono() para enviar um lote contendo mais de um RPS, gera um except "list index out of bounds 1". Certamente devo estar fazendo algo errado. Analisando o código do componente, cheguei no seguinte ponto: pnfsGerarNfseResposta.pas (227) function TGerarretNfse.LerXml: boolean; Nesta função tem um while que extrai a lista de NFS retornadas, e para cada NFS encontrada é incrementada a variável "i", só que não é dado um Add em ListaNfse.FCompNfse dentro do while. Para testar, adicionei a seguinte linha de código, como segue (linha 261): if leitor.rExtrai(2, 'ListaNfse') <> '' then begin while (Leitor.rExtrai(3, 'CompNfse', '', i + 1) <> '') or (Leitor.rExtrai(3, 'ComplNfse', '', i + 1) <> '') do begin // Grupo da TAG <Nfse> ************************************************* if Leitor.rExtrai(4, 'Nfse') <> '' then begin if(i<>0)then // linha adiciona por ivantgm em 08/05/2014 ListaNfse.FCompNfse.Add; // linha adiciona por ivantgm em 08/05/2014 // alterado por joel takei 04/07/2013 ListaNfse.FCompNfse[i].FNfse.XML := Leitor.rExtrai(4, 'Nfse'); Com esta alteração aparentemente funcionou. Minha dúvida: Para enviar um lote com mais de um RPS pode-se utilizar a função ACBrNFSe.EnviarSincrono()?
×
×
  • 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.