Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

на тему- Разработка ПП АИС Колледжи Москвы Студент Коструба под

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 2.6.2024

Федеральное ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

КРАСНОГОРСКИЙ ГОСУДАРТСВЕННЫЙ КОЛЛЕДЖ

КУРСОВОЙ ПРОЕКТ

по дисциплине “Технология разработки программных продуктов”

на тему: Разработка ПП АИС «Колледжи Москвы»

     Студент   ______________________________     Коструба

(подпись)

      Проверил  ______________________________  Студенова О.В.

(оценка   и  подпись)

Красногорск

2011 год

Содержание

[1] Содержание

[2]
Введение

[3] Разработка системного проекта АИС БД «Колледжи Москвы»

[3.1] Назначение разработки

[3.2] Требования к функциональным характеристикам

[3.2.1] Состав выполняемых функций

[3.3] Требования к надежности и безопасности

[3.4] Требования к составу и параметрам технических средств

[3.5] Требования к информационной программной совместимости

[4]
Разработка технического проекта

[4.1] Анализ требований и определение спецификации ПО

[4.2] Проектирование модели данных

[4.3] Детальное проектирование ПО

[5] Реализация

[5.1] Обоснование выбора средств разработки

[5.2] Описание основных программных модулей

[6]
Тестирование

[7] Заключение

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

[9] Приложение №1. Листинг программы

[10] Приложение №2. Руководство пользователя.


Введение

Программный продукт АИС БД «Колледжи Москвы» разрабатывается с целью систематизации и обобщения сведений о колледжах. Он предназначен для выпускников средней школы и позволяет сотрудникам добавлять новых клиентов и тренеров, искать и редактировать информацию о клиентах и тренерах, определять в какой группе находится клиент и какой у него тренер. Это доступно благодаря широкой информационной базе ПП,  необходимым фильтрам и удобному интерфейсу, которые делают информацию удобной для восприятия.

В данном программном продукте будут предусмотрены функции просмотра БД о тренерах, клиентах и групп. Также предусмотрен поиск по двум критериям, редактирование и печать отчётов.

  1.  Разработка системного проекта АИС БД «Колледжи Москвы»
    1.  Назначение разработки

Подсистема АИС БД «Колледжи Москвы» используется с целью обобщения информации о колледжах, их адресов и о контактных данных. Данный программный продукт использует для решения следующих задач:

  •  Регистрация новых учебных заведений
  •  Работа с БД (просмотр, редактирование)
  •  Ведение отчётности по итогам периода
    1.  Требования к функциональным характеристикам
      1.  Состав выполняемых функций

Разрабатываемая АИС БД «Колледжи Москвы» обеспечивает сбор сведений о колледжах. Также ПП имеет функцию быстрого поиска необходимой информации, способов её отображения и при необходимости формирования отчета и вывода его на печать.

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

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

Источниками отчетов являются выходные данные по:

  •  Тренерам (фамилия, имя, отчество, вид спорта, номер группы),
  •  Членам клуба (фамилия, имя, отчество, год рождения).
  •  Группам (номер группы, вид спорта, фамилия тренера)

Формы входных документов представлены в приложении к курсовому проекту.

  1.  Требования к надежности и безопасности

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

  1.  Требования к составу и параметрам технических средств

Тактовая частота процессора 2000Гц

Объем ОЗУ не менее 512Мб

Объем свободного места не жестком диске 20Мб

Разрешение монитора (рекомендуемое) 1024х768

  1.  Требования к информационной программной совместимости

ОС Windows XP/Vista/7

MS Office 2000/2003/2007

  1.  
    Разработка технического проекта
    1.  Анализ требований и определение спецификации ПО

Основные спецификации:

  •  Работа с БД – возможность добавления, изменения, удаления информации в записях таблицы.
  •  Вид – возможность фильтрации, вы, а также поиска информации в таблице.
  •  Печать – печать отчётов за отчётный период.
    1.  Проектирование модели данных

Рисунок 1. Функциональная схема

  1.  Детальное проектирование ПО

Рисунок 2. Структурная схема.

  1.  Реализация
    1.  Обоснование выбора средств разработки

