XML — це рекомендована W3C самоописова мова, призначена для зберігання та транспортування даних. Розробник може змінити формат XML на будь-який інший, кращий для читання людиною формат, як-от документ PDF або MS Word у програмі .NET. У цій статті буде обговорено, як конвертувати дані XML у звіти PDF і MS Word за допомогою C# за допомогою простих шаблонів.

Звіт XML у PDF на C#

Нижче обговорюються такі теми:

Створення звітів .NET API – XML у PDF і WORD

GroupDocs.Assembly for .NET — це API для автоматизації створення звітів із даних XML за допомогою шаблону DOCX або TXT. Крім того, він підтримує JSON, CSV та інші джерела даних для перетворення даних у звіти різних форматів файлів.

Ви можете завантажити DLL або інсталятор MSI із розділу завантажень або встановити API у своїй програмі .NET за допомогою NuGet.

PM> Install-Package GroupDocs.Assembly

Створення PDF-звіту з даних XML у C#

3 прості кроки допоможуть вам перетворити XML-дані у відформатований PDF-звіт.

  1. Завантажте своє джерело даних XML.
  2. Визначте шаблон відповідно до завантажених даних XML.
  3. Нарешті, надайте джерело даних XML і шаблон для методу створення звіту.

Дані XML

Наведені нижче зразки даних XML використовуються для їх перетворення у звіт PDF. Він містить дані менеджерів та їхніх відповідних клієнтів з деякими додатковими відомостями.

<Managers>
	<Manager>
		<Name>John Smith</Name>
		<Contract>
			<Client>
				<Name>A Company</Name>
			</Client>
			<Price>1200000</Price>
		</Contract>
		<Contract>
		...
		</Contract>
		...
	</Manager>
	<Manager>
		<Name>Tony Anderson</Name>
		...
	</Manager>
	...
</Managers>

Шаблон

Визначте шаблон у форматі TXT або DOCX відповідно до вихідних даних XML. Я використовую згаданий нижче шаблон, створений відповідно до згаданих вище XML-даних менеджерів. Це змусить генератор звітів повторювати менеджерів та їхніх відповідних клієнтів. Після завершення шаблону ви майже готові. Ви можете використовувати наведений нижче код для створення звіту.

<<foreach \[in managers\]>>Manager: <<\[Name\]>>
Contracts:
<<foreach \[in Contract\]>>- <<\[Client.Name\]>> ($<<\[Price\]>>)
<</foreach>>
<</foreach>>

Кроки C# для створення PDF-звіту з XML

Наступні кроки дозволять вам автоматизувати створення PDF-звітів із ваших XML-даних відповідно до визначеного шаблону.

  • Визначте файл даних XML, файл текстового шаблону та файли вихідних звітів PDF.
  • Створіть екземпляр XMLDataSoure із файлом даних XML.
  • Створіть DataSourceInfo із визначеним джерелом даних XML.
  • Викличте метод AssembleDocument, щоб створити звіт PDF.

Наведений нижче код реалізує описані вище дії та генерує PDF-файл із джерела даних XML за допомогою C#.

// Створення PDF-звіту з даних XML за допомогою шаблону TXT у CSharp
// Визначте джерело даних, шаблон і файли вихідних звітів.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-pdf-report.pdf";
// Завантажити джерело даних XML
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// Зберіть документ для створення PDF
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));

Створення звіту MS Word із даних XML у C#

Таким же чином ви також можете створити звіт у форматі MS Word DOC/DOCX, використовуючи ті самі дані XML. Код не відрізнятиметься від того, що ми обговорювали вище, за винятком того, що вам доведеться змінити ім’я вихідного файлу.

  • Завантажте файл даних XML.
  • Визначення шаблону у форматі TXT або DOCX.
  • Встановіть вихідний формат документа звіту як DOCX.
  • Надайте файл даних XML, шаблон і вихідний шлях до DocumentAssembler, щоб конвертувати XML у DOCX.

Наступний код перетворює XML і створює файл DOCX за допомогою визначеного шаблону за допомогою C#.

// Створення звіту MS Word із даних XML за допомогою текстового шаблону в CSharp
// Визначте джерело даних, шаблон і файли вихідних звітів.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-word-report.docx";
// Завантажити джерело даних XML
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// Зберіть документ для створення звіту Word
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));

Отримайте безкоштовну ліцензію API

Ви можете отримати безкоштовну тимчасову ліцензію, щоб використовувати API без оціночних обмежень.

Висновок

Підсумовуючи, ви навчилися перетворювати XML-дані у формат PDF як звіт за допомогою C# із програмою .NET. Крім того, ми обговорили створення звіту у форматі DOC/DOCX з того самого XML за допомогою шаблону. Прочитавши цю серію дописів про створення звітів; Створюйте звіти PDF і MS Word із JSON, CSV, XML, ви можете розробити власну програму .NET для створення звітів.

Щоб дізнатися більше про GroupDocs.Assembly, параметри та приклади, відвідайте документацію і репозиторій GitHub. Щоб отримати додаткові запитання, зв’яжіться з нами через форум.

Дивись також