Выпуск продукции и расход сырья

Автор работы: Пользователь скрыл имя, 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

Файлы: 1 файл

курсоовая2.docx

— 3.22 Мб (Скачать файл)

  

 

Таб 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. Основные функции  приложения

Функции приложения:

  1. Учет информации о изделиях, тканях и красителях;
  2. Редактирование существующих записей и добавление новых;
  3. Создание отчетов.

Программные модули:

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)

 

Рис. 7. Справочник «Изделия»

 

 

Рис. 8. Справочник «Ткань»

 

 

 

 

Рис. 9. Справочник «Краситель»

 

 

Рис. 10. Справочник «Клиенты»

 

Пункт меню «Обработка» включает 2 пункта:

  • фильтрация и поиск (рис. 11)
  • сортировка (рис. 12)

Фильтрация по «Вид ткани» и по «Количество»

Рис. 11. Поиск и фильтрация

 

 


 

 

 

 

 

 

 

 

 

 

Рис. 12. Сортировка

 

В пункт меню «Отчеты» включает 2 пункта, которые можно вывести отчеты о расходе красителя за период (рис. 13, рис. 14) и отчет о выработке ткани за период (рис. 15, рис. 16).

 

Рис. 13. Формирование отчета о расходе красителя за период

 

Рис. 14. Отчет о расходе красителя

 

Рис. 15. Формирование отчета о выработке ткани за период

Рис. 16. Отчет о выработке ткани

 

При нажатии на пункт «Справка» появляется диалоговое окно, содержащее общую информацию о приложении (рис.17).

 


 

 

 

 

 

 

Рис. 17. Справка

 

 

 

 

 

 

 

Заключение

В результате проделанной работы я ознакомилась с программой C++Builder и создала БД «выпуск продукции и расход сырья».

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

Программа выполняет следующие функции: позволяет просмотреть БД, редактировать сведения о изделиях, найти по заданному пользователем ключу информацию о изделии, произвести фильтрацию по ключу. Результатом проделанной работы является программа эффективного управления производством на предприятии. Теперь достаточно иметь на предприятиииодин персональный компьютер с этой программой, человека, который будет вносить входные данные, и выводить нужную информацию, и работа всего промышленного комплекса не будет прекращаться, а наоборот со временем будет приобретать всё новые обороты. Таким образом, организацией сможет руководить один человек, не прибегая к помощи различных дополнительных вычислений вручную, и поиска нужных документов среди кипы бумаг, когда все что нужно в себе содержит программа.

В работе рассмотрены основные понятия баз данных, понятие СУБД и их классификация, понятия среды разработки Borland C++ Builder, а также рассмотрена предметная область и общие сведения инфологической и даталогической моделей.

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

Список литературы

  1. Диго С.М. Проектирование баз данных. М.: Финансы и статистика, 2002 г.
  2. Марков А.С. Базы данных. Введение в теорию и методологию. М.: Финансы и статистика, 2002 г.
  3. Курс лекций по дисциплине “Базы данных”.
  4. Никита Культин. Самоучитель С++ Builder . Санкт-Петербург : БВХ, 2004 г.
  5. Т. Сван. Программирование для Windows в Borland C++ Builder.
  6. Д. Холингворт, Б. Сворт, М. Кэшмэн, П. Густавсон. Borland С++ Builder.
  7. Мейер Д. Теория реляционных баз данных. М., 1987 г.
  8. Никита Культин “Самоучитель С++ Builder ” Санкт-Петербург <<БВХ-Петербург>> 2004 г.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение

//---------------------------------------------------------------------------

 

#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(TObject *Sender)

{

if (!Form1->Visible)

Form1->Show();

}

//---------------------------------------------------------------------------

 

void __fastcall TForm1::SpeedButton2Click(TObject *Sender)

{

if (!Form2->Visible)

Form2->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::SpeedButton3Click(TObject *Sender)

{

if (!Form9->Visible)

Form9->Show();

}

//---------------------------------------------------------------------------

 

void __fastcall TForm1::SpeedButton4Click(TObject *Sender)

{

if (!Form10->Visible)

Form10->Show();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::SpeedButton5Click(TObject *Sender)

{

if (!Form13->Visible)

Form13->Show();

}

//---------------------------------------------------------------------------

 

void __fastcall TForm1::SpeedButton6Click(TObject *Sender)

{

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")->AsString;

Edit2->Text = Table1->

      FieldByName("K_mas")->AsString;

Edit3->Text = Table1->

      FieldByName("N_stan")->AsString;

Edit4->Text = Table1->

      FieldByName("Dat_vip")->AsString;

Edit5->Text = Table1->

      FieldByName("Cena")->AsString;

}

//---------------------------------------------------------------------------

 

void __fastcall TForm1::Table1AfterScroll(TDataSet *DataSet)

{

Edit1->Text = Table1->

      FieldByName("N_izd")->AsString;

Edit2->Text = Table1->

      FieldByName("K_mas")->AsString;

Edit3->Text = Table1->

      FieldByName("N_stan")->AsString;

Edit4->Text = Table1->

      FieldByName("Dat_vip")->AsString;

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)==IDYES)

{

  Table1->Delete();

    }

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

if (Application->MessageBoxA

(" Сохранить запись?", “ подтверждения удаления”,

 MB_YESNO+MB_ICONQUESTION)==IDYES)

{

  Table1->Edit();

//Table1->FieldByName("N_izd")->AsString = Edit1->Text;

Table1->FieldByName("K_mas")->AsString = Edit2->Text;

Table1->FieldByName("N_stan")->AsString = Edit3->Text;

Table1->FieldByName("Dat_vip")->AsString = Edit4->Text;

Table1->FieldByName("Cena")->AsString = Edit5->Text;

Информация о работе Выпуск продукции и расход сырья