Как создавать документы (docx или pdf )из SQL Server?

Я знаю, что это немного субъективно, но я рассматриваю следующую ситуацию:

Мне нужно автоматически создать ряд документов из данных в базе данных SQL Server. В базе данных будет установлено приложение MVC3, позволяющее вводить данные и т. д., и (, вероятно, )кнопка "Перейти" для создания документов.

Должна быть некоторая бизнес-логика о том, как эти документы создаются, именуются и хранятся (, например. «Родительские» документы получают одно имя и помещаются в одну папку, «дочерние» документы получают вычисляемое имя и помещаются в подпапку -.

Документы могут быть в формате PDF или Doc (x)(или даже в обоих форматах ), при условии, что вывод может быть в формате EN -US и AR -QA (RTL text)

Я знаю, что есть несколько вариантов из SSRS, Crystal Reports, VSTO, «ручной» PDF в коде, слияние почты Word,и т.д... и у нас уже есть инструмент HTML to PDF, если он нам пригодится?

Есть ли у кого-нибудь реальные советы о том, как это сделать и какой подход будет «лучшим» (наиболее прагматичным )? Чем меньше «дополнения» мне нужно установить и настроить на сервере, тем лучше -, чем быстрее разработка, тем лучше (как всегда!!)


Результаты на данный момент:

Word Mail Merge (или VSTO) Просто не предлагает той простоты, контроля и гибкости, которые мне нужны -стыдно. Было бы неплохо определить dotx и иметь возможность передавать ему данные на индивидуальной основе для создания docx. Единственный способ, которым я мог добиться этого (, и я могу ошибаться здесь ), состоял в том, чтобы перебирать элементы управления/закладки по имени и заменять значения... беспорядочно.

OpenXML Создание документов на основе шаблонов dotx даже с использованием OpenXML не так просто, как (ИМХО )должно быть. Вы должны заменить каждый элемент управления содержимым по имени, поэтому обслуживание — не самая простая задача.

ССРС На первый взгляд, это хорошее решение (, хотя для него требуется SQL Enterprise ), однако оно усложняется, если вы хотите динамически создавать папки и документы. Однако подписка на основе данных очень близка к тому, что я хочу.

Инновационный конвертер HTML в PDF* Это инструмент, который у нас уже есть (, хотя и в версии.Net 2.0 ). Это позволяет мне создавать HTML-страницы и преобразовывать их в PDF. Хороший вариант для меня, так как я могу запустить это на веб-сайте MVC3 и передать параметры в контроллеры для создания PDF-файлов. Это дает мне гораздо более точный -контроль над папками и структурами именования, -проблема с этим методом заключается в простом правильном создании страниц. Бонус в том, что он автоматически дает мне "предварительный просмотр"... в основном только HTML-страницу!

12
задан BlueChippy 9 May 2012 в 04:39
поделиться