Relatorio Ireport Ajuda

0 respostas
G

Boa noite a todos preciso de uma ajuda, criei um simples relatorio com o ireport e estou tetanto implementar os metodos para chamar ele de dentro no sistema.
os metodos estam até executando, mas nao esta me gerando nenhum erro e nem o relatorio.
Desculpem se for banal a pergunta mas sou iniciante.
Grato desde ja

Classe DAOProduto

package dao;

import conexao.Conexao;
import dto.DTOProduto;
import java.sql.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import net.sf.jasperreports.engine.JasperManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.view.JasperViewer;

public class DAOProduto {

    private Connection con;
    private String valores[];
    private String dir = System.getProperty("user.dir") + "/web/Relatorios/";


    public DAOProduto() {
        con = Conexao.getInstancia().criarConexao();
    }

    public void inserir(DTOProduto produto) {
        String sql = "INSERT INTO produto(nome,descricao,laboratorio,quantidade,valor_venda) " +
                "VALUE (?, ?, ?, ?, ?);";

        try {
            PreparedStatement smtp = con.prepareStatement(sql);
            smtp.setString(1, produto.getNome());
            smtp.setString(2, produto.getDescricao());
            smtp.setString(3, produto.getLaboratorio());
            smtp.setInt(4, produto.getQuantidade());
            smtp.setFloat(5, produto.getValor_venda());
            smtp.executeUpdate();
            limpar_campos(produto);

        } catch (SQLException sqle) {
            sqle.printStackTrace();
        }

    }

    public List<DTOProduto> pesquisar(String nome) {
        List<DTOProduto> produtos = new ArrayList<DTOProduto>();
        String sql = " SELECT idProduto,nome,descricao,laboratorio,quantidade,valor_venda " +
                " FROM  produto where produto.nome LIKE '%" + nome + "%' ";
        try {
            PreparedStatement smtp = con.prepareStatement(sql);
            ResultSet rs = smtp.executeQuery();

            while (rs.next()) {
                DTOProduto p = new DTOProduto();
                p.setIdProduto(rs.getInt(1));
                p.setNome(rs.getString(2));
                p.setDescricao(rs.getString(3));
                p.setLaboratorio(rs.getString(4));
                p.setQuantidade(rs.getInt(5));
                p.setValor_venda(rs.getFloat(6));
                produtos.add(p);
            }

        } catch (SQLException sqle) {
            sqle.printStackTrace();
        }
        return produtos;
    }

    public void alterar(DTOProduto produto) {

        String sql = " UPDATE produto  SET nome = ?,descricao = ?,laboratorio = ?, " +
                " quantidade = ?,valor_venda = ? WHERE idProduto = ?; ";
        try {
            PreparedStatement smtp = con.prepareStatement(sql);

            smtp.setString(1, produto.getNome());
            smtp.setString(2, produto.getDescricao());
            smtp.setString(3, produto.getLaboratorio());
            smtp.setInt(4, produto.getQuantidade());
            smtp.setFloat(5, produto.getValor_venda());
            smtp.setInt(6, produto.getIdProduto());
            smtp.execute();
            limpar_campos(produto);

        } catch (SQLException sqle) {
            sqle.printStackTrace();

        }
    }

    public void excluir(DTOProduto p) {
        String sql = "DELETE FROM `produto`  WHERE `idProduto` = ?;";
        try {
            PreparedStatement smtp = con.prepareStatement(sql);
            smtp.setInt(1, p.getIdProduto());
            smtp.execute();

        } catch (SQLException sqle) {
            sqle.printStackTrace();
        }
    }

    public void limpar_campos(DTOProduto prod) {
        prod.setNome(null);
        prod.setDescricao(null);
        prod.setLaboratorio(null);
        prod.setQuantidade(null);
        prod.setValor_venda(0);

    }

