Boa tarde pessoal.
Estou implementando uma rotina para envio de faturas comerciais em massa, por e-mail. Para tal, utilizo os componentes TACBrBoleto e TACBrBoletoFCFR.
Ao executar o procedimento TACBrBoleto.EnviarEmail, o componente mostra a tela de setup da exportação do PDF, o que não é de meu interesse. Reparei que existe a propriedade 'MostrarSetup', mas a finalidade dela parece estar restrita apenas ao diálogo de impressão, e não ao de exportação.
Debugando o programa, cheguei ao procedimento TACBrBoletoFCFR.Imprimir, no qual o TDataModule responsável pela impressão é criado em tempo de execução (DmBoleto). Isto impede qualquer alteração dos dados nele contidos fora do contexto do procedimento (no código do aplicativo):
procedure TACBrBoletoFCFR.Imprimir;
var
DmBoleto: TdmACBrBoletoFCFR;
begin
inherited Imprimir; // Verifica se a lista de boletos está vazia
DmBoleto := TdmACBrBoletoFCFR.Create(Self);
...
Logo após, a propriedade 'MostrarSetup' é aplicada nas opções de impressão do report:
frxReport.PrintOptions.ShowDialog := MostrarSetup;
E, finalmente, o momento da exportação do arquivo:
frxPDFExport.FileName := NomeArquivo;
{Esta é a linha que está resolvendo o impasse, por enquanto}
DmBoleto.frxPDFExport.ShowDialog := MostrarSetup;
frxReport.Export(DmBoleto.frxPDFExport);
Gostaria de saber dos colegas se há alguma outra forma de contornar isto. Caso não haja, como proceder para aplicar esta solução no projeto? É interessante criar outra propriedade específica para este fim?
Desde já agradeço a atenção,
Gabriel.