5. Тексты программы

 

#pragma once

int zap=0;//переменная для определения текущего запроса

int id=0;//переменная для определения текущего пользователя в системе

int level=0;//переменная для определения выдаваемых функций пользователю

int op_new=-1;//переменная для определения действий кнопки "добавить"

int ChoiseToLV2=0;//переменная, определяющая выводимую и вводимую информацию в функциях.

//участок кода, реализующий один из запросов на вывод таблиц в программе..в основном в остальных запросах изменяется лишь значение переменной q, в которую и вписывается сам запрос.

private: System::Void listBox1_SelectedIndexChanged(System::Object^ sender, System::EventArgs^ e) {

this->listView1->Visible=true;

this->ClientSize = System::Drawing::Size(960, 580);

this->listView1->Items->Clear();

cn->Open();

int choise=this->listBox1->SelectedIndex;

if(choise==0)

{

String ^q="Select * from Klient;";

System::Data::OleDb::OleDbCommand^cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

System::Data::OleDb::OleDbDataReader ^rdr=cmd->ExecuteReader();

int k=0;

while(rdr->Read())

{

this->columnHeader1->Text=L"ид";

this->listView1->Items->Add(Convert::ToString(rdr[0]));

this->columnHeader2->Text=L"Фамилия";

this->listView1->Items[k]->SubItems->Add(Convert::ToString(rdr[1]));

this->columnHeader3->Text=L"Имя";

this->listView1->Items[k]->SubItems->Add(Convert::ToString(rdr[2]));

this->columnHeader4->Text=L"Номер";

this->listView1->Items[k]->SubItems->Add(Convert::ToString(rdr[3]));

this->columnHeader5->Text=L"Счет";

this->listView1->Items[k]->SubItems->Add(Convert::ToString(rdr[4]));

this->columnHeader6->Text=L"Доп.инф.";

this->listView1->Items[k]->SubItems->Add(Convert::ToString(rdr[5]));

this->columnHeader7->Text=L"";

k++;

}

rdr->Close();

cn->Close();}}

//действия при нажатии на кнопку "Внести" в меню "Оплата".

