DELPHI COM XML ENCADEADO

Delphi

XML

31/10/2017

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.
Tiago

Tiago

Curtidas 0

Melhor post

Jerson Boer

Jerson Boer

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;
GOSTEI 1
POSTAR