Kommandozeilen-Tool für den Import von Bauteildaten

Now reading version 6.0. For the latest, read: Kommandozeilen-Tool für den Import von Bauteildaten for version 8.0
 

Parent page: Wartung

Der Enterprise Server enthält ein CSV-Komponentendatenbank-Importwerkzeug, mit dem Komponentendaten aus einer aus einem Unternehmenssystem exportierten Datei – etwa aus einem firmeninternen ERP- oder PLM-System – in den Enterprise Server Workspace importiert werden können. Das als konfigurierbare Batch-Datei (*.bat) implementierte Desktop-Werkzeug importiert Komponentendaten aus einer Ziel-Tabellendatei (*.csv) in den Workspace, wie durch vorhandene Workspace-Vorlagen oder eine dedizierte Konfigurationsdatei festgelegt.

► Siehe PLM Integration für weitere Informationen zur Zusammenarbeit zwischen dem Enterprise Server und PLM-Systemen.

Das Kommandozeilenwerkzeug befindet sich im Ordner \Program Files (x86)\Altium\Altium365\Tools\CSVImport der Enterprise Server-Installation. Informationen zur mit dem Werkzeug verwendeten Kommandozeilensyntax finden Sie in csv-import.bat, oder führen Sie die Batch-Datei einfach ohne Attribute aus, um detailliertere Informationen zu erhalten.

Notes:

  • Das Werkzeug und sein unterstützender Java-Laufzeitordner (JRE8) können an einen beliebigen Ort kopiert und dort ausgeführt werden, auch auf einem anderen vernetzten Rechner als dem Host-Rechner des Enterprise Server.
  • Je nach Speicherort muss das Werkzeug möglicherweise mit erhöhten Rechten (Administrator) ausgeführt werden.
  • Bei der Syntax des Werkzeugs wird zwischen Groß- und Kleinschreibung unterschieden; das gilt auch für Verweise in Workspace-Vorlagen und in verwendeten Konfigurationsdateien.

Source file format:

Das CSV-Datenimportwerkzeug setzt voraus, dass die Quell-CSV-Datei mit Komma-Trennung die Zeichenkodierung UTF-8 verwendet. Wenn die Datei andere Kodierungsformate wie ANSI oder UTF-8-BOM verwendet, verarbeitet der Importer erweiterte Zeichen (wie µ) nicht korrekt oder akzeptiert die Quelldatei *.csv möglicherweise nicht.

Wenn Sie zu Testzwecken eine einfache CSV-Datei erstellen, beachten Sie, dass einige Versionen von Windows-Editor keine kompatible UTF-8-Formatierung speichern. Im Zweifel kann ein alternativer Texteditor wie Notepad++ verwendet werden, um UTF-8-kodierte Dateien zu erstellen und zu speichern; außerdem ist er nützlich, um das Kodierungsformat von *.csv-Dateien zu prüfen, die aus einem Quell-Unternehmenssystem exportiert wurden.

Automatischer Modus

Wenn das CSVImport-Werkzeug ohne Konfigurationsdatei verwendet wird (Option –c), versucht der Prozess, den Namen der Ziel-CSV-Datei (zum Beispiel Resistor.csv) mit einer Workspace-Komponentenvorlage abzugleichen, die diesen Komponententyp unterstützt (Resistor). Die gefundene Vorlage bestimmt Revision, Lifecycle und Standardordner (Workspace-Ziel) für die importierten Daten. Beachten Sie, dass die Mindestanforderung an die Daten in der Quell-CSV-Datei die Parameterspalte PART_NUMBER und die dazugehörigen Werte ist.

Das Hilfswerkzeug CSVImport gibt während der Ausführung allgemeine Fortschrittsinformationen im Konsolenfenster aus und kann außerdem eine Protokolldatei erzeugen, wie in der Befehlssyntax angegeben (-l). Wenn in der CSV-Datei Parameter für Herstellerteilenummern von Komponenten vorhanden sind (standardmäßig MFR_PART_NUMBER und MFR_NAME), werden im Workspace passende Part-Choice-Einträge erstellt.

Die optionale Protokolldatei liefert Details zu einem erfolgreichen Importvorgang – schlägt der Vorgang fehl, wird keine Protokolldatei erzeugt.

Beachten Sie, dass Komponenten auch in der Browser-Oberfläche des Workspace in der Seitenansicht Components geprüft und aufgerufen werden können.

Siehe Workspace Components für weitere Informationen.

Konfigurierter Modus

