Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
girino777
Creator III
Creator III

Carga TXT

Boa Tarde..!!

Como eu faço a carga de um arquivo txt que as informações estão em apenas uma linha.

Segue abaixo um exemplo bem simples de parte da linha onde se encontram as informações.

Onde eu realizo as delimitações na hora da carga? 

Ex:

Largura 4 = Ano

Largura 2 = Mês

Largura 2 = UF

201501SP

201501SP

201501SP


Muito Obrigado.


Renato



1 Solution

Accepted Solutions
fernando_tonial
Partner - Specialist
Partner - Specialist

Olá Renato,

Utilize a função Evaluate(),

LOAD [@1:4] as ANO,

    [@5:6] as MES,

    [@7:14] as NCM,

    [@15:17] as PAIS,

    [@18:21] as PORTO,

    [@22:23] as UF,

    [@24:25] as UN,

    [@26:38] as QTD_ESTAT,

    [@39:51] as KG_LIQUIDO,

    Evaluate([@52:66]) as VLR_FOB,

    [@67:68] as VIA

FROM

[EXP_MPP201505_v201506_VIA_TRANSP.txt]

(fix, codepage is 1252);

Don't worry, be Qlik.

Tonial.

Don't Worry, be Qlik.

View solution in original post

8 Replies
rphpacheco
Creator III
Creator III

Boa tarde Renato.

Bom, se este txt segue este padrão, podes fazer da seguinte maneira:

Left(nomeDoCampo, 4) as Ano,

Mid(nomeDoCampo, 5, 2) as Mês,

Right(nomeDoCampo, 2) as UF

girino777
Creator III
Creator III
Author

OK.!

Achei que dava pra fazer nas configurações antes da carga..!!

Entendi o conceito e a forma de fazer..!!

Obrigado Raphael..!!

fernando_tonial
Partner - Specialist
Partner - Specialist

Olá Renato,


Recomendo fazer o processo um pouco diferente do informado pelo Raphael.

Ao escolher o arquivo de tabela, marque a opção Registro Fixo e depois separe cada coluna conforme o tamanho, conforme imagem.

17-06-2015 16-03-26.png

Depois altere o nome das colunas:

17-06-2015 16-04-13.png

Ficando com esse script:

Dados:

LOAD [@1:4] as Ano,

    [@5:6] as Mes,

    [@7:n] as Estado

FROM

Dados.txt

(fix, codepage is 1252, no eof);

Anexo o qvw que fiz esse procedimento.

Don't worry, be Qlik.

Tonial.

Don't Worry, be Qlik.
girino777
Creator III
Creator III
Author

OK.! Tonial.

Só não entendi, porque no meu exemplo em anexo ele não transforma a coluna VLR_FOB em númerico.

Já tentei de várias formas mas não consegui.

Segue em anexo.

fernando_tonial
Partner - Specialist
Partner - Specialist

Olá Renato,

Utilize a função Evaluate(),

LOAD [@1:4] as ANO,

    [@5:6] as MES,

    [@7:14] as NCM,

    [@15:17] as PAIS,

    [@18:21] as PORTO,

    [@22:23] as UF,

    [@24:25] as UN,

    [@26:38] as QTD_ESTAT,

    [@39:51] as KG_LIQUIDO,

    Evaluate([@52:66]) as VLR_FOB,

    [@67:68] as VIA

FROM

[EXP_MPP201505_v201506_VIA_TRANSP.txt]

(fix, codepage is 1252);

Don't worry, be Qlik.

Tonial.

Don't Worry, be Qlik.
girino777
Creator III
Creator III
Author

OK.! Tonial

Funcionou ..!!

Agora minha dúvida é a seguinte:

Porque nos outros campos (QTD_ESTAT e KG_LIQUIDO) que era de valor, eu não precisei passar essa função?

Muito Obrigado..!!

Renato

fernando_tonial
Partner - Specialist
Partner - Specialist

Renato,

Acredito que nas outras funcionou devido ao tamanho do texto, pois com textos maiores de 14 o Qlikview não interpreta como numérico de forma automática.

Don't worry, be Qlik.

Tonial.

Don't Worry, be Qlik.
girino777
Creator III
Creator III
Author

OK.! Tonial

Entendido. 

Muito Obrigado.!!

Renato