Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
MarceloK
Creator
Creator

Problema com FILTRO no script

Amigos estou com um problema de filtro dentro do script, será que alguém pode me ajudar?

Tenho seguinte código:

 

historico_metricas_clientes_capex:
LOAD

nome_matriz,
org_city,

FIRSTSORTEDVALUE(DISTINCT Saude, -data_historico) as Historico_da_saude

FROM [lib://Compartilhado:OneDrive - marcelokniss/Qlik Sense/Clientes CAPEX/Histórico Saúde - CAPEX.xlsx]
(ooxml, embedded labels, table is [Clientes CAPEX])
Group By nome_matriz, org_city;


nota_clientes_capex:

LOAD
IF(Historico_da_saude < 0.59, 'Baixa',
IF(Historico_da_saude > 0.59 and Historico_da_saude <0.80,'Média',
IF(Historico_da_saude > 0.80, 'Alta'))) as NotaClientesCapex //esse filtro não funciona, sempre me trás todos os valores , independente da saude que eu escolha
RESIDENT historico_metricas_clientes_capex;

 

O problema é que meu filtro NotaClientesCapex não funciona. Quando eu clico no filtro para ele me trazer os clientes da determinada saúde, ele simplesmente me trás todos os resultados, independente do tipo de saude que eu escolha.

 

Essa parte aqui: FIRSTSORTEDVALUE(DISTINCT Saude, -data_historico) as Historico_da_saude está funcionando, está me trazendo o resultado mais atual... o problema está acontecendo quando eu tento criar esse filtro NotaClientesCapex

MarceloK_0-1624907573089.png

MarceloK_1-1624907686504.png

 

 

1 Solution

Accepted Solutions
RafaMartins
Creator II
Creator II

De Fato a tabela que criou usando o residente não possui nem uma ligação com as outras duas, uma forma facil de ver isso é pelo "Visualizador de modelo de dados".

Usando o script a baixo provavelmente vai resolver, ao invés  de fazer um load resident vamo fazer um precedente para utilizar o campo alterado na tabela e carrega-lo novamente.

 

historico_clientes_capex:
LOAD
Saude ,
nome_matriz,
org_city,
historico_crescimento_receita,
historico_cs_tickets ,
historico_csat_tickets ,
historico_nps ,
historico_solução_operando ,
historico_metricas_sucesso ,
data_historico
FROM [lib://Compartilhado:OneDrive - marcelo.kniss/Qlik Sense/Clientes CAPEX/Histórico Saúde - CAPEX.xlsx]
(ooxml, embedded labels, table is [Clientes CAPEX]);


historico_metricas_clientes_capex:

LOAD
IF(Historico_da_saude < 0.59, 'Baixa',
IF(Historico_da_saude > 0.59 and Historico_da_saude <0.80,'Média',
IF(Historico_da_saude > 0.80, 'Alta'))) as NotaCapex,

*;

 

LOAD

nome_matriz,
org_city,

FIRSTSORTEDVALUE(DISTINCT historico_nps, -data_historico) as Historico_nps,
FIRSTSORTEDVALUE(DISTINCT historico_solução_operando, -data_historico) as Historico_so,
FIRSTSORTEDVALUE(DISTINCT historico_metricas_sucesso, -data_historico) as Historico_met,
FIRSTSORTEDVALUE(DISTINCT historico_crescimento_receita, -data_historico) as Historico_rec,
FIRSTSORTEDVALUE(DISTINCT historico_cs_tickets, -data_historico) as Historico_cs_tickets,
FIRSTSORTEDVALUE(DISTINCT historico_csat_tickets, -data_historico) as Historico_csat_tickets,
FIRSTSORTEDVALUE(DISTINCT Saude, -data_historico) as Historico_da_saude

FROM [lib://Compartilhado:OneDrive - marcelo.kniss/Qlik Sense/Clientes CAPEX/Histórico Saúde - CAPEX.xlsx]
(ooxml, embedded labels, table is [Clientes CAPEX])
Group By nome_matriz, org_city;

 

View solution in original post

6 Replies
RafaMartins
Creator II
Creator II

Olá pela imagem me parece que as tabelas não tem ligação...., é isso mesmo ou tem algum campo ligando elas que não da para ver pela imagem?

MarceloK
Creator
Creator
Author

Oi amigo, 

 

Esse aqui é todo meu script:

 

historico_clientes_capex:
LOAD
Saude ,
nome_matriz,
org_city,
historico_crescimento_receita,
historico_cs_tickets ,
historico_csat_tickets ,
historico_nps ,
historico_solução_operando ,
historico_metricas_sucesso ,
data_historico
FROM [lib://Compartilhado:OneDrive - marcelo.kniss/Qlik Sense/Clientes CAPEX/Histórico Saúde - CAPEX.xlsx]
(ooxml, embedded labels, table is [Clientes CAPEX]);


historico_metricas_clientes_capex:
LOAD

nome_matriz,
org_city,

FIRSTSORTEDVALUE(DISTINCT historico_nps, -data_historico) as Historico_nps,
FIRSTSORTEDVALUE(DISTINCT historico_solução_operando, -data_historico) as Historico_so,
FIRSTSORTEDVALUE(DISTINCT historico_metricas_sucesso, -data_historico) as Historico_met,
FIRSTSORTEDVALUE(DISTINCT historico_crescimento_receita, -data_historico) as Historico_rec,
FIRSTSORTEDVALUE(DISTINCT historico_cs_tickets, -data_historico) as Historico_cs_tickets,
FIRSTSORTEDVALUE(DISTINCT historico_csat_tickets, -data_historico) as Historico_csat_tickets,
FIRSTSORTEDVALUE(DISTINCT Saude, -data_historico) as Historico_da_saude

FROM [lib://Compartilhado:OneDrive - marcelo.kniss/Qlik Sense/Clientes CAPEX/Histórico Saúde - CAPEX.xlsx]
(ooxml, embedded labels, table is [Clientes CAPEX])
Group By nome_matriz, org_city;


nota_clientes_capex:

LOAD
IF(Historico_da_saude < 0.59, 'Baixa',
IF(Historico_da_saude > 0.59 and Historico_da_saude <0.80,'Média',
IF(Historico_da_saude > 0.80, 'Alta'))) as NotaCapex

RESIDENT historico_metricas_clientes_capex;

 

Como eu faço para saber se tem algum campo ligando? Desculpe ainda estou iniciando

RafaMartins
Creator II
Creator II

De Fato a tabela que criou usando o residente não possui nem uma ligação com as outras duas, uma forma facil de ver isso é pelo "Visualizador de modelo de dados".

Usando o script a baixo provavelmente vai resolver, ao invés  de fazer um load resident vamo fazer um precedente para utilizar o campo alterado na tabela e carrega-lo novamente.

 

historico_clientes_capex:
LOAD
Saude ,
nome_matriz,
org_city,
historico_crescimento_receita,
historico_cs_tickets ,
historico_csat_tickets ,
historico_nps ,
historico_solução_operando ,
historico_metricas_sucesso ,
data_historico
FROM [lib://Compartilhado:OneDrive - marcelo.kniss/Qlik Sense/Clientes CAPEX/Histórico Saúde - CAPEX.xlsx]
(ooxml, embedded labels, table is [Clientes CAPEX]);


historico_metricas_clientes_capex:

LOAD
IF(Historico_da_saude < 0.59, 'Baixa',
IF(Historico_da_saude > 0.59 and Historico_da_saude <0.80,'Média',
IF(Historico_da_saude > 0.80, 'Alta'))) as NotaCapex,

*;

 

LOAD

nome_matriz,
org_city,

FIRSTSORTEDVALUE(DISTINCT historico_nps, -data_historico) as Historico_nps,
FIRSTSORTEDVALUE(DISTINCT historico_solução_operando, -data_historico) as Historico_so,
FIRSTSORTEDVALUE(DISTINCT historico_metricas_sucesso, -data_historico) as Historico_met,
FIRSTSORTEDVALUE(DISTINCT historico_crescimento_receita, -data_historico) as Historico_rec,
FIRSTSORTEDVALUE(DISTINCT historico_cs_tickets, -data_historico) as Historico_cs_tickets,
FIRSTSORTEDVALUE(DISTINCT historico_csat_tickets, -data_historico) as Historico_csat_tickets,
FIRSTSORTEDVALUE(DISTINCT Saude, -data_historico) as Historico_da_saude

FROM [lib://Compartilhado:OneDrive - marcelo.kniss/Qlik Sense/Clientes CAPEX/Histórico Saúde - CAPEX.xlsx]
(ooxml, embedded labels, table is [Clientes CAPEX])
Group By nome_matriz, org_city;

 

MarceloK
Creator
Creator
Author

Obrigado amigo, teu jeito deu certo!!!

Eu também tentei uma outra coisa, deixei meu codigo da forma que estava, e simplesmente adicionei o campo cliente e cidade na tabela do filtro e também deu certo:

 

MarceloK_0-1624985307112.png

 

 

isso que eu fiz seria uma ligação?

RafaMartins
Creator II
Creator II

Sim, más ai vc vai ter uma referencia circular pois a tabela está ligada por dois campos.

No Help, você tem toda a documentação sobre a ligação de dados

https://help.qlik.com/pt-BR/sense/May2021/Subsystems/Hub/Content/Sense_Hub/Scripting/associations-be...

MarceloK
Creator
Creator
Author

Obrigado pela ajuda amigo!