@Override public void actionPerformed(ActionEvent e) { try { if (!((String) tableNames.getSelectedItem()).equals("INCIDENT")) { JOptionPane.showMessageDialog( null, "Не выбрана необходимая таблица.", "Message", JOptionPane.INFORMATION_MESSAGE); return; } if (table.getSelectedRow() == -1) { JOptionPane.showMessageDialog( null, "Запись не выбрана.", "Message", JOptionPane.INFORMATION_MESSAGE); return; } int selectedRow = table.getSelectedRow(); int incidentNumber = Integer.parseInt(table.getValueAt(selectedRow, 0).toString()); // Selecte all having articles String query = "select articlenumber, articlename from alex.article"; PreparedStatement pStatment = connection.prepareStatement(query); ResultSet result = pStatment.executeQuery(); Map<String, Integer> articles = new HashMap<String, Integer>(); while (result.next()) { articles.put( result.getString("articlenumber") + ": " + result.getString("articlename"), Integer.valueOf(result.getInt("articlenumber"))); } // Getting nessesary information AddCriminalCaseDialog dialog = new AddCriminalCaseDialog(thisFrame, articles); dialog.setVisible(rootPaneCheckingEnabled); if (!dialog.getOk()) { return; } // Execute operation BaseUpdater updater = new BaseUpdater(); boolean resultBool = updater.addCriminalCase( connection, dialog.getCriminalDate(), dialog.getArticleKeys(), dialog.getCriminalNote(), incidentNumber); if (resultBool) { JOptionPane.showMessageDialog( null, "Уголовное дело было добавлено.", "Message", JOptionPane.INFORMATION_MESSAGE); tableNames.setSelectedItem("INCIDENT"); } else { JOptionPane.showMessageDialog( null, "Уголовное дело не было добавлено.", "Ошибка", JOptionPane.ERROR_MESSAGE); } } catch (ParseException ex) { JOptionPane.showMessageDialog( null, "Неверный формат даты.", "Ошибка", JOptionPane.ERROR_MESSAGE); } catch (SQLException ex) { JOptionPane.showMessageDialog( null, "Ошибка. Уголовное дело не было добавлено.", "Ошибка", JOptionPane.ERROR_MESSAGE); } }