Voraussetzungen:
- Die vorbereitenden Schritte auf Dateiebene wurden durchgeführt.
- EEC ist gestartet.
- Abschnitt Konfiguration durch Import einer IMX-Datei erzeugen ist durchgeführt.
Der Bibliotheks-Katalog enthält neben den Systembibliotheken die Architektur T_Mechatronic_Architecture und den Baukasten T_Mechatronic_ModularSystem.
Im Projekt-Katalog ist das Projekt Feeder vorhanden.
Um Parameterwerte in der bestehenden Konfiguration zu setzen wird die CSV-Datei Parameter.csv importiert. Dazu wird noch die Vorlagen-Datei Template_CSV.imx benötigt.
Hinweis:
Mit den identischen Vorlagen- und Schema-Dateien können identisch aufgebaute Excel-Dateien importiert werden.
Beschreibung der CSV-Datei:
Die CSV-Datei besteht aus 8 Zeilen und 3 Spalten.
Die Spalten haben keine Überschriften.
Über den auszuwertenden Daten wird mit einer Zelle, die den Text "Header" enthält, ein Bereich für Kopdaten eingeleitet. Die Kopfdaten enden in der Zeile, in der eine Zelle mit dem Text "LineEndHeader" enthalten ist.
Die auszuwertenden Daten sind über 3 Spalten verteilt:
A = Name des Parameters
B = Wert des Parameters
C = Typ des Parameters
Diese Angaben werden mit Hilfe der XSL-Datei Parameter.xsl intern in ein Fragment im IMX-Format konvertiert. Das Fragment wird in der Vorlagendatei Template_CSV.imx anstelle des Tags <importFragment/> eingefügt.
<?xml version="1.0" encoding="utf-8"?>
<imx xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xi="http://www.w3.org/2001/XInclude" version="1.0">
<project name="Feeder" save="true">
<libraries>
<add type="String" value="T_Mechatronic_ModularSystem"/>
</libraries>
<mo name="Feeder" typeClass="T_Mechatronic_ModularSystem.Mechatronic.Stations.Feeder" >
<importFragment/>
</mo>
</project>
</imx>
So werden Parameterwerte gesetzt:
- Wählen Sie den Menüpunkt Datei > Importieren....
- Navigieren Sie zu Projekt > Import.
- Bestätigen Sie mit [Weiter >].
- Geben Sie im Feld Quell-Dateiname die Datei Parameter.csv an.
- Wählen Sie aus der aufklappbaren Liste Default:Parameter.xsl. Das Eingabefeld wird dadurch ausgegraut.
- Geben Sie im Feld Dateiname der Vorlage die Datei Template_CSV.imx an.
- Entfernen Sie die Option Neues Projekt anlegen und markieren Sie in der Liste darunter das Projekt Feeder.
- Bestätigen Sie mit [Fertigstellen].
Der Import-Assistent öffnet sich mit der Seite Auswählen.
Der Import-Assistent öffnet die Seite Importiere Datei.
Die Datei befindet sich im folgenden Verzeichnis:
<EEC installation path>\resources\Import\CSV
Nutzen Sie [Durchsuchen...] um zur Datei zu navigieren. Wählen Sie gegebenenfalls den Dateifilter Excel Arbeitsmappen (*.xls, *.xlsx, *.xlsm).
Die Datei befindet sich im folgenden Verzeichnis:
<EEC installation path>\resources\Import\IMX
Nutzen Sie [Durchsuchen...] um zur Datei zu navigieren. Wählen Sie gegebenenfalls den Dateifilter IMX-Dateien (*.imx).
Ergebnis:
Im Projekt-Katalog wird die Konfiguration mit dem Namen Feeder angezeigt.
- Öffnen Sie die Komponente Feeder.
- Öffnen Sie den Editor Parameter (Parameters).
In der Spalte Wert (Value) ist zu erkennen, dass alle Werte aus der CSV-Datei als String importiert worden sind.
Der Parameter ParameterBoolean ist mit dem Wert ='true' befüllt. Da dies kein gültiger boolescher Wert ist, wird als Ergebnis false eingetragen.
Für die Parameter ParameterDouble und ParameterInteger werden Formelfehler angezeigt, da die importierten Werte nicht als Double, bzw. Integer interpretiert werden können.
Der Parameter ParameterMap ist durch den Import nicht befüllt worden und ist deshalb <<null>>.
Einzig der Parameter ParameterString ist mit dem Wert Hello World korrekt gesetzt.
Fazit:
Die dritte Spalte der CSV-Datei wurde bei Konvertierung nicht erfasst und in der Folge wurden alle importierten Werte als String interpretiert.
Sollen die Parameter typgerecht importiert werden, muss die Schemadatei für die Transformation der CSV-Datei in ein Fragment angepasst werden.
So ändern Sie die XSL-Datei:
- Kopieren Sie die Datei <EEC installation path>\install\importschemas\Parameter.xsl in den folgenden Ordner:
- Benennen Sie die Datei um zu ParameterWithType.xsl.
- Öffnen Sie die Datei ParameterWithType.xsl mit einem beliebigen Editor, beispielsweise Notepad++.
- Navigieren Sie in der Datei zum Tag <xsl:template match="row" >.
<EEC installation path>\resources\Import\XSL
Aussehen vor der Änderung:
<xsl:template match="row" >
<xsl:choose>
<xsl:when test="@number > $LineEndHeader ">
<xsl:element name="parameter">
<xsl:attribute name="name">
<xsl:value-of select="col[@number='1']"/>
</xsl:attribute>
<xsl:attribute name="value">
<xsl:value-of select="col[@number='2']"/>
</xsl:attribute>
</xsl:element>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
Fügen Sie die folgenden Zeilen am Ende des Blocks von <xsl:element name="parameter"> ein:
<xsl:attribute name="type">
<xsl:value-of select="col[@number='3']"/>
</xsl:attribute>
Das Ergebnis sollte so aussehen:
<xsl:template match="row" >
<xsl:choose>
<xsl:when test="@number > $LineEndHeader ">
<xsl:element name="parameter">
<xsl:attribute name="name">
<xsl:value-of select="col[@number='1']"/>
</xsl:attribute>
<xsl:attribute name="value">
<xsl:value-of select="col[@number='2']"/>
</xsl:attribute>
<xsl:attribute name="type">
<xsl:value-of select="col[@number='3']"/>
</xsl:attribute>
</xsl:element>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
Import mit der geänderten Schemadatei ParameterWithType.xsl:
- Wählen Sie den Menüpunkt Datei > Importieren....
- Navigieren Sie zu Projekt > Import.
- Bestätigen Sie mit [Weiter >].
- Geben Sie im Feld Quell-Dateiname die Datei Parameter.csv an.
- Wählen Sie aus der aufklappbaren Liste Kunden-Schema. Geben Sie die geänderte Schema-Datei an.
- Geben Sie im Feld Dateiname der Vorlage die Datei Template_CSV.imx an.
- Entfernen Sie die Option Neues Projekt anlegen und markieren Sie in der Liste darunter das Projekt Feeder.
- Bestätigen Sie mit [Fertigstellen].
Der Import-Assistent öffnet sich mit der Seite Auswählen.
Der Import-Assistent öffnet die Seite Importiere Datei.
Die Datei befindet sich im folgenden Verzeichnis:
<EEC installation path>\resources\Import\CSV
Nutzen Sie [Durchsuchen...] um zur Datei zu navigieren. Wählen Sie gegebenenfalls den Dateifilter Excel Arbeitsmappen (*.xls, *.xlsx, *.xlsm).
<EEC installation path>\resources\Import\XSL\ParameterWithType.xsl
Nutzen Sie [Durchsuchen...] um zur Datei zu navigieren. Wählen Sie gegebenenfalls den Dateifilter Schema-XSL-Dateien (*.xsl, *.xslt).
Die Datei befindet sich im folgenden Verzeichnis:
<EEC installation path>\resources\Import\IMX
Nutzen Sie [Durchsuchen...] um zur Datei zu navigieren. Wählen Sie gegebenenfalls den Dateifilter IMX-Dateien (*.imx).
Ergebnis:
Im Projekt-Katalog wird die Konfiguration mit dem Namen Feeder angezeigt.
- Öffnen Sie die Komponente Feeder.
- Öffnen Sie den Editor Parameter.
In der Spalte Wert ist zu erkennen, dass alle Werte aus der CSV-Datei mit ihren eigenen Typen importiert worden sind.
Der Parameter ParameterMap ist durch den Import nicht befüllt worden und ist deshalb <<null>>.