propform puede generar documentos PDF tras el envío de un formulario —por ejemplo, documentación sobre blanqueo de capitales, órdenes de cambio de divisas, actas de entrega, confirmaciones de reserva— y archivarlos en onOffice, adjuntarlos a un correo electrónico o ambas cosas.
## Concepto: PDF mediante plantillas de onOffice
propform utiliza el onOffice PDF Designer para la creación de PDF. Al enviar, propform solicita a onOffice que genere la plantilla seleccionada y guarda el resultado en el registro deseado.
> ⚠️ Limitación importante de la API: Actualmente solo existe la llamada a la API PDFExposé, no PDFBrief. Por este motivo, los documentos de blanqueo de capitales, los encargos de emergencia, etc., se crean como «Exposé», aunque en cuanto al contenido son documentos PDF normales y corrientes. propform lleva años solicitando a onOffice una llamada a la API dedicada a cartas, pero aún no se ha implementado.
La plantilla debe «activarse» explícitamente; de lo contrario, el usuario de la API no podrá leerla:
El tamaño del logotipo, los márgenes y las fuentes deben configurarse individualmente en cada nueva plantilla, lo cual resulta engorroso. Crea una plantilla maestra con tu configuración estándar (logotipo arriba, márgenes, fuentes) y cópiala cada vez, en lugar de crear una nueva desde cero.
Si el PDF muestra los valores del formulario como una lista, el texto continuo queda feo rápidamente. Mejor: diseño de tabla.
Al configurar el correo en propform → en el cuerpo Haz clic en «Añadir campos de formulario como macros» → propform escribe todas las macros de campo en orden en el cuerpo del correo.
Copia este bloque (Ctrl+C) y pégalo en la plantilla de PDF. Así tendrás todas las macros con la ortografía correcta ya juntas, lo que te ahorra tener que buscarlas manualmente.
_xVertragspartner)Resultado: un PDF limpio y legible con dos columnas.
En Configuración del formulario → «Crear y guardar archivo», configura lo siguiente:
| Configuración | Qué |
|---|---|
| Plantilla PDF | Seleccionar del menú desplegable de plantillas de onOffice |
| Ubicación de almacenamiento | Dirección o inmueble (o ambos) |
| Característica del documento | opcional — p. ej., «Documento de blanqueo de capitales», «Reserva», «Acta de entrega» |
| Nombre del archivo | Texto sin cifrar con macros, p. ej., Geldwaesche_Doku_<_Vorname>_<_Name> |
| Protección de PDF | opcional, impide la edición posterior |
En la configuración del correo electrónico → marcar la casilla «Adjuntar archivos enviados desde el formulario». Los archivos creados también se consideran «archivos enviados» y se adjuntan automáticamente.
> 💡 Flujo de trabajo: Enviar → El archivo se crea en segundo plano (1-3 segundos) → El archivo se guarda en el registro → Se envía el correo con el archivo adjunto al destinatario.
Los campos/plantillas se actualizan cada mañana. Si acabas de crear una nueva plantilla en onOffice:
Para más información sobre este «truco de actualización», consulta Los campos no se muestran.
## Pre-macros para plantillas PDF
En las plantillas PDF generadas mediante envío por correo electrónico, la resolución de macros se realiza en el destinatario del correo, no en el solicitante. Esto da lugar a campos vacíos si el destinatario es un compañero de trabajo interno.
| Pre-macro | Significado |
|---|---|
_Kaeufer / _Buyer |
accede al comprador vinculado en el formulario |
_Eigent / _Owner |
accede al propietario vinculado en el formulario |
_Mieter / _Renter |
accede al inquilino vinculado en el formulario |
> ⚠️ Formato: La pre-macro y el nombre del campo se escriben sin guión entre ellos, es decir, _KaeuferVorname, no _Kaeufer_Vorname.
Ejemplo en el PDF:
Käufer: _KaeuferVorname _KaeuferName
Anschrift: _KaeuferStrasse, _KaeuferPlz _KaeuferOrt
Eigentümer: _EigentVorname _EigentName
Así se extraen los datos correctos, independientemente del destinatario del correo.
📖 Más información sobre los enlaces de direcciones: Combinar varios registros y Los valores no se transfieren al PDF.
Si el PDF debe contener firmas, escaneos de documentos de identidad u otras imágenes de campos de archivo, utiliza las macros de ruta de archivo:
_dateipfadAdressfeld(unterschrift_kaeufer;400;variabel;mail;html)
Parámetros (el orden es importante, separados por punto y coma):
variabel (proporcional)px o mmmail o htmlPara campos de archivos inmobiliarios: _dateipfadObjektfeld(...) con la misma sintaxis.
En contratos notariales o actas de entrega con varios compradores/propietarios: utilice la macro de ruta de archivo dentro del bucle de direcciones — un campo de archivo propio por cada comprador:
Vertragspartner:
_buyerbrek_1_
- _BuyerVorname _BuyerName
Unterschrift: _ifEmpty(unterschrift_kaeufer;"";"_dateipfadAdressfeld(unterschrift_kaeufer;400;variabel;mail;html)")
_buyererek_1_
> 🔒 Envolver siempre _ifEmpty(...): Si un comprador aún no ha firmado (campo de archivo vacío), la macro mostraría un marcador de posición. Con el envoltorio _ifEmpty, el espacio simplemente queda vacío — el PDF tiene un aspecto ordenado.
Dado que un campo de archivo solo almacena un archivo, necesitarás dos campos de archivo separados para el anverso y el reverso del documento de identidad (por ejemplo, ausweis_vorne y ausweis_hinten). A continuación, insértalas ambas una tras otra en el PDF — lo ideal es hacerlo con una tabla y un ancho de 600 px cada una.
Si el botón «Crear y guardar archivo» está activado, pero no se ha seleccionado ninguna plantilla: no ocurre nada. No hay mensaje de error, no hay PDF.
Solución: Selecciona siempre la plantilla de forma explícita. Si temporalmente no quieres un PDF, es mejor desactivar el botón.
_Name, _Vorname, _Strasse)_objektart, _ort, _plz)Escritura incorrecta → El campo permanece vacío en el PDF. Más información en Los valores no se transfieren al PDF.
Si la plantilla no aparece en el menú desplegable de propform, comprueba:
Más información en Mi formulario no escribe datos, punto 6.