Funciones avanzadas Mail Merge
Aspose.Words proporciona algunas propiedades y métodos adicionales de mail merge que le permiten realizar una mayor personalización del proceso mail merge en mail merge simple o mail merge con regiones.
Las funciones avanzadas de mail merge incluyen, entre otras, obtener información sobre la estructura de la plantilla antes de realizar una operación mail merge, establecer reglas para una operación mail merge y limpiar durante una operación mail merge. Este artículo cubrirá solo algunas propiedades y ejemplos para mostrarle cómo usar las funciones avanzadas.
Establecer reglas para las Operaciones Mail Merge
Agregar reglas a su plantilla le permite hacer que el proceso de flujo de trabajo sea más efectivo y flexible. Con las reglas mail merge, puede configurar contenido que se pueda cambiar rápidamente y evitar la necesidad de generar varios documentos.
Aspose.Words le permite personalizar mail merge en función de las reglas que se ejecutan cuando realiza la operación mail merge y controla la información de combinación. Por ejemplo, cuando crea un correo electrónico o una carta para enviar a todos sus clientes. Puede configurar una regla para que la carta contenga varios datos en función de los diferentes valores en ciertos campos de su fuente de datos.
Eche un vistazo a algunas reglas mail merge que puede implementar.
Implemente el Siguiente campo para Fusionar Registros de Datos en el Documento Actual
Puede implementar el campo Next para fusionar el siguiente registro de datos en el documento fusionado resultante actual, en lugar de iniciar un nuevo documento fusionado. Se utiliza para mostrar varios registros en un documento.
Implemente los campos NextIf y SkipIf para Comparar dos Expresiones
Puede usar el campo NextIf o el campo SkipIf si desea comparar dos expresiones (expresiones[right]https://reference.aspose.com/words/cpp/aspose.words.fields/fieldif/) and left) con operator.
NextIf
Field Name | Comparison Result “True” | Comparison Result “False” |
---|---|---|
NextIf |
Aspose.Words fusionará el siguiente registro de datos en el documento de combinación actual, y todos los campos de combinación de la plantilla que estén después del campo NextIf se reemplazarán por valores del siguiente registro de datos en lugar del registro de datos actual. | Aspose.Words fusionará el siguiente registro de datos en un nuevo documento de combinación. |
SkipIf |
Aspose.Words cancelará el documento de combinación actual, pasará al siguiente registro de datos en el origen de datos e iniciará un nuevo documento de combinación. | Aspose.Words continuará con el documento de combinación actual. |
Obtener Información Sobre La Estructura De La Plantilla
Aspose.Words le permite recopilar información diferente en su plantilla a través de muchos métodos. Por ejemplo, es posible que necesite obtener los nombres de algunos campos de combinación o la jerarquía de regiones en su plantilla. Ahora te explicaremos las posibles variantes para obtener alguna información específica de tu plantilla.
Obtener Nombres de Campos de Combinación
Puede encontrarse con un escenario en el que querrá fusionar datos con campos de combinación creados por otros y, en este caso, no estará seguro de los nombres exactos de los campos de combinación. Por lo tanto, para lograr el propósito mail merge, primero deberá leer y mostrar los nombres de todos los campos de combinación. Aspose.Words le permite obtener una colección de nombres de campos de combinación utilizando el método GetFieldNames.
El siguiente ejemplo de código muestra cómo obtener los nombres de todos los campos de combinación en la plantilla:
Obtener Información Sobre La Fusión De Regiones
Es posible que tenga un escenario en el que desee comprender cómo se estructura su plantilla a través de las regiones de combinación especificadas. Puede utilizar algunos métodos para recopilar toda la información necesaria sobre las regiones de combinación o para obtener la jerarquía de regiones de combinación en su plantilla, como el método GetRegionsHierarchy. Puede usar las propiedades y métodos de la clase MailMergeRegionInfo.El siguiente ejemplo de código muestra cómo obtener la jerarquía de regiones combinadas:
System::SharedPtr<MailMergeRegionInfo> regionInfo = doc->get_MailMerge()->GetRegionsHierarchy();
Agregar Campos Asignados
Aspose.Words le permite asignar automáticamente nombres de campos en su fuente de datos y nombres de mail merge campos en la plantilla usando la propiedad MappedDataFields. Por ejemplo, si tiene un nombre de campo llamado “Apellido” en su plantilla y en su fuente de datos tiene el nombre de campo “Apellido” u otra variación como “Apellido” o " LastName", entonces el campo en la fuente de datos se asignará automáticamente al campo asignado correspondiente. Si una plantilla de combinación se va a combinar con muchas fuentes de datos, los campos asignados hacen innecesario volver a ingresarlos en la plantilla para que coincidan con los nombres de campo de la base de datos.
El siguiente ejemplo de código muestra cómo agregar un campo asignado mediante el método Add cuando un campo de combinación en una plantilla y un campo de datos en una fuente de datos tienen nombres diferentes: