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: 
Not applicable

Dificuldade com semanas

Bom dia Srs,

Estou com uma dificuldade em apresentar uma análise com período em semanas, já vi tópicos aqui no fórum mas em nenhum deles se encaixou o que eu precisava.

O cliente recebe produtos por peso, em tonelada.

Além de outras análises, eles precisam saber o peso médio recebido por semana de cada fornecedor, então seria algo como uma tabela:

FornecedorSemana1Semana2Semana3Semana4Semana5
Fornecedor115TON18TON13TON24TON25TON
Fornecedor224TON12TON13TON......
Fornecedor321TON............
Fornecedor422TON............

O que não estou conseguindo é criar essas colunas de semana. Acredito que seriam dimensões, correto? Mas como fazer para o sistema saber que do dia 1 ao 7 é a primeira semana e etc montando a tabela dessa forma?

Labels (1)
1 Solution

Accepted Solutions
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Thiago,

você pode fazer com um gráfico tabela dinâmica.

2016-12-07 22_32_40-QlikView x64 - [C__tmp_Semana.qvw].png

Segue exemplo

furtado@farolbi.com.br

View solution in original post

9 Replies
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Thiago,

normalmente uso a semana do ano ( week(Data) ).

Se quiser a semana do mês, a semana começa em um domingo ou como você colocou do dia 1 a 7 semana1,dia 8 a 14 Semana2 ,......?

Se for o primeiro caso, na carga

week(Data)         as Semana

Se for o segundo caso, // semana 1,2,..... do mês, começando dia 1,depois 8,......

floor((day(Data )-1)/7)+1

furtado@farolbi.com.br
Not applicable
Author

Boa tarde Alessandro,

Seria da segunda forma, a semana do mês, iniciando no dia 1 ao 7 a primeira, depois 8 a 14 a segunda e etc...

Fiz da forma que falou, mas fiquei sem saber onde calcular a média do peso.

Comecei a utilizar o Qlik semana passada, a maior parte das analises que me pediram eu consegui fazer, mas eram todas com data certa, ou mensais, essa de semana que estou tendo dificuldade.

Sem título.jpg

afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Thiago,

faz na carga, no script da carga.  Assim, você vai usar o campo criado na dimensao.

Segue um modelo de exemplo....

furtado@farolbi.com.br
Not applicable
Author

Bom dia Alessandro,

O exemplo acima foi muito bom para conhecimento, obrigado.

Mas ainda não resolve.

Talvez eu tenha perguntado de forma errada. Preciso saber a semana do mês como disse, mas para usar como intervalo no cálculo da média do peso.

Para ficar no título da coluna, basta eu colocar "Semana1" como rótulo.

O que preciso é calcular a média do peso das entregas, apenas da primeira semana do mês, iniciando no dia 1 e terminando no dia 7.

Depois a média da segunda semana, do dia 8 ao 14, e assim por diante.

Acredito que teria que usar expressão de média, mas selecionar apenas essas entregas por semana que não sei como fazer.

Ficaria então em cada linha, a média de peso por fornecedor apenas da semana1, depois na segunda coluna da semana2, etc...

afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Então,

Se você cria um campo chamado semana na sua carga, ele vai te dar por exemplo do dia 1 a 7 seria o campo Semana com conteúdo = 1.

Assim, um avg(Valor) por exemplo te daria a média da semana, que poderia estar em uma dimensão.

No modelo que anexei como exemplo a semana está como dimensão. erias um modelo reduzido e embaralhado para colocar para te mostrar esta ideia?

furtado@farolbi.com.br
Not applicable
Author

Bom dia Alessandro,

Entendi a forma que você quis dizer, realmente se eu utilizar na carga acredito que daria certo.

Já vi exemplos até em videos dessa forma.

Mas estou usando uma conexão ODBC com SQL SELECT, que não me deixa utilizar a função week(data) no meio do select ao carregar.

Nenhum dos exemplo que vi, inclusive em videos demonstrava dessa forma, sempre com LOAD.

nicolett_yuri

Thiago, basta você fazer uma re-leitura da tabela carregada,  do banco, e trata-la com as funções do qlikview.

Exemplo01:

Tabela:

LOAD

     CAMPO1,

     CAMPO2,

     Week(CAMPO3) as SEMANA;

SQL SELECT CAMPO1, CAMPO2, CAMPO3  FROM ..................;

Exemplo02:

Tabela:

SQL SELECT CAMPO1, CAMPO2, CAMPO3  FROM ..................;



Tabela2:

LOAD

     CAMPO1,

     CAMPO2,

     Week(CAMPO3) as SEMANA

RESIDENT Tabela;


DROP TABLE Tabela;

Not applicable
Author

Boa tarde,

Consegui fazer dessa forma, o problema era com relação a carregar no LOAD usando a tabela que havia criado através do SQL SELECT  e depois exclui-la.

Agora ele criou realmente um campo para a semana do mês, com relação a isso, obrigado.

Só que quando coloco a semana do mês como dimensão a tabela está ficando assim:  

FornecedorSemanas_MesPeso
11121,18001
Fornecedor11440,5000038
Fornecedor12222,0699997
Fornecedor13142,1200008
Fornecedor14197,9099979
Fornecedor15404,6399994
Fornecedor21230,5500021
Fornecedor22232,7100029
Fornecedor2393,52000046
Fornecedor24119,5900021
Fornecedor2515,71000004
Fornecedor311033,010006
Fornecedor32485,9199982
Fornecedor331058,229996
Fornecedor34420,7999954

Eu precisava que ficasse dessa forma, com cada semana em 1 coluna:

FornecedorSemana1Semana2Semana3Semana4Semana5
Fornecedor115TON18TON13TON24TON25TON
Fornecedor224TON12TON13TON......
Fornecedor321TON............
Fornecedor422TON............
afurtado
Partner Ambassador/MVP
Partner Ambassador/MVP

Thiago,

você pode fazer com um gráfico tabela dinâmica.

2016-12-07 22_32_40-QlikView x64 - [C__tmp_Semana.qvw].png

Segue exemplo

furtado@farolbi.com.br