代码之家  ›  专栏  ›  技术社区  ›  Al C

如何在Word或RTF文档的表中显示DBGrid的内容?

  •  2
  • Al C  · 技术社区  · 15 年前

    我用Rave来生成报告,但它不擅长生成Word文档。我的报告需求很简单;在代码中我唯一做不到的就是创建一个表。我想知道如何以Word或RTF兼容的格式在带边框的表中显示[DB]网格的内容(或底层ClientDataSet记录)。

    2 回复  |  直到 15 年前
        1
  •  2
  •   Community Mohan Dere    9 年前

    你可以测试我推荐的组件 here (mxExports from max) .

    MX导出 可以将TDataset、TStringGrid和TDBGrid导出为不同的文件格式,包括RTF和MS Word。

    查看组件并测试演示。它对你有用。它是免费的,包括来源

        2
  •  0
  •   Muath    12 年前

    好吧,首先你要做一个template.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;
    
    推荐文章