18.02.2025 14:14 | |
Beigetreten: 01.02.2021 Letzter Bes: 11.04.2025 Beiträge: 1558 Bewertung:
|
Wie kann ich eine XML-Datei in WinCC Unified einlesen? Diese Einstellungen müssen mit dem tatsächlichen Inhalt der XML-Datei korrespondieren: Weiterhin müssen die passenden HMI-Variablen verfügbar sein: Die HMI-Variablen zur Aufnahme der XML-Daten sind hier pro Parameter als Array angelegt (der Array-Index 0 wird nicht verwendet). Mit der Funktion Read() wird die Datei gelesen: Viele Grüße Eure Fachberatung Deutschland (MT) DateianhangReadXML.zip (7 Downloads) |
25.02.2025 17:34 | |
Beigetreten: 12.05.2022 Letzter Bes: 25.02.2025 Beiträge: 5 Bewertung:
|
Hallo, ich habe zwei Fragen zu dem oben angehängten Beispielprojekt: Wäre es nicht naheliegender, die Daten aus dem XML-File in ein Array von Strukturen einzulesen anstelle in mehrere Arrays von jeweils elementaren Datentypen? Die Funktion Read() benutzt zwei ineinander verschachtelte Programmschleifen, die äußere Schleife geht über die einzelnen Parameter, die innere über die Menge der Datensätze (also über den gesamten XML-String). Daraus folgt, dass der String mit den XML-Daten mehrfach durchsucht werden muss. Wäre es nicht plausibler, das Verfahren umzukehren, d.h. die innere Schleife geht über die einzelnen Parameter, die äußere über die Menge der Datensätze. Dann müsste der String mit den XML-Daten nur einmal durchsucht werden. |
27.02.2025 06:49 | |
Beigetreten: 01.02.2021 Letzter Bes: 11.04.2025 Beiträge: 1558 Bewertung:
|
Hallo. Das obige Beispiel basiert auf einer konkreten Kundenanforderung, nur ausgewählte Parameter und diese ohne Berücksichtigung der Position innerhalb der Datensätze aus dem XML-File zu lesen und in besagte „Arrays von jeweils elementaren Datentypen“ zu übertragen. (Dass die Parameternamen in unserem Beispiel „P1“ ... „P5“ heißen und auch so sortiert sind und auch genau in dieser Reihenfolge gelesen werden, ist nur beispielhaft zu sehen, im Allgemeinen sind die Parameter ja nicht zwingend alphabetisch sortiert…) In diesem Falle (also bei unbekannter Reihenfolge der Parameter in den einzelnen Datensätzen) wäre es recht kompliziert, alle Parameter in einem einzigen Durchlauf durch den XML-String zu suchen. Und für die benötigte Laufzeit ist es im Wesentlichen auch ohne Belang: Die Menge der zu findenden XML-Tags (und somit der Schleifendurchläufe) bleibt ja dieselbe. Eure Fachberatung Deutschland (MT) DateianhangReadXML2.zip (12 Downloads) |
Zuletzt bearbeitet von: Fachberatung Deutschland am: 02/27/2025 07:24:49 |
|
Wir arbeiten an einem neuen Interface unseres Forums! Dieses stellt eine bessere Übersicht zur Verfügung und liefert mehr Relevanz.
Folgen Sie uns auf