11242 - Cubo com filtro de data na pré-seleção
Problema: Descrição do Problema: Precisamos incluir um filtro de datas na pré seleção do cubo e não está funcionando.
Como fazer para filtrar campos data da tela de entrada no cubo?
Quando ocorre / onde se aplica: Cubos
Solução: Solução: É necessário declarar os campos da tela de entrada como tipo Data e utilizar a função ConverteDataSqlSenior2 conforme exemplo abaixo:
definir alfa vdatini;
definir alfa vdatfim;
ConverteDataSqlSenior2(EDatIni,vdatini);
ConverteDataSqlSenior2(EDatFim,vdatfim);
vcond=((e440nfc.codemp=e440ipc.codemp and e440nfc.codfil=e440ipc.codfil and +
e440nfc.codfor=e440ipc.codfor and e440nfc.numnfc=e440ipc.numnfc and +
e440nfc.codsnf=e440ipc.codsnf) or +
(e440nfc.codemp=e440isc.codemp and e440nfc.codfil=e440isc.codfil and +
e440nfc.codfor=e440isc.codfor and e440nfc.numnfc=e440isc.numnfc and +
e440nfc.codsnf=e440isc.codsnf)) and e440nfc.datent>= + vDatIni + and e440nfc.datent<= + vDatFim;
insclausqlwhere(vcond);
Como fazer para filtrar campos data da tela de entrada no cubo?
Quando ocorre / onde se aplica: Cubos
Solução: Solução: É necessário declarar os campos da tela de entrada como tipo Data e utilizar a função ConverteDataSqlSenior2 conforme exemplo abaixo:
definir alfa vdatini;
definir alfa vdatfim;
ConverteDataSqlSenior2(EDatIni,vdatini);
ConverteDataSqlSenior2(EDatFim,vdatfim);
vcond=((e440nfc.codemp=e440ipc.codemp and e440nfc.codfil=e440ipc.codfil and +
e440nfc.codfor=e440ipc.codfor and e440nfc.numnfc=e440ipc.numnfc and +
e440nfc.codsnf=e440ipc.codsnf) or +
(e440nfc.codemp=e440isc.codemp and e440nfc.codfil=e440isc.codfil and +
e440nfc.codfor=e440isc.codfor and e440nfc.numnfc=e440isc.numnfc and +
e440nfc.codsnf=e440isc.codsnf)) and e440nfc.datent>= + vDatIni + and e440nfc.datent<= + vDatFim;
insclausqlwhere(vcond);