42965

Разработка информационной системы по предметной области спортивный комплекс

Курсовая

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

Информационнопоисковая система это система обеспечивающая поиск и отбор необходимых данных в специальной базе с описаниями источников информации индексе на основе информационнопоискового языка и соответствующих правил поиска.0 располагающей широкими возможностями по созданию приложений баз данных необходимым набором драйверов для доступа к самым известным форматам баз данных удобными и развитыми средствами для доступа к информации расположенной как на локальном диске так и на удаленном сервере а также большим коллекцией...

Русский

2013-11-01

505.53 KB

62 чел.

14

Содержание

ВВЕДЕНИЕ 2

СПОСОБ № 1 3

Разработка формы 3

Разработка процедур 4

Описание работы программы 7

СПОСОБ № 2 10

Проектирование базы данных 10

Разработка формы 10

Разработка процедур 12

Описание работы программы 14

ЗАКЛЮЧЕНИЕ 21

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 22


ВВЕДЕНИЕ

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

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

Информационно-поисковая система - это система, обеспечивающая поиск и отбор необходимых данных в специальной базе с описаниями источников информации (индексе) на основе информационно-поискового языка и соответствующих правил поиска.

Главной задачей любой информационно-поисковой системы является поиск информации релевантной информационным потребностям пользователя.

Реализация данной задачи проводится в системе программирования Delphi 7.0, располагающей широкими возможностями по созданию приложений баз данных, необходимым  набором  драйверов для доступа к самым известным форматам баз данных, удобными и развитыми средствами для доступа к информации, расположенной как на локальном диске, так и на удаленном сервере, а также большим коллекцией визуальных компонент для построения отображаемых на экране окон, что необходимо для создания удобного интерфейса между пользователем и исполняемым кодом.


СПОСОБ № 1

Разработка формы

Спроектируем форму представленную на рис. 1.

Рисунок 1 – Главная форма приложения

В таблице 1 представлен список компонентов и их свойств.

Таблица 1 - Компоненты формы

 

Имя компонента

Надпись

Примечание

1

2

3

4

1

Button1

(кнопка)

ОК

Подтверждение ввода количества строк. Формируется матрица

с заданным количеством строк.

2

Button2

(кнопка)

Запись в файл

Данные из матрицы записываются в файл

3

Button4

(кнопка)

Запись в матрицу

Данные из файла записываются в таблицу (матрицу)

4

Button5

(кнопка)

Поиск

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

5

Label1

(Метка)

Введи число записей

6

Edit1

(строка ввода)

Нет надписи

Ввводим число отражающее число записей в матрице

7

StringGrid1

(текстовая

таблица)

Ячейки таблицы заполняются в процессе работы.

Cвойство Options,

свойство

goEditing значение True.

Разработка процедур

Объявите переменные,  используемые в программе и укажите их типы:

var

     Form1:  TForm1;

     i,j,n,nn,kz: integer;

     p:string;

     f:textfile;

Для работы программы было разработано ряд процедур.

Определения количества строк в матрице и их автоматическая нумерация:

procedure TForm1.Button1Click(Sender: TObject);

begin

Получаем количество строк из поля Edit1:

   n:=StrToInt(edit1.Text);

Устанавливает в StringGrid1 соответствующее количество строк:

StringGrid1.Rowcount:= n+1;

Нумеруем первый столбик:

for j:=1 to n+1 do

 begin

 StringGrid1.Cells[0,j]:=IntToStr(j);

 end;

end;

Запись матрицы в файл:

procedure TForm1.Button2Click(Sender: TObject);

var buttonSelected : Integer;

begin

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

   buttonSelected := MessageDlg('Вы действительно хотите перезаписать файл? (Все предыдущие записи будут потеряны)',mtWarning, mbOKCancel, 0);

Если пользователь подтвердил перезапись (Нажата кнопка ОК):

   if buttonSelected = mrOK then begin

Записываем данные в файл:

   Rewrite(f);

 For j:=1 to n do

 begin

 for i:=1 to 5 do

 begin

 write(f,stringgrid1.cells[i,j]);

 write(f,'!');

 end;

 end;

write(f,'#');

 closefile(f);

   ShowMessage('Данные успешно сохранены!');

   end;

end;

В качестве разделителя между словами используем Восклицательный знак (!), в качестве символа конца файла решетку (#).

Запись данных из файла в матрицу:

procedure TForm1.Button4Click(Sender: TObject);

begin

 nn:=1;

reset(f);

read(f,p);

for j:=1 to n do

begin

for i:=1 to 5 do

begin

kz:=0;

while p[nn]<>'!' do

begin

kz:=kz+1;

nn:=nn+1;

end;

stringgrid1.cells[i,j]:=copy(p,nn-kz,kz);

nn:=nn+1;

if p[nn]='# ' then exit;

end;

end;

end;

Поиска данных:

procedure TForm1.Button5Click(Sender: TObject);

var

    S : TStrings;

    St : String;

    i, Row, Col : Integer;

begin

Запрашиваем у пользователя индекс столбца, в котром будем проводить поиск:

   Col := StrToInt(InputBox('Ввод данных','Введите номер столбца для поиска',''));

Затем запрашиваем данные для поиска:

   St := AnsiUpperCase( InputBox('Ввод данных','Введите данные для поиска','') );

Осуществляем поиск по выбранному столбцу:

  S := StringGrid1.Cols[Col];

   Row := -1;

   for i := StringGrid1.FixedCols to S.Count - 1 do begin

     if Pos( St, AnsiUpperCase( S.Strings[i] ) ) > 0 then begin

       Row := i;

       Break;

    end;

  end;

Проверяем найденны ли данные:

   if Row > -1 then begin

Выделяем найденную ячейку:

    StringGrid1.Selection := TGridRect( Rect(Col, Row, Col, Row) );

Если данные не найдены выводим соответствующее сообщение:

  end else begin

     ShowMessage('Данная фамилия спортсмена не найдена.');

   end;

end;

Также во время создания формы, добавим подписи столбцов таблицы и установим связь между файловой переменной и файлом на диске:

procedure TForm1.FormCreate(Sender: TObject);

begin

    AssignFile(f,'f');

    Stringgrid1.Cells[0,0]:= 'N записи';

    Stringgrid1.Cells[1,0]:= 'Фамилия спортсмена';

    Stringgrid1.Cells[2,0]:= 'Название секции';

    Stringgrid1.Cells[3,0]:= 'Спортивный разряд';

    Stringgrid1.Cells[4,0]:= 'Фамилия тренера';

end;

Описание работы программы

При первом  сеансе работы с программой необходимо выполнить следующие действия:

  1. Определите  число записей в матрице, нажмите OK (рис.2) .

Рисунок 2 – Пример определения числа записей

  1. Введите данные в матрицу (рис.3).

Рисунок 3 - Ввод данных в матрицу

  1. Щелкните по кнопке «Запись в файл», произойдет копирование данных из матрицы в файл (файл будет создан автоматически). Появится окно показанное на рис.4.

Рисунок 4 – Запрос на подтверждение записи данных

После нажатия «ОК» на жестком диске будет создан файл, пример содержимого файла на рис. 5.

Рисунок 5 – Файл с данными открытый через Блокнот

 

Если работа с программой происходит не первый раз и информация уже хранится в файле, то необходимо выполнить следующие действия:

Пункты

 1. выполняется аналогично.

2.   Нажмите кнопку «Запись в матрицу». Данные окажутся в таблице.

Далее возможно проводить редактирование записей или ввод новых  записей в матрицу.

Для поиска информации необходимо нажать кнопку «Поиск». Появится запрос представленный на рис.6.

Рисунок 6 – Ввод номера столбца

Затем появится запрос ввода данных (рис.7), необходимо вводить данные соответствующие выбранному столбцу.

Рисунок 7 – Запрос данных для поиска

В результате поиска будет выделена ячейка (рис.8)  или выдано сообщение об отсутствие данных (рис.9).

                                                                     Рисунок 8 - Поиск фамилии

Рисунок 9 - Данная фамилия не найдена

СПОСОБ № 2

Проектирование базы данных

С помощью Microsoft Office Access создадим таблицу представленную на рис. 10.

Рисунок 10 – Таблица laba.mdb

Разработка формы

Спроектируем форму, с подключенной базой данных, представленную на рис. 11.

Рисунок 11 – Главная форма приложения

В таблице 2 представлен список компонентов и их свойств.

Таблица 1 - Компоненты формы

 

Имя компонента

Надпись

Примечание

1

2

3

4

1

Button1

(кнопка)

Добавить фамилию

Происходит поиск лаборатории

2

Button2

(кнопка)

Удалить фамилию

Добавляет информацию в базу данных.

3

Button3

(кнопка)

Сохранить

Удаляет информацию из базы данных

4

Button4

(кнопка)

Поиск фамилии

Изменяет данные в базе данных

5

Button5

(кнопка)

Вернуться к базе данных

Сортировка по количеству ЭВМ

6

Button6

(кнопка)

Сортировка по алфавиту ( по названию секции)

Выход из программы

7

Edit1

(строка ввода)

Нет надписи

В строку Edit вводятся данные.

8

Dbgrid1

(текстовая

таблица)

DataSource1

Связь с Table1

9

ADOConnection

Нет надписи

Подключение базы данных Laba.mdb

10

ADOQuery

Нет надписи

Связь с ADOConnection

11

DataSource

Нет надписи

Связь с ADOQuery

Разработка процедур

Вся работа с базой данных осуществляется с помощью компонента ADO.

При нажатии кнопки «Добавить» отображаются поля для ввода данных:

procedure TForm1.Button2Click(Sender: TObject);

begin

Form2.Show;

AdoQuery1.Insert;

end;

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

procedure TForm1.Button3Click(Sender: TObject);

begin

AdoQuery1.Delete;

end;

Изменение данных осуществляется при нажатии кнопки «Изменить»:

procedure TForm1.Button4Click(Sender: TObject);

begin

Form2.Show;

end;

Поиск данных в базе осуществляется с помощью кнопки «Поиск»:

procedure TForm1.Button1Click(Sender: TObject);

begin

try

ADOQuery1.SQL.Clear;

ADOQuery1.SQL.Add('SELECT * FROM laba WHERE Лаборатории LIKE ''%'+Edit1.text+'%''');

ADOQuery1.Active:=True;

except

on e:Exception do

end;

end;

Сортировка данных осуществляется нажатием на кнопку «Сортировка»:

procedure TForm1.Button5Click(Sender: TObject);

begin

 ADOQuery1.Sort:='ЭВМ'

end;

Выход из программы осуществляется с помощью кнопки «Выход»:

procedure TForm1.Button6Click(Sender: TObject);

begin

Close;

end;

end.

Описание работы программы

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

Рисунок 12 – Главное окно программы

Для добавления данных нажмите кнопку «Добавить», в базе данных появится новая форма для добавления данных (рис. 13).

Рисунок 13 – Добавление данных в базу

Для сортировки введенных данных необходимо нажать кнопку «Сортировка» (рис. 15).

                  Рисунок 15 - Сортировка по колонке ЭВМ по возрастанию

Поиск необходимой дисциплины осуществляется с помощью кнопки «Поиск фамилии» (рис. 17).

                                             Рисунок 17 - Поиск по лабораториям

                                          

ЗАКЛЮЧЕНИЕ

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

Система разработана на языке Паскаль, в среде Delphi.

Система разработана в двух вариантах:

1) На основе использования массива строк и файла. Программа:

  1. выполняет функции ввода и  редактирования информации в массив строк, а также запись информации из массива в файл и считывание информации из файла в массив.
  2. также выполняет поиск информации по заданному значению определенного поля.

2) На основании управления базой данных, технология ADO, бд Microsoft Access. Программа:

  1. добавляет или удаляет новую информацию в базе данных.
  2. сохраняет новую базу данных.
  3. выполняет поиск информации по заданному значению определенного поля.
  4. выполняет сортировку по значению определенного поля в режиме таблицы.
  5. возвращает обратно к начальной базе данных.
  6. выходит из программы.

Разработанные системы отлажены и готовы для демонстрации. Дальнейшая модификация возможно после предъявления требований конечного пользователя.


СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1.  Архангельский А.Я. Программирование в Delphi 7. – М.: ООО «Бином-Пресс»,2003 г. – 1152с.
  2. Карпова Т.С. Базы данных: модели, разработка, реализация. СПб.: Питер, 2001. –304с.
  3. Конноли Т., Бегг Л., Страчан А. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. – 2-е изд. – Вильямс, 2000.
  4.  Малыхина М.П. Базы данных: основы, проектирование, использование. –Спб.: БХВ-Петербург, 2004. –512 с.
  5. Фаронов В.В. Программирование баз данных в Delphi 7. Учебный курс. – СПб: Питер, 2006. – 459с.
  6. Хомоненко А.Д. и др. Delphi 7./ Под общей редакцией А. Д. Хомоненко – СПб.: BHV, 2004.


 

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

83892. Принципы и техника наложения кишечного шва. Классификация кишечных швов 50.62 KB
  Сквозные швы являются инфицированными грязными. Швы не проходящие через слизистую оболочку называют неинфицированными чистыми. В зависимости от рядности кишечных швов однорядные швы Матешука нить проходит через края серозной мышечной оболочек и подслнзнстой основы без захвата слизистой оболочки что обеспечивает хорошую адаптацию краев и надежное погружение в просвет кишки слизистой оболочки без дополнительной ее травматизации: двухрядные швы Альберта используется в качестве первого ряда сквозной шов. поверх которого...
83893. Техника выполнения резекции тонкой кишки. Анастомоз по типу «конец в конец» 49.79 KB
  Техника выполнения резекции тонкой кишки Мобилизация резецируемого участка перевязка сосудов и пересечение брыжейки удаляемого сегмента. В зависимости от способа мобилизации выделяют прямую и клиновидную резекции тонкой кишки. Резекция кишки наложение эластических и раздавливающих кишечных зажимов по линии предполагаемого разреза в косом направлении для наложения энтероанастомоза конец в конец и рассечение органа между ними удаляя больше тканей на свободном противобрыжеечном крае кишки в настоящее время для уменьшения...
83894. Техника выполнения резекции тонкой кишки. Анастомоз по типу «бок в бок» 50.15 KB
  Техника выполнения резекции тонкой кишки. В зависимости от способа мобилизации выделяют прямую и клиновидную резекции тонкой кишки.Резекция кишки наложение эластических и раздавливающих кишечных зажимов по линии предполагаемого разреза в косом направлении для наложения энтероанастомоза конец в конец и рассечение органа между ними удаляя больше тканей на свободном противобрыжеечном крае кишки в настоящее время для уменьшения травматизации кишки зажимы не применяются а используются швыдержачки.
83895. Хирургическая анатомия тонкой кишки. Отделы, особенности кровоснабжения. Брыжеечные синусы 52 KB
  Отделы тонкой кишки: двенадцатиперстная кишка рассматривалась выше; тощая кишка; подвздошная кишка. Между листками брюшины по мезентериальному краю выделяют так называемое внебрюшинное поле re nud вдоль которого в стенку кишки вступают прямые артерии а из нее выходят прямые вены и экс траорганные лимфатические сосуды. Скелетотопия: корень брыжейки тонкой кишки начинается от L2 позвонка и опускается слева направо до крестцово подвздошного сустава пересекая горизонтальную часть двенадцатиперстной кишки аорту нижнюю полую вену...
83896. Хирургическая анатомия толстой кишки. Отделы, кровоснабжение, венозный отток. Боковые каналы 50.73 KB
  Отделы толстой кишки: Слепая кишка Восходящая ободочная кишка Правый изгиб ободочной кишки Поперечная ободочная кишка Левый изгиб ободочной кишки Нисходящая ободочная кишка Сигмовидная ободочная кишка Прямая кишка Кровоснабжение ободочной кишки осуществляется верхней и нижней брыжеечными артериями. Ветви верхней брыжеечной артерии: Подвздошноободочная артерия отдает ветви к терминальному отделу подвздошной кишки червеобразному отростку передние и задние слепокишечные артерии и восходящую артерию кровоснабжающую начальную...
83897. Хирургическая анатомия слепой кишки. Техника выполнения аппендэктомии при ретроперитонеальном расположении червеобразного отростка 50.91 KB
  Техника выполнения аппендэктомии при ретроперитонеальном расположении червеобразного отростка. Червеобразный отросток Варианты положения периферической части отростка нисходящее верхушка отростка обращена вниз и влево и достигает пограничной линии а иногда опускается в малый таз наиболее частый вариант; медиальное вдоль концевого отдела подвздошной кишки; латеральное в правом боковом канале; восходящее вдоль передней стенки слепой кишки; ретроцекальное и ретроперитонеальное в забрюшинной клетчатке. Проекция основания отростка...
83898. Аппендэктомия. Доступ, техника выполнения, особенности операции при перитоните и гангренозном аппендиците 53.03 KB
  Аппендэктомия ppendectomi удаление червеобразного отростка. Показания: острые или хронические воспалительные изменения червеобразного отростка доброкачественные и злокачественные его новообразования. Оперативный прием При пересечении брыжейки отростка порциями со стороны свободного ее конца накладывают кровоостанавливающий зажим ближе к основанию пересекают брыжейку над зажимом после чего часть брыжейки под зажимом прошивают лигатуру завязывают. Культя отростка погружается в кисет.
83899. Ретроградная аппендэктомия. Доступ, показания, техника выполнения, опасности и профилактика осложнений 46.28 KB
  Показания: спаечный процесс в области червеобразного отростка ретроцекальное или ретроперитонеальное его положение невозможно вывести отросток в рану. Технические приемы: Отыскивание начального отдела слепой кишки и отростка. Проделывание окна в брыжейке отростка у его основания перевязка отростка. Пересечение отростка погружение культи в стенку слепой кишки по описанному выше способу.
83900. Хирургическое лечение рака толстой кишки 49.17 KB
  Радикальное иссечение опухоли тослтой кишки вместе с соответствующей частью брыжейки с сосудами и сопровождающими лимфатическими сосудами и узлами является наиболее подходящей операцией для локального устранения опухоли. Виды резекции толстой кишки в зависимости от локализации патологического процесса: Правосторонняя гемиколэктомия удаление всей правой половины толстой кишки захватывая 1015 см конечного отрезка подвздошной кишки слепую восходящую ободочную правый изгиб и правую треть поперечной ободочной кишки с последующим наложением...