Розробка бази даних "Салон краси"

Проектування бази даних у середовищі Visual FoxPro 9.0. Реалізація можливості вносити та зберігати дані про клієнтів салону, про співробітників, перелік послуг, які надає салон. Створення форм та таблиць. Керівництво користувача і лістинг програми.

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

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

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

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

Зміст

Анотація

Введення

1. Загальна частина

1.1 Технічне завдання

1.2 Постановка задачі

1.3 Проектування інформаційної моделі

2. Порядок побудови

2.1 Створення таблиць

2.2 Створення форм

2.3 Створення звітів

Висновки

Література

Додаток 1. Керівництво користувача

Додаток 2. Лістинг програми

Анотація

В даному курсовому проекті було розроблено базу даних «Салон краси». Для проектування було обрано мову програмування Visual FoxPro 9.0. В програмі реалізовано можливість вносити та зберігати дані про клієнтів салону, про співробітників, перелік послуг, які надає салон, а також про надані послуги. Програма складається з 4 таблиць, 9 форм та 3 звітів.

Annotation

In this course project has developed a database of «Beauty Shop». For the design was chosen programming language Visual FoxPro 9.0. The program implemented the ability to make and store customer data interior of employees, services offered by the salon, as well as the services provided. The program consists of 4 tables 3 and 9 of reports.

Введення

Темою мого курсового проекту є створення бази даних салону краси, який я назву Краса. База даних, яка розроблятиметься, належить до електронних сховищ, які є дуже розповсюдженими в сучасному світі. До особливостей таких сховищ можна віднести наступне:

· Великий масив інформаційного контенту, що регулярно оновлюється;

· Велика база товарів та клієнтів, що постійно змінюється;

· Велика база запитів та їх обробка.

В сучасному світі, асортимент послуг, які надають салони краси вражає своїм розмахом. Але від цього попит на красу не зменшується, адже всі хочуть бути гарними та доглянутими та йти в ногу з сучасністю. Попит на послуги салонів краси неухильно росте. У сучасному суспільстві вважається непристойним з'являтися без манікюру-педікюру, зачіски, доглянутого тіла, а в домашніх умовах такого ж ефекту домогтися складно, та й немаловажним фактором є економія часу, сил й отримання позитивних емоцій. Також без автоматизації та комп'ютерного супроводу сьогодні неможливо уявити жодну сферу діяльності.

В базі даних салону краси буде доцільно зберігати інформацію про співробітників та контактні дані клієнтів салону, мати повний перелік послуг, які надає салон, записувати, редагувати, видаляти всю потрібну інформацію. А також зберігати замовлення, тобто надані послуги салону краси до електронної бази.

Створення такої бази даних дозволить не тільки швидше переглядати весь наявний перелік послуг в салоні краси, але й значно полегшить роботу оператора/користувачча, так дозволить зберігати всі потрібні дані в електронному вигляді та за необхідності, швидко їх оброблювати.

База даних буде мати зручний та зрозумілий інтерфейс, який значно спростить роботу оператора-користувача з усією системою.

Для можливості виведення на друк я також буду створювати необхідні звіти.

З розвитком постановки завдання в базі даних також буде передбачено та створено можливість отримання клубної, тобто зниженої ціни, на отримання послуг в салоні, а також систему знижок: якщо клієнт салону за один календарний день отримає послуг на 3000 грн або більше, то на останню з замовлених послуг йому буде надано знижку у розмірі 50% від її вартості.

База даних буде створена з використанням системи керування базами даних Visual FoxPro 9.0.

1. Загальна частина

1.1 Технічне завдання

Найменування та область застосування

Даний курсовий проект буде використовуватися для ведення бази даних салону краси, а також буде мати можливість надавати повний перелік клієнтів салону, співробітників, виводити та проводити відбір послуг та записувати дані про надані послуги в салоні. Всі дані будуть вводитися та оброблюватися за допомогою форм, а зберігатися в таблицях.

Підстава для розробки

Завдання видане викладачем Граф М.С. та затверджене головою циклової комісії КТ та Пр Окуньковою О.О. та заступником директора з навчальної роботи Силантьєвою О.С. 04.12.2015р.

Вимоги до програмного забезпечення

Для створення бази даних я використала СКБД FoxPro 9.0. Для успішної роботи бази даних на комп'ютері повинна бути встановлена операційна система Windows XP та СКБД FoxPro 9.0.

Вимоги до апаратного забезпечення

· рроцесор 500 Мгц або більше;

· ОЗУ 256 Мб або більше;

· графічний процесор;

· вільне місце на диску 100 Мб або більше.

Вимоги до програмного продукту

1. Вимоги до функціональних характеристик

· Введення/виведення інформації

· Вилучення даних

· Пошук даних

· Фільтрування даних

· Друк вибіркової інформації

2. Вимоги до надійності

· Передбачити контроль інформації що вводиться

· Захист ключових полів від некоректного введення (автоматичне заповнення)

· Цілісність інформації в базі даних

1.2 Постановка задачі

Вхідними даними для рішення поставленої задачі автоматизації роботи салону краси є:

· перелік послуг, які надаються в салоні;

· дані про співробітників;

· дані про клієнтів салону.

Вихідними даними є перегляд послуг, які надаються в салоні краси відповідно заданому критерію, можливість оформлення послуги, пошук потрібної інформації.

Всі дані розбито на таблиці “Клієнти”, “Співробітники”, «Послуги» та «Замовлення». Перелік інформації, що вводиться:

Про клієнтів:

- Код клієнта;

- Назва або ПІБ клієнта;

- Телефон.

Про співробітників:

- Код співробітника;

- Прізвище;

- Ім'я;

- По батькові;

- Адреса;

- Телефон;

- Дата народження.

Про послуги:

- Код послуги;

- Група послуги або її вид;

- Найменування послуги;

- Тривалість послуги;

- Ціна;

- Клубна ціна.

Інформація про отримані послуги/замовлення:

- Код замовлення;

- Код послуги;

- Код співробітника;

- Код клієнта;

- Дата;

- Кількість;

- Сплачена вартість.

В базі даних створено чотири таблиці, кожна з яких має свій набір полів різних типів. (таблиця 1)

Таблиця 1

Назва поля в БД

Призначення поля

Тип поля

Довжина поля

Таблиця послуг

id_pos

Код послуги

Numeric

6

vid

Вид послуги

Character

25

naimenov

Найменування

Character

100

trivalist

Тривалість

Numeric

3

cina

Ціна

Numeric

8

cina_kl

Клубна ціна

Numeric

8

Таблиця співробітників

id_sp

Код співробітника

Numeric

4

priz

Прізвище співробітника

Character

30

imya

Ім'я співробітника

Character

20

pobatk

По батькові співробітника

Character

25

adress

Адреса співробітника

Character

100

telefon

Телефон співробітника

Numeric

10

data_nar

Дата народження

Date

8

Таблиця клієнтів

id_kl

Код клієнта

Numeric

6

priz

Прізвище

Character

30

imya

Ім'я

Character

20

pobatk

По батькові

Numeric

25

telefon

Телефон

Numeric

10

Таблиця замовлення

id_zam

Код замовлення

Numeric

4

id_pos

Код послуги

Numeric

4

id_sp

Код співробітника

Numeric

4

id_kl

Код клієнта

Numeric

4

data

Дата

Numeric

3

kilkist

Кількість

Numeric

10

vartist

Вартість

Date

8

Для створення бази даних використовується СКБД FoxPro 9.0. Програма працює від керуванням операційної системи Windows XP або вище.

1.3 Проектування інформаційної моделі

база дані лістинг таблиця

При проектуванні бази даних я розбила всі вхідні дані на таблиці, створила таблиці та розробила інформаційну модель мого проекту (рис.1).

Рис.1.

Між всіма створеними таблицями я встановила зв'язки між відповідними полями. Тип зв'язку, який я обрав один-до-багатьох. Тобто, можна задати одному клієнту декілька послуг, або одному співробітнику декілька продажів і т.д. Для того, щоб встановити такий тип зв'язку, потрібно вказати в одній таблиці (наприклад в таблиці співробітників або в таблиці клієнтів) індексне поле з типом індексу Primery, а в іншій таблиці - індексне поле з типом Regular (наприклад поля код_клієнта та код співробітника в таблиці продажу).

2. Порядок побудови

2.1 Створення таблиць

При побудовів спочатку я створив проект з назвою cosm.pjx, в проекті створив базу даних з назвою cosm, в створеній базі даних я створив чотири таблиці в режимі конструктора.

При створенні таблиці, до якої будуть в майбутньому заноситися інформація про послуги салону краси я вказав наступні поля, обрав типи полів, довжину кожного поля та поле, яке за яким буде встановлено зв'язок (рис.2).

Рис.2.

І полі код_послуги я обрав тип індексу:

Рис.3

Другою таблицею я створив таблицю, до якої можна буде вносити всю необхідну інформацію про співробітників салону краси. В якості індексного поля я обрав поле код_співробітника.

Рис.4

Тип індексу для поля код_співробітника я обрав як показано на рис.5.

Рис.5

Третя таблиця в базі - таблиця з інформацією про клієнтів салону. В даній таблиці буде розміщено основну інформацію про клієнтів салону. В полі назва_прізвище буде вноситися інформація про назву організації, яка купує товар або прізвище, якщо покупцем є приватна особа.

Рис.6

Тип індексного поля я встановив як показано на рис.7.

Рис.7

Остання, четверта таблиця в моїй базі даних - це таблиця з інформацією про надані послуги (замовлення). В даній таблиці буде зберігатися інформація про надані послуги, дату оформлення, кількість, а також коди клієнтів, які купили той чи інший товар, коди співробітників, які даний товар продали та кінцева сплачена ціна (поле вартість), в якій вже враховано клубна цана або звичайна, а також чи було надано знижку.

Рис.8

В даній таблиці для одного поля, код_замовлення, я вказав тип індексу Primery, для полів код_послуги, код_співробітника та код_клієнта - тип індексу Regular (рис.9).

Рис.9

Після того, як всі таблиці було спроектовано, встановлено всі необхідні зв'язки між відповідними полями таблиць, я вніс до кожної таблиці відповідні дані.

Таблиця з переліком послуг салону краси наступний вигляд:

Рис.10

Таблиця з внесеною інформацією про співробітників, які працюють в салоні краси:

Рис.11

Рис.12

Рис.13

2.2 Створення форм

Після створення таблиць в проекті моєї бази даних я почав створювати форми. Робота у формах можлива буде з будь-якою інформацією, яку вміщує база даних. Користувачу-оператору значно легше працювати з інформацією у вигляді форм, тому що вони мають більш привабливий та звичний вигляд.

Всі форми в моєму проекті я створив у режимі конструктора. Даний режим створення форм дозволяє створювати форми за власним смаком, додавати всі необхідні елементи, проводити сортування та фільтрація необхідних даних, проводити підрахунки та багато іншого.

Першою формою я створив форму, за допомогою якої можна буде додавати та вилучати дані про клієнтів салону краси. Також в даній формі можна по одному переглянути інформацію про кожного клієнта магазину. В режимі конструктора форма має вигляд як приведено на рис.14.

Рис.14

Дану форму я створював за допомогою FormSet, тобто за допомого вбудованої опції, яка дозволяє створювати в одній формі декілька форм. В даному випадку я обрала саме такий режим проектування тому що він дозволяє більш легко організувати можливість проведення пошуку потрібної інформації. Для пошуку я обрав поле Назва_ПІБ клієнта.

Кнопки в даній формі мають такі коди:

Перший запис:

GO TOP

thisform.Refresh

Наступний запис

IF RECNO()!=RECCOUNT()

SKIP 1

ELSE

MESSAGEBOX(" Останній запис")

endif

thisform.refresh

Попередній запис:

IF RECNO()!=1 THEN

skip-1

ELSE

MESSAGEBOX('Ви знаходитесь на першому записі')

ENDIF

thisform.refresh

Останній запис:

GO BOTTOM

thisform.Refresh

Додати клієнта:

GO BOTTOM

n=klienti.id_kl

p=n+1

APPEND BLANK

REPLACE klienti.id_kl WITH p

thisform.Refresh

Видалити клієнта:

DELETE

nAnswer =MESSAGEBOX("Ви дійсно хочете вилучити запис?",36,"Запит на вилучення")

DO CASE

CASE nAnswer = 6

pack

CASE nAnswer = 7

RECALL

ENDCASE

IF RECNO()=RECCOUNT()

SKIP -1

ELSE SKIP 1

ENDIF

thisform.refresh

Кнопка Вихід:

CLOSE TABLES all

thisformset.Release

thisform.Visible = .F.

Кнопка пошук:

thisformset.FORM2.visible= .T.

При проведенні пошуку з першої з підформи даної форми за допомогою кнопки Пошук відкривається друга підформа, в другій підформі вводиться назва або прізвище клієнта та натискається кнопка Знайти. Після чого другі підформа стає невидимою, а в першій підформі відкривається запис, який відповідає пошуковому запиту.

В завантаженому вигляді форма має вигляд:

Рис.15

Полю, призначеному для введення назви або прізвища клієнта я привласнив змінну q, яка буду використовувати при проведенні пошуку.

Кнопка Знайти має такий код:

a=RECNO()

LOCATE for priz = ALLTRIM(q)

IF priz!=ALLTRIM(q)

MESSAGEBOX("Такого клієнта нема в базі", 0+64+0, "ПОПЕРЕДЖЕННЯ")

go top

ENDIF

thisformset.form1.Refresh

thisformset.form2.Visible= .F.

За аналогією до даної форми я створив форми для додавання/редагування та вилучення інформації про співробітників та інформації про послуги, які надає салон краси.

Форма для роботи з даними про співробітників в режимі конструктора приведена на рис.16.

Рис.16

Форма для опрацювання інформації про послуги, внесення нових послуг, редагування вже існуючої інформації та вилучення застарілої інформації про послуги, які надає салон краси в режимі конструктора приведена на рис.17.

Коди кнопок у формах Послуги та Співробітника аналогічні до кодів, які я прописав для форми Клієнти.

Для можливості перегляду всієї інформації про клієнтів магазину я створив окрему форму. Вигляд форми в режимі конструктора форм приведено на рис.18.

Рис.17

Рис.18

З даної форми можна перейти до форми додавання/редагування/вилучення інформації про клієнтів. За дану дію відповідає кнопка «Додати/видалити клієнта», яка має код:

CLOSE TABLES all

thisform.Release

DO form klients.scx

Досить часто виникає ситуація, коли дані потрібно вивести на друк, саме з цією метою я створив кнопку «Роздрукувати», на якій прописав код для відкриття майбутнього звіту з інформацією про клієнтів магазину:

REPORT FORM klients preview

Аналогічно до даної форми я також створив форму, за допомгою якої можна буде переглянули інформацію про всіх співрбітників, які працюють в даному салоні краси. В режимі конструктора дана форма має вигляд (рис.19):

Рис.19

Для можливості перегляду послуги, які надає даний салон краси я створив відповідну форму. В режи конструктора вона приведена на рис.20.

Рис.20

Дана форма базується на елементі Grid, до якого занесено всю інформацію з таблиці послуги. Також в даному елементі кожна складова змінена для більш зручного відображення. Наприклад: змінена шрифти та колір, вирівнювання тексту. В завантаженому вигляді дана форма має вигляд:

Рис.21

Досить часто виникає необхідність відобразити тільки одну категорію товару, одну групу товару, обрати товар тілько, наприклад, червоного кольору. Така фільтрація просто необхідна тоді, коли в салоні набирається досить великий асортиммент послуг і охопити його одним поглядом неможливо, а здійснювати очима вибірку наявної послуги серед списку не завжди зручно. Саме тому, я створив фльтрація за видом послуги, що надається салоном крами, а також перемикач для відображення або невідображення клубної ціни. Приклад такої фільтрації з вибором групи Депіляція та включенням відображення клубної ціни приведено на рис.22.

Рис.22

В даній формі кнопки мають такі коди, прописані на подію Click:

Кнопка Показати всі послуги:

if alias()<>[poslugi]

select poslugi

ENDIF

SET FILTER TO

thisform.Refresh

