Open cristianormoraes opened 8 years ago
O erro é onde vc está instanciando o cedente Cedente ced = new Cedente("xxx", "xxx", "4033", "", "", ""); Vc está passando os parametros do cedente e digito na hora que está instanciando???
Como deveria ficar? acho que eu não estou colocando isso corretamente.. boleto não é validado pelo banco de jeito nenhum.
public ActionResult Index()
{
var boletoBancario = new BoletoBancario();
boletoBancario.CodigoBanco = 756;
DateTime vencimento = new DateTime(2016, 02, 29);
Cedente c = new Cedente("19.460.870/0001-35", "CDL - CDL UBERLANDIA", "4033", "0", "1233", "0");
c.Codigo = "008481";
c.DigitoCedente = 6;
c.Carteira = "02";
BoletoNet.Boleto b = new BoletoNet.Boleto(vencimento, 124.30m, "1", "003322934", c);
b.NumeroDocumento = "718049";
b.DataProcessamento = new DateTime(2016, 02, 18);
b.Sacado = new Sacado("23.168.206/0001-20", "PLASTICENTRO LTDA");
b.Sacado.Endereco.End = "AV Afonso Pena 1386";
b.Sacado.Endereco.Bairro = "Centro";
b.Sacado.Endereco.Cidade = "Uberlândia";
b.Sacado.Endereco.CEP = "38400-706";
b.Sacado.Endereco.UF = "MG";
boletoBancario.Boleto = b;
boletoBancario.Boleto.Valida();
byte[] _ByteArray = boletoBancario.MontaBytesPDF();
System.IO.FileStream _FileStream = new System.IO.FileStream(Server.MapPath("~/") + "CDL_Uberlandia-Boleto_02_2016.pdf", System.IO.FileMode.Create, System.IO.FileAccess.Write);
_FileStream.Write(_ByteArray, 0, _ByteArray.Length);
_FileStream.Close();
return File(boletoBancario.MontaBytesPDF(), "application/pdf", "boleto.pdf");
}
Tem 2 coisas que eu vi que está diferente,
Cedente c = new Cedente("19.460.870/0001-35", "CDL - CDL UBERLANDIA", "4033", "0", "1233", "0");
o número do cedente é 1233 ou 8481?
c.Codigo = "008481";
no código eu coloco mesmo numero quando eu faço a instância do cedente (no quinto parametro)
caso isso não resolva, vai dbugando o método Valida() até chegar onde ele solta a msg.
Pode ser um bug.
No sicredi eu tive que corrigir alguns bugs nas versões anteriores.
Então eu acho que vou ter que mexer no codigo.. :(
Cara eu mexi em algumas coisas nas versoes anteriores uma das empresas elas trabalha com carnês, o nome dos codigos de barras era feito por tick, se for imprimir um boleto blz.. o problema é quando vc tem que gerar 1 - 300 boletos de uma vez, no servidor da empresa era tão rápido que no mesmo tick ele pegava até em 4 boletos. imagina a m... que deu, eram 4 boletos com o mesmo código de barras. ai eu mudei pra guid (tem uma chance de quase impossível de repetir). outra cosia que eu vou alterar e subir pra contribuir é código de baixa e alteração de vencimento no arquivo de remessa do sicredi, hj ele está fixo somente para cadastro.
estou tendo o mesmo erro. alguma resolução?
Ola galera com o código de vocês me ajudou a resolver este problema. Isso acontece por que o código "1233" tem que ter "001233" ou seja 6 caracteres :D
Estou tentando implementar o boleto Sicoob, porém parece que o codigo do cedente que o boletonet aceita é maior que o cedente que o banco me informou, gerando o seguinte erro: "O índice e o comprimento devem se referir a um local dentro da cadeia de caracteres. Nome do parâmetro: length", quando eu completo com "00" e fica "008481", ai ele não da o erro porém o boleto sai errado, alquem pode me ajudar?