Como funciona o ACBr Boleto passo-a-passo

14/05/2014

0

Caros Colegas,

Boa Tarde!

Venho aqui para pedir à vocês ajuda na utilização do ACBr Boleto passo-a-passo!

Desde já agradeço
Nadir Filho

Nadir Filho

Responder

Post mais votado

15/05/2014

Eu utilizo esse codigo para gerar os titulos, Emitir e gerar a remessa:

[code]

*********** Variavel Necessária

Titulo : TACBrTitulo;


******** Criando um Só Titulo
procedure TfMenu.CriarUmTitulo (Opcao: String);
begin
Boleto.ListadeBoletos.Clear;
Titulo:= Boleto.CriarTituloNaLista;
Boleto.Cedente.TipoInscricao:= pJuridica;
Boleto.Cedente.CNPJCPF:= '12345678901234';
Boleto.Cedente.Agencia:='1111';
Boleto.Cedente.AgenciaDigito:='2';
Boleto.Cedente.Conta:='225544';
Boleto.Cedente.ContaDigito:='1';
Boleto.Cedente.CodigoCedente:='1045285';
Boleto.Cedente.Logradouro:='R Coronel Ferraz,88-Barra Funda '+
'- Centro - RJ - 11.222-210';
with Titulo do
begin
LocalPagamento := 'Pagar preferêncialmente nas agências do Banco';
Vencimento := Vencto.AsDateTime;
DataDocumento := Emissao.AsDateTime;
EspecieDoc := qTituloESPECIE.AsString;
Aceite := atSim;
DataProcessamento := qTituloDTPROC.AsDateTime;
NossoNumero := qTituloBOLETO.AsString;;
Carteira := qTituloCARTEIRA.AsString;
ValorDocumento := qTituloVALOR.AsFloat;
Sacado.NomeSacado := qTituloNOME.AsString;
if qTituloPF.AsString = 'F' then
Sacado.Pessoa:= pFisica
else
Sacado.Pessoa:= pJuridica;
Sacado.CNPJCPF := qTituloCGC.AsString;
Sacado.Logradouro := qTituloENDERECO.AsString+','+
qTituloNUMENDER.AsString;
Sacado.Bairro := qTituloBAIRRO.AsString;
Sacado.Cidade := qTituloCIDADE.AsString;
Sacado.UF := qTituloUF.AsString;
Sacado.CEP := qTituloCEP.AsString;
ValorMoraJuros := qTituloJUROS.AsFloat;
ValorAbatimento := 0;
DataMoraJuros := qTituloVENCTO.AsDateTime;
DataAbatimento := 0;
Instrucao1 := '00';
Instrucao2 := '00';
Mensagem.Text := qTituloMENSAGEM.AsString+' '+
qTituloCLIENTE.AsString+' - '+
qTituloSERIE.AsString+' - '+
qTituloNUMERO.AsString+
chr(13)+chr(10)+
'INSTRUÇÕES DE RESPONSABILIDADE DO '+
'BENEFICIÁRIO. QUALQUER DÚVIDA SOBRE '+
'ESTE BOLETO, CONTATE O BENEFICIÁRIO.'
end;

end;


***** Criando Vários Titulos
procedure TfMenu.CriarVariosTitulos;
begin
Boleto.ListadeBoletos.Clear;
if qTitulo.recordcount > 0 then
begin
with qTitulo do
begin
qTitulo.first;
nBloquete:=qTituloBLOQUETE.AsInteger;
while not qTitulo.eof do
begin
Titulo:= Boleto.CriarTituloNaLista;
Boleto.Cedente.TipoInscricao:= pJuridica;
Boleto.Cedente.TipoInscricao:= pJuridica;
Boleto.Cedente.CNPJCPF:= '12345678901234';
Boleto.Cedente.Agencia:='1111';
Boleto.Cedente.AgenciaDigito:='2';
Boleto.Cedente.Conta:='225544';
Boleto.Cedente.ContaDigito:='1';
Boleto.Cedente.CodigoCedente:='1045285';
Boleto.Cedente.Logradouro:='R Coronel Ferraz,88-Barra Funda '+
'- Centro - RJ - 11.222-210';
with Titulo do
begin
LocalPagamento := 'Pagar preferêncialmente nas agências do Banco';
Vencimento := qTituloVENCTO.AsDateTime;
DataDocumento := qTituloEMISSAO.AsDateTime;
//NumeroDocumento := qTituloNUMERO.AsString+'/'+qTituloDESD.AsString;
EspecieDoc := qTituloESPECIE.AsString;
Aceite := atSim;
DataProcessamento := qTituloDTPROC.AsDateTime;
if (Opcao = 'R') or (cEmitir.Checked) then
NossoNumero:= qTituloBOLETO.AsString
else
NossoNumero:= inttostr(nBloquete);
Carteira := qTituloCARTEIRA.AsString;
ValorDocumento := qTituloVALOR.AsFloat;
Sacado.NomeSacado := qTituloNOME.AsString;
if qTituloPF.AsString = 'F' then
Sacado.Pessoa:= pFisica
else
Sacado.Pessoa:= pJuridica;
Sacado.CNPJCPF := qTituloCGC.AsString;
Sacado.Logradouro := qTituloENDERECO.AsString+','+
qTituloNUMENDER.AsString;
Sacado.Bairro := qTituloBAIRRO.AsString;
Sacado.Cidade := qTituloCIDADE.AsString;
Sacado.UF := qTituloUF.AsString;
Sacado.CEP := qTituloCEP.AsString;
ValorMoraJuros := qTituloJUROS.AsFloat;
ValorAbatimento := 0;
DataMoraJuros := qTituloVENCTO.AsDateTime;
DataAbatimento := 0;
Instrucao1 := '00';
Instrucao2 := '00';
Mensagem.Text := qTituloMENSAGEM.AsString+' '+
qTituloCLIENTE.AsString+' - '+
qTituloSERIE.AsString+' - '+
qTituloNUMERO.AsString+
chr(13)+chr(10)+
'INSTRUÇÕES DE RESPONSABILIDADE DO '+
'BENEFICIÁRIO. QUALQUER DÚVIDA SOBRE '+
'ESTE BOLETO, CONTATE O BENEFICIÁRIO.' ;
// Boleto.AdicionarMensagensPadroes();
end;
Next;
end; //While
end; //With
end;
end;


