2010-02-14 4 views
4

В нашем приложении большой буквы есть очень важный вариант печати писем, которые затем печатаются и высылаются из почтового дома (в тысячах в день). Текущая ситуация заключается в том, что шаблоны букв создаются в Word 97, а поля - это почта, объединенная с значениями в базе данных с использованием приложения VB.Net, которое в основном использует автоматизацию слов. Но в зависимости от Word 97 сегодня это не очень хорошая идея. У нас есть только несколько компьютеров, на которых установлен Word 97, поскольку остальная часть компании переместилась в Office 2007.Какое программное обеспечение вы используете для шаблонов букв и печати?

Какое программное обеспечение или технология (совместимая с .Net) доступны сегодня, что лучше всего подходит для этого сценария. Лучше делать то же самое, но переходить в Word 2007 или PDF или что-то еще. Цена не может быть фактором. Важно то, что шаблоны букв должны быть разработаны бизнес-пользователями, а данные для заполнения заполнителей - из базы данных.

Бонус будет заключаться в том, чтобы импортировать сотни существующих шаблонов писем Word 97 без переписывания их с нуля.

+0

Если вы действительно не хотите переписывать все это, я бы предложил создать виртуальную машину, на которой установлен Word 97, а затем передать эту виртуальную машину тому, кому нужно запустить печать букв. –

+0

Вот что это эффективно. Вместо VM у нас есть настоящие специализированные машины со словом 97. Создание виртуальной машины тривиально, вопрос опирался на слово 97 и продолжал использовать его в будущем для создания новых шаблонов. – softveda

ответ

0

Ну, для всех видов отчетности я использовал Crystal Reports, который позволяет вам легко извлекать информацию из базы данных и заполнять форму. Вы можете использовать для этого формат PDF или HTML.

+1

Это не совсем отчет. Я говорю о нетехническом деловом персонале, чтобы сами создавать шаблоны писем без привлечения отдела ИТ. – softveda

0

Моя компания только недавно занимались этим вопросом, и мы использовали еще более недавнего слово 2003

Во-первых, использование продуктов Office, в среде стиля сервера не поддерживаются Microsoft, и мой опыт заставит вас много боли. Работает ли приложение Vb.net на клиентской машине, где пользователь может взаимодействовать с программой или на центральном сервере (вы упомянули выделенные машины)

Но это не означает, что вы не можете использовать офис для создания шаблонов. Офисный файл (.docx) представляет собой zip/сжатый XML-файл, который можно обрабатывать с помощью текстовых манипуляций.

Предполагая, что процесс основан на сервере или не контролируется, я бы рекомендовал a) обновить все ваши шаблоны до офисных файлов (.docx). b) использовать офис 2007 для поддержки шаблонов c) написать или найти программу, которая может принимать файлы (.docx), распаковывать их и заменять поля слияния. НЕТ Этот ответ зависит от сложности ваших шаблонов. Существует множество программ, которые могут иметь дело с заменой текста и т. Д. d) запустить программу, которая может конвертировать docx в pdf. Предполагая, что документ не требует последующей модификации. возможно найти docx в pdf.

Ваши шаблоны простые? или у вас есть вложенные данные, условное форматирование в документе и другие подобные сложности?

0

Мы построили что-то очень похожее на мою компанию несколько месяцев назад. Мы использовали библиотеку под названием DocIO by Syncfusion. Пользователи создают обычные документы с использованием MS Word (2003 или 2007) со стандартными полями Mail-Merge. Эти документы затем загружаются и сохраняются в базе данных приложения. Затем мы используем библиотеку DocIO сделать слияние почты, переходящим в DataTable значений для слияния на:

byte[] templateDocument = . . . 
DataTable data = . . . 
Stream templateDocStream = new MemoryStream(templateDocument); 
mailmergeDoc = new DocIO.WordDocument(templateDocStream); 
mailmergeDoc.MailMerge.Execute(data); 

