- •Содержание расчётно-графической работы
- •Логическая структура базы данных
- •Физическая структура базы данных
- •Приложения для работы с базой данных
- •If Form1.Table4.Locate('nazvanie',Edit1.Text,[])
- •If not Form1.Table6.Locate('naz_produk',Edit2.Text,[])
- •I: byte;
- •0: Begin // выбрана таблица Table1
- •1: Begin …
- •0: Begin
- •Руководство пользователя
- •Заключение
- •Список используемой литературы
Логическая структура базы данных
Регламент дня Кухня
дня Программа
дня
Меню
Блюдо Рецепт
Продукт
Поставка Поставщик
Состав труппы
Физическая структура базы данных
|
AUCTIONS | |||
|
A_ID |
Autoincrement |
Primary | |
|
A_NAME |
Alpha |
| |
|
A_DATE |
Date |
| |
|
T1 | ||
|
Data |
Date |
|
|
Nom_kuhni |
numeric |
|
|
Nom_progra |
numeric |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PAINTERS | |||
|
P_ID |
Autoincrement |
Primary | |
|
P_FIO |
Alpha |
| |
|
P_BIRTH |
Date |
| |
|
P_ADRES |
Alpha |
| |
|
P_GENRE |
Alpha |
| |
|
P_POPUL |
Alpha |
| |
|
IM ON AUCT | |||
|
A_ID |
Integer |
Primary | |
|
I_ID |
Integer |
Primary | |
|
IA_PRICE |
Number |
| |
|
IA_SALERPR |
Number |
| |
|
T2 | |||
|
E_ID |
Autoincrement |
Primary | |
|
E_BDATE |
Date |
| |
|
E_EDATE |
Date |
| |
|
E_NAME |
Alpha |
| |
|
IM ON EXIB | |||
|
E_ID |
Integer |
Primary | |
|
I_ID |
Integer |
Primary | |
|
IE_HALL |
Alpha |
| |
|
S_ID |
Integer |
| |
|
IE_TDATE |
Date |
| |
|
IE_RDATE |
Date |
| |
|
STAFF | |||
|
S_ID |
Autoincrement |
Primary | |
|
S_FIO |
Alpha |
| |
|
S_BIRTH |
Date |
| |
|
S_POST |
Alpha |
| |
Приложения для работы с базой данных
Разработанная программа выполняет следующие функции:
Возможность добавления данных в таблицы
Пример программной реализации добавления новой информации в таблицы
блюда, продукты, поставщик и т. д.
На главной форме «Ресторан» находится панель меню с пунктом «Новый», с помощью которой выбираем то что дополняется. Программно описывается сл образом:
procedure TForm1.N3Click(Sender: TObject);
begin
Form3.Visible:=True;
end; и так далее.
Процедуры непосредственно добавляющие новую запись в таблицу, для табицы блюда:
procedure TForm3.BitBtn1Click(Sender: TObject);
begin
if (Form1.Table4.MasterSource<>nil)and
(Form1.Table4.MasterSource.Enabled)
then Form1.Table4.MasterSource.Enabled:=False;
if Edit1.Text='' then ShowMessage(Введите название блюда')
else begin
If Form1.Table4.Locate('nazvanie',Edit1.Text,[])
then ShowMessage('Блюдо с таким названием уже существует')
else begin
if (Edit2.Text='')or(strtoint(Edit2.Text)<=0)
then ShowMessage(‘Номер не может отсутствовать или быть отрицательным')
else begin
if (DBLookupComboBox1.Text='')and
(DBLookupComboBox2.Text='')and
(DBLookupComboBox3.Text='')and
(DBLookupComboBox4.Text='')and
(DBLookupComboBox5.Text='')
then ShowMessage('Блюдо должно содержать хотя бы один ингредиент')
else begin
if ((DBLookupComboBox1.Text<>'')and((Edit3.Text='')or(strtoFLOAT(Edit3.Text)<=0)))or
((DBLookupComboBox2.Text<>'')and((Edit4.Text='')or(strtoFLOAT(Edit4.Text)<=0)))or
((DBLookupComboBox3.Text<>'')and((Edit5.Text='')or(strtoFLOAT(Edit5.Text)<=0)))or
((DBLookupComboBox4.Text<>'')and((Edit6.Text='')or(strtoFLOAT(Edit6.Text)<=0)))or
((DBLookupComboBox5.Text<>'')and((Edit7.Text='')or(strtoFLOAT(Edit7.Text)<=0)))
then ShowMessage('Количество ингредиента не может быть нулевым или меньше нуля')
else
begin
if DBLookupComboBox1.TEXT<>''
then
begin
Form1.Table3.InsertRecord([ComboBox1.text,strtoint(edit2.text),'']);
Form1.Table4.InsertRecord([Edit2.text,Edit1.text]);
Form1.Table5.InsertRecord([Edit2.text,DBLookupComboBox1.KeyValue,strtoFLOAT(edit3.text)]);
end;
if DBLookupComboBox2.Text<>''
then
begin
Form1.Table4.InsertRecord([Edit2.text,Edit1.text]);
Form1.Table5.InsertRecord([Edit2.text,DBLookupComboBox2.KeyValue,strtoFLOAT(edit4.text)]);
end;
if DBLookupComboBox3.Text<>''
then
begin
Form1.Table4.InsertRecord([Edit2.text,Edit1.text]);
Form1.Table5.InsertRecord([Edit2.text,DBLookupComboBox3.KeyValue,strtoFLOAT(edit5.text)]);
end;
if DBLookupComboBox4.Text<>''
then
begin
Form1.Table4.InsertRecord([Edit2.text,Edit1.text]);
Form1.Table5.InsertRecord([Edit2.text,DBLookupComboBox4.KeyValue,strtoFLOAT(edit6.text)]);
end;
if DBLookupComboBox5.Text<>''
then
begin
Form1.Table4.InsertRecord([Edit2.text,Edit1.text]);
Form1.Table5.InsertRecord([Edit2.text,DBLookupComboBox5.KeyValue,strtoFLOAT(edit7.text)]);
end;
end;
end;
end;
end;
end;
if (Form1.Table4.MasterSource<>nil)and
(not Form1.Table4.MasterSource.Enabled)
then Form1.Table4.MasterSource.Enabled:=True;
Form3.Visible:=False;
end;
открытие формы для добавления в таблицу Продукты
Form4.Visible:=True;
FORM4.query1.SQL.Clear;
FORM4.query1.SQL.Add
( 'select (max(KOD_PRODUK)+1) from T66'); // SQL запрос для определения max //кода продукта
FORM4.query1.Open;
FORM4.edit1.Text:=FORM4.query1.Fields.Fields[0].AsString;
Процедура непосредственного добавления в таблицу Продукты
procedure TForm4.Button1Click(Sender: TObject);
begin
if strtoint(Edit3.Text)<0
then ShowMessage('Цена не может быть отрицательной')
else begin
if (Form1.Table6.MasterSource<>nil)and
(Form1.Table6.MasterSource.Enabled)
then Form1.Table6.MasterSource.Enabled:=False;
