Geração do Boleto itau carteira 109

Jul 29, 2009 at 1:59 PM

Bom dia, estou fazendo também a geração do boleto do banco itaú. Para funcionar essa carteira tiver que realizar as seguintes modificações (todas na classe Banco_Itau.cs):

1 - Método Valida Boleto

     Adicionar a carteira 109 no array de carteiras válidades :

//Carteiras válidas
int[] cv = new int[] { 175, 198, 107, 122, 142, 143, 196, 126, 131, 146, 150, 169, 109 };

e também nesta linha

//É obrigatório o preenchimento do número do documento
                if (boleto.Carteira == "106" || boleto.Carteira == "107" || boleto.Carteira == "109"
                        || boleto.Carteira == "122" || boleto.Carteira == "142"
                        || boleto.Carteira == "143" || boleto.Carteira == "195"
                        || boleto.Carteira == "196" || boleto.Carteira == "198")

2 - No método FormataCodigoBarra(Boleto boleto)

A geração da carteira 109 é parecida com a 175, só que ao formatar estava dando erro, por exemplo, o codigo antigo estava Cedente.ContaBancaria.Agencia e neste caso estava buscando um atributo de um objeto nao instanciado, ficou assim boleto.Cedente.ContaBancaria.Agencia.

if (boleto.Carteira == "175" || boleto.Carteira == "109")
                {
                    boleto.CodigoBarra.Codigo =
                        string.Format("{0}{1}{2}{3}{4}{5}{6}{7}{8}{9}000", Codigo, boleto.Moeda,
                                      Utils.FatorVencimento(boleto), valorBoleto, boleto.Carteira,
                                      boleto.NossoNumero, _dacNossoNumero, boleto.Cedente.ContaBancaria.Agencia,
                                      Utils.FormatCode(boleto.Cedente.ContaBancaria.Conta, 5), boleto.Cedente.ContaBancaria.DigitoConta);
                }

3 - no método FormataLinhaDigitavel(Boleto boleto)

A geração da carteira 109 é parecida com a 175:

if (boleto.Carteira == "175" || boleto.Carteira == "109")

 

Espero te ajudado...

Abraços,

Márcio