ola bom dia , estou tentando fazer um pesquisar pelo código , a função seria eu digitaria o código em uma caixa e na outra ia aparecer o nome do produto já fiz o código mas esta dando erro poderiam me ajudar ?se eu digitar um código que não tem aparece o não encontrado agora se eu digitar um código que tem ai ele da esse erro. e não passa o nome do produto para outra caixa daquele código.
botao6.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){ProdutoobjetoProduto=newProduto();if(caixa5.getText().equals("")){JOptionPane.showMessageDialog(null,"Informe um código para busca");}else{objetoProduto=gerenciador.find(Produto.class,Integer.parseInt(caixa5.getText()));if(objetoProduto!=null){ResultDescricao.setVisible(true);ResultDescricao.setEnabled(false);ResultDescricao.setText(String.valueOf(objetoProduto.getDescricao()));Codigo=objetoProduto.getCodproduto();}else{JOptionPane.showMessageDialog(null,"Nao encontrado");}}}});
Estou tentando assim porém não sei se seria viável ou seria melhor um jcombobox que a pessoa pesquisaria o nome do produto direto nele? só que a maioria dos programas eu acho que o código de barras vai no textfield e ai o produto aparece qual seria a melhor opção?acho que depois eu ia ter problema no gravar a venda mas isso ia ter que me preocupar depois rsrsdrs
sera que tenho que relacionar a tabela produto com a tabela vendas nesse caso ou posso fazer direto igual ai?
javaflex
Se debugar vai ver que nessa linha tem algo retornando null. A partir daí debugue passos anteriores pra identificar a origem do null.
Segue o processo da empresa. Se a rotina for captura de código de barras, implemente assim como default, deixando o campo aberto caso falhe a leitura.
Dfodani
ele esta selecionando o código produto e não esta passando valor nulo na query
o resultado é esse
Hibernate: select produto0_.codproduto as codprodu1_13_0_, produto0_.categoria as categori2_13_0_, produto0_.data as data3_13_0_, produto0_.descricao as descrica4_13_0_, produto0_.estoque as estoque5_13_0_, produto0_.fornecedor as forneced6_13_0_, produto0_.marca as marca7_13_0_, produto0_.quantidade as quantida8_13_0_, produto0_.referencia as referenc9_13_0_, produto0_.valor as valor10_13_0_ from Produto produto0_ where produto0_.codproduto=?
Modelo.Produto@4044c14e
então o que sera que pode estar dando errado? sera que é por que esta selecionando todos os campos da tabela nao só o codproduto?
javaflex
Sobre o nulo é o que já ta falando na msg. Só debugar pra descobrir, nao tem mistério.
Dfodani
a query esta retornando o codproduto 4 que é o que tem no banco esta dando erro nesta linha aqui
vou debugar mas até antes do if ele esta normal retornando o valor 4 que é o unico produto cadastrado no banco
Dfodani
Hibernate: select produto0_.codproduto as codprodu1_13_0_, produto0_.categoria as categori2_13_0_, produto0_.data as data3_13_0_, produto0_.descricao as descrica4_13_0_, produto0_.estoque as estoque5_13_0_, produto0_.fornecedor as forneced6_13_0_, produto0_.marca as marca7_13_0_, produto0_.quantidade as quantida8_13_0_, produto0_.referencia as referenc9_13_0_, produto0_.valor as valor10_13_0_ from Produto produto0_ where produto0_.codproduto=?
4
e o botão ele é resumido apenas nisso aqui
botao6.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){ProdutoobjetoProduto=newProduto();if(caixa5.getText().equals("")){JOptionPane.showMessageDialog(null,"Informe um código para busca");}else{objetoProduto=gerenciador.find(Produto.class,Integer.parseInt(caixa5.getText()));System.out.println(objetoProduto.getCodproduto());if(objetoProduto!=null){ResultDescricao.setVisible(true);ResultDescricao.setEnabled(false);ResultDescricao.setText(String.valueOf(objetoProduto.getDescricao()));Codigo=objetoProduto.getCodproduto();}else{JOptionPane.showMessageDialog(null,"Nao encontrado");}}}});
fiz o codigo nas outras consultas exatamente assim o produto é que nesse nao deu certo
Dfodani
desfarce eu estava fazendo cagada mesmo nao era o resultdescricao mas a caixa6 foi erro meu mesmo kkkk obrigada alterei aqui rs