70987

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

Курсовая

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

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

Русский

2014-10-31

213 KB

3 чел.

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

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

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

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

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

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

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

(подпись)

      Проверил  ______________________________  

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

Красногорск

2012 год

Содержание

[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. Данное заключение основывалось на следующем.

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

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

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

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

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

Запуск программы осуществляется с помощью файла college.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 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)+'baza.mdb;Persist Security Info=False');

//Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:\baza.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 college');//запрос

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 fakultet where специальность="'+q+'"');

adoquery2.ExecSQL;

adoquery2.Active:=true;

end;

end.

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 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 college(код,название,адрес,контакты,форма_обучения)values("'+d+'","'+a+'","'+b+'","'+c+'","'+e+'")');

gl.ADOQuery1.ExecSQL;

gl.ADOQuery1.SQL.Clear;

gl.ADOQuery1.SQL.Add('insert into fakultet(форма_обучения,факультет)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 college')

else

gl.adoquery1.SQL.Add('SELECT название,адрес,контакты,специальность FROM college 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 fakultet.*,chl.название FROM fakultet inner join chl on fakultet.факультет=chl.факультет where fakultet.форма_обучения="'+edit1.text+'"');

end

else

gl.adoquery1.SQL.Add('SELECT fakultet.*,chl.название FROM fakultet inner join chl on fakultet.fakultet =chl.fakultet ');

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 college 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 college 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 college 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 college where (контакты="'+edit3.Text+'" and название="'+edit1.Text+'")');

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

gl.adoquery1.SQL.Add('SELECT название,адрес,контакты,факультет FROM college where контакты="'+edit3.Text+'"');

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

gl.adoquery1.SQL.Add('SELECT название,адрес,контакты,факультет FROM college where адрес="'+edit2.Text+'"');

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

gl.adoquery1.SQL.Add('SELECT название,адрес,контакты,факультет FROM college 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. Руководство пользователя.

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


Изм.

Лист

№ докум.

Подпись

Дата

Лист

2

          КП   230105.12.35

Разраб.

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

Провер.

Реценз.

Н. Контр.

Утверд.

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

Лит.

Листов

25

Группа 47

Изм.

Лист

№ докум.

Подпись

Дата

Лист

3

           КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

4

           КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

5

          КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

6

           КП   230105. 12.35

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

Отчёты

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

АИС Колледжи

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

Изм.

Лист

№ докум.

Подпись

Дата

Лист

7

           КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

8

           КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

9

           КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

10

           КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

11

           КП   230105. 12.35

Изм.

Лист

№ докум.

Подпись

Дата

Лист

12

           КП   230105. 12.35

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

АИС Колледжи

Подсистема формирования и печати отчетов

Подсистема работы с базой данных

Добавление колледжа

Добавление адреса

Выбор группы

Выбор специальности

Ведомость за отчетный период

Печать отчетов

Удаление колледжа

Удаление адреса

Редактирование данных


 

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

25856. Методы определения рейтинга банка 23 KB
  проблемные – банки кот имеют до трех недостатков: убыток на отчетную дату несоблюдение норматива достаточности капитала на отчетную дату недовзнос в фонд обязательных резервов.Генеральный коэффициент надежности уставный капитал активы приносящие доход норматив 1.Мгновенной ликвидности наиболее ликвидные активы обязательства до востребования норматив 2.Кросскоэффициент сумма обязательств активы приносящ доход норматив 3.
25857. Методы оценки и защиты от банковских рисков 24.5 KB
  Суть статистических методов оценки риска заключается в определении вероятности возникновения потерь на основе статистических данных предшествующего периода и установлении зоны риска коэффициента риска и т. Аналитические методы позволяют определить вероятность возникновения потерь на основе математических моделей и используются в основном для анализа риска инвестиционных проектов. Возможно использование таких методов как анализ чувствительности метод корректировки нормы дисконта с учетом риска метод эквивалентов метод сценариев....
25860. Оценка соотношения собственных и привлеченных средств банка 23.5 KB
  развитие; фонд основных средств – создается из прибыли как источник приобретения основных средств Эмиссионный доход – источником является средства от продажи акций по цене выше номинала Прибыль – как превышение доходов над расходами банка. Помимо собственных средств банк пользуется привлеченными средствами.Структура обязательств имеет 2 группы: заемные средства – кредиты ЦБ и кредиты др.
25864. мажорных обстоятельств. 24 KB
  Под риском понимается угроза потери части своих ресурсов недополучение доходов или произведение дополнительных расходов в результате проведения финансовых операций.Внутренние риски: Риск ликвидности; Процентный риск; Кредитный риск; Валютный риск Внешние риски: Рыночный риск; Политический риск; Риск изменения конъюнктуры рынка; Страновой риск; Риск форсмажорных обстоятельств. Процентный риск связан с колебаниями процентных ставок на рынке.