Ferramenta de Linha de Comandos para Importação de Dados de Componentes

 

Parent page: Manutenção

O Enterprise Server inclui uma ferramenta de importação de bases de dados de componentes CSV que pode ser utilizada para importar dados de componentes para o Workspace do Enterprise Server a partir de um ficheiro exportado de um sistema empresarial, como um sistema ERP ou PLM da empresa. Implementada como um ficheiro batch configurável (*.bat), a ferramenta de ambiente de trabalho importa dados de componentes de um ficheiro de folha de cálculo de destino (*.csv) para o Workspace, conforme determinado pelos modelos existentes do Workspace ou por um ficheiro de configuração dedicado.

► Consulte Integração PLM para mais informações sobre o trabalho entre o Enterprise Server e sistemas PLM.

A ferramenta de linha de comandos pode ser encontrada na pasta \Program Files (x86)\Altium\Altium365\Tools\CSVImport da instalação do Enterprise Server. Consulte csv-import.bat para obter informações sobre a sintaxe da linha de comandos utilizada com a ferramenta, ou execute simplesmente o ficheiro batch sem atributos para obter informações mais detalhadas.

Notes:

  • A ferramenta e a pasta Java runtime de suporte (JRE8) podem ser copiadas e executadas em qualquer localização, incluindo numa máquina em rede diferente da máquina anfitriã do Enterprise Server.
  • A ferramenta poderá ter de ser executada com privilégios elevados (Administrador), dependendo da sua localização.
  • A sintaxe da ferramenta é sensível a maiúsculas e minúsculas, tal como as referências nos Modelos do Workspace e quaisquer ficheiros de configuração utilizados.

Source file format:

A ferramenta de importação de dados CSV requer que o ficheiro CSV de origem delimitado por vírgulas utilize codificação de caracteres UTF-8. Se o ficheiro utilizar outros formatos de codificação, como ANSI ou UTF-8-BOM, o importador não irá analisar corretamente caracteres alargados (como µ), ou poderá não aceitar o ficheiro de origem *.csv.

Se estiver a criar um ficheiro CSV básico para fins de teste, tenha em atenção que algumas versões do Bloco de Notas do Windows não guardam num formato UTF-8 compatível. Em caso de dúvida, pode ser utilizado um editor de texto alternativo, como o Notepad++, para criar e guardar ficheiros codificados em UTF-8, sendo também útil para verificar o formato de codificação de ficheiros *.csv exportados de um sistema empresarial de origem.

Modo automático

Quando utilizada sem aplicar um ficheiro de configuração (opção –c), o processo da ferramenta CSVImport irá tentar fazer corresponder o nome do ficheiro CSV de destino (por exemplo, Resistor.csv) a um Modelo de Componente do Workspace que suporte esse Tipo de Componente (Resistor). O Modelo encontrado determinará a Revisão, o Ciclo de Vida e a Pasta Predefinida (destino no Workspace) para os dados importados. Note que o requisito mínimo de dados para o ficheiro CSV de origem é a coluna de parâmetro PART_NUMBER e os respetivos Valores correspondentes.

A ferramenta utilitária CSVImport fornece informações gerais de progresso na janela da consola durante a execução e também pode produzir um ficheiro de registo conforme especificado pela sintaxe de comandos (-l). Se existirem parâmetros de referência do fabricante da peça no ficheiro CSV (por predefinição; MFR_PART_NUMBER e MFR_NAME), são criadas entradas Part Choice correspondentes no Workspace.

O ficheiro de registo opcional fornece detalhes de um processo de importação bem-sucedido – se o processo falhar, não é gerado um ficheiro de registo.

Note que os componentes também podem ser inspecionados e acedidos na vista de página Components da interface do navegador do Workspace.

Consulte Componentes do Workspace para mais informações.

Modo configurado

O modo mais avançado da ferramenta utiliza um ficheiro de configuração XML para especificar o mapeamento de parâmetros ficheiro-para-Workspace e opções como a pasta de destino, um Modelo diferente, etc., para o processo de importação.

Para obter um ficheiro de configuração base que possa ser modificado conforme necessário, execute a ferramenta com a definição de gerar ficheiro de configuração (-g). Isto criará o ficheiro XML especificado com pares chave/valor de parâmetros extraídos do ficheiro CSV de origem, e a definição de Revisão, Ciclo de Vida e pasta de destino a partir do Modelo correspondente. Também estão incluídas entradas de Tipo de Componente tanto para o PLM (origem) como para o Workspace (destino) – Resistor neste caso de exemplo – e o ID do Modelo.

Uma cadeia de comandos típica para a ferramenta seria:
csv-import.bat -s http://HPZ600:9780 -u admin -p admin -g MyConfig.xml -i C:\Users\Public\Documents\CSV_Files\Resistor.csv

Exemplo de ficheiro de configuração gerado (transferir)

Depois de gerado, o ficheiro de configuração (MyConfig.xml) pode ser editado para mapear o parâmetro de origem Value para Resistance no Workspace, e o parâmetro Format para Package. Edite essas cadeias de atributos em conformidade na secção ToAltium do ficheiro de configuração (para a classe PLM Resistor) para mapear conforme necessário.

O ficheiro de configuração é então utilizado com a ferramenta (opção –c) para efetuar o mapeamento necessário:
csv-import.bat -s http://HPZ600:9780 -u admin -p admin -c MyConfig.xml -i C:\Users\Public\Documents\CSV_Files\Resistor.csv

Se as entradas de componentes já existirem no Workspace (conforme importadas no processo de exemplo de Modo automático acima), serão criadas novas Revisões e os parâmetros remapeados serão adicionados aos dados existentes – os parâmetros existentes não são removidos.

Outras opções de mapeamento

Outras opções de configuração incluem a capacidade de definir a classe de Tipo de Componente tanto para o PLM como para o Workspace editando a linha <Entity altiumType="Resistor" plmType="Resistor"> do ficheiro, conforme seria gerado para este exemplo. Alterações típicas poderão ser:

  • Especificar altiumType="ResistorSMT" para definir os componentes importados para esse tipo (assumindo que o tipo está registado no Workspace).
  • Especificar plmType="PLM-Export_Resistors" para permitir que um ficheiro de origem com o nome PLM-Export_Resistors.csv seja importado.  Note que nomes de ficheiros CSV de origem que não correspondam a um Tipo de Componente existente no Workspace (Resistor, Capacitor, etc.) não são reconhecidos, a menos que plmType seja especificado desta forma.
A entrada da pasta de destino do Workspace num ficheiro de configuração (por exemplo; <Folder>Components/Resistors</Folder>) sobrepõe-se a todas as outras definições de caminho de destino, como as de um Modelo de Componente predefinido ou especificado.

Para um processo de importação bem-sucedido, as entradas de Atributo num ficheiro de configuração aplicado (conforme geradas automaticamente) devem corresponder às dos cabeçalhos das colunas do ficheiro CSV de origem. Por exemplo, um grupo de colunas CSV Format deve ter uma entrada de atributo de configuração correspondente com o Valor ${attribute.Format}, independentemente de qualquer mapeamento de parâmetros aplicado (conforme descrito acima). No entanto, podem ser adicionados Atributos adicionais para uma Entidade de componente, como por exemplo um identificador fixo, que poderá assumir o seguinte formato:

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

Neste caso, os dados do componente importados para o Workspace incluirão um parâmetro DataSource com um valor definido como Imported from PLM.

Additional features:

  • Um ficheiro de configuração aplicado determina todas as definições do processo de importação, incluindo os mapeamentos de parâmetros, independentemente dos Modelos do Workspace relacionados.
  • Todos os parâmetros podem ser mapeados para acomodar os parâmetros do ficheiro CSV de entrada, incluindo o nome utilizado no ficheiro para o Número PLM e os dados do fabricante da peça (Part Choices).
  • Podem ser incluídas várias definições de Entidade, incluindo os respetivos Atributos de parâmetros constituintes, num ficheiro de configuração. Copie uma entrada de grupo de Entidade existente, por exemplo para Resistor, e depois cole/edite essa entrada para criar outra para Capacitor.
  • Os parâmetros do Modelo de Componente que estejam definidos com um valor predefinido serão aplicados aos componentes importados, a menos que tenham um atributo correspondente nos dados CSV importados – nesse caso, o valor do atributo de origem será importado para o parâmetro do Workspace.  No CSVImport modo automático, o modelo aplicado será o correspondente ao Tipo de Componente, conforme definido pelo nome do ficheiro CSV de origem. No modo configurado, o modelo é definido pela linha <ComponentTemplate>[CMPT-xxxx]</ComponentTemplate> no ficheiro de configuração.
  • Quando é especificado um caminho de origem without para um ficheiro CSV, a ferramenta irá procurar na pasta de origem nomes de ficheiros CSV que correspondam às definições de Entidade no ficheiro de configuração. Assim, se existirem referências de Entidade na configuração para Capacitor e Resistor e forem encontrados ficheiros CSV correspondentes, os dados desses componentes serão importados para o Workspace. Este é, na prática, o modo de operação em lote da ferramenta.

Processamento de Part Choices

A propagação de dados de Part Choice do fabricante de componentes de um sistema empresarial externo (como um PLM) para o Workspace é organizada de forma a evitar a possibilidade de duplicação de dados ou de remoção indesejada. Quando os dados do componente são introduzidos no Workspace diretamente a partir do sistema externo ou através de um ficheiro CSV, a criação e/ou modificação de entradas de Part Choice é tratada de forma inteligente, com base nas condições atuais e no histórico dos dados:

  • Se uma entrada de Part Choice de um componente que está a ser importada já existir para esse componente da biblioteca do Workspace, não será duplicada.
  • Se uma entrada de Part Choice de um componente da biblioteca do Workspace tiver sido adicionada dentro do Workspace (não importada), não será substituída por dados de Part Choice importados. Um Part Choice importado será adicionado como um novo Part Choice adicional para esse componente.
  • Se forem importados novos dados de Part Choice para um componente, estes irão substituir a entrada de Part Choice previamente importada para esse componente.

Em resumo, para além de respeitar os dados de non-imported Part Choice existentes de um componente, os dados de Part Choice importados do sistema externo irão determinar a entrada de Part Choice do componente da biblioteca do Workspace.

Na imagem de exemplo apresentada abaixo, o ficheiro CSV de entrada não inclui dados de Part Choice (parâmetros Manufacture Name e Manufacturer Part Number) para a entrada PLM CVS-RES-1001 (a 10k Resistor), pelo que isto não é adicionado ao componente da biblioteca do Workspace. Neste caso de exemplo, contudo, foi adicionada manualmente uma entrada de Part Choice (Vishay) a esse componente da biblioteca do Workspace a partir do painel Explorer do Altium Designer .

Se os dados de Part Choice para esse componente (CVS-RES-1001) forem incluídos num ficheiro CSV subsequentemente importado/sincronizado, como mostrado abaixo, a nova entrada de Part Choice (Rohm) será added ao componente – uma vez que uma entrada de Part Choice 'nativa' existente não pode ser substituída por dados de Part Choice importados.

Se um ficheiro CSV importado/sincronizado posterior tiver novos dados de Part Choice para o componente, como mostrado abaixo, esses dados de Part Choice (Yageo) irão substituir a entrada de Part Choice que foi previamente importada (Rohm) – a entrada de Part Choice 'nativa' existente (Vishay) permanece inalterada. Em alternativa, se os dados CSV de Part Choice tiverem sido removidos (entradas MFR_.. em branco), o processo de importação eliminará a entrada de Part Choice importada existente no Workspace (Yageo).

Múltiplos Manufacturer Part Choices

O Importador CSV também suporta múltiplos conjuntos de dados de peças do fabricante para um determinado componente através de uma estrutura repetida no ficheiro CSV de origem, em que são incluídas entradas adicionais do componente para cada variação de dados de peças do fabricante. Por exemplo, se um componente de origem CSV-RES-1001 tiver três números de peça relacionados, então serão incluídas três entradas CSV para esse componente, cada uma especificando dados de coluna MFR_NAME e MFR_PART_NUMBER diferentes (uma de Vishay Dale e duas de Yageo).

Quando estes dados do componente são importados para o Workspace, é criado um único item de componente para a peça CSV-RES-1001, mas com múltiplas entradas de Part Choice derivadas das referências de dados CSV adicionais.

Processamento de Unidade e Valor de Parâmetros

Quando os dados dos componentes são importados de um sistema empresarial externo para o Workspace pela ferramenta CSVImport, o processamento automático de Unidade dos parâmetros do Workspace irá tanto interpretar os dados de valor como tratar quaisquer erros nesses dados.

Durante um processo de importação ou sincronização de dados de componentes, quaisquer parâmetros de componente especificados no Modelo de Componente aplicável como um Type com reconhecimento de unidade (Percent(%), Watts(W), etc.) são interpretados em conformidade. Uma vez que a formatação dos valores dos parâmetros importados pode variar amplamente, por terem sido definidos num sistema externo (como um PLM), o processamento de valores com reconhecimento de unidade do Workspace acomoda todos os formatos prováveis e trata depois corretamente quaisquer erros.

A imagem abaixo mostra um exemplo em que um conjunto de componentes da biblioteca do Workspace é atualizado por um ficheiro de importação CSV que inclui o parâmetro Power para cada entrada de componente. Os valores do parâmetro Power no ficheiro CSV de origem utilizam uma gama de formatações, e isto inclui um erro de valor (62500x) para a entrada do componente CSV-RES-1001. Antes da importação dos dados, os componentes da biblioteca do Workspace não incluíam dados do parâmetro Power e encontravam-se na sua primeira revisão (Revision 1) – como mostrado no painel superior Explorer.

Os resultados do processo de importação CSV, tal como aparecem na imagem do painel inferior Explorer (acima), mostram os efeitos tanto da interpretação de parâmetros com reconhecimento de unidade como do respetivo tratamento de erros:

  • Não foi adicionado um valor Power ao componente CSV-RES-1001 devido ao erro de formatação dos dados de origem CSV.
  • Não foi criada uma nova revisão para o componente CSV-RES-1001 (permanece em Revision 1).
  • Os formatos de origem do valor Power para todos os outros componentes foram corretamente interpretados a partir dos dados de origem.
  • Foram criadas novas revisões para os componentes corretamente atualizados.

Um processo subsequente de importação de dados de componentes, com um valor Power revisto (62500u) para o componente CSV-RES-1001, é corretamente interpretado para esse componente – como mostrado na imagem abaixo. Os dados do componente da biblioteca do Workspace foram atualizados, criando uma nova revisão (Revision 2).

AI-LocalizedLocalizado por IA
Caso encontre um problema, selecione o texto/imagem e primaCtrl + Enterpara nos enviar o seu feedback.
Conteúdo