Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Senhores, eu tenho uma tabela fato onde contem o movimento da folha de pagamento, nesta tabela eu tenho o mês e ano da folha e a data de desligamento do funcionário, o problema é que quando tenho rescisões complementares os funcionarios que já estavam desligados aparecem novamente no Fato, o que eu quero é que não conte este funcionario quando a data de desligamento for < que o mês e ano da folha.
Ex.:
Mat Mes Ano Deslig
1 1 2013 01/05/213
1 2 2013 01/05/213
1 3 2013 01/05/213
1 4 2013 01/05/213
1 5 2013 01/05/213
1 6 2013 01/05/213 <== a partir daqui não deveria ser contado na expressão
1 7 2013 01/05/213
1 8 2013 01/05/213
Hugo, posta um QVD de exemplo para podermos te ajudar melhor
Hugo, você quer que não sejam carregados ou que não sejam contados em alguma tabela?
Pode ser um ou outro, pra mim não faria diferença.
Algo assim funcionaria
LOAD
Ano,
Mes,
Dia,
Matricula,
Demissao,
outros campos....
FROM seuqvd(qvd)
WHERE isnull(Demissao) or (Demissao > makedate(Ano,Mes,Dia))
Vou fazer o teste..
Clever fiz como abaixo e ainda não funciona ele só ta trazendo os valores '//'
LOAD IDFuncionario,
IDFuncResComp,
ID_TEMPO,
cdn_categ_sal,
cdn_empresa,
cdn_estab,
cdn_funcionario,
cod_rh_ccusto,
IDSitFunc,
num_ano_refer_fp,
num_mes_refer_fp,
evento,
qtd_evento,
val_evento,
cdn_tip_calc_rescis,
cdn_cargo_basic,
cdn_niv_cargo,
cdn_clas_func,
cdn_tip_contrat_func,
cdn_vinc_empregat,
Ccusto,
dat_admis_func,
desligamento,
dat_inic_valid,
dat_nascimento,
idi_tip_func,
nom_pessoa_fisic,
val_salario_atual,
des_cargo
FROM D:\APP_QV\ASA_RH\Carga\qvd\Fato.qvd (qvd) Where (desligamento = '//' or
(MakeDate(Year(desligamento),Month(desligamento),Day(desligamento)) <= makedate(num_ano_refer_fp,num_mes_refer_fp,MonthEnd(num_mes_refer_fp))));
Hugo, posta um QVD de exemplo para podermos te ajudar melhor
Pessoal, segue um qvd de exemplo do que eu tenho.
Pessoal usei o exemplo que o Yuri deu no post anterior e funcionou, obrigado a todos!