    public void RelatorioProduto() {

        String sql = " SELECT * FROM  produto ";
        try {
            PreparedStatement smtp = con.prepareStatement(sql);
            ResultSet rs = smtp.executeQuery();
            HashMap prod = new HashMap();

            while(rs.next()) {
              //for até o numero de campos da tabela
                valores = new String[10];
               for (int i = 1; i < 10; i++) {
                  valores[i] = rs.getString(i);
               }
            }

        } catch (SQLException sqle) {
            sqle.printStackTrace();
        }

        /* Inicio do bloco que ira gerar nossos relatorios e 3ª parte */
        try {
            //String array[] = valores;
           JasperDesign design = JasperManager.loadXmlDesign(dir + "rptProdutos.jrxml");
           // JasperDesign design = JasperManager.loadXmlDesign("\web\Relatorios\rptProdutos.jrxml");
            JasperReport jr = JasperManager.compileReport(design);
            HashMap parameters = new HashMap();
            parameters.put("PAR_PEDID", 1);
            //parameters.put("PARAMETRO_2", array[2]);
            //parameters.put("PARAMETRO_3", array[5]);
            //parameters.put("PARAMETRO_4", array[4]);
            //parameters.put("PARAMETRO_5",array[9]);
            JasperPrint impressao = JasperManager.fillReport(jr, parameters, con);
            JasperViewer jrviewer = new JasperViewer(impressao, false);
            jrviewer.show();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }


}

ProdutoBean

package managedbeans;

import dao.DAOProduto;
import dto.DTOProduto;
import java.util.List;

public class ProdutoBean {

    private DTOProduto produto;
    private DAOProduto produtos;
    private boolean erro = false;
    private boolean edicao;
    private String nome;
    private List<DTOProduto> listaProdutos;

    public ProdutoBean() {
        produto = new DTOProduto();
        produtos = new DAOProduto();

    }

   //geteres e setrs omitidos

    private String prepararEdicao(boolean edicao) {
        setEdicao(edicao);
        return "edicaoProduto";
    }

    public String insercaoProduto() {
        produto = new DTOProduto();
        return prepararEdicao(false);
    }

    public String edicaoProduto() {
        return prepararEdicao(true);
    }

    public String pesquisarProduto() {
        listaProdutos = produtos.pesquisar(nome);
        return "pesquisaProduto";
    }

    public String pesquisarProdutos() {
        listaProdutos = produtos.pesquisar(nome);
        return "";
    }

    public String inserirProduto() {
        produtos.inserir(produto);
        edicao = false;
        return "";
    }

    public String editarProduto() {
        produtos.alterar(produto);
        for (int i = 0; i < listaProdutos.size(); i++) {
            DTOProduto p = listaProdutos.get(i);
            if (p.getIdProduto() == produto.getIdProduto()) {
                listaProdutos.set(i, produto);
                break;
            }
        }
        return "";
    }

    public String excluirProduto() {
        produtos.excluir(produto);

        for (int i = 0; i < listaProdutos.size(); i++) {
            DTOProduto p = listaProdutos.get(i);
            if (p.getIdProduto() == produto.getIdProduto()) {
                listaProdutos.remove(i);
                break;
            }
        }
        return "";
    }

    /**
     * @return the inicial
     */
    public String inicial() {
        return "inicial";
    }

   public String gerarRelProduto(){
       produtos.RelatorioProduto() ;
       return "";
   }
}

Pagina de Chamada do relatorio

<jsp:directive.page language="java" contentType="text/html; charset=ISO-8859-1"
                    pageEncoding="ISO-8859-1"/>
<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>

<f:view>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
            <title><h:outputText value="Sistema Farmatads"/></title>
        </head>
        <body>
            <jsp:include page="cabecalho.jsp" flush="true"/>


            <f:loadBundle basename="managedbeans.labels" var="label" />
            <h:outputLabel value="Olá, Sr(a). #{LoginBean.funcionario.nome}. Seja bem vindo!" />
            <div align="right">
            <h:panelGrid columns="1">
                 <h:outputLabel value="#{LoginBean.dataAtual}" />
            </h:panelGrid>
            </div>
            

            <h:form>
                <div align="center">
                    <h:panelGrid border="1" columns="2">


                        <h:outputText value="#{label.RelProdutos}" />
                        <h:commandButton action="#{ProdutoBean.gerarRelProduto}" />

                    </h:panelGrid>

                </h:form>
            </div>
            
        </body>
    </html>
</f:view>

Oque estou fazendo de errado ???
Obrigado…

Criado 1 de junho de 2010
Respostas 0
Participantes 1