- •Опис предметної області
- •2. Постановка задачі
- •3. Проектування бази даних
- •3.1 Побудова er-діаграми.
- •3.2 . Побудова схеми реляційної бази даних у третій нормальній формі.
- •4. Опис програми
- •4.1. Загальні відомості
- •1Виклик і завантаження
- •2Призначення і логічна структура
- •3Описання фізичної моделі бази даних
- •4.5. Опис програмної реалізації
- •4Описання задачі автоматизації
- •Висновки
- •Додатки
- •Текст програмного модуля menu1.Mpr
4Описання задачі автоматизації
В ході написання курсового проекту були реалізовані такі задачі автоматизації:
ввід і коригування даних в довіднику цехів
ввід і коригування даних в довіднику складів
ввід і коригування даних в довіднику покупців
ввід і коригування даних в довіднику номенклатур
ввід і коригування даних в масиві відвантаження продукції з цехів у склади
ввід і коригування даних в масиві відвантаження продукції зі складів покупцям
формування звіту «Відомість надходження продукції з виробництва на склади»
формування звіту «Відомість відвантаження продукції покупцям»
Результатом автоматизації можна вважати звітні відомості. На рисунках 4.6.1.-4.6.2. зображені екранні форми відповідних відомостей.
Рисунок 4.6.1. Результат «Відомість надходження продукції з виробництва на склад»
Рисунок 4.6.2. Результат «Відомість відвантаження продукції покупцям»
Алгоритм рішення задачі автоматизації наведено в додатку №3.
Висновки
В процесі написання курсового проекту було вивчено предметну область «Облік відвантаженої продукції», розроблено відповідну інформаційну систему, у середовищі Visual FoxPro складено базу даних і написано програмний продукт, який дає змогу обслуговувати базу даних, здійснювати розрахунки і формувати результатні відомості. Для подальшого розвитку представленої системи варто додати програмні модулі, які не входять до складу програмного продукту, наприклад, формування оборотної відомості руху продукції.
Загалом представлена робота відповідає поставленій задачі і може бути використана при роботі невеликих підприємств.
СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ
Глушков С.В., Ломотько Д.В. Бази даних. – Харків, 2002. – 504с.
Ульман Дж.Д. Основи систем баз даних.-М.,1993
Берко А.Ю., Верес О.М., Пасічник В.В., Системи баз даних та знань, Львів, 2008 – 453с.
Пасічник В.В., Резніченко В.А., Організація баз даних та знань, 2006 – 384с.
В.В. Кириллов СitForum «Основи проектирования реляционних баз данних»» – М.: ЗАО «Издательство Тризор», 2002. –121 с.
Додатки
Додаток №1
Текст програмного модуля menu1.Mpr
LPARAMETERS oFormRef, getMenuName, lUniquePopups, parm4, parm5, parm6, parm7, parm8, parm9
LOCAL cMenuName, nTotPops, a_menupops
IF TYPE("m.oFormRef") # "O" OR ;
LOWER(m.oFormRef.BaseClass) # 'form' OR ;
m.oFormRef.ShowWindow # 2
MESSAGEBOX([This menu can only be called from a Top-Level form. Ensure that your form's ShowWindow property is set to 2. Read the header section of the menu's MPR file for more details.])
RETURN
ENDIF
m.cMenuName = IIF(TYPE("m.getMenuName")="C",m.getMenuName,SYS(2015))
IF TYPE("m.getMenuName")="L" AND m.getMenuName
m.oFormRef.Name = m.cMenuName
ENDIF
DIMENSION a_menupops[3]
IF TYPE("m.lUniquePopups")="L" AND m.lUniquePopups
FOR nTotPops = 1 TO ALEN(a_menupops)
a_menupops[m.nTotPops]= SYS(2015)
ENDFOR
ELSE
a_menupops[1]="дан"
a_menupops[2]="звти"
a_menupops[3]="сервс"
ENDIF
DEFINE MENU (m.cMenuName) IN (m.oFormRef.Name) BAR
DEFINE PAD _3dg0xqbgi OF (m.cMenuName) PROMPT "Дані" COLOR SCHEME 3 ;
KEY CTRL+E, "CTRL+E"
DEFINE PAD _3dg0xqbgj OF (m.cMenuName) PROMPT "Звіти" COLOR SCHEME 3 ;
KEY CTRL+Z, "CTRL+Z"
DEFINE PAD _3dg0xqbgk OF (m.cMenuName) PROMPT "Сервіс" COLOR SCHEME 3 ;
KEY CTRL+S, "CTRL+S"
DEFINE PAD _3dg0xqbgl OF (m.cMenuName) PROMPT "Вихід" COLOR SCHEME 3 ;
KEY CTRL+Q, "CTRL+Q"
ON PAD _3dg0xqbgi OF (m.cMenuName) ACTIVATE POPUP (a_menupops[1])
ON PAD _3dg0xqbgj OF (m.cMenuName) ACTIVATE POPUP (a_menupops[2])
ON PAD _3dg0xqbgk OF (m.cMenuName) ACTIVATE POPUP (a_menupops[3])
ON SELECTION PAD _3dg0xqbgl OF (m.cMenuName) ;
DO _3dg0xqbgm ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
DEFINE POPUP (a_menupops[1]) MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF (a_menupops[1]) PROMPT "Довідник цехів" ;
KEY CTRL+T, "CTRL+T"
DEFINE BAR 2 OF (a_menupops[1]) PROMPT "Довідник складів" ;
KEY CTRL+R, "CTRL+R"
DEFINE BAR 3 OF (a_menupops[1]) PROMPT "Довідник покупців" ;
KEY CTRL+U, "CTRL+U"
DEFINE BAR 4 OF (a_menupops[1]) PROMPT "Довідник номенклатур" ;
KEY CTRL+F, "CTRL+F"
DEFINE BAR 5 OF (a_menupops[1]) PROMPT "\-"
DEFINE BAR 6 OF (a_menupops[1]) PROMPT "Відвантаження на склад" ;
KEY CTRL+X, "CTRL+X"
DEFINE BAR 7 OF (a_menupops[1]) PROMPT "Відвантаження покупцю" ;
KEY CTRL+V, "CTRL+V"
ON SELECTION BAR 1 OF (a_menupops[1]) ;
DO _3dg0xqbgn ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
ON SELECTION BAR 2 OF (a_menupops[1]) ;
DO _3dg0xqbgo ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
ON SELECTION BAR 3 OF (a_menupops[1]) ;
DO _3dg0xqbgp ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
ON SELECTION BAR 4 OF (a_menupops[1]) ;
DO _3dg0xqbgq ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
ON SELECTION BAR 6 OF (a_menupops[1]) ;
DO _3dg0xqbgy ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
ON SELECTION BAR 7 OF (a_menupops[1]) ;
DO _3dg0xqbgz ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
DEFINE POPUP (a_menupops[2]) MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF (a_menupops[2]) PROMPT "Звіт 1" ;
KEY CTRL+M, "CTRL+M"
DEFINE BAR 2 OF (a_menupops[2]) PROMPT "Звіт 2" ;
KEY CTRL+N, "CTRL+N"
ON SELECTION BAR 1 OF (a_menupops[2]) ;
DO _3dg0xqbh0 ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
ON SELECTION BAR 2 OF (a_menupops[2]) ;
DO _3dg0xqbh1 ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
DEFINE POPUP (a_menupops[3]) MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF (a_menupops[3]) PROMPT "Видалення" ;
KEY CTRL+W, "CTRL+W"
ON SELECTION BAR 1 OF (a_menupops[3]) ;
DO _3dg0xqbh2 ;
IN LOCFILE("VANTAG\MENU1" ,"MPX;MPR|FXP;PRG" ,"WHERE is MENU1?")
ACTIVATE MENU (m.cMenuName) NOWAIT
PROCEDURE _3dg0xqbgm
if messagebox("Вийти з програми",4+32,"Вихід")=6
_screen.activeform.Release
else
_screen.activeform.refresh
endif
PROCEDURE _3dg0xqbgn
do form fceh
PROCEDURE _3dg0xqbgo
do form fsklad
PROCEDURE _3dg0xqbgp
do form fpokup
PROCEDURE _3dg0xqbgq
do form fnomen
PROCEDURE _3dg0xqbgy
do form fvidv1
PROCEDURE _3dg0xqbgz
do form fvidv2
PROCEDURE _3dg0xqbh0
report form zv1 prev
PROCEDURE _3dg0xqbh1
report form zv2 prev
PROCEDURE _3dg0xqbh2
do form fpack
Додаток №2
Текст обробників подій кнопок навігації, включених до класів проекту
Для кнопки Перший
if !bof()
go top
if dele()
_screen.activeform.label2.caption="видалено"
else
_screen.activeform.label2.caption=" "
endif
endif
_screen.activeform.refresh
Для кнопки Попередній
if !bof()
skip -1
if dele()
_screen.activeform.label2.caption='видалений'
else
_screen.activeform.label2.caption=' '
endi
endi
_screen.activeform.refresh
Для кнопки Наступний
if !eof()
skip
if dele()
_screen.activeform.label2.caption='видалений'
else
_screen.activeform.label2.caption=' '
endi
endi
_screen.activeform.refresh
Для кнопки Останній
if !eof()
go bott
if dele()
_screen.activeform.label2.caption='видалений'
else
_screen.activeform.label2.caption=' '
endi
endi
_screen.activeform.refresh()
Для кнопки Вихід
close tables
_screen.activeform.release
mainform1.refresh
mainform1.show
Для кнопки Додати
go bott
appe blan
_screen.activeform.refresh
Для кнопки Видалити
if dele()
reca
else
dele
endi
if dele()
_screen.activeform.label2.caption='видалений'
else
_screen.activeform.label2.caption=' '
endi
Текст запускаючої програми проекту
public mainform1
set defa to e:/vfp5/vantag
set safe off
set date germ
do form mainform name mainform1
Додаток №3
Алгоритм рішення задачі автоматизації