Der erweiterte Modus des Werkzeugs verwendet eine XML-Konfigurationsdatei, um die Zuordnung von Datei- zu Workspace-Parametern sowie Optionen wie Zielordner, eine andere Vorlage usw. für den Importvorgang festzulegen.

Um eine grundlegende Konfigurationsdatei zu erhalten, die anschließend angepasst werden kann, führen Sie das Werkzeug mit der Einstellung zum Generieren einer Konfigurationsdatei aus (-g). Dadurch wird die angegebene XML-Datei mit aus der Quell-CSV-Datei extrahierten Parameter-Schlüssel/Wert-Paaren sowie den Einstellungen für Revision, Lifecycle und Zielordner aus der abgeglichenen Vorlage erstellt. Ebenfalls enthalten sind Einträge für den Komponententyp sowohl für das PLM (Quelle) als auch für den Workspace (Ziel) – Resistor in diesem Beispiel – sowie die Vorlagen-ID.

Eine typische Befehlszeichenfolge für das Werkzeug wäre:
csv-import.bat -s http://HPZ600:9780 -u admin -p admin -g MyConfig.xml -i C:\Users\Public\Documents\CSV_Files\Resistor.csv

Beispiel einer generierten Konfigurationsdatei (Download)

Nach der Generierung kann die Konfigurationsdatei (MyConfig.xml) bearbeitet werden, um den Quellparameter Value dem Parameter Resistance im Workspace zuzuordnen und den Parameter Format dem Parameter Package. Bearbeiten Sie dazu die entsprechenden Attributzeichenfolgen im Abschnitt ToAltium der Konfigurationsdatei (für die PLM-Klasse Resistor) entsprechend der gewünschten Zuordnung.

Die Konfigurationsdatei wird anschließend mit dem Werkzeug (Option –c) verwendet, um die gewünschte Zuordnung durchzuführen:
csv-import.bat -s http://HPZ600:9780 -u admin -p admin -c MyConfig.xml -i C:\Users\Public\Documents\CSV_Files\Resistor.csv

Wenn die Komponenteneinträge bereits im Workspace vorhanden sind (wie im obigen Beispielprozess Automatischer Modus importiert), werden neue Revisionen erstellt und die neu zugeordneten Parameter zu den vorhandenen Daten hinzugefügt – bestehende Parameter werden nicht entfernt.

Weitere Zuordnungsoptionen

Weitere Konfigurationsoptionen umfassen die Möglichkeit, die Klasse des Komponententyps sowohl für das PLM als auch für den Workspace festzulegen, indem die Zeile <Entity altiumType="Resistor" plmType="Resistor"> der Datei bearbeitet wird, wie sie für dieses Beispiel generiert würde. Typische Änderungen wären:

  • Angabe von altiumType="ResistorSMT", um die importierten Komponenten auf diesen Typ festzulegen (vorausgesetzt, der Typ ist im Workspace registriert).
  • Angabe von plmType="PLM-Export_Resistors", damit eine Quelldatei mit dem Namen PLM-Export_Resistors.csv importiert werden kann.  Beachten Sie, dass Namen von Quell-CSV-Dateien, die nicht mit einem vorhandenen Workspace-Komponententyp übereinstimmen (Resistor, Capacitor usw.), nicht erkannt werden, sofern plmType nicht auf diese Weise angegeben wird.
Der Eintrag für den Workspace-Zielordner in einer Konfigurationsdatei (zum Beispiel <Folder>Components/Resistors</Folder>) setzt alle anderen Einstellungen für den Zielpfad außer Kraft, etwa diejenigen in einer Standard- oder angegebenen Komponentenvorlage.

Für einen erfolgreichen Importvorgang müssen die Attribut-Einträge in einer angewendeten Konfigurationsdatei (wie sie automatisch generiert wurden) mit den Spaltenüberschriften der Quell-CSV-Datei übereinstimmen. Zum Beispiel muss eine CSV-Spaltengruppe Format einen passenden Konfigurationsattribut-Eintrag mit dem Wert ${attribute.Format} haben, unabhängig von einer angewendeten Parameterzuordnung (wie oben beschrieben). Zusätzliche Attribute können jedoch für eine Komponenten-Entity hinzugefügt werden, etwa eine feste Kennung, die beispielsweise folgendes Format haben könnte:

<ns2:Attribute>
  <ns2:Key>DataSource</ns2:Key>
  <ns2:Value>Imported from PLM</ns2:Value>
</ns2:Attribute>

