Muy a menudo en producción hay una tarea para enviar varias cartas con archivos adjuntos en formato pdf. Esto puede ser no solo facturas o facturas, sino también notificaciones o invitaciones, mensajes personales sobre promociones y similares. Por supuesto, desde la boda, otras cien personas yacían en el cuaderno. El texto de la carta puede ser estático o variable. Y luego navegas por Internet con la pregunta de cómo hacerlo ...
Tomemos como base la siguiente carta

El texto del cuerpo de la carta no cambiará durante el envío, excepto el texto en cursiva, respectivamente, el remitente también será uno, pero habrá varios destinatarios
Prepararemos la base de destinatarios en formato xml, no explicaré lo que significa el título, creo que un lector experimentado lo descubrirá él mismo. Solo noto que el formato cambia fácilmente para adaptarse a sus datos, que se escriben de acuerdo con su plantilla individual
Entonces, la base de datos de destinatarios (los archivos xml originales se encuentran al final del enlace. Puede descargarlos y cambiarlos a voluntad)

Como
modelo, tenemos un conjunto de campos Fecha, Nombre de la empresa, Nombre, Dirección, Ciudad, Teléfono
<Date>Friday, 23/05/2019</Date> <CompanyName>Qualcomm</CompanyName> <Name>Lucas</Name> <Address>711-2880 Nulla St.</Address> <City>Mankato Mississippi 96522</City> <Phone>(257) 563-7401</Phone>
Descargue la demostración de
FastReport y abra
Letter_Blank.frx
En este caso, la fecha de envío de la carta en la esquina superior derecha se extiende desde el archivo xml, por lo que reemplazamos este texto con

Lo que significa que el texto se extenderá desde el campo Datos de la tabla Cartas.
Del mismo modo, realizamos una sustitución similar con otros valores dinámicos (se resaltan en rojo para mayor claridad)

Puede familiarizarse con estos reemplazos en el archivo
Letter.frx con más detalle
.Ejecute el informe y obtenga

Imprimimos y enviamos. No es difícil escribir un programa que haga todo el conjunto de tales operaciones y lo envíe por correo electrónico, esto se discutirá en otro momento)
github.com/ufocombat/Letters