/// <summary> /// Metodo para ler e processar o arquivo de retorno /// </summary> /// <param name="b"><see cref="Model.Banco"/> vinculado ao arquivo</param> /// <param name="s">stream do arquivo a ser lido</param> /// <param name="tipo">informa o tipo do cnab a ser lido</param> /// <returns></returns> public bool lerArquivoRetorno(Model.Banco b, Stream s, TipoArquivo tipo) { try { IArquivoRetorno cnab = null; var banco = new BoletoNet.Banco(b.Numero); switch (tipo) { case TipoArquivo.CNAB400: cnab = new ArquivoRetornoCNAB400(); cnab.LerArquivoRetorno(banco, s); return(salvarArquivo400(b, (ArquivoRetornoCNAB400)cnab, s)); break; case TipoArquivo.CNAB240: cnab = new ArquivoRetornoCNAB240(); cnab.LerArquivoRetorno(banco, s); return(salvarArquivo240(b, (ArquivoRetornoCNAB240)cnab)); break; default: break; } return(false); } catch (Exception ex) { throw new Exception("Erro ao ler o arquivo de retorno.", ex.InnerException); } }
public AbstractArquivoRetorno(TipoArquivo tipoArquivo) { switch (tipoArquivo) { case TipoArquivo.CNAB240: _arquivoRetorno = new ArquivoRetornoCNAB240(); _arquivoRetorno.LinhaDeArquivoLida += new EventHandler<LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB240); break; case TipoArquivo.CNAB400: _arquivoRetorno = new ArquivoRetornoCNAB400(); _arquivoRetorno.LinhaDeArquivoLida += new EventHandler<LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB400); break; default: throw new NotImplementedException("Arquivo não implementado."); } }
public AbstractArquivoRetorno(TipoArquivo tipoArquivo) { switch (tipoArquivo) { case TipoArquivo.CNAB240: _arquivoRetorno = new ArquivoRetornoCNAB240(); _arquivoRetorno.LinhaDeArquivoLida += new EventHandler <LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB240); break; case TipoArquivo.CNAB400: _arquivoRetorno = new ArquivoRetornoCNAB400(); _arquivoRetorno.LinhaDeArquivoLida += new EventHandler <LinhaDeArquivoLidaArgs>(ArquivoRemessa_LinhaDeArquivoLidaCNAB400); break; default: throw new NotImplementedException("Arquivo não implementado."); } }
public AbstractArquivoRetorno(TipoArquivo tipoArquivo) { switch (tipoArquivo) { case TipoArquivo.CNAB240: _arquivoRetorno = new ArquivoRetornoCNAB240(); _arquivoRetorno.LinhaDeArquivoLida += ArquivoRemessa_LinhaDeArquivoLidaCNAB240; break; case TipoArquivo.CNAB400: _arquivoRetorno = new ArquivoRetornoCNAB400(); _arquivoRetorno.LinhaDeArquivoLida += ArquivoRemessa_LinhaDeArquivoLidaCNAB400; break; case TipoArquivo.CBR643: _arquivoRetorno = new ArquivoRetornoCrb643(); break; default: throw new NotImplementedException("Arquivo não implementado."); } }