Projekte automatisch nach XML exportieren

logi.CAD 3 bietet ein Werkzeug für das automatisierte Exportieren von Projekten bzw. deren ST-/FBS-Objekte in eine XML-Datei (= Textdatei im XML-Format).
Zusammen mit dem Werkzeug für das automatisierte Importieren können Sie Vorlagen durch den Export von bestehenden Objekten erzeugen und diese Vorlagen anschließend in bestehenden Projekten importieren.

Gut zu wissen

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg Das Werkzeug ist zur Verwendung durch einen fortgeschrittenen Anwender von logi.CAD 3 vorgesehen.

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg Bedingung für die erfolgreiche Verwendung des Werkzeugs sind Kenntnisse über die durchzuführende Aktion, wie sie in der grafischen Benutzeroberläche von logi.CAD 3 ausgeführt werden würde.

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg Die Ausgaben des Werkzeugs erfolgen nur in englischer Sprache.

Vorbereitungen

  1. Stellen Sie sicher, dass logi.CAD 3 installiert ist. Halten Sie die folgenden Informationen bereit:

    • der Pfad zum Installationsverzeichnis von logi.CAD 3

    • der Pfad zu einem Verzeichnis, das als Arbeitsbereich verwendet wird
      Falls das Verzeichnis nicht existiert, wird es vom Werkzeug erstellt. Falls der optionale Parameter
      -checkEmptyWorkspace verwendet wird (siehe die Beschreibung dieses Parameters weiter unten), muss das Verzeichnis leer sein.

    • der Pfad zum Projekt, das exportiert werden soll

    • der Pfad zur Konfigurationsdatei für das Protokoll (siehe unten für weitere Informationen)
      Eine Datei mit einer Beispielkonfiguration ist in der Installation von logi.CAD 3 enthalten.

  2. Öffnen Sie eine Befehlszeile: z.B. cmd.exe unter Windows und wechseln Sie in das Installationsverzeichnis von logi.CAD 3 .

Aufruf

Parameter, die innerhalb von [] stehen, sind optional. Das heißt, wenn Sie den Parameter auslassen, wird das Standardverhalten angewendet (siehe unter "Beschreibung der Parameter" weiter unten). Wenn Sie den Parameter verwenden möchten, geben Sie das Zeichen [ und ] nicht ein (siehe die nachfolgenden Beispiele).

logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.lc32.export.application [-noSplash] -projectPath <PROJECTPATH> [-objectToExport <OBJECT_TO_EXPORT> -outputPath <OUTPUT_PATH> -outputFile <OUTPUT_FILE>]|[-workpackagePath <WORKPACKAGE_PATH>] [-checkEmptyWorkspace] -vmargs -Dlog4j.configuration=file:<LOG-CONFIGURATION>

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/warning.svg Der Aufruf des Werkzeugs wird nicht offiziell für Linux unterstützt. Wenn Sie dennoch versuchen wollen, das Werkzeug unter Linux aufzurufen, ersetzen Sie den Teil logiCAD3c --launcher.ini logiCAD3.ini -application des oben genannten Aufrufs durch logiCAD3 -application . Der restliche Teil des Aufrufs ist identisch mit dem oben genannten Aufruf.

Beschreibung der Parameter:

Parameter

Beschreibung

Beispiel

<PROJECTPATH>

absoluter Pfad zum Projekt
Falls das Projekt bereits innerhalb des Arbeitsbereichs existiert (z.B. aufgrund eines früheren automatischen Imports des Projekts), ist es auch möglich, nur den Projektnamen anzugeben.

C:\LC3Projects\MyProject

<OBJECT_TO_EXPORT>
<OUTPUT_FILE>
<OUTPUT_PATH>

die folgenden Daten für die XML-Datei:

  1. das zu exportierende Objekt (inkl. projektrelativen Pfad)
    images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/warning.svg Das Werkzeugt unterstützt derzeit ST-Objekte und FBS-Objekte für den Export. Andere Objekte werden nicht exportiert.
    images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/warning.svg Falls Sie ein ST-Objekt als zu exportierendes Objekt angeben und dieses ST-Objekt enthält mehrere Sprachelemente (z.B. einen Datentyp und einen Funktionsbaustein oder 2 Datentypen), beachten Sie, dass nur das jeweils letzte Sprachelement im ST-Objekt exportiert wird.
    images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/warning.svg Weitere Einschränkungen: Diese Elemente bzw. Einstellungen werden nicht exportiert:

  2. absoluter Pfad, in dem die XML-Datei zu erstellen ist

  3. Name der XML-Datei, die zu erstellen ist

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/information.svg Verwenden Sie diese 3 Parameter immer gemeinsam. Oder verwenden Sie den folgende Parameter -workpackagePath <WORKPACKAGE_PATH> als Alternative.

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/information.svg Falls Sie diese 3 Parameter oder -workpackagePath <WORKPACKAGE_PATH> nicht angeben, wird nichts exportiert.

src\program.iecst
C:\lc3
program.xml

<WORKPACKAGE_PATH>