In diesem Fall enthalten die in den Workspace importierten Komponentendaten einen Parameter DataSource mit dem Wert Imported from PLM.

Additional features:

  • Eine angewendete Konfigurationsdatei bestimmt alle Einstellungen für den Importvorgang, einschließlich Parameterzuordnungen, unabhängig von zugehörigen Workspace-Vorlagen.
  • Alle Parameter können so zugeordnet werden, dass sie zu den Parametern der Eingabe-CSV-Datei passen, einschließlich der in der Datei verwendeten Bezeichnung für PLM Number und die Herstellerteildaten (Part Choices).
  • Mehrere Entity-Definitionen einschließlich ihrer zugehörigen Parameterattribute können in einer Konfigurationsdatei enthalten sein. Kopieren Sie einen vorhandenen Entity-Gruppeneintrag, etwa für Resistor, und fügen Sie ihn dann ein bzw. bearbeiten Sie ihn, um einen weiteren für Capacitor zu erstellen.
  • Vorlagenparameter für Komponenten, die mit einem Standardwert festgelegt sind, werden auf importierte Komponenten angewendet, sofern sie kein entsprechendes Attribut in den importierten CSV-Daten haben – in diesem Fall wird der Wert des Quellattributs in den Workspace-Parameter importiert.  Im CSVImport-Automatikmodus wird die angewendete Vorlage die für den Komponententyp sein, wie durch den Namen der Quell-CSV-Datei definiert. Im konfigurierten Modus wird die Vorlage durch die Zeile <ComponentTemplate>[CMPT-xxxx]</ComponentTemplate> in der Konfigurationsdatei festgelegt.
  • Wenn als Quellpfad withouteine CSV-Datei angegeben ist, sucht das Tool im Quellordner nach CSV-Dateinamen, die mit Entity-Definitionen in der Konfigurationsdatei übereinstimmen. Wenn also Konfigurations-Entity-Referenzen für Capacitor und Resistor vorhanden sind und passende CSV-Dateien gefunden werden, werden die Daten für diese Komponenten in den Workspace importiert. Dies ist praktisch der Batch-Betriebsmodus des Tools.

Verarbeitung von Part Choices

Die Übertragung von Hersteller-Part Choice-Daten einer Komponente aus einem externen Unternehmenssystem (z. B. einem PLM) in den Workspace ist so ausgelegt, dass Datenverdopplungen oder unerwünschtes Entfernen vermieden werden. Wenn Komponentendaten in den Workspace direkt aus dem externen System oder über eine CSV-Datei übernommen werden, erfolgt das Erstellen und/oder Ändern von Part-Choice-Einträgen intelligent auf Grundlage der aktuellen Bedingungen und der Datenhistorie:

  • Wenn ein zu importierender Part-Choice-Eintrag einer Komponente für diese Workspace-Bibliothekskomponente bereits vorhanden ist, wird er nicht dupliziert.
  • Wenn ein Part-Choice-Eintrag einer Workspace-Bibliothekskomponente innerhalb des Workspace hinzugefügt wurde (nicht importiert), wird er nicht durch importierte Part-Choice-Daten ersetzt. Ein importierter Part Choice wird als neuer, zusätzlicher Part Choice für diese Komponente hinzugefügt.
  • Wenn neue Part-Choice-Daten für eine Komponente importiert werden, ersetzen sie den zuvor importierten Part-Choice-Eintrag für diese Komponente.

Zusammengefasst bestimmen die aus dem externen System importierten Part-Choice-Daten den Part-Choice-Eintrag der Workspace-Bibliothekskomponente, sofern die vorhandenen non-imported Part-Choice-Daten der Komponente berücksichtigt werden.

Im unten gezeigten Beispielbild enthält die Eingabe-CSV-Datei keine Part-Choice-Daten (Parameter Manufacture Name und Manufacturer Part Number) für den PLM-Eintrag CVS-RES-1001 (den 10k Widerstand), daher wird dies nicht zur Workspace-Bibliothekskomponente hinzugefügt. In diesem Beispiel wurde jedoch ein Part-Choice-Eintrag (Vishay) manuell aus dem ExplorerBereich von Altium Designer zu dieser Workspace-Bibliothekskomponente hinzugefügt.

Wenn Part-Choice-Daten für diese Komponente (CVS-RES-1001) in einer anschließend importierten/synchronisierten CSV-Datei enthalten sind, wie unten gezeigt, wird der neue Part-Choice-Eintrag (Rohm) der Komponente added hinzugefügt – da ein vorhandener „nativer“ Part-Choice-Eintrag nicht durch importierte Part-Choice-Daten ersetzt werden kann.

Wenn eine nachfolgend importierte/synchronisierte CSV-Datei neue Part-Choice-Daten für die Komponente enthält, wie unten gezeigt, ersetzen diese Part-Choice-Daten (Yageo) den zuvor importierten Part-Choice-Eintrag (Rohm) – der vorhandene „native“ Part-Choice-Eintrag (Vishay) bleibt unberührt. Alternativ löscht der Importvorgang den vorhandenen importierten Part-Choice-Eintrag im Workspace (Yageo), wenn die CSV-Part-Choice-Daten entfernt wurden (leere MFR_..-Einträge).

Mehrere Hersteller-Part-Choices

Der CSV-Importer unterstützt auch mehrere Sätze von Herstellerteildaten für eine bestimmte Komponente durch eine wiederholte Struktur in der Quell-CSV-Datei, bei der zusätzliche Komponenteneinträge für jede Variante der Herstellerteildaten enthalten sind. Wenn beispielsweise eine Quellkomponente CSV-RES-1001 drei zugehörige Teilenummern hat, dann werden drei CSV-Einträge für diese Komponente aufgenommen, von denen jeder unterschiedliche Spaltendaten für MFR_NAME und MFR_PART_NUMBER angibt (einer von Vishay Dale und zwei von Yageo).

Wenn diese Komponentendaten in den Workspace importiert werden, wird ein einzelnes Komponentenelement für Teil CSV-RES-1001 erstellt, jedoch mit mehreren Part-Choice-Einträgen, die aus den zusätzlichen CSV-Datenreferenzen abgeleitet sind.

Verarbeitung von Parametereinheit und -wert

Wenn Komponentendaten mit dem Tool CSVImport aus einem externen Unternehmenssystem in den Workspace importiert werden, interpretiert die automatisierte Verarbeitung von Parametereinheiten im Workspace sowohl die Wertdaten als auch behandelt sie etwaige Fehler in diesen Daten.

Während eines Imports oder einer Synchronisierung von Komponentendaten werden alle Komponentenparameter, die in der anwendbaren Component Template als einheitenbewusster Type Parameter (Percent(%), Watts(W) usw.) angegeben sind, entsprechend interpretiert. Da die Formatierung der importierten Parameterwerte stark variieren kann, weil sie in einem externen System (z. B. einem PLM) definiert wurden, berücksichtigt die einheitenbewusste Wertverarbeitung des Workspace alle wahrscheinlichen Formate und behandelt auftretende Fehler korrekt.

Das folgende Bild zeigt ein Beispiel, bei dem eine Reihe von Workspace-Bibliothekskomponenten durch eine CSV-Importdatei aktualisiert wird, die für jeden Komponenteneintrag den Parameter Power enthält. Die Power-Parameterwerte in der Quell-CSV-Datei verwenden unterschiedliche Formatierungen; dazu gehört auch ein Wertfehler (62500x) für den Komponenteneintrag CSV-RES-1001. Vor dem Datenimport enthielten die Workspace-Bibliothekskomponenten keine Power-Parameterdaten und befanden sich in ihrer ersten Revision (Revision 1) – wie im oberen ExplorerBereich gezeigt.

Die Ergebnisse des CSV-Importvorgangs, wie sie im unteren Bild des ExplorerBereichs (oben) erscheinen, zeigen die Auswirkungen sowohl der einheitenbewussten Parameterinterpretation als auch ihrer Fehlerbehandlung:

  • Für die Komponente CSV-RES-1001 wurde aufgrund des Formatfehlers in den CSV-Quelldaten kein Power-Wert hinzugefügt.
  • Für die Komponente CSV-RES-1001 wurde keine neue Revision erstellt (sie bleibt bei Revision 1).
  • Die Quellformate der Power-Werte für alle anderen Komponenten wurden aus den Quelldaten korrekt interpretiert.
  • Für die korrekt aktualisierten Komponenten wurden neue Revisionen erstellt.

Ein nachfolgender Importvorgang für Komponentendaten mit einem überarbeiteten Power-Wert (62500u) für die Komponente CSV-RES-1001 wird für diese Komponente korrekt interpretiert – wie im folgenden Bild gezeigt. Die Daten der Workspace-Bibliothekskomponente wurden aktualisiert, wodurch eine neue Revision (Revision 2) erstellt wurde.

AI-LocalizedAI-localized
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Inhalt