Olá,
Estou emitindo/consultando/cancelando para Barueri / SP com sucesso.
O Provedor de Barueri, funciona de maneira assíncrona.
Após enviar o provedor retorna o protocolo de recebimento. Esse protocolo vc deve armazena-lo para realizar as posteriores consultas.
Depois de executar o ACBrNFSeX.Emitir();
Para pegar o protocolo gerado pelo provedor:
ACBrNFSeX.WebService.Emite.Protocolo;
Após o envio, vc precisa consultar a situação do RPS, pra validar se o provedor processou ou não o RPS.
Para consultar use:
ProtocoloEnvio := ACBrNFSeX.WebService.Emite.Protocolo;
ACBrNFSeX.ConsultarSituacao(ProtocoloEnvio);
Essa consulta retorna se o provedor processou ou não o RPS enviado, vc pode pegar o resultado em: ACBrNFSeX.WebService.ConsultaSituacao
Veja tbm o ACBrNFSeX.WebService.ConsultaSituacao.Situacao
0 = Arquivo Validado
1 = Arquivo Importado
2 = Arquivo com Erros
-1 = Em Processamento
-2 = Aguardando Processamento
Após essa Consulta o provedor retorna o protocolo atualizado, se ocorrer erro no processamento o provedor adicionar .ERR no protocolo.
ProtocoloConsulta := ACBrNFSeX.WebService.ConsultaSituacao.Protocolo
Esse novo protocolo vc vai usar como entrada para o metodo ConsultarLoteRps, que vai retornar o XML ou os detalhes dos erros.
Então, com o protocolo resultante do ConsultarSituacao, utilize pra consultar o lote:
ACBrNFSeX.ConsultarLoteRps(ProtocoloConsulta);
Nessa consulta o provedor retorna o XML ou os erros. Pegue o resultado em:
ACBrNFSeX.WebService.ConsultaLoteRps
ACBrNFSeX.WebService.ConsultaLoteRps.Erros