Кнопка Роздрукувати прайс (призначена для виведення на друк послуг, які обрано в результаті фільтрації:

REPORT FORM poslugi preview

Кнопка Додати, видалити або редагувати послугу:

CLOSE TABLES all

thisform.Release

DO FORM dodav_tov.scx

Для можливості перегляду всіх замовлень в магазині, а також для проведення фільтрації всіх замовлень, які оформив певний співробітник, я створив наступну форму (в режимі конструктора на рис.23):

Рис.23

В даній формі реалізовано перегяд списку послуг, які були наданіконкретним співробітником, також можна задати відсоток, який буде сплачуватися співробітнику від загальної вартості всіх наданих послуг, задати проміжон часу, за який хочемо здійснити відбір/фільтрацію даних та за допомогою кнопки Підразувати проводиться автоматичний підрахунок суми в гривнях за вказаними процентами, а також загальна кількість послуг, наданих за даний проміжок часу зазначеним співробітником.

Дана форма має таки коди:

На подію форми Activate:

SET DATE GERMAN

Кнопка Підрахувати:

x=0

y=0

e=zamovl.data

t=INT(spivrob.id_sp)

v=INT(thisform.text5.Value)

select zamovl

LOCATE FOR ((zamovl.data >= thisform.text1.Value) AND (zamovl.data <= thisform.text2.Value) AND (zamovl.id_sp = t))

DO WHILE .NOT.EOF()

x = x+1

y = y+INT(zamovl.vartist)*INT(v)/100

continue

ENDDO

thisform.text3.Value = x

thisform.text4.Value = y

thisform.NOM_SPIVROB1.Value = t

thisform.Refresh

В завантаженому та відфільтрованому вигляді форма має вигляд:

Рис.24

Для оформлення замовлення я створив окрему форму. В режимі конструктора форма має вигляд (рис.25):

Рис.25

В даній формі я передбачив можливість вказання співробітника, який буде надавати послугу (дані співробітника автоматично беруться з таблиці про співробітників), вказання клієнта салону, який буде отримувати послугу (дані автоматично підтягуються зі створеної таблиці про клієнтів магазину)

Рис.26

Рис.27

Після вибору прізвища співробітника, у формі автоматично змінюються на потрібні ім'я та по батькові для обраного співробітника.

Для можливості правильного відображення даних про співробітників та клієнтів салону у випадаючих списка я прописав такі коди на подію Interective Change для списку співробітників:

Thisform.Refresh

Також для правильного відображення я змінив такі налаштування для даного поля (змінене підсвічено фіолетовим виділеним кольором):

Рис.28

Для можливості вибору виду, до якого відноситься надана послуга, я також використовував елемент випадаючий список, для даного поля я вручну у властивостях елементу вказав всі можливі значення (рис.29, рис.30).

Рис.29. Вид послуги

Рис.30

Для відображення переліку всіх послуг наявних в салону я використав поле Grid, яке одразу не відображується, а з'являється тільки після вибору виду, до якого відноситься послуга, Рис. 31:

Рис.31

Також на формі є друге поле типу Grid, в якому будуть відображуватися всі послуги, які клієнт обрав на сьогодньошню дату, дане поле також спочатку є скритим, Рис.32:

Рис.32

Після вказання всіх вище приведених параметрів я створив кнопки для Підрахунку вартості обраної послуги, кнопку для додавання замовлення до таблиці Замовлення та кнопку Підрахувати для підрахунку загальної вартості для клієнта на сьогодні за всі отримані послуги салону краси.

Кнопка Підрахуватия номер 1:

thisform.text6.Value = INT(thisform.text9.Value) * INT(thisform.text4.Value)

thisform.standardlabel4.Visible = .T.

thisform.command10.Visible = .T.

thisform.text6.Visible = .T.

thisform.Refresh

Кнопка Додати замовлення:

a=klienti.id_kl

b=spivrob.id_sp

c=thisform.text3.Value

d=thisform.text6.Value

e=thisform.text4.Value

t=thisform.text5.Value

?b

SELECT zamovl

GO bottom

n=zamovl.id_zam

p=n+1

APPEND BLANK

REPLACE zamovl.id_zam WITH p

replace zamovl.id_pos with c

replace zamovl.id_sp with b

replace zamovl.id_kl with a

replace zamovl.data with t

replace zamovl.kilkist with e

replace zamovl.vartist WITH d

SET FILTER TO (id_kl = a AND data = DATE())

IF thisform.grid2.Visible = .F. THEN

thisform.grid2.Visible = .T.

ENDIF

thisform.command1.Visible = .T.

Thisform.refresh

Кнопка Підрахувати разом:

m = 0

o = zamovl.vartist * 0.5

SELECT zamovl

SELECT SUM (zamovl.vartist) as m FROM zamovl WHERE (id_kl = a AND data = DATE())

thisform.text11.Value = m

IF m > 3000 THEN

replace zamovl.vartist with o

thisform.text11.Value = m - o

thisform.label1.Visible = .T.

ENDIF

thisform.standardlabel5.Visible = .T.

thisform.text11.Visible = .T.

thisform.standardlabel5.refresh

thisform.text11.Refresh

Після описаного вибору та відображення форма в завантаженому вигляді має вигляд:

Рис.33

Також я свторив головну форму, з кої можна буде відкрити всі інші створені форми та звіти у моєму проекті.

Рис.35

В даній формі кнопки мають такі коди:

Для перегляду даних:

DO FORM perklients.scx

DO FORM redspivr.scx

DO FORM per_tov.scx

DO FORM per_zam.scx

Для відкриття форм для додавання/вилучення даних та оформлення заказу:

DO FORM klients.scx

DO FORM spivr.scx

DO FORM dodav_tov.scx

DO FORM of_zam.scx

Для відкриття звітів та можливості виведення на друк:

REPORT FORM klients preview

REPORT FORM spivrob preview

REPORT FORM tovari preview

Кнопка вихід має код:

thisform.release

2.3 Створення звітів

Для можливості введення інформації на друк я створив 3 звіти у моїй базі даних.

Перший звіт - звіт з інформацією про клієнтів салону. Звіт створювався в режимі майстра та редагувався в режимі конструктора. Загальний вигляд звіту приведено на рис.36. Але заповнення звіту може змінюватися в залежності від обраних параметрів фільтрації у відповідній формі.

Рис.36

Другий звіт вміщує інформацію про співробітників, які працюються в салоні краси Краса. Створювався звіт аналогічно до звіту про клієнтів магазину. Його вигляд можна переглянути на рис.37.

Рис.37

Третій звіт вміщує інформацію з переліком послуг, які надаються в салоні краси Краса. Створювався звіт аналогічно до двох перших та він має вигляд (рис.38):

Рис.38

Висновки

В результаті написання курсового проекту було спроектовано проект бази даних «Салон краси».

В проекті бази даних салону краси зберігається інформація про співробітників салону та необхідні контактні дані клієнтів салону, база даних має повний перелік послуг, які надає даний салон, має змогу відображувати потрібну інформацію та зберігати замовлення послуги клієнтами салону до електронної бази. Всі дані зберігаються в електронному вигляді та можуть мати досить тривалий строк зберігання.

Створення такої бази даних дозволяє значно полегшити ручне ведення необхідних записів при роботі в салоні краси. В базі даних передбачено проведення фільтрації необхідних даних, наприклад: відображення всіх послуг за вказаним видом послуги, відображення/скривання клубної ціни на послуги, підрахунок кількості наданих послуг співробітником х врахуванням вказаного проміжку часу, а також підрахунок суми для сплати співробітнику за вказаними процентами та інше.

В моєму проекту в базі даних я створив 4 таблиці: «Послуги», «Клієнти», «Співробітники» та «Замовлення». В кожній таблиці обрано індексні поля та обрано типи індексів потрібні для правильної роботи бази даних в цілому.

Для зручності роботи з базою даних користувача-оператора я створив 9 форм. 8 форм призначенні для відображення інформації, додавання, редагування та вилучення інформації та 1 форма створена як головна форма проекту, тобто форма меню, з якої відбувається завантаження будь-якої іншої форми або звіту з проекту бази даних.

Для можливості виведення інформації на друк я створив 3 звіти: про клієнтів, про послуги в магазині та про співробітників, які працюють в магазині.

База даних написана з використанням системи керування базами даних FoxPro версії 9.0. База може працювати на операційній системі з сімейства Windows.

Розроблену базу даних можна використовувати в реальному житті.

Література

1. Баженова И . Ю . Visual FoxPro 6.0. - M.: Диалог - МИФИ , 2012. - 416 с

2. Карпова Т.С. Базы данных: модели, разработка. - СПб.: Питер, 2015, 304 с.

3. Кренке Д. Теория и практика построения баз данных: [пер.с англ] / Д. Кренке. - 9 - е изд. - СПб.: Питер, 2012. - 858 с.

4. Морзе Н.В. Бази даних у навчальному процесі. - К.:ТОВ Редакція «Комп'ютер», 2013 - 120 с.

5. Томас К., Каролин Б. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. - М.: Издательский дом Вильямс, 2013. - 1436 с.

6. Ульман Дж., Уидом Дж. Введение в системы баз данных. - М.: Лори, 2015. - 374с.

7. Хансен Г., Хансен Д. Базы данных. Разработка и управление. - М.: Бином, 2014. - 704 с.

Додаток1

Керівництво користувача

Для початку роботи з базою даних необхідно запустити головну форму проекту з назвою main. Форма відкриється посередині екрану з кнопками, які дають можливість працювати з усіма складовими бази даних (рис.39).

Рис.39

Кнопки з розділу перегляд даних призначено для відкриття форм, в яких можна переглянути загальну інформацію про клієнтів, співробітників, перелік послуг, які надаються в салоні краси та перегляд вже оформлених замовлень.

Перегляд інформації про клієнтів магазину:

Рис.40

При натисканні на кнопку

Рис.41

Рис.42

Для проведення пошуку потрібно з даної форми обрати кнопку:

Рис.43

відкриється підформа для проведення пошуку:

Рис.44

до якої потрібно ввести назву або ПІБ клієнта салону.

Для можливості виведення відображеної інформації на друг з форми з рис.40 потрібно натиснути кнопку:

Рис.45

Аналогічно відбувається роботи з інформацією про співробітників.

При відкритті форми для перегляду послуг салону ви побачите перед собою на екрані:

Рис.46

В форми з рис.46 крім перегляду всього списку товарів також можна відфільтрувати дані, якщо обрати список у виді послуг, а також можна побачити клубні ціни, якщо встановити перемикач в полі Відобразити клубні ціни.

Для перегляду замовлень завантажується форма (рис.47):

Рис.47

Для оформлення замовлення потрібно виконати порядок дій які показано на рис.48.

Рис.48

Після виконання повного порядку дій к приведено на рис.48 та вказання кількості товару, якщо вона відмінна від 1, потрібно ще раз натиснути кнопку Підрахувати, в полі Сума до сплати автоматично буде перераховано суму. Якщо всі поля заповнено, потрібно натиснути на кнопку Додати замовлення та вся обрана інформація буде збережена до бази даних та відображена у таблиці справа, після чого потрібно натиснути другу кнопку Підрахувати, після чого буде автоматично перераховано загальну суму до сплати з врахуванням ціни клубна/неклубна та знижки, якщо вона надається.

Для можливості виведення на друк потрібної інформації потрібно натиснути одну з кнопок:

Рис.49

Для завершення роботи з базою даних потрібно натиснути кнопку Вихід.

Додаток2

Лістинг програми

Коди кнопок:

Перший запис:

GO TOP

thisform.Refresh

Наступний запис

IF RECNO()!=RECCOUNT()

SKIP 1

ELSE

MESSAGEBOX(" Останній запис")

endif

thisform.refresh

Попередній запис:

IF RECNO()!=1 THEN

skip-1

ELSE

MESSAGEBOX('Ви знаходитесь на першому записі')

ENDIF

thisform.refresh

Останній запис:

GO BOTTOM

thisform.Refresh

Додати клієнта:

GO BOTTOM

n=klienti.id_kl

p=n+1

APPEND BLANK

REPLACE klienti.id_kl WITH p

thisform.Refresh

Видалити клієнта:

DELETE

nAnswer =MESSAGEBOX("Ви дійсно хочете вилучити запис?",36,"Запит на вилучення")

DO CASE

CASE nAnswer = 6

pack

CASE nAnswer = 7

RECALL

ENDCASE

IF RECNO()=RECCOUNT()

SKIP -1

ELSE SKIP 1

ENDIF

thisform.refresh

Кнопка Вихід:

CLOSE TABLES all

thisformset.Release

thisform.Visible = .F.

Кнопка пошук:

thisformset.FORM2.visible= .T.

Кнопка Знайти має такий код:

a=RECNO()

LOCATE for priz = ALLTRIM(q)

IF priz!=ALLTRIM(q)

MESSAGEBOX("Такого клієнта нема в базі", 0+64+0, "ПОПЕРЕДЖЕННЯ")

go top

ENDIF

thisformset.form1.Refresh

thisformset.form2.Visible= .F.

Кнопка «Додати/видалити клієнта», яка має код:

CLOSE TABLES all

thisform.Release

DO form klients.scx

Кнопку «Роздрукувати:

REPORT FORM klients preview

Кнопка Показати всі послуги:

if alias()<>[poslugi]

select poslugi

ENDIF

SET FILTER TO

thisform.Refresh

Кнопка Роздрукувати прайс:

REPORT FORM tovari preview

Кнопка Додати, видалити або редагувати послугу:

CLOSE TABLES all

thisform.Release

DO FORM dodav_tov.scx

Подія форми Activate:

SET DATE GERMAN

Подія Interectiv Change в полі вибору співробітника:

Thisform.Refresh

Кнопка Відфільтрувати:

if alias()<>[poslugi]

select poslugi

ENDIF

SET FILTER TO

GO top

SET FILTER TO poslugi.vid = Thisform.Combo1.Value

thisform.grid1.refresh

Полк Відобразитит назви товарів має клубні ціни:

IF thisform.grid1.column6.Visible = .T. then

thisform.grid1.column6.Visible = .F.

ELSE

thisform.grid1.column6.Visible = .T.

ENDIF

thisform.refresh

На подію форми Activate:

SET DATE GERMAN

Кнопка Підрахувати:

x=0

y=0

e=zamovl.data

t=INT(spivrob.id_sp)

v=INT(thisform.text5.Value)

select zamovl

LOCATE FOR ((zamovl.data >= thisform.text1.Value) AND (zamovl.data <= thisform.text2.Value) AND (zamovl.id_sp = t))

DO WHILE .NOT.EOF()

x = x+1

y = y+INT(zamovl.vartist)*INT(v)/100

continue

ENDDO

thisform.text3.Value = x

thisform.text4.Value = y

thisform.NOM_SPIVROB1.Value = t

thisform.Refresh

Interective Change для списку співробітників:

Thisform.Refresh

Кнопка Підрахуватия номер 1:

thisform.text6.Value = INT(thisform.text9.Value) * INT(thisform.text4.Value)

thisform.standardlabel4.Visible = .T.

thisform.command10.Visible = .T.

thisform.text6.Visible = .T.

thisform.Refresh

Кнопка Додати замовлення:

a=klienti.id_kl

b=spivrob.id_sp

c=thisform.text3.Value

d=thisform.text6.Value

e=thisform.text4.Value

t=thisform.text5.Value

?b

SELECT zamovl

GO bottom

n=zamovl.id_zam

p=n+1

APPEND BLANK

REPLACE zamovl.id_zam WITH p

replace zamovl.id_pos with c

replace zamovl.id_sp with b

replace zamovl.id_kl with a

replace zamovl.data with t

replace zamovl.kilkist with e

replace zamovl.vartist WITH d

SET FILTER TO (id_kl = a AND data = DATE())

IF thisform.grid2.Visible = .F. THEN

thisform.grid2.Visible = .T.

ENDIF

thisform.command1.Visible = .T.

Thisform.refresh

Кнопка Підрахувати разом:

m = 0

o = zamovl.vartist * 0.5

SELECT zamovl

SELECT SUM (zamovl.vartist) as m FROM zamovl WHERE (id_kl = a AND data = DATE())

thisform.text11.Value = m

IF m > 3000 THEN

replace zamovl.vartist with o

thisform.text11.Value = m - o

thisform.label1.Visible = .T.

ENDIF

thisform.standardlabel5.Visible = .T.

thisform.text11.Visible = .T.

thisform.standardlabel5.refresh

thisform.text11.Refresh

Для перегляду даних:

DO FORM perklients.scx

DO FORM redspivr.scx

DO FORM per_tov.scx

DO FORM per_zam.scx

Для відкриття форм для додавання/вилучення даних та оформлення заказу:

DO FORM klients.scx

DO FORM spivr.scx

DO FORM dodav_tov.scx

DO FORM of_zam.scx

Для відкриття звітів та можливості виведення на друк:

REPORT FORM klients preview

REPORT FORM spivrob preview

REPORT FORM tovari preview

Кнопка вихід має код:

thisform.release

Размещено на Allbest.ru


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

  • Відомості про бази даних, їх історія становлення та загальна інформація про Microsoft Visual FoxPro. Установка Visual FoxPro, створення проекту, таблиць, запитів. Аналіз реляційної бази даних. Прийоми проектування і реалізації реляційної бази даних.

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

  • Проектування і реалізація реляційної бази даних для централізованого зберігання інформації з метою полегшення і систематизації даних замовлень клієнтів готельного комплексу. Розробка сценаріїв для створення бази даних і базових таблиць проекту.

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

  • Визначення мети створення бази даних магазину та таблиць, які вона повинна містити. Розгляд видів полів та ключів таблиць. Створення запитів, форм, звітів, макросів та модулів. Вибір системи управління базами даних. Реалізація моделі у Microsoft Access.

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

  • Проектування бази даних, що реалізує звіти про графік робіт на об’єктах впродовж місяця. Графічне зображення нагромаджувачів даних. Побудова діаграм потоків даних і переходів станів, таблиць у вигляді двовимірного масиву, запитів. Створення бази даних.

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

  • Систематизація знань як основна функція бази даних. Логічне та фізичне проектування бази даних. Створення таблиць у базі даних, визначення основних зв'язків. Інструментальні засоби проектування та створення програмного забезпечення для обробки даних.

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

  • Розробка структури бази даних. ER-моделі предметної області. Проектування нормалізованих відношень. Розробка форм, запитів, звітів бази даних "Автосалон". Тестування роботи бази даних. Демонстрація коректної роботи форми "Додавання даних про покупців".

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

  • Основні відомості про реляційні бази даних, система управління ними. Основні директиви для роботи в середовищі MySQ. Визначення та опис предметної області. Створення таблиць та запитів бази даних автоматизованої бази даних реєстратури в поліклініці.

    курсовая работа [2,9 M], добавлен 06.11.2011

  • Опис вхідних та вихідних повідомлень, процедури перетворення даних. Розробка інфологічної моделі, інформаційні об’єкти та їх характеристика. Автоматизація даталогічного проектування. Опис структур таблиць бази даних на фізичному рівні, реалізація запитів.

    курсовая работа [2,5 M], добавлен 02.01.2014

  • Форми вихідних документів. Перелік запитів до бази даних. Побудова інфологічної моделі, її структурні компоненти: сутності, зв’язки та відносини. Перелік таблиць, опис запитів. Загальна характеристика та головний зміст форм розроблюваної бази даних.

    курсовая работа [414,5 K], добавлен 31.01.2014

  • Проектування інтерфейсу програми. Вимоги до продукту. Вхідні дані на розробку автоматизованої системи. Вибір середовища програмування. Розробка структури бази даних. Функціональна та логічна структура програми. Розробка структури таблиць бази даних.

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

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