primeiro eu passo os dados do banco
with ACBrBoleto1 do
begin
if cdsContaLAYOUTARQ.AsString = '240' then
LayoutRemessa := c240
else
if cdsContaLAYOUTARQ.AsString = '400' then
LayoutRemessa := c400;
// dados da conta
Banco.Nome := cdsContaRZSOCIALBAN.AsString;
Banco.Numero := cdsContaNUMBAN.AsInteger;
Banco.Digito := cdsContaDIGITOBAN.AsInteger;
case cdsContaNUMBAN.AsInteger of
1 : Banco.TipoCobranca := cobBancoDoBrasil;
004 : Banco.TipoCobranca := cobBancoDoNordeste;
756 : Banco.TipoCobranca := cobBancoob;
021 : Banco.TipoCobranca := cobBanestes;
041 : Banco.TipoCobranca := cobBanrisul;
237 : Banco.TipoCobranca := cobBradesco;
070 : Banco.TipoCobranca := cobBRB;
104 : Banco.TipoCobranca := cobCaixaSicob;
399 : Banco.TipoCobranca := cobHSBC;
341 : Banco.TipoCobranca := cobItau;
389 : Banco.TipoCobranca := cobBancoMercantil;
33,53,008 : Banco.TipoCobranca := cobSantander;
748 : Banco.TipoCobranca := cobSicred;
else
Banco.TipoCobranca := cobNenhum;
end;
ACBrBoletoFCFortes1.DirLogo := DMPrinc.CaminhoExe + '\\LogosBoletos\Colorido\';
if Layout = lbPadrao then
begin
// ACBrBoletoFCQuick1.FastReportFile := DMPrinc.CaminhoExe + '\Report\Boleto.fr3';
ACBrBoletoFCFortes1.LayOut := lPadrao;
end
else
if Layout = lbCarne then
begin
// ACBrBoletoFCQuick1.FastReportFile := DMPrinc.CaminhoExe + '\Report\BoletoCarne.fr3';
ACBrBoletoFCFortes1.LayOut := lCarne;
end;
end;
depois preencho a lista de boletos
=====================================================================================================================================
with ACBrBoleto1, DMConta, DMEmpresa do
begin
// dados cedente
Cedente.Agencia := cdsContaAGENCIA.AsString;
Cedente.AgenciaDigito := cdsContaDIGITOAG.AsString;
Cedente.Bairro := CdsEmpresaBAIRROEMPRESA.AsString;
Cedente.CEP := CdsEmpresaCEPEMPRESA.AsString;
Cedente.Cidade := CdsEmpresaNOMECID.AsString;
if cdsContaCPFCON.AsString <> '' then
Cedente.CNPJCPF := cdsContaCPFCON.AsString
else
Cedente.CNPJCPF := cdsEmpresaCNPJEMPRESA.AsString;
Cedente.CodigoCedente := cdsContaCEDENTE.AsString;
Cedente.CodigoTransmissao := cdsContaCODIGOTRANSMISSAO.AsString;
Cedente.Complemento := CdsEmpresaCOMPLEMPRESA.AsString;
Cedente.Conta := cdsContaNUMCONTA.AsString;
Cedente.ContaDigito := cdsContaDIGITOCC.AsString;
Cedente.Convenio := cdsContaCONVENIO.AsString;
Cedente.Logradouro := CdsEmpresaENDEEMPRESA.AsString;
Cedente.Modalidade := cdsContaMODALIDADE.AsString;
Cedente.Nome := cdsContaNOMECEDENTE.AsString;
Cedente.NumeroRes := CdsEmpresaNUMEMPRESA.AsString;
Cedente.ResponEmissao := tbCliEmite;
Cedente.TipoInscricao := pJuridica;
Cedente.UF := CdsEmpresaUF.AsString;
CdsFaturas.First;
ACBrBoleto1.ListadeBoletos.Clear;
while not CdsFaturas.Eof do
begin
Application.ProcessMessages;
Titulo := ACBrBoleto1.CriarTituloNaLista;
with Titulo do
begin
if cdsContaACEITE.AsString = 'SIM' then
Titulo.Aceite := atSim
else
Titulo.Aceite := atNao;
Titulo.Carteira := cdsContaCARTEIRA.AsString;
Titulo.DataDocumento := CdsFaturasDATAFATURA.AsDateTime;
Titulo.DataProcessamento := DMPrinc.DataServidor;
// Titulo.DescricaoMotivoRejeicaoComando := '';
// Titulo.DataOcorrencia :=
// Titulo.DataCredito :=
// Titulo.DataAbatimento :=
// Titulo.DataDesconto :=
// Titulo.DataMoraJuros :=
Titulo.DataProtesto := CdsFaturasVENCIMENTO.AsDateTime +
cdsContaDIASPROTESTO.AsInteger;
// Titulo.DataBaixa :=
Titulo.EspecieDoc := cdsContaESPECIEDOC.AsString;
Titulo.EspecieMod := cdsContaESPECIE.AsString;
// Titulo.Instrucao1 :=
// Titulo.Instrucao2 :=
Titulo.LocalPagamento := cdsContaLOCALPAGTO.AsString;
// Titulo.Mensagem :=
// Titulo.MotivoRejeicaoComando :=
Titulo.NumeroDocumento := CdsFaturasDOCPRINCIPAL.AsString;
Titulo.NossoNumero := CdsFaturasNOSSONUMERO.AsString;
// Titulo.OcorrenciaOriginal.Tipo := TipoOcorrencia;
Titulo.TotalParcelas := CdsFaturasQTDPARCELAS.AsInteger;
Titulo.Parcela := CdsFaturasPARCELA.AsInteger;
Titulo.PercentualMulta := cdsContaPERCMULTA.AsFloat;
// titulo.Referencia :=
// Titulo.Sacado.Avalista :=
Titulo.Sacado.Bairro := CdsFaturasBAIRROPES.AsString;
Titulo.Sacado.CNPJCPF := CdsFaturasCPFCNPJCHQ.AsString;
Titulo.Sacado.Complemento := CdsFaturasCOMPLEMENTO.AsString;
Titulo.Sacado.Cidade := CdsFaturasNOMECID.AsString;
Titulo.Sacado.CEP := CdsFaturasCEPPES.AsString + ' - ' + CdsFaturasBAIRROPES.AsString;
Titulo.Sacado.Email := CdsFaturasEMAILCOBRANCAPES.AsString;
// Titulo.Sacado.Fone :=
Titulo.Sacado.Logradouro := CdsFaturasENDERECOPES.AsString;
Titulo.Sacado.NomeSacado := CdsFaturasCODPES.AsString + ' - ' + CdsFaturasNOMEPES.AsString;
Titulo.Sacado.Numero := CdsFaturasNUMEROPES.AsString;
if Length(CdsFaturasCPFCNPJPES.AsString) > 11 then
Titulo.Sacado.Pessoa := pJuridica
else
Titulo.Sacado.Pessoa := pFisica;
Titulo.Sacado.UF := CdsFaturasUF.AsString;
Titulo.SeuNumero := CdsFaturasDOCUMENTO.AsString;
Titulo.Vencimento := CdsFaturasVENCIMENTO.AsDateTime;
Titulo.ValorDocumento := CdsFaturasVLRABERTO.AsFloat;
Titulo.ValorDespesaCobranca := 0;
Titulo.ValorAbatimento := 0;
Titulo.ValorDesconto := 0;
Titulo.ValorMoraJuros := ((CdsFaturasVALOR.AsFloat / 100) *
(cdsContaPERCJUROSATRASO.AsFloat / 30));
Titulo.ValorIOF := 0;
Titulo.ValorOutrasDespesas := 0;
Titulo.ValorOutrosCreditos := 0;
// Titulo.ValorRecebido := 0;
Titulo.Versao := '1.0';
// ACBrBoleto1.AdicionarMensagensPadroes(Titulo,Mensagem);
Application.ProcessMessages;
frmInfoOperacao.pgbInfo.Position := frmInfoOperacao.pgbInfo.Position + 1;
Application.ProcessMessages;
CdsFaturas.Next;
end;
end;
if Vizualizar then
ACBrBoleto1.Imprimir;
end;
============================================
uso a mesma função para imprimir 1 boleto ou vários....