7
A
回答
5
我在过去做过很多种方法。这取决于用户是从Microsoft Word的OUTSIDE还是从INSIDE Microsoft Word启动操作。
从INSIDE Microsoft Word中,你可以使用以下技术之一:模板
- 公开赛占位符和使用VBA或VSTO使用使用复制粘贴&数据源对它们进行迭代。请注意,桌子也是犯罪。这种方法类似于下面的“OUTSIDE”的方法1。缺点是它相对较慢(复制粘贴&)并且Microsoft Word自动更正喜欢在最不需要的时候启动。
- 使用占位符打开模板并使用VBA或VSTO解析XML表示,然后替换它们。这是更快,但更难写。特别是因为XML表示可以在占位符内包含XML片段(例如'
&lt;&lt;PUT_<xxx/>IT_HERE&gt;&gt;
'和更复杂的情况)。另外,您需要确保您保留有效的XML文档并且保持良好的平衡。
从OUTSIDE Microsoft Word中(如网络接口),可以使用以下方法之一:
- 商店模板,使用RTF地方(这是更容易比Word自带的结构处理)。将'
<<PLACEHOLDER-FOR-NAME>>
'或类似的容易识别的文本放在您想要替换的地方。当用户请求Word文档时,获取RTF,获取数据,替换占位符,服务器RTF给用户。 RTF有一些限制,但有一些优点。优点是:易于创建新模板,并且可以与Microsoft Wordpad和其他Office软件包配合使用。缺点是表格是一个真正的混乱过程,并不是所有的Microsoft Word结构都是可能的。重复表中的行甚至不推荐。高音量可能是一个问题。 - 使用恰好也输出docx,doc或RTF文档的报告包。写报告。一般来说非常适合高音量。如果您希望最终用户输入大量附加文本,则不太合适,因为报告包通常基于页面而不是基于流动文本工作,有时会插入显式或隐式分页符。但是如果你只需要最终用户输入一两句话,那就足够了。
- 胖客户端。把SQL数据放在某个地方。打开Word。阅读数据并查看来自INSIDE Microsoft Word的更多技术。
如果您需要填写从SQL Server(或任何其他数据库或数据平台)一个Word文档,我可以建议的Invantive Composition for filling Word documents from the database免费版(请注意,我一直在参与该产品)。它打开模板并在Word中将它们合并,但更多地针对非开发人员;只需指定模板和数据块(可能嵌套)并发布即可。开发人员只能在插件中添加一些C#。我认为这是一个很好的产品,当你有很多模板(超过50),因为它更容易扩展。
-4
您也可以尝试使用MS-Excel,因为它比Word更好地绑定XML。 使Excel产生'Word'风格的输出也很容易。
2
您可以使用Microsoft Query从SQL数据库中的数据提取到您的文档,该视频可能是有用的 https://vimeo.com/83983247
相关问题
- 1. 如何从数据库检索数据到word文档。净
- 2. 如何从SQL Server数据库中检索数据
- 3. 如何从SQL数据库检索行数据 - Android电子
- 4. 从SQLite数据库中检索数据
- 5. 从数据库中检索数据..
- 6. 从word文件中检索数据
- 7. 检索从数据库中
- 8. 从sql数据库检索随机数据不重复
- 9. 如何使用函数从Web SQL数据库中检索值?
- 10. 如何在android中从数据库检索数据?
- 11. 从asp.net中的SQL Server数据库中检索数据
- 12. 从SQL Server数据库中检索东亚语言数据
- 13. 从sql数据库检索图像
- 14. 如何从数据库检索数据库在SQLite数据库ina android
- 15. 离子应用程序从sql数据库中检索数据
- 16. 从关系数据库检索数据
- 17. 从SQL数据库检索表
- 18. 从sql检索数据
- 19. 如何控制从数据库中的表中检索数据
- 20. 从点击数据库检索数据
- 21. 如何在Laravel中使用PostgreSQL数据库从SQL Server数据库中检索一些数据
- 22. Winforms从数据库检索数据
- 23. 从SQLite数据库检索数据
- 24. TableViewController - 从数据库检索数据
- 25. 从sqlite数据库检索数据?
- 26. 从mysql数据库检索数据
- 27. VB.Net从数据库检索数据
- 28. 如果在数据库中添加新记录,从数据库检索数据
- 29. 如何从数据库使用数据库检索图像?
- 30. 如何从类别检索sqlite数据库中的数据
这不是几乎回答了这个问题。 – jorrebor 2014-02-12 15:31:58