Einzelnen Beitrag anzeigen

MathiasSimmack
(Gast)

n/a Beiträge
 
#12

Re: Von MSXML zu OmniXML kleines Problem aufgetreten

  Alt 20. Mai 2004, 14:20
Ich denke, dass es nicht an dir oder deinem Programm liegt. Es sieht so aus, als wäre die XPath-Implementation in OmniXML noch nicht vollständig. Sie kann zwar Knoten finden
Code:
/daten/name
und auch Attribute
Code:
/daten/name/@testattribut
aber sie kann anscheinend bisher noch nicht mit Filtern umgehen. Und Filter sind eben genau die Bedingungen, die du in eckigen Klammern angibst
Code:
/daten[name="' + id + '"]
Du solltest dir darum im Moment mit einem Work-Around behelfen. Wenn du also nach dem Namen (sprich: der ersten Spalte der List-View) suchst, dann würde das bspw. so aussehen:
Delphi-Quellcode:
  node := nil;
  daten := XMLDoc.DocumentElement.SelectNodes('daten/name');
  for i := 0 to daten.Length - 1 do
    if({Tabelle.Selected.Caption =} id = daten.Item[i].Text) then
    begin
      node := daten.Item[i].GetParentNode;
      break;
    end;

  if(node <> nil) then
  begin
    ShowMessage(node.XML);
  end;
  Mit Zitat antworten Zitat