Автор: Пользователь скрыл имя, 06 Апреля 2013 в 09:44, курсовая работа
При создании СУБД нужно  четко знать:
- Задачи склада?
Склад занимается поставками товара различных фирм в торговые точки или фирменные магазины.
- Откуда берется товар?
Весь товар хранится на складе, куда его периодически завозят  фирмы-производители.
- Кто покупает и  реализует товар, полученный со  склада?
Существуют клиенты – магазины или люди, которые реализуют товар за определенную цену (её клиент устанавливает в зависимости от дефицита товара или спроса на товар).
- Кто на складе занимается  договорами?
Постановка задачи . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Технический проект . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Программирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Руководство пользователя . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Руководство программиста . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  61
Список использованой литератури . . . . . . . . . . . . . . . . . . . . . . . . . . . .   63
Министерство образования и науки Украины
Криворожский технический университет
Кафедра моделирования и программного обеспечения
Курсовая работа
по дисциплине:
«Организация баз данных и знаний»
на тему:
Выполнил:
cт. гр. ПЗАС-04-2
Кунё С. В.
Принял:
доц., к.т.н. Смолянский П.С.
2006
Содержание
1. Постановка задачи
В настоящее время довольно быстро и хорошо развивается строительная промышленность, производится постройка, восстановление жилищных домов, предприятий, офисов, фабрик. К сожалению, наша страна еще не достигла того уровня, чтоб самостоятельно разрабатывать все материалы в нужном количестве и по наивысшему качеству. Чтобы достичь долговечности построек, а также для достижения наилучшего результата, в этой промышленности используются товары различных фирм-производителей, стран, а также в различной конфигурации. Товар, как известно, хранится на складе, куда его периодически завозят фирмы-производители. В таком случае очень трудно учесть все поставки или продажи товара, также сложно следить за большим количеством договоров с клиентами или поставщиками. Для четкой и эффективной работы необходимо использовать передовые технологии в организации склада. Один из таких способов – использование системы управления базами данных склада. Основная задача, связанная со складом это поиск того товара, который соответствовал запросам клиентов. С помощью такой системы можно быстро найти предложение соответствующему клиенту. Применив новые способы организации данных можно значительно повысить эффективность работы склада.
При создании СУБД нужно четко знать:
- Задачи склада?
Склад занимается поставками товара различных фирм в торговые точки или фирменные магазины.
- Откуда берется товар?
Весь товар хранится на складе, куда его периодически завозят фирмы-производители.
- Кто покупает и 
реализует товар, полученный 
Существуют клиенты – магазины или люди, которые реализуют товар за определенную цену (её клиент устанавливает в зависимости от дефицита товара или спроса на товар).
- Кто на складе занимается договорами?
Для каждой торговой точки (магазина) существует торговый агент. Торговые агенты посещают магазины (торговые точки), с которыми заключены договоры купли-продажи. В каждой торговой точке торговый агент берет заказ на поставку данной продукции, сверяя суммы оплаты за предыдущую поставку с владельцем торговой точки.
Возникает вопрос – для чего нужно создавать необходимую СУБД?
Здесь же и ответим 
на этот вопрос. Необходимую СУБД нужно 
создавать для повышения 
Цель работы:
Система должна обеспечивать:
1) ведение базы данных 
товаров, групп товаров и 
2) определение наличия товара на складе;
3) регистрация клиентов (поставщиков);
4) регистрация клиентов (покупателей), улица, дом магазина;
5) просмотр и оформление договоров;
6) просмотр и оформление заказов;
7) регистрация торговых агентов;
8) за каждым предпринимателем должен быть закреплен агент;
9) должен быть отчет о существующих клиентах (должниках), которые не оплатили товар;
10) нужно учесть учет перемещения товара;
Система должна иметь 
удобный интерфейс, предоставляющий 
наиболее гибкий способ просмотра, добавления, 
редактирования и удаления данных, 
а также отбор и поиск 
Данная схема показывает, что склад это некий посредник между клиентами.
Преимущество использования склада состоит в том что:
- Вся информация о 
складе уже осмотрена, то есть 
Отчет по клиентам – информация о предпринимателе и магазине, фамилия имя отчество торгового агента, за которым закреплен клиент.
Отчет по заказам – заказчик, товар, количество, доставлен товар или нет, строки доставки, произведена ли оплата и в какой форме (наличная, безналичная).
- Если у клиента нет возможности установить прямой контакт с другим лицом, то клиент может связатся со своим агентом и узнать все детали.
Клиенты (поставщики). Поставщиком может быть любая организация или страна.
Клиенты (покупатели). Клиентом покупателем может быть любое физическое лицо или предприниматель. Клиенты связываются со складом и оставляют минимально необходимую информации о себе. Сотрудник склада находит подходящий товар и через торгового агента связывается с клиентом. Если обе стороны согласны составляется договор (заказ нужного товара).
2. Технический проект
Назначение, используемых таблиц
Название таблицы  | 
  Назначение  | 
GeneralSklad | 
  Хранение информации о товаре, находящемся на складе  | 
Clients  | 
  Хранение данных о клиентах фирмы  | 
Contract  | 
  Хранение информации обо всех заказах  | 
Section  | 
  Справочник разделов, на которые делится товар  | 
Manufacture  | 
  Справочник производителей товара  | 
Streets  | 
  Справочник улиц  | 
Agents  | 
  Справочник торговых агентов  | 
Структура таблицы GeneralSklad
№ п/п  | 
  Название  | 
  Тип  | 
  Длина  | 
  Назначение  | 
1  | 
  IDGoods  | 
  Автоинкремент  | 
  Ключевое поле  | |
2  | 
  NameGoods  | 
  Строка  | 
  50  | 
  Наименование товара  | 
3  | 
  Section  | 
  Длинное целое  | 
  Раздел, к которому относится товар  | |
4  | 
  Manufacture  | 
  Длинное целое  | 
  Производитель товара  | |
5  | 
  PriceOne  | 
  Вещественное  | 
  Закупочная цена  | |
6  | 
  PriceTwo  | 
  Вещественное  | 
  Цена реализации  | |
7  | 
  CountGoods  | 
  Длинное целое  | 
  Количество данного товара на складе  | |
8  | 
  CodeGoods  | 
  Строка  | 
  7  | 
  Внутренний код товара  | 
Структура таблицы Clients
№ п/п  | 
  Название  | 
  Тип  | 
  Длина  | 
  Назначение  | 
1  | 
  IDClient  | 
  Автоинкремент  | 
  Ключевое поле  | |
2  | 
  Enterprise  | 
  Строка  | 
  20  | 
  Название предпринимателя  | 
3  | 
  Shop  | 
  Строка  | 
  15  | 
  Название магазина  | 
4  | 
  Street  | 
  Длинное целое  | 
  Адрес: улица  | |
5  | 
  House  | 
  Целое  | 
  Адрес: квартира  | |
6  | 
  Agent  | 
  Длинное целое  | 
  Агент, который закреплен за данной торговой точкой  | 
Структура таблицы Contract
№ п/п  | 
  Название  | 
  Тип  | 
  Длина  | 
  Назначение  | 
1  | 
  IDContract  | 
  Автоинкремент  | 
  Ключевое поле  | |
2  | 
  Client  | 
  Длинное целое  | 
  Торговая точка, которая заказывает товар  | |
3  | 
  Goods  | 
  Длинное целое  | 
  Заказываемый товар  | |
4  | 
  CountGoods  | 
  Целое  | 
  Количество заказываемого товара  | |
5  | 
  Pay  | 
  Логическое  | 
  Оплачен ли товар  | |
6  | 
  Delivery  | 
  Логическое  | 
  Доставлен ли товар  | 
Структура таблицы Section
№ п/п  | 
  Название  | 
  Тип  | 
  Длина  | 
  Назначение  | 
1  | 
  IDSection  | 
  Автоинкремент  | 
  Ключевое поле  | |
2  | 
  NameSection  | 
  Строка  | 
  20  | 
  Название раздела товара  | 
Структура таблицы Manufacture
№ п/п  | 
  Название  | 
  Тип  | 
  Длина  | 
  Назначение  | 
1  | 
  IDManufacture  | 
  Автоинкремент  | 
  Ключевое поле  | |
2  | 
  NameManufac-ture  | 
  Строка  | 
  20  | 
  Фирма-производитель  | 
Структура таблицы Street
№ п/п  | 
  Название  | 
  Тип  | 
  Длина  | 
  Назначение  | 
1  | 
  IDStreet  | 
  Автоинкремент  | 
  Ключевое поле  | |
2  | 
  NameStreet  | 
  Строка  | 
  25  | 
  Название улицы  | 
Структура таблицы Agents
№ п/п  | 
  Название  | 
  Тип  | 
  Длина  | 
  Назначение  | 
1  | 
  IDAgent  | 
  Автоинкремент  | 
  Ключевое поле  | |
2  | 
  NameAgent  | 
  Строка  | 
  40  | 
  Ф.И.О. агента  | 
Структура связей всех таблиц
3. Программирование
Переменные и процедуры модуля
unit UnitMainMenu;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Menus, DB, DBTables,
UnitSklad, UnitAddGoods, UnitEditGoods, UnitPrintSklad, jpeg, ExtCtrls, XPMan;
type
TFormMainMenu = class(TForm)
MainMenu1: TMainMenu;
BitBtn1: TBitBtn;
N1: TMenuItem;
N2: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
BitBtn2: TBitBtn;
Image1: TImage;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
XPManifest1: TXPManifest;
procedure BitBtn1Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
private
procedure WMClose(var a:TWMClose); message WM_CLOSE;
{ Private declarations }
public
{ Public declarations }
end;
var
FormMainMenu: TFormMainMenu;
implementation
uses UnitContract, UnitEditContract, UnitClients, UnitEditAgent,
UnitEditManufacture, UnitEditSection, UnitEditStreet, UnitDolgClient,
UnitAddContract, UnitHelp1, UnitHelp2;
{$R *.dfm}
procedure TFormMainMenu.BitBtn1Click(
begin
FormSklad.ShowModal;
end;
procedure TFormMainMenu.N4Click(Sender: TObject);
begin
FormHelp1.ShowModal;
end;
procedure TFormMainMenu.N5Click(Sender: TObject);
begin
FormHelp2.ShowModal;
end;
procedure TFormMainMenu.N2Click(Sender: TObject);
begin
FormMainMenu.Close;
end;
procedure TFormMainMenu.N9Click(Sender: TObject);
begin
FormContract.ShowModal;
end;
procedure TFormMainMenu.N8Click(Sender: TObject);
begin
FormAddContract.ShowModal;
end;
procedure TFormMainMenu.N11Click(Sender: TObject);
begin
FormClients.ShowModal;
end;
procedure TFormMainMenu.N12Click(Sender: TObject);
begin
FormEditAgent.ShowModal;
end;
procedure TFormMainMenu.N13Click(Sender: TObject);
begin
FormEditManufacture.ShowModal;
end;
procedure TFormMainMenu.N14Click(Sender: TObject);
begin
FormEditSection.ShowModal;
end;
procedure TFormMainMenu.N15Click(Sender: TObject);
begin
FormEditStreet.ShowModal;
end;
procedure TFormMainMenu.BitBtn2Click(
begin
FormMainMenu.Close;
end;
procedure TFormMainMenu.N17Click(Sender: TObject);
begin
FormDolgClient.ShowModal;
end;
procedure TFormMainMenu.BitBtn3Click(
begin
FormContract.ShowModal;
end;
procedure TFormMainMenu.BitBtn4Click(
begin
FormClients.ShowModal;
end;
procedure TFormMainMenu.BitBtn5Click(
begin
FormEditAgent.ShowModal;
end;
procedure TFormMainMenu.WMClose(var a:TWMClose);
begin
FormMainMenu.Caption:='Караул! Меня закрывают!';
  if messageDlgPos('Меня хотят закрыть. 
Хозяин, вы уверенны в своих действиях???',mtConfirmation,[
                    
BoundsRect.Left,BoundsRect.
then Close