
Luciano Rodrigues Pereira
Membros-
Total de ítens
213 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que Luciano Rodrigues Pereira postou
-
ACBrBoletoBancoBancoob
Luciano Rodrigues Pereira replied to Luciano Rodrigues Pereira's tópico in ACBrBoleto
Deve ser. Esse campo existe tanto no Header do Arquivo como no Header no Lote. No Header do arquivo só aceita com ZERO e no Header do Lote só aceita com ESPAÇO. E o manual pede espaço em branco em ambos. É brincadeira? -
Fiz a seguinte modificação em ACBrBoletoBancoBancoob (que é o Sicoob). Linha 736 Digito Verificador da Agencia/Conta - Dever ser zero e estava com espaço em branco. function TACBrBancoob.GerarRegistroHeader240(NumeroRemessa: Integer): String; PadRight(DigitoVerificadorAgenciaConta, 1, '0') + // 72 - Dígito verificador Ag/Conta (zero) - Alterado por Luciano Pereira - Alterado de ' ' para '0' Segue também em anexo o arquivo PDF do validador com o erro quando a posição 72 do Header do Arquivo fica com espaço em branco e o PDF com tudo OK quando fica com zero. validador-cnab - Sicoob Erro.pdf validador-cnab - Sicoob.pdf ACBrBancoBancoob.pas
-
Cobrança Banese - Correções
Luciano Rodrigues Pereira replied to Luciano Rodrigues Pereira's tópico in ACBrBoleto
Acho que não, mas são 20 posições na remessa e retorno, mas todos os cálculos são 9, só na montagem do arquivo é que são 20. Mas eu resolvi só com um rigthstr sem mexer no tamanhonossonumero = 9. Curioso como estava em desacordo com o manual do banco, tanto o layout de remessa quanto o do retorno, até as posições e tamanho de nosso número e outros campos em LerRetorno240. Mas vou arredondar tudo esse fds e depois de uns 15 dias em produção fazendo as trocas de arquivo eu publico aqui o novo pas. Também, quase ninguém deve usar esse banco...- 5 replies
-
- cobrança
- acbrboleto
- (e 2 mais)
-
Cobrança Banese - Correções
Luciano Rodrigues Pereira replied to Luciano Rodrigues Pereira's tópico in ACBrBoleto
Os boletos e a remessa já foram homologados com sucesso. Estou resolvendo o retorno. A cobrança já está em produção, mas a rotina de LeRetorno240 está totalmente desconforme com o manual do banco. Já estou finalizando os ajustes, mas ficou uma dúvida. Quando vou processar o retorno dá "Tamanho máximo do Nosso Número é 9". Está setado realmente para 9, os cálculos para o boleto e remessa são 9 mesmo (com o digito), mas o nosso número no arquivo de remessa e retorno tem 20 posições. Então acho que não posso setar o fpTamanhoMaximoNossoNumero para 20 né? não vai dar problemas no MontarNossoNumero por exemplo? Inclusive o tal de ASBACE (que é usado na rotina para montar o código de barras) usa o MontarNossoNumero com 9 posições (com o dígito). Então como faço para resolver esse erro do retorno?- 5 replies
-
- cobrança
- acbrboleto
- (e 2 mais)
-
Gostaria de saber como faço para que o ACBrBoleto carregue o arquivo .fr3 correspondente a propriedade Layout informada no componente ACBrBoletoFCFR. Por mais que eu mude o Layout só puxa o padrão. E como o ACBr sabe em qual pasta estão os fr3 se não tem uma propriedade para informar a pasta como tem o DirLogo? Eu estou fazendo: FastReportFile:= PathReports + 'Boleto' + Ifthen(LayoutBol = 'LCARNE', 'Carne', ifthen(LayoutBol = 'LFATURA', 'Fatura', ifthen(LayoutBol = 'LPADRAOENTREGA', 'FR', ''))) + '.fr3'; Mas creio que seja totalmente desnecessário, porque senão para que serveria a propriedade Layout? Mas se eu não informo nada na propriedade FastRePortFile dá "Caminho ou o arquivo de impressão não assinalado". Se eu informo só o caminho dos arquivos fr3 dá "invalid file format" Então fica minha dúvida: Como informar a pasta dos arquivos .fr3 para que o ACBr carregue o arquivo .fr3 correspondente à propriedade Layout?
-
O ACBrBancoBanese não estava de acordo com o Manual do banco, inclusive no cálculo do digito verificador do nosso número, então fiz algumas mudanças no mesmo. Fiz os testes e homologuei a remessa e os boletos junto ao banco. A homologação foi feita com sucesso. Seguem as alterações realizadas e o arquivo ACBrBancoBanese.pas com as alterações realizadas. Seria bom subir o pas não? function TACBrBancoBanese.CalcularDigitoVerificador( const ACBrTitulo: TACBrTitulo ): String; var ADigitoNossoNumero : string; begin Modulo.CalculoPadrao; Modulo.MultiplicadorFinal := 13; Modulo.Documento := ACBrTitulo.NossoNumero; Modulo.Calcular; AdigitoNossoNumero :=IntToStr(Modulo.DigitoFinal); Result:= AdigitoNossoNumero; end; // NÃO LEVAVA EM CONTA A AGÊNCIA NO DOCUMENTO (AAANNNNNNNN) E PARA QUE MultiplicadorFinal:= 13 ? // TROCADO POR function TACBrBancoBanese.CalcularDigitoVerificador( const ACBrTitulo: TACBrTitulo ): String; begin Modulo.CalculoPadrao; Modulo.Documento:= PadLeft(ACBrTitulo.ACBrBoleto.Cedente.Agencia, 3, '0') + RightStr(ACBrTitulo.NossoNumero, 8); Modulo.Calcular; Result:= IntToStr(Modulo.DigitoFinal); end function TACBrBancoBanese.MontarCampoNossoNumero ( const ACBrTitulo: TACBrTitulo ) : String; begin ACBrTitulo.NossoNumero := IntToStrZero( StrToIntDef((Trim(ACBrTitulo.NossoNumero)+Trim(CalcularDigitoVerificador(ACBrTitulo))),0) ,Self.TamanhoMaximoNossoNum); Result := ACBrTitulo.NossoNumero; end; // ACBrTitulo.NossoNumero:= ... MODIFICA O NOSSO NÚMERO, ACRESCENTANDO O DIGITO AO MESMO. // E SE VC PRECISAR CHAMAR A FUNÇÃO UMA SEGUNDA VEZ (PARA GRAVAR O NOSSO NRO MONTADO POR EXEMPLO) VAI BUGAR // PORQUE VC ESTARÁ CRIANDO UM NOVO NOSSONUMERO (AGORA COM O DIGITO) PARA CALCULAR UM NOVO DIGITO // TROCADO POR function TACBrBancoBanese.MontarCampoNossoNumero ( const ACBrTitulo: TACBrTitulo ) : String; begin result:= IntToStrZero( StrToIntDef((Trim(ACBrTitulo.NossoNumero)+Trim(CalcularDigitoVerificador(ACBrTitulo))),0) ,Self.TamanhoMaximoNossoNum); end; function TACBrBancoBanese.CalcularCampoASBACE(const ACBrTitulo: TACBrTitulo): string; ANossoNumero := Copy(Trim(ACBrTitulo.NossoNumero), 1, ACBrTitulo.ACBrBoleto.Banco.TamanhoMaximoNossoNum); // TROCADO POR ANossoNumero := MontarCampoNossoNumero(ACBrTitulo); ACBrBancoBanese.pas
- 5 replies
-
- 1
-
-
- cobrança
- acbrboleto
- (e 2 mais)
-
Atualizei o ACBr e agora quando vou compilar minha aplicação está dando o seguinte erro: Unit Jsons not found em Fontes\ACBrTCP\ACBrIBGE.pas na linha --> uses strutils, dateutils, blcksock, Jsons, ACBrUtil; Como faço para corrigir?
-
Tem razão, a Unicredi está com um número próprio de compensação nacional. Peça a Agência do seu cliente para lhe mandar a logo. Vou ver mais tarde aqui se tenho, caso tenha lhe mando.
-
Veja o número do banco no seu boleto ou em um talão de cheques da cooperativa, 759 é Sicredi. Se for outro procure no Google a relação dos números dos bancos e identifique qual essa unicredi está usando. Aí vc vai usar a logo do banco em questão. Não só a logo, mas todo o layout em questão.
-
Como já expliquei, não existe o banco Unicredi, mas sim a cooperativa Unicredi. Leia minha resposta anterior. Sou especialista em Gestão de Cooperativas Financeiras e Conselheiro Fiscal de uma Unicredi, mas se não concorda comigo, tudo bem. Veja o número do banco no seu boleto ou em um talão de cheques da cooperativa, 759 é Sicredi. Se for outro procure no Google a relação dos números dos bancos e identifique qual essa unicredi está usando.
-
Não existe o banco Unicredi. Unicredi é uma cooperativa financeira. As únicas cooperativas que tem banco próprio são o Sicredi e o Sicoob. As demais usam os serviços desses bancos.
-
Vc deve usar o Sicredi, pois a Unicred usa os serviços do Sicredi, uma vez que a cooperativa Unicredi não tem banco próprio. A não ser que está cooperativa use outro banco cooperado para fazer seus serviços bancários
-
Erro no envio de remessa SICREDI
Luciano Rodrigues Pereira replied to Rodrigo Barbosa's tópico in ACBrBoleto
Não pode saltar a sequencia. Não precisa ser o número do Sequencial igual ao dia, até mesmo porque eu posso ter mais de uma remessa no mesmo dia, mas se a última que você mandou foi a 10, a próxima tem de ser a 11. O ideal mesmo é mandar o Sicredi desabilitar essa função de Verificar Sequencia do Arquivo na carteira de cobrança do cliente. Existe essa possibilidade lá, eu vi pessoalmente no terminal do cara, lá dentro da agência. -
Erro no envio de remessa SICREDI
Luciano Rodrigues Pereira replied to Rodrigo Barbosa's tópico in ACBrBoleto
Não é a sequencia do nosso número, mas a sequencia do arquivo de remessa. O arquivo de remessa também tem um sequencial no Header do Arquivo, no CNAB240 são as posições 158 a 163, no CNAB400 as posições 111 a 117. Enfrentei esse problema aqui com minha cooperativa que mudou o sistema de cobrança (era Unicred e virou Sicredi) e tive de reiniciar o sequencia do arquivo (começar de 1 novamente). Veja qual foi o último número sequencial do seu cliente ou pergunte ao suporte da Cobrança do Sicredi. No sistema da Sicredi no cadastro da carteira de cobrança também tem a opção dele não verificar esse sequencial da remessa, você pode também pedir ao Sicredi para configurar a carteira de cobrança de seu cliente para não verificar esse sequencial. -
Layout do Boleto com 7 Linhas nas Instruções
Luciano Rodrigues Pereira replied to Iran Lima's tópico in ACBrBoleto
Coloque multa e juros na mesma linha ou use o corpo da mensagem como um campo memo (se já não for, eu acho que já é). -
Como identificar Se o boleto foi liquidado
Luciano Rodrigues Pereira replied to lcsmagalhaes's tópico in ACBrBoleto
Você vai fazer algo como ACBrBoleto1.LerRetorno; for i := 0 to ACBrBoleto1.ListadeBoletos.Count-1 do with ACBrBoleto1.ListadeBoletos.Objects do begin // Acrescenta na Tabela Temporária cds_Previa.Insert; cds_Previa.FieldByName('DT_OCORRENCIA').AsDateTime:= DataOcorrencia; cds_Previa.FieldByName('NOSSO_NUMERO').AsString:= NossoNumero; cds_Previa.FieldByName('SEU_NUMERO').AsString:= SeuNumero; cds_Previa.FieldByName('SACADO').AsString:= Sacado.NomeSacado; cds_Previa.FieldByName('DT_VENCIMENTO').AsDateTime:= Vencimento; cds_Previa.FieldByName('VL_TITULO').AsCurrency:= ValorDocumento; cds_Previa.FieldByName('VL_DESCONTO').AsCurrency:= ValorDesconto + ValorAbatimento; cds_Previa.FieldByName('VL_TAXA').AsCurrency:= ValorDespesaCobranca; cds_Previa.FieldByName('VL_MULTAJUROS').AsCurrency:= ValorMoraJuros; cds_Previa.FieldByName('VL_OUTROSACR').AsCurrency:= ValorOutrasDespesas; cds_Previa.FieldByName('VL_RECEBIDO').AsCurrency:= ValorRecebido; cds_Previa.FieldByName('TIPO_OCORRENCIA').AsString:= TipoOcorrenciaToStr(OcorrenciaOriginal.Tipo); cds_Previa.FieldByName('OCORRENCIA_ORIG').AsString:= OcorrenciaOriginal.Descricao; cds_Previa.FieldByName('MOTIVO_REJEICAO').AsString:= DescricaoMotivoRejeicaoComando.Text; Depois você executa uma USP no seu banco para processar as baixas dm.AdoSP.ProcedureName:= 'usp_ProcessaRetorno'; dm.AdoSP.Parameters.Refresh; dm.AdoSP.Parameters.ParamByName('@ID_CARTEIRA').Value := dsCarteira.DataSet.FieldByName('ID').AsInteger; dm.AdoSP.ExecProc; E como você vai identificar quais foram os que forma pagos? Aqueles cujo TIPO_OCORRENCIA = 'toRetornoLiquidado' são os que foram pagos, aí é só baixar. Espero ter ajudado.- 1 reply
-
- 2
-
-
Não tem segredo. Teste vc mesmo, tentando pagar um boleto pelo seu bankline do celular mesmo (é só não confirmar o pagamento). Uma coisa é teste, outra é produção. Se o boleto foi realmente registrado, veio a confirmação do registro através de um retorno. O cliente tb pode verificar no próprio site do banco se o boleto consta lá como registrado (ou baixado).
-
Vc enviou a remessa? Conferiu se o banco retornou o registro dos boletos sem erro?
-
Nosso numero boleto diferente nosso numero remessa
Luciano Rodrigues Pereira replied to Fabricio Softcenter's tópico in ACBrBoleto
Eu trabalho com o ACBr com diversos bancos e nunca vi ele gerar um nosso número diferente daquele da propriedade Nosso Número do componente, até mesmo porque ele não gera nenhum nosso número, ele usa o que vc informa. Veja as propriedades, carteira, layout remessa, etc. Para a impressão tb não precisa gerar a remessa antes e ele vai usar o nosso nueque vc o informou. Dá uma olhada nos exemplos do componente. Eu tb trabalgo com o Sicredi e foi homologado de boa. -
Não havia acentuação ou caracteres especiais no endereço? Talvez o sistema tenha transformado os caracteres especiais nesse #$D
-
Itaú CNAB 400 Alteração Valor Título
Luciano Rodrigues Pereira replied to [email protected]'s tópico in ACBrBoleto
Você tem de mandar separados. Uma linha para o vencimento e outra para o valor. -
Unicredi é uma cooperativa que não tem um banco por trás, como acontece com o Sicoob que é proprietária do banco cooperativo Bancoob. Por isso essas cooperativas contratam os serviços de um banco cooperativo de outras cooperativas. Muitas vezes o Sicredi. Veja com a cooperativa qual o banco que eles usam. É só ver o código do banco no talão de cheque deles. Se for 748 é o Sicredi.
-
Rejeição de boletos Itaú na caixa e lotéricas.
Luciano Rodrigues Pereira replied to valramosr's tópico in ACBrBoleto
Provavelmente o título não foi registrado. Se o valor for menor de $800 o próprio banco recebe sem o registro, mas para pagar em outros banco tem de ter o registro. Você enviou a remessa e recebeu o retorno com a confirmação do registro desses títulos? -
ACBrBoleto - Boletos valor R$800,00 erro pagamento banco
Luciano Rodrigues Pereira replied to Thaís Caliman's tópico in ACBrBoleto
Provavelmente ainda não foi registrado. Só é registrado depois que chega o retorno. Você recebeu o retorno e nele consta registrado com sucesso? -
Estou tendo problemas direto com o RepublicaVirtual, está sempre fora do ar. Os outros que testei do componente, só pagando uma assinatura mensal. Aí não dá, sai muito caro. Existe outro grátis no componente? Se ao menos o Componente tivesse como tratar o erro de TimeOut, já resolveria minha vida, para eu dar uma mensagem ao usuário e dar a ele a opção de passar sem a consulta.