Importando um arquivo texto sem delimitadores

Blog Advpl - Share knowledge

Importando um arquivo texto sem delimitadores

15 de janeiro de 2016 Dicas Funções Geral Manuais Protheus12 0

O processo de importação de um arquivo texto no Protheus não é lá um processo muito simples, mas não impossível de se fazer, o mais fácil é quando temos um arquivo com delimitadores, seja usando ponto e vírgula (;), ou usando o pipe (|), barra (/), entre outros caracteres.

Agora importar um arquivo texto sem delimitadores, já torna o processo um pouco mais chato, mas também nada impossível de se fazer. Alguns colegas que estão começando sempre me perguntam, tem alguma forma mais fácil de se fazer? Digo que depende muito da lógica a ser usada, mas os comandos serão sempre os mesmo.

Neste artigo, irei demonstrar um exemplo de importação de arquivo texto sem delimitadores para que você possa utilizá-lo no seu dia a dia, mas para aqueles que fazem isso e tiver um exemplo mais fácil, compartilhe conosco, toda dica é bem vinda.

Primeiramente irei mostrar o formato do arquivo texto, neste exemplo será um bem simples. (Arquivo exemplo)

exemploarquivotextoparaimportar

Tela inicial: colocarei todos os campos contidos no meu arquivo texto.

Utilizarei os componentes:

Say() = Exibe textos em uma tela de interface com o usuário
MsGet() = Permite que o usuário digite informações na tela, conforme a necessidade da aplicação.
TCBrowse() = Cria um objeto do tipo grade.
Button() = Criar um botão na tela para que o usuário interaja com a aplicação.

Desenhei a tela utilizando o programa GAIA 2010.

exemploarquivotextoparaimportartelainicial

Para selecionar o arquivo, usarei a função cGetFile (Apresenta uma janela com os diretórios disponíveis, na estação e no servidor,  e retorna o nome do item.) , para saber mais sobre esta função consulte o TDN (http://tdn.totvs.com/display/tec/cGetFile).

exemploarquivotextoparaimportarabrindoarquivo

Após selecionar o arquivo e confirmá-lo, o arquivo é importado para a tela criada. Você poderia perfeitamente importar diretamente numa tabela.
exemploarquivotextoparaimportartelainicialconteudo

Visualizando assim, parece tudo simples não é mesmo?

 

 

Deixe uma resposta