Skip to content
  • Categorias
  • Recente
  • Tags
  • Popular
  • Usuários
  • Grupos
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Brite)
  • No Skin
Collapse

Automatize Fórum

  1. Home
  2. Wiki-Automatize
  3. Importação de Arquivos CSV

Importação de Arquivos CSV

Agendado Fixado Trancado Movido Wiki-Automatize
1 Posts 1 Posters 5 Visualizações 1 Watching
  • Mais Antigo para Mais Recente
  • Mais Recente para Mais Antigo
  • Mais Votados
Responder
  • Responder como tópico
Entre para responder
Este tópico foi deletado. Apenas usuários com privilégios de moderação de tópico podem vê-lo.
  • cassolC
    cassolC
    cassol
    Global Moderator
    escreveu última edição por cassol
    #1

    Introdução

    O Importador é um executável de linha de comando e através dele é possível carregar qualquer arquivo CSV para o banco de dados da Automatize.

    O arquivo CSV deverá ter na primeira linha o nome das colunas.

    Instalação

    Executar o instalador AtuImportador.exe que está no FTP em /Downloads.

    Após rodar o instalador, o Importador será instalado na pasta c:\importador\.

    Arquivos de Mapeamento

    Para estabelecermos a relação entre as colunas do arquivo CSV e uma tabela do banco de dados da Automatize, é necessário um mapeamento. Para fazer isso é necessário criar um arquivo de mapeamento para cada tabela do banco.

    Exemplo de Mapeamentos

    1 - Mapeando um CSV para a tabela ConfDePara

    Arquivo CSV

    ONLINE;AUTOMATIZE;DESCRIÇÃO DO PRODUTO
    63636027;272;TARTELETE
    63636028;273;CHEESECAKE MORANGO
    63636029;278;COCO COM DOCE DE LEITE
    63636030;280;GANACHE DE CHOCOLATE
    

    Arquivo de Mapeamento

    -- IDENTITY [significa que o campo é primary key e que vai gerar um id caso o registro nao exista] 
    idConfDePara=IDENTITY
    -- [1] [Busca o campo fixo passado como parametro para o importador, neste caso o campo 1]
    cdpCadConfDePara=[1]
    cdpCodigoOrigem=@online
    cdpCodigoDestino=@automatize
    sysInc=current_timestamp
    

    Sintaxe do Mapeamento

    No arquivo de mapeamento são aceitos os seguintes comandos ou sintaxes:

    • -- - Comentário
    • IDENTITY - Será gerado um código automaticamente para o campo da tabela. Usamos normalmente para referenciar os IDs das tabelas.
    • [1] - Pega um valor de um campo fixo passado por parâmetro para o Importador. Ex: cdpCadConfDePara=[1]
    • @ - Indica o nome da coluna na tabela CSV. Ex: cliCEP=@cep
    • current_timestamp - Data/hora atual. Ex: sysInc=current_timestamp
    • ! - O sinal de exclamação no início do campo significa que vai ser usado para pesquisar a existência do registro, e caso o registro exista ele será atualizado, caso não, será inserido. Ex: !cdpCodigoOrigem=@online
    • # - Irá retirar qualquer caractere que não seja numérico do campo. Ex: cliCpfCNPJ=@cpf#
    • Substring - Corta parte de um texto. Ex: cliEndereco=Substring(@end,1,50) irá pegar da posição 1 atá a 50 da coluna @end do arquivo CSV.
    • iif(isnull(@uf,) = , 'RS', @uf) - Comando completo, neste caso vai colocar a palavra ‘RS’ caso a coluna @uf seja nula.

    Parâmetros para execução do Importador

    Importador [unidade:][caminho][nome_de_arquivo] [/td=nome_tabela_destino] [/m=mapa_campos_txt] [/d=]
      [unidade:][caminho][nome_de_arquivo] --> Caminho completo até o arquivo a ser importado
      
      /td --> Tabela de destinho no banco de dados da Automatize
      /m  --> Mapa com os campos correspondentes no arquivo e no banco
      /d  --> Delimitador de colunas. Por padrão será o ';'
      /s  --> String de conexão com o banco de dados.
      /e  --> ID da empresa
      /v  --> Exibe todos os comandos executados no banco de dados
      /f  --> Valores fixos, serao usados dentro dos mapas.
              Dentro do mapa, para pegar o valor 10, usar [1], para o valor 20 usar [2]
    

    Exemplos de Uso

    1 - Importando um arquivo CSV para a tabela ConfDePara

    • No exemplo a seguir irá importar o arquivo c:\temp\importador\DEPARA.CSV.
      • Parâmetro /td=ConfDePara -> Para a tabela ConfDePara.
      • Parâmetro /m=c:\temp\importador\ConfDePara.txt -> O arquivo contendo o mapeamento é o ConfDePara.txt.
      • Parâmetro /d=; -> O delimitador de campos do CSV é o ponto e vírgula.
      • Parâmetro /s=Server=127.0.0.1\sqlexpress,1433;Database=AutomatizeDB;User=sa;Password=auto3010 -> A conexão com o banco de dados
      • Parâmetro /e= -> Estamos passando o valor 1 para ser usado dentro do arquivo de mapeamento pois precisamos saber qual a tabela mãe da ConfDePara, que no caso é a CadConfDePara. No arquivo de mapeamento está especificado no campo cdpCadConfDePara=[1].
      • Parâmetro /f=1 -> A empresa será a 1

    Exemplo importando um arquivo CSV:

    No prompt do DOS digitar o seguinte comando:

    c:\importador\importador.exe c:\temp\importador\DEPARA.CSV /td=ConfDePara /m=c:\temp\importador\ConfDePara.txt /d=; /s=Server=127.0.0.1\sqlexpress,1433;Database=AutomatizeDB;User=sa;Password=auto3010 /e=1 /f=1
    

    Exemplo importando vários arquivos CSV:

    No prompt do DOS digitar o seguinte comando:

    c:\importador\importador.exe c:\temp\importador /td=ConfDePara /m=c:\temp\importador\ConfDePara.txt /d=; /s=Server=127.0.0.1\sqlexpress,1433;Database=AutomatizeDB;User=sa;Password=auto3010 /e=1 /f=1
    

    Concluindo

    No arquivo abaixo está o mapeamento e um arquivo exemplo para importar uma configuração De/Para, tabela ConfDePara.

    ::configuracao-de-para.zip

    Como pré-requisito é necessário entrar na tela “Configuração DE - PARA” no AutomatizeSis e criar uma configuração pois o código da configuração será usado como parâmetro para o importador.


    Migrado da wiki (importador_de_arquivos_csv). Última edição em 23/05/2019; autores: cassol.

    1 Resposta Última resposta
    0

    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

    With your input, this post could be even better 💗

    Cadastrar Login
    Responder
    • Responder como tópico
    Entre para responder
    • Mais Antigo para Mais Recente
    • Mais Recente para Mais Antigo
    • Mais Votados


    • Login

    • Não tem uma conta? Cadastrar

    • Login or register to search.
    • Primeiro post
      Último post
    0
    • Categorias
    • Recente
    • Tags
    • Popular
    • Usuários
    • Grupos