Outil en ligne de commande pour l’importation de données de composants

 

Parent page: Maintenance

Enterprise Server comprend un outil d’importation de base de données de composants CSV qui peut être utilisé pour importer des données de composants dans le Workspace Enterprise Server à partir d’un fichier exporté depuis un système d’entreprise, tel qu’un ERP ou un système PLM de l’entreprise. Implémenté sous la forme d’un fichier batch configurable (*.bat), l’outil de bureau importe les données de composants depuis un fichier tableur cible (*.csv) dans le Workspace, selon les modèles Workspace existants ou un fichier de configuration dédié.

► Voir PLM Integration pour plus d’informations sur le travail entre Enterprise Server et les systèmes PLM.

L’outil en ligne de commande se trouve dans le dossier \Program Files (x86)\Altium\Altium365\Tools\CSVImport de l’installation d’Enterprise Server. Consultez le csv-import.bat pour obtenir des informations sur la syntaxe de ligne de commande utilisée avec l’outil, ou exécutez simplement le fichier batch sans attributs pour obtenir des informations plus détaillées.

Notes:

  • L’outil et son dossier d’exécution Java associé (JRE8) peuvent être copiés et exécutés depuis n’importe quel emplacement, y compris sur une autre machine du réseau que celle hébergeant Enterprise Server.
  • Il peut être nécessaire d’exécuter l’outil avec des privilèges élevés (Administrateur), selon son emplacement.
  • La syntaxe de l’outil est sensible à la casse, tout comme les références dans les modèles Workspace et dans tous les fichiers de configuration utilisés.

Source file format:

L’outil d’importation de données CSV exige que le fichier CSV source délimité par des virgules utilise l’encodage de caractères UTF-8. Si le fichier utilise d’autres formats d’encodage tels que ANSI ou UTF-8-BOM, l’importateur n’analysera pas correctement les caractères étendus (tels que µ), ou pourra ne pas accepter le fichier source *.csv.

Si vous créez un fichier CSV simple à des fins de test, notez que certaines versions du Bloc-notes de Windows n’enregistrent pas dans un format UTF-8 compatible. En cas de doute, un éditeur de texte alternatif tel que Notepad++ peut être utilisé pour créer et enregistrer des fichiers encodés en UTF-8, et il est également utile pour vérifier le format d’encodage des fichiers *.csv exportés depuis un système d’entreprise source.

Mode automatique

Lorsqu’il est utilisé sans fichier de configuration appliqué (option –c), le processus de l’outil CSVImport tentera de faire correspondre le nom du fichier CSV cible (par exemple, Resistor.csv) avec un modèle de composant Workspace prenant en charge ce type de composant (Resistor). Le modèle trouvé déterminera la révision, le cycle de vie et le dossier par défaut (cible Workspace) pour les données importées. Notez que l’exigence minimale en matière de données pour le fichier CSV source est la colonne de paramètre PART_NUMBER et ses valeurs correspondantes.

L’utilitaire CSVImport fournit des informations générales sur la progression dans la fenêtre de console pendant son exécution, et peut également produire un fichier journal comme spécifié par la syntaxe de commande (-l). Si des paramètres de référence fabricant de composant sont présents dans le fichier CSV (par défaut : MFR_PART_NUMBER et MFR_NAME), des entrées Part Choice correspondantes sont créées dans le Workspace.

Le fichier journal facultatif fournit les détails d’un processus d’importation réussi – si le processus échoue, aucun fichier journal n’est généré.

Notez que les composants peuvent également être examinés et consultés dans la vue de page Components de l’interface navigateur du Workspace.

Voir Workspace Components pour plus d’informations.

Mode configuré

Le mode plus avancé de l’outil utilise un fichier de configuration XML pour spécifier le mappage des paramètres du fichier vers le Workspace, ainsi que des options telles que le dossier cible, un modèle différent, etc., pour le processus d’importation.

Pour obtenir un fichier de configuration de base pouvant être modifié selon les besoins, exécutez l’outil avec le paramètre de génération de fichier de configuration (-g). Cela créera le fichier XML spécifié avec des paires clé/valeur de paramètres extraites du fichier CSV source, ainsi que les paramètres de révision, de cycle de vie et de dossier cible issus du modèle correspondant. Sont également inclus des entrées de type de composant pour le PLM (source) et le Workspace (cible) – Resistor dans cet exemple – ainsi que l’ID du modèle.

Une chaîne de commande typique pour l’outil serait :
csv-import.bat -s http://HPZ600:9780 -u admin -p admin -g MyConfig.xml -i C:\Users\Public\Documents\CSV_Files\Resistor.csv

Exemple de fichier de configuration généré (téléchargement)

Une fois généré, le fichier de configuration (MyConfig.xml) peut être modifié pour mapper le paramètre source Value vers Resistance dans le Workspace, et le paramètre Format vers Package. Modifiez ces chaînes d’attribut en conséquence dans la section ToAltium du fichier de configuration (pour la classe PLM Resistor) afin d’effectuer le mappage requis.

