Filtro por eventos não funciona (bug?)

Boa Tarde Srs.
Tenho uma tabela de consulta na qual fiz um filtro por eventos para o campo data, já utilizei o mesmo método aplicado nesta tabela para fazer o filtro em outras tabelas e funcionou, porém, nesta tabela ocorreu o seguinte erro:

Erro ao acessar o banco de dados Incorrect syntax near the keyword 'and'. select count(*) from (Select BatR.DataInicioBatelada, BatR.NumeroBatelada, (convert(varchar(5), BatR.NumeroBatelada)+ '/'+ convert(varchar(5), OPR.QuantBatPV)) as Batelada, CF.Descricao as Desc_Formula, CP.Descricao as Desc_ProdutoFormula, OPR.NumeroLotePA, (convert(varchar(5), BatR.TempoMistSeco)+' s') as TempoMistSeco, (convert(varchar(5), BatR.TempoMistUmido)+' s') as TempoMistUmido, (convert(varchar(5), BatR.TempoMistTotal)+' s') as TempoMistTotal, (Select sum(PesoDosado) from OPR_Producao_Reg_Bat_Item BatRI2 where BatRI2.NumeroProducao = OPR.NumeroProducao and BatRI2.NumeroBatelada = BatR.NumeroBatelada) as PesoDosado, OPR.Comentario, OPR.NumeroProducao, CL.Descricao as Desc_Linha, CPG.Descricao as Desc_ProdutoGrupo, OPR.Controle, CSE.Abreviatura as Desc_SiloExp, BatR.NumeroProducao as BatR_NumeroProducao From Opr_Producao_Reg OPR Inner Join Opr_Producao_Reg_Bat BatR on (OPR.NumeroProducao=BatR.NumeroProducao) Inner Join Opr_Producao_Reg_Bat_Item BatRI on (BatR.NumeroProducao=BatRI.NumeroProducao and BatR.NumeroBatelada=BatRI.NumeroBatelada) Left Join Cad_Formula CF on (OPR.CodFormula=CF.CodFormula) Left Join Cad_Linha CL on (OPR.CodLinha=CL.CodLinha) Left Join Cad_Produto CP on (CF.CodProd=CP.CodProd) Left Join Cad_Produto CPI on (BatRI.CodProd=CPI.CodProd) Left Join Cad_Produto_Grupo CPG on (CP.CodGrupoProd=CPG.CodGrupoProd) Left Join Cad_Balanca CB on (BatRI.CodBalanca=CB.CodBalanca) Left Join Cad_Silo CSE on (BatR.CodSiloDestino=CSE.CodSilo) Left Join Cad_Silo CS on (BatRI.CodSilo=CS.CodSilo) Left Join Sys_UCTabUsers on (Sys_UCTabUsers.UCIdUser=BatR.Usuario) Where 1=1 and BatRI.PesoSolicitado>0 Group By BatR.DataInicioBatelada, BatR.NumeroBatelada, (convert(varchar(5), BatR.NumeroBatelada)+ '/'+ convert(varchar(5), OPR.QuantBatPV)), CF.Descricao, CP.Descricao, OPR.NumeroLotePA, (convert(varchar(5), BatR.TempoMistSeco)+' s'), (convert(varchar(5), BatR.TempoMistUmido)+' s'), (convert(varchar(5), BatR.TempoMistTotal)+' s'), OPR.Comentario, OPR.NumeroProducao, CL.Descricao, CPG.Descricao, OPR.Controle, CSE.Abreviatura, BatR.NumeroProducao ) nm_sel_esp and convert(varchar(19), BatRI.DataInicioDosagem, 121) between convert(varchar(19), '2015-06-12 00:00:00', 121) and convert(varchar(19), '2015-06-12 23:59:59', 121)

Select da consulta:

Select BatR.DataInicioBatelada, BatR.NumeroBatelada, (convert(varchar(5), BatR.NumeroBatelada)+ '/'+ convert(varchar(5), OPR.QuantBatPV)) as Batelada,
CF.Descricao as Desc_Formula, CP.Descricao as Desc_ProdutoFormula, OPR.NumeroLotePA, (convert(varchar(5), BatR.TempoMistSeco)+' s') as  TempoMistSeco, 
(convert(varchar(5), BatR.TempoMistUmido)+' s') as TempoMistUmido, (convert(varchar(5), BatR.TempoMistTotal)+' s') as TempoMistTotal,
(Select sum(PesoDosado) from OPR_Producao_Reg_Bat_Item BatRI2 where BatRI2.NumeroProducao = OPR.NumeroProducao and BatRI2.NumeroBatelada = BatR.NumeroBatelada) as PesoDosado,
OPR.Comentario, OPR.NumeroProducao, CL.Descricao as Desc_Linha, CPG.Descricao as Desc_ProdutoGrupo, OPR.Controle, CSE.Abreviatura as Desc_SiloExp, 
BatR.NumeroProducao as BatR_NumeroProducao
From Opr_Producao_Reg OPR
Inner Join Opr_Producao_Reg_Bat BatR on (OPR.NumeroProducao=BatR.NumeroProducao)
Inner Join Opr_Producao_Reg_Bat_Item BatRI on (BatR.NumeroProducao=BatRI.NumeroProducao and BatR.NumeroBatelada=BatRI.NumeroBatelada)
Left Join Cad_Formula CF on (OPR.CodFormula=CF.CodFormula)
Left Join Cad_Linha CL on (OPR.CodLinha=CL.CodLinha)
Left Join Cad_Produto CP on (CF.CodProd=CP.CodProd)
Left Join Cad_Produto CPI on (BatRI.CodProd=CPI.CodProd)
Left Join Cad_Produto_Grupo CPG on (CP.CodGrupoProd=CPG.CodGrupoProd)
Left Join Cad_Balanca CB on (BatRI.CodBalanca=CB.CodBalanca)
Left Join Cad_Silo CSE on (BatR.CodSiloDestino=CSE.CodSilo)
Left Join Cad_Silo CS on (BatRI.CodSilo=CS.CodSilo)
Left Join Sys_UCTabUsers on (Sys_UCTabUsers.UCIdUser=BatR.Usuario)
Where 1=1 and BatRI.PesoSolicitado>0
Group By BatR.DataInicioBatelada, BatR.NumeroBatelada, (convert(varchar(5), BatR.NumeroBatelada)+ '/'+ convert(varchar(5), OPR.QuantBatPV)),
CF.Descricao, CP.Descricao, OPR.NumeroLotePA, (convert(varchar(5), BatR.TempoMistSeco)+' s'), 
(convert(varchar(5), BatR.TempoMistUmido)+' s'), (convert(varchar(5), BatR.TempoMistTotal)+' s'),
OPR.Comentario, OPR.NumeroProducao, CL.Descricao, CPG.Descricao, OPR.Controle, CSE.Abreviatura, BatR.NumeroProducao
Order By BatR.DataInicioBatelada

Código utilizado no evento onScriptIni do menu da consulta:

if (!empty([cond_datainicial])){
	sc_select_where(add) = " and [cond_datainicial]";
}

Código utilizado no evento onValidate do filtro avançado:

sc_reset_global ([cond_datainicial]);

if (!empty({datainicial}) and ({datainicial} != "0000-00-00 00:00:00")){
	if (empty({datainicial_hor}) and empty({datainicial_min}) and empty({datainicial_seg})){
		switch ({datainicial_cond}){
			case "bw":{
				if (empty({datainicial_input_2_hor}) and empty({datainicial_input_2_min}) and empty({datainicial_input_2_seg})){
					[cond_datainicial] = " convert(varchar(10), BatRI.DataInicioDosagem, 121) between convert(varchar(10), '{datainicial}', 121) and convert(varchar(10), '{datainicial_2}', 121)";
				} else{
					[cond_datainicial] = " convert(varchar(10), BatRI.DataInicioDosagem, 121) between convert(varchar(10), '{datainicial}', 121) and convert(varchar(19), '{datainicial_2}', 121)";
				}
				break;
			}
		}
	}
	else {
		switch ({datainicial_cond}){
			case "bw":{
				if (empty({datainicial_input_2_hor}) and empty({datainicial_input_2_min}) and empty({datainicial_input_2_seg})){
					[cond_datainicial] = " convert(varchar(19), BatRI.DataInicioDosagem, 121) between convert(varchar(19), '{datainicial}', 121) and convert(varchar(10), '{datainicial_2}', 121)";
				} else {
					[cond_datainicial] = " convert(varchar(19), BatRI.DataInicioDosagem, 121) between convert(varchar(19), '{datainicial}', 121) and convert(varchar(19), '{datainicial_2}', 121)";
				}
				break;
			}
		}
	}
}

Acredito que os códigos estão corretos, em tópicos mais antigos aqui do fórum vi que pode se tratar de um bug. Porém, não vi tópicos sobre este erro na versão 8 do scriptcase.
Como posso contornar esta situação?
Agradeço desde já,

Davi

Boa tarde Davi, tenta contornar criando uma view com a sql que vc usou na consulta e na consulta vc chama essa view.

Tentei, retornou o seguinte erro:

Erro ao acessar o banco de dados Invalid column name 'DataInicioDosagem'. select count(*) from VW_Bateladas_Expandido where 1=1 and PesoSolicitado>0 and convert(varchar(19), DataInicioDosagem, 121) between convert(varchar(19), '2015-06-12 00:00:00', 121) and convert(varchar(19), '2015-06-12 23:59:59', 121)

O filtro por eventos foi feito justamente para não precisar listar o campo ‘BatRI.DataInicioDosagem’ no select, para que o agrupamento funcionasse corretamente. No caso de usar view haveria a necessidade de listar este campo para poder chamá-lo no select da consulta do scriptcase.
Alguma outra sugestão Thyago?