您将如何在 Word 或 RTF 文档的表格中显示 DBGrid 的内容?
Posted
技术标签:
【中文标题】您将如何在 Word 或 RTF 文档的表格中显示 DBGrid 的内容?【英文标题】:How would you display a DBGrid's contents in a table within a Word or RTF document? 【发布时间】:2011-03-28 11:04:56 【问题描述】:我正在使用 Rave 生成报告,但它在生成 Word 文档方面表现不佳。我的报告需求很简单;我在代码中唯一不能轻易做的事情就是制作一张桌子。我喜欢关于如何以 Word 或 RTF 兼容格式在带边框的表中显示 [DB]Grid 的内容(或底层 ClientDataSet 记录)的建议。
【问题讨论】:
【参考方案1】:您可以测试我推荐的here (mxExports from max) 相同的组件。
mxExport 可以将 TDataset、TStringGrid 和 TDBGrid 导出为不同的文件格式,包括 RTF 和 MS Word。
查看组件并测试演示。它可能对你有用。它是免费的,包括源代码。 ;-)
【讨论】:
Muchas gracias para la respuesta! ...您知道我是否可以使用此组件将导出的网格插入文件中吗?换句话说,创建一个包含文本的文件,然后是表格,然后是更多的文本? 听起来您想使用办公自动化。冒着自吹自擂的风险,我已经多次写过这个主题的博客 - nbnewman.blogspot.com/search/label/office%20automation。将文本添加到Word文件中,然后添加表格然后添加更多文本是没有问题的。 @AlC; “我可以使用这个组件在文件中插入导出的网格吗?”该组件将数据导出到文件中。 ¿ 我不明白这个提示? No'am -- 谢谢;我会看看你的博客。 ... Netfali -- 我认为我所说的就像将数据添加到文件中间。试着想象一个带有文本的文件(不是来自 mxExports),然后是一个网格(来自 mxExports),然后是更多的文本(不是来自 mxExports)。听起来 mxExports 并没有直接这样做,但我会看看它并探索一下。再次感谢您的回复。 你好 AIC。好的,现在我明白你需要什么了。 ;-) 也许你可以用自动化完成任务,就像 No'am 说的那样。您也可以尝试修改/查看源代码并进行修改。问候。【参考方案2】:嗯,首先您必须制作一个模板 .doc 文件,您将在其中创建将被替换的关键字...这是一个示例代码...
<br>
var
FileName: OleVariant;
<br> Doc : _Document;
<br>SearchText, ReplaceText, Wrap, All: OleVariant;
<br>
<br> begin
<br>WordApplication1.Connect;
<br>WordApplication1.visible:= True;
<br> FileName:=GetCurrentDir+'\Documents\In_orders.doc';
<br>WordApplication1.Documents.Open(FileName,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
<br>Doc := WordApplication1.ActiveDocument;
<br>WordDocument1.ConnectTo(Doc);
<br> WordApplication1.Disconnect;
<br>SearchText := 'order_nomer';
<br>ReplaceText := dbgrid1. < some property.. >;
<br>Wrap := wdFindContinue;
<br>All := wdReplaceAll;
<br>WordDocument1.Content.Find.Execute(SearchText, EmptyParam, EmptyParam, EmptyParam,EmptyParam, EmptyParam, EmptyParam, Wrap, EmptyParam, ReplaceText, EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
<br>
<br>WordApplication1.Disconnect;
<br>end;
【讨论】:
以上是关于您将如何在 Word 或 RTF 文档的表格中显示 DBGrid 的内容?的主要内容,如果未能解决你的问题,请参考以下文章