Розширені функції Mail Merge
Aspose.Words надає деякі додаткові Mail Merge властивості та методи, які дозволяють додатково налаштувати процес Mail Merge Як простий Mail Merge або Mail Merge з регіонами.
Розширені функції Mail Merge включають, але не обмежуються ними, отримання інформації про структуру шаблону перед виконанням операції Mail Merge, налаштування правил для операції Mail Merge та очищення під час операції Mail Merge. У цій статті ми розглянемо лише кілька властивостей та прикладів, які покажуть вам, як використовувати розширені функції.
Встановіть правила для операцій Mail Merge
Додавання правил до шаблону дозволяє зробити робочий процес більш ефективним та гнучким. Використовуючи правила Mail Merge, ви можете налаштувати вміст, який можна швидко змінити, і уникнути необхідності створювати кілька документів.
Aspose.Words дозволяє налаштувати параметр Mail Merge на основі правил, які запускаються під час виконання операції Mail Merge та управління інформацією про злиття. Наприклад, при створенні електронного повідомлення або листа для відправки всім Вашим Клієнтам. Ви можете налаштувати правило таким чином, щоб лист міг містити різні дані на основі різних значень у певних полях вашого джерела даних.
Погляньте на деякі правила Mail Merge, які ви можете реалізувати.
Реалізуйте наступне поле для об’єднання записів даних у поточному документі
Ви можете використовувати поле Next для об’єднання наступного запису даних у поточний отриманий об’єднаний документ, замість того, щоб створювати новий об’єднаний документ. Воно використовується для відображення декількох записів в одному документі.
Реалізуйте поля NextIf та SkipIf для порівняння двох виразів
Ви можете використовувати поле NextIf або поле SkipIf, якщо хочете порівняти два вирази (вирази [right]https://reference.aspose.com/words/cpp/aspose.words.fields/fieldif/) and left) з деяким значенням operator.
NextIf
Field Name | Comparison Result “True” | Comparison Result “False” |
---|---|---|
NextIf |
Aspose.Words призведе до об’єднання наступного запису даних з поточним документом злиття, і всі поля злиття в шаблоні, які знаходяться після поля NextIf, будуть замінені значеннями з наступного запису даних, а не з поточного запису даних. | Aspose.Words призведе до об’єднання наступного запису даних у Новий об’єднуючий документ. |
SkipIf |
Aspose.Words скасує поточний об’єднуючий документ, перейде до наступного запису даних у джерелі даних та запустить новий об’єднуючий документ. | Aspose.Words продовжить роботу з поточним об’єднуючим документом. |
Отримати інформацію про структуру шаблону
Aspose.Words Дозволяє збирати різну інформацію у вашому шаблоні різними способами. Наприклад, вам може знадобитися отримати назви деяких полів злиття або ієрархію регіонів у вашому шаблоні. Тепер ми пояснимо можливі варіанти отримання певної інформації з вашого шаблону.
Отримання імен полів злиття
Ви можете зіткнутися зі сценарієм, коли вам захочеться об’єднати дані з полями злиття, створеними іншими користувачами, і в цьому випадку ви не будете впевнені в точних назвах полів злиття. Отже, для досягнення мети Mail Merge, по-перше, вам потрібно буде прочитати та відобразити назви всіх полів злиття. Aspose.Words дозволяє отримати колекцію імен полів злиття, використовуючи метод GetFieldNames.
Наступний приклад коду показує, як отримати імена всіх полів злиття в шаблоні:
Отримайте інформацію про регіони злиття
Можливо, у вас є сценарій, коли ви хочете зрозуміти, як структурований ваш шаблон за допомогою зазначених областей злиття. Ви можете використовувати деякі методи для збору всієї необхідної інформації про регіони злиття або для отримання ієрархії областей злиття у вашому шаблоні, наприклад, метод GetRegionsHierarchy. Ви можете використовувати властивості та методи класу MailMergeRegionInfo.Наступний приклад коду показує, як отримати ієрархію областей злиття:
System::SharedPtr<MailMergeRegionInfo> regionInfo = doc->get_MailMerge()->GetRegionsHierarchy();
Додавання зіставлених полів
Aspose.Words дозволяє автоматично зіставляти назви полів у вашому джерелі даних та назви полів Mail Merge у шаблоні, використовуючи властивість MappedDataFields. Наприклад, якщо у вашому шаблоні є ім’я поля під назвою “прізвище”, а у вашому джерелі даних є ім’я поля “прізвище” або інший варіант, наприклад “Last_Name” або “LastName”, то поле у джерелі даних автоматично перетворюється у відповідне зіставлене поле. Якщо шаблон злиття повинен бути об’єднаний з багатьма джерелами даних, зіставлені поля не вимагають повторного введення полів у шаблон для узгодження з іменами полів у базі даних.
Наступний приклад коду показує, як додати зіставлене поле за допомогою методу Add, коли комбіноване поле в шаблоні та поле даних у джерелі даних мають різні назви: