private boolean addGroupsFrame(){
        boolean ret = false;
        try {
            // Создадим поле ввода
            JTextField num = new JTextField();
            // загрузим данные для комбобокса
            Faculty[] facultys = ua.edu.odeku.pet.database.data.GetDataTable.getFacultys();
            // создадим комбобокс
            JComboBox<Faculty> box = new JComboBox<Faculty>(facultys);
            // Создаем штуку для ввода времени
            JYearChooser year = new JYearChooser();
            Calendar calendar = Calendar.getInstance();
            // Получим текущий год
            int y = calendar.get(Calendar.YEAR);
            year.setStartYear(y - 10);
            year.setEndYear(y + 2);
            // Собираем компоненты
            JComponent[] component = new JComponent[]{
                new JLabel("Номер группы:"),
                num,
                new JLabel("Год поступления:"),
                year,
                new JLabel("Факультет:"),
                box
            };

            do {
                boolean flag = SMS.dialog(this, "Введите данные о группе:", component);
                if (!flag) {
                    break;
                }
                String number = num.getText();
                if (number.trim().length() <= 0) {
                    SMS.warning(this, "Введите номер группы!");
                    continue;
                }
                int numb;
                try {
                    numb = Integer.parseInt(number);
                } catch (NumberFormatException ex) {
                    SMS.message(this, "Номер группы должен быть числом\nили ввели слишком большое число!");
                    continue;
                }
                int inputYear = year.getYear();
                if (box.getSelectedItem() == null) {
                    SMS.message(this, "Укажите факультет!");
                    continue;
                }
                // Все проверки прошли
                // Собираем объект
                Groups groups = new Groups();
                groups.setNumGroup(numb);
                groups.setYearSupply(inputYear);
                groups.setFaculty((Faculty) box.getSelectedItem());

                int res = groups.insertInto();
                if (res == -1) {
                    if (SMS.query(this, "Такое значение уже есть,\nХотите другие данные ввести?")) {
                        continue;
                    } else {
                        break;
                    }
                } else if (res >= 0) {
                    ret = true;
                    break;
                }
            } while (true);
        } catch (SQLException ex) {
            SMS.error(this, ex.toString());
            Logger.getLogger(GroupsInternalFrame.class.getName()).log(Level.SEVERE, null, ex);
            this.dispose();
        } finally {
            return ret;
        }
    }