Затем мы можем отправить документ вниз к браузеру, как этот

Response.AddHeader("Content-Disposition", "attachment; filename=merged.doc"); 
doc.Save(Response.OutputStream, Syncfusion.DocIO.FormatType.Doc); 
Response.End(); 
1

Моим организация также стремится решить проблему, подобную этой, и я могу поделиться с вами некоторыми из вещей, которые я нашел. Мы еще не делаем этого, все еще на стадии проектирования, поэтому примите во внимание следующее.

Ваша ситуация также зависит от требуемого формата в почтовом отделении - на данный момент они должны принимать документы Word 97, могут ли они также принимать XML, DOCX, PDF или что-то еще?

Есть коммерческий продукт под названием Intelledox, который позволяет использовать Word 2003 (возможно, уже в Word 2000?) В качестве дизайнера шаблонов, а затем собирать документы из источников данных, которые могут быть базами данных, веб-сервисами и т. Д. Выглядит довольно интересно продукт, зависит от вашего бюджета. Это, вероятно, будет высоко оценено по вашим критериям для дизайна шаблонов конечных пользователей.

Вы можете посмотреть на Open XML SDK, который позволяет программно создавать файлы DOCX (Word 2007). Ваши бизнес-пользователи будут генерировать шаблон в Word и предоставлять его разработчику, который затем, вероятно, создаст XSLT. Этот XSLT затем используется во время выполнения, чтобы программно заменить содержимое базового шаблона документа Word. Это не требует Word на сервере, а только библиотеки .NET, которые являются частью SDK. Недостатком этого является то, что при создании нового шаблона требуется небольшая обработка разработчика.

Я также рассмотрел подход к отчетности - мы используем службы отчетов SQL Server и можем использовать для создания объединенного документа. Он поддерживает Word, Excel, PDF и другие форматы экспорта. Недостатком этого является то, что для разработки отчета обычно требуется разработчик. Вы можете развернуть SQL Server Reporting Services Report Builder, который предназначен для опытных пользователей для создания собственных отчетов. Если вы рассматриваете этот подход, убедитесь, что это SQL Server 2008 (построитель отчетов 2.0), очевидно, Report Builder v1.0 довольно беден.

Если почтовый ящик принимает XML, вы можете предоставить почтовый адрес XSLT-файлу и просто отправить данные, а не собранный документ. Не уверен, что используемая вами печатная машина принимает это, или если вам нужно сохранить копию завершенного документа внутренне для целей аудита.

Наконец, возможно, стоит посмотреть на XPS format. Не знаете, как шаблоны для этого будут иметь дизайн, это может быть слишком тяжело для программирования.

Надеюсь, что это поможет с вашим мышлением!

1

Разве офис 2007 SDK не справляется с подобной ситуацией из коробки?

В качестве альтернативы вы можете посмотреть на обочину офиса и использовать wpf напрямую, с коммерческим редактором Rich Text.

0

В зависимости от сложности расположения букв WPF может быть хорошим вариантом.

Это часть платформы .NET, поэтому вам не нужно полагаться на сторонние библиотеки или приложения, которые не могут быть обновлены в будущем. Который, надеюсь, избегает повторения проблем, которые у вас есть с Office 97.

Я знаю, что вы сказали, что цена не проблема, но она также бесплатна.

2

Xpertdoc принимает документы Word и запускает (объединяет) их эффективно на стороне сервера, в помещении или из облака, для создания интерактивных и пакетных писем. CGU, крупная страховая группа, использует это для генерации, аудита, печати и рассылки сотен писем в день. Вот что они должны сказать об этом: http://www.youtube.com/watch?v=xbqWiFt5dUA&feature=channel&list=UL Symetra Life Insurance интегрировала его с управлением отношениями с клиентами (Dynamics CRM), объединив 450 буквенных шаблонов за 3 недели.

Смежные вопросы