Le fichier de configuration est ensuite utilisé avec l’outil (option –c) pour effectuer le mappage requis :
csv-import.bat -s http://HPZ600:9780 -u admin -p admin -c MyConfig.xml -i C:\Users\Public\Documents\CSV_Files\Resistor.csv

Si les entrées de composants existent déjà dans le Workspace (comme importé dans l’exemple de processus Mode automatique ci-dessus), de nouvelles révisions seront créées et les paramètres remappés seront ajoutés aux données existantes – les paramètres existants ne sont pas supprimés.

Autres options de mappage

D’autres options de configuration incluent la possibilité de définir la classe de type de composant pour le PLM et le Workspace en modifiant la ligne <Entity altiumType="Resistor" plmType="Resistor"> du fichier, telle qu’elle serait générée pour cet exemple. Les modifications typiques peuvent être :

  • Spécifier altiumType="ResistorSMT" pour définir les composants importés sur ce type (en supposant que le type soit enregistré dans le Workspace).
  • Spécifier plmType="PLM-Export_Resistors" pour permettre l’importation d’un fichier source nommé PLM-Export_Resistors.csv. Notez que les noms de fichiers CSV source qui ne correspondent pas à un type de composant Workspace existant (Resistor, Capacitor, etc.) ne sont pas reconnus à moins que le plmType ne soit spécifié de cette manière.
L’entrée de dossier cible Workspace dans un fichier de configuration (par exemple : <Folder>Components/Resistors</Folder>) prévaut sur tous les autres paramètres de chemin cible, tels que ceux d’un modèle de composant par défaut ou spécifié.

Pour qu’un processus d’importation réussisse, les entrées Attribute d’un fichier de configuration appliqué (telles qu’elles ont été générées automatiquement) doivent correspondre à celles des en-têtes de colonnes du fichier CSV source. Par exemple, un groupe de colonnes CSV Format doit avoir une entrée d’attribut de configuration Value correspondante de ${attribute.Format}, indépendamment de tout mappage de paramètres appliqué (comme indiqué ci-dessus). Des Attributes supplémentaires peuvent toutefois être ajoutés pour une entité de composant, comme un identifiant fixe par exemple, qui pourrait prendre le format suivant :

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

Dans ce cas, les données de composant importées dans le Workspace incluront un paramètre DataSource avec une valeur définie sur Imported from PLM.

Additional features:

  • Un fichier de configuration appliqué détermine tous les paramètres du processus d’importation, y compris les mappages de paramètres, indépendamment des modèles Workspace associés.
  • Tous les paramètres peuvent être mappés pour s’adapter aux paramètres du fichier CSV d’entrée, y compris le nom utilisé dans le fichier pour le numéro PLM et les données du fabricant de la pièce (Part Choices).
  • Plusieurs définitions d’entité, y compris leurs attributs de paramètres constitutifs, peuvent être incluses dans un fichier de configuration. Copiez une entrée de groupe Entity existante, par exemple pour Resistor, puis collez/modifiez-la pour en créer une autre pour Capacitor.
  • Les paramètres de modèle de composant définis avec une valeur par défaut seront appliqués aux composants importés, sauf s’ils possèdent un attribut correspondant dans les données CSV importées – dans ce cas, la valeur de l’attribut source sera importée dans le paramètre Workspace.  En mode auto mode de CSVImport, le modèle appliqué sera celui du type de composant, tel que défini par le nom du fichier CSV source. En configured mode, le modèle est défini par la ligne <ComponentTemplate>[CMPT-xxxx]</ComponentTemplate> dans le fichier de configuration.
  • Lorsqu’un chemin source est spécifié without un fichier CSV, l’outil recherchera dans le dossier source les noms de fichiers CSV correspondant aux définitions d’Entity dans le fichier de configuration. Ainsi, si des références d’Entity de configuration existent pour Capacitor et Resistor et que des fichiers CSV correspondants sont trouvés, les données de ces composants seront importées dans le Workspace. Il s’agit en pratique du mode de traitement par lots de l’outil.

Gestion des Part Choices

La propagation des données Part Choice du fabricant de composants depuis un système d’entreprise externe (tel qu’un PLM) vers le Workspace est organisée de manière à éviter tout risque de duplication des données ou de suppression non souhaitée. Lorsque les données de composants sont importées dans le Workspace directement depuis le système externe ou via un fichier CSV, la création et/ou la modification des entrées de Part Choice sont gérées intelligemment, en fonction des conditions actuelles et de l’historique des données :

  • Si une entrée Part Choice de composant en cours d’importation existe déjà pour ce composant de bibliothèque du Workspace, elle ne sera pas dupliquée.
  • Si une entrée Part Choice d’un composant de bibliothèque du Workspace a été ajoutée dans le Workspace (et non importée), elle ne sera pas remplacée par des données Part Choice importées. Une Part Choice importée sera ajoutée comme nouvelle Part Choice supplémentaire pour ce composant.
  • Si de nouvelles données Part Choice sont importées pour un composant, elles remplaceront l’entrée Part Choice précédemment importée pour ce composant.

