Информационная система мебельного магазина
Создание базы данных для управления мебельным магазином: постановка задачи, требования к информационно-программной совместимости, составу и параметрам технических средств, документации. Разработка базы данных: структура таблиц, клиентское приложение.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 10.02.2013 |
Размер файла | 1,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
IBQuery2.Open;
MainWND.IBTransaction1.Commit;
MainWND.UR;
end;
end;
end.
Unit4
unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtDlgs, ExtCtrls, StdCtrls, IdHashMessageDigest, DB,
IBCustomDataSet, IBQuery;
type
TAddMat = class(TForm)
EditMatAddName: TEdit;
Label1: TLabel;
EditMatAddMat: TEdit;
Label2: TLabel;
EditMatAddColor: TEdit;
Label3: TLabel;
EditMatAddImg: TEdit;
Label4: TLabel;
Button6: TButton;
ImageAddMat: TImage;
Button1: TButton;
Button2: TButton;
OpenPictureDialog1: TOpenPictureDialog;
DataSource1: TDataSource;
IBQuery1: TIBQuery;
procedure Button6Click(Sender: TObject);
procedure EditMatAddNameChange(Sender: TObject);
procedure EditMatAddColorChange(Sender: TObject);
procedure EditMatAddImgChange(Sender: TObject);
procedure EditMatAddMatChange(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
AddMat: TAddMat;
TMPSTR: string;
AMMode: integer;
implementation
uses Unit2, Unit1;
{$R *.dfm}
function md5(SourceString: string): string;
var
md5: TIdHashMessageDigest5;
begin
Result := '';
md5 := TIdHashMessageDigest5.Create;
try
Result := AnsiLowerCase(md5.HashStringAsHex(SourceString));
finally
FreeAndNil(md5);
end;
end;
procedure TAddMat.Button1Click(Sender: TObject);
begin
AddMat.Close;
end;
procedure TAddMat.Button2Click(Sender: TObject);
var
SQL: string;
begin
if AMMode = 0 then
begin
SQL :=
'INSERT INTO MAT(NAME,MAT,COLOR,IMG) VALUES(''' +
EditMatAddName.Text + ''',''' + EditMatAddMat.Text + ''',''' +
EditMatAddColor.Text + ''',''' + EditMatAddImg.Text + ''');';
IBQuery1.SQL.Clear;
IBQuery1.SQL.Text := SQL;
IBQuery1.Open;
MainWnd.IBTransaction1.Commit;
if NOT CopyFile(Pchar(TMPSTR), Pchar(EditMatAddImg.Text), false)
then
ShowMessage('Ошибка! Код ошибки: ' + IntToStr(GetLastError));
end
else
begin
SQL := 'UPDATE MAT SET NAME = ''' + EditMatAddName.Text + ''',
MAT =''' +
EditMatAddMat.Text + ''', COLOR = ''' + EditMatAddColor.Text +
''', IMG = ''' + EditMatAddImg.Text + ''' WHERE ID = '''
+IntToStr(AMMode) +''';';
IBQuery1.SQL.Clear;
IBQuery1.SQL.Text := SQL;
IBQuery1.Open;
MainWnd.IBTransaction1.Commit;
if NOT CopyFile(Pchar(TMPSTR), Pchar(EditMatAddImg.Text), false)
then
ShowMessage('Ошибка! Код ошибки: ' + IntToStr(GetLastError));
end;
EditMatAddName.Text := '';
EditMatAddMat.Text := '';
EditMatAddColor.Text := '';
EditMatAddImg.Text := '';
AddMat.Close;
end;
procedure TAddMat.Button6Click(Sender: TObject);
var
now: TDateTime;
begin
now := Time;
if OpenPictureDialog1.Execute then
begin
ImageAddMat.Picture.LoadFromFile(OpenPictureDialog1.FileName);
TMPSTR := OpenPictureDialog1.FileName;
EditMatAddImg.Text := 'images/mats/'+md5(DateToStr(now) +
TimeToStr(now)) + '.jpg';
end;
end;
procedure TAddMat.EditMatAddColorChange(Sender: TObject);
begin
if (EditMatAddName.Text <> '') AND (EditMatAddMat.Text <> '') AND
(EditMatAddColor.Text <> '') AND (EditMatAddImg.Text <> '') then
begin
Button2.Enabled := true;
end
else
begin
Button2.Enabled := false;
end;
end;
procedure TAddMat.EditMatAddImgChange(Sender: TObject);
begin
if (EditMatAddName.Text <> '') AND (EditMatAddMat.Text <> '') AND
(EditMatAddColor.Text <> '') AND (EditMatAddImg.Text <> '') then
begin
Button2.Enabled := true;
end
else
begin
Button2.Enabled := false;
end;
end;
procedure TAddMat.EditMatAddMatChange(Sender: TObject);
begin
if (EditMatAddName.Text <> '') AND (EditMatAddMat.Text <> '') AND
(EditMatAddColor.Text <> '') AND (EditMatAddImg.Text <> '') then
begin
Button2.Enabled := true;
end
else
begin
Button2.Enabled := false;
end;
end;
procedure TAddMat.EditMatAddNameChange(Sender: TObject);
begin
if (EditMatAddName.Text <> '') AND (EditMatAddMat.Text <> '') AND
(EditMatAddColor.Text <> '') AND (EditMatAddImg.Text <> '') then
begin
Button2.Enabled := true;
end
else
begin
Button2.Enabled := false;
end;
end;
procedure TAddMat.FormCreate(Sender: TObject);
begin
AMMode := 0;
end;
end.
Unit5
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, DB, IBCustomDataSet, IBQuery, dblookup;
type
TLogin = class(TForm)
Edit1: TEdit;
Label1: TLabel;
Label2: TLabel;
IBQuery1: TIBQuery;
DataSource1: TDataSource;
ComboBox1: TComboBox;
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Login: TLogin;
implementation
uses Unit1;
{$R *.dfm}
procedure TLogin.Button1Click(Sender: TObject);
begin
login.Close;
end;
procedure TLogin.Button2Click(Sender: TObject);
begin
IBQuery1.First;
IBQuery1.MoveBy(ComboBox1.ItemIndex);
if IBQuery1.FieldByName('PASS').AsString = Edit1.Text then
begin
ShowMessage('Авторизация прошла успешно! Вы вошли с правами '+
IBQuery1.FieldByName('NAME').AsString);
if IBQuery1.FieldByName('SELECT_GOODS').AsInteger = 1 then
Unit1.MODE[1]:= true else Unit1.MODE[1]:= false;
if IBQuery1.FieldByName('SELECT_SALES').AsInteger = 1 then
Unit1.MODE[2]:= true else Unit1.MODE[2]:= false;
if IBQuery1.FieldByName('EDIT_GOODS').AsInteger = 1 then
Unit1.MODE[3]:= true else Unit1.MODE[3]:= false;
if IBQuery1.FieldByName('ADD_GOODS').AsInteger = 1 then
Unit1.MODE[4]:= true else Unit1.MODE[4]:= false;
if IBQuery1.FieldByName('SUPER').AsInteger = 1 then
Unit1.MODE[5]:= true else Unit1.MODE[5]:= false;
Unit1.MODENAME := IBQuery1.FieldByName('NAME').AsString;
Unit1.USERNAME := IBQuery1.FieldByName('FN')
.AsString + ' ' + IBQuery1.FieldByName('LN')
.AsString + ' ' + IBQuery1.FieldByName('PN').AsString;
MainWND.Button5.Caption:= 'Выход';
Unit1.IDUSER:= IBQuery1.FieldByName('ID').AsInteger;
Edit1.Clear;
Login.Close;
end
else
begin
ShowMessage('Пароль введен неверно, пожалуйста повторите ввод');
end;
end;
procedure TLogin.ComboBox1Change(Sender: TObject);
begin
Edit1.Clear;
end;
procedure TLogin.FormCreate(Sender: TObject);
var
i: byte;
t: string;
begin
with IBQuery1 do
begin
close;
SQL.Clear;
SQL.Add('SELECT
USERS.ID,FN,LN,PN,PASS,NAME,SELECT_GOODS,SELECT_SALES,'
+
'EDIT_GOODS,ADD_GOODS,SUPER FROM USERS,USER_TYPE
WHERE USERS.TYPE=USER_TYPE.ID');
Open;
end;
for i := 0 to IBQuery1.RecordCount do
begin
t := IBQuery1.FieldByName('FN')
.AsString + ' ' + IBQuery1.FieldByName('LN')
.AsString + ' ' + IBQuery1.FieldByName('PN').AsString;
ComboBox1.Items.Add(t);
IBQuery1.Next;
end;
ComboBox1.ItemIndex:=0;
end;
end.
Unit6
unit Unit6;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TAboutR = class(TForm)
Label1: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label2: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Image1: TImage;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
AboutR: TAboutR;
implementation
{$R *.dfm}
procedure TAboutR.Button1Click(Sender: TObject);
begin
AboutR.Close;
end;
procedure TAboutR.FormCreate(Sender: TObject);
begin
end;
end.
ПРИЛОЖЕНИЕ 3
Руководство пользователя
Программа разработана для менеджера баскетбольного клуба и позволяет ему:
Реализовать следующий функционал:
1. Хранить товары магазина:
· Просмотр списка товаров
· Поиск по названию
· Редактирование товара
· Загрузка изображений
· Присвоение материалов для товаров
· Структурирование по каталогам
2. Разграничивать доступ к функционалу:
· Возможность создания групп пользователей.
· Возможность настройки прав доступа для различных групп пользователей
· Возможность добавления новых пользователей
· Возможность редактирования групп пользователей, и сами пользователей
3. Управлять заказами:
· Просмотр заказов
· Редактирование заказа
· Редактирование позиции заказа
При запуске главное окно программы представляет собой одну вкладку, со списком товаров, и возможностью их просмотра
Рис. 10 - Окно программы при запуске
Поиск
Так же при первоначальном запуске доступно поле поиска, которое поддердивает составные запросы:
· Для задания точносго поиска наобходимо просто ввести наименование искомого товара:
Рис. 11 - Результат ввода поискового запроса «Палермо»
· Если же необходимо задать только часть запроса, то неизвестные (неважные) части запроса можно заменить на символ процента - %:
Рис. 12 - Результат ввода поискового запроса «%CD»
Авторизация
Для входа в систему необходимо воспользоваться формой авторизации, которая доступна по клику на кнопке «Вход», расположенной в нижней части программы:
Рис. 13 - Расположение кнопки «Вход»
Рис. 14 - Форма авторизации
После авторизации, в нижней части программы будут отображены: имя польщователя, права которыми он обладает:
Рис. 15 - Пример нижней части прораммы
Для того что бы подробно узнать какими правами обладает пользователья достаточно кликнуть на кнопку со знаком «?» в нижней части программы. По клику на данную кнопку будет отобрадена информация о правах:
Рис. 16 - Пример отображени информации о правах пользователя
Следует заметить что после авторизации, кнопку в ниждей части экрана с надписью «Вход» , изменит свое значение на «Выход», и повторное нажатие на нее, позволит выйти из системы.
Редактирвоание списка товаров
Для редактрования товара, необходимо обладать соответствующими правами. При соблюдении данного условия будут отображены кнопки «Добавить», «Редактировать», «Удалить».
Рис. 17 - Кнопки редактирования списка товаров
При клике по кнопкам «Добавить» или «Редактировать», будет открыто универсально окно, из которого есть возможность добавлять и редкатировать Каталоги и Материалы.
Интерфейс этого окна нагляден и понятен, введена система цветовой индикации, каоторая позволяет во время вода данных указать пользователя на ошибки ввода, или же на поля обязательне для заполнения.
Рис. 18 - Окно формы «Добавить»
Рис. 19 - Окно формы «Добавить каталог»
Рис. 20 - Окно формы «Добавить материал»
Интерфейс окон не вызывает вопросов даже у пользователей которые не имеют большого опыта работы на ЭВМ.
Администратирование
Вкладка «Пользователя и права» доступна только для пользоватеелй, которые имеют права на любые действия.
Рис. 21 - Вкладка «Польщователи и права»
В данной вкладке есть возможность редактирования пользователей, а так же групп пользователей:
Рис. 22 - Добавление нового пользователя
Рис. 23 - Добавление новой группы
Другое
Вкладки «Продажи» и «Диаграмма» доступны, при наличии соответствующих прав, и содержат в себе информацию об Совершенных заказах, и Диаграмма распределения цен на товары, соответственно:
Рис. 24 - Вкладка «Продажи»
Рис. 25 - Вкладка «Диаграмма»
Интерфейс последних двух вкладок минималистичен, и не вызывает никаих вопросов.
Спасибо за использование нашей программы.
Размещено на Allbest.ru
Подобные документы
Создание программного комплекса, обеспечивающего использование структурированной базы данных для компьютерного магазина. Язык программирования высокого уровня C++. Требования к составу и параметрам технических средств, к программной документации.
курсовая работа [314,8 K], добавлен 17.02.2010Разработка структуры реляционной базы данных, предназначенной для отслеживания финансовой стороны работы компании. Требования к составу и параметрам технических средств. Нормализация информационных объектов. Физическая модель базы данных приложения.
курсовая работа [1,4 M], добавлен 11.11.2014Разработка базы данных книжного магазина в среде программирования Delphi. Создание таблиц и их заполнение. Требования к составу и параметрам технических средств. База данных как набор файлов, содержащих информацию. Этапы создания приложения в Delphi.
курсовая работа [803,6 K], добавлен 04.11.2012Разработка системы управления базой данных "Структура ВУЗа". Требования к программе: функциональным характеристикам, надежности, эксплуатации, составу и параметрам технических средств. Требования к программной документации. Порядок контроля и приемки.
курсовая работа [982,7 K], добавлен 08.06.2015Создание базы данных при помощи СУБД, разработка собственного приложения. Информационно-логическая модель рекламного агентства. Структура реляционной базы данных в Access. Заполнение таблиц информацией. Структура приложения и взаимодействия форм.
курсовая работа [12,6 M], добавлен 17.06.2014Создание программного комплекса, обеспечивающего использование структурированной базы данных для компьютерного магазина. Использование языка программирования высокого уровня C++. Требования к составу и параметрам технических средств, стадии разработки.
курсовая работа [308,3 K], добавлен 13.02.2010Разработка структуры реляционной базы данных для информационной системы "Распределение учебной нагрузки". Требования к информации, надежности, составу и параметрам технических средств. Нормализация информационных объектов, логическая модель данных.
курсовая работа [2,3 M], добавлен 03.05.2015Требования к составу и параметрам технических средств. Инфологическая (концептуальная) модель предметной области. Физическая и логическая модель базы данных. Создание структуры БД в СУБД MS ACCESS. Программирование приложения. Описание работы с системой.
курсовая работа [572,2 K], добавлен 17.11.2014Медицинский диагностический центр: информационная система управления данными, минимальные системные требования к аппаратному обеспечению, создание таблиц путем ввода данных. Отчеты базы данных: создание отчетов различными способами, мастер диаграмм.
реферат [588,6 K], добавлен 03.06.2011Документ, на основании которого ведется разработка. Требования к составу и параметрам технических средств, к информационной и программной совместимости. Проработка программных средств. Переопределение стандартных операций для абстрактных типов данных.
курсовая работа [371,5 K], добавлен 21.02.2012