DELPHI COM XML ENCADEADO
31/10/2017
0
OLÁ.
ESTOU TENTANDO CRIAR UM ARQUIVO XML COM O XMLDOCUMENT, O ARQUIVO XML OSSUI VARIOS NODES COM A MESMA ESTRUTURA E NOMES, EXEMPLO:
<dados>
<documentos>
<codigo>1</codigo>
</documentos>
<documentos>
<codigo>1</codigo>
</documentos>
</dados>
porém ele so pega o ultimo registro do banco. E tambem ao inves de criar o node dados uma unica vez e criar o node documento varias vezes ele está criando o node dados e documentos varias vezes.
ESTOU TENTANDO CRIAR UM ARQUIVO XML COM O XMLDOCUMENT, O ARQUIVO XML OSSUI VARIOS NODES COM A MESMA ESTRUTURA E NOMES, EXEMPLO:
<dados>
<documentos>
<codigo>1</codigo>
</documentos>
<documentos>
<codigo>1</codigo>
</documentos>
</dados>
porém ele so pega o ultimo registro do banco. E tambem ao inves de criar o node dados uma unica vez e criar o node documento varias vezes ele está criando o node dados e documentos varias vezes.
Tiago
Curtir tópico
+ 0
Responder
Post mais votado
25/01/2018
Olá Tiago, veja se ajuda na resolução do seu problema.
Uses Xml.xmldom, Xml.XMLIntf, Xml.Win.msxmldom, Xml.XMLDoc; procedure TfrmTeste.btn1Click(Sender: TObject); var XMLTeste : TXMLDocument; Root, NodeRec : IXmlNode; I : Integer; begin //Cria o arquivo XML XMLTeste := TXMLDocument.Create(Application); XMLTeste.Active := False; XMLTeste.XML.Clear; //Preenche o cabeçalho do XML contendo os dados padrões XMLTeste.Options := [doNodeAutoIndent]; XMLTeste.Active := True; XMLTeste.Encoding := 'UTF-8'; XMLTeste.Version := '1.0'; //Adiciona a estrutura principal Root := XMLTeste.addChild('DADOS'); //Adiciona a estrutura secundária dos documentos with Root.AddChild('DOCUMENTOS') do begin //Neste ponto você vai adicionar um Loop do seu //componente de dados para preencher o campo código for I := 1 to 20 do begin AddChild('CODIGO').NodeValue := I; end; end; XMLTeste.SaveToFile('.\\Texte.XML'); XMLTeste.Free; end;
Jerson Boer
Responder
Clique aqui para fazer login e interagir na Comunidade :)