Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa tarde, faz alguns dias que não consigo chegar a uma solução.
Tenho 4 tabelas que são vinculadas por id_unidade e id_tempo, preciso unir elas, porém tentei com todos os tipos de join e as linhas ficam duplicadas.
O Cógido é o seguinte:
Venda:
load
ApplyMap ('Depara', id_unidade) as id_unidade,
id_tempo,
sum(mprd_valor) as mprd_valor_vvd
From
$(vCaminho)\Vendadetalhe_*.qvd(qvd)
group by id_unidade, id_tempo ;
left join
load
ApplyMap ('Depara', id_unidade) as id_unidade,
id_tempo,
sum(mprd_valor) as mprd_valor_vdvd
From
$(vCaminho)\DevVendaDetalhe_*.qvd(qvd)
group by id_unidade, id_tempo ;
Left Join
LOAD
Unidade as id_unidade,
Mês as id_tempo,
Auditoria as auditoria
FROM
$(vCaminho)\calendarioauditoria.xlsx
(ooxml, embedded labels, table is Plan1);
Evite usar JOIN´s quando estiver carregando vários QVD´s com $(vCaminho)\Vendadetalhe_*.qvd(qvd)
Carregue tudo para tabelas temporárias, depois faça os join
Hamilton, isso pode estar ocorrendo devido ao relacionamento entre elas ser 1 para N... bom, mas ainda estamos sem muitas informações da sua situação.
Poderia, por favor, nos passar um exemplo de seus dados e nos dizer qual o resultado esperado?
Yuri, é a continuação de um código que você mesmo me ajudou em um outro questionamento,
eu ja carrego essas 3 tabelas anteriormente e consegui resolver esse Join fazendo o seguinte:
QUALIFY *;
Venda_Logica:
LOAD
id_unidade,
id_tempo,
mprd_valor_vd,
mprd_valor_dvd
Resident FatoDetalhe;
UNQUALIFY *;
Venda_Liquida:
load
Venda_Logica.id_unidade as id_unidade,
Venda_Logica.id_tempo as id_tempo,
sum(Venda_Logica.mprd_valor_vd)-sum(Venda_Logica.mprd_valor_dvd) as venda_liquida
Resident Venda_Logica
Group by Venda_Logica.id_unidade, Venda_Logica.id_tempo;
Left Join (Venda_Liquida)
LOAD
Unidade as id_unidade,
MêA as id_tempo,
Auditoria as auditoria
FROM
D:\1-QLIKVIEW_DESENVOLVIMENTO\Dados_Armazenados\Dados_Apoio\calendarioauditoria.xlsx
(ooxml, embedded labels, table is Plan1);
Em todo caso, obrigado pelo seu interesse.
Acredito que eu possa excluir este tópico.
Evite usar JOIN´s quando estiver carregando vários QVD´s com $(vCaminho)\Vendadetalhe_*.qvd(qvd)
Carregue tudo para tabelas temporárias, depois faça os join
Exatamente, nessas situações o QlikView faz JOIN somente para a primeira tabela carregada
Olá Hamilton,
Pode marcar tua resposta como correta para fechar o post, isso ajudará outras pessoa com dúvidas.
Não precisa excluir.
Abraço.
Apenas confirmando, a forma que eu fiz acima esta correta?
Carreguei duas tabelas virtuais antes de fazer o Join, é isto mesmo,?
Estou carregando duas tabelas como Venda_Logica e faço o join na Venda_Liquida, depois eu dou um Drop da Venda_Logica.
Como falei, é continuação de uma ajuda que o Yuri Nicolett, agora consegui entender a logica e alterar o código conforme minha necessidade. Desta forma funcionou.
Esta sim
Se o Yuri Nicolett falou que está certo, está certo
haha isso eu ja aprendi (Y)