В ходе анализа имеющихся средств программирования был выбран вариант написания программного продукта с использованием системы визуального программирования Borland Delphi 10. Данное заключение основывалось на следующем.

Среда визуального программирования Delphi 10 работает в среде Windows и предоставляет программисту возможность реализации всех достоинств графического интерфейса этой системы.

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

Так как Delphi 10 является средой программирования для Windows, то, как и сама операционная система Delphi поддерживает длинные имена файлов и папок.

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

  1.  Описание основных программных модулей

Запуск программы осуществляется с помощью файла SportClub.exe.

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

На форме Unit1 расположены следующие компоненты:

  •  DBGrid1 – в который выводится таблица из БД.
  •  DBNavigator1 – который выполняет функции перемещения по таблице.
  •  Кнопка меню «Базы данных» выводит всё содержимое отдельно выбранной базы.
  •  Кнопка меню «Поиск» осуществляет поиск необходимой информации в отдельной таблице.
  •  Кнопка меню «Отчёты» открывает форму работы с отчётом, предварительно загрузив в неё данные из интересующей вас базы или результатов поиска.
  •  Кнопка меню «Выход», которая выводит сообщение о выходе, в котором необходимо выбрать один из вариантов либо выйти из программы, либо вернуться к форме.
  •  Кнопка «Добавление тренера» позволяет внести в таблицу «Тренеры» новую запись, заполнив перед этим все поля.
  •  Кнопка «Регистрация нового клиента»позволяет добавить в таблицу «Члены клуба» нового клиента, перед этим необходимо заполнить все поля. При удачном выполнении откроется форма с выдачей отчёта с описанием всех занесённых в таблицу полей.

Форма «Поиск по Ф.И.О.» позволяет найти в таблице «Тренеры» необходимую запись. Критерии поиска: Фамилия, Имя, Отчество. Заполнив все или хотя бы одну из них, мы получает результат поиска удовлетворяющий введённым данным.

Форма «Поиск по виду спорта» позволяет осуществить поиск необходимой записи или группы записей в таблице «Группы», для этого необходимо ввести интересующий вид спорта. В результате получаем список групп по данному виду спорта, а так же фамилию тренера, который ведёт занятия в этой группе.

Форма «Добавление тренера» осуществляет добавление в таблицу «Тренеры» новой записи. Для этого необходимо заполнить все поля и при удачном внесении новой записи, откроется форма «Res», в которой вы увидите, какие поля были добавлены и как они отобразились.

Форма «Регистрация нового клиента» осуществляет добавление в таблицу «Члены Клуба» новой записи. Для этого необходимо заполнить все поля и при удачном внесении новой записи, откроется форма «Res2», в которой вы увидите, какие поля были добавлены и как они отобразились.

Форма «Отчёты» содержит данные из интересующей вас таблицы или результата поиска. Так же в ней вы можете отредактировать эти данные и распечатать их.

  1.  
    Тестирование

Тестирование осуществлялось по принципу «Белый ящик».

Был выбран метод тестирования «Тестирование переходов между состояниями».

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

  1.  На главной форме:
    •  нажимаем на кнопку в пункте меню «Базы данных»
    •  Выбираем интересующую нас базу
    •  С помощью кнопок по таблицей можно удобно листать таблицу и при необходимости отредактировать или удалить запись
  2.  На форме «Поиск»:
  •  Выбираем критерий поиска (по ФИО или по виду спорта)
  •  Заполняем одно или несколько полей и нажимаем на кнопку с названием базы, в которой хотим найти запись.
  1.  На главной форме:
    •  Нажимаем на кнопку «Регистрация новичка» или           «Добавить тренера»
    •  Заполняем все поля
    •  Нажимаем на кнопку «Зарегистрироваться»
    •  Если данные внесены в базу, то появится окно с отчётом

Если одно из полей не было заполнено, то появится окно с ошибкой («необходимо заполнить все поля»)

Заключение

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

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

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

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

  1.  ГОСТ 7.1-84 Библиографическое описание документа. Общие требования и правила составления.
  2.  ГОСТ 19.201 – 78. Единая система программной документации. Техническое задание. Требования к содержанию и оформлению.
  3.  ГОСТ 19.401 – 78. Текст программы. Требования к содержанию и оформлению.
  4.  ГОСТ 19.402 – 78. Описание программы.
  5.  ГОСТ 19.503 – 79. Руководство системного программиста. Требования к содержанию и оформлению.
  6.  ГОСТ 19.505 – 79. Руководство оператора. Требования к содержанию и оформлению.
  7.  ГОСТ 24.207 – 80. Требования к содержанию документов по программному обеспечению.
  8.  Фленов М.Е. Библия программиста в среде Delphi, 2009.
  9.  Стандарты Единой системы программной документации (ЕСПД).
  10.  Шишкин В.В. Методические указания к курсовому проекту. – Смоленск, 2002.

Приложение №1. Листинг программы

unit Unit3;//начальная форма программы

interface

uses unit1,

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls, ExtCtrls, jpeg;

type

 Tvxod = class(TForm)

   Image1: TImage;

   Image2: TImage;

   procedure Image2Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 vxod: Tvxod;

implementation

{$R *.dfm}

procedure Tvxod.Image2Click(Sender: TObject);

begin

gl.Show;

vxod.Visible:=false;

end;

end.

unit Unit1;//главная форма программы с меню и кнопками

interface

uses  unit2,

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, DB, Grids, DBGrids, ADODB, StdCtrls, ExtCtrls, DBCtrls, jpeg, Menus;

type

 Tgl = class(TForm)

   DataSource1: TDataSource;

   DBGrid1: TDBGrid;

   ADOQuery1: TADOQuery;

   DBNavigator1: TDBNavigator;

   Button3: TButton;

   Image1: TImage;

   MainMenu1: TMainMenu;

   N1: TMenuItem;

   N2: TMenuItem;

   N3: TMenuItem;

   N4: TMenuItem;

   N5: TMenuItem;

   N6: TMenuItem;

   N7: TMenuItem;

   N8: TMenuItem;

   Button6: TButton;

   N9: TMenuItem;

   N10: TMenuItem;

   procedure N9Click(Sender: TObject);

   procedure N6Click(Sender: TObject);

   procedure N5Click(Sender: TObject);

   procedure N4Click(Sender: TObject);

   procedure Button6Click(Sender: TObject);

   procedure N8Click(Sender: TObject);

   procedure N7Click(Sender: TObject);

   procedure FormCreate(Sender: TObject);

   procedure Button3Click(Sender: TObject);

   procedure N10Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 gl: Tgl;

implementation

uses unit3,unit6,unit7,unit8,unit10;

{$R *.dfm}

procedure Tgl.Button3Click(Sender: TObject);//копирование пути к базе из главного компонента

begin

reg.show;

reg.adoquery1.Active:=false;//деактивируем компонент

reg.adoquery1.ConnectionString:=adoquery1.ConnectionString;//заносим источник данных

reg.ADOQuery1.Active:=true;//активируем компонент

reg.adoquery2.Active:=false;

reg.adoquery2.ConnectionString:=adoquery1.ConnectionString;

reg.ADOQuery2.Active:=true;

end;

procedure Tgl.Button6Click(Sender: TObject);//открытие формы регистрации тренера

begin

reg2.show;

end;

procedure Tgl.FormCreate(Sender: TObject);//универсальный путь к базе

begin

adoquery1.Active:=false;

