全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:997
推到 Plurk!
推到 Facebook!

请问如何将的delphi中的报表另存为xml格式

尚未結案
weiwei8000
一般會員


發表:1
回覆:2
積分:0
註冊:2003-12-25

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-25 21:06:30 IP:218.65.xxx.xxx 未訂閱
请问如何将的delphi中的报表另存为xml格式
weiwei8000
一般會員


發表:1
回覆:2
積分:0
註冊:2003-12-25

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-26 11:03:44 IP:218.65.xxx.xxx 未訂閱
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, DBTables,MSXML_TLB, StdCtrls, ADODB,comobj; type TForm1 = class(TForm) Button1: TButton; ADOConnection1: TADOConnection; Table1: TADOTable; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } function makeXml(table:TADOTable):Integer; public { Public declarations } end; var Form1: TForm1; DataList : TStringlist; doc : IXMLDOMDocument; root, child, child1 : IXMLDomElement; text1, text2 : IXMLDOMText; nlist : IXMLDOMNodelist; dataRecord : String; implementation {$R *.dfm} function tform1.makeXml(table:TADOTable):Integer; var i : Integer; xml : String; begin try table.close; table.open; xml := table.TableName; doc := CreateOleObject('Microsoft.XMLDOM') as IXMLDomDocument; // 设置XML文件的根名字为"country",与表名相同。 root := doc.createElement(xml); // 把根节点加入到文件中 doc.appendchild(root); // 循环产生整个XML文件 child:= doc.createElement('TAXPAYER'); while not table.eof do begin // 加入第一级子节点,即纪录 child:= doc.createElement('Rec Pkid='); root.appendchild(child); // 加入第二级子节点 for i:=0 to table.FieldCount-1 do begin child1:=doc.createElement(table.Fields[i].FieldName); child1.appendChild(doc.createTextNode(table.Fields[i].value)); child.appendchild(child1); end; table.Next; end; doc.save(xml '.xml'); Result:=1; except on e:Exception do Result:=-1; end; end; //Call the function in Button1's click event: procedure TForm1.Button1Click(Sender: TObject); begin if makeXml(table1)=1 then showmessage('XML 生成成功') else showmessage('XML 生成失败'); end; 以上代码是从table中生成xml文档
weiwei8000
一般會員


發表:1
回覆:2
積分:0
註冊:2003-12-25

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-26 11:07:02 IP:218.65.xxx.xxx 未訂閱
添入MSXML_TLB 选择主菜单Project/Import,导入数据库类型。 选择"Microsoft XML, Version 2.0 (version 2.0)",然后点击"Create Unit"按钮。此后,就有一个MSXML_TLB增加到你的工程(project)文件中。要在unit文件的interface段的uses说明里加上MSXML_TLB。    以上代码生成的xml  2003-12-26 0.0011 11 11 11 11 如何修改代码,使他生成以下形式 <?xml version="1.0" encoding="GBK" ?> - - - 2003-12-26 0.0011 11 11 11 11
系統時間:2024-06-29 7:41:15
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!