*************** Gerando a Remessa
procedure TfMenu.btLerArqRemessaClick(Sender: TObject);
var erro : String;
i : Integer;
begin
// Pesquisa e Ler Arquido de Retorno
Boleto.NomeArqRetorno := cNomeArquivo.Text;
Boleto.LerRetorno;
for i:=0 to fMenu.Boleto.ListadeBoletos.Count-1 do
begin
with fMenu.Boleto.ListadeBoletos.Objects[i] do
begin
// Verifica a Rejeição
if DescricaoMotivoRejeicaoComando.Text <> '' then
erro:=erro+NossoNumero+' - '+DescricaoMotivoRejeicaoComando.Text+
chr(13)+chr(10)
else
// Grava a Quitação da conta
if (ValorRecebido > 0) then
begin
pBoletoLer.Prepare;
pBoletoLer.ParamByName('Bloquete').AsString:=NossoNumero;
pBoletoLer.ParamByName('ValorPago').AsFloat:=ValorRecebido;
pBoletoLer.ParamByName('DataPagto').AsDate:=DataBaixa;
pBoletoLer.ParamByName('Desconto').AsFloat:=ValorDesconto;
pBoletoLer.ParamByName('Abatimento').AsFloat:=ValorAbatimento;
pBoletoLer.ParamByName('Juros').AsFloat:=ValorMoraJuros;
pBoletoLer.ParamByName('Usuario').AsString:= qUsuarioCODIGO.AsString;
pBoletoLer.ExecProc;
// Acumula os Erros
if (not pBoletoLer.ParamByName('ERRO').IsNull) then

Lourival Queiroz

Lourival Queiroz
Responder

Mais Posts

14/05/2014

Ricardo

Meu foco não é automação comercial, mas tenho lido a respeito e testado o componente. Não tenho muita coisa a somar em informação, mas o próprio repositório vem um exemplo pronto para emissão dos boletos, então acho que pra começar, ler o código fonte ajuda um pouco.

Já na parte burocrática basta somente ir a agência bancária e pedir uma carteira de cobrança, e as informações que forem passadas pela agência deve ser inserida no componente.
Responder

15/05/2014

Lourival Queiroz

Observar que no primeiro item de gerar remessa é a leitura da remessa que faço a geração da remessa esta no final
Responder

15/05/2014

Nadir Filho

Boa Tarde Pessoal!

Desde já, agradeço os colegas que me responderam e tiveram boa intenção em me ajudar!

Pergunto: É necessário usar um QReport ou não , ou ele já gera sozinho o boleto
aguardo sua ajuda!


Até Logo!
Responder

16/05/2014

Lourival Queiroz

Esse exemplo funciona com o FastReport, impressão, envio e retorno ao banco, inclusive o exemplo do boleto esta no diretorio \Acbr\Exemplos\ACBrBoleto\Delphi\Report, observar que vc terá de efetuar alteração no boleto de exemplo para adequar as novas regras.
Responder

19/05/2014

Nadir Filho

E ai Pessoal! Obrigado!

Valeu por todo ajuda!

Abraço!
Responder

13/04/2015

Osmar

Lourival Boa noite,

Esse código gera boleto tipo Carnê?

Osmar
Responder

25/05/2016

Marcos Cruz

e como aco pra ler esse retorno
Responder

02/12/2017

Robson Morais

DevMedia acho que esse novo layout do forum cortou a resposta do nosso amigo mostrando o processo completo, pois eu tinha visto até informações de retorno e dá para ver que o codigo não está completo, favor verificar e corrigir.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar