Как получить данные из базы данных SQL в Word 2010?

Вопрос:Я хотел бы заполнить документ Word данными из нашей базы данных MS SQL. Возможно ли это, и если да, то как? Ответ №1В прошлом я делал это разными способами. Это зависит от того, инициирует ли пользователь действие из OUTSIDE Microsoft Word или из INSIDE Microsoft Word. В ВНУТРИ Microsoft Word вы можете использовать один из

Вопрос:

Я хотел бы заполнить документ Word данными из нашей базы данных MS SQL.

Возможно ли это, и если да, то как?

Ответ №1

В прошлом я делал это разными способами. Это зависит от того, инициирует ли пользователь действие из OUTSIDE Microsoft Word или из INSIDE Microsoft Word.

В ВНУТРИ Microsoft Word вы можете использовать один из следующих методов:

  • Откройте шаблон с заполнителями и используйте VBA или VSTO, чтобы перебирать их, используя источник данных, используя копию и вставку. Обратите внимание, что здесь также есть и преступление. Этот подход напоминает подход 1 ниже с “ВНЕШНИМ”. Недостаток в том, что он относительно медленный (копирование и вставка) и автокоррекция Microsoft Word любит пинать, когда наименее необходимо.
  • Откройте шаблон с заполнителями и используйте VBA или VSTO для анализа XML-представления, а затем замените их. Это быстрее, но труднее писать. Тем более, что представление XML может содержать фрагменты XML в заполнителях (например, “&amp;lt;&amp;lt;PUT_<xxx/>IT_HERE&amp;gt;&amp;gt;” и более сложные случаи). Кроме того, вам необходимо убедиться, что вы сохранили действительный XML-документ и хорошо сбалансированы.

В ВНЕШНЕМ Microsoft Word (например, веб-интерфейс) вы можете использовать один из следующих способов:

  • Храните шаблон где-нибудь, используя RTF (который намного проще обрабатывать, чем собственная структура Word). Поместите ‘&lt;&lt;PLACEHOLDER-FOR-NAME&gt;&gt;‘ или аналогичные легко узнаваемые тексты, где вы хотите их заменить. Когда пользователь запрашивает документ Word, извлекает RTF, извлекает данные, заменяет заполнители, RTF сервера пользователю. RTF имеет некоторые ограничения, но некоторые преимущества. Преимущества: простота создания новых шаблонов, а также работает с Microsoft Wordpad и другими пакетами Office. Недостатки в том, что таблицы являются реальными беспорядками для обработки и что не все конструкции Microsoft Word возможны. Повторение строк в таблице еще менее рекомендуется. Проблема с большим объемом.
  • Используйте пакет отчетов, который также выводит документы docx, doc или RTF. Написать отчет. В целом идеально подходит для большого объема. Менее подходит, если вы хотите, чтобы конечный пользователь набирал большое количество дополнительного текста, поскольку пакеты отчетов обычно работают на основе страниц вместо этого в тексте, где иногда вставляется явный или неявный разрыв страницы. Но если вам нужен только конечный пользователь, чтобы ввести одно или два предложения, достаточно.
  • Fat-клиент. Поместите данные SQL где-нибудь. Откройте Word. Прочтите данные и ознакомьтесь с дополнительными методами для INSIDE Microsoft Word.

Если вам нужно заполнить документ Word из SQL Server (или любой другой базы данных или платформы данных), я могу предложить бесплатную версию Invantive Composition для заполнения Документы Word из базы данных (обратите внимание, что я был связан с этим продуктом). Он открывает шаблоны и объединяет их из Word, но более ориентирован на не-разработчиков; просто укажите шаблон и блоки данных (возможно, вложенные) и опубликуйте. Разработчики могут добавлять только С# в плагины. Я думаю, что это хороший продукт, когда у вас много шаблонов (более 50), потому что он легче масштабируется.

Ответ №2

Вы можете использовать запрос Microsoft для получения данных из базы данных SQL в ваш документ, это видео может быть полезно
https://vimeo.com/83983247

Ответ №3

Вы также можете попробовать использовать MS-Excel, поскольку он связывается с XML лучше, чем Word.
Легко также заставить Excel генерировать вывод в стиле “Word”.

Оцените статью
Добавить комментарий