Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Fala pessoal, tudo bom?
Provavelmente em algum momento você já teve que carregar uma tabela fato grande e notou que alguns campos numéricos e datas não vieram formatados da forma em que precisa para exibi-los e utiliza-los em suas expressões, nossa primeira reação é de adicionar as funções de formatação no script de leitura deste QVD, mas logo percebemos que a leitura que antes ocorria em 20 segundos passou a demorar mais de 10 minutos por que perdemos a leitura otimizada do QVD.
Lembram o que é uma leitura otimizada? Eu falei disso neste post: Melhores Práticas - QVD Optimized.
Em resumo, um QVD mantém a leitura otimizada somente quando realizamos essas ações em sua leitura:
É... lá se vai a leitura otimizada quando utilizo as funções de formatação Date ou Num. Mas afinal, é possível formatar campos sem que percamos a leitura otimizada deste QVD? SIM!
Primeiro precisamos de uma tabela com campos não formatadas, como a imagem abaixo:
Neste exemplo temos o campo DATA e VALOR sem formatação.
Queremos formatar a DATA como 'DD/MM/YYYY hh:mm:ss' e o VALOR com duas casas decimais.
IMPORTANTE: Estamos apenas formatando o campo, ou seja, não podemos remover a informação de hora, minuto e segundo do campo de DATA, pois isso seria uma transformação de valores.
Agora precisamos criar uma tabela temporária com a formatação correta para os campos que desejamos formatar. Para isso iremos utilizar o comando AutoGenerate.
Note que cada campo formatado deve conter o mesmo nome do campo que será formatado.
Veja o código:
A formatação pode ocorrer sobre o Null(), pois o mais importante é fazermos o QlikView identificar que o campo DATA e o VALOR possuem estas formatações.
Agora podemos carregar o nosso QVD e depois dropar a tabela de formatação de campos:
Vejam o processo de execução do script:
Muito bom!!
Por que isso ocorre? Pois o Qlikview cria a associação da formatação para o campo independente da tabela em que este campo esteja (lembre-se da associação de dados), ou seja, para o Qlikview o campo DATA possui a formatação 'DD/MM/YYYY hh:mm:ss' e o campo VALOR possui a formatação '#.##0,00'.
Segue um qvw demonstrando os passos realizados deste artigo. Clique aqui!
É claro que podemos formatar campos através da aba Número das propriedades do documento, mas é importante identificarmos os pequenos erros que cometemos por falta de entendimento de como a ferramenta se comporta para determinadas situações.
Até a próxima semana pessoal!!
Essa realmente é boa, uso há muito tempo.
Don't worry, be Qlik.
Tonial.
Bacana Yuri,
Vou testar aqui.
em um aplicação que usa QVD por data.
Show a postagem, estava procurando na comunidade bem isso, como otimizar documento com formatações, vou utilizar as dicas, valeu