Xls-Import

| ALPHA-VISION® AvET

# Import von Objekten aus Excel-Frontend

Mit Hilfe der Import-Funktionalität werden die im Excel-Frontend projektierten Objekte (Messstellen und Prozessvariablen) sowie hiervon abgeleitete Daten (Transmitter, Blockiergruppen, Dynamische Grenzwerte, Technologiegruppen, Sektionen) in die AvET-Datenhaltung übernommen.
Wichtiger Hinweis: Für den Zugriff auf die Daten des Excel-Frontends wird die MS Office DLL MSO9.DLL benötigt. Der Pfad dieser Programmbibliothek (z.B. \programme\microsoft office\office) muss in der System-Umgebungsvariablen path eingetragen sein.

### Aufruf

Erstellen Sie vor dem Import eine Sicherheitskopie des Originalprojekts!

Im geöffneten Projekt über das Toolbar-Icon "AvET-Objekte aus XLS importieren" aufrufen.

- Es wird ein Dialog zur Auswahl der XLS-Datei geöffnet (Default-Eintrag ist die zuletzt importierte XLS-Datei).
- Nach Auswahl der XLS-Datei wird der Importiervorgang durch Betätigung der Schaltfläche "Importieren" gestartet.
- Der Importvorgang wird ggfl. mit der Fehlermeldung 'Fehler: Datei nicht vorhanden oder Dateistruktur fehlerhaft' abgebrochen.
- Während des Importvorgangs wird die Anzahl der noch zu importierenden Objekte angezeigt.
- Im Statusfenster werden Fehlermeldungen und sonstige Hinweise angezeigt.
- Der Dialog wird automatisch geschlossen, wenn der Importvorgang beendet ist.
  Achtung: Bei einem neuen Projekt muss als erstes eine Sprachtabelle (_Lngg.lng.xml) erzeugt werden, in welcher mindestens eine Sprache definiert wird. Vor dem Import muss eine der definierten Sprachen selektiert worden sein, damit die MLS-Texte (z.B. Statustexte, Unittexte, ...) einer Sprache zugeordnet werden können.

  ### Arbeitsweise

  Für den Import wird im Rootverzeichnis des aktuellen AvET-Projektes ein Unterverzeichnis namens ImportedXls erzeugt. In diesem Verzeichnis werden die folgendenden XML-Dateien erzeugt bzw. aktualisert.
