Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Senhores, bom dia!
Estou com dificuldades em trazer tudo que tem em uma tabela FATO exceto a sua correspondência em uma tabela RESCISOES_COMPLEMENTARES.
Fiz como abaixo e não funcionou:
Left Join(Fato)
LOAD IDFuncResComp,
IDFuncResCompCont
Resident Rescisoes_comp Where not Exists(IDFuncResComp,IDFuncResComp);
Veja se esse exemplo te ajuda.
Como é o load anterior que possui a o campo IDFuncResComp?
LOAD IDFuncResComp,
'01/'&num_mes_refer_fp&'/'&num_ano_refer_fp as ID_TEMPO,
cdn_categ_sal,
cdn_empresa,
cdn_estab,
cdn_funcionario,
cod_rh_ccusto,
IDFuncionario,
IDSitFunc,
num_ano_refer_fp,
num_mes_refer_fp,
//month('01/'&num_mes_refer_fp&'/2013') as Mes,
evento,
qtd_evento,
val_evento,
cdn_tip_calc_rescis
FROM [..\Transformação\qvd\Fato.qvd](qvd);
Eu criaria um flag, ficaria mais ou menos assim:
Fato:
Load *, 'Manter' as [Flag]
From Qvd;
Join (Fato)
Load *, Excluir' as [Flag]
Resident REscisoes_comp;
Store Fato into diretorio\arquivo.qvd;
Drop table Fato;
Drop table Resident REscisoes_comp;
Fato:
Load *
Resident Fato
Where [Flag] = 'Manter';
Tentei, fazer com a Flag mas ele sempre considera a flag da tabela Fato...
Já tentou assim:
Left Join(Fato)
LOAD IDFuncResComp,
IDFuncResCompCont
Resident Rescisoes_comp Where not Exists(IDFuncResComp,IDFuncResCompCont);
Colocando o script completo dessa parte ajuda mais.
Abraços
Tonial.
Este comando carrega a fato, qual o comando que carregou RESCISOES_COMPLEMENTARES?
NoConcatenate Rescisoes_comp:
LOAD cdn_empresa,
cdn_estab,
cdn_event_fp,
cdn_funcionario,
cdn_empresa & '|' & cdn_estab & '|' & cdn_funcionario & '|' & num_ano_refer_fp & '|' & num_mes_refer_fp as IDFuncResComp,
cdn_empresa & '|' & cdn_estab & '|' & cdn_funcionario & '|' & num_ano_refer_fp & '|' & num_mes_refer_fp as IDFuncResCompCont,
cdn_tip_calc_rescis,
//num_ano_pagto_fp,
num_ano_refer_fp,
//num_mes_pagto_fp,
num_mes_refer_fp
FROM
D:\APP_QV\ASA_RH\Extração\qvd\Rescisoes_complementares.qvd
(qvd) Where cdn_tip_calc_rescis >= 1;
Acredito que apenas (sem o left join) ira carregar apenas na tabela fato os IDFuncResComp que não existiram
LOAD IDFuncResComp,
'01/'&num_mes_refer_fp&'/'&num_ano_refer_fp as ID_TEMPO,
cdn_categ_sal,
cdn_empresa,
cdn_estab,
cdn_funcionario,
cod_rh_ccusto,
IDFuncionario,
IDSitFunc,
num_ano_refer_fp,
num_mes_refer_fp,
//month('01/'&num_mes_refer_fp&'/2013') as Mes,
evento,
qtd_evento,
val_evento,
cdn_tip_calc_rescis
FROM [..\Transformação\qvd\Fato.qvd](qvd)
where not exists(IDFuncResComp);
Senhores, boa tarde!
Resolvi mudar a abordagem levando para dentro do fato a data de desligamento, mas isso me gerou outra dúvida que relatei no link http://community.qlik.com/thread/98304 se puderem me ajudar eu agradeço.