Announcement

Collapse
No announcement yet.

Komponente TXMLDocument nicht mehr im D8 ?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Komponente TXMLDocument nicht mehr im D8 ?

    Hallo,

    auf Seite 33 in der Tabelle 2 des delphi.net Sonderheftes schreibt Andreas Kosch, dass die TXMLDocument Komponente nicht mehr in Delphi 8 existiert.

    Das stimmt nur teilweise:

    Richtig ist: Es gibt keine visuelle Komponente mehr in der Komponentenpalette.

    <b>Aber</b> zum Glück gibt es in der Unit <b>Borland.Vcl.XmlDoc</b> noch die Klasse TXMLDocument.

    Mit Delphi 7 konnte man über einen Wizard (Menü -> Datei -> Neu -> weitere -> Objektgalerie / Neu -> XML - Datenanbindung) eine Unit erzeugen mit der ein einfacher Zugriff auf die XML Daten möglich ist.
    (Leider finde ich diesen Wizard nicht mehr in Delphi 8)

    Programme / Programmteile die diese Methode benutzt haben sind relativ einfach zu konvertieren.

    Es sind im Wesentlichen nur 2 Änderungen nötig:

    1. In der erzeugten Unit muss nur im uses Abschnitt Borland.VCL.Variants eingefügt werden.

    2. In der Procedure AfterConstruction Typzuweisung anpassen z.B.
    <pre>
    procedure TXMLRdfType.AfterConstruction;
    begin
    RegisterChildNode('shout', TXMLShoutType);
    ItemTag := 'shout';
    // ItemInterface := IXMLShoutType;
    ItemInterface := &Type(IXMLShoutType); // Anpassung D7 -> D8
    inherited;
    end;
    </pre>

    Danach lässt sich das ganze problemlos kompilieren und benutzen.

    Ich hoffe diese Info hilft jemand.

    mfg
    MaBuSE

  • #2
    Andreas Kosch hat aber irgendwo auch dazu geschrieben, dass es meist seinen Grund hat, wenn Dinger nicht auf der Palette verfügbar sind (noch nicht ganz fertig bei Auslieferung). Vielleicht sagt er ja noch was dazu...<p>
    Schöne Grüße, Mario Noac
    Schöne Grüße, Mario

    Comment


    • #3
      Hallo,

      es gibt in der VCL.NET monentan sehr viele "Leichen", die im halbfertigen Zustand auch in der ausgeliefertern Produktversion enthalten sind. Man kann einige der Komponenten-Leichen zwar in die Tool Palette nachinstallieren, aber die Teile arbeiten dann in der Regel nicht so wie gewollt. Da diese offiziell nicht dokumentiert werden, ist das auch kein Mangel des Produkts.

      Um die Ressourcen bei R&D besser auszunutzen, nutzt Delphi 8 beim Thema XML die Fähigkeiten aus dem .NET Framework. Da die <i>DataSet</i>-Klasse (ADO.NET) ein Zwitter ist, steht über die Klasse <i>XmlDataDocument</i> aus dem Namespace <i>System.Xml</i> bereits ein direkter Zugriffsweg auf XML-Daten zur Verfügung (d.h. die über XmlDataDocument geladenen XML-Daten können danach als ganz normales DataSet weiterverarbeitet werden)

      Comment


      • #4
        Danke, das mit dem ADO.NET werd ich mir auch noch mal "richtig" anschauen.

        Außerdem war das Update #2 ja noch nicht verfügbar.

        In der Readme des Update #2 für Delphi steht:

        <pre>
        INTERNET

        * TXMLDocument ist jetzt im Produkt enthalten. Das gilt für
        die gesamte XML-Laufzeitumgebung und eine XML DOM-
        Implementierung, die auf System.XML aus CLR basiert.
        </pre>

        Ich hätte mal die Readme besser lesen sollen.

        Aber evtl hilft diese Info ja doch noch jemand anderen :-

        Comment

        Working...
        X