Проектирование и разработка базы данных для предприятия "Статус"

Проектирование базы данных для магазина продовольственных товаров. Предложения по модернизации информационных технологий. Выбор методов и средств решения задач, подлежащих автоматизации. Определение состава подсистем проектируемой информационной системы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 29.05.2013
Размер файла 3,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

3)Вывести все товары,страна-производитель которых-Украина

select * from Tovar where str_proizv='Украина';

KODTOV VID TORG_MARKA ZAKUP_CENA ROZN_CENA STR_PROIZV SROK_GOD NADBAV

---------------------- ----------------------------------- --------------------------------------------- ---------------------- ---------------------- ------------------------------ -------------------- --------------------

3 Орех мясной Дымов 285 310 Украина 45 суток 6процентов

8 Шоколад Бабаевский 40 44 Украина 3 года 7процентов

2 rows selected

4)вывести стаж работы сотрудников в порядке убывания

select expir from Sotr order by expir DESC;

EXPIR

----------

8 лет

7 лет

6 лет

6 лет

5 лет

5 лет

4 года

3 года

3 года

2 года

10 rows selected

5)вывести все поставки,которые были сделаны 15.11

select data_post from Post where data_post='15.12';

KODPOSTAVKI KODTOV KODPOSTAVCHIKA DATA_POST SUMMA VOLUME

---------------------- ---------------------- ---------------------- --------- -------------------- --------------------

4 3 8 15.12 31000 13 мешков

1 rows selected

6)вывести коды продаж,которые были сделаны в интервале с 17.12 по 21.12

select kodprod from Prodaja where data_prod between '17.12' and '21.12';

KODPROD

----------------------

2

3

4

5

6

5 rows selected

7)вывести все даты,объемы и суммы заказов,где сумма заказа больше 25000

select data_zak, volume, summa from Zakaz where summa>'25000' ;

DATA_ZAK VOLUME SUMMA

-------- -------------------- --------------------

15.12 13 мешков 31000

20.12 16 мешков 34000

2 rows selected

8)select fio from Sotr where fio between 'Б' and 'К' UNION select fio from Postavchik where fio between 'Б' and 'К';

FIO

-----------------------------------

Бекетов М.Л.

Буряченко Ю.И.

Волкова И.К.

Ворничан Э.Е.

Вуккерт Ф.Ю.

Грачева С.Л.

Ермилов В.И.

Жаров К.С.

Жигалова К.Ю.

9 rows selected

9)Вывести информацию о сотруднике, выполнившего максимальное количество заказов

select fio

from sotr, zakaz

where (sotr.kodsotr = zakaz.kodsotr) and

(sotr.kodsotr in (select kodsotr from zakaz group by kodsotr having count(*)=

(select max(count(*)) from zakaz group by kodsotr))) group by fio;

FIO

-----------------------------------

Буряченко Ю.И.

1 rows selected

10)Вывести список поставок,сделанных поставщиком № 10;

select Post.kodpostavki, Post.kodpostavchika from Postavchik,Post

where Postavchik.kodpostavchika=Post.kodpostavchika and Post.kodpostavchika=10;

KODPOSTAVKI KODPOSTAVCHIKA

---------------------- ----------------------

3 10

9 10

2 rows selected

11)Вывести код продажи и товар,срок годности которого 3 года

select prodaja.kodprod,tovar.vid

from prodaja, tovar,Tov_Prod

where prodaja.kodprod=Tov_Prod.kodprod and Tov_Prod.kodtov=Tovar.kodtov and Tovar.srok_god='3 года';

KODPROD VID

---------------------- -----------------------------------

6 Горбуша в банке

2 Кофе

7 Шоколад

5 Сгущёнка

4 rows selected

12)Вывести код товара и вид поставленного товара, розничная цена которого больше 100

select post.kodtov,tovar.vid,tovar.rozn_cena

from post,tovar

where Tovar.kodtov=Post.kodtov and tovar.rozn_cena>100;

KODTOV VID ROZN_CENA

---------------------- ----------------------------------- ----------------------

3 Орех мясной 310

5 Кофе 202

2 rows selected

13) Вывести имя поставщика и торговую марку с датой поставки на 15.12

select postavchik.fio,post.kodpost,tovar.torg_marka

from postavchik,post,tovar

where postavchik.kodpostavсhika=post.kodpostavсhika and post.kodtov=tovar.kodtov and post.data_post='15.12';

FIO DATA_POST TORG_MARKA

----------------------------------- --------- ---------------------------------------------

Прусов И.И. 15.12 Дымов

14)Вывести код поставщика, который поставлял шоколад

select tovar.vid,Post.kodpostavchika from postavchik,post,tovar, tov_prod

where postavchik.kodpostavchika=post.kodpostavchika and tovar.kodtov=tov_prod.kodtov

and postavchik.kodpostavchika=4 and tovar.kodtov=8;

VID KODPOSTAVCHIKA

----------------------------------- ----------------------

Шоколад 4

1 rows selected

15)вывести все коды продаж,прибыль которых больше 41000 рублей за период с 21.12 по 24.12

select PRODAJA.kodprod,Prodaja.profit,Prodaja.data_prod from PRODAJA, SOTR, PROD_SOTR

where SOTR.Kodsotr=PROD_SOTR.Kodsotr and PRODAJA.Kodprod=PROD_SOTR.Kodprod and Prodaja.profit>'41000'

and Prodaja.data_prod between '21.12' and '24.12';

KODPROD PROFIT DATA_PROD

---------------------- -------------------- ---------

9 44000 тысячи 24.12

8 41000 тысяча 23.12

2 rows selected

16)Вывести номер поставки и дату, когда поставщик номер 5 сделал поставку паштета;

select POST.kodpostavki, POST.Data_post from POST, POSTAVCHIK, TOVAR

where (Postavchik.kodpostavchika=Post.kodpostavchika) and (Tovar.kodtov=Post.kodtov)

and ((POSTAVCHIK.Kodpostavchika=5) and (TOVAR.vid='Паштет грибной'));

KODPOSTAVKI DATA_POST

---------------------- ---------

6 19.12

1 rows selected

17)вывести объем,дату и сумму заказа,которые сделала сотрудник Стюрьева;

select Zakaz.volume, Zakaz.data_zak,Zakaz.summa FROM zakaz, sotr where Sotr.kodsotr=Zakaz.kodsotr and

Sotr.fio='Стюрьева Г.В.';

VOLUME DATA_ZAK SUMMA

-------------------- -------- --------------------

6 упаковок 14.12 18000

1 rows selected

18)вывести вид,оптовую цену и марку товара,который учавствовал в продаже с кодом №8

select Tovar.vid,Tovar.torg_marka,Tovar.zakup_cena FROM tovar, tov_prod

where tovar.kodtov=tov_prod.kodtov and tov_prod.kodprod=8;

VID TORG_MARKA ZAKUP_CENA

----------------------------------- --------------------------------------------- ----------------------

Орех мясной Дымов 285

1 rows selected

19)Найти информацию о товаре,розничная цена которого на 44 рубля меньше розничной цены шоколадной пасты;

select * FROM tovar where rozn_cena=(select rozn_cena-'44' FROM tovar where vid='Шоколадная паста');

KODTOV VID TORG_MARKA ZAKUP_CENA ROZN_CENA STR_PROIZV SROK_GOD NADBAV

---------------------- ----------------------------------- --------------------------------------------- ---------------------- ---------------------- ------------------------------ -------------------- --------------------

4 Чай Ахмад 28 33 Китай 1 год 4процента

1 rows selected

20)вывести фирму поставщика,его инициалы и телефон,поставляющих товар с кодом 3

select postavchik.firm,postavchik.fio,postavchik.tel FROM postavchik, tovar, post

WHERE (postavchik.kodpostavchika=post.kodpostavchika)

AND (tovar.kodtov=post.kodtov) AND tovar.kodtov=3;

FIRM FIO TEL

-------------------- ----------------------------------- ----------------------

Сибиряк Прусов И.И. 26385

1 rows selected

21)вывести код сотрудника,его инициалы и номер телефона,который сделал продажу с минимальной прибылью

select Sotr.kodsotr, Sotr.fio,Sotr.tel FROM sotr, prodaja, prod_sotr WHERE sotr.kodsotr=prod_sotr.kodprodsotr

AND prodaja.kodprod=prod_sotr.kodprod AND prodaja.profit=(SELECT min(profit ) FROM prodaja);

KODSOTR FIO TEL

---------------------- ----------------------------------- ----------------------

6 Асташова О.А. 23758

1 rows selected

Содержание всех таблиц:

22)select * from Sotr;

KODSOTR FIO EXPIR ADR AGE TEL

---------------------- ----------------------------------- ---------- ------------------------------ --------------- ----------------------

1 Облаева Т.В. 6 лет ул.Пархоменко 12-3 42 года 21763

2 Стюрьева Г.В. 3 года ул.Весны 14-7 36 лет 21673

3 Сорокина А.Г. 5 лет ул.Мира 22-43 29 лет 21954

4 Буряченко Ю.И. 7 лет ул.Воронова 32-17 34 года 22644

5 Плешакова Е.М. 2 года ул.Пионерская 3-8 27 лет 27164

6 Асташова О.А. 4 года ул.Чкалова 21-16 32 года 23758

7 Жигалова К.Ю. 6 лет ул.Дружбы 1-12 35 лет 23691

8 Юрьева Н.В. 3 года ул.9 мая 15-18 30 лет 24267

9 Волкова И.К. 8 лет ул.Крупской 8-6 29 лет 21954

10 Грачева С.Л. 5 лет ул.Заводская 57-15 37 лет 21724

10 rows selected

23)Select * from Postavchik;

KODPOSTAVCHIKA FIO FIRM TEL

---------------------- ----------------------------------- -------------------- ----------------------

1 Вуккерт Ф.Ю. Делси 29671

2 Милёхин А.А. Троя 36955

3 Старков Б.Г. Авангард 35742

4 Ермилов В.И. Фаер 32921

5 Бекетов М.Л. Авентин 25318

6 Ворничан Э.Е. Лудинг 48912

7 Жаров К.С. Прайм 37746

8 Прусов И.И. Сибиряк 26385

9 Ларин П.Г. Стар 45296

10 Янков Д.О. Экор 28248

10 rows selected

24)select * from Post;

KODPOSTAVKI KODTOV KODPOSTAVCHIKA DATA_POST SUMMA VOLUME

---------------------- ---------------------- ---------------------- --------- -------------------- --------------------

1 2 7 14.12 18000 6 коробок

2 4 3 11.12 22000 8 упаковок

3 6 10 9.12 26000 7 ящиков

4 3 8 15.12 31000 13 мешков

5 7 4 13.12 18000 5 коробок

6 10 5 19.12 24000 9 ящиков

7 8 3 17.12 15000 4 упаковки

8 5 2 18.12 21000 5 мешков

9 1 10 12.12 17000 6 коробок

10 4 6 20.12 35000 16 ящиков

10 rows selected

25)select * from tovar;

KODTOV VID TORG_MARKA ZAKUP_CENA ROZN_CENA STR_PROIZV SROK_GOD NADBAV

---------------------- ----------------------------------- --------------------------------------------- ---------------------- ---------------------- ------------------------------ -------------------- --------------------

1 Хлеб Красноярский хлеб 14 16 Россия 48 часов 3процента

2 Горбуша в банке Синее море 30 35 Россия 3 года 4процента

3 Орех мясной Дымов 285 310 Украина 45 суток 6процентов

4 Чай Ахмад 28 33 Китай 1 год 4процента

5 Кофе Черная карта 180 202 Бразилия 3 года 4процента

6 Шоколадная паста Нутелла 73 77 Россия 96 часов 5процентов

7 Спагетти Макфа 13 18 Россия 2 года 4процента

8 Шоколад Бабаевский 40 44 Украина 3 года 7процентов

9 Сгущёнка Простоквашино 39 45 Россия 3 года 6процентов

10 Паштет грибной Хамме 24 30 Германия 2 года 2процента

10 rows selected

26)select * from tov_zak;

KODTOVZAK KODTOV KODZAK

---------------------- ---------------------- ----------------------

1 2 3

4 5 6

3 7 8

5 9 10

2 8 2

7 4 9

6 1 4

8 3 7

10 6 5

9

27)select * from zakaz;

KODZAKAZ KODSOTR KODPOSTAVKI DATA_ZAK SUMMA VOLUME

---------------------- ---------------------- ---------------------- -------- -------------------- --------------------

1 4 7 11.12 22000 7 коробок

2 3 9 15.12 31000 13 мешков

3 2 8 14.12 18000 6 упаковок

4 5 10 12.12 17000 5 ящиков

5 7 4 19.12 24000 10 коробок

6 8 6 18.12 20000 6 мешков

7 4 5 13.12 19000 6 ящиков

8 6 3 9.12 25000 5 упаковок

9 10 2 20.12 34000 16 мешков

10 9 8 17.12 16000 6 коробок

10 rows selected

28)select * from prod_sotr;

KODPRODSOTR KODPROD KODSOTR

---------------------- ---------------------- ----------------------

1 2 3

2 5 6

3 7 8

4 9 10

5 8 2

6 4 9

7 1 4

8 3 7

9 6 5

10 10 1

10 rows selected

29)select * from tov_prod;

KODTOVPROD KODTOV KODPROD

---------------------- ---------------------- ----------------------

1 1 3

2 2 6

3 3 8

4 4 10

5 5 2

6 6 9

7 7 4

8 8 7

9 9 5

10 10 1

10 rows selected

30)select * from prodaja;

KODPROD DATA_PROD PROFIT

---------------------- --------- --------------------

1 16.12 30000 тысяч

2 17.12 28000 тысяч

3 18.12 32000 тысячи

4 19.12 24000 тысячи

5 20.12 36000 тысяч

6 21.12 38000 тысяч

7 22.12 40000 тысяч

8 23.12 41000 тысяча

9 24.12 44000 тысячи

10 25.12 47000 тысяч

10 rows selected

Индексы

drop index FIOIND;

Create index FIOIND on SOTR (Fio asc);

Create index succeeded.

drop index FIRMIND;

Create index FIRMIND on POSTAVCHIK (FIRM asc);

Create index succeeded.

drop index DATA_POSTIND;

Create index DATA_POSTIND on POST (DATA_POST asc);

Create index succeeded.

drop index SUMMAIND;

Create index SUMMAIND on ZAKAZ (SUMMA asc);

Create index succeeded.

drop index VIDINDAIND;

Create index VIDIND on TOVAR (VID asc);

Create index succeeded.

drop index DATA_PRODIND;

Create index DATA_PRODIND on PRODAJA (DATA_PROD asc);

Create index succeeded.

drop index KODPRODIND;

Create index KODPRODIND on PROD_SOTR (KODPROD asc);

Create index succeeded.

drop index KODTOVIND;

Create index KODTOVIND on TOV_PROD (KODTOV asc);

Create index succeeded.

drop index KODZAKIND;

Create index KODZAKIND on TOV_ZAK (KODZAK asc);

Create index succeeded.

Курсоры

Создание курсора Сотрудник

drop table Sotr;

drop table K_Sotr;

create table Sotr(

kodsotr NUMBER NOT NULL ,

fio VARCHAR2 (35) ,

expir VARCHAR2 (10) ,

adr VARCHAR2 (30) ,

age VARCHAR2 (15) ,

tel NUMBER ,

primary key (kodsotr));

create table K_Sotr(

kodsotr NUMBER NOT NULL ,

fio VARCHAR2 (35) ,

expir VARCHAR2 (10) ,

adr VARCHAR2 (30) ,

age VARCHAR2 (15) ,

tel NUMBER,

primary key (kodsotr));

insert into K_Sotr values (1,'Облаева Т.В.','6 лет','ул.Пархоменко 12-3','42 года','21763');

insert into K_Sotr values (2,'Стюрьева Г.В.','3 года','ул.Весны 14-7','36 лет','21673');

insert into K_Sotr values (3,'Сорокина А.Г.','5 лет','ул.Мира 22-43','29 лет','21954');

insert into K_Sotr values (4,'Буряченко Ю.И.','7 лет','ул.Воронова 32-17','34 года','22644');

insert into K_Sotr values (5,'Плешакова Е.М.','2 года','ул.Пионерская 3-8','27 лет','27164');

insert into K_Sotr values (6,'Асташова О.А.','4 года','ул.Чкалова 21-16','32 года','23758');

insert into K_Sotr values (7,'Жигалова К.Ю.','6 лет','ул.Дружбы 1-12','35 лет','23691');

insert into K_Sotr values (8,'Юрьева Н.В.','3 года','ул.9 мая 15-18','30 лет','24267');

insert into K_Sotr values (9,'Волкова И.К.','8 лет','ул.Крупской 8-6','29 лет','21954');

insert into K_Sotr values (10,'Грачева С.Л.','5 лет','ул.Заводская 57-15','37 лет','21724');

declare

K_kodsotr Sotr.kodsotr%type;

K_fio Sotr.fio%type;

K_expir Sotr.expir%type;

K_adr Sotr.adr%type;

K_age Sotr.age%type;

K_tel Sotr.tel%type;

cursor KURSORWE IS

select kodsotr, fio, expir, adr, age, tel from Sotr;

begin

open KURSORWE;

loop

fetch KURSORWE into K_kodsotr, K_fio, K_expir, K_adr, K_age, K_tel;

exit when KURSORWE%notfound;

insert into K_Sotr (kodsotr, fio, expir, adr, age, tel)

values (K_kodsotr, K_fio, K_expir, K_adr, K_age, K_tel);

end loop;

close KURSORWE;

commit;

end;

/

select * from k_Sotr;

create table succeeded.

create table succeeded.

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

anonymous block completed

KODSOTR FIO EXPIR ADR AGE TEL

---------------------- ----------------------------------- ---------- ------------------------------ --------------- ----------------------

1 Облаева Т.В. 6 лет ул.Пархоменко 12-3 42 года 21763

2 Стюрьева Г.В. 3 года ул.Весны 14-7 36 лет 21673

3 Сорокина А.Г. 5 лет ул.Мира 22-43 29 лет 21954

4 Буряченко Ю.И. 7 лет ул.Воронова 32-17 34 года 22644

5 Плешакова Е.М. 2 года ул.Пионерская 3-8 27 лет 27164

6 Асташова О.А. 4 года ул.Чкалова 21-16 32 года 23758

7 Жигалова К.Ю. 6 лет ул.Дружбы 1-12 35 лет 23691

8 Юрьева Н.В. 3 года ул.9 мая 15-18 30 лет 24267

9 Волкова И.К. 8 лет ул.Крупской 8-6 29 лет 21954

10 Грачева С.Л. 5 лет ул.Заводская 57-15 37 лет 21724

10 rows selected

Создание курсора Поставщик

drop table Postavchik;

drop table R_Postavchik;

create table Postavchik (

kodpostavchika number NOT NULL ,

fio VARCHAR2 (35) ,

firm VARCHAR2 (20),

tel NUMBER ,

primary key (kodpostavchika));

create table R_Postavchik(

kodpostavchika number NOT NULL ,

fio VARCHAR2 (35) ,

firm VARCHAR2 (20),

tel NUMBER ,

primary key (kodpostavchika));

insert into R_Postavchik values (1,'Вуккерт Ф.Ю.','Делси','29671');

insert into R_Postavchik values (2,'Милёхин А.А.','Троя','36955');

insert into R_Postavchik values (3,'Старков Б.Г.','Авангард','35742');

insert into R_Postavchik values (4,'Ермилов В.И.','Фаер','32921');

insert into R_Postavchik values (5,'Бекетов М.Л.','Авентин','25318');

insert into R_Postavchik values (6,'Ворничан Э.Е.','Лудинг','48912');

insert into R_Postavchik values (7,'Жаров К.С.','Прайм','37746');

insert into R_Postavchik values (8,'Прусов И.И.','Сибиряк','26385');

insert into R_Postavchik values (9,'Ларин П.Г.','Стар','45296');

insert into R_Postavchik values (10,'Янков Д.О.','Экор','28248');

declare

R_kodpostavchika Postavchik.kodpostavchika%type;

R_fio Postavchik.fio%type;

R_firm Postavchik.firm%type;

R_tel Postavchik.tel%type;

cursor KURSORWE IS

select kodpostavchika, fio, firm, tel from Postavchik;

begin

open KURSORWE;

loop

fetch KURSORWE into R_kodpostavchika, R_fio, R_firm, R_tel;

exit when KURSORWE%notfound;

insert into R_Postavchik (kodpostavchika, fio, firm, tel)

values (R_kodpostavchika, R_fio, R_firm, R_tel);

end loop;

close KURSORWE;

commit;

end;

/

select * from R_Postavchik;

create table succeeded.

create table succeeded.

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

1 rows inserted

anonymous block completed

KODPOSTAVCHIKA FIO FIRM TEL

---------------------- ----------------------------------- -------------------- ----------------------

1 Вуккерт Ф.Ю. Делси 29671

2 Милёхин А.А. Троя 36955

3 Старков Б.Г. Авангард 35742

4 Ермилов В.И. Фаер 32921

5 Бекетов М.Л. Авентин 25318

6 Ворничан Э.Е. Лудинг 48912

7 Жаров К.С. Прайм 37746

8 Прусов И.И. Сибиряк 26385

9 Ларин П.Г. Стар 45296

10 Янков Д.О. Экор 28248

10 rows selected

Триггеры

Триггер журнализации

create table SOTR(

kodsotr NUMBER NOT NULL ,

fio VARCHAR2 (80) ,

expir VARCHAR2 (80) ,

adr VARCHAR2 (80) ,

age VARCHAR2 (80) ,

tel NUMBER ,

primary key (kodsotr));

create table SOTR1(

kodsotr NUMBER NOT NULL ,

fio VARCHAR2(80) ,

expir VARCHAR2(80) ,

adr VARCHAR2(80) ,

age VARCHAR2(80) ,

tel NUMBER,

OPERATION varchar2(80));

create or replace trigger TRGG

before insert or delete or update on SOTR

for each row

declare

rw1 number;

rw2 varchar2(80);

rw3 varchar2(80);

rw4 varchar2(80);

rw5 VARCHAR2(80);

rw6 number;

rw7 varchar2(80);

begin

if updating then

begin

rw1:=:old.kodsotr;

rw2:=:old.fio;

rw3:=:old.expir;

rw4:=:old.adr;

rw5:=:old.age;

rw6:=:old.tel;

rw7:='update';

insert into SOTR1 values(rw1,rw2,rw3,rw4,rw5,rw6,rw7);

end;

elsif deleting then

begin

rw1:=:old.kodsotr;

rw2:=:old.fio;

rw3:=:old.expir;

rw4:=:old.adr;

rw5:=:old.age;

rw6:=:old.tel;

rw7:='delete';

insert into SOTR1 values(rw1,rw2,rw3,rw4,rw5,rw6,rw7);

end;

elsif inserting then

begin

rw1:=:new.kodsotr;

rw2:=:new.fio;

rw3:=:new.expir;

rw4:=:new.adr;

rw5:=:new.age;

rw6:=:new.tel;

rw7:='insert';

insert into SOTR1 values(rw1,rw2,rw3,rw4,rw5,rw6,rw7);

end;

end if;

end;

/

insert into SOTR values (5,'Плешакова Е.М.','2 года','ул.Пионерская 3-8','27 лет','27164');

insert into SOTR values (6,'Асташова О.А.','4 года','ул.Чкалова 21-16','32 года','23758');

insert into SOTR values (7,'Жигалова К.Ю.','6 лет','ул.Дружбы 1-12','35 лет','23691');

delete from SOTR where kodsotr=6;

update SOTR set fio='Плешакова Е.М.' where kodsotr=5;

SELECT * FROM SOTR1;

create table succeeded.

create table succeeded.

trigger TRGG Compiled.

1 rows inserted

1 rows inserted

1 rows inserted

1 rows deleted

1 rows updated

KODSOTR FIO EXPIR ADR AGE TEL OPERATION

---------------------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ---------------------- --------------------------------------------------------------------------------

5 Плешакова Е.М. 2 года ул.Пионерская 3-8 27 лет 27164 insert

6 Асташова О.А. 4 года ул.Чкалова 21-16 32 года 23758 insert

7 Жигалова К.Ю. 6 лет ул.Дружбы 1-12 35 лет 23691 insert

6 Асташова О.А. 4 года ул.Чкалова 21-16 32 года 23758 delete

5 Плешакова Е.М. 2 года ул.Пионерская 3-8 27 лет 27164 update

5 rows selected

2create table Sotr(

id number primary key,

Триггер отслеживания критериев столбца

create table Tovar_LIMIT(

cod number NOT NULL,

maximym integer,

minimym integer,

primary key (cod));

insert into Tovar_LIMIT values (1, 200,0);

create or replace trigger TRG_LIMIT

before

insert or update of zakup_cena on Tovar

for each row

declare

mx INTEGER;

mn INTEGER;

begin

select maximym, minimym into mx, mn from Tovar_LIMIT;

if (:new.zakup_cena<= mn)

then raise_application_error(-20601, 'не принимается. маленькая цена.');

elsif (:new.zakup_cena > mx)

then raise_application_error(-20601, 'не принимается. большая цена.');

end if;

end;

/

insert into Tovar values (3,'Орех мясной','Дымов','0','310','Украина','45 суток','6процентов');

create table succeeded.

create table succeeded.

1 rows inserted

trigger TRG_LIMIT Compiled.

Error starting at line 35 in command:

insert into Tovar values (3,'Орех мясной','Дымов','0','310','Украина','45 суток','6процентов')

Error report:

SQL Error: ORA-20601: не принимается. маленькая цена.

ORA-06512: at "HR.TRG_LIMIT", line 7

ORA-04088: error during execution of trigger 'HR.TRG_LIMIT'

Триггер автонумерации

create table Sotr(

kodsotr NUMBER NOT NULL ,

fio VARCHAR2 (35) ,

expir VARCHAR2 (10) ,

adr VARCHAR2 (30) ,

age VARCHAR2 (15) ,

tel NUMBER ,

primary key (kodsotr));

create table succeeded.

trigger Sotrkod Compiled

Процедура

Процедура на добавление нового сотрудника в таблицу «Сотрудник»

create or replace procedure new_sotr(

kodsotra in SOTR.kodsotr%TYPE,

FIO1 in varchar2, EXPIR1 varchar2, ADR1 varchar2, AGE1 varchar2, TEL1 NUMBER) as

begin

insert into SOTR(kodsotr, FIO, expir, ADR, age, tel )

values (kodsotra, FIO1, EXPIR1, ADR1, AGE1, TEL1 );

end new_sotr;

/

Execute new_sotr (11,':Жученко В.И.','6 лет','ул.Майская 19-15','39 лет','29774');

procedure new_sotr( Compiled.

anonymous block completed

Приложение 2

create table Sotr(

kodsotr VARCHAR (8),

fio VARCHAR (35) ,

expir VARCHAR (10) ,

adr VARCHAR (30) ,

age VARCHAR (15) ,

tel VARCHAR (8),

sotrudnikpasswd varchar(15),

primary key (kodsotr));

create table Prodaja (

kodprod VARCHAR (8),

data_prod VARCHAR (8) ,

profit VARCHAR (20) ,

primary key (kodprod));

create table Postavchik (

kodpostavchika VARCHAR (8),

fio VARCHAR (35) ,

firm VARCHAR (20),

tel VARCHAR (8),

primary key (kodpostavchika));

create table Tovar (

kodtov VARCHAR (8),

NazvTov VARCHAR (35) ,

cena VARCHAR (8),

primary key (kodtov ));

create table Zakaz (

kodzakaz VARCHAR (8),

kodsotr VARCHAR (8),

kodpostavchika VARCHAR (8),

data_zak VARCHAR (8) ,

primary key (kodzakaz) ,

foreign key (kodsotr) references Sotr,

foreign key (kodpostavchika) references Postavchik);

create table Tov_Zak (

kodtovzak VARCHAR (8),

kodtov VARCHAR (8),

kodzak VARCHAR (8),

primary key(kodtovzak) ,

foreign key(kodtov) references Tovar,

foreign key(kodzak) references Zakaz);

insert into Sotr values ('1','Облаева Т.В.','6 лет','ул.Пархоменко 12-3','42 года','21763','1');

insert into Sotr values ('2','Стюрьева Г.В.','3 года','ул.Весны 14-7','36 лет','21673','1');

insert into Sotr values ('3','Сорокина А.Г.','5 лет','ул.Мира 22-43','29 лет','21954','1');

insert into Sotr values ('4','Буряченко Ю.И.','7 лет','ул.Воронова 32-17','34 года','22644','1');

insert into Sotr values ('5','Плешакова Е.М.','2 года','ул.Пионерская 3-8','27 лет','27164','1');

insert into Sotr values ('6','Асташова О.А.','4 года','ул.Чкалова 21-16','32 года','23758','1');

insert into Sotr values ('7','Жигалова К.Ю.','6 лет','ул.Дружбы 1-12','35 лет','23691','1');

insert into Sotr values ('8','Юрьева Н.В.','3 года','ул.9 мая 15-18','30 лет','24267','1');

insert into Sotr values ('9','Волкова И.К.','8 лет','ул.Крупской 8-6','29 лет','21954','1');

insert into Sotr values ('10','Грачева С.Л.','5 лет','ул.Заводская 57-15','37 лет','21724','1');

insert into Postavchik values ('1','Вуккерт Ф.Ю.','Делси','29671');

insert into Postavchik values ('2','Милёхин А.А.','Троя','36955');

insert into Postavchik values ('3','Старков Б.Г.','Авангард','35742');

insert into Postavchik values ('4','Ермилов В.И.','Фаер','32921');

insert into Postavchik values ('5','Бекетов М.Л.','Авентин','25318');

insert into Postavchik values ('6','Ворничан Э.Е.','Лудинг','48912');

insert into Postavchik values ('7','Жаров К.С.','Прайм','37746');

insert into Postavchik values ('8','Прусов И.И.','Сибиряк','26385');

insert into Postavchik values ('9','Ларин П.Г.','Стар','45296');

insert into Postavchik values ('10','Янков Д.О.','Экор','28248');

insert into Tovar values ('1','Хлеб','16');

insert into Tovar values ('2','Горбуша в банке','35');

insert into Tovar values ('3','Орех мясной','310');

insert into Tovar values ('4','Чай','33');

insert into Tovar values ('5','Кофе','202');

insert into Tovar values ('6','Шоколадная паста','77');

insert into Tovar values ('7','Спагетти','18');

insert into Tovar values ('8','Шоколад','44');

insert into Tovar values ('9','Сгущёнка','45');

insert into Tovar values ('10','Паштет грибной','30');

insert into Prodaja values ('1','16.12','30000 тысяч');

insert into Prodaja values ('2','17.12','28000 тысяч');

insert into Prodaja values ('3','18.12','32000 тысячи');

insert into Prodaja values ('4','19.12','24000 тысячи');

insert into Prodaja values ('5','20.12','36000 тысяч');

insert into Prodaja values ('6','21.12','38000 тысяч');

insert into Prodaja values ('7','22.12','40000 тысяч');

insert into Prodaja values ('8','23.12','41000 тысяча');

insert into Prodaja values ('9','24.12','44000 тысячи');

insert into Prodaja values ('10','25.12','47000 тысяч');

insert into Zakaz values ('1','4','7','11.12');

insert into Zakaz values ('2','3','9','15.12');

insert into Zakaz values ('3','2','8','14.12');

insert into Zakaz values ('4','5','10','12.12');

insert into Zakaz values ('5','7','4','19.12');

insert into Zakaz values ('6','8','6','18.12');

insert into Zakaz values ('7','4','5','13.12');

insert into Zakaz values ('8','6','3','9.12');

insert into Zakaz values ('9','10','2','20.12');

insert into Zakaz values ('10','9','8','17.12');

insert into Tov_Zak values ('1','2','3');

insert into Tov_Zak values ('4','5','6');

insert into Tov_Zak values ('3','7','8');

insert into Tov_Zak values ('5','9','10');

insert into Tov_Zak values ('2','8','2');

insert into Tov_Zak values ('7','4','9');

insert into Tov_Zak values ('6','1','4');

insert into Tov_Zak values ('8','3','7');

insert into Tov_Zak values ('10','6','5');

insert into Tov_Zak values ('9','10','1');

Приложение 3

Программный код ООО «Статус»

program Magazin;

uses

Forms,

Unit1 in 'Unit1.pas' {FormMain},

Unit2 in 'Unit2.pas' {FormReg},

Unit3 in 'Unit3.pas' {FormSotr},

Unit4 in 'Unit4.pas' {DataModule4: TDataModule},

Unit5 in 'Unit5.pas' {FormDanSotr},

Unit6 in 'Unit6.pas' {FormKlient},

Unit7 in 'Unit7.pas' {FormDanKl},

Unit8 in 'Unit8.pas' {FormPostav},

Unit9 in 'Unit9.pas' {FormDanPost},

Unit10 in 'Unit10.pas' {FormTovar},

Unit11 in 'Unit11.pas' {FormDanTov},

Unit12 in 'Unit12.pas' {FormZakaz},

Unit13 in 'Unit13.pas' {FormDanZak};

{$R *.res}

begin

Application.Initialize;

Application.CreateForm(TFormMain, FormMain);

Application.CreateForm(TFormReg, FormReg);

Application.CreateForm(TFormSotr, FormSotr);

Application.CreateForm(TDataModule4, DataModule4);

Application.CreateForm(TFormDanSotr, FormDanSotr);

Application.CreateForm(TFormKlient, FormKlient);

Application.CreateForm(TFormDanKl, FormDanKl);

Application.CreateForm(TFormPostav, FormPostav);

Application.CreateForm(TFormDanPost, FormDanPost);

Application.CreateForm(TFormTovar, FormTovar);

Application.CreateForm(TFormDanTov, FormDanTov);

Application.CreateForm(TFormZakaz, FormZakaz);

Application.CreateForm(TFormDanZak, FormDanZak);

Application.Run;

end.

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Menus, ExtCtrls, jpeg;

type

TFormMain = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

Image1: TImage;

procedure N2Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N9Click(Sender: TObject);

procedure N7Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormMain: TFormMain;

implementation

uses Unit3, Unit6, Unit8, Unit10, unit4, Unit12, Unit14;

{$R *.dfm}

procedure TFormMain.N2Click(Sender: TObject);

begin

FormMain.close

end;

procedure TFormMain.N4Click(Sender: TObject);

begin

if Sender=N4 then FormSotrudnikSender:=None;

if not Assigned (FormKlient)

then FormSotr:=TFormsotr.Create(Application);

Formsotr.WindowState:=wsNormal;

Formsotr.show;

end;

procedure TFormMain.N5Click(Sender: TObject);

begin

FormKlient.show;

end;

procedure TFormMain.N6Click(Sender: TObject);

begin

if Sender=N6 then FormPostavchikSender:=None;

if not Assigned (FormPostav)

then FormPostav:=TFormPostav.Create(Application);

FormPostav.WindowState:=wsNormal;

FormPostav.show;

end;

procedure TFormMain.N7Click(Sender: TObject);

begin

FormTovar.Show;

end;

procedure TFormMain.N8Click(Sender: TObject);

begin

formZakaz.show;

end;

procedure TFormMain.N9Click(Sender: TObject);

begin

Formprog.show;

end;

end.

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, jpeg;

type

TFormReg = class(TForm)

Label1: TLabel;

Label2: TLabel;

Edit1: TEdit;

Edit2: TEdit;

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormReg: TFormReg;

implementation

uses Unit4, Unit1;

{$R *.dfm}

procedure TFormReg.Button1Click(Sender: TObject);

begin

if DataModule4.TableSotrudnik.locate ('FIO;sotrudnikpasswd', vararrayof ([Edit1.text, Edit2.text]),[])

then

begin

showmessage('Добро пожаловать в базу данных ООО Статус');

FormReg.hide;

if Datamodule4.TableSotrudnik.Fieldbyname ('FIO').Value = '<Болтус Е.Ю.>'

then

begin

FormMain.N4.Enabled:=false;

FormMain.N5.Enabled:=false;

FormMain.N6.Enabled:=false;

FormMain.N7.Enabled:=false;

FormMain.show

end;

end

else

begin

showmessage('Ошибка в имени пользователя или пароле');

end;

end;

end.

unit Unit3;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, StdCtrls, Buttons, Menus, ExtCtrls, jpeg, pngimage,

GIFImg;

type

TFormSotr = class(TForm)

DBGrid1: TDBGrid;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

BitBtn5: TBitBtn;

PopupMenu1: TPopupMenu;

Gj1: TMenuItem;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

PopupMenu2: TPopupMenu;

MenuItem1: TMenuItem;

MenuItem2: TMenuItem;

MenuItem3: TMenuItem;

N5: TMenuItem;

Image1: TImage;

Image2: TImage;

Image3: TImage;

Image4: TImage;

Image5: TImage;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure Gj1Click(Sender: TObject);

procedure N1Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure DBGrid1DblClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormSotr: TFormSotr;

implementation

uses Unit5, Unit4, unit13;

{$R *.dfm}

procedure TFormSotr.BitBtn1Click(Sender: TObject);

var txt:string;

begin

if not Assigned (FormDanSotr)

then FormDanSotr:=TFormDanSotr.Create(Application);

FormDanSotr.WindowState:=wsNormal;

FormDanSotr.Show;

DataModule4.TableSotrudnik.Last;

txt:=FormDanSotr.DBEdit1.Text;

DataModule4.TableSotrudnik.Insert;

txt:=IntToStr(StrToInt(txt)+1);

FormDanSotr.DBEdit6.SetFocus;

FormDanSotr.DBEdit1.Text:=txt;

FormDanSotr.DBEdit6.Readonly:=False;

end;

procedure TFormSotr.BitBtn2Click(Sender: TObject);

begin

if application.MessageBox('Вы действительно хотите удалить строку?',

'Подтверждение удаления записи',

mb_YESNO)=idYes

then DataModule4.TableSotrudnik.Delete

end;

procedure TFormSotr.BitBtn3Click(Sender: TObject);

begin

if not Assigned (FormDanSotr)

then FormDanSotr:=TFormDanSotr.Create(Application);

FormDanSotr.WindowState:=wsNormal;

FormDanSotr.Show;

DataModule4.TableSotrudnik.Edit;

FormDanSotr.DBEdit6.Readonly:=False;

end;

procedure TFormSotr.BitBtn4Click(Sender: TObject);

begin

if not Assigned (FormDanSotr)

then FormDanSotr:=TFormDanSotr.Create(Application);

FormDanSotr.WindowState:=wsNormal;

FormDanSotr.Show;

FormDanSotr.DBEdit1.Readonly:=true;

FormDanSotr.DBEdit2.Readonly:=true;

FormDanSotr.DBEdit3.Readonly:=true;

FormDanSotr.DBEdit4.Readonly:=true;

FormDanSotr.DBEdit5.Readonly:=true;

FormDanSotr.DBEdit6.Readonly:=true;

end;

procedure TFormSotr.DBGrid1DblClick(Sender: TObject);

begin

case FormSotrudnikSender of

zakaz: begin

DataModule4.TableZakaz.FieldByName('FIO').Value:=

DataModule4.TableSotrudnik.FieldByName('FIO').Value;

FormDanZak.DBEdit5.Text:=

DataModule4.TableSotrudnik.FieldByName('FIO').Value;

DataModule4.TableZakaz.FieldByName('kodsotr').Value:=

DataModule4.TableSotrudnik.FieldByName('kodsotr').Value;

FormDanZak.DBEdit4.Text:=

DataModule4.TableSotrudnik.FieldByName('kodsotr').Value;

end;

end;

if FormSotrudnikSender<>None then Close

end;

procedure TFormSotr.Gj1Click(Sender: TObject);

begin

DataModule4.TableSotrudnik.IndexFieldNames:='kodsotr'

end;

procedure TFormSotr.N1Click(Sender: TObject);

begin

DataModule4.TableSotrudnik.IndexFieldNames:='FIO'

end;

procedure TFormSotr.N2Click(Sender: TObject);

begin

DataModule4.TableSotrudnik.IndexFieldNames:='expir'

end;

procedure TFormSotr.N3Click(Sender: TObject);

begin

DataModule4.TableSotrudnik.IndexFieldNames:='adr'

end;

procedure TFormSotr.N4Click(Sender: TObject);

begin

DataModule4.TableSotrudnik.IndexFieldNames:='age'

end;

end.

unit Unit4;

interface

uses

SysUtils, Classes, DB, DBTables;

type

TDataModule4 = class(TDataModule)

Sotrudnik: TDataSource;

TableSotrudnik: TTable;

Prodaja: TDataSource;

TableProdaja: TTable;

TablePostav: TTable;

Postav: TDataSource;

TableTovar: TTable;

Tovar: TDataSource;

TableZakaz: TTable;

Zakaz: TDataSource;

TableSotrudnikKODSOTR: TStringField;

TableSotrudnikFIO: TStringField;

TableSotrudnikEXPIR: TStringField;

TableSotrudnikADR: TStringField;

TableSotrudnikAGE: TStringField;

TableSotrudnikTEL: TStringField;

TableSotrudnikSOTRUDNIKPASSWD: TStringField;

TableProdajaKODPROD: TStringField;

TableProdajaDATA_PROD: TStringField;

TableProdajaPROFIT: TStringField;

TablePostavKODPOSTAVCHIKA: TStringField;

TablePostavFIO: TStringField;

TablePostavFIRM: TStringField;

TablePostavTEL: TStringField;

TableTovarKODTOV: TStringField;

TableTovarNAZVTOV: TStringField;

TableTovarCENA: TStringField;

TableZakazKODZAKAZ: TStringField;

TableZakazKODSOTR: TStringField;

TableZakazKODPOSTAVCHIKA: TStringField;

TableZakazDATA_ZAK: TStringField;

TableZakazFIO: TStringField;

TableZakazFIOP: TStringField;

private

{ Private declarations }

public

{ Public declarations }

end;

var

DataModule4: TDataModule4;

formSotrudnikSender, formPostavchikSender:(None, Zakaz, report);

implementation

{$R *.dfm}

end.

unit Unit5;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Mask, DBCtrls, jpeg, ExtCtrls;

type

TFormDanSotr = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

DBEdit4: TDBEdit;

DBEdit5: TDBEdit;

DBEdit6: TDBEdit;

Button1: TButton;

DBEdit7: TDBEdit;

Label7: TLabel;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormDanSotr: TFormDanSotr;

implementation

uses Unit4;

{$R *.dfm}

procedure TFormDanSotr.Button1Click(Sender: TObject);

begin

if not DBEdit2.ReadOnly

then DataModule4.TableSotrudnik.Post;

FormDanSotr.Close

end;

end.

unit Unit6;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Menus, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls, jpeg, pngimage,

GIFImg;

type

TFormKlient = class(TForm)

DBGrid1: TDBGrid;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

BitBtn5: TBitBtn;

PopupMenu1: TPopupMenu;

Gj1: TMenuItem;

N1: TMenuItem;

N3: TMenuItem;

PopupMenu2: TPopupMenu;

N2: TMenuItem;

MenuItem1: TMenuItem;

MenuItem2: TMenuItem;

N5: TMenuItem;

Image1: TImage;

Image2: TImage;

Image3: TImage;

Image4: TImage;

Image5: TImage;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure Gj1Click(Sender: TObject);

procedure N1Click(Sender: TObject);

procedure N3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormKlient: TFormKlient;

implementation

uses Unit7, Unit4, Unit5, Unit13;

{$R *.dfm}

procedure TFormKlient.BitBtn1Click(Sender: TObject);

var txt:string;

begin

if not Assigned (FormDanKl)

then FormDanKl:=TFormDanKl.Create(Application);

FormDanKl.WindowState:=wsNormal;

FormDanKl.Show;

DataModule4.TableProdaja.Last;

txt:=FormDanKl.DBEdit1.Text;

DataModule4.TableProdaja.Insert;

txt:=IntToStr(StrToInt(txt)+1);

FormDanKl.DBEdit4.SetFocus;

FormDanKl.DBEdit1.Text:=txt;

FormDanKl.DBEdit4.Readonly:=False;

end;

procedure TFormKlient.BitBtn2Click(Sender: TObject);

begin

if application.MessageBox('Вы действительно хотите удалить строку?',

'Подтверждение удаления записи',

mb_YESNO)=idYes

then DataModule4.TableProdaja.Delete

end;

procedure TFormKlient.BitBtn3Click(Sender: TObject);

begin

if not Assigned (FormDanKl)

then FormDanKl:=TFormDanKl.Create(Application);

FormDanKl.WindowState:=wsNormal;

FormDanKl.Show;

DataModule4.TableProdaja.Edit;

FormDanKl.DBEdit4.Readonly:=False;

end;

procedure TFormKlient.BitBtn4Click(Sender: TObject);

begin

if not Assigned (FormDanKl)

then FormDanKl:=TFormDanKl.Create(Application);

FormDanKl.WindowState:=wsNormal;

FormDanKl.Show;

FormDanKl.DBEdit1.Readonly:=true;

FormDanKl.DBEdit2.Readonly:=true;

FormDanKl.DBEdit4.Readonly:=true;

end;

procedure TFormKlient.Gj1Click(Sender: TObject);

begin

DataModule4.TableProdaja.IndexFieldNames:='kodprod'

end;

procedure TFormKlient.N1Click(Sender: TObject);

begin

DataModule4.TableProdaja.IndexFieldNames:='Data_prod'

end;

procedure TFormKlient.N3Click(Sender: TObject);

begin

DataModule4.TableProdaja.IndexFieldNames:='Profit'

end;

end.

unit Unit7;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Mask, DBCtrls, jpeg, ExtCtrls;

type

TFormDanKl = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label4: TLabel;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit4: TDBEdit;

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormDanKl: TFormDanKl;

implementation

uses Unit4;

{$R *.dfm}

procedure TFormDanKl.Button1Click(Sender: TObject);

begin

if not DBEdit2.ReadOnly

then DataModule4.TableProdaja.Post;

FormDanKl.Close

end;

end.

unit Unit8;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, Menus, StdCtrls, Buttons, ExtCtrls, jpeg, pngimage,

GIFImg;

type

TFormPostav = class(TForm)

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

BitBtn5: TBitBtn;

PopupMenu1: TPopupMenu;

Gj1: TMenuItem;

N1: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

DBGrid1: TDBGrid;

N2: TMenuItem;

PopupMenu2: TPopupMenu;

MenuItem1: TMenuItem;

MenuItem2: TMenuItem;

MenuItem3: TMenuItem;

N5: TMenuItem;

Image1: TImage;

Image2: TImage;

Image3: TImage;

Image4: TImage;

Image5: TImage;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure Gj1Click(Sender: TObject);

procedure N1Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure DBGrid1DblClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormPostav: TFormPostav;

implementation

uses Unit9, Unit4, unit13;

{$R *.dfm}

procedure TFormPostav.BitBtn1Click(Sender: TObject);

var txt:string;

begin

if not Assigned (FormDanPost)

then FormDanPost:=TFormDanPost.Create(Application);

FormDanPost.WindowState:=wsNormal;

FormDanPost.Show;

DataModule4.TablePostav.Last;

txt:=FormDanPost.DBEdit1.Text;

DataModule4.TablePostav.Insert;

txt:=IntToStr(StrToInt(txt)+1);

FormDanPost.DBEdit5.SetFocus;

FormDanPost.DBEdit1.Text:=txt;

FormDanPost.DBEdit5.Readonly:=False;

end;

procedure TFormPostav.BitBtn2Click(Sender: TObject);

begin

if application.MessageBox('Вы действительно хотите удалить строку?',

'Подтверждение удаления записи',

mb_YESNO)=idYes

then DataModule4.TablePostav.Delete

end;

procedure TFormPostav.BitBtn3Click(Sender: TObject);

begin

if not Assigned (FormDanPost)

then FormDanPost:=TFormDanPost.Create(Application);

FormDanPost.WindowState:=wsNormal;

FormDanPost.Show;

DataModule4.TablePostav.Edit;

FormDanPost.DBEdit5.Readonly:=False;

end;

procedure TFormPostav.BitBtn4Click(Sender: TObject);

begin

if not Assigned (FormDanPost)

then FormDanPost:=TFormDanPost.Create(Application);

FormDanPost.WindowState:=wsNormal;

FormDanPost.Show;

FormDanPost.DBEdit1.Readonly:=true;

FormDanPost.DBEdit2.Readonly:=true;

FormDanPost.DBEdit3.Readonly:=true;

FormDanPost.DBEdit5.Readonly:=true;

end;

procedure TFormPostav.DBGrid1DblClick(Sender: TObject);

begin

case FormPostavchikSender of

zakaz: begin

DataModule4.TableZakaz.FieldByName('FIOP').Value:=

DataModule4.TablePostav.FieldByName('FIO').Value;

FormDanZak.DBEdit6.Text:=

DataModule4.TablePostav.FieldByName('FIO').Value;

DataModule4.TableZakaz.FieldByName('kodpostavchika').Value:=

DataModule4.TablePostav.FieldByName('kodpostavchika').Value;

FormDanZak.DBEdit3.Text:=

DataModule4.TablePostav.FieldByName('kodpostavchika').Value;

end;

end;

if FormPostavchikSender<>None then Close

end;

procedure TFormPostav.Gj1Click(Sender: TObject);

begin

DataModule4.TablePostav.IndexFieldNames:='kodpostavchika'

end;

procedure TFormPostav.N1Click(Sender: TObject);

begin

DataModule4.TablePostav.IndexFieldNames:='FIO'

end;

procedure TFormPostav.N2Click(Sender: TObject);

begin

DataModule4.TablePostav.IndexFieldNames:='firm'

end;

procedure TFormPostav.N3Click(Sender: TObject);

begin

DataModule4.TablePostav.IndexFieldNames:='tel'

end;

end

unit Unit9;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Mask, DBCtrls, jpeg, ExtCtrls;

type

TFormDanPost = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label5: TLabel;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

DBEdit5: TDBEdit;

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormDanPost: TFormDanPost;

implementation

uses Unit4;

{$R *.dfm}

procedure TFormDanPost.Button1Click(Sender: TObject);

begin

if not DBEdit2.ReadOnly

then DataModule4.TablePostav.Post;

FormDanPost.Close

end;

end.

unit Unit10;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, Menus, StdCtrls, Buttons, ExtCtrls, jpeg, pngimage,

GIFImg;

type

TFormTovar = class(TForm)

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

BitBtn5: TBitBtn;

PopupMenu1: TPopupMenu;

Gj1: TMenuItem;

N1: TMenuItem;

N2: TMenuItem;

DBGrid1: TDBGrid;

PopupMenu2: TPopupMenu;

MenuItem1: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

Image1: TImage;

Image2: TImage;

Image3: TImage;

Image4: TImage;

Image5: TImage;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure Gj1Click(Sender: TObject);

procedure N1Click(Sender: TObject);

procedure N2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormTovar: TFormTovar;

implementation

uses Unit11, Unit4, Unit5, Unit13;

{$R *.dfm}

procedure TFormTovar.BitBtn1Click(Sender: TObject);

var txt:string;

begin

if not Assigned (FormDanTov)

then FormDanTov:=TFormDanTov.Create(Application);

FormDanTov.WindowState:=wsNormal;

FormDanTov.Show;

DataModule4.TableTovar.Last;

txt:=FormDanTov.DBEdit1.Text;

DataModule4.TableTovar.Insert;

txt:=IntToStr(StrToInt(txt)+1);

FormDanTov.DBEdit3.SetFocus;

FormDanTov.DBEdit1.Text:=txt;

FormDanTov.DBEdit3.Readonly:=False;

end;

procedure TFormTovar.BitBtn2Click(Sender: TObject);

begin

if application.MessageBox('Вы действительно хотите удалить строку?',

'Подтверждение удаления записи',

mb_YESNO)=idYes

then DataModule4.TableTovar.Delete

end;

procedure TFormTovar.BitBtn3Click(Sender: TObject);

begin

if not Assigned (FormDanTov)

then FormDanTov:=TFormDanTov.Create(Application);

FormDanTov.WindowState:=wsNormal;

FormDanTov.Show;

DataModule4.TableTovar.Edit;

FormDanTov.DBEdit3.Readonly:=False;

end;

procedure TFormTovar.BitBtn4Click(Sender: TObject);

begin

if not Assigned (FormDanTov)

then FormDanTov:=TFormDanTov.Create(Application);

FormDanTov.WindowState:=wsNormal;

FormDanTov.Show;

FormDanTov.DBEdit1.Readonly:=true;

FormDanTov.DBEdit2.Readonly:=true;

FormDanTov.DBEdit3.Readonly:=true;

end;

procedure TFormTovar.Gj1Click(Sender: TObject);

begin

DataModule4.TableTovar.IndexFieldNames:='Ntov'

end;

procedure TFormTovar.N1Click(Sender: TObject);

begin

DataModule4.TableTovar.IndexFieldNames:='Nazvtov'

end;

procedure TFormTovar.N2Click(Sender: TObject);

begin

DataModule4.TableTovar.IndexFieldNames:='Cena'

end;

end.

unit Unit11;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Mask, DBCtrls, jpeg, ExtCtrls;

type

TFormDanTov = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormDanTov: TFormDanTov;

implementation

uses Unit4;

{$R *.dfm}

procedure TFormDanTov.Button1Click(Sender: TObject);

begin

if not DBEdit1.ReadOnly

then DataModule4.TableTovar.Post;

FormDanTov.Close

end;

end.

unit Unit12;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Menus, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, jpeg, pngimage,

GIFImg;

type

TFormZakaz = class(TForm)

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

BitBtn5: TBitBtn;

DBGrid1: TDBGrid;

PopupMenu1: TPopupMenu;

Gj1: TMenuItem;

N1: TMenuItem;

PopupMenu2: TPopupMenu;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

Image1: TImage;

Image2: TImage;

Image3: TImage;

Image4: TImage;

Image5: TImage;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure Gj1Click(Sender: TObject);

procedure N1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormZakaz: TFormZakaz;

implementation

uses Unit13, Unit4;

{$R *.dfm}

procedure TFormZakaz.BitBtn1Click(Sender: TObject);

var txt:string;

begin

if not Assigned (FormDanZak)

then FormDanZak:=TFormDanZak.Create(Application);

FormDanZak.WindowState:=wsNormal;

FormDanZak.Show;

DataModule4.TableZakaz.Last;

txt:=FormDanZak.DBEdit1.Text;

DataModule4.TableZakaz.Insert;

txt:=IntToStr(StrToInt(txt)+1);

DataModule4.TableZakaz.FieldByName('Data_zak').Value:=Date;

FormDanZak.DBEdit6.SetFocus;

FormDanZak.DBEdit1.Text:=txt;

FormDanZak.DBEdit6.Readonly:=False;

end;

procedure TFormZakaz.BitBtn2Click(Sender: TObject);

begin

if application.MessageBox('Вы действительно хотите удалить строку?',

'Подтверждение удаления записи',

mb_YESNO)=idYes

then DataModule4.TableZakaz.Delete

end;

procedure TFormZakaz.BitBtn3Click(Sender: TObject);

begin

if not Assigned (FormDanZak)

then FormDanZak:=TFormDanZak.Create(Application);

FormDanZak.WindowState:=wsNormal;

FormDanZak.Show;

DataModule4.TableZakaz.Edit;

FormDanZak.DBEdit5.Readonly:=False;

end;

procedure TFormZakaz.BitBtn4Click(Sender: TObject);

begin

if not Assigned (FormDanZak)

then FormDanZak:=TFormDanZak.Create(Application);

FormDanZak.WindowState:=wsNormal;

FormDanZak.Show;

FormDanZak.DBEdit1.Readonly:=true;

FormDanZak.DBEdit2.Readonly:=true;

FormDanZak.DBEdit4.Readonly:=true;

FormDanZak.DBEdit5.Readonly:=true;

FormDanZak.DBEdit6.Readonly:=true;

end;

procedure TFormZakaz.Gj1Click(Sender: TObject);

begin

DataModule4.TableZakaz.IndexFieldNames:='kodzak'

end;

procedure TFormZakaz.N1Click(Sender: TObject);

begin

DataModule4.TableZakaz.IndexFieldNames:='DATA_zak'

end;

end.

unit Unit13;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Mask, DBCtrls, ExtCtrls, jpeg;

type

TFormDanZak = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

DBEdit4: TDBEdit;

DBEdit5: TDBEdit;

DBEdit6: TDBEdit;

Button1: TButton;

Button2: TButton;

Button3: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormDanZak: TFormDanZak;

implementation

uses Unit4, Unit1;

{$R *.dfm}

procedure TFormDanZak.Button1Click(Sender: TObject);

begin

if not DBEdit2.ReadOnly

then DataModule4.TableZakaz.Post;

FormDanZak.Close

end;

procedure TFormDanZak.Button3Click(Sender: TObject);

begin

FormSotrudnikSender:=Zakaz;

FormMain.N4Click(Sender);

DataModule4.TableSotrudnik.Locate('FIO',DataModule4.TableZakaz.FieldByName('FIO').Value,[]);

DataModule4.TableSotrudnik.Locate('kodsotr',DataModule4.TableZakaz.FieldByName('kodsotr').Value,[])

end;

procedure TFormDanZak.Button2Click(Sender: TObject);

begin

FormPostavchikSender:=Zakaz;

FormMain.N6Click(Sender);

DataModule4.TablePostav.Locate('FIO',DataModule4.TableZakaz.FieldByName('FIOP').Value,[]);

DataModule4.TablePostav.Locate('kodpostavchika',DataModule4.TableZakaz.FieldByName('kodpostavchika').Value,[])

end;

end.

unit Unit14;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, jpeg, ExtCtrls;

type

TFormProg = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

private

{ Private declarations }

public

{ Public declarations }

end;

var

FormProg: TFormProg;

implementation

{$R *.dfm}

end.

Размещено на http://www.allbest.ru


Подобные документы

  • Проектирование логической структуры базы данных методом нормальных форм, сущность связь. Сравнительный анализ спроектированной базы данных и базы данных существующих информационных систем. Выбор и обоснование состава технических и программных средств.

    курсовая работа [3,0 M], добавлен 22.12.2014

  • Схема взаимодействия подразделений предприятия. Выбор и обоснование технологии проектирования базы данных. Описание объектов базы данных. Разработка запросов на выборку, изменение, обновление и удаление данных. Интерфейсы взаимодействия с базой данных.

    курсовая работа [1,4 M], добавлен 25.05.2023

  • Разработка программного обеспечения для автоматизации деятельности работников книжного магазина. Проектирование информационной системы с использованием базы данных Access. Методы хранения данных. Средства защиты данных от несанкционированного доступа.

    контрольная работа [664,9 K], добавлен 13.06.2014

  • Разработка информационной системы ресторана, определение ее границ для реализации базы данных. Перечень запросов, отчетов и операций по вводу информации в информационной системе "Ресторан". Проектирование базы данных, выбор средств ее реализации.

    курсовая работа [7,6 M], добавлен 27.04.2011

  • Проектирование информационной системы бронирования билетов кассы аэропорта. Анализ информационных задач и круга пользователей системы. Составление реляционных отношений. Дополнительные ограничения целостности. Физическое проектирование базы данных.

    курсовая работа [949,1 K], добавлен 28.03.2011

  • Системный анализ предметной области проектируемой базы данных. Экономическая сущность комплекса экономических информационных задач. Проектные решения по программному обеспечению комплекса задач. Структура базы данных и технологическое обеспечение.

    курсовая работа [303,7 K], добавлен 27.02.2009

  • Проектирование и создание информационной базы данных для управления предприятием "Завод металлоизделий". Данные для базы, предметная область, атрибуты объектов базы данных. Объектные отношения, их ключи, связи объектов и отношений базы данных предприятия.

    реферат [26,9 K], добавлен 04.12.2009

  • Разработка информационной системы туристического агентства с использованием современных инструментальных средств, технологий; создание ее прототипа; определение целей, задач и функций ИС. Концептуальное, логическое и физическое проектирование базы данных.

    курсовая работа [1,1 M], добавлен 09.06.2013

  • Организация документооборота корпоративного отдела. Описание состава задач, подлежащих автоматизации, входной и выходной информации. Разработка состава и структуры базы данных, описание пользовательского интерфейса. Экономический эффект автоматизации.

    дипломная работа [2,9 M], добавлен 05.12.2011

  • Исследование методов и способов разработки информационных систем. Автоматизация деятельности продовольственного магазина. Проектирование логической схемы информационной системы. Разработка модели базы данных и структуры вычислительно-локальной сети.

    курсовая работа [389,2 K], добавлен 16.03.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.