Mail Merge С региони

Можете да създадете различни региони във вашия шаблон, за да има специални области, които можете просто да попълните с вашите данни. Използвайте Mail Merge С региони, ако искате да вмъкнете таблици, редове с повтарящи се данни, за да направите документите си динамично да растат, като зададете тези региони във вашия шаблон.

Можете да създавате вложени (Детски) региони, както и да обединявате региони. Основното предимство на използването на този тип е динамично увеличаване на частите вътре в документа. Вижте повече подробности в следващата статия “вложени Mail Merge С региони”.

Как да се изпълни Mail Merge С региони

Mail Merge регион е специфична част в документ, която има начална и крайна точка. И двете точки са представени като Mail Merge полета, които имат конкретни имена “TableStart:XXX” и “TableEnd:XXX”. Цялото съдържание, включено в регион Mail Merge, ще се повтаря автоматично за всеки запис в източника на данни.

Aspose.Words ви позволява да изпълнявате Mail Merge с региони, като използвате един от методите ExecuteWithRegions, които приемат IMailMergeDataSource потребителски източник на данни.

Следващият пример за код показва как да се изпълни Mail Merge с региони от базата данни с SQLiteCpp:

Можете да забележите разликата между документа, преди да изпълните Mail Merge С региони:

mail_merge_with_regions_template

И след изпълнение Mail Merge С региони:

mail_merge_with_regions_execute

Ограничения на Mail Merge С региони

Има някои важни точки, които трябва да имате предвид при извършване на Mail Merge С региони:

  • Началната точка TableStart:Orders и крайната точка TableEnd:Orders трябва да бъдат в един и същ ред или клетка. Например ако стартирате област за обединяване в клетка на таблица, трябва да завършите областта за обединяване в същия ред като първата клетка. Името на полето за обединяване трябва да съответства на името на колоната във вашето DataTable. Освен ако не зададете нанесени полета, Mail Merge С региони няма да успее за всяко Обединено поле, което има име, различно от името на колоната.
  • Aspose.Words за C++ поддържа само IMailMergeDataSource и IMailMergeDataSourceRoot базирани източници на данни. За разлика от .NET и Java, C++ няма общоприета междуплатформена API за работа с бази данни (като ADODB, ODBC или JDBC). За да работите с конкретен източник на данни, трябва да внедрите интерфейс IMailMergeDataSource или IMailMergeDataSourceRoot.

Ако някое от тези правила е нарушено, ще получите неочаквани резултати или може да се хвърли изключение.