Самая простая генерация документов Microsoft Office 2007/2010

Коллеги прислали ссылку на описание процесса генерации документов формата OpenXML.

Это наиболее быстрый и эффективный способ изо всех мне известных.

Для генерации потребуется Open XML SDK 2.0 и Open XML SDK 2.0 Productivity Tool for Microsoft Office.

Последовательность шагов при создании документа следующая:

  1. Создаём необходимый документ в Microsoft Office Word или Excel.
  2. Открываем созданный документ в Open XML SDK 2.0 Productivity Tool и жмём кнопку "Reflect Code".Open XML SDK 2.0 Productivity Tool for Microsoft Office
  3. Вставляем сгенерированный утилитой класс генерации документа (код на C#) в своё приложение.

Теперь остаётся только раскидать по сгенерированному коду поля с динамическими значениями и создать документ:

(new GeneratedClass()).CreatePackage(@"D:\Temp\Output.docx");

Или так (для отдачи файла клиенту из ASP.NET-приложения):

byte[] reportBinary = (new GeneratedClass()).CreatePackageAsBytes();

Единственный минус, на мой взгляд, сложность внесения исправлений в используемый шаблон. Тут или заново вставлять код, заполняющий динамические поля, либо сливать новый код (генерируемый утилитой) документа со старым.

Вот тут даже видео есть, оказывается, технология-то - бородатая.

Ваша оценка: Пусто Средняя: 4.8 (31 голос)

Комментарии

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.
  • Syntax highlight code surrounded by the {syntaxhighlighter SPEC}...{/syntaxhighlighter} tags, where SPEC is a Syntaxhighlighter options string or "class="OPTIONS" title="the title".

Подробнее о форматировании

Image CAPTCHA
Enter the characters shown in the image.
Работает на Drupal, система с открытым исходным кодом.