tenho este metodo abaixo q atualiza o estoque da minha aplicacao:
try {
Connection connection = new ConnectionFactory().getConnection();
String sql = "update produto, b_estoque set produto.estoque =(produto.estoque - b_estoque.quantidade), produto.total = (produto.total - b_estoque.total_saida) where produto.descricao = '"+desc_produto+"'"+"and b_estoque.codigo ='"+codigo+"'" ; //PASSAR ESTE CODIGO AQUI
PreparedStatement stmt = (PreparedStatement) connection.prepareStatement(sql);
stmt.execute();
stmt.close();
System.out.println("descricao é " + desc_produto);
} catch (Exception e) {
//out.println("Erro ao dar baixa no estoque" + e);
return; //para a execução do método
}
out.println( "baixa em estoque efetuada com sucesso ...!");
}
se eu tirar o "+"and b_estoque.codigo ='"+codigo+"'" ;
ele atualiza e faz as baixas porem esta pegando o primeiro item cadastrado na lista do banco, independente de qual seja.
executei a Query no mysql passando o codigo, ex … and b_estoque.codigo = 35. Faz a atualizacao de boa…
como passar esse codigo sendo que na minha servlet nao pega o codigo como request, pois é AUTOINCREMENT no banco.
// busca o writer
PrintWriter out = response.getWriter();
// buscando os parâmetros no request
String desc =null;
String desc_produto = request.getParameter("desc_produto" );
String quantidade = request.getParameter("quantidade");
String dataEmTexto = request.getParameter("data_baixa");
Calendar data_baixa = null;
try {
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(dataEmTexto);
data_baixa = Calendar.getInstance();
data_baixa.setTime(date);
} catch (ParseException e) {
out.println("Erro de conversão da data" + e);
return; //para a execução do método
}
String total_saida = request.getParameter("total_saida");
// monta um objeto unidade
BaixaEstoque baixaestoque = new BaixaEstoque();
baixaestoque.setDesc_produto(desc_produto);
baixaestoque.setQuantidade(quantidade);
baixaestoque.setData_baixa(data_baixa);
baixaestoque.setTotal_saida(total_saida);
// salva unidade
BaixaEstoqueDAO dao = new BaixaEstoqueDAO();
dao.verificaEstoque(desc = request.getParameter("desc_produto"));
dao.adiciona(baixaestoque);
a sequencia fica assim:
usuario entra com os dados da “baixa em estoque”;
um metodo meu vai la e faz a verficacao da qtde
se tudo OK, ele adiciona a baixa,
logo apos adicionar esta baixa ele tem q atualiza (vide metodo la em cima)
alguem ajuda?
