Problemas na leitura de XML

01/07/2021

0

XML

Pessoal, eu preciso fazer a leitura de todas tags <codigoInterno>. Da forma como estou fazendo, está pegando somente o primeiro. Estou numa missão urgentíssima e não estou conseguindo desenrolar. Se alguém puder me ajudar, ficaria muito agradecido.

<tributacoes>
<segmento>
<produtoCliente>
<codigoInterno>0001</codigoInterno>
</produtoCliente>
</segmento>
<segmento>
<produtoCliente>
<codigoInterno>0002</codigoInterno>
</produtoCliente>
</segmento>
<segmento>
<produtoCliente>
<codigoInterno>0003</codigoInterno>
</produtoCliente>
</segmento>
</tributacoes>



**Segue o código**

xml := CreateOleObject(''Microsoft.XMLDOM'') as IXMLDOMDocument;
xml.async := False;
xml.load(arq);

if xml.parseError.errorCode <> 0 then
raise Exception.Create(''Error Message:'' + xml.parseError.reason);

nodelista := xml.selectNodes(''//tributacoes'');
lista2 := nodelista.item[0].selectNodes(''//segmento//produtoCliente/codigoInterno'');
for I := 0 to lista2.length-1 do begin
node1 := lista2.item[i].selectSingleNode(''//segmento//produtoCliente/codigoInterno'');
if assigned(node1) then begin
Memo1.lines.Add(node1.nodeName + '' - '' + node1.text);
end;
end;
Dennis Carlos

Dennis Carlos

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar