Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

String fio_sotrud, dolgn_sotrud, vozrast_sotrud, nauch_zvanie_sotrud,




stagem_sotrud, stavka_sotrud;

int l1, l2, m1, m2, k1, k2;

 

6. Согласно нашим исходным данным пользователь будет вводить ФИО в текстовое поле, а вот все остальные критерии организуем в виде выбора из раскрывающихся списков. Для этого необходимо наполнить эти списки.

Первый раскрывающийся список – Место работы. Здесь необходимо отобразить все кафедры, которые имеются в нашем университете. Вписывать кафедры вручную мы не будем, так как в нашей базе данных University уже имеется таблица KAFEDRA. Поэтому лучше воспользоваться созданием нового набора данных и вывести его в элементе Combobox1.

Поэтому после инициализации элементов формы:

 

public Form2()

{

InitializeComponent();

// ниже после объявления dataAdapter1 объявляем dataAdapter2

 

dataAdapter2.SelectCommand = new SqlCommand("Select * from Kafedra", DBConnection.Instance().Connection);

dataAdapter2.Fill(ds1, "Kafedra");

 

// Далее перемещаем данные таблицы Кафедры в раскрывающийся список

 

comboBox1.DataSource = ds1.Tables["Kafedra"];

comboBox1.DisplayMember = "name_kafedru";// столбец для отображения

comboBox1.ValueMember = "kod_kafedru";//столбец с id

comboBox1.SelectedIndex = -1;

 

7. Далее, наполним раскрывающиеся списки для выбора должности, научного звания, возраста, стажа и ставки. Эти данные мы не можем взять, как это было выше, из каких-то ранее определенных таблиц, например у нас в нашей базе данных нет таблиц Должности, Ставки и т.д. Поэтому эти списки мы определим самостоятельно.

Добавьте ниже следующий код:

 

// Должности

this.comboBox2.Text = "";

this.comboBox2.Items.Add("Профессор");

this.comboBox2.Items.Add("Доцент");

this.comboBox2.Items.Add("Старший преподаватель");

this.comboBox2.Items.Add("Преподаватель-стажер");

this.comboBox2.Items.Add("Ассистент");

this.comboBox2.Items.Add("Заведующий лабораторией");

this.comboBox2.Items.Add("Лаборант");

this.comboBox2.Items.Add("Инженер");

this.comboBox2.Items.Add("Секретарь");

this.comboBox2.Items.Add("Заведующий кафедрой");

// Научные звания

this.comboBox3.Text = "";

this.comboBox3.Items.Add("нет");

this.comboBox3.Items.Add("к.т.н");

this.comboBox3.Items.Add("к.г.н");

this.comboBox3.Items.Add("к.г.у");

this.comboBox3.Items.Add("к.м.н");

this.comboBox3.Items.Add("к.п.н");

this.comboBox3.Items.Add("к.с.н");

this.comboBox3.Items.Add("к.б.н");

this.comboBox3.Items.Add("к.в.н");

this.comboBox3.Items.Add("к.д.н");

this.comboBox3.Items.Add("к.э.н");

this.comboBox3.Items.Add("к.и.н");

this.comboBox3.Items.Add("к.ф.-м.н");

this.comboBox3.Items.Add("д.т.н");

this.comboBox3.Items.Add("д.г.н");

this.comboBox3.Items.Add("д.г.у");

this.comboBox3.Items.Add("д.м.н");

this.comboBox3.Items.Add("д.п.н");

this.comboBox3.Items.Add("д.с.н");

this.comboBox3.Items.Add("д.б.н");

this.comboBox3.Items.Add("д.в.н");

this.comboBox3.Items.Add("д.д.н");

this.comboBox3.Items.Add("д.э.н");

this.comboBox3.Items.Add("д.и.н");

this.comboBox3.Items.Add("д.ф.-м.н");

// Возраст

this.comboBox4.Text = "";

this.comboBox4.Items.Add("от 20 до 30 лет");

this.comboBox4.Items.Add("от 30 до 40 лет");

this.comboBox4.Items.Add("от 40 до 50 лет");

this.comboBox4.Items.Add("от 50 до 60 лет");

this.comboBox4.Items.Add("от 60 до 70 лет");

this.comboBox4.Items.Add("старше 70 лет");

// Стаж

this.comboBox5.Text = "";

this.comboBox5.Items.Add("меньше 5 лет");

this.comboBox5.Items.Add("от 5 до 10 лет");

this.comboBox5.Items.Add("от 10 до 15 лет");

this.comboBox5.Items.Add("от 15 до 20 лет");

this.comboBox5.Items.Add("от 20 до 25 лет");

this.comboBox5.Items.Add("от 25 до 30 лет");

this.comboBox5.Items.Add("от 30 до 35 лет");

this.comboBox5.Items.Add("от 35 до 40 лет");

this.comboBox5.Items.Add("от 40 до 45 лет");

this.comboBox5.Items.Add("от 45 до 50 лет");

this.comboBox5.Items.Add("свыше 50 лет");

// Ставка

this.comboBox6.Text = "";

this.comboBox6.Items.Add("меньше 1000 грн");

this.comboBox6.Items.Add("от 1000 до 2000 грн");

this.comboBox6.Items.Add("от 2000 до 3000 грн");

this.comboBox6.Items.Add("от 3000 до 4000 грн");

this.comboBox6.Items.Add("от 4000 до 5000 грн");

this.comboBox6.Items.Add("свыше 5000 грн");

 

8. Сохраните программный проект и запустите его на выполнение. У вас не должно быть ошибок, если они есть, то исправьте их.

На экране должна появиться форма приветствия, нажимаем на кнопку Преподаватели. Данные всех преподавателей должны быть отображены в таблице и рядом пока пустые поля. Пооткрывайте списки – в них должны быть варианты выбора.

Возвращаемся далее к написанию приложения.

 

9. Добавьте обработчик события на нажатие кнопки Применить. При нажатии на эту кнопку будем вначале передавать в параметры значения выбранных критериев поиска информации.

 

// поиск информации

dataAdapter1.Dispose(); // освобождение набора данных

// считывание ФИО из текстового поля

fio_sotrud = this.textBox1.Text;

fio_sotrud = "%" + fio_sotrud + "%"; // добавляем к строке подстановочные символы

fio_sotrud = fio_sotrud.ToLower(); // переводим все символы в нижний регистр

// считывание кафедры из раскрывающегося списка, но нам не нужно само название, а будем извлекать код кафедры из раскрывающегося списка

kod_kafedru_sotrud = this.comboBox1.SelectedIndex +1;

// считывание должности из раскрывающегося списка

dolgn_sotrud = this.comboBox2.Text;

dolgn_sotrud = "%" + dolgn_sotrud + "%";

dolgn_sotrud = dolgn_sotrud.ToLower();

// считывание научного звания из раскрывающегося списка

nauch_zvanie_sotrud = this.comboBox3.Text;

nauch_zvanie_sotrud = "%" + nauch_zvanie_sotrud + "%";

nauch_zvanie_sotrud = nauch_zvanie_sotrud.ToLower();

// считывание возраста из раскрывающегося списка

vozrast_sotrud = this.comboBox4.Text;

if (vozrast_sotrud == "от 20 до 30 лет") { l1 = 20; l2 = 30; }

if (vozrast_sotrud == "от 30 до 40 лет") { l1 = 30; l2 = 40; }

if (vozrast_sotrud == "от 40 до 50 лет") { l1 = 40; l2 = 50; }

if (vozrast_sotrud == "от 50 до 60 лет") { l1 = 50; l2 = 60; }

if (vozrast_sotrud == "от 60 до 70 лет") { l1 = 60; l2 = 70; }

if (vozrast_sotrud == "старше 70 лет") { l1 = 70; l2 = 500; }

 

// считывание стажа из раскрывающегося списка

stagem_sotrud = this.comboBox5.Text;

// считывание ставки из раскрывающегося списка

stavka_sotrud = this.comboBox6.Text;

10. Самостоятельно присвойте значения переменным m1, m2, k1, k2 – как левые и правые границы диапазонов для стажа и ставки преподавателя.

 

11. Далее ниже выполним присвоение строки запроса, но пока выполнять его не будем:

SqlCommand myCommand = DBConnection.Instance().Connection.CreateCommand();

 

12. А теперь после того как все параметры были переданы, будем выполнять проверку, если ничего не выбрано и не введено не в одно поле, то выполнить запрос на вывод всей таблицы Преподавателей, а иначе выполнять разные проверки в зависимости какие поля были выбраны или их комбинации.

 

// если ничего не выбрано

if ((fio_sotrud == "%%") & (kod_kafedru_sotrud == 0) & (dolgn_sotrud == "%%") & (nauch_zvanie_sotrud == "%%") & (vozrast_sotrud == "") & (stagem_sotrud == "")& (stavka_sotrud == ""))

{

Sqlmy = "select * from Teacher ";

myCommand.CommandText = Sqlmy;

myCommand.ExecuteScalar(); // выполняем запрос

// очищаем таблицу dataGridView1 от старых данных

while (dataGridView1.Rows.Count > 1)

for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)

dataGridView1.Rows.Remove(dataGridView1.Rows[i]);

// Передача новых данных

dataAdapter1.SelectCommand = myCommand;

dataAdapter1.Fill(ds1, "Преподаватели");

this.dataGridView1.DataSource = ds1.Tables["Преподаватели"].DefaultView;

}

// иначе, если пользователь что-то выбрал




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 379; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.026 сек.