private: System::Void button11_Click(System::Object^ sender, System::EventArgs^ e) {

String ^q;

System::Data::OleDb::OleDbCommand ^cmd;

System::Data::OleDb::OleDbDataReader ^rdr;

cn->Open();

if(op_new==1)

{

double summ_ins=Convert::ToDouble(this->textBox8->Text);

double summ;

int chosen_id;

q="Select * from klient";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

while(rdr->Read())

{

if(Convert::ToString(rdr[1])==this->comboBox1->Text && Convert::ToInt32(rdr[3])==Convert::ToInt32(this->comboBox2->Text))

{

chosen_id=Convert::ToInt32(rdr[0]);

summ=summ_ins+Convert::ToDouble(rdr[4]);

q="update klient set bill ='"+Convert::ToString(summ)+"' where id_klient="+chosen_id+";";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

q="INSERT INTO Oplata ( Data, summ, id_klient )values (Date(),'"+Convert::ToString(summ_ins)+"','"+chosen_id+"'); ";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

}

}

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Внесение суммы "+Convert::ToString(summ_ins)+" на счет клиента с ID "+chosen_id+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

}

//действия при нажатии на кнопку "Изменить"

private: System::Void button13_Click(System::Object^ sender, System::EventArgs^ e) {

cn->Open();

if(ChoiseToLV2==1)

{

String ^q="update lg_ab SET Data='"+this->textBox10->Text+"',Srok='"+this->textBox11->Text+"',id_lgot="+Convert::ToInt32(this->textBox12->Text)+",id_klient="+Convert::ToInt32(this->textBox13->Text)+" where id_lg_ab="+Convert::ToInt32(this->textBox9->Text);

System::Data::OleDb::OleDbCommand ^cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

System::Data::OleDb::OleDbDataReader ^rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Изменение записи в таблице клиент-льгота с ID "+Convert::ToInt32(this->textBox9->Text)+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==4)

{

String ^q="update ys_ab SET Data='"+this->textBox10->Text+"',Srok='"+this->textBox11->Text+"',id_service="+Convert::ToInt32(this->textBox12->Text)+",id_klient="+Convert::ToInt32(this->textBox13->Text)+" where id_ys_ab="+Convert::ToInt32(this->textBox9->Text);

System::Data::OleDb::OleDbCommand ^cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

System::Data::OleDb::OleDbDataReader ^rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Изменение записи в таблице клиент-услуга с ID "+Convert::ToInt32(this->textBox9->Text)+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

cn->Close();

}

//действия при нажатии на кнопку "Удалить"

private: System::Void button14_Click(System::Object^ sender, System::EventArgs^ e) {

cn->Open();

System::Data::OleDb::OleDbCommand ^cmd;

System::Data::OleDb::OleDbDataReader ^rdr;

if(ChoiseToLV2==1)

{

String ^q="delete from lg_ab where id_lg_ab="+Convert::ToInt32(this->textBox9->Text);

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Удаление записи в таблице клиент-льгота с ID "+Convert::ToInt32(this->textBox9->Text)+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==2)

{

String ^q="delete from lgot where id_lgot="+Convert::ToInt32(this->textBox9->Text);

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Удаление записи в таблице льгота с ID "+Convert::ToInt32(this->textBox9->Text)+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==3)

{

String ^q="delete from Klient where id_klient="+Convert::ToInt32(this->textBox9->Text);

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Удаление записи в таблице Клиент с ID "+Convert::ToInt32(this->textBox9->Text)+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==4)

{

String ^q="delete from ys_ab where id_ys_ab="+Convert::ToInt32(this->textBox9->Text);

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Удаление записи в таблице клиент-услуга с ID "+Convert::ToInt32(this->textBox9->Text)+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==5)

{

String ^q="delete from services where id_service="+Convert::ToInt32(this->textBox9->Text);

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Удаление записи в таблице услуга с ID "+Convert::ToInt32(this->textBox9->Text)+"');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

rdr->Close();

cn->Close();

}

//Действия при нажатии на кнопку "Добавить"

private: System::Void button16_Click(System::Object^ sender, System::EventArgs^ e) {

cn->Open();

System::Data::OleDb::OleDbCommand ^cmd;

System::Data::OleDb::OleDbDataReader ^rdr;

if(ChoiseToLV2==1)

{

String ^q="insert into lg_ab (Data,Srok,id_lgot,id_klient) VALUES('"+this->textBox10->Text+"','"+this->textBox11->Text+"',"+Convert::ToInt32(this->textBox12->Text)+","+Convert::ToInt32(this->textBox13->Text)+")";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Добавление записи в таблицу клиент-льгота');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==2)

{

String ^q="insert into Lgot (Opisanie,Stoimost)VALUES('"+this->textBox10->Text+"',"+Convert::ToInt32(this->textBox11->Text)+")";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Добавление записи в таблицу Льготы');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==3)

{

String ^q="insert into Klient (Surname,ab_name,Num,bill)VALUES('"+this->textBox10->Text+"','"+this->textBox11->Text+"',"+Convert::ToInt32(this->textBox12->Text)+","+Convert::ToDouble(this->textBox13->Text)+")";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Добавление нового клиента');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==4)

{

String ^q="insert into ys_ab (Data,Srok,id_service,id_klient) VALUES('"+this->textBox10->Text+"','"+this->textBox11->Text+"',"+Convert::ToInt32(this->textBox12->Text)+","+Convert::ToInt32(this->textBox13->Text)+")";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Добавление записи в таблицу клиент-услуга');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

if(ChoiseToLV2==5)

{

String ^q="insert into services (Opisanie,Stoimost)VALUES('"+this->textBox10->Text+"',"+Convert::ToInt32(this->textBox11->Text)+")";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

q="insert into changes(id_user,data,Opisanie) values("+id+",Now(),'Добавление записи в таблицу услуги');";

cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

rdr=cmd->ExecuteReader();

rdr->Close();

}

rdr->Close();

cn->Close();

}

//Действия, происходящие при внесении данных в поле ввода номера

private: System::Void comboBox2_TextUpdate(System::Object^ sender, System::EventArgs^ e) {

cn->Open();

String ^q="SELECT surname FROM Klient WHERE num like '"+this->comboBox2->Text+"%';";

System::Data::OleDb::OleDbCommand^cmd=gcnew System::Data::OleDb::OleDbCommand(q,cn);

System::Data::OleDb::OleDbDataReader ^rdr=cmd->ExecuteReader();

while(rdr->Read())

{

this->comboBox1->Text=Convert::ToString(rdr[0]);

}

rdr->Close();

cn->Close();

}


Заключение

 

Данная курсовая работа заключала в себе анализ и создание базы данных для аварийной службы.

Целью курсовой работы является развитие навыков проектирования информационных систем и закрепление знаний, полученных за время изучения дисциплины "Базы данных".

Цели и задачи были полностью выполнены. Это означает, что материал по дисциплине "База данных" был полностью усвоен и принят за основу моему дальнейшему развитию.


Список литературы

 

1.         Дейт, К. Дж. Введение в системы Баз Данных, 7-е издание.: Пер. с англ. Ю.Г. Гордиенко; Под ред. А.В. Слепцова / К. Дж. Дейт - М.: Издательский дом "Вильямс", 2001. – 1072с.

2.         Роб, П., Коронел, К. Системы баз данных: проектирование, реализация и управление.- 5-е изд., перераб. и доп./ Пер. с англ. А. Никифоров; Под ред. Е. Кондукова / П. Роб, К. Коронел – СПб.: БХВ – Петербург, 2004. – 1040 с.

3.         Вендров, A. M. Проектирование программного обеспечения информационых систем: Учебник / A. M. Вендров. - М.: "Финансы и статистика", 2000. - 352 с.

4.         Калянов, Г. Н. CASE. Структурный системный анализ / Г.Н. Калянов. - М.: Лори, 1996. - 437 с.


Информация о работе «Телефонная компания»
Раздел: Информатика, программирование
Количество знаков с пробелами: 24312
Количество таблиц: 8
Количество изображений: 15

Похожие работы

Скачать
52395
22
6

... новой услуги. 2.    Проект разрабатывается по решению совета директоров компании Perfect Line. 3.    Миссия: обеспечение потребности жителей Москвы в недорогой междугородной и международной голосовой связи; Цель: внедрение проекта предоставления услуг IP-телефонии; Задачи: аппаратное и программное обеспечение функционирования системы, а также ее обслуживание. 4.    Получение лицензии на право ...

Скачать
109876
4
1

... , в контрольной группе - 22%.". Австралийские ученые доказали, что существует прямая связь между ростом онкологических заболеваний и электромагнитным излучением мобильного телефона. Споры о воздействии электромагнитного излучения аппаратов сотовой связи на здоровье пользователей ведутся уже несколько лет, при этом самым главным аргументом защитников радиотелефона было отсутствие достоверных ...

Скачать
121737
22
5

... вырос на 8,8% до $2,82 млрд. Полученные теоретические знания были использованы при проведении практической работы. Глава 2. Оценка потребительских свойств сотовых телефон различных фирм производителей   2.1 Характеристика ассортимента сотовых телефонов компании Сотовый телефон сегодня - привычный атрибут жизни. Только за 2009 г. пользователями сотовых сетей стали более 18 млн человек, ...

Скачать
27902
0
0

... , три в Санкт-Петербурге и один в Челябинске. В российском отделении компании работают более пятидесяти человек, среди которых - специалисты по телекоммуникационным технологиям и по маркетинговым исследованиям, инженеры и наладчики. Компания Nokia активно работает на Белорусском рынке с момента запуска первой сети сотовой связи, т.е. уже около 10 лет. 17 июня 2003 года на базе салона Newland ...

0 комментариев


Наверх