Автор работы: Пользователь скрыл имя, 04 Декабря 2016 в 19:21, курсовая работа
Целью данного курсового проекта является разработка программы для автоматизации учета изделии. Внедрение этого приложения значительно облегчает и усовершенствует ведение данных об имеющихся изделиях и расхода.
Задачами курсового проекта являются:
описание предметной области;
описание технологии функционирования ИС;
построение базовой и ER–модели, даталогической (реляционная) модели БД;
разработка экранных форм ввода-вывода и отчета;
Введение…………………………………………………………………….…...2
1. Анализ предметной области………………………………………………....3
2. Проектирование БД……………………………………………………..……8
2.1. Инфологическая модель………………………………………………...….9
2.2. ER – модель…………………………………………………………………10
2.3. Даталогическая модель…………………………………………………….11
2.4. Структура файла БД………………………………………………..………12
3. Описание приложения…………………………………………………….….13
3.1. Основные функции приложения…………………………………………..13
3.2. Описание работы программы……………………………………………...14
Заключение………………………………………………………………………24
Список литературы……………………………………………………………...25
Таб 4. Мастер
№ |
Наименование |
Назначение |
Тип |
Размерность |
1 |
K_mas |
Код мастера |
S |
|
2 |
Fam |
Фамилия |
A |
15 |
3 |
Im |
Имя |
A |
15 |
4 |
Otc |
Отчество |
A |
15 |
5 |
Year_p |
Год поступления |
D |
2.3. Структура файла БД
Izdelie.db (N_izd S Key, K_mas S, N_stan S, Dat_vip D, Cena $, Art_tk S)
Tkan.db (Art_tk S Key, Naz_tk A(15), Vid_tk A(15), Kol S, Ed_izm A(10), K_kr N)
Krasitel.db (K_kr N Key, Naim_kr A(15), Art_kr A(10), Cena_kr $, Pro_kr A(15), Ras_kr S, Ed_izm A(10))
Master.db (K_mas S Key, Fam A(15), Im A(15), Otc A(15), Year_p D.
3. Описание приложения
3.1. Основные функции приложения
Функции приложения:
Программные модули:
Project1.cpp – Главный файл проекта
Формы:
Form0 (Unit0.cpp, Unit0.h, Unit0.dfm) - Главная форма, где расположено системное меню;
Form1 (Unit1.cpp, Unit1.h, Unit1.dfm) - Ввод информации о изделиях;
Form2 (Unit2.cpp, Unit2.h, Unit2.dfm) - Просмотр и редактирование данных;
Form3 (Unit3.cpp, Unit3.h, Unit3.dfm) - Удаление записей;
Form4 (Unit4.cpp, Unit4.h, Unit4.dfm) - Справочник «Изделие»;
Form5 (Unit5.cpp, Unit5.h, Unit5.dfm) - Справочник «Ткань»;
Form6 (Unit6.cpp, Unit6.h, Unit6.dfm) - Справочник «Краситель»;
Form7 (Unit7.cpp, Unit7.h, Unit7.dfm) - Справочник «Мастер»;
Form8 (Unit8.cpp, Unit8.h, Unit8.dfm) - Поиск и фильтрация;
Form9 (Unit9.cpp, Unit9.h, Unit9.dfm) - Сортировка;
Form10 (Unit10.cpp, Unit10.h, Unit10.dfm) - Формирование отчета о расходе красителя за период
Form12 (Unit12.cpp, Unit12.h, Unit12.dfm) – Отчет о расходе красителя
Form11 (Unit11.cpp, Unit11.h, Unit11.dfm) - Формирование отчета о выработке ткани за период
Form13 (Unit13.cpp, Unit13.h, Unit13.dfm) - Отчета о выработке ткани
Form14 (Unit14.cpp, Unit14.h, Unit14.dfm) - Справка
3.2. Описание работы программы
При запуске приложения открывается главное диалоговое окно, в котором расположено меню (рис. 3).
Рис. 3. Главное окно приложения.
При выборе пункта меню Документы – Ввод данных открывается окно ввода данных (рис. 4). При заполнении формы можно ссылаться на созданные ранее справочники.
Рис. 4. Окно ввода нового документа
Пункт меню Документы – Просмотр и редактирование (рис. 5).
Рис. 5. Окно просмотра и редактирования данных
Пункт меню Документы – Удаление данных (рис. 6).
Рис. 6. Удаление данных
Далее идет группа справочников:
Рис. 7. Справочник «Изделия»
Рис. 8. Справочник «Ткань»
Рис. 9. Справочник «Краситель»
Рис. 10. Справочник «Клиенты»
Пункт меню «Обработка» включает 2 пункта:
Фильтрация по «Вид ткани» и по «Количество»
Рис. 11. Поиск и фильтрация
Рис. 12. Сортировка
В пункт меню «Отчеты» включает 2 пункта, которые можно вывести отчеты о расходе красителя за период (рис. 13, рис. 14) и отчет о выработке ткани за период (рис. 15, рис. 16).
Рис. 13. Формирование отчета о расходе красителя за период
Рис. 14. Отчет о расходе красителя
Рис. 15. Формирование отчета о выработке ткани за период
Рис. 16. Отчет о выработке ткани
При нажатии на пункт «Справка» появляется диалоговое окно, содержащее общую информацию о приложении (рис.17).
Рис. 17. Справка
Заключение
В результате проделанной работы я ознакомилась с программой C++Builder и создала БД «выпуск продукции и расход сырья».
В этой курсовой работе разрабатывается база данных, в которой хранится и обрабатывается информация о наличии изделии, о тканях и красителях. Сначала строится базовая и ER - модель, в которые входят БД, сущность, атрибут. Далее строится даталогическая модель. Обработку информации в БД осуществляют такие методы как фильтрация, поиск, сортировка, отчет и печать документов.
Программа выполняет следующие функции: позволяет просмотреть БД, редактировать сведения о изделиях, найти по заданному пользователем ключу информацию о изделии, произвести фильтрацию по ключу. Результатом проделанной работы является программа эффективного управления производством на предприятии. Теперь достаточно иметь на предприятиииодин персональный компьютер с этой программой, человека, который будет вносить входные данные, и выводить нужную информацию, и работа всего промышленного комплекса не будет прекращаться, а наоборот со временем будет приобретать всё новые обороты. Таким образом, организацией сможет руководить один человек, не прибегая к помощи различных дополнительных вычислений вручную, и поиска нужных документов среди кипы бумаг, когда все что нужно в себе содержит программа.
В работе рассмотрены основные понятия баз данных, понятие СУБД и их классификация, понятия среды разработки Borland C++ Builder, а также рассмотрена предметная область и общие сведения инфологической и даталогической моделей.
Данная курсовая работа предполагала создание и администрирование базы данных для учета выпуска продукции и расхода сырья. Задачей являлось разграничение доступа к объектам базы данных и повышение эффективности работы на производстве.
Список литературы
Приложение
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit0.h"
#include "Unit1.h"
#include "Unit2.h"
#include "Unit3.h"
#include "Unit4.h"
#include "Unit5.h"
#include "Unit6.h"
#include "Unit7.h"
#include "Unit8.h"
#include "Unit9.h"
#include "Unit10.h"
#include "Unit11.h"
#include "Unit12.h"
#include "Unit13.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//----------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//----------------------------
void __fastcall TForm1::N16Click(TObject *Sender)
{
Form1->Close();
}
//----------------------------
void __fastcall TForm1::N2Click(TObject *Sender)
{
if (!Form1->Visible)
Form1->Show();
}
//----------------------------
void __fastcall TForm1::N3Click(TObject *Sender)
{
if (!Form2->Visible)
Form2->Show();
}
//----------------------------
void __fastcall TForm1::N4Click(TObject *Sender)
{
if (!Form3->Visible)
Form3->Show();
}
//----------------------------
void __fastcall TForm1::N6Click(TObject *Sender)
{
if (!Form4->Visible)
Form4->Show();
}
//----------------------------
void __fastcall TForm1::N7Click(TObject *Sender)
{
if (!Form5->Visible)
Form5->Show();
}
//----------------------------
void __fastcall TForm1::N8Click(TObject *Sender)
{
if (!Form6->Visible)
Form6->Show();
}
//----------------------------
void __fastcall TForm1::N9Click(TObject *Sender)
{
if (!Form7->Visible)
Form7->Show();
}
//----------------------------
void __fastcall TForm1::N10Click(TObject *Sender)
{
if (!Form8->Visible)
Form8->Show();
}
//----------------------------
void __fastcall TForm1::N11Click(TObject *Sender)
{
if (!Form9->Visible)
Form9->Show();
}
//----------------------------
void __fastcall TForm1::N12Click(TObject *Sender)
{
if (!Form10->Visible)
Form10->Show();
}
void __fastcall TForm1::N13Click(TObject *Sender)
{
if (!Form12->Visible)
Form12->Show();
}
void __fastcall TForm1::N14Click(TObject *Sender)
{
if (!Form11->Visible)
Form11->Show();
}
void __fastcall TForm1::N15Click(TObject *Sender)
{
if (!Form13->Visible)
Form13->Show();
}
//----------------------------
//----------------------------
void __fastcall TForm1::SpeedButton1Click(
{
if (!Form1->Visible)
Form1->Show();
}
//----------------------------
void __fastcall TForm1::SpeedButton2Click(
{
if (!Form2->Visible)
Form2->Show();
}
//----------------------------
void __fastcall TForm1::SpeedButton3Click(
{
if (!Form9->Visible)
Form9->Show();
}
//----------------------------
void __fastcall TForm1::SpeedButton4Click(
{
if (!Form10->Visible)
Form10->Show();
}
//----------------------------
void __fastcall TForm1::SpeedButton5Click(
{
if (!Form13->Visible)
Form13->Show();
}
//----------------------------
void __fastcall TForm1::SpeedButton6Click(
{
Form1->Close();
}
//----------------------------
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit0.h"
#include "Unit2.h"
#include "Unit3.h"
//----------------------------
#pragma package(smart_init)
#pragma link "CSPIN"
#pragma resource "*.dfm"
TForm2 *Form2;
//----------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Table1->Open();
Edit1->Text = Table1->
FieldByName("N_izd")->
Edit2->Text = Table1->
FieldByName("K_mas")->
Edit3->Text = Table1->
FieldByName("N_stan")->
Edit4->Text = Table1->
FieldByName("Dat_vip")->
Edit5->Text = Table1->
FieldByName("Cena")->AsString;
}
//----------------------------
void __fastcall TForm1::Table1AfterScroll(
{
Edit1->Text = Table1->
FieldByName("N_izd")->
Edit2->Text = Table1->
FieldByName("K_mas")->
Edit3->Text = Table1->
FieldByName("N_stan")->
Edit4->Text = Table1->
FieldByName("Dat_vip")->
Edit5->Text = Table1->
FieldByName("Cena")->AsString;
}
//----------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Table1-> Append();
}
//----------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
if (Application->MessageBoxA
(" Удаить запись?","Удаление данных",
MB_YESNO+MB_ICONQUESTION)==
{
Table1->Delete();
}
}
//----------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
if (Application->MessageBoxA
(" Сохранить запись?", “ подтверждения удаления”,
MB_YESNO+MB_ICONQUESTION)==
{
Table1->Edit();
//Table1->FieldByName("N_izd")
Table1->FieldByName("K_mas")->
Table1->FieldByName("N_stan")-
Table1->FieldByName("Dat_vip")
Table1->FieldByName("Cena")->