Dúvida em popup + relatório

Bom dia galera do fórum :smiley:

Criei um relatório que abre em uma popup, gera o pdf, tudo bonitinho. Mas eu preciso emitir um alerta se a data pesquisada não existir.

O problema é que eu primeiro passo os dados para o popup novo e depois eu abro ele. Como que eu posso criar uma mensagem que não existe a data pesquisada e fechar este popup que eu abri? Fiquei pensando, mas não consegui chegar a lugar nenhum.

A chamada da popup é a seguinte:

<SCRIPT>
function abrir() {
window.open('faturamento.htm','popup','toolbar=yes,status=yes,scrollbars=yes,location=yes,menubar=yes,directories=yes,width=800,height=600');
}
</SCRIPT>

			<html:button disabled="true" property="inserir" value=" Gerar Faturamento " styleClass="bto1" onclick="abrir()" />

Este tela “faturamento.htm” faz o seguinte processamento:

<HTML>
<HEAD>
<TITLE>Faturamento de Projeto</TITLE>
<SCRIPT LANGUAGE="JavaScript">
function montarRelatorio() {
	window.document.frmRelatorio.dtEspecifica.value = opener.document.relatorioForm.dtEspecifica.value;
	window.document.frmRelatorio.dtInicial.value = opener.document.relatorioForm.dtInicial.value;
	window.document.frmRelatorio.dtFinal.value = opener.document.relatorioForm.dtFinal.value;	
	submitTo(frmRelatorio, 'relatorio.do', 'pesquisar', '')
}
</SCRIPT>

</HEAD>

<BODY>
<form name="frmRelatorio" action="">
	<input type="hidden" name="metodo"/>
	<input type="hidden" name="path"/>
	<input type="hidden" name="resetForm"/>
	<input type="hidden" name="dtEspecifica"/>
	<input type="hidden" name="dtInicial"/>
	<input type="hidden" name="dtFinal"/>
</form>
</BODY>
<SCRIPT>montarRelatorio()</SCRIPT>
</HTML>

E meu método “pesquisar”, está na minha Action e está codificado da seguinte maneira:

	public ActionForward pesquisar(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws WebActionException {
		List listBeansRelatorio = new ArrayList();
		BusinessDelegate bd = this.getBusinessDelegate();
		DynaActionFormBean parcelaForm = (DynaActionFormBean) form;
		String data = request.getParameter("dtEspecifica");
		if (data.equals("") || data.equals(null))  
		{
			pesquisaPorPeriodo(request, listBeansRelatorio, bd);
		} else {
			pesquisaPorData(listBeansRelatorio, bd, data);
			
		}

	private void pesquisaPorData(List listBeansRelatorio, BusinessDelegate bd, String data) {
		try {
			Collection listParcela = ((RelatorioBusinessDelegate) bd).buscarParcelaByData(DateUtils.convertToDate(data));
			Iterator i = listParcela.iterator();
			while(i.hasNext()) {
				ParcelaVO parcelaVO = (ParcelaVO) i.next();
				
				ProjetoVO projetoVO = new ProjetoVO();
				projetoVO.setId(parcelaVO.getProjeto_id());
				projetoVO = (ProjetoVO) ((RelatorioBusinessDelegate) bd).findById(projetoVO);
				
				Integer qtdeParcelas = projetoVO.getQtdeParcelas();
				Integer numParcela = parcelaVO.getNuParcela();
				numParcela.intValue();
				qtdeParcelas.intValue();

				

				String quantidadeDias = projetoVO.getQtdeDias();
				int qtdeDias = Integer.parseInt(quantidadeDias);
				
				condicoesPagamento(parcelaVO, projetoVO, qtdeParcelas, numParcela, qtdeDias);
				
				listBeansRelatorio.add(new RelatorioBean(parcelaVO, projetoVO));

			}	
} catch (GpbrException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
}
	}

E a chamada BuscarParcelaByData, está no HibernateProxy assim:

	public Collection buscarParcelaByData(Date dtFaturamento) throws GpbrPersistException {
		Session session = SpringBeanFactoryComponent.getInstance().getSessionFactory().openSession();
		Criteria criteria = session.createCriteria(ParcelaVO.class);
		List results = criteria.add(Restrictions.between("dtFaturamento", DateUtils.getMinHourInDay(dtFaturamento), DateUtils.getMaxHourInDay(dtFaturamento))).list();
		session.flush();
		session.close();
		return results;

	}

Alguém pode me ajudar? :smiley:

[]'s