En résumé, hormis le respect des données non-imported Part Choice existantes d’un composant, les données Part Choice importées depuis le système externe détermineront l’entrée Part Choice du composant de bibliothèque du Workspace.

Dans l’image d’exemple ci-dessous, le fichier CSV d’entrée n’inclut pas de données Part Choice (paramètres Manufacture Name et Manufacturer Part Number) pour l’entrée PLM CVS-RES-1001 (la 10k Resistor), donc celles-ci ne sont pas ajoutées au composant de bibliothèque du Workspace. Dans cet exemple toutefois, une entrée Part Choice (Vishay) a été ajoutée manuellement à ce composant de bibliothèque du Workspace depuis le panneau Explorer d’Altium Designer.

Si des données Part Choice pour ce composant (CVS-RES-1001) sont incluses dans un fichier CSV importé/synchronisé ultérieurement, comme illustré ci-dessous, la nouvelle entrée Part Choice (Rohm) sera added au composant, puisqu’une entrée Part Choice « native » existante ne peut pas être remplacée par des données Part Choice importées.

Si un fichier CSV importé/synchronisé suivant contient de nouvelles données Part Choice pour le composant, comme illustré ci-dessous, ces données Part Choice (Yageo) remplaceront l’entrée Part Choice précédemment importée (Rohm) — l’entrée Part Choice « native » existante (Vishay) reste inchangée. À l’inverse, si les données CSV de Part Choice ont été supprimées (entrées MFR_.. vides), le processus d’importation supprimera l’entrée Part Choice importée existante dans le Workspace (Yageo).

Part Choices fabricant multiples

Le CSV Importer prend également en charge plusieurs ensembles de données de pièces fabricant pour un composant donné grâce à une structure répétée dans le fichier CSV source, où des entrées de composant supplémentaires sont incluses pour chaque variante de données de pièce fabricant. Par exemple, si un composant source CSV-RES-1001 possède trois références associées, alors trois entrées CSV pour ce composant sont incluses, chacune spécifiant des données de colonnes MFR_NAME et MFR_PART_NUMBER différentes (une provenant de Vishay Dale et deux de Yageo).

Lorsque ces données de composant sont importées dans le Workspace, un seul élément de composant est créé pour la pièce CSV-RES-1001, mais avec plusieurs entrées Part Choice dérivées des références de données CSV supplémentaires.

Gestion des unités et des valeurs des paramètres

Lorsque les données de composants sont importées depuis un système d’entreprise externe dans le Workspace par l’outil CSVImport, le traitement automatisé des unités des paramètres du Workspace interprète les données de valeur et gère également les éventuelles erreurs dans ces données.

Lors d’un processus d’importation ou de synchronisation des données de composants, tous les paramètres de composant spécifiés dans le Component Template applicable comme Type sensible aux unités Percent(%) (Watts(W), etc.) sont interprétés en conséquence. Étant donné que le formatage des valeurs de paramètres importées peut varier considérablement, puisqu’elles ont été définies dans un système externe (tel qu’un PLM), le traitement des valeurs sensibles aux unités du Workspace prend en charge tous les formats probables puis gère correctement les éventuelles erreurs.

L’image ci-dessous montre un exemple dans lequel un ensemble de composants de bibliothèque du Workspace est mis à jour par un fichier d’importation CSV qui inclut le paramètre Power pour chaque entrée de composant. Les valeurs du paramètre Power dans le fichier CSV source utilisent différents formats, et cela inclut une erreur de valeur (62500x) pour l’entrée de composant CSV-RES-1001. Avant l’importation des données, les composants de bibliothèque du Workspace n’incluaient pas de données de paramètre Power et en étaient à leur première révision (Revision 1) — comme indiqué dans le panneau supérieur Explorer.

Les résultats du processus d’importation CSV, tels qu’ils apparaissent dans l’image du panneau inférieur Explorer (ci-dessus), montrent les effets à la fois de l’interprétation des paramètres sensibles aux unités et de sa gestion des erreurs :

  • Aucune valeur Power n’a été ajoutée au composant CSV-RES-1001 en raison d’une erreur de format dans les données source CSV.
  • Aucune nouvelle révision n’a été créée pour le composant CSV-RES-1001 (il reste à Revision 1).
  • Les formats source des valeurs Power pour tous les autres composants ont été correctement interprétés à partir des données source.
  • De nouvelles révisions ont été créées pour les composants correctement mis à jour.

Un processus ultérieur d’importation de données de composant, avec une valeur Power révisée (62500u) pour le composant CSV-RES-1001, est correctement interprété pour ce composant — comme illustré dans l’image ci-dessous. Les données du composant de bibliothèque du Workspace ont été mises à jour, créant une nouvelle révision (Revision 2).

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