Generador de correo electrónico empresarial PDF basado en datos XML

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

Source: https://habr.com/ru/post/453312/


All Articles