Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa tarde amigos.
Tenho duas tabelas, na Tabela A eu tenho uma parte de meus clientes (não todos), e na coluna B eu tenho os produtos que todos os clientes consumiram, mês a mês (não apenas os clientes da tabela A). Gostaria de fazer uma ligação entre estas tabelas, de forma que o Qlik mostre todo o grupo de clientes da tabela A, mesmo que nenhum item tenha sido comprado no período, e que só traga da Tabela B os produtos adquiridos por esta fatia de clientes (ou seja, que extraia somente um pedaço da tabela B).
Tentei unir por chave primária as tabelas, também tentei por Left Join, porém o Qlik mantém uma linha "null" ao final da tabela de clientes e valores adquiridos, onde ele soma todos os produtos de clientes que não encontrou relação.
Eu até consigo resolver isso via "Ocultar valor quando nulo", na dimensão do código do cliente (propriedades da tabela), porém receio que este caminho não seja o mais adequado pra resolver a questão. O ideal seria carregar no painel só os clientes e os produtos destes clientes, para não haver perdas de relacionamento e possíveis inconsistências de valor.
Alguém tem uma sugestão? Desde já agradeço.
Fabio.
Bom dia.
Você terá que calcular:
=if(IsNull(Sum(cliValor)), 0,Sum(cliValor))
Olá Fábio,
pode só postar o código que vc utilizou no desenvolvimento do Left Join?
Olá Marcelo,
Deixa eu fazer uma errata: o valor "null" só aparece quando eu ligo as duas tabelas por chave (conforme anexo); pelo Left Join ele corrige a tabela e só traz o valor que interessa. Mas ainda restou uma dúvida: os clientes sem produto vendido "somem" da tabela... tem como visualizar todos, mesmo aqueles que não tiveram produtos adquiridos?
Pra mim o Left Join funcionou...
A:
LOAD * Inline [
cliCod, cliNome
1, Joao
2, Jose
3, Maria
];
Left Join(A)
LOAD * Inline [
cliCod, cliProduto, cliValor
1, caneta, 10
1, lapis, 5
4, oculos, 100
];
Sim Marcelo, realmente o Left Join funcionou pra trazer só o produto adquirido pelo range de clientes.
A dúvida que restou foi: como fazer a tabela mostrar assim:
João = 15
José = 0
Maria = 0
É possível?
Bom dia.
Você terá que calcular:
=if(IsNull(Sum(cliValor)), 0,Sum(cliValor))
Luciano,
Funcionou, obrigado!
Abs