Select sum

4 respostas
M

Boa noite amigos, estou com um problema que já tentei de varias maneiras corrigir mais até o momento sem sucesso, preciso somar a coluna valor da tabela vendas, e depois chamar o método calcular cartão, o problema é que se a coluna valor for nula ( 0 ) ele gera um erro e nem chama o método calcular cartão mais se a coluna valor for maior que 0 ai o sistema funciona como o esperado, segue o código, desde já agradeço a ajuda de todos.

public void calcularConta() throws FileNotFoundException, SQLException, DocumentException {
boolean resultado = false;

try {
        Conect.Conectar();
        rs = Conect.stm.executeQuery("SELECT SUM(valor) AS dinheiro  FROM Vendas WHERE tipo ='dinheiro'");

        while (rs.next()) {
            dinheiro = new String(rs.getString("dinheiro"));
            resultado = true;
        }
        if (resultado) {
            double Saldo = Double.parseDouble(dinheiro);
            NumberFormat formatter = new DecimalFormat("#0.00");
            String saldoformat = formatter.format(Saldo);
            dinheiroFormat = saldoformat;
        }
    } catch (SQLException ex) {
        JOptionPane.showMessageDialog(null, "Erro ao Buscar Fechamento do Caixa!", "Erro", 0, null);
    } finally {
        Conect.Desconectar();
        calcularCartao();
    }
}

4 Respostas

L

Cara, eu achei que era pelo finally e o catch juntos…mas foi uma viagem minha…

vc tem certeza que ele nao tá entrando no seu metodo? Pode ser que ele entra, mas dá um erro!

rmendes08

Eu gostaria de ajudar, mas antes você poderia usar as tags code para formatar o código, são regras básicas do fórum e é uma informação bem fácil de achar.

rmendes08

Faça assim sua consulta:

SELECT SUM(valor) AS dinheiro FROM Vendas WHERE tipo ='dinheiro' AND valor is not null

Provavelmente vai resolver metade do seu problema …

M

luciene.silva, sim tenho certeza a coluna valor sendo nulo ele não chama o método seguinte,
rmendes08, obrigado pela ajuda amigo vou testar depois posto aqui.

Criado 18 de janeiro de 2010
Ultima resposta 19 de jan. de 2010
Respostas 4
Participantes 3