Como funciona o ACBr Boleto passo-a-passo
14/05/2014
0
Boa Tarde!
Venho aqui para pedir à vocês ajuda na utilização do ACBr Boleto passo-a-passo!
Desde já agradeço
Nadir Filho
Post mais votado
15/05/2014
[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
Mais Posts
14/05/2014
Ricardo
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.
15/05/2014
Lourival Queiroz
15/05/2014
Nadir Filho
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!
16/05/2014
Lourival Queiroz
02/12/2017
Robson Morais
Clique aqui para fazer login e interagir na Comunidade :)