Olá pessoal!
Estou diante de uma situação que tem me tirado o sossego, e preciso da ajuda de vocês.
Em uma consulta que estou trabalhando com agrupamento, precisei criar um campo manual no filtro, para fazer uma busca usando like na clausula where.
Conforme nosso colega Haroldo tinha me indicado fazer, eu recebo o campo criado no onScriptInit da consulta e de acordo com o resultado eu crio uma nova where com a macro sc_select_where(add)
Tudo está configurado e perfeitinho até que eu utilizo um campo nativo do filtro, que faz a busca também entre duas datas.
O erro ocorre pois o campo nativo do filtro cria outro where na consulta então fica assim:
(...) nm_sel_esp where fin_competencia between '2012-09-01' and '2012-10-01' WHERE plc_id > 0 AND cec_id > 0 AND con_id <> 23 AND fin_excluido <> 1 (...)
Sendo que o primeiro where é criado pelo campo original do filtro e o segundo pelo campo manual do filtro.
Eu sei que eu poderia criar uma condicional para alterar o where criado pelo campo manual no onScriptInit mas o problema é que no onGroupByAll eu recupero a clausua where corrente com o {sc_where_current} para poder fazer uma outra query que realiza uns cálculos apresentados no final do agrupamento.
Aguem pode me ajudar?