absoluter Pfad zu einer CSV-Datei
Diese CSV-Datei ist eine Alternative zu den 3 Parametern, die gemeinsam zu verwenden sind – das sind: -objectToExport <OBJECT_TO_EXPORT> -outputPath <OUTPUT_PATH> -outputFile <OUTPUT_FILE>. Mit Hilfe der CSV-Datei können Sie außerdem mehrere Objekte für den Export angeben.
Die CSV-Datei muss die folgenden Daten (in dieser Reihenfolge) pro Zeile enthalten – jeweils durch , voneinander getrennt:

  1. das zu exportierende Objekt (inkl. projektrelativen Pfad)

  2. absoluter Pfad, in dem die XML-Datei zu erstellen ist

  3. Name der XML-Datei, die zu erstellen ist

Beispiel für den Inhalt einer CSV-Datei: 2 ST-Objekte werden exportiert.
src\program.iecst,C:\lc3,program.xml
src\EnumType.iecst,C:\lc3,EnumType.xml

c:\LC3\workpackage.csv

<LOG-CONFIGURATION>

Pfad zur Konfigurationsdatei für das Protokoll
Alle Meldungen des Werkzeugs werden an das Gerät ausgegeben, das in der Konfigurationsdatei für das Protokoll angegeben ist.

C:\LC3LogConfig\log4j.xml

  • Der Parameter -noSplash ist optional. Wird er nicht angegeben, wird der Startbildschirm von logi.CAD 3 nach dem Aufruf angezeigt.

  • Der Parameter -checkEmptyWorkspace ist ebenfalls optional. Geben Sie diesen Parameter an, um zu prüfen, ob der angegebene Arbeitsbereich leer ist. Das logi.CAD 3-P rojekt wird nur importiert, falls der Arbeitsbereich leer ist.
    Beim Standardaufruf (wenn dieser Parameter nicht angegeben wird) wird das logi.CAD 3-P rojekt immer in den Arbeitsbereich importiert – unabhängig davon, ob der Arbeitsbereich leer ist oder nicht. Ist das logi.CAD 3-P rojekt bereits im Arbeitsbereich vorhanden, wird das logi.CAD 3-P rojekt neu importiert.

  • Der Parameter -Dlog4j.configuration ist ebenfalls optional. logi.cals empfiehlt jedoch, diesen Parameter anzugeben, damit Protokoll-Ereignisse ausgegeben werden.

Beispiel 1 für Aufruf: Ein ST-Objekt wird in eine XML-Datei exportiert.
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.lc32.export.application -noSplash -projectPath C:\LC3Projects\MyProject -objectToExport src\program.iecst -outputPath C:\lc3 -outputFile program.xml -vmargs -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml
Beispiel 2 für Aufruf: Die Objekte werden laut der CSV-Datei exportiert. Die CSV-Datei spezifiziert auch die erstellten XML-Dateien.
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.lc32.export.application -noSplash -projectPath C:\LC3Projects\MyProject -workpackagePath c:\LC3\workpackage.csv -vmargs -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml

Konfigurationsdatei für das Protokoll

Diese Datei wird zur Konfiguration des log4j-Protokollierungsmechanismus benötigt. Die Datei gibt an, wie Protokoll-Ereignisse ausgegeben werden.

Konfigurationsdatei für das Protokoll (Beispiel)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="false" xmlns:log4j='http://jakarta.apache.org/log4j/'>
<!-- This configuration logs to console. -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="target" value="System.out"/>
<param name="immediateFlush" value="true"/>
<param name="encoding" value="UTF-8"/>
<param name="threshold" value="info"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p: %m%n" />
</layout>
</appender>
 
<!-- This configuration logs to a file, with more information than for the console. -->
<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">
<param name="file" value="C:\\temp\\logfile.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{HH:mm:ss} %-5p [THREAD ID=%t] [Method:%M] %c{1}:%L - %m%n" />
</layout>
</appender>
<root>
<level value="INFO" />
<appender-ref ref="console" />
<appender-ref ref="file" />
</root>
</log4j:configuration>

Fehlerbehebung

Die Datei, die in der Konfigurationsdatei für das Protokoll angegeben ist, enthält Informationen über das Exportieren. Falls das Exportieren nicht erfolgreich war, beheben Sie das Problem gemäß der folgenden Tabelle.

Rückgabe-Code

Meldung (ausgegeben auf STDOUT oder STDERR)

Ursache

Lösung

0

Export successful (0)



-1

Export failed (Parameter Error, -1): Name

Ein Argument oder Parameter fehlt.

Rufen Sie das Werkzeug wie oben angegeben auf.

-2

Export failed (-2): Project not found

Das angegebene Projekt existiert nicht.

Geben Sie ein vorhandenes Projekt an. Oder rufen Sie das Werkzeug mit dem absoluten Pfad für das Projekt auf .

-6

Export failed (-6): Workspace not empty

Der Arbeitsbereich enthält bereits Daten (z.B. ein oder mehrere logi.CAD 3 -Projekte).

Verwenden Sie einen leeren Arbeitsbereich oder entfernen Sie alle vorhandenen Daten aus dem aktuellen Arbeitsbereich.
Alternative: Rufen Sie das Werkzeug ohne den Parameter -checkEmptyWorkspace auf.

-127

Export (Details: exception message)

Ein unerwarteter Fehler ist aufgetreten.

Kontaktieren Sie logi.cals.