_XlsMP.obj.xml (Datenobjektliste-Messstellen)
Vorhandene Objekte werden ersetzt, neue Objekte werden hinzugefügt, in Excel nicht vorhandene Objekte werden nicht gelöscht.
Die bei einem Messstellen-Objekt projektierten Relationen (Dynamischer Grenzwert, Blockiergruppe, Transmitter, Technologiepruppen und Sektionen) werden in AvET als XML-Klassen (_XlsDynLimits.dyl.xml, _XlsBG.bgr.xml, _XlsTransmitters.trm.xml, _XlsTechGroups.tgr.xml und [Section].sec.xml) automatisch angelegt. Soweit die Inhalte dieser Referenz-Klassen in Excel erfasst sind, werden diese auch mit übernommen (z.B. Transmitter-Beschreibung). Die nicht in der Excel-Liste vorhandenen Daten (z.B. Transmitterdaten wie z.B. oberer/unterer Grenzwert müssen mit AvET-Mitteln projektiert werden. Bei einem wiederholten Import bleiben die Inhalte der bereits existierenden Datensätze unverändert bzw. werden aktualisiert.
_XlsDynLimits.dyl.xml (Dynamische Grenzwerte)
Die bei MS in den Spalten GW1, GW2, ..., GW7 (Spaltennummer 47, 59, ..., 119) eingetragenen Bezeichner für "Dynamische Grenzwertgruppe" werden als leerer Datensatz (Name=Bezeichner) in der AvET-Klasse "Dynamische Grenzwerte" angelegt. Die weiteren Eigenschaften der Datensätze (Beschreibung, Analog-MS, Skaliergruppe, Ersatzwert) müssen mit AvET-Mitteln projektiert werden.
_XlsBG.bgr.xml (Blockiergruppen)
Die bei MS in den Spalten BLG0, BLG1, ... ,BLG8 (Spaltennummer 28, 38, ... , 122) eingetragenen Bezeichner für "Blockiergruppe" werden als leerer Datensatz (Name=Bezeichner) in der AvET-Klasse "Blockiergruppen" angelegt. Die weiteren Eigenschaften der Datensätze (Beschreibung, Kennziffer, PntId1..4, State1..4, DstPntId) müssen mit AvET-Mitteln projektiert werden.
_XlsTransnmitters.trm.xml (Transmitter)
Die bei MS in der Spalte Transmitter (Spaltennummer 9) eingetragenen Bezeichner werden als leerer Datensatz (Name=Bezeichner) in der AvET-Klasse "Transmitter" angelegt. Die Eigenschaft "Beschreibung (Descr)" wird aus der Excel-Liste übernommen (siehe Excel-Blatt Config/row=12/Transmitter). Die weiteren Eigenschaften der Datensätze (Hardwaremodul-Typ, Unterer/Oberer Grenzwert, Unterer/Oberer Offset) müssen mit AvET-Mitteln projektiert werden.
_XlsTechGroups.tgr.xml (Technologiegruppen)
Die bei MS in der Spalte TechID (Spaltennummer 133) eingetragenen Bezeichner werden als leerer Datensatz (Name=Bezeichner) in der AvET-Klasse "Technologiegruppen" angelegt. Die Eigenschaft "Beschreibung (Descr)" wird aus der Excel-Liste übernommen (siehe Excel-Blatt Config/row=12/TechID). Die weiteren Eigenschaften der Datensätze (???) müssen mit AvET-Mitteln projektiert werden.
[Sektion].sec.xml (Sektionen)
Diese Dateien werden im Unterordner "Sections" erzeugt bzw. aktualisiert.
Die bei MS/PV in der Spalte Sektion (Spaltennummer 8) eingetragenen Bezeichner werden als leerer Datensatz (Name=Bezeichner) in der AvET-Klasse "Sektionsliste" angelegt. Die Eigenschaft "Beschreibung (Descr)" wird aus der Excel-Liste übernommen (siehe Excel-Blatt Config/row=12/Sektion). Zudem wird das entsprechende Datenobjekt MS/PV in die jeweilige Sektionsliste aufgenommen (Eigenschaft=PointId). Die weiteren Eigenschaften der Datensätze (Layout-Typ, Kommentar) müssen mit AvET-Mitteln projektiert werden.
_XlsPV.obj.xml (Datenobjektliste-Prozessvariablen)
Vorhandene Objekte werden ersetzt, neue Objekte werden hinzugefügt, in Excel nicht vorhandene Objekte werden nicht gelöscht.
Die bei einer Prozessvariablen projektierten Relationen (Technologiepruppen und Sektionen) werden in AvET als XML-Klassen (_XlsTransmitters.trm.xml und _XlsTechGroups.tgr.xml) automatisch angelegt. Die Handhabung der Relationsdaten ist die gleiche wie bei Messstellen.
_states.mls.xml (Status-Texte)
In dieser Stringtabelle sind die mehrsprachigen Status-Texte abgelegt.
_units.mls.xml (Unit-Texte)
In dieser Stringtabelle sind die mehrsprachigen Unit-Texte abgelegt.
Weiterhin werden die folgenden AvET-Klassen benötigt, die nicht durch den Import erzeugt werden!
_Stations.stn.xml (Stationsliste)
Das Importprogramm generiert keine Stationsliste, diese AvET-Klasse muss mit AvET-Mitteln erstellt werden. Die Stationsnamen (Eigenschaft=Name) müssen mit den in der Excel-Liste in der Spalte Station (Spaltennummer 7) benutzten Stationsnamen übereinstimmen!
_ObjNoBands.onb.xml (Objektnummernbänder)
Das Importprogramm generiert keine Objektnummernbänder, diese AvET-Klasse muss mit AvET-Mitteln erstellt werden.

### Ergebnis

Im Importverzeichnis wird die Log-Datei "ImportXls.log" angelegt, in welcher Informationen über den Import gespeichert werden.

Es werden folgende Dateien und Unterverzeichnisse im Importverzeichnis "ImportedXls" angelegt:

### Nacharbeit / Datenprüfung

Nach einem Import müssen immer erst die Objektnummern neu generiert werden.
Objektnummern generieren
Die Objektnummerngenerierung ist nötig, weil beim Import alle Objektnummern zurückgesetzt werden.
Die Konsistenz der importierten Daten wird durch das Generieren der AbvSpu-Database geprüft:
AbvSpu-Database generieren
Bei der Generierung der AbvSpu-Database wird die Konsistenz der AvET-Klassen Messstellen, Prozessvariablen, Transmitter, Blockiergruppen und Dynamische Grenzwerte geprüft und die AbvSpu-Database als S7-Quelldatei erzeugt. Etwaige Fehler oder Warnungen werden im Statusfenster angezeigt.