Автор работы: Пользователь скрыл имя, 02 Декабря 2012 в 19:04, курсовая работа
Целю данной курсовой работы является разработка эффективного программного обеспечения для автоматизации работы книжного каталога.
Для достижения этой цели нужно выполнить две задачи: спроектировать базу данных и разработать дружественный интерфейс.
ВВЕДЕНИЕ 4
1 Постановка задачи 6
2 Проектирование структуры базы данных 7
3 Обоснование выбора среды программирования 9
4 Описание методов решения задач, алгоритмов, структуры программы 11
5 Руководство программиста 13
6 Руководство пользователя 14
ЗАКЛЮЧЕНИЕ 32
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 33
ПРИЛОЖЕНИЕ 34
if Form2.LabeledEdit7.Text <> '' then str:= str + ' AND price <='+ Form2.LabeledEdit7.Text;
str:=str+';';
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Form2.Label3.Caption:='
end;
//Сортировка gred
procedure TForm2.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 TForm2.BitBtn5Click(Sender: TObject);
begin
Form2.LabeledEdit8.Clear;
Form2.LabeledEdit9.Clear;
Form2.LabeledEdit10.Clear;
Form2.LabeledEdit11.Clear;
Form2.SpinEdit1.Text:='0';
Form2.ComboBox4.ItemIndex:=-1;
end;
//Добавить форма
procedure TForm2.BitBtn4Click(Sender: TObject);
var
st: String;
begin
if (LabeledEdit8.Text = '') then
begin
LabeledEdit8.SetFocus;
Application.MessageBox('Вы заполнили не все поля!','Предупреждение!');
Exit;
end;
if (LabeledEdit9.Text = '') then
begin
LabeledEdit9.SetFocus;
Application.MessageBox('Вы заполнили не все поля!','Предупреждение!');
Exit;
end;
if (LabeledEdit10.Text = '') then
begin
LabeledEdit10.SetFocus;
Application.MessageBox('Вы заполнили не все поля!','Предупреждение!');
Exit;
end;
if (LabeledEdit11.Text = '') then
begin
LabeledEdit11.SetFocus;
Application.MessageBox('Вы заполнили не все поля!','Предупреждение!');
Exit;
end;
if (ComboBox4.ItemIndex = -1) then
begin
ComboBox4.SetFocus;
Application.MessageBox('
Exit;
end;
case Form2.ComboBox4.ItemIndex of
0: st := 'Имеется';
1: st := 'Нет в наличии';
end;
Unit5.DataModule5.ADOQuery1.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
Unit5.DataModule5.ADOQuery1.
Form2.LabeledEdit8.Clear;
Form2.LabeledEdit9.Clear;
Form2.LabeledEdit10.Clear;
Form2.LabeledEdit11.Clear;
Form2.ComboBox4.ItemIndex:=-1;
Form2.SpinEdit1.Clear;
try
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Form2.Label3.Caption:='
Form3.Label3.Caption:='
Form4.Label3.Caption:='
except
on e:Exception do
end;
end;
//Удаление форма
procedure TForm2.BitBtn6Click(Sender: TObject);
var
R: Word; // переменная, в которой хранится результат
begin
R:=MessageDlg('Вы
if R=mrYes then // если нажата кнопка Yes
begin
Unit5.DataModule5.ADOQuery1.
end;
if R=mrNo then // если нажата кнопка No
begin
end;
Form2.Label3.Caption:='
end;
//Редактирование форма
procedure TForm2.BitBtn7Click(Sender: TObject);
var
st: String;
begin
case Form2.DBComboBox2.ItemIndex of
0: st := 'Имеется';
1: st := 'Нет в наличии';
end;
Unit5.DataModule5.ADOQuery1.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
Unit5.DataModule5.ADOQuery1.
Form2.Label3.Caption:='
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
Form2.LabeledEdit1.MaxLength:=
Form2.LabeledEdit2.MaxLength:=
Form2.LabeledEdit3.MaxLength:=
Form2.LabeledEdit4.MaxLength:=
Form2.LabeledEdit5.MaxLength:=
Form2.LabeledEdit6.MaxLength:=
Form2.LabeledEdit7.MaxLength:=
Form2.LabeledEdit8.MaxLength:=
Form2.LabeledEdit9.MaxLength:=
Form2.LabeledEdit10.MaxLength:
Form2.LabeledEdit11.MaxLength:
end;
//Поис меню
procedure TForm2.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.
Form2.Label3.Caption:='
end;
end;
//Добавить меню
procedure TForm2.N13Click(Sender: TObject);
var
st: string;
begin
if Form8.ShowModal = mrOk then
begin
case Form8.ComboBox1.ItemIndex of
0: st := 'Имеется';
1: st := 'Нет в наличии';
end;
Unit5.DataModule5.ADOQuery1.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
Unit5.DataModule5.ADOQuery1.
Form8.Edit1.Clear;
Form8.Edit2.Clear;
Form8.Edit3.Clear;
Form8.Edit4.Clear;
Form8.SpinEdit1.Text:='0';
Form8.ComboBox1.ItemIndex:=-1;
Form2.Label3.Caption:='
end;
end;
procedure TForm2.N14Click(Sender: TObject);
var
R: Word; // переменная, в которой хранится результат
begin
if Form9.ShowModal = mrOk then
begin
R:=MessageDlg('Вы
действитеьно хотите удалить эту запись?',mtConfirmation,[
if R=mrYes then // если нажата кнопка Yes
begin
Unit5.DataModule5.ADOQuery1.
end;
if R=mrNo then // если нажата кнопка No
begin
end;
Form2.Label3.Caption:='
end;
end;
//Редактирование меню
procedure TForm2.N15Click(Sender: TObject);
var
st: String;
begin
if Form10.ShowModal = mrOk then
begin
case Form10.DBComboBox1.ItemIndex of
0: st := 'Имеется';
1: st := 'Нет в наличии';
end;
Unit5.DataModule5.ADOQuery1.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
DBGridEh1.DataSource.DataSet.
Unit5.DataModule5.ADOQuery1.
Form2.Label3.Caption:='
end;
end;
//О программе
procedure TForm2.N18Click(Sender: TObject);
begin
Form12.Show;
end;
//Справка
procedure TForm2.N17Click(Sender: TObject);
begin
Form13.Show;
end;
//Сортировка автор ASC
procedure TForm2.RadioButton1Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка автор DESC
procedure TForm2.RadioButton2Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка название ASC
procedure TForm2.RadioButton3Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка название DESC
procedure TForm2.RadioButton4Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка категория ASC
procedure TForm2.RadioButton5Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка категория DESC
procedure TForm2.RadioButton6Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка цена ASC
procedure TForm2.RadioButton7Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка цена DESC
procedure TForm2.RadioButton8Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка наличие ASC
procedure TForm2.RadioButton9Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка наличие DESC
procedure TForm2.RadioButton10Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка количество ASC
procedure TForm2.RadioButton11Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
//Сортировка количество DESC
procedure TForm2.RadioButton12Click(
begin
Unit5.DataModule5.ADOQuery1.
end;
end.
Форма пользователя «Продавец»
unit Unit3;
var
Form3: TForm3;
implementation
uses Unit1, Unit2, Unit4, Unit5, Unit6, Unit7, Unit12, Unit13, Unit14,
Unit15;
{$R *.dfm}
//Выход
procedure TForm3.N6Click(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 TForm3.N4Click(Sender: TObject);
begin
Form3.Close;
Form1.Show;
Form1.Width:=220;
Form1.Height:=225;
Form1.LabeledEdit1.Visible:=
Form1.BitBtn2.Visible:=False;
Form1.RadioButton2.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 TForm3.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 TForm3.N2Click(Sender: TObject);
begin
PrintDBGridEh1.Preview;
end;
//Дата и время
procedure TForm3.Timer1Timer(Sender: TObject);
begin
Label1.Caption:='Время : ' + TimeToStr(time);
Label2.Caption:='Дата : '+ DateToStr(date);
Application.ProcessMessages;
end;
//Обновить автомат
procedure TForm3.Timer2Timer(Sender: TObject);
begin
try
Unit5.DataModule5.ADOQuery1.
Form3.Label3.Caption:='
Unit5.DataModule5.ADOQuery1.
except
on e:Exception do
end;
end;
//Обновить меню
procedure TForm3.N11Click(Sender: TObject);
begin
try
Unit5.DataModule5.ADOQuery1.
except
on e:Exception do
end;
Form3.Label3.Caption:='
end;
//Все записи
procedure TForm3.N10Click(Sender: TObject);
begin
try
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
Unit5.DataModule5.ADOQuery1.
except
on e:Exception do
end;
Form3.Label3.Caption:='
end;
procedure TForm3.LabeledEdit4KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
then Key:=#0;
end;
procedure TForm3.LabeledEdit6KeyPress(
begin
if Key in ['А'..'Я']+['а'..'я']+['a'..'
['`']+['~']+['!']+['@']+['"']+
['%']+['^']+[':']+['&']+['?']+
['=']+['+']+['/']+[',']+['.']+
['{']+['}']+['[']+[']']+['<']+
Информация о работе Разработка программы для автоматизации работы книжного каталога