Pessoal já resolvi meu problema posta ai em cima , não consegui resolver o erro que tava dando, mas acho que era pelo fato de ter dois componente mas como não entendo de oop não aventurei descobrir no fonte.
minha solução foi mais simples eu acho:
segue trecho do codigo ; uso o mesmo acbrBoleto, como os dados ja estao selecionado so limpo os titulos ai faço um por um
ACBrBoletoLote.ACBrBoletoFC.NomeArquivo :=
cdsConfigBOL_PATH_GERARPDF.AsString+'\'+'Boletos '+FormatDateTime('DDMMYYYYHHMMSS',Now)+'.pdf';
if Application.MessageBox('Enviar Boleto Individual a cada Formando?',
'Atenção!', MB_YESNO + MB_ICONINFORMATION) = IDYES then
begin
ACBrBoletoLote.ListadeBoletos.Clear;
if DBGrid1.SelectedRows.Count > 0 then
begin
with DBGrid1 do
begin
for X := 0 to Pred(SelectedRows.Count) do
begin
Datasource.Dataset.Bookmark := SelectedRows[X];
xNossoNumero := IntToStr(cdsContasCTR_ID.AsInteger);
// aqui pego os boletos que ja tem nosso numero ja gerado
// sao 2 rotinas semelhantes na primeira nosso numero tem estar null
pra gerar os pdf,html, remessa.
if not cdsContasCTR_NOSSONUMERO.IsNull then
begin
Titulo:= ACBrBoletoLote.CriarTituloNaLista;
with Titulo do
begin
Vencimento := cdsContasCTR_DTVENC.AsDateTime;
DataDocumento := cdsContasCTR_DTEMIS.AsDateTime;
NumeroDocumento := IntToStr(cdsContasCTR_ID.AsInteger);
EspecieDoc := cdsConfigBOL_ESPECIE.AsString;
if cdsConfigBOL_ACEITE.AsString = 'SIM' then
Aceite := atSim
else
Aceite := atNao;
DataProcessamento := Now;
Carteira := cdsCedenteCED_CARTEIRA.AsString;
NossoNumero := xNossoNumero;
ValorDocumento := cdsContasCTR_VLFIM.AsFloat;
Sacado.NomeSacado := cdsContasCLI_NOME.AsString;
Sacado.CNPJCPF := cdsContasCLI_CPF.AsString;
Sacado.Logradouro := cdsContasCLI_ENDR.AsString;
Sacado.Numero := cdsContasCLI_NUMR.AsString;
Sacado.Bairro := cdsContasCLI_BAIRRR.AsString;
Sacado.Cidade := cdsContasCID_NOME.AsString;
Sacado.UF := cdsContasCID_CODTUF.AsString;
Sacado.CEP := cdsContasCLI_CEPR.AsString;
Sacado.Email :='
[email protected]'; //cdsContasCLI_EMAIL.AsString;
ValorAbatimento := 0;
LocalPagamento := CdsConfigBOL_LOCAL_PAGTO.AsString;
ValorMoraJuros := 0;
ValorDesconto := 0;
ValorAbatimento := 0;
DataMoraJuros := 0;
DataDesconto := 0;
DataAbatimento := 0;
DataProtesto := cdsContasCTR_DTVENC.AsDateTime + cdsConfigBOL_DIAS_PROTESTO.AsInteger;
PercentualMulta := 0;
Mensagem.Text := CdsConfigBOL_MENSAGEM.AsString;
OcorrenciaOriginal.Tipo := toRemessaBaixar;
Instrucao1 := padL(trim(CdsConfigBOL_INSTRUCAO_1.AsString),2,'0');
Instrucao2 := padL(trim(CdsConfigBOL_INSTRUCAO_2.AsString),2,'0');
Parcela := 1;
end; // with titulo
EnviaBoletoEmail;