Автор работы: Пользователь скрыл имя, 02 Декабря 2012 в 19:04, курсовая работа
Целю данной курсовой работы является разработка эффективного программного обеспечения для автоматизации работы книжного каталога.
Для достижения этой цели нужно выполнить две задачи: спроектировать базу данных и разработать дружественный интерфейс.
ВВЕДЕНИЕ 4
1 Постановка задачи 6
2 Проектирование структуры базы данных 7
3 Обоснование выбора среды программирования 9
4 Описание методов решения задач, алгоритмов, структуры программы 11
5 Руководство программиста 13
6 Руководство пользователя 14
ЗАКЛЮЧЕНИЕ 32
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 33
ПРИЛОЖЕНИЕ 34
then Key:=#0;
end;
procedure TForm3.LabeledEdit5KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
then Key:=#0;
end;
procedure TForm3.LabeledEdit7KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
then Key:=#0;
end;
//Очистить поиск
procedure TForm3.BitBtn2Click(Sender: TObject);
begin
Form3.LabeledEdit1.Clear;
Form3.LabeledEdit2.Clear;
Form3.LabeledEdit3.Clear;
Form3.LabeledEdit4.Clear;
Form3.LabeledEdit5.Clear;
Form3.LabeledEdit6.Clear;
Form3.LabeledEdit7.Clear;
Form3.ComboBox1.ItemIndex:=0;
end;
//Поиск форма
procedure TForm3.BitBtn1Click(Sender: TObject);
var
str: String;
begin
str:= 'SELECT * FROM books WHERE 1=1 ' ;
if Form3.ComboBox1.Itemindex = 1 then str:= str + ' AND nal Like ''%Имеется%''';
if Form3.ComboBox1.Itemindex = 2 then str:= str + ' AND nal Like ''%Нет в наличии%''';
if Form3.LabeledEdit1.Text <> '' then str:= str + ' AND author LIKE "%'+ Form3.LabeledEdit1.Text+'%" ';
if Form3.LabeledEdit2.Text <> '' then str:= str + ' AND title LIKE "%'+ Form3.LabeledEdit2.Text+'%" ';
if Form3.LabeledEdit3.Text <> '' then str:= str + ' AND kateg LIKE "%'+ Form3.LabeledEdit3.Text+'%" ';
if Form3.LabeledEdit4.Text <> '' then str:= str + ' AND price >='+ Form3.LabeledEdit4.Text;
if Form3.LabeledEdit5.Text <> '' then str:= str + ' AND price <='+ Form3.LabeledEdit5.Text;
if Form3.LabeledEdit6.Text <> '' then str:= str + ' AND price >='+ Form3.LabeledEdit6.Text;
if Form3.LabeledEdit7.Text <> '' then str:= str + ' AND price <='+ Form3.LabeledEdit7.Text;
str:=str+';';
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Form3.Label3.Caption:='
end;
//Сортировка gred
procedure TForm3.DBGridEh1TitleClick(
var
i:integer;
begin
if Unit5.DataModule5.ADOQuery1.
if Unit5.DataModule5.ADOQuery1.
if Column.Title.SortMarker=
begin
Unit5.DataModule5.ADOQuery1.
Column.Title.SortMarker:=
end
else
if Column.Title.SortMarker=smUpEh then
begin
Unit5.DataModule5.ADOQuery1.
Column.Title.SortMarker:=
end
else
if
Column.Title.SortMarker=
begin
Unit5.DataModule5.ADOQuery1.
Column.Title.SortMarker:=
end;
for i:=0 to DBGridEh1.Columns.Count-1 do
if DBGridEh1.Columns[i]<>Column then
DBGridEh1.Columns[i].Title.
end;
procedure TForm3.FormCreate(Sender: TObject);
begin
Form3.LabeledEdit1.MaxLength:=
Form3.LabeledEdit2.MaxLength:=
Form3.LabeledEdit3.MaxLength:=
Form3.LabeledEdit4.MaxLength:=
Form3.LabeledEdit5.MaxLength:=
Form3.LabeledEdit6.MaxLength:=
Form3.LabeledEdit7.MaxLength:=
end;
//Поиск меню
procedure TForm3.N8Click(Sender: TObject);
var
str: String;
begin
if Form6.ShowModal = mrOk then
begin
str:= 'SELECT * FROM books WHERE 1=1 ' ;
if Form6.ComboBox1.Itemindex = 1 then str:= str + ' AND nal Like ''%Имеется%''';
if Form6.ComboBox1.Itemindex = 2 then str:= str + ' AND nal Like ''%Нет в наличии%''';
if Form6.Edit1.Text <> '' then str:= str + ' AND author LIKE "%'+ Form6.Edit1.Text+'%" ';
if Form6.Edit2.Text <> '' then str:= str + ' AND title LIKE "%'+ Form6.Edit2.Text+'%" ';
if Form6.Edit3.Text <> '' then str:= str + ' AND kateg LIKE "%'+ Form6.Edit3.Text+'%" ';
if Form6.Edit4.Text <> '' then str:= str + ' AND price >='+ Form6.Edit4.Text;
if Form6.Edit5.Text <> '' then str:= str + ' AND price <='+ Form6.Edit5.Text;
if Form6.Edit6.Text <> '' then str:= str + ' AND price >='+ Form6.Edit6.Text;
if Form6.Edit7.Text <> '' then str:= str + ' AND price <='+ Form6.Edit7.Text;
str:=str+';';
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Form3.Label3.Caption:='
end;
end;
//Одобрить заявку
procedure TForm3.ListBox1Click(Sender: TObject);
begin
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Form3.ListBox1.DeleteSelected;
ShowMessage('Было куплено: '+IntToStr(n)+'шт. Осталось в наличии: '+IntToStr(k2)+'шт.');
end;
//О программе
procedure TForm3.N14Click(Sender: TObject);
begin
Form12.Show;
end;
//Справка
procedure TForm3.N13Click(Sender: TObject);
begin
Form13.Show;
end;
//Сортировка автор ASC
procedure TForm3.RadioButton1Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка автор DESC
procedure TForm3.RadioButton2Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка название ASC
procedure TForm3.RadioButton3Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка название DESC
procedure TForm3.RadioButton4Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка категория ASC
procedure TForm3.RadioButton5Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка категория DESC
procedure TForm3.RadioButton6Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка цена ASC
procedure TForm3.RadioButton7Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка цена DESC
procedure TForm3.RadioButton8Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка наличие ASC
procedure TForm3.RadioButton9Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка наличие DESC
procedure TForm3.RadioButton10Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка количество ASC
procedure TForm3.RadioButton11Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка количество DESC
procedure TForm3.RadioButton12Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
procedure TForm3.Timer3Timer(Sender: TObject);
begin
Form3.ListBox1.Refresh;
end;
end.
Форма пользователя «Покупатель»
unit Unit4;
var
Form4: TForm4;
s: String;
n, k1, k2: Integer;
implementation
uses Unit1, Unit2, Unit3, Unit5, Unit6, Unit7, Unit11, Unit12, Unit13,
Unit14, Unit15;
{$R *.dfm}
//Выход
procedure TForm4.N7Click(Sender: TObject);
var
R: Word; // переменная, в которой хранится результат
begin
R:=MessageDlg('Вы
if R=mrYes then // если нажата кнопка Yes
begin
Application.Terminate
end;
if R=mrNo then // если нажата кнопка No
begin
//
завершаем работу программы
end;
end;
//Смена пользователя
procedure TForm4.N5Click(Sender: TObject);
begin
Form4.Close;
Form1.Show;
Form1.Width:=220;
Form1.Height:=225;
Form1.BitBtn2.Height:=41;
Form1.BitBtn2.Width:=161;
Form1.BitBtn2.Top:=72;
Form1.BitBtn2.Left:=216;
Form1.LabeledEdit1.Visible:=
Form1.BitBtn2.Visible:=False;
Form1.RadioButton3.Checked:=
if Form15.Showing then
begin
Form15.Close;
end;
if Form14.Showing then
begin
Form14.Close;
end;
if Form13.Showing then
begin
Form13.Close;
end;
if Form12.Showing then
begin
Form12.Close;
end;
end;
//Excel
procedure TForm4.Excel1Click(Sender: TObject);
var
Ex: Variant;
row, col: Integer;
begin
DBGridEh1.DataSource.DataSet.
Ex:=CreateOleObject('Excel.
Ex.Workbooks.Add;
Ex.WorkBooks[1].WorkSheets[1].
for row :=0 to DBGridEh1.DataSource.DataSet.
begin
if
row=0 then DBGridEh1.DataSource.DataSet.
for col :=0 to DBGridEh1.Columns.Count-1 do
begin
Ex.WorkBooks[1].WorkSheets[1].
Ex.WorkBooks[1].WorkSheets[1].
Ex.WorkBooks[1].WorkSheets[1].
end ;
end;
Ex.Visible := True;
Unit5.DataModule5.ADOQuery1.
end;
//Печать
procedure TForm4.N3Click(Sender: TObject);
begin
PrintDBGridEh1.Preview;
end;
//Дата и время
procedure TForm4.Timer1Timer(Sender: TObject);
begin
Label1.Caption:='Время : ' + TimeToStr(time);
Label2.Caption:='Дата : '+ DateToStr(date);
Application.ProcessMessages;
end;
//Обновить автомат
procedure TForm4.Timer2Timer(Sender: TObject);
begin
try
Unit5.DataModule5.ADOQuery1.
Form4.Label3.Caption:='
Unit5.DataModule5.ADOQuery1.
except
on e:Exception do
end;
end;
//Обновить меню
procedure TForm4.N12Click(Sender: TObject);
begin
try
Unit5.DataModule5.ADOQuery1.
except
on e:Exception do
end;
Form4.Label3.Caption:='
end;
//Все записи
procedure TForm4.N11Click(Sender: TObject);
begin
try
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
except
on e:Exception do
end;
Form4.Label3.Caption:='
end;
procedure TForm4.LabeledEdit4KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
then Key:=#0;
end;
procedure TForm4.LabeledEdit5KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
then Key:=#0;
end;
procedure TForm4.LabeledEdit6KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
then Key:=#0;
end;
procedure TForm4.LabeledEdit7KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
then Key:=#0;
end;
//Очистить поиск
procedure TForm4.BitBtn2Click(Sender: TObject);
begin
Form4.LabeledEdit1.Clear;
Form4.LabeledEdit2.Clear;
Form4.LabeledEdit3.Clear;
Form4.LabeledEdit4.Clear;
Form4.LabeledEdit5.Clear;
Form4.LabeledEdit6.Clear;
Form4.LabeledEdit7.Clear;
Form4.ComboBox1.ItemIndex:=0;
end;
//Поиск форма
procedure TForm4.BitBtn1Click(Sender: TObject);
var
str: String;
begin
str:= 'SELECT * FROM books WHERE 1=1 ' ;
if Form4.ComboBox1.Itemindex = 1 then str:= str + ' AND nal Like ''%Имеется%''';
if Form4.ComboBox1.Itemindex = 2 then str:= str + ' AND nal Like ''%Нет в наличии%''';
if Form4.LabeledEdit1.Text <> '' then str:= str + ' AND author LIKE "%'+ Form4.LabeledEdit1.Text+'%" ';
if Form4.LabeledEdit2.Text <> '' then str:= str + ' AND title LIKE "%'+ Form4.LabeledEdit2.Text+'%" ';
if Form4.LabeledEdit3.Text <> '' then str:= str + ' AND kateg LIKE "%'+ Form4.LabeledEdit3.Text+'%" ';
if Form4.LabeledEdit4.Text <> '' then str:= str + ' AND price >='+ Form4.LabeledEdit4.Text;
if Form4.LabeledEdit5.Text <> '' then str:= str + ' AND price <='+ Form4.LabeledEdit5.Text;
if Form4.LabeledEdit6.Text <> '' then str:= str + ' AND price >='+ Form4.LabeledEdit6.Text;
if Form4.LabeledEdit7.Text <> '' then str:= str + ' AND price <='+ Form4.LabeledEdit7.Text;
str:=str+';';
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Form4.Label3.Caption:='
end;
//Сортировка gred
procedure TForm4.DBGridEh1TitleClick(
var
i:integer;
begin
if Unit5.DataModule5.ADOQuery1.
if Unit5.DataModule5.ADOQuery1.
if Column.Title.SortMarker=
begin
Unit5.DataModule5.ADOQuery1.
Column.Title.SortMarker:=
end
else
if Column.Title.SortMarker=smUpEh then
begin
Unit5.DataModule5.ADOQuery1.
Column.Title.SortMarker:=
end
else
if
Column.Title.SortMarker=
begin
Unit5.DataModule5.ADOQuery1.
Column.Title.SortMarker:=
end;
for i:=0 to DBGridEh1.Columns.Count-1 do
if DBGridEh1.Columns[i]<>Column then
DBGridEh1.Columns[i].Title.
end;
procedure TForm4.FormCreate(Sender: TObject);
begin
Form4.LabeledEdit1.MaxLength:=
Form4.LabeledEdit2.MaxLength:=
Form4.LabeledEdit3.MaxLength:=
Form4.LabeledEdit4.MaxLength:=
Form4.LabeledEdit5.MaxLength:=
Form4.LabeledEdit6.MaxLength:=
Form4.LabeledEdit7.MaxLength:=
end;
//Поиск меню
Информация о работе Разработка программы для автоматизации работы книжного каталога