85755

Создание информационно-аналитической системы управления базой данных общежития

Курсовая

Информатика, кибернетика и программирование

Ведение базы живущих в общежитии студентов, ведение базы мебели в помещениях, учет оплаты проживания. В работе реализована поисковая система по студентам. Доступна сортировка по количеству свободных мест в комнатах, по номеру комнаты, а так же по корпусу. Имеются способы добавление, изменение, удаление, сортировка данных.

Русский

2015-03-30

616.69 KB

4 чел.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН

УРАЛЬСКИЙ КОЛЛЕДЖ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

КУРСОВАЯ РАБОТА

по дисциплине

«Основы алгоритмизации и программирования»

на тему:

«Создание информационно-аналитической системы управления базой данных общежития»

Выполнил: студент гр.21-К

Фамилия Имя

Проверил: Каланова С.В.

 

Уральск


ОГЛАВЛЕНИЕ.

ОГЛАВЛЕНИЕ. 2

Задание на курсовую работу. 3

Краткое описание предметной области. 4

1. Проектирование данных. 5

1.1 Характеристика входной и выходной информации. 5

1.2 Создание и разработка структуры таблиц базы данных. 6

1.3 Организация доступа к таблицам базы данных. 8

2. Проектирование алгоритмов обработки информации. 8

2.1 Добавление записей 10

2.2 Изменение записей 12

2.3 Удаление записей. 12

2.4 Сортировка данных. 13

2.5 Поиск данных. 14

2.6 Диаграмма 15

2.7 Создание ведомостей или отчётов 16

3. Проектирование интерфейса. 17

3.1 Заставка программы. 17

3.2 Информационное окно “О программе”. 18

3.3 Выход. 19

Список использованных источников 20


Задание на курсовую работу.

Составить информационно - аналитическую систему управления базой данных общежития. Исходная информация содержится в четырех таблицах: Студенты (Номер зачетной книжки,  имя студента, фамилия студента, факультет, курс). Платеж (номер платежа, номер зачетной книжки студента, фамилия кассира, оплачиваемый месяц, дата оплаты, сумма оплаты). Комната (номер комнаты, корпус, количество мест, количество: стульев, столов, шкафов, кроватей, тумбочек ). Вселение (номер заселения, номер зачетки студента , номер комнаты, дата заселения).


Краткое описание предметной области.

Ведение базы живущих в общежитии студентов, ведение базы мебели в помещениях, учет оплаты проживания.

В работе реализована поисковая система по студентам. Доступна сортировка по количеству свободных мест в комнатах, по номеру комнаты, а так же по корпусу.

Имеются способы добавление, изменение, удаление, сортировка данных. Имеется диаграмма по таблице свободных мест в комнатах.

Оплата студентов осуществляется по месяцам. Доступна возможность распечатки всего отчета по оплатам заданного студента. В отчете указывается дата оплаты, сумма, оплачиваемы месяц, а так же данные студента.


  1.  Проектирование данных.

  1.  Характеристика входной и выходной информации.

Входной информацией являются 4 таблицы.

Которые представляют собой файл базы данных SQL:

  1.  Вселение
  2.  Студент
  3.  Платеж
  4.  Комната

Выходной информацией являются различные выборки данных из таблиц: предоставление информации о  студенте (его данные,  список всех платежей, а так же комната и дата заселения), получение списка всех заказов за заданный период времени, и прочие не маловажные запросы. Так же реализована возможность вывода информации на новый заказ путем распечатки принтера.

  1.  Создание и разработка структуры таблиц базы данных.

Все таблицы реализованы в SQL  Server 2005. Данная СУБД очень надежна  и идет в ногу со временем.

Структура таблицы «платеж»:

Структура таблицы «Студент»:

 

Структура таблицы «Комната»:

Структура таблицы «Комната»:

  1.  Организация доступа к таблицам базы данных.

Доступ к базе данных осуществляется с помощью  компонента ADO Connection. Для выборки таблиц используются компоненты adoquery и adotable. В свойствах ADO Connection выбираем  Connection string, затем записывается путь к базе данных. Далее для каждой таблицы создаются ADO Table1 или adoquery

На следующем этапе создаются несколько элементов Data Source соответственно количеству соединений с BDGRid, которые и будут осуществлять свзязь между собой.

Все не визуальные компоненты осуществляющие связь с базой данных, а это - ADO Table, ADO Connection и Data Source, я разместил на Datamodule, что позволило не закидывать основную форму которые сильно мешали бы при дальнейшим изменении интерфейса программы.

  1.  Проектирование алгоритмов обработки информации.

Изменение и добавление данных возможно лишь после ввода пароля. Для этого в главном меню и в контекстном меню есть соответствующая строка, именуемая «Ввести пароль» кликая по которой открывается следующее окошко:

В кнопке помещен следующий код:

if edit1.Text='1234' then

begin

form2.bitbtn6.Visible:=true;

form2.bitbtn5.Visible:=true;

form2.bitbtn4.Visible:=true;

form2.N4.Visible:=true;

form2.N5.Visible:=true;

form2.N6.Visible:=true;

form2.N2.Visible:=false;

form2.N10.Visible:=false;

form8.Close;

end   else

showmessage('Не правильный пароль! Повторите попытку!') ;

Из которого следует что паролем является комбинация цифр – 1234.

После введения правильного пароля открываются три кнопки на форме:

 

А так же в главном меню открываются строчки по функция идентичные вышеуказанным. Строчка «Ввести пароль» наоборот скрывается от глаз пользователя.

 В случае ошибки ввода пароля пользователь увидит следующее сообщение: ' Не правильный пароль! Повторите попытку!

В поле ввода пароля все символы отображаются  символом  * .

2.1 Добавление записей

Добавление нового студента и определение его в определенную комнату

При нажатии на кнопку добавит студента открывается следующая форма:

На данной форме происходит добавление студента, а так же на ней имеется возможность просмотра не полностью занятых комнат, а так же абсолютно свободных комнат.

Код кнопки определения студента в непустую комнату:

datamodule3.ADOQuery4.Parameters.Clear;

d1:=strtoint(form6.dbtext1.caption);

d2:=strtoint(form6.dbtext2.caption);

DataModule3.ADOquery4.Parameters.AddParameter.Name:='D1';

DataModule3.ADOquery4.Parameters.AddParameter.Name:='D2';

DataModule3.ADOquery4.Parameters.ParamByName('D1').Value:=d1;

DataModule3.ADOquery4.Parameters.ParamByName('D2').Value:=d2;

datamodule3.adoquery4.execsql;

datamodule3.ADOQuery4.Parameters.Clear;

datamodule3.ADOTable1.close;

datamodule3.ADOTable2.close;

datamodule3.ADOTable3.close;

datamodule3.ADOQuery1.close;

datamodule3.ADOQuery2.close;

datamodule3.ADOQuery6.close;

datamodule3.ADOQuery5.close;

datamodule3.ADOTable1.Open;

datamodule3.ADOTable2.Open;

datamodule3.ADOTable3.Open;

datamodule3.ADOQuery1.Open;

datamodule3.ADOQuery2.Open;

datamodule3.ADOQuery6.Open;

datamodule3.ADOQuery5.Open;

После добавления и определения комнаты студенту происходит автаматическое обновление всех таблиц программы. Добавление студента в ранее ни кем не занимаемую комнату происходит аналогичным образом. Сразу после добавления студента в пустую комнату, благодаря обновлению таблиц, данная комната попадает в список не заполненных комнат.

Так же в программе предусмотрено добавление платежей. Что бы добавит новый платеж следует на главной вкладке кликнуть по кнопке «Добавить платеж», затем откроется следующая форма:

Код кнопки добавления:

datamodule3.adoquery3.sql[1]:='VALUES ('+''''+DBText2.Caption+''','+''''+edit2.text+''','+''''+ComboBox1.text+''','+''''+edit1.text+''')' ;

datamodule3.adoquery3.execsql;

datamodule3.ADOTable3.Close;

 datamodule3.ADOTable3.Open;

 form4.Close;

  1.  
  2.  
  3.  Изменение записей

Изменение данных допускается только в двух таблицах. А именно в таблице «Студент» и в «Комната». Изменение данных осуществляется путем использования компонента DBNavigator.

2.3 Удаление записей.

Кликнув по кнопке «Удалить студента» полььзователь окажется на следующем окне:

 

Пользователю лишь требуется выбрать из списка нужного студента и кликнуть по ниже установленной кнопке, удаление происходит каскадно, одновременно удаляются все его данные. Такие как место проживания, дата заселения, архив оплаты. Как правило удаление предусмотрено для удаления студентов которые закончили обучение.

2.4 Сортировка данных.

Сортировка имеется на вкладке «Оснащение комнат». Сортировка позволяет сортировать комнаты по номеру, по местам проживания, по блоку. Сортирока доступна как по возрастанию, так и по убыванию.

procedure TForm2.RadioButton3Click(Sender: TObject);

begin

datamodule3.adoquery6.Close;

if CheckBox1.Checked then

datamodule3.adoquery6.sql[2]:='ORDER BY id_room DESC' else

datamodule3.adoquery6.sql[2]:= 'ORDER BY id_room ASC';

datamodule3.adoquery6.Open;

end;

procedure TForm2.RadioButton4Click(Sender: TObject);

begin

datamodule3.adoquery6.Close;

if CheckBox1.Checked then

datamodule3.adoquery6.sql[2]:='ORDER BY Korpus DESC' else

datamodule3.adoquery6.sql[2]:= 'ORDER BY Korpus ASC';

datamodule3.adoquery6.Open;

end;

procedure TForm2.RadioButton5Click(Sender: TObject);

begin

datamodule3.adoquery6.Close;

if CheckBox1.Checked then

datamodule3.adoquery6.sql[2]:='ORDER BY Kol_mest DESC' else

datamodule3.adoquery6.sql[2]:= 'ORDER BY Kol_mest ASC';

datamodule3.adoquery6.Open;

end;

procedure TForm2.CheckBox1Click(Sender: TObject);

begin

form2.RadioButton5.Checked:=false;

form2.RadioButton4.Checked:=false;

form2.RadioButton3.Checked:=false;

end;

2.5 Поиск данных.

Поиск реализован по таблице «Студент»

Код для кнопки «Поиск»

datamodule3.ADOQuery1.Close;

if form2.RadioButton1.checked then

datamodule3.adoquery1.sql[2]:='where Id_zach='''+edit1.Text+'''';

if form2.RadioButton2.checked then

datamodule3.adoquery1.sql[2]:='where Fname='''+edit1.Text+'''';

datamodule3.ADOQuery1.Open;

Код для кнопки «Весь список»

datamodule3.ADOQuery1.Close;

datamodule3.adoquery1.sql[2]:='';

datamodule3.ADOQuery1.Open;

В случае если требуется удалить конкретного студента, а список очень велик, то данный поиск будет очень полезен, так как результаты поиска будут отображать на странице удаления студента, а так же на странице добавление нового платежа.

2.6 Диаграмма

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

2.7 Создание ведомостей или отчётов

Отчет сделал в Rave designer.Сохранение отчета в каком либо формате не предусматривал. Он исключительно для печати. Отчет отображает весь список осуществленных платежей конкретным студентом.

Кнопка расположена на вкладке «Основная» в нижней части, прямо под таблицей «Платежи»

Код вызова отчета:

RvProject1.Execute;

Отчет будет иметь вид:

3. Проектирование интерфейса.

3.1 Заставка программы.

Открывается при запуске программы.

Код формы:

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if x=1 then
begin

Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+10;
if Form1.ProgressBar1.Position=100 then
begin
Form1.ProgressBar1.Position:=0;
x:=2;
end;  end;
if x=2 then
begin
Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+30;
if Form1.ProgressBar1.Position=90 then
begin
Form1.ProgressBar1.Position:=0;
x:=3;
end;end;

if x=3 then

begin

Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+2;

if Form1.ProgressBar1.Position=90 then

begin

Form1.ProgressBar1.Position:=0;

x:=4;

end;end;

if x=4 then

begin

Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+1;

if Form1.ProgressBar1.Position=90 then

begin

Form1.ProgressBar1.Position:=0;

x:=5;

end;end;

if x=5 then

begin

Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+5;

if Form1.ProgressBar1.Position=100 then

timer1.Enabled:=false;

Form2.show;

Form1.hide;

end;

end;

procedure TForm1.FormShow(Sender: TObject);

begin

x:=1;

timer1.Interval:=10;

timer1.Enabled:=true;

end;   end.

3.2 Информационное окно “О программе”.

3.3 Выход.

Выход возможен путем закрытия формы с основной информацией, а так же путем нажатия соответствующих строк в главном меню и в контекстном меню..

Во всех кнопках выхода следующий код:

form1.Close;


Список использованных источников

  1.  Лекции по дисциплине «Высокоуровневые методы информатики и программирования» Исавнина А.Г.
  2.  Работа с СУБД Microsoft Access и SQL Server  в среде Delphi: Учебное пособие для специальностей 0811665 – «Математические методы в экономике» и 08080165 – «Прикладная информатика в экономике» дневной, заочной и дистанционной форм обучения / Составитель – А.Г. Исавнин. Набережные Челны: Изд-во ИНЭКА, 2008.
  3.  Исавнин А.Г., Макарова И.В., Лысанов Д.М. Язык структурированных запросов, Учебное пособие. Набережные Челны: Изд-во КамПи, 2004.
  4.  Создание отчетов с помощью RAVE-компонентов Delphi: Учебное пособие для студентов специальностей 08011665 – «Математические методы в экономике» и 08080165 – «Прикладная информатика в экономике» дневной, заочной и дистанционной форм обучения/ Составители: Исавнин А.Г., Фрикк В.С., Лысанов Д.М. Набережные Челны: Изд-во ИНЭКА, 2006. – 39с.


 

А также другие работы, которые могут Вас заинтересовать

1264. Организация и методика расследования взяточничества 463.5 KB
  Уголовно-правовая характеристика получения-дачи взятки. Квалификация дачи взятки. Основные элементы криминалистической характеристики взяточничества. Обстоятельства, подлежащие установлению по делам о взяточничестве. Место и время совершения взяточничества. Особенности оперативно-розыскной деятельности по делам о взяточничестве.
1265. Содержание белка в хлебобулочных изделиях 378.5 KB
  Содержание белка в пищевых продуктах. Химический состав и пищевая ценность хлеба и хлебобулочных изделий. Белки из семян подсолнечника, хлопчатника, гороха, арахиса и конских бобов. Специфические реактивы для получения биуретового реактива.