Jonathan_Medeiros 28 de dez. de 2017
Acredito que você não está passando os valores para o seu prepareStatement antes de executar a Query de insert!
Exemplo:
pst . setInt ( 1 , itens . getId_pedido ());
pst . setInt ( 2 , itens . getProduto ());
...
aeciocleysson 28 de dez. de 2017
coloque o valore do prepareStatement mas continua dando o mesmo erro.
public void ItensPedido ( ItensPedidoModel itens ) {
StringBuilder sql = new StringBuilder ();
Connection conexao ;
PreparedStatement pst ;
int coluna = tbl_venda . getSelectedRow ();
try {
sql . append ( "INSERT INTO itens_pedido (id, id_pedido, produto, quantidade, valor_unitario, valor_total) " );
sql . append ( "VALUES (?, ?, ?, ?, ?, ?) " );
conexao = ModuloConexao . conector ();
pst = conexao . prepareStatement ( sql . toString ());
for ( int i = 0 ; i < tbl_venda . getRowCount (); i ++ ) {
itens . setId_pedido ( Integer . parseInt ( txt_id_venda . getText ()));
itens . setProduto ( Integer . parseInt ( tbl_venda . getValueAt ( i , 0 ). toString ()));
itens . setQuantidade ( Integer . parseInt ( tbl_venda . getValueAt ( i , 1 ). toString ()));
itens . setValor_unitario ( Double . parseDouble ( tbl_venda . getValueAt ( i , 2 ). toString ()));
itens . setValor_total ( Double . parseDouble ( tbl_venda . getValueAt ( i , 3 ). toString ()));
pst . setInt ( 1 , itens . getId ());
pst . setInt ( 2 , itens . getId_pedido ());
pst . setInt ( 3 , itens . getProduto ());
pst . setInt ( 4 , itens . getQuantidade ());
pst . setDouble ( 5 , itens . getValor_unitario ());
pst . setDouble ( 6 , itens . getValor_total ());
pst . executeUpdate ();
}
JOptionPane . showMessageDialog ( null , "Venda efetuada com sucesso" );
} catch ( Exception erro ) {
JOptionPane . showMessageDialog ( null , "Erro ao realizar a venda. " + "\n" + erro );
}
Jonathan_Medeiros 28 de dez. de 2017
Tranquilo, posta o stackTrace de log do erro pra ficar mais fácil de entender em que momento o erro está ocorrendo!
aeciocleysson 28 de dez. de 2017
java . lang . NumberFormatException : For input string : "TOUCH IPHONE 5G"
at sun . misc . FloatingDecimal . readJavaFormatString ( FloatingDecimal . java : 2043 )
at sun . misc . FloatingDecimal . parseDouble ( FloatingDecimal . java : 110 )
at java . lang . Double . parseDouble ( Double . java : 538 )
at br . com . mega . view . PDV . ItensPedido ( PDV . java : 103 )
at br . com . mega . view . PDV . btn_finalizarActionPerformed ( PDV . java : 471 )
at br . com . mega . view . PDV . access$300 ( PDV . java : 14 )
at br . com . mega . view . PDV$4 . actionPerformed ( PDV . java : 197 )
at javax . swing . AbstractButton . fireActionPerformed ( AbstractButton . java : 2022 )
at javax . swing . AbstractButton$Handler . actionPerformed ( AbstractButton . java : 2348 )
at javax . swing . DefaultButtonModel . fireActionPerformed ( DefaultButtonModel . java : 402 )
at javax . swing . DefaultButtonModel . setPressed ( DefaultButtonModel . java : 259 )
at javax . swing . plaf . basic . BasicButtonListener . mouseReleased ( BasicButtonListener . java : 252 )
at java . awt . Component . processMouseEvent ( Component . java : 6533 )
at javax . swing . JComponent . processMouseEvent ( JComponent . java : 3324 )
at java . awt . Component . processEvent ( Component . java : 6298 )
at java . awt . Container . processEvent ( Container . java : 2236 )
at java . awt . Component . dispatchEventImpl ( Component . java : 4889 )
at java . awt . Container . dispatchEventImpl ( Container . java : 2294 )
at java . awt . Component . dispatchEvent ( Component . java : 4711 )
at java . awt . LightweightDispatcher . retargetMouseEvent ( Container . java : 4888 )
at java . awt . LightweightDispatcher . processMouseEvent ( Container . java : 4525 )
at java . awt . LightweightDispatcher . dispatchEvent ( Container . java : 4466 )
at java . awt . Container . dispatchEventImpl ( Container . java : 2280 )
at java . awt . Window . dispatchEventImpl ( Window . java : 2746 )
at java . awt . Component . dispatchEvent ( Component . java : 4711 )
at java . awt . EventQueue . dispatchEventImpl ( EventQueue . java : 758 )
at java . awt . EventQueue . access$500 ( EventQueue . java : 97 )
at java . awt . EventQueue$3 . run ( EventQueue . java : 709 )
at java . awt . EventQueue$3 . run ( EventQueue . java : 703 )
at java . security . AccessController . doPrivileged ( Native Method )
at java . security . ProtectionDomain$JavaSecurityAccessImpl . doIntersectionPrivilege ( ProtectionDomain . java : 76 )
at java . security . ProtectionDomain$JavaSecurityAccessImpl . doIntersectionPrivilege ( ProtectionDomain . java : 86 )
at java . awt . EventQueue$4 . run ( EventQueue . java : 731 )
at java . awt . EventQueue$4 . run ( EventQueue . java : 729 )
at java . security . AccessController . doPrivileged ( Native Method )
at java . security . ProtectionDomain$JavaSecurityAccessImpl . doIntersectionPrivilege ( ProtectionDomain . java : 76 )
at java . awt . EventQueue . dispatchEvent ( EventQueue . java : 728 )
at java . awt . EventDispatchThread . pumpOneEventForFilters ( EventDispatchThread . java : 201 )
at java . awt . EventDispatchThread . pumpEventsForFilter ( EventDispatchThread . java : 116 )
at java . awt . EventDispatchThread . pumpEventsForHierarchy ( EventDispatchThread . java : 105 )
at java . awt . EventDispatchThread . pumpEvents ( EventDispatchThread . java : 101 )
at java . awt . EventDispatchThread . pumpEvents ( EventDispatchThread . java : 93 )
at java . awt . EventDispatchThread . run ( EventDispatchThread . java : 82 )
Jonathan_Medeiros 28 de dez. de 2017
O seu produto do insert é a descrição ou código do mesmo ?
aeciocleysson 29 de dez. de 2017
é o código
isso que eu não entendi o motivo do erro, porque o INSERT grava o codigo no banco. a descrição so aparece na tela para o usuario sabe qual é o produto.
Jonathan_Medeiros 29 de dez. de 2017
De acordo com o log do erro você parece estar pegando a string de descrição do produto de dentro da jTable e tentando converter em um inteiro.
Verifique o número da coluna que está resgatando!