public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); try { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(22, 29); objRetornar.ContaCobranca = linha.ExtrairValorDaLinha(29, 29); objRetornar.CodigoDoDocumentoEmpresa = linha.ExtrairValorDaLinha(38, 62); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 70); // Brancos (71-107) objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); objRetornar.CodigoOriginalRemessa = linha.ExtrairValorDaLinha(135, 136); objRetornar.CodigoOcorrencia1 = linha.ExtrairValorDaLinha(137, 139); objRetornar.CodigoOcorrencia2 = linha.ExtrairValorDaLinha(140, 142); objRetornar.CodigoOcorrencia3 = linha.ExtrairValorDaLinha(143, 145); // Brancos (146-146) objRetornar.DataDeVencimento = (DateTime)linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal() / 100; objRetornar.ValorJurosAtraso = linha.ExtrairValorDaLinha(202, 214).BoletoBrToDecimal() / 100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; // Multa também é considerada objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; // Brancos (295-295) objRetornar.DataDeCredito = (DateTime)linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa(); objRetornar.NomeSacado = linha.ExtrairValorDaLinha(302, 337); objRetornar.IdentificadorComplemento = linha.ExtrairValorDaLinha(338, 338); objRetornar.UnidadeValorMoedaCorrente = linha.ExtrairValorDaLinha(339, 340); objRetornar.ValorTituloOutraUnidadeValor = linha.ExtrairValorDaLinha(341, 353).BoletoBrToDecimal() / 100; objRetornar.ValorIOCOutraUnidadeValor = linha.ExtrairValorDaLinha(354, 366).BoletoBrToDecimal() / 100; objRetornar.ValorDoDebitoCredito = linha.ExtrairValorDaLinha(367, 379).BoletoBrToDecimal() / 100; objRetornar.IndicativoDebitoCredito = linha.ExtrairValorDaLinha(380, 380); // Brancos (381-391) objRetornar.Versao = linha.ExtrairValorDaLinha(392, 394).BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); } catch (Exception ex) { throw new ArgumentException("O arquivo selecionado possui um formato inválido ou não corresponde a conta bancária escolhida", ex); } }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linhaProcessar) { var objRetornar = new DetalheRetornoCnab400(); var linha = linhaProcessar; objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.CodigoDeInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(4, 17).BoletoBrToInt(); // Posição 18-18 "0" objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(19, 22).BoletoBrToInt(); objRetornar.SubConta = linha.ExtrairValorDaLinha(23, 24).BoletoBrToInt(); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(25, 35); // Posição 36-36 Origem do pagamento // Posição 37-37 brancos objRetornar.SeuNumero = linha.ExtrairValorDaLinha(38, 62); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 73); //Data limite para desconto-2 074 079 //Valor do desconto-2 a conceder 080 090 //Data limite para desconto-3 091 096 //Valor do desconto-3 a conceder 097 107 objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.DataDeCredito = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); /* Data de ocorrencia a mesma de crédito pois não possui data para crédito */ objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126).BoletoBrToStringSafe(); if (objRetornar.NossoNumero.BoletoBrToStringSafe().BoletoBrToInt() == 0) { objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 137); //Número atribuído pelo Banco } //Uso do Banco 138 146 if (linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa() != null) { objRetornar.DataDeVencimento = (DateTime)linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); } objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToStringSafe().BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToStringSafe().BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorIof = linha.ExtrairValorDaLinha(176, 186).BoletoBrToDecimal() / 100; //Uso do Banco 189 227 objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; //Uso do Banco 280 301 //Complemento da Ocorrência 302 303 //Indicativo de crédito 304 304 //Uso do Banco 305 388 //Número sequencial do //Aviso de //Movimentação //da Cobrança 389 393 //Tipo de moeda 394 394 objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt() }; if (objRetornar.CodigoDoRegistro == 1) { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.IdentificacaoEmpresaNoBanco = linha.ExtrairValorDaLinha(21, 37); objRetornar.NumeroControle = linha.ExtrairValorDaLinha(38, 62); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(71, 82); objRetornar.IndicadorRateioCredito = linha.ExtrairValorDaLinha(105, 105); objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 116).ToDateTimeFromDdMmAa()); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); // 127 a 146 - Identificação do Título no Banco (Nosso Número) // Mesmo nosso número informado nas posições 71 a 82 do registro de transação. objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 146); objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(147, 152).ToDateTimeFromDdMmAa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorDespesas = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal() / 100; objRetornar.ValorJurosAtraso = linha.ExtrairValorDaLinha(202, 214).BoletoBrToDecimal() / 100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.MotivoCodigoOcorrencia = linha.ExtrairValorDaLinha(295, 295); objRetornar.DataDeCredito = Convert.ToDateTime(linha.ExtrairValorDaLinha(296, 301).ToDateTimeFromDdMmAa()); objRetornar.OrigemPagamento = linha.ExtrairValorDaLinha(302, 304).BoletoBrToInt(); objRetornar.Cheque = linha.ExtrairValorDaLinha(315, 318); objRetornar.MotivoCodigoRejeicao = linha.ExtrairValorDaLinha(319, 328); objRetornar.NumeroCartorio = linha.ExtrairValorDaLinha(369, 370).BoletoBrToInt(); objRetornar.NumeroProtocolo = linha.ExtrairValorDaLinha(371, 380); objRetornar.NumeroConvenio = linha.ExtrairValorDaLinha(381, 394).Trim().BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); } if (objRetornar.CodigoDoRegistro == 3) { ObterRegistrosDetalheRateio(linha); } return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); // Zeros objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(24, 28); objRetornar.DacAgenciaConta = linha.ExtrairValorDaLinha(29, 29).BoletoBrToInt(); // Brancos objRetornar.CodigoDoDocumentoEmpresa = linha.ExtrairValorDaLinha(38, 62); objRetornar.CodigoDoDocumentoBanco = linha.ExtrairValorDaLinha(63, 70); // Brancos objRetornar.NumeroCarteira = linha.ExtrairValorDaLinha(83, 85).BoletoBrToInt(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(86, 93); objRetornar.DacNossoNumero = linha.ExtrairValorDaLinha(94, 94).BoletoBrToInt(); // Brancos objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); // Brancos objRetornar.DataDeVencimento = (DateTime)linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; // Brancos objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; // Multa também é considerada objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.IndicadorBoletoDDA = linha.ExtrairValorDaLinha(293, 293); // Brancos objRetornar.DataDeCredito = linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa().Equals(null) ? new DateTime(0001, 01, 01) : (DateTime)linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa(); objRetornar.CodigoInstrucaoCancelada = linha.ExtrairValorDaLinha(302, 305).BoletoBrToInt(); // Brancos // Zeros objRetornar.NomeSacado = linha.ExtrairValorDaLinha(325, 354); // Brancos objRetornar.MensagemInformativa = linha.ExtrairValorDaLinha(378, 385); // Brancos objRetornar.CodigoFormaPagamento = linha.ExtrairValorDaLinha(393, 394); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); // Zeros objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(24, 28); objRetornar.DacAgenciaConta = linha.ExtrairValorDaLinha(29, 29).BoletoBrToInt(); // Brancos objRetornar.CodigoDoDocumentoEmpresa = linha.ExtrairValorDaLinha(38, 62); objRetornar.CodigoDoDocumentoBanco = linha.ExtrairValorDaLinha(63, 70); // Brancos objRetornar.NumeroCarteira = linha.ExtrairValorDaLinha(83, 85).BoletoBrToInt(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(86, 93); objRetornar.DacNossoNumero = linha.ExtrairValorDaLinha(94, 94).BoletoBrToInt(); // Brancos objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime) linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); // Brancos objRetornar.DataDeVencimento = (DateTime) linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal()/100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal()/100; // Brancos objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal()/100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal()/100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal()/100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal()/100; // Multa também é considerada objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal()/100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal()/100; objRetornar.IndicadorBoletoDDA = linha.ExtrairValorDaLinha(293, 293); // Brancos objRetornar.DataDeCredito = linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa().Equals(null) ? new DateTime(0001, 01, 01) : (DateTime)linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa(); objRetornar.CodigoInstrucaoCancelada = linha.ExtrairValorDaLinha(302, 305).BoletoBrToInt(); // Brancos // Zeros objRetornar.NomeSacado = linha.ExtrairValorDaLinha(325, 354); // Brancos objRetornar.MensagemInformativa = linha.ExtrairValorDaLinha(378, 385); // Brancos objRetornar.CodigoFormaPagamento = linha.ExtrairValorDaLinha(393, 394); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return objRetornar; }
/// <summary> /// Cód. Registro: 2 /// Registro: DETALHE /// Descrição: Tipo de Cobrança Simples Carteira 17 /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheAuxiliarCobrancaPartilhadaCarteira17(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), NossoNumero = linha.ExtrairValorDaLinha(2, 18), BancoParaCredito1 = linha.ExtrairValorDaLinha(19, 21).BoletoBrToInt(), CamaraCompensacao1 = linha.ExtrairValorDaLinha(22, 24).BoletoBrToInt(), AgenciaParaCredito1 = linha.ExtrairValorDaLinha(25, 28).BoletoBrToInt(), DvAgenciaParaCredito1 = linha.ExtrairValorDaLinha(29, 29), ContaParaCredito1 = linha.ExtrairValorDaLinha(30, 40).BoletoBrToLong(), DvContaParaCredito1 = linha.ExtrairValorDaLinha(41, 41), NomeFavorecido1 = linha.ExtrairValorDaLinha(42, 71), ValorInformadoPartilha1 = linha.ExtrairValorDaLinha(72, 84).BoletoBrToDecimal() / 100, ValorEfetivamentePartilhado1 = linha.ExtrairValorDaLinha(85, 97).BoletoBrToDecimal() / 100, BancoParaCredito2 = linha.ExtrairValorDaLinha(98, 100).BoletoBrToInt(), CamaraCompensacao2 = linha.ExtrairValorDaLinha(101, 103).BoletoBrToInt(), AgenciaParaCredito2 = linha.ExtrairValorDaLinha(104, 107).BoletoBrToInt(), DvAgenciaParaCredito2 = linha.ExtrairValorDaLinha(108, 108), ContaParaCredito2 = linha.ExtrairValorDaLinha(109, 119).BoletoBrToLong(), DvContaParaCredito2 = linha.ExtrairValorDaLinha(120, 120), NomeFavorecido2 = linha.ExtrairValorDaLinha(121, 150), ValorInformadoPartilha2 = linha.ExtrairValorDaLinha(151, 163).BoletoBrToDecimal() / 100, ValorEfetivamentePartilhado2 = linha.ExtrairValorDaLinha(164, 176).BoletoBrToDecimal() / 100, BancoParaCredito3 = linha.ExtrairValorDaLinha(177, 179).BoletoBrToInt(), CamaraCompensacao3 = linha.ExtrairValorDaLinha(180, 182).BoletoBrToInt(), AgenciaParaCredito3 = linha.ExtrairValorDaLinha(183, 186).BoletoBrToInt(), DvAgenciaParaCredito3 = linha.ExtrairValorDaLinha(187, 187), ContaParaCredito3 = linha.ExtrairValorDaLinha(188, 198).BoletoBrToLong(), DvContaParaCredito3 = linha.ExtrairValorDaLinha(199, 199), NomeFavorecido3 = linha.ExtrairValorDaLinha(200, 229), ValorInformadoPartilha3 = linha.ExtrairValorDaLinha(230, 242).BoletoBrToDecimal() / 100, ValorEfetivamentePartilhado3 = linha.ExtrairValorDaLinha(243, 255).BoletoBrToDecimal() / 100, BancoParaCredito4 = linha.ExtrairValorDaLinha(256, 258).BoletoBrToInt(), CamaraCompensacao4 = linha.ExtrairValorDaLinha(259, 261).BoletoBrToInt(), AgenciaParaCredito4 = linha.ExtrairValorDaLinha(262, 265).BoletoBrToInt(), DvAgenciaParaCredito4 = linha.ExtrairValorDaLinha(266, 266), ContaParaCredito4 = linha.ExtrairValorDaLinha(267, 277).BoletoBrToLong(), DvContaParaCredito4 = linha.ExtrairValorDaLinha(278, 278), NomeFavorecido4 = linha.ExtrairValorDaLinha(279, 308), ValorInformadoPartilha4 = linha.ExtrairValorDaLinha(309, 321).BoletoBrToDecimal() / 100, ValorEfetivamentePartilhado4 = linha.ExtrairValorDaLinha(322, 334).BoletoBrToDecimal() / 100, TipoInscricaoFavorecido1 = linha.ExtrairValorDaLinha(335, 335).BoletoBrToInt(), NumeroInscricaoFavorecido1 = linha.ExtrairValorDaLinha(336, 349).BoletoBrToInt(), TipoInscricaoFavorecido2 = linha.ExtrairValorDaLinha(350, 350).BoletoBrToInt(), NumeroInscricaoFavorecido2 = linha.ExtrairValorDaLinha(351, 364).BoletoBrToInt(), TipoInscricaoFavorecido3 = linha.ExtrairValorDaLinha(365, 365).BoletoBrToInt(), NumeroInscricaoFavorecido3 = linha.ExtrairValorDaLinha(366, 379).BoletoBrToInt(), TipoInscricaoFavorecido4 = linha.ExtrairValorDaLinha(380, 380).BoletoBrToInt(), NumeroInscricaoFavorecido4 = linha.ExtrairValorDaLinha(381, 394).BoletoBrToInt(), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(22, 29); objRetornar.ContaCobranca = linha.ExtrairValorDaLinha(29, 29); objRetornar.CodigoDoDocumentoEmpresa = linha.ExtrairValorDaLinha(38, 62); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 70); // Brancos (71-107) objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); objRetornar.CodigoOriginalRemessa = linha.ExtrairValorDaLinha(135, 136); objRetornar.CodigoOcorrencia1 = linha.ExtrairValorDaLinha(137, 139); objRetornar.CodigoOcorrencia2 = linha.ExtrairValorDaLinha(140, 142); objRetornar.CodigoOcorrencia3 = linha.ExtrairValorDaLinha(143, 145); // Brancos (146-146) objRetornar.DataDeVencimento = (DateTime)linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal()/100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal()/100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal()/100; objRetornar.ValorJurosAtraso = linha.ExtrairValorDaLinha(202, 214).BoletoBrToDecimal()/100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal()/100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal()/100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal()/100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal()/100; // Multa também é considerada objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal()/100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal()/100; // Brancos (295-295) objRetornar.DataDeCredito = (DateTime)linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa(); objRetornar.NomeSacado = linha.ExtrairValorDaLinha(302, 337); objRetornar.IdentificadorComplemento = linha.ExtrairValorDaLinha(338, 338); objRetornar.UnidadeValorMoedaCorrente = linha.ExtrairValorDaLinha(339, 340); objRetornar.ValorTituloOutraUnidadeValor = linha.ExtrairValorDaLinha(341, 353).BoletoBrToDecimal()/100; objRetornar.ValorIOCOutraUnidadeValor = linha.ExtrairValorDaLinha(354, 366).BoletoBrToDecimal()/100; objRetornar.ValorDoDebitoCredito = linha.ExtrairValorDaLinha(367, 379).BoletoBrToDecimal()/100; objRetornar.IndicativoDebitoCredito = linha.ExtrairValorDaLinha(380, 380); // Brancos (381-391) objRetornar.Versao = linha.ExtrairValorDaLinha(392, 394).BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return objRetornar; }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(22, 30).BoletoBrToInt(); /* * 1 – Cobrança Simples (8050.76) * 3 – Cobrança Caucionada (8150.55) Reservado * 4 – Cobrança em IGPM (8450.94) * * 5 – Cobrança Caucionada CGB Especial (8355.01) Reservado * 6 – Cobrança Simples Seguradora (8051.57) * 7 – Cobrança em UFIR (8257.86) * * 8 – Cobrança em IDTR (8356.84) * */ objRetornar.SeuNumero = linha.ExtrairValorDaLinha(38, 62); //objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 72); //objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(73, 82); objRetornar.TipoCobranca = linha.ExtrairValorDaLinha(108, 108).BoletoBrToInt(); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToStringSafe().BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).BoletoBrToStringSafe().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); // Brancos objRetornar.DataDeVencimento = linha.ExtrairValorDaLinha(147, 152).BoletoBrToStringSafe().ToDateTimeFromDdMmAa() ?? DateTime.MinValue; objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido += objRetornar.ValorTarifa; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.DataDeCredito = linha.ExtrairValorDaLinha(296, 301).BoletoBrToStringSafe().ToDateTimeFromDdMmAa().Equals(null) ? new DateTime(0001, 01, 01) : (DateTime)linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa(); objRetornar.MotivoDaOcorrencia = linha.ExtrairValorDaLinha(383, 392).BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
/// <summary> /// Cód. Registro: 5 /// Registro: DETALHE /// Descrição: Bloqueto por e-mail /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheBloquetoEmail(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3), EnderecosEmail = linha.ExtrairValorDaLinha(6, 142), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt() }; if (objRetornar.CodigoDoRegistro == 1) { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.IdentificacaoEmpresaNoBanco = linha.ExtrairValorDaLinha(21, 37); objRetornar.NumeroControle = linha.ExtrairValorDaLinha(38, 62); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(71, 82); objRetornar.IndicadorRateioCredito = linha.ExtrairValorDaLinha(105, 105); objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 116).ToDateTimeFromDdMmAa()); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); // 127 a 146 - Identificação do Título no Banco (Nosso Número) // Mesmo nosso número informado nas posições 71 a 82 do registro de transação. objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 146); objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(147, 152).ToDateTimeFromDdMmAa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal()/100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorDespesas = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal()/100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal()/100; objRetornar.ValorJurosAtraso = linha.ExtrairValorDaLinha(202, 214).BoletoBrToDecimal()/100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal()/100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal()/100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal()/100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal()/100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal()/100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal()/100; objRetornar.MotivoCodigoOcorrencia = linha.ExtrairValorDaLinha(295, 295); objRetornar.DataDeCredito = Convert.ToDateTime(linha.ExtrairValorDaLinha(296, 301).ToDateTimeFromDdMmAa()); objRetornar.OrigemPagamento = linha.ExtrairValorDaLinha(302, 304).BoletoBrToInt(); objRetornar.Cheque = linha.ExtrairValorDaLinha(315, 318); objRetornar.MotivoCodigoRejeicao = linha.ExtrairValorDaLinha(319, 328); objRetornar.NumeroCartorio = linha.ExtrairValorDaLinha(369, 370).BoletoBrToInt(); objRetornar.NumeroProtocolo = linha.ExtrairValorDaLinha(371, 380); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); } if (objRetornar.CodigoDoRegistro == 3) ObterRegistrosDetalheRateio(linha); return objRetornar; }
/// <summary> /// Cód. Registro: 5 /// Registro: DETALHE /// Descrição: Número do título do cedente com 15 posições /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheDadosTitulo(string linha) { // Registro Opcional var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3), NumeroTituloCedente = linha.ExtrairValorDaLinha(6, 20), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linhaProcessar) { var objRetornar = new DetalheRetornoCnab400(); var linha = linhaProcessar; objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.CodigoDeInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(4, 17).BoletoBrToInt(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 22).BoletoBrToInt(); objRetornar.SubConta = linha.ExtrairValorDaLinha(23, 24).BoletoBrToInt(); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(25, 35); // Posição 36-37 brancos objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(38, 53); // Alterado de 'objRetornar.CodigoDoDocumentoEmpresa' para NumeroDocumento // Posição 54 branco objRetornar.CodigoDePostagem = linha.ExtrairValorDaLinha(55, 55).BoletoBrToInt(); // Posição 56-62 brancos objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 78); // Alterado de 'objRetornar.CodigoDoDocumentoBanco' para NossoNumero // Posição 79-82 brancos objRetornar.DataDeCredito = (DateTime)linha.ExtrairValorDaLinha(83, 88).ToString().ToDateTimeFromDdMmAa(); objRetornar.Moeda = linha.ExtrairValorDaLinha(89, 89).BoletoBrToInt(); // Posição 90-107 brancos objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.SeuNumero = linha.ExtrairValorDaLinha(117, 122).BoletoBrToStringSafe(); objRetornar.MotivoDaOcorrencia = linha.ExtrairValorDaLinha(123, 131).BoletoBrToInt(); // Posição 132-146 brancos objRetornar.DataDeVencimento = (DateTime)linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorIof = linha.ExtrairValorDaLinha(176, 186).BoletoBrToDecimal() / 100; // Posição 187-240 brancos objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.Constante = linha.ExtrairValorDaLinha(280, 280).BoletoBrToInt(); objRetornar.QuantidadeMoeda = linha.ExtrairValorDaLinha(281, 293).BoletoBrToInt(); objRetornar.CotacaoMoeda = linha.ExtrairValorDaLinha(294, 308).BoletoBrToDecimal() / 100; objRetornar.StatusDaParcela = linha.ExtrairValorDaLinha(309, 309).BoletoBrToInt(); objRetornar.IdentificadorLancamentoConta = linha.ExtrairValorDaLinha(310, 315).BoletoBrToInt(); // Posição 316-341 brancos objRetornar.TipoLiquidacao = linha.ExtrairValorDaLinha(342, 342).BoletoBrToInt(); objRetornar.OrigemDaTarifa = linha.ExtrairValorDaLinha(343, 343).BoletoBrToInt(); // Posição 344-394 brancos objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { try { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 70); //objRetornar.MotivoDaOcorrencia = linha.ExtrairValorDaLinha(103, 104).BoletoBrToInt(); //objRetornar.MotivoCodigoRejeicao = linha.ExtrairValorDaLinha(105, 107); objRetornar.NumeroCarteira = linha.ExtrairValorDaLinha(83, 85).BoletoBrToInt(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(86, 94); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(95, 107); objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 116).ToDateTimeFromDdMmAa()); objRetornar.DataLiquidacao = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 116).ToDateTimeFromDdMmAa()); objRetornar.SeuNumero = linha.ExtrairValorDaLinha(117, 126); if (objRetornar.NumeroDocumento.BoletoBrToStringSafe().Trim().Length == 0) { objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); } objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(147, 152).ToDateTimeFromDdMmAa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.Moeda = linha.ExtrairValorDaLinha(377, 377).BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); } catch (Exception) { throw; } }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linhaProcessar) { var objRetornar = new DetalheRetornoCnab400(); var linha = linhaProcessar; objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.CodigoDeInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(4, 17).BoletoBrToInt(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 22).BoletoBrToInt(); objRetornar.SubConta = linha.ExtrairValorDaLinha(23, 24).BoletoBrToInt(); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(25, 35); // Posição 36-37 brancos objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(38, 53); // Alterado de 'objRetornar.CodigoDoDocumentoEmpresa' para NumeroDocumento // Posição 54 branco objRetornar.CodigoDePostagem = linha.ExtrairValorDaLinha(55, 55).BoletoBrToInt(); // Posição 56-62 brancos objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 78); // Alterado de 'objRetornar.CodigoDoDocumentoBanco' para NossoNumero // Posição 79-82 brancos objRetornar.DataDeCredito = (DateTime) linha.ExtrairValorDaLinha(83, 88).ToString().ToDateTimeFromDdMmAa(); objRetornar.Moeda = linha.ExtrairValorDaLinha(89, 89).BoletoBrToInt(); // Posição 90-107 brancos objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime) linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.SeuNumero = linha.ExtrairValorDaLinha(117, 122).BoletoBrToStringSafe(); objRetornar.MotivoDaOcorrencia = linha.ExtrairValorDaLinha(123, 131).BoletoBrToInt(); // Posição 132-146 brancos objRetornar.DataDeVencimento = (DateTime) linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorIof = linha.ExtrairValorDaLinha(176, 186).BoletoBrToDecimal() / 100; // Posição 187-240 brancos objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.Constante = linha.ExtrairValorDaLinha(280, 280).BoletoBrToInt(); objRetornar.QuantidadeMoeda = linha.ExtrairValorDaLinha(281, 293).BoletoBrToInt(); objRetornar.CotacaoMoeda = linha.ExtrairValorDaLinha(294, 308).BoletoBrToDecimal() / 100; objRetornar.StatusDaParcela = linha.ExtrairValorDaLinha(309, 309).BoletoBrToInt(); objRetornar.IdentificadorLancamentoConta = linha.ExtrairValorDaLinha(310, 315).BoletoBrToInt(); // Posição 316-341 brancos objRetornar.TipoLiquidacao = linha.ExtrairValorDaLinha(342, 342).BoletoBrToInt(); objRetornar.OrigemDaTarifa = linha.ExtrairValorDaLinha(343, 343).BoletoBrToInt(); // Posição 344-394 brancos objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return objRetornar; }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { try { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.IdentificacaoEmpresaNoBanco = linha.ExtrairValorDaLinha(18, 31); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 71); objRetornar.MotivoDaOcorrencia = linha.ExtrairValorDaLinha(103, 104).BoletoBrToInt(); objRetornar.MotivoCodigoRejeicao = linha.ExtrairValorDaLinha(105, 107); objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 116).ToDateTimeFromDdMmAa()); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 135); objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(147, 152).ToDateTimeFromDdMmAa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal() / 100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.Moeda = linha.ExtrairValorDaLinha(293, 295).BoletoBrToInt(); objRetornar.DataDeCredito = Convert.ToDateTime(linha.ExtrairValorDaLinha(296, 301).ToDateTimeFromDdMmAa()); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(308, 321).BoletoBrToInt(); objRetornar.IndicadorBoletoDDA = linha.ExtrairValorDaLinha(322, 322); objRetornar.OrigemPagamento = linha.ExtrairValorDaLinha(323, 324).BoletoBrToInt(); objRetornar.SeuNumero = linha.ExtrairValorDaLinha(377, 391); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); } catch (Exception) { throw; } }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linhaProcessar) { var objRetornar = new DetalheRetornoCnab400(); var linha = linhaProcessar; objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.CodigoDeInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(4, 17).BoletoBrToInt(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(22, 27).BoletoBrToInt(); objRetornar.IdEmissao = linha.ExtrairValorDaLinha(28, 28).BoletoBrToInt(); objRetornar.IdPostagem = linha.ExtrairValorDaLinha(29, 29).BoletoBrToInt(); // Uso Exclusivo CAIXA (30 - 31) objRetornar.UsoDaEmpresa = linha.ExtrairValorDaLinha(32, 56); objRetornar.ModalidadeNossoNumero = linha.ExtrairValorDaLinha(57, 58).BoletoBrToInt(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(59, 73); objRetornar.CodigoRejeicao = linha.ExtrairValorDaLinha(80, 82).BoletoBrToInt(); objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(107, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); // Uso Exclusivo CAIXA (127 - 146) objRetornar.DataDeVencimento = (DateTime)linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; objRetornar.CodigoBaixaTitulo = linha.ExtrairValorDaLinha(189, 191).BoletoBrToInt(); objRetornar.CodigoFormaPagamento = linha.ExtrairValorDaLinha(192, 192); objRetornar.FloatNegociado = linha.ExtrairValorDaLinha(193, 194).BoletoBrToInt(); objRetornar.DataDebitoTarifa = (DateTime)linha.ExtrairValorDaLinha(195, 200).ToString().ToDateTimeFromDdMmAa(); // Uso Exclusivo CAIXA (201 - 214) objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorMulta = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.Moeda = linha.ExtrairValorDaLinha(293, 293).BoletoBrToInt(); objRetornar.DataDeCredito = (DateTime)linha.ExtrairValorDaLinha(294, 299).ToString().ToDateTimeFromDdMmAa(); // Uso Exclusivo CAIXA (300 - 394) objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linhaProcessar) { var objRetornar = new DetalheRetornoCnab400(); var linha = linhaProcessar; objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.CodigoDeInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(4, 17).BoletoBrToInt(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(22, 27).BoletoBrToInt(); objRetornar.IdEmissao = linha.ExtrairValorDaLinha(28, 28).BoletoBrToInt(); objRetornar.IdPostagem = linha.ExtrairValorDaLinha(29, 29).BoletoBrToInt(); // Uso Exclusivo CAIXA (30 - 31) objRetornar.UsoDaEmpresa = linha.ExtrairValorDaLinha(32, 56); objRetornar.ModalidadeNossoNumero = linha.ExtrairValorDaLinha(57, 58).BoletoBrToInt(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(59, 73); objRetornar.CodigoRejeicao = linha.ExtrairValorDaLinha(80, 82).BoletoBrToInt(); objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(107, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime) linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); // Uso Exclusivo CAIXA (127 - 146) objRetornar.DataDeVencimento = (DateTime) linha.ExtrairValorDaLinha(147, 152).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal()/100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 173).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal()/100; objRetornar.CodigoBaixaTitulo = linha.ExtrairValorDaLinha(189, 191).BoletoBrToInt(); objRetornar.CodigoFormaPagamento = linha.ExtrairValorDaLinha(192, 192); objRetornar.FloatNegociado = linha.ExtrairValorDaLinha(193, 194).BoletoBrToInt(); objRetornar.DataDebitoTarifa = (DateTime) linha.ExtrairValorDaLinha(195, 200).ToString().ToDateTimeFromDdMmAa(); // Uso Exclusivo CAIXA (201 - 214) objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal()/100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal()/100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal()/100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal()/100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal()/100; objRetornar.ValorMulta = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal()/100; objRetornar.Moeda = linha.ExtrairValorDaLinha(293, 293).BoletoBrToInt(); objRetornar.DataDeCredito = (DateTime) linha.ExtrairValorDaLinha(294, 299).ToString().ToDateTimeFromDdMmAa(); // Uso Exclusivo CAIXA (300 - 394) objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return objRetornar; }
/// <summary> /// Cód. Registro: 5 /// Registro: DETALHE /// Descrição: Dados do cheque utilizado para liquidação de título /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheDadosCheque(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3), NossoNumero17Posicoes = linha.ExtrairValorDaLinha(6, 22), DataPagamento = linha.ExtrairValorDaLinha(23, 30).BoletoBrToInt(), ValorCheque = linha.ExtrairValorDaLinha(45, 59).BoletoBrToDecimal() / 100, PrazoBloqueioCheque = linha.ExtrairValorDaLinha(60, 62).BoletoBrToInt(), MotivoDevolucaoCheque = linha.ExtrairValorDaLinha(66, 68).BoletoBrToInt(), TrilhaDoCheque = linha.ExtrairValorDaLinha(70, 103), TipoCaptura = linha.ExtrairValorDaLinha(104, 104), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.CodigoDeInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToInt(); // Brancos objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(22, 22); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(23, 30); objRetornar.DvContaCorrente = linha.ExtrairValorDaLinha(31, 31); objRetornar.CodigoDoBeneficiario = linha.ExtrairValorDaLinha(32, 45).BoletoBrToInt(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(46, 62); // Brancos objRetornar.CodigoMovimento = linha.ExtrairValorDaLinha(109, 110).ToString(); objRetornar.DataLiquidacao = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); // Brancos objRetornar.DataDeVencimento = linha.ExtrairValorDaLinha(147, 152).BoletoBrToStringSafe().ToDateTimeFromDdMmAa() ?? DateTime.MinValue; objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; // Brancos objRetornar.DataPrevistaLancamentoConta = linha.ExtrairValorDaLinha(176, 181).BoletoBrToStringSafe().ToDateTimeFromDdMmAa(); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(182, 188).BoletoBrToDecimal() / 100; /*Despesas de cobrança*/ // Brancos objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.SeuNumero = linha.ExtrairValorDaLinha(280, 305); // Brancos objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(306, 318).BoletoBrToDecimal() / 100; // Brancos objRetornar.ComplementoMovimento = linha.ExtrairValorDaLinha(319, 326); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(327, 328).BoletoBrToInt(); // Brancos objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoCarteiraSicredi = linha.ExtrairValorDaLinha(2, 2); // Brancos objRetornar.TipoCobrancaSicredi = linha.ExtrairValorDaLinha(14, 14); objRetornar.CodigoDoPagadorNaCooperativa = linha.ExtrairValorDaLinha(15, 19); objRetornar.CodigoDoPagadorNoAssociado = linha.ExtrairValorDaLinha(20, 24); objRetornar.IndicadorBoletoDDA = linha.ExtrairValorDaLinha(25, 25); // Brancos objRetornar.NossoNumero = linha.ExtrairValorDaLinha(48, 62); // Brancos objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).ToString().BoletoBrToInt(); objRetornar.MotivoCodigoOcorrencia = linha.ExtrairValorDaLinha(109, 110).ToString(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).ToString().ToDateTimeFromDdMmAa(); objRetornar.SeuNumero = linha.ExtrairValorDaLinha(117, 126); // Brancos objRetornar.DataDeVencimento = linha.ExtrairValorDaLinha(147, 152).BoletoBrToStringSafe().ToDateTimeFromDdMmAa() ?? DateTime.MinValue; objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; // Brancos objRetornar.Especie = linha.ExtrairValorDaLinha(175, 175); objRetornar.ValorDespesas = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; /*Despesas de cobrança*/ objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal() / 100; /* Despesas de custas de protesto*/ // Brancos objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorMulta = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; // Brancos objRetornar.CodigoOcorrencia1 = linha.ExtrairValorDaLinha(295, 295); // Brancos objRetornar.MotivoDaOcorrencia = linha.ExtrairValorDaLinha(319, 328).BoletoBrToInt(); objRetornar.DataPrevistaLancamentoConta = linha.ExtrairValorDaLinha(329, 336).BoletoBrToStringSafe().ToDateTimeFromAaaaMmDd(); objRetornar.DataDeCredito = objRetornar.DataPrevistaLancamentoConta.GetValueOrDefault(); // Brancos objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
/// <summary> /// Cód. Registro: 3 /// Registro: DETALHE /// Descrição: Tipo de Cobrança Vendor /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheCobrancaVendor(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), NossoNumero = linha.ExtrairValorDaLinha(2, 12), DvNossoNumero = linha.ExtrairValorDaLinha(13, 13), NumeroOperacaoBBVendor = linha.ExtrairValorDaLinha(14, 22).BoletoBrToLong(), DataOperacaoBBVendor = Convert.ToDateTime(linha.ExtrairValorDaLinha(23, 30).ToDateTimeFromDdMmAa()), TaxaJurosVendedor = linha.ExtrairValorDaLinha(31, 35).BoletoBrToInt() / 1000, TaxaJurosComprador = linha.ExtrairValorDaLinha(36, 40).BoletoBrToInt() / 1000, ValorTituloVencimento = linha.ExtrairValorDaLinha(41, 55).BoletoBrToDecimal() / 100, ValorOriginal = linha.ExtrairValorDaLinha(56, 70).BoletoBrToDecimal() / 100, ValorEncargosComprador = linha.ExtrairValorDaLinha(71, 85).BoletoBrToDecimal() / 100, ValorIofFinanciado = linha.ExtrairValorDaLinha(86, 100).BoletoBrToDecimal() / 100, ValorAcumuladoAbatimento = linha.ExtrairValorDaLinha(101, 115).BoletoBrToDecimal() / 100, IndicativoEpocaEqualizacao = linha.ExtrairValorDaLinha(116, 116).BoletoBrToInt(), IndicativoNaturezaEqualizacao = linha.ExtrairValorDaLinha(117, 117).BoletoBrToInt(), ValorEqualizacao = linha.ExtrairValorDaLinha(118, 132).BoletoBrToDecimal() / 100, ValorJurosProrrogacao = linha.ExtrairValorDaLinha(133, 147).BoletoBrToDecimal() / 100, ValorIofProrrogacao = linha.ExtrairValorDaLinha(148, 162).BoletoBrToDecimal() / 100, ValorIofPeriodoAtraso = linha.ExtrairValorDaLinha(163, 177).BoletoBrToDecimal() / 100, NomeComprador = linha.ExtrairValorDaLinha(178, 214), TipoInscricaoComprador = linha.ExtrairValorDaLinha(215, 215).BoletoBrToInt(), NumeroInscricaoComprador = linha.ExtrairValorDaLinha(216, 229).BoletoBrToLong(), TipoConversaoCnab240 = linha.ExtrairValorDaLinha(230, 231).BoletoBrToInt(), NossoNumero17Posicoes = linha.ExtrairValorDaLinha(232, 248), NovoValorTitulo = linha.ExtrairValorDaLinha(249, 263).BoletoBrToDecimal() / 100, ValorEqualizacaoEstornada = linha.ExtrairValorDaLinha(264, 278).BoletoBrToDecimal() / 100, ValorNovaEqualizacao = linha.ExtrairValorDaLinha(279, 293).BoletoBrToDecimal() / 100, ValorDiferencaEqualizacao = linha.ExtrairValorDaLinha(294, 308).BoletoBrToDecimal() / 100, IndicativoDebitoCreditoCampo25 = linha.ExtrairValorDaLinha(309, 309).BoletoBrToInt(), IndicativoNaturezaEqualizacao1 = linha.ExtrairValorDaLinha(310, 310).BoletoBrToInt(), IndicativoNaturezaEqualizacao2 = linha.ExtrairValorDaLinha(311, 311).BoletoBrToInt(), ValorIofNaoFinanciado = linha.ExtrairValorDaLinha(312, 326).BoletoBrToDecimal() / 100, ValorComissaoPermanencia = linha.ExtrairValorDaLinha(327, 341).BoletoBrToDecimal() / 100 }; return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); // Agencia possui apenas 3 digitos if (string.IsNullOrWhiteSpace(linha.ExtrairValorDaLinha(36, 36).BoletoBrToStringSafe())) { var numeroConvenio = linha.ExtrairValorDaLinha(18, 29).BoletoBrToStringSafe(); objRetornar.NumeroConvenio = numeroConvenio.BoletoBrToStringSafe().PadLeft(13, '0'); objRetornar.CodigoAgenciaCedente = numeroConvenio.ExtrairValorDaLinha(1, 3).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = numeroConvenio.ExtrairValorDaLinha(4, 12).BoletoBrToInt(); } else { var numeroConvenio = linha.ExtrairValorDaLinha(18, 30).BoletoBrToStringSafe(); objRetornar.NumeroConvenio = numeroConvenio.BoletoBrToStringSafe(); objRetornar.CodigoAgenciaCedente = numeroConvenio.ExtrairValorDaLinha(1, 4).BoletoBrToInt(); objRetornar.CodigoDoBeneficiario = numeroConvenio.ExtrairValorDaLinha(5, 13).BoletoBrToInt(); } /* * 1 – Cobrança Simples (8050.76) * 3 – Cobrança Caucionada (8150.55) Reservado * 4 – Cobrança em IGPM (8450.94) * * 5 – Cobrança Caucionada CGB Especial (8355.01) Reservado * 6 – Cobrança Simples Seguradora (8051.57) * 7 – Cobrança em UFIR (8257.86) * * 8 – Cobrança em IDTR (8356.84) * */ objRetornar.SeuNumero = linha.ExtrairValorDaLinha(38, 62); //objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 72); //objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(73, 82); objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108).BoletoBrToStringSafe(); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToStringSafe().BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).BoletoBrToStringSafe().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); // Brancos objRetornar.DataDeVencimento = linha.ExtrairValorDaLinha(147, 152).BoletoBrToStringSafe().ToDateTimeFromDdMmAa() ?? DateTime.MinValue; objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.TaxaBoleto = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; // Valor do título – Descontos + Outros recebimentos – Abatimentos – Outras despesas objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; /* O valor da tarifa não é descontado do valor pago * Valor do título – Descontos + Outros recebimentos – Abatimentos – Outras despesas * O valor de "Outras despesas" é diferente de "Despesas de cobrança" * * objRetornar.ValorLiquidoRecebido += objRetornar.ValorTarifa; */ objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.DataDeCredito = linha.ExtrairValorDaLinha(296, 301).BoletoBrToStringSafe().ToDateTimeFromDdMmAa().Equals(null) ? new DateTime(0001, 01, 01) : (DateTime)linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa(); objRetornar.MotivoDaOcorrencia = linha.ExtrairValorDaLinha(383, 392).BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); try { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); // Zeros objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(24, 28); objRetornar.DacAgenciaConta = linha.ExtrairValorDaLinha(29, 29).BoletoBrToInt(); // Brancos objRetornar.CodigoDoDocumentoEmpresa = linha.ExtrairValorDaLinha(38, 62); objRetornar.CodigoDoDocumentoBanco = linha.ExtrairValorDaLinha(63, 70); // Brancos objRetornar.NumeroCarteira = linha.ExtrairValorDaLinha(83, 85).BoletoBrToInt(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(86, 93); objRetornar.DacNossoNumero = linha.ExtrairValorDaLinha(94, 94).BoletoBrToInt(); // Brancos objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(108, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).BoletoBrToStringSafe().ToDateTimeFromDdMmAa(); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(127, 134); // Brancos objRetornar.DataDeVencimento = linha.ExtrairValorDaLinha(147, 152).BoletoBrToStringSafe().ToDateTimeFromDdMmAa() ?? DateTime.MinValue; objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(176, 188).BoletoBrToDecimal() / 100; // Brancos objRetornar.ValorIof = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorPrincipal = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; // Multa também é considerada objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.IndicadorBoletoDDA = linha.ExtrairValorDaLinha(293, 293); //Estamos considerando o fato do Itaú sempre somar a tarifa de cobrança do boleto ao valor pago //Caso esta condição seja alterada será necessário customizar isso com campos específicos na carteira //Conforme conversado -> Sidney e Marcelo em 31/10/2019 if (objRetornar.ValorDoTituloParcela < (objRetornar.ValorTarifa + objRetornar.ValorJurosAtraso + objRetornar.ValorJurosDeMora)) { objRetornar.ValorLiquidoRecebido *= -1; //turns a negative number because the tax is bigger than original value } objRetornar.ValorLiquidoRecebido += objRetornar.ValorTarifa; // Brancos objRetornar.DataDeCredito = linha.ExtrairValorDaLinha(296, 301).BoletoBrToStringSafe().ToDateTimeFromDdMmAa().Equals(null) ? new DateTime(0001, 01, 01) : (DateTime)linha.ExtrairValorDaLinha(296, 301).ToString().ToDateTimeFromDdMmAa(); objRetornar.CodigoInstrucaoCancelada = linha.ExtrairValorDaLinha(302, 305).BoletoBrToInt(); // Brancos // Zeros objRetornar.NomeSacado = linha.ExtrairValorDaLinha(325, 354); // Brancos objRetornar.MensagemInformativa = linha.ExtrairValorDaLinha(378, 385); // Brancos objRetornar.CodigoFormaPagamento = linha.ExtrairValorDaLinha(393, 394); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); } catch (Exception ex) { throw new ArgumentException("O arquivo selecionado possui um formato inválido ou não corresponde a conta bancária escolhida", ex); } return(objRetornar); }
/// <summary> /// Cód. Registro: 7 /// Registro: DETALHE /// Descrição: Informações do título /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3) }; // Detalhe Geral if (objRetornar.CodigoDoRegistro == 7) { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); // Zeros // Zeros objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.DvAgenciaCedente = linha.ExtrairValorDaLinha(22, 22); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(23, 30); objRetornar.DvContaCorrente = linha.ExtrairValorDaLinha(31, 31); objRetornar.NumeroConvenio = linha.ExtrairValorDaLinha(32, 38).BoletoBrToInt().BoletoBrToStringSafe(); objRetornar.NumeroControle = linha.ExtrairValorDaLinha(39, 63); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(64, 80); objRetornar.TipoCobranca = linha.ExtrairValorDaLinha(81, 81).BoletoBrToInt(); objRetornar.TipoCobrancaCmd17 = linha.ExtrairValorDaLinha(82, 82).BoletoBrToInt(); objRetornar.DiasCalculo = linha.ExtrairValorDaLinha(83, 86).BoletoBrToInt(); objRetornar.NaturezaRecebimento = linha.ExtrairValorDaLinha(87, 88).BoletoBrToInt(); objRetornar.PrefixoTitulo = linha.ExtrairValorDaLinha(89, 91); objRetornar.VariacaoCarteira = linha.ExtrairValorDaLinha(92, 94).BoletoBrToInt(); objRetornar.ContaCaucao = linha.ExtrairValorDaLinha(95, 95).BoletoBrToInt(); // PICTURE 9(005) - Taxa de desconto é composta por 5 números objRetornar.TaxaDesconto = linha.ExtrairValorDaLinha(96, 100).BoletoBrToInt() / 1000; objRetornar.TaxaIof = linha.ExtrairValorDaLinha(101, 105).BoletoBrToInt() / 100; // Brancos objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(107, 108); /* Comando e o mesmo de ocorrencia */ objRetornar.Comando = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataLiquidacao = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 116).ToDateTimeFromDdMmAa()); /* Titulo dado pelo cedente mesmo numero do documento */ objRetornar.TituloDadoCedente = linha.ExtrairValorDaLinha(117, 126); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); // Brancos objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(147, 152).ToDateTimeFromDdMmAa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.DataDeCredito = Convert.ToDateTime(linha.ExtrairValorDaLinha(176, 181).ToDateTimeFromDdMmAa()); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(182, 188).BoletoBrToDecimal() / 100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDesconto = linha.ExtrairValorDaLinha(202, 214).BoletoBrToDecimal() / 100; objRetornar.ValorIofDesconto = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosRecebimentos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimentosNaoAproveitado = linha.ExtrairValorDaLinha(293, 305).BoletoBrToDecimal() / 100; objRetornar.ValorLancamento = linha.ExtrairValorDaLinha(306, 318).BoletoBrToDecimal() / 100; objRetornar.IndicativoDebitoCredito = linha.ExtrairValorDaLinha(319, 319); objRetornar.IndicadorValor = linha.ExtrairValorDaLinha(320, 320).BoletoBrToInt(); objRetornar.ValorAjuste = linha.ExtrairValorDaLinha(321, 332).BoletoBrToDecimal() / 100; // Brancos e Zeros específicos para cobrança compartilhada objRetornar.BrancosIndicadorConvenio = linha.ExtrairValorDaLinha(333, 333); objRetornar.BrancosValorPagoTitulo = linha.ExtrairValorDaLinha(334, 342).BoletoBrToDecimal() / 100; objRetornar.ZerosNumeroPrimeiroConvenio = linha.ExtrairValorDaLinha(343, 349).BoletoBrToLong(); objRetornar.ZerosValorPrimeiroConvenio = linha.ExtrairValorDaLinha(350, 358).BoletoBrToDecimal() / 100; objRetornar.ZerosNumeroSegundoConvenio = linha.ExtrairValorDaLinha(359, 365).BoletoBrToLong(); objRetornar.ZerosValorSegundoConvenio = linha.ExtrairValorDaLinha(366, 374).BoletoBrToDecimal() / 100; objRetornar.ZerosNumeroTerceiroConvenio = linha.ExtrairValorDaLinha(375, 381).BoletoBrToLong(); objRetornar.ZerosValorTerceiroConvenio = linha.ExtrairValorDaLinha(382, 390).BoletoBrToDecimal() / 100; objRetornar.AutorizacaoLiquidacaoParcial = linha.ExtrairValorDaLinha(391, 391).BoletoBrToInt(); // Brancos objRetornar.MeioApresentacaoTituloAoSacado = linha.ExtrairValorDaLinha(393, 394).BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); } // Detalhe Cobrança Partilhada Carteira 17 if (objRetornar.CodigoDoRegistro == 2) { ObterRegistrosDetalheAuxiliarCobrancaPartilhadaCarteira17(linha); } // Detalhe Cobrança Vendor if (objRetornar.CodigoDoRegistro == 3) { ObterRegistrosDetalheCobrancaVendor(linha); } // Detalhe Bloqueto por E-mail if (objRetornar.CodigoDoRegistro == 5 && objRetornar.CodigoDoServico == "01") { ObterRegistrosDetalheBloquetoEmail(linha); } // Detalhe Dados do cheque utilizado para liquidação de título if (objRetornar.CodigoDoRegistro == 5 && objRetornar.CodigoDoServico == "04") { ObterRegistrosDetalheDadosCheque(linha); } // Detalhe Número do título do cedente com 15 posições (OPCIONAL) if (objRetornar.CodigoDoRegistro == 5 && objRetornar.CodigoDoServico == "06") { ObterRegistrosDetalheDadosTitulo(linha); } return(objRetornar); }
/// <summary> /// Cód. Registro: 7 /// Registro: DETALHE /// Descrição: Informações do título /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3) }; // Detalhe Geral if (objRetornar.CodigoDoRegistro == 7) { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); // Zeros // Zeros objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.DvAgenciaCedente = linha.ExtrairValorDaLinha(22, 22); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(23, 30); objRetornar.DvContaCorrente = linha.ExtrairValorDaLinha(31, 31); objRetornar.NumeroConvenio = linha.ExtrairValorDaLinha(32, 38).BoletoBrToInt(); objRetornar.NumeroControle = linha.ExtrairValorDaLinha(39, 63); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(64, 80); objRetornar.TipoCobranca = linha.ExtrairValorDaLinha(81, 81).BoletoBrToInt(); objRetornar.TipoCobrancaCmd17 = linha.ExtrairValorDaLinha(82, 82).BoletoBrToInt(); objRetornar.DiasCalculo = linha.ExtrairValorDaLinha(83, 86).BoletoBrToInt(); objRetornar.NaturezaRecebimento = linha.ExtrairValorDaLinha(87, 88).BoletoBrToInt(); objRetornar.PrefixoTitulo = linha.ExtrairValorDaLinha(89, 91); objRetornar.VariacaoCarteira = linha.ExtrairValorDaLinha(92, 94).BoletoBrToInt(); objRetornar.ContaCaucao = linha.ExtrairValorDaLinha(95, 95).BoletoBrToInt(); // PICTURE 9(005) - Taxa de desconto é composta por 5 números objRetornar.TaxaDesconto = linha.ExtrairValorDaLinha(96, 100).BoletoBrToInt()/1000; objRetornar.TaxaIof = linha.ExtrairValorDaLinha(101, 105).BoletoBrToInt()/100; // Brancos objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(107, 108); objRetornar.Comando = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataLiquidacao = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 116).ToDateTimeFromDdMmAa()); objRetornar.TituloDadoCedente = linha.ExtrairValorDaLinha(117, 126); // Brancos objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(147, 152).ToDateTimeFromDdMmAa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal()/100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.DataDeCredito = Convert.ToDateTime(linha.ExtrairValorDaLinha(176, 181).ToDateTimeFromDdMmAa()); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(182, 188).BoletoBrToDecimal()/100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal()/100; objRetornar.ValorJurosDesconto = linha.ExtrairValorDaLinha(202, 214).BoletoBrToDecimal()/100; objRetornar.ValorIofDesconto = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal()/100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal()/100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal()/100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal()/100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal()/100; objRetornar.ValorOutrosRecebimentos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal()/100; objRetornar.ValorAbatimentosNaoAproveitado = linha.ExtrairValorDaLinha(293, 305).BoletoBrToDecimal()/100; objRetornar.ValorLancamento = linha.ExtrairValorDaLinha(306, 318).BoletoBrToDecimal()/100; objRetornar.IndicativoDebitoCredito = linha.ExtrairValorDaLinha(319, 319); objRetornar.IndicadorValor = linha.ExtrairValorDaLinha(320, 320).BoletoBrToInt(); objRetornar.ValorAjuste = linha.ExtrairValorDaLinha(321, 332).BoletoBrToDecimal()/100; // Brancos e Zeros específicos para cobrança compartilhada objRetornar.BrancosIndicadorConvenio = linha.ExtrairValorDaLinha(333, 333); objRetornar.BrancosValorPagoTitulo = linha.ExtrairValorDaLinha(334, 342).BoletoBrToDecimal()/100; objRetornar.ZerosNumeroPrimeiroConvenio = linha.ExtrairValorDaLinha(343, 349).BoletoBrToLong(); objRetornar.ZerosValorPrimeiroConvenio = linha.ExtrairValorDaLinha(350, 358).BoletoBrToDecimal()/100; objRetornar.ZerosNumeroSegundoConvenio = linha.ExtrairValorDaLinha(359, 365).BoletoBrToLong(); objRetornar.ZerosValorSegundoConvenio = linha.ExtrairValorDaLinha(366, 374).BoletoBrToDecimal()/100; objRetornar.ZerosNumeroTerceiroConvenio = linha.ExtrairValorDaLinha(375, 381).BoletoBrToLong(); objRetornar.ZerosValorTerceiroConvenio = linha.ExtrairValorDaLinha(382, 390).BoletoBrToDecimal()/100; objRetornar.AutorizacaoLiquidacaoParcial = linha.ExtrairValorDaLinha(391, 391).BoletoBrToInt(); // Brancos objRetornar.MeioApresentacaoTituloAoSacado = linha.ExtrairValorDaLinha(393, 394).BoletoBrToInt(); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); } // Detalhe Cobrança Partilhada Carteira 17 if (objRetornar.CodigoDoRegistro == 2) ObterRegistrosDetalheAuxiliarCobrancaPartilhadaCarteira17(linha); // Detalhe Cobrança Vendor if (objRetornar.CodigoDoRegistro == 3) ObterRegistrosDetalheCobrancaVendor(linha); // Detalhe Bloqueto por E-mail if (objRetornar.CodigoDoRegistro == 5 && objRetornar.CodigoDoServico == "01") ObterRegistrosDetalheBloquetoEmail(linha); // Detalhe Dados do cheque utilizado para liquidação de título if (objRetornar.CodigoDoRegistro == 5 && objRetornar.CodigoDoServico == "04") ObterRegistrosDetalheDadosCheque(linha); // Detalhe Número do título do cedente com 15 posições (OPCIONAL) if (objRetornar.CodigoDoRegistro == 5 && objRetornar.CodigoDoServico == "06") ObterRegistrosDetalheDadosTitulo(linha); return objRetornar; }
/// <summary> /// Cód. Registro: 5 /// Registro: DETALHE /// Descrição: Número do título do cedente com 15 posições /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheDadosTitulo(string linha) { // Registro Opcional var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3), NumeroTituloCedente = linha.ExtrairValorDaLinha(6, 20), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return objRetornar; }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400(); objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); objRetornar.CodigoAgenciaCedente = linha.ExtrairValorDaLinha(18, 21).BoletoBrToInt(); objRetornar.DvAgenciaCedente = linha.ExtrairValorDaLinha(22, 22); objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(23, 30); objRetornar.DacAgenciaConta = linha.ExtrairValorDaLinha(31, 31).BoletoBrToInt(); objRetornar.NumeroConvenio = linha.ExtrairValorDaLinha(32, 37).BoletoBrToInt(); objRetornar.NumeroControle = linha.ExtrairValorDaLinha(38, 62); objRetornar.NossoNumero = linha.ExtrairValorDaLinha(63, 73); objRetornar.DacNossoNumero = linha.ExtrairValorDaLinha(74, 74).BoletoBrToInt(); objRetornar.NumeroParcela = linha.ExtrairValorDaLinha(75, 76).BoletoBrToInt(); //77-80 GRUPO DE VALOR 00 objRetornar.CodigoBaixaRecusa = linha.ExtrairValorDaLinha(81, 82).BoletoBrToInt(); //objRetornar.Especie = linha.ExtrairValorDaLinha(83, 85); objRetornar.VariacaoCarteira = linha.ExtrairValorDaLinha(86, 88).BoletoBrToInt(); objRetornar.ContaCaucao = linha.ExtrairValorDaLinha(89, 89).BoletoBrToInt(); objRetornar.CodigoDeResponsabilidade = linha.ExtrairValorDaLinha(90, 94).BoletoBrToInt(); objRetornar.DVCodigoDeResponsabilidade = linha.ExtrairValorDaLinha(95, 95).BoletoBrToInt(); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(96, 100).BoletoBrToDecimal() / 100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(101, 105).BoletoBrToDecimal() / 100; //106-106 BRANCOS objRetornar.CodigoCarteira = linha.ExtrairValorDaLinha(107, 108); objRetornar.CodigoDeOcorrencia = linha.ExtrairValorDaLinha(109, 110).BoletoBrToInt(); objRetornar.DataDaOcorrencia = (DateTime)linha.ExtrairValorDaLinha(111, 116).BoletoBrToStringSafe().ToDateTimeFromDdMmAa(); objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(117, 126); //127-146 BRANCOS objRetornar.DataDeVencimento = linha.ExtrairValorDaLinha(147, 152).BoletoBrToStringSafe().ToDateTimeFromDdMmAa() ?? DateTime.MinValue; objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(153, 165).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(166, 168).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(169, 172).BoletoBrToInt(); objRetornar.DvAgenciaCobradora = linha.ExtrairValorDaLinha(173, 173); objRetornar.Especie = linha.ExtrairValorDaLinha(174, 175); objRetornar.DataDeCredito = linha.ExtrairValorDaLinha(176, 181).BoletoBrToStringSafe().ToDateTimeFromDdMmAa().Equals(null) ? new DateTime(0001, 01, 01) : (DateTime)linha.ExtrairValorDaLinha(176, 181).ToString().ToDateTimeFromDdMmAa(); objRetornar.ValorTarifa = linha.ExtrairValorDaLinha(182, 188).BoletoBrToDecimal() / 100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(189, 201).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDesconto = linha.ExtrairValorDaLinha(202, 214).BoletoBrToDecimal() / 100; objRetornar.ValorIofDesconto = linha.ExtrairValorDaLinha(215, 227).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(228, 240).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(241, 253).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(254, 266).BoletoBrToDecimal() / 100; objRetornar.ValorJurosDeMora = linha.ExtrairValorDaLinha(267, 279).BoletoBrToDecimal() / 100; objRetornar.ValorOutrosRecebimentos = linha.ExtrairValorDaLinha(280, 292).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimentosNaoAproveitado = linha.ExtrairValorDaLinha(293, 305).BoletoBrToDecimal() / 100; objRetornar.ValorLancamento = linha.ExtrairValorDaLinha(306, 318).BoletoBrToDecimal() / 100; objRetornar.IndicativoDebitoCredito = linha.ExtrairValorDaLinha(319, 319); objRetornar.IndicadorValor = linha.ExtrairValorDaLinha(320, 320).BoletoBrToInt(); objRetornar.ValorAjuste = linha.ExtrairValorDaLinha(321, 332).BoletoBrToDecimal() / 100; //333-342 BRANCOS objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(343, 357).BoletoBrToLong(); //358-394 BRANCOS objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); return(objRetornar); }
/// <summary> /// Cód. Registro: 3 /// Registro: DETALHE /// Descrição: Tipo de Cobrança Vendor /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheCobrancaVendor(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), NossoNumero = linha.ExtrairValorDaLinha(2, 12), DvNossoNumero = linha.ExtrairValorDaLinha(13, 13), NumeroOperacaoBBVendor = linha.ExtrairValorDaLinha(14, 22).BoletoBrToLong(), DataOperacaoBBVendor = Convert.ToDateTime(linha.ExtrairValorDaLinha(23, 30).ToDateTimeFromDdMmAa()), TaxaJurosVendedor = linha.ExtrairValorDaLinha(31, 35).BoletoBrToInt()/1000, TaxaJurosComprador = linha.ExtrairValorDaLinha(36, 40).BoletoBrToInt()/1000, ValorTituloVencimento = linha.ExtrairValorDaLinha(41, 55).BoletoBrToDecimal()/100, ValorOriginal = linha.ExtrairValorDaLinha(56, 70).BoletoBrToDecimal()/100, ValorEncargosComprador = linha.ExtrairValorDaLinha(71, 85).BoletoBrToDecimal()/100, ValorIofFinanciado = linha.ExtrairValorDaLinha(86, 100).BoletoBrToDecimal()/100, ValorAcumuladoAbatimento = linha.ExtrairValorDaLinha(101, 115).BoletoBrToDecimal()/100, IndicativoEpocaEqualizacao = linha.ExtrairValorDaLinha(116, 116).BoletoBrToInt(), IndicativoNaturezaEqualizacao = linha.ExtrairValorDaLinha(117, 117).BoletoBrToInt(), ValorEqualizacao = linha.ExtrairValorDaLinha(118, 132).BoletoBrToDecimal()/100, ValorJurosProrrogacao = linha.ExtrairValorDaLinha(133, 147).BoletoBrToDecimal()/100, ValorIofProrrogacao = linha.ExtrairValorDaLinha(148, 162).BoletoBrToDecimal()/100, ValorIofPeriodoAtraso = linha.ExtrairValorDaLinha(163, 177).BoletoBrToDecimal()/100, NomeComprador = linha.ExtrairValorDaLinha(178, 214), TipoInscricaoComprador = linha.ExtrairValorDaLinha(215, 215).BoletoBrToInt(), NumeroInscricaoComprador = linha.ExtrairValorDaLinha(216, 229).BoletoBrToLong(), TipoConversaoCnab240 = linha.ExtrairValorDaLinha(230, 231).BoletoBrToInt(), NossoNumero17Posicoes = linha.ExtrairValorDaLinha(232, 248), NovoValorTitulo = linha.ExtrairValorDaLinha(249, 263).BoletoBrToDecimal()/100, ValorEqualizacaoEstornada = linha.ExtrairValorDaLinha(264, 278).BoletoBrToDecimal()/100, ValorNovaEqualizacao = linha.ExtrairValorDaLinha(279, 293).BoletoBrToDecimal()/100, ValorDiferencaEqualizacao = linha.ExtrairValorDaLinha(294, 308).BoletoBrToDecimal()/100, IndicativoDebitoCreditoCampo25 = linha.ExtrairValorDaLinha(309, 309).BoletoBrToInt(), IndicativoNaturezaEqualizacao1 = linha.ExtrairValorDaLinha(310, 310).BoletoBrToInt(), IndicativoNaturezaEqualizacao2 = linha.ExtrairValorDaLinha(311, 311).BoletoBrToInt(), ValorIofNaoFinanciado = linha.ExtrairValorDaLinha(312, 326).BoletoBrToDecimal()/100, ValorComissaoPermanencia = linha.ExtrairValorDaLinha(327, 341).BoletoBrToDecimal()/100 }; return objRetornar; }
/// <summary> /// Cód. Registro: 5 /// Registro: DETALHE /// Descrição: Bloqueto por e-mail /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheBloquetoEmail(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3), EnderecosEmail = linha.ExtrairValorDaLinha(6, 142), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return objRetornar; }
/// <summary> /// Cód. Registro: 2 /// Registro: DETALHE /// Descrição: Tipo de Cobrança Simples Carteira 17 /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheAuxiliarCobrancaPartilhadaCarteira17(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), NossoNumero = linha.ExtrairValorDaLinha(2, 18), BancoParaCredito1 = linha.ExtrairValorDaLinha(19, 21).BoletoBrToInt(), CamaraCompensacao1 = linha.ExtrairValorDaLinha(22, 24).BoletoBrToInt(), AgenciaParaCredito1 = linha.ExtrairValorDaLinha(25, 28).BoletoBrToInt(), DvAgenciaParaCredito1 = linha.ExtrairValorDaLinha(29, 29), ContaParaCredito1 = linha.ExtrairValorDaLinha(30, 40).BoletoBrToLong(), DvContaParaCredito1 = linha.ExtrairValorDaLinha(41, 41), NomeFavorecido1 = linha.ExtrairValorDaLinha(42, 71), ValorInformadoPartilha1 = linha.ExtrairValorDaLinha(72, 84).BoletoBrToDecimal()/100, ValorEfetivamentePartilhado1 = linha.ExtrairValorDaLinha(85, 97).BoletoBrToDecimal()/100, BancoParaCredito2 = linha.ExtrairValorDaLinha(98, 100).BoletoBrToInt(), CamaraCompensacao2 = linha.ExtrairValorDaLinha(101, 103).BoletoBrToInt(), AgenciaParaCredito2 = linha.ExtrairValorDaLinha(104, 107).BoletoBrToInt(), DvAgenciaParaCredito2 = linha.ExtrairValorDaLinha(108, 108), ContaParaCredito2 = linha.ExtrairValorDaLinha(109, 119).BoletoBrToLong(), DvContaParaCredito2 = linha.ExtrairValorDaLinha(120, 120), NomeFavorecido2 = linha.ExtrairValorDaLinha(121, 150), ValorInformadoPartilha2 = linha.ExtrairValorDaLinha(151, 163).BoletoBrToDecimal()/100, ValorEfetivamentePartilhado2 = linha.ExtrairValorDaLinha(164, 176).BoletoBrToDecimal()/100, BancoParaCredito3 = linha.ExtrairValorDaLinha(177, 179).BoletoBrToInt(), CamaraCompensacao3 = linha.ExtrairValorDaLinha(180, 182).BoletoBrToInt(), AgenciaParaCredito3 = linha.ExtrairValorDaLinha(183, 186).BoletoBrToInt(), DvAgenciaParaCredito3 = linha.ExtrairValorDaLinha(187, 187), ContaParaCredito3 = linha.ExtrairValorDaLinha(188, 198).BoletoBrToLong(), DvContaParaCredito3 = linha.ExtrairValorDaLinha(199, 199), NomeFavorecido3 = linha.ExtrairValorDaLinha(200, 229), ValorInformadoPartilha3 = linha.ExtrairValorDaLinha(230, 242).BoletoBrToDecimal()/100, ValorEfetivamentePartilhado3 = linha.ExtrairValorDaLinha(243, 255).BoletoBrToDecimal()/100, BancoParaCredito4 = linha.ExtrairValorDaLinha(256, 258).BoletoBrToInt(), CamaraCompensacao4 = linha.ExtrairValorDaLinha(259, 261).BoletoBrToInt(), AgenciaParaCredito4 = linha.ExtrairValorDaLinha(262, 265).BoletoBrToInt(), DvAgenciaParaCredito4 = linha.ExtrairValorDaLinha(266, 266), ContaParaCredito4 = linha.ExtrairValorDaLinha(267, 277).BoletoBrToLong(), DvContaParaCredito4 = linha.ExtrairValorDaLinha(278, 278), NomeFavorecido4 = linha.ExtrairValorDaLinha(279, 308), ValorInformadoPartilha4 = linha.ExtrairValorDaLinha(309, 321).BoletoBrToDecimal()/100, ValorEfetivamentePartilhado4 = linha.ExtrairValorDaLinha(322, 334).BoletoBrToDecimal()/100, TipoInscricaoFavorecido1 = linha.ExtrairValorDaLinha(335, 335).BoletoBrToInt(), NumeroInscricaoFavorecido1 = linha.ExtrairValorDaLinha(336, 349).BoletoBrToInt(), TipoInscricaoFavorecido2 = linha.ExtrairValorDaLinha(350, 350).BoletoBrToInt(), NumeroInscricaoFavorecido2 = linha.ExtrairValorDaLinha(351, 364).BoletoBrToInt(), TipoInscricaoFavorecido3 = linha.ExtrairValorDaLinha(365, 365).BoletoBrToInt(), NumeroInscricaoFavorecido3 = linha.ExtrairValorDaLinha(366, 379).BoletoBrToInt(), TipoInscricaoFavorecido4 = linha.ExtrairValorDaLinha(380, 380).BoletoBrToInt(), NumeroInscricaoFavorecido4 = linha.ExtrairValorDaLinha(381, 394).BoletoBrToInt(), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return objRetornar; }
/// <summary> /// Cód. Registro: 5 /// Registro: DETALHE /// Descrição: Dados do cheque utilizado para liquidação de título /// </summary> /// <param name="linha"></param> /// <returns></returns> public DetalheRetornoCnab400 ObterRegistrosDetalheDadosCheque(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(), CodigoDoServico = linha.ExtrairValorDaLinha(2, 3), NossoNumero17Posicoes = linha.ExtrairValorDaLinha(6, 22), DataPagamento = linha.ExtrairValorDaLinha(23, 30).BoletoBrToInt(), ValorCheque = linha.ExtrairValorDaLinha(45, 59).BoletoBrToDecimal()/100, PrazoBloqueioCheque = linha.ExtrairValorDaLinha(60, 62).BoletoBrToInt(), MotivoDevolucaoCheque = linha.ExtrairValorDaLinha(66, 68).BoletoBrToInt(), TrilhaDoCheque = linha.ExtrairValorDaLinha(70, 103), TipoCaptura = linha.ExtrairValorDaLinha(104, 104), NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt() }; return objRetornar; }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt() }; if (objRetornar.CodigoDoRegistro == 1) { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); //18 a 20 Branco objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(21, 37); //38 a 62 Branco //63 a 70 Branco objRetornar.NossoNumero = linha.ExtrairValorDaLinha(71, 82); //83 a 92 Branco objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(93, 105); //106 a 108 Branco objRetornar.CodigoInstrucao = linha.ExtrairValorDaLinha(109, 110); /* * 00 - Baixa por Devolução * 02 - Entrada de Título; * 05 - Liquidação S/Registro; * 06 - Liquidação Normal C/Registro; * 09 - Liquidação Rejeitada; * 15 - Liquidação Regularizada S/Registro e * 16 - Liquidação Regularizada C/Registro. */ switch (objRetornar.CodigoInstrucao) { case "00": objRetornar.DescricaoInstrucao = "Baixa por Devolução"; break; case "02": objRetornar.DescricaoInstrucao = "Entrada de Título"; break; case "05": objRetornar.DescricaoInstrucao = "Liquidação S/Registro"; break; case "06": objRetornar.DescricaoInstrucao = "Liquidação Normal C/Registro"; break; case "09": objRetornar.DescricaoInstrucao = "Liquidação Rejeitada"; break; case "15": objRetornar.DescricaoInstrucao = "Liquidação Regularizada S/Registro"; break; case "16": objRetornar.DescricaoInstrucao = "Liquidação Regularizada C/Registro"; break; default: objRetornar.DescricaoInstrucao = "Não foi localizado o código: " + objRetornar.CodigoInstrucao; break; } objRetornar.DataDaOcorrencia = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 118).ToDateTimeFromDdMmAaaa()); //119 a 128 Ignorar Esse Campo objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(129, 140); objRetornar.CodigoDoRateio = linha.ExtrairValorDaLinha(141, 144); //145 a 148 Branco objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(149, 156).ToDateTimeFromDdMmAaaa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(157, 169).BoletoBrToDecimal()/100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(170, 172).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(173, 177).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(178, 179); objRetornar.ValorDespesas = linha.ExtrairValorDaLinha(180, 192).BoletoBrToDecimal()/100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(193, 205).BoletoBrToDecimal()/100; objRetornar.ValorJurosAtraso = linha.ExtrairValorDaLinha(206, 218).BoletoBrToDecimal()/100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(219, 231).BoletoBrToDecimal()/100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(232, 244).BoletoBrToDecimal()/100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(245, 257).BoletoBrToDecimal()/100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(258, 270).BoletoBrToDecimal()/100; //Contempla Abatimentos e Descontos objRetornar.ValorOutrosDebitos = linha.ExtrairValorDaLinha(271, 283).BoletoBrToDecimal()/100; //Contempla Juros e Multas objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(284, 296).BoletoBrToDecimal()/100; //297 a 298 Branco //299 a 299 Branco objRetornar.DataLiquidacao = Convert.ToDateTime(linha.ExtrairValorDaLinha(300, 307).ToDateTimeFromDdMmAaaa()); //308 a 364 Branco objRetornar.MotivoCodigoRejeicao = linha.ExtrairValorDaLinha(365, 394); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); } return objRetornar; }
public DetalheRetornoCnab400 ObterRegistrosDetalhe(string linha) { var objRetornar = new DetalheRetornoCnab400 { CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt() }; if (objRetornar.CodigoDoRegistro == 1) { objRetornar.CodigoDoRegistro = linha.ExtrairValorDaLinha(1, 1).BoletoBrToInt(); objRetornar.TipoInscricao = linha.ExtrairValorDaLinha(2, 3).BoletoBrToInt(); objRetornar.NumeroInscricao = linha.ExtrairValorDaLinha(4, 17).BoletoBrToLong(); //18 a 20 Branco objRetornar.ContaCorrente = linha.ExtrairValorDaLinha(21, 37); //38 a 62 Branco //63 a 70 Branco objRetornar.NossoNumero = linha.ExtrairValorDaLinha(71, 82); //83 a 92 Branco objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(93, 105); //106 a 108 Branco objRetornar.CodigoInstrucao = linha.ExtrairValorDaLinha(109, 110); /* * 00 - Baixa por Devolução * 02 - Entrada de Título; * 05 - Liquidação S/Registro; * 06 - Liquidação Normal C/Registro; * 09 - Liquidação Rejeitada; * 15 - Liquidação Regularizada S/Registro e * 16 - Liquidação Regularizada C/Registro. */ switch (objRetornar.CodigoInstrucao) { case "00": objRetornar.DescricaoInstrucao = "Baixa por Devolução"; break; case "02": objRetornar.DescricaoInstrucao = "Entrada de Título"; break; case "05": objRetornar.DescricaoInstrucao = "Liquidação S/Registro"; break; case "06": objRetornar.DescricaoInstrucao = "Liquidação Normal C/Registro"; break; case "09": objRetornar.DescricaoInstrucao = "Liquidação Rejeitada"; break; case "15": objRetornar.DescricaoInstrucao = "Liquidação Regularizada S/Registro"; break; case "16": objRetornar.DescricaoInstrucao = "Liquidação Regularizada C/Registro"; break; default: objRetornar.DescricaoInstrucao = "Não foi localizado o código: " + objRetornar.CodigoInstrucao; break; } objRetornar.DataDaOcorrencia = Convert.ToDateTime(linha.ExtrairValorDaLinha(111, 118).ToDateTimeFromDdMmAaaa()); //119 a 128 Ignorar Esse Campo objRetornar.NumeroDocumento = linha.ExtrairValorDaLinha(129, 140); objRetornar.CodigoDoRateio = linha.ExtrairValorDaLinha(141, 144); //145 a 148 Branco objRetornar.DataDeVencimento = Convert.ToDateTime(linha.ExtrairValorDaLinha(149, 156).ToDateTimeFromDdMmAaaa()); objRetornar.ValorDoTituloParcela = linha.ExtrairValorDaLinha(157, 169).BoletoBrToDecimal() / 100; objRetornar.BancoCobrador = linha.ExtrairValorDaLinha(170, 172).BoletoBrToInt(); objRetornar.AgenciaCobradora = linha.ExtrairValorDaLinha(173, 177).BoletoBrToInt(); objRetornar.Especie = linha.ExtrairValorDaLinha(178, 179); objRetornar.ValorDespesas = linha.ExtrairValorDaLinha(180, 192).BoletoBrToDecimal() / 100; objRetornar.ValorOutrasDespesas = linha.ExtrairValorDaLinha(193, 205).BoletoBrToDecimal() / 100; objRetornar.ValorJurosAtraso = linha.ExtrairValorDaLinha(206, 218).BoletoBrToDecimal() / 100; objRetornar.ValorIof = linha.ExtrairValorDaLinha(219, 231).BoletoBrToDecimal() / 100; objRetornar.ValorAbatimento = linha.ExtrairValorDaLinha(232, 244).BoletoBrToDecimal() / 100; objRetornar.ValorDesconto = linha.ExtrairValorDaLinha(245, 257).BoletoBrToDecimal() / 100; objRetornar.ValorLiquidoRecebido = linha.ExtrairValorDaLinha(258, 270).BoletoBrToDecimal() / 100; //Contempla Abatimentos e Descontos objRetornar.ValorOutrosDebitos = linha.ExtrairValorDaLinha(271, 283).BoletoBrToDecimal() / 100; //Contempla Juros e Multas objRetornar.ValorOutrosCreditos = linha.ExtrairValorDaLinha(284, 296).BoletoBrToDecimal() / 100; //297 a 298 Branco //299 a 299 Branco objRetornar.DataLiquidacao = Convert.ToDateTime(linha.ExtrairValorDaLinha(300, 307).ToDateTimeFromDdMmAaaa()); //308 a 364 Branco objRetornar.MotivoCodigoRejeicao = linha.ExtrairValorDaLinha(365, 394); objRetornar.NumeroSequencial = linha.ExtrairValorDaLinha(395, 400).BoletoBrToInt(); } return(objRetornar); }