Quelldateien in XMI-Dateien konvertieren

logi.CAD 3 bietet ein Werkzeug zur Konvertierung von logi.CAD 3-Quelldateien in XMI-Dateien. Diese XMI-Dateien können z.B. zum Testen Ihrer implementierten Regeln verwendet werden.
(info) Falls Sie Modellregeln implementieren wollen, kontaktieren Sie logi.cals und fragen Sie nach den entsprechenden Informationen aus der englischen Dokumentation "logi.CAD 3 administrator's manual".

Gut zu wissen

(grey lightbulb) Das Werkzeug ist zur Verwendung durch einen fortgeschrittenen Anwender von logi.CAD 3 vorgesehen.

(grey lightbulb)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.

(grey lightbulb)Die Ausgaben des Werkzeugs erfolgen nur in englischer Sprache.

Inhalt dieses Artikels:

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 zum gewünschten Arbeitsbereich
      Der Arbeitsbereich darf keine Projekte enthalten. Falls der Arbeitsbereich nicht existiert, wird er vom Werkzeug erstellt.
    • der Pfad zu den logi.CAD 3-Quelldateien, die konvertiert werden sollen
    • 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

logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.testing.iecsourcetoxmi.application -noSplash -iecSource <SOURCE_FILE> -referenceFiles <REFERENCE_FILES> -data <WORKSPACE> -vmargs -Dlog4j.configuration=file:<LOG-CONFIGURATION>

(warning) 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:

ParameterBeschreibung Beispiele

<SOURCE_FILE>

absoluter Pfad und Name der logi.CAD 3-Quelldatei
Die erzeugte XMI-Datei erhält den gleichen Namen wie die logi.CAD 3-Quelldatei, jedoch mit der Erweiterung .xml.

(warning) Wichtig: logi.cals empfiehlt, die erzeugte XMI-Datei auf absolute Pfade zu überprüfen. Wenn Spezifikationen mit absoluten Pfaden in der XMI-Datei enthalten sind, ersetzen Sie den absoluten Pfad durch den erforderlichen relativen Pfad.
Beispiel: Ersetzen Sie C:\toConvert\src\TestFunction.iectst#//@userPouDeclarations.0  durch: TestFunction.iectst#//@userPouDeclarations.0

C:\toConvert\src\lrealVarsAreUsed.iecst

C:\toConvert\src\UsageOfTestFunction.iecfbd

<REFERENCE_FILES>

absoluter Pfad und Name der logi.CAD 3-Referenzdateien
Die erzeugten XMI-Dateien erhalten den gleichen Namen wie die logi.CAD 3-Referenzdateien, jedoch mit der Erweiterung .xml.

Der Parameter -referenceFiles ist optional. Geben Sie diesen Parameter jedoch an, falls die logi.CAD 3-Quelldatei andere Elemente verwendet, wie z.B. Bausteinaufrufe oder Datentypen, die in anderen Dateien angegeben sind. Falls Sie diesen Parameter nicht angeben, wird nur die XMI-Datei für die logi.CAD 3-Quelldatei erstellt, aber sie enthält dann falsche Referenzen.
Beispiel: Geben Sie diesen Parameter an (siehe Beispiel 2 unten), falls die logi.CAD 3-Quelldatei UsageOfTestFunction.iecfbd einen Aufruf des Bausteins MyTest enthält, der in der Datei TestFunction.iecst spezifiziert ist.

(warning) Wichtig:

  • logi.cals empfiehlt, so wenige Referenzen wie möglich zu haben. Achten Sie z.B. darauf, dass die Referenzdateien nicht Bausteinaufrufe und/oder Datentypen verwenden, die wiederum in anderen Referenzdateien angegeben sind.
  • Falls Aufrufe der logi.CAD 3-Systembausteine verwendet werden (z.B. AND-Baustein, RS-Baustein), muss eine ähnliche Schnittstelle dieses Bausteins in einer Referenzdatei spezifiziert werden. Natürlich muss auch diese Referenzdatei durch den Parameter -referenceFiles spezifiziert werden.
C:\toConvert\src\TestFunction.iecst

<WORKSPACE>

absoluter Pfad und Name zum Arbeitsbereich

C:\temp\LC3WorkspaceWithoutAnyProjects

<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 -Dlog4j.configuration ist ebenfalls optional. logi.cals empfiehlt jedoch, diesen Parameter anzugeben, damit Protokoll-Ereignisse ausgegeben werden.
     
Beispiel 1 für Aufruf
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.testing.iecsourcetoxmi.application -noSplash -iecSource C:\toConvert\src\lrealVarsAreUsed.iecst -data C:\temp\LC3WorkspaceWithoutAnyProjects -vmargs -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml
Beispiel 2 für Aufruf
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.testing.iecsourcetoxmi.application -noSplash -iecSource C:\toConvert\src\UsageOfTestFunction.iecfbd -referenceFiles C:\toConvert\src\TestFunction.iecst -data C:\temp\LC3WorkspaceWithoutAnyProjects -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 die Konvertierung. 

Der Rückgabe-Code 0 weist darauf hin, dass die Konvertierung erfolgreich war.
Falls die Konvertierung nicht erfolgreich war, beheben Sie das Problem gemäß der folgenden Tabelle.

Rückgabe-CodeMeldung, zusätzlich zu 'Conversion failed'UrsacheLösung
-1

Missing required option: Name

Ein Argument oder Parameter fehlt.Rufen Sie das Werkzeug wie oben angegeben auf.
-127(Details: exception message)

Ein unerwarteter Fehler ist aufgetreten.
Beispiel: Die logi.CAD 3-Quelldatei ist ungültig.

Stellen Sie sicher, dass die Konvertierung korrekt aufgerufen wird.
In Bezug auf das Beispiel: Stellen Sie sicher, dass der Parameter -iecSource die korrekte Quelldatei nennt.