adoquery1.ConnectionString:=('Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+extractfilepath(application.ExeName)+'SportClub.mdb;Persist Security Info=False');

//Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:\ТРПП\СпортКлуб\SportClub.mdb;Persist Security Info=False

end;

procedure Tgl.N4Click(Sender: TObject);//вывод всей базы Тренеры

begin

adoquery1.Active:=false;

ADOQuery1.Close;

adoquery1.SQL.Clear;//очищаем поле запросов

adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener');//запрос

adoquery1.ExecSQL;//выполняем запрос

adoquery1.Active:=true;

end;

procedure Tgl.N7Click(Sender: TObject);//процедура выхода из прораммы

begin

case messagebox(0,'Выход из программы','Выход',mb_yesno) of idyes:

begin

vxod.Close;

end;

idno:

begin

end;

end;

end;

procedure Tgl.N8Click(Sender: TObject);

begin

poisk1.Show;

end;

procedure Tgl.N9Click(Sender: TObject);//открытие формы поиска по тренерам

begin

poisk2.Show;

end;

procedure Tgl.N5Click(Sender: TObject);//вывод всей базы Члены Клуба

begin

adoquery1.Active:=false;

ADOQuery1.Close;

adoquery1.SQL.Clear;

adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl');

adoquery1.ExecSQL;

adoquery1.Active:=true;

end;

procedure Tgl.N6Click(Sender: TObject);//вывод всей базы Группы

begin

adoquery1.Active:=false;

ADOQuery1.Close;

adoquery1.SQL.Clear;

adoquery1.SQL.Add('SELECT groups.*,chl.фамилия FROM groups inner join chl on groups.группа=chl.группа');

adoquery1.ExecSQL;

adoquery1.Active:=true;

end;

function GridSelectAll(Grid: TDBGrid): Longint;//выделение всех строк для вывода в отчёты

begin

Result := 0;

 Grid.SelectedRows.Clear;

 with Grid.Datasource.DataSet do

 begin

   First;

   DisableControls;

   try

     while not EOF do

     begin

       Grid.SelectedRows.CurrentRowSelected := True;

       inc(Result);

       Next;

     end;

   finally

     EnableControls;

   end;

 end;

end;

procedure Tgl.N10Click(Sender: TObject);//открытие формы отчётов и передача информации

var

   i, j: Integer;

   s: string;

begin

form10.memo1.Clear;

GridSelectAll(DBGrid1);

 if DBGrid1.SelectedRows.Count>0 then

   with DBGrid1.DataSource.DataSet do

     for i:=0 to DBGrid1.SelectedRows.Count-1 do

     begin

       GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));

       for j := 0 to FieldCount-1 do

       begin

         if (j>0) then s:=s+'| ';

         s:=s+Fields[j].AsString;

       end;

       form10.memo1.Lines.add(s);

       s:= '';

     end;

     form10.Show;

end;

end.

unit Unit2;//форма регистрации нового клиента

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls, DBCtrls, DB, ADODB;

type

 Treg = class(TForm)

   Edit1: TEdit;

   Edit2: TEdit;

   Edit3: TEdit;

   Edit4: TEdit;

   Button1: TButton;

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Label4: TLabel;

   Label5: TLabel;

   DBLookupComboBox1: TDBLookupComboBox;

   DataSource1: TDataSource;

   ADOQuery1: TADOQuery;

   DataSource2: TDataSource;

   ADOQuery2: TADOQuery;

   DBLookupComboBox2: TDBLookupComboBox;

   Label6: TLabel;

   procedure DBLookupComboBox1Click(Sender: TObject);

   procedure Button1Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 reg: Treg;

implementation

  uses unit1,unit4,unit5;

{$R *.dfm}

procedure Treg.Button1Click(Sender: TObject);//добавление в базу нового клиента

var a,b,c,d,e,f:string;

begin

a:=edit1.Text;

b:=edit2.Text;

c:=edit3.Text;

d:=edit4.Text;

e:=dblookupcombobox1.Text;

f:=dblookupcombobox2.Text;

if (length(a)<>0) or (length(b)<>0) or (length(c)<>0) or (length(d)<>0) or (length(e)<>0) or (length(f)<>0)then begin

gl.ADOQuery1.Close;

gl.ADOQuery1.SQL.Clear;

gl.ADOQuery1.SQL.Add('insert into Chl(фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа)values("'+a+'","'+b+'","'+c+'","'+d+'","'+e+'","0","'+f+'")');

gl.ADOQuery1.ExecSQL;

yd.Visible:=true;

yd.Label3.Caption:=edit1.Text;

yd.Label4.Caption:=edit2.Text;

yd.Label5.Caption:=edit3.Text;

yd.Label6.Caption:=edit4.Text;   

yd.Label7.Caption:=dblookupcombobox1.Text;

yd.Label8.Caption:=dblookupcombobox2.Text;

end

else

neyd.Visible:=true;

 end;

procedure Treg.DBLookupComboBox1Click(Sender: TObject);//передача параметров в компонент

var q:string;

begin

q:=dblookupcombobox1.Text;

adoquery2.Active:=false;

ADOQuery2.Close;

adoquery2.SQL.Clear;

adoquery2.SQL.Add('SELECT* FROM groups where спорт="'+q+'"');

adoquery2.ExecSQL;

adoquery2.Active:=true;

end;

end.

unit Unit4;//форма отчёта о внесении нового тренера

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls;

type

 Tyd = class(TForm)

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Label4: TLabel;

   Label5: TLabel;

   Label6: TLabel;

   Label7: TLabel;

   Label8: TLabel;

   procedure FormClose(Sender: TObject; var Action: TCloseAction);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 yd: Tyd;

implementation

uses unit2,unit6;

{$R *.dfm}

procedure Tyd.FormClose(Sender: TObject; var Action: TCloseAction);//очистка полей в формах

begin

reg.edit1.Clear;//очищаем поле ввода

reg.edit2.Clear;

reg.edit3.Clear;

reg.edit4.Clear;

reg2.edit1.Clear;

reg2.edit2.Clear;

reg2.edit3.Clear;

reg2.edit4.Clear;

reg2.Edit5.Clear;

end;

end.

unit Unit5;//форма ошибки внесения новой записи

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls;

type

 Tneyd = class(TForm)

   Label1: TLabel;

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 neyd: Tneyd;

implementation

{$R *.dfm}

end.

unit Unit6;//форма регистрации нового тренера

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls, DBCtrls, DB, ADODB;

type

 Treg2 = class(TForm)

   Button1: TButton;

   Label5: TLabel;

   Label3: TLabel;

   Edit3: TEdit;

   Label2: TLabel;

   Edit2: TEdit;

   Edit1: TEdit;

   Label1: TLabel;

   Edit4: TEdit;

   Edit5: TEdit;

   Label4: TLabel;

   procedure Button1Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 reg2: Treg2;

implementation

uses Unit1, Unit4, Unit5;

{$R *.dfm}

procedure Treg2.Button1Click(Sender: TObject);//внесение в базу новой записи

var a,b,c,e,d:string;

begin

d:=edit5.Text;

a:=edit1.Text;

b:=edit2.Text;

c:=edit3.Text;

e:=edit4.Text;

if (length(a)<>0) or (length(b)<>0) or (length(c)<>0) or (length(e)<>0) then begin

gl.ADOQuery1.Close;

gl.ADOQuery1.SQL.Clear;

gl.ADOQuery1.SQL.Add('insert into trener(код,фамилия,имя,отчество,вид_спорта)values("'+d+'","'+a+'","'+b+'","'+c+'","'+e+'")');

gl.ADOQuery1.ExecSQL;

gl.ADOQuery1.SQL.Clear;

gl.ADOQuery1.SQL.Add('insert into groups(спорт,группа)values("'+e+'","'+d+'")');

gl.ADOQuery1.ExecSQL;

yd.Visible:=true;

yd.Label3.Caption:=edit1.Text;

yd.Label4.Caption:=edit2.Text;

yd.Label5.Caption:=edit3.Text;

yd.Label6.Caption:=edit4.Text;

end

else

neyd.Visible:=true;

 end;

end.

unit Unit7;//форма поиска по виду спорта

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls;

type

 TPoisk1 = class(TForm)

   Button1: TButton;

   Button4: TButton;

   Button2: TButton;

   edit1: TEdit;

   Label1: TLabel;

   procedure Button4Click(Sender: TObject);

   procedure Button2Click(Sender: TObject);

   procedure Button1Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Poisk1: TPoisk1;

implementation

uses unit1;

{$R *.dfm}

procedure Tpoisk1.Button1Click(Sender: TObject);//поиск по таблице Тренеры

begin

gl.adoquery1.Active:=false;

gl.ADOQuery1.Close;

gl.adoquery1.SQL.Clear;

if length(edit1.text)=0 then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener')

else

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where вид_спорта="'+edit1.text+'"');

gl.adoquery1.ExecSQL;

gl.adoquery1.Active:=true;

end;

procedure Tpoisk1.Button2Click(Sender: TObject);//поиск по таблице Члены Клуба

begin

gl.adoquery1.Active:=false;

gl.ADOQuery1.Close;

gl.adoquery1.SQL.Clear;

if length(edit1.text)<>0 then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM chl where вид_спорта="'+edit1.text+'"')

else

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl');

gl.adoquery1.ExecSQL;

gl.adoquery1.Active:=true;

end;

procedure Tpoisk1.Button4Click(Sender: TObject);//поиск по таблице Группы

begin

gl.adoquery1.Active:=false;

gl.ADOQuery1.Close;

gl.adoquery1.SQL.Clear;

if length(edit1.text)<>0 then begin

gl.adoquery1.SQL.Add('SELECT groups.*,chl.фамилия FROM groups inner join chl on groups.группа=chl.группа where groups.спорт="'+edit1.text+'"');

end

else

gl.adoquery1.SQL.Add('SELECT groups.*,chl.фамилия FROM groups inner join chl on groups.группа=chl.группа');

gl.adoquery1.ExecSQL;

gl.adoquery1.Active:=true;

end;

end.

unit Unit8;//форма поиска по Ф.И.О.

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls;

type

 TPoisk2 = class(TForm)

   Button1: TButton;

   Button2: TButton;

   Edit1: TEdit;

   Edit2: TEdit;

   Edit3: TEdit;

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   procedure Button2Click(Sender: TObject);

   procedure Button1Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Poisk2: TPoisk2;

implementation

uses Unit1;

{$R *.dfm}

procedure TPoisk2.Button2Click(Sender: TObject);//поиск по одному или нескольким полям в //таблице Члены Клуба

begin

gl.adoquery1.Active:=false;

gl.ADOQuery1.Close;

gl.adoquery1.SQL.Clear;

if (length(edit1.text)<>0) and (length(edit2.text)<>0) and (length(edit3.text)<>0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM chl where фамилия="'+edit1.text+'" and имя="'+edit2.Text+'" and отчество="'+edit3.Text+'"');

if (length(edit3.text)=0) and(length(edit2.Text)<>0) and(length(edit1.Text)<>0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl where имя="'+edit2.Text+'" and фамилия="'+edit1.Text+'"');

if (length(edit1.Text)=0) and(length(edit3.Text)<>0) and(length(edit2.Text)<>0)then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl where имя="'+edit2.Text+'" and отчество="'+edit3.Text+'"');

if (length(edit2.Text)=0) and(length(edit3.Text)<>0) and(length(edit1.Text)<>0)then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl where отчество="'+edit3.Text+'" and фамилия="'+edit1.Text+'"');

if (length(edit1.Text)=0)and(length(edit2.Text)=0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl where отчество="'+edit3.Text+'"');

if (length(edit1.Text)=0)and(length(edit3.Text)=0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl where имя="'+edit2.Text+'"');

if (length(edit2.Text)=0)and(length(edit3.Text)=0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,дата_рождения,вид_спорта,стаж,группа FROM Chl where фамилия="'+edit1.Text+'"');

gl.adoquery1.ExecSQL;

gl.adoquery1.Active:=true;

end;

procedure TPoisk2.Button1Click(Sender: TObject);//поиск по одному или нескольким полям в //таблице Тренеры

begin

gl.adoquery1.Active:=false;

gl.ADOQuery1.Close;

gl.adoquery1.SQL.Clear;

if (length(edit1.text)<>0) and (length(edit2.text)<>0) and (length(edit3.text)<>0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where (фамилия="'+edit1.text+'" and имя="'+edit2.Text+'" and отчество="'+edit3.Text+'")');

if (length(edit3.text)=0) and(length(edit2.Text)<>0) and(length(edit1.Text)<>0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where (имя="'+edit2.Text+'" and фамилия="'+edit1.Text+'")');

if (length(edit1.Text)=0) and(length(edit3.Text)<>0) and(length(edit2.Text)<>0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where (имя="'+edit2.Text+'" and отчество="'+edit3.Text+'")');

if (length(edit2.Text)=0) and(length(edit3.Text)<>0) and(length(edit1.Text)<>0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where (отчество="'+edit3.Text+'" and фамилия="'+edit1.Text+'")');

if (length(edit1.Text)=0)and(length(edit2.Text)=0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where отчество="'+edit3.Text+'"');

if (length(edit1.Text)=0)and(length(edit3.Text)=0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where имя="'+edit2.Text+'"');

if (length(edit2.Text)=0)and(length(edit3.Text)=0) then

gl.adoquery1.SQL.Add('SELECT фамилия,имя,отчество,вид_спорта FROM trener where фамилия="'+edit1.Text+'"');

gl.adoquery1.ExecSQL;

gl.adoquery1.Active:=true;

end;

end.

unit Unit10;//форма печати отчётов

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls, Printers;

type

 TForm10 = class(TForm)

   Memo1: TMemo;

   Button1: TButton;

   PrintDialog1: TPrintDialog;

   PrinterSetupDialog1: TPrinterSetupDialog;

   procedure Button1Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form10: TForm10;

implementation

{$R *.dfm}

procedure TForm10.Button1Click(Sender: TObject);//процедура печати

var i, j:integer;

   Prn:textfile;

begin

if PrintDialog1.Execute then

for I := 1 to PrintDialog1.Copies do

 begin

 AssignPrn(Prn);

    Rewrite(Prn);

    for j := 0 to Memo1.Lines.Count - 1 do

      Writeln(Prn, Memo1.Lines.Strings[j]);

    CloseFile(Prn);

  end;

end;

end.

Приложение №2. Руководство пользователя.

  •  Программа запускается при двойном клике на SportClub.exe.
  •  Для входа в базу необходимо нажать на надпись «Вход в базу».
  •  Просмотр конкретной базы осуществляется в пункте главного меню «Базы данных».
  •  Для поиска необходимо выбрать в пункте меню «Поиск» требуемый критерий поиска («по ФИО» или «по виду спорта») и выбрать интересующую Вас базу.
  •  При необходимости работы с отчётами, необходимой зайти в пункт меню «Отчёты» и при необходимости распечатать отчёт.
  •  Добавление новых данных осуществляется кнопками на главной форме программы.
  •  Для выхода из программы выберите в меню пункт «Выход»


Изм.

Лист

№ докум.

Подпись

Дата

Лист

2

          КП   230105.11.14

Разраб.

Коструба А.В..

Провер.

Студёнова О.В.

Реценз.

Н. Контр.

Утверд.

Курсовой проект по теме: Разработка ПП АИС «Колледжи Москвы»

Лит.

Листов

5

Группа 47

Изм.

Лист

№ докум.

Подпись

Дата

Лист

3

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

4

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

5

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

6

           КП   230105.11.14

Управление с помощью запросов SQL

Отчёты

Результаты запросов

АИС колледжы

Работа с базами данных в Delphi

Изм.

Лист

№ докум.

Подпись

Дата

Лист

7

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

8

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

9

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

10

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

11

           КП   230105.11.14

Изм.

Лист

№ докум.

Подпись

Дата

Лист

12

           КП   230105.11.14




1. Социальная работа с детьми, оставшимися без попечения родителей
2. Валерий Гергие
3. МАШАВ представляют Международный семинар на АНГЛИЙСКОМ языке PsychoSocil Cre nd Support for Children nd dolescents Infected nd-or f
4. І. Однак наявність у банера гіперпосилання можливості анімованого зображення і можливості дзвінка з банера
5. . События в Югославии в начале 90х годов развивались стремительно во многом непредсказуемо и трагично.
6. географічних і етнографічних та політичних ознак сформувалися певні історичні провінції- Картлі Кахеті М
7. Понятие логистики В экономической литературе встречаются различные определения логистики
8. Реферат- Покадровый анализ
9. ТЕМАТИКА Вопросы для подготовки к экзамену СОД 3 семестр 1
10. . Методология расчёта платежного баланса [3] Структура платежного баланса [4] Торговый баланс.
11. На тему- Современные программные и технические средства в процессе подготовки управленческих решений
12. В Карлов кандидат исторических наук доцент кафедры общественных наук
13. Зимушка зима Конспект
14. общество ~ природа
15. Колос ПродукцияСтоимость; ФирмыянварьСтоимость Переименуйте Лист 1 ~ в Стоимости II
16. Концепция генезиса феодализма в трудах Н.-Д. Фюстеля де Куланжа
17. Заря10 к Савина Л
18. лекциями с высланными по эл
19. 2 Лабораторная работа 1
20. Курсовая работа- Міжбанківський кредит