Реферат по предмету "Информатика, программирование"


Разработка информационной системы учета товаров на оптовом складе

Курсовой проект по дисциплине
 
“Средства проектирования клиент – серверныхприложений”
 
Автоматизированная система обработки информации
Разработка информационнойсистемы учета товаров на оптовом складе
Выполнил студент гр.
Курсовой проект
выполнен в соответствии
с заданием и допущен кзащите
Руководитель

2009

Кафедра:
Специальность: «Автоматизированныесистемы обработки информации и управления»
Дисциплина: Средствапроектирования клиент-серверных приложений
Тема: Разработка информационнойсистемы учета товаров на оптовом складе
ЗАДАНИЕ НА КУРСОВОЙПРОЕКТ
Оптовый склад принимаетпартии товаров от поставщиков и отпускает его клиентам мелкими партиями.Требуется вести (количественный и стоимостной) учет поступающих и отпускаемыхтоваров, поставщиков и клиентов, формировать приходные и расходные накладные. Всистеме формируются отчеты о поступлении и отпуске товаров на складе запроизвольный период.
Спроектироватьинформационную систему учета товаров на оптовом складе в среде СУБД MS SQL Server.
Исходные данные кпроекту:
1.     Список атрибутовпоставщиков товаров (адрес, фамилия, имя и отчество предпринимателя,наименование фирмы, ИНН, КПП, ОКПО, БИК).
2.     Список товаров.
3.     />Список атрибутов покупателей товаров(адрес, фамилия, имя и отчество предпринимателя, наименование фирмы, ИНН, КПП,ОКПО, БИК)..
Выходные данные кпроекту:
-Приходная итоварно-транспортная (расходная) накладные.
-Отчет о поступлении иотпуске товаров на складе за произвольный период.
Исполнитель: студент гр. ..  _strangera@mail.ru______________
                                                                                                                                             (подпись)
Руководитель: .            _______________
                                                                                                                             (подпись)

Содержание
 
Реферат
1. Описание предметной области
2. Обзор аналогов
3. Техническое задание
4. Проектирование базы данных
4.1. Нормализация отношений
4.1.1. Ненормализованная форма
4.1.2. Вторая нормальная форма
4.2. Структура таблиц
4.3. Диаграмма сущность связь (ER –диаграмма)
4.4. Создание БД и таблиц
4.5. Заполнение таблиц
4.6. Тексты запросов SQL
5. Клиентская часть
5.1. Общие сведения о работе системы
5.2. Функциональное назначение
5.3. Инсталляция и выполнение программногопродукта
5.4. Руководство пользователя
6. Заключение
Приложение 1. Текст команд на языкеSQL
Приложение 2. Экранные формы(результаты выполнения запросов).
Приложение 3. Структуры баз данныханалогичных программ из раздела 2
Приложение 4. Шаблон приходнойнакладной
Приложение 5. Шаблон товарно-транспортнойнакладной

Реферат
Пояснительная записка 46с., 11 рис., 9 табл., 4 источника, 5 прил.
КУРСОВОЙ ПРОЕКТ, ОПТОВЫЙСКЛАД, БАЗА ДАННЫХ (БД), СИСТЕМА УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ (СУБД), MICROSOFT SERVER 2000, НОРМАЛЬНАЯ ФОРМА, ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ,ПРОЕКТИРОВАНИЕ, ЯЗЫК СТРУКТУРИРОВАННЫХ ЗАПРОСОВ SQL.
Объектом исследованияявляется оптовый склад.
Цель работы –проектирование базы данных для информационной системы учёта на оптовом складе.В процессе работы изучена предметная область и получены практические навыки вработе с СУБД MS SQL Server 2000, разработаны структуры таблиц, проведенанормализация отношений до 2-й формы включительно. В результате работы созданыбаза данных warehouse и таблиц, произведено заполнение таблиц,разработано строк кода SQL.
Разработанная база данныхможет быть применена при автоматизации ведения учёта на оптовом складе.Логическая структура базы данных может применяться для других информационныхсистем с аналогичной предметной областью.

1. Описание предметнойобласти
Оптовый склад принимаетпартии товаров от поставщиков и отпускает его клиентам мелкими партиями.Требуется вести (количественный и стоимостной) учет поступающих и отпускаемыхтоваров, поставщиков и клиентов, формировать приходные и расходные накладные.
Также необходимо формироватьотчеты о поступлении и отпуске товаров на складе за произвольный период.
На складе происходит движениематериальных и информационных потоков. Первые представлены движением товара отпоставщиков на склад или со склада к покупателям, а информационные потокипредставлены документацией, необходимой для этих операций.
Склад принимает и складирует готовуюпродукцию, эта операция сопровождается формированием приходной накладной. Онасостоит из двух частей: общей (в которую входят номер накладной, наименование поставщикаи дата сдачи продукции на склад) и спецификации (в нее входят наименования иколичество передаваемой продукции).
Продукция со складов направляетсязаказчикам в соответствии с заключенными договорами. Отправляется продукция наосновании товарно-транспортной накладной. Товарно-транспортная накладнаясостоит из общей части (номер накладной, реквизиты грузоотправителя,грузополучателя и грузоперевозчика, дата отгрузки) и спецификации (вид иколичество отгружаемой продукции).
После получения продукции заказчикдолжен произвести оплату, которая оформляется платежным поручением, выписаннымна основании товарно-транспортной накладной. Общая часть платежного поручениявключает номера товарно-транспортной накладной и платежного поручения, и датуоплаты. Спецификация включает вид и количество оплачиваемой продукции.
Счет-фактура – это документ,выдаваемый поставщиком покупателю или предоставляемые поставщиком банку дляподтверждения платежа покупателя. Общая часть включает реквизиты поставщика ипокупателя, а в спецификации указываются наименование товара, единицыизмерения, цена и сумма.

2. Обзор аналогов
 Аналогичные программы:1. Учет и движение товара на складе3.8.1.Наименование: Учети движение товара на складе 3.8.1.
Фирма разработчик(автор): V-A-V.
Функции системы:
— Прием и отпуск товаракак в основных единицах измерения, так и в различных упаковках с авто пересчетомв основные единиц измерения.
— Расценка товара наскладе по неограниченному количеству цен, а также его отпуск со склада по однойиз выбранных цен.
— Гибкая система учетаскидок и накруток на товар для покупателя. — Ведение кассовых операций поприходу и расходу товара, как в автоматическом, так и в ручном режиме.
— Ведение заказов натовар для своих потребителей. Отслеживание состояний заказов с последующим помещениемзаказа в журнал расхода. — Возможность просмотра кассы, как общей, так и поотдельно взятому поставщику / потребителю.
— Возможность быстрогополучения информации по выбранному товару на любую дату.
— Печать накладных наотпуск товара — Отчет о прибыли по потребителям.
— Печать прайс-листов.
— Отчет по остаткам наскладе.
— Отчет по поставщикутовара.
Используемая СУБД: MS Access 2000
Структура базы данныхприведена в приложении 3.
Количественныехарактеристики БД:
Количество таблиц: 28.
Количество запросов MS Access: 20
2. Система учета ‘СКЛАД’1.0.
Наименование: Ст — Системаучета ‘СКЛАД’ 1.0.
Фирма – разработчик St&Soft.
Функции системы:
— вести неограниченноеколичество информационных баз данных
— вести весьдокументооборот, касающийся складского учета
— вести ведомостьзадолженностей (по клиентам)
— получать печатныеотчеты
— просматривать динамикупосредством анализа в графическом представлении
— вести прайс-листы,печатать ценники
— поддержканеограниченного количества пользователей с возможностью назначения прав доступак разделам системы и фирмам
— вести системунапоминаний (памяток пользователям)
— копировать данные
Используемая СУБД: MS Access 2002.
Структура базы данныхприведена в приложении 3.
Количественныехарактеристики БД:
Количество таблиц: 42

3. Техническое задание
 
3.1 Общие сведения
 
3.1.1 Полноенаименование системы и её условное обозначение
Полное наименование:Автоматизированная система учёта товара на оптовом складе.
Сокращённое наименование:АСУТ «Склад».
3.1.2 Заказчик,разработчик и пользователь системы.
Заказчик: Торговая сеть«Мастер+».
Разработчик: Научно–производственнаяфирма «Компьютер»
Пользователь: Оптовыйторговый склад.
3.2 Назначение системы
 
Разрабатываемаяавтоматизированная система обработки информации решает задачу автоматизациипроцессов работы оптового склада.
3.3 Цель системы
 
Задачу автоматизациисклада можно разбить на подзадачи:
1)        Учет приходящихтоваров.
2)        Учет количестватовара на складе.
3)        Учёт отравленныхтоваров.
4)        Формированиетоварно-транспортной и приходной накладных, а также счёта, предоставляемогопокупателю для оплаты.
Разрабатываемаяавтоматизированная система должна предоставлять удобные средства для решенияперечисленных задач.

3.4 Требования ксистеме
3.4.1 Требования кфункциям системы
Архитектура системы:клиент-серверная.Основные функции: ввод и корректировка данных (поставщики,покупатели, товары) получение отчетов по запросам к базе данных.
3.4.2 Требования квидам обеспечения
3.4.2.1 Программноеобеспечение
Базовые операционныесистемы для серверной части – лицензионная версия Windows NT 4.* /2000 и выше, для клиентской части – лицензионная версияWindow 2000 и выше.
Система управления базамиданных Microsoft SQL Server 2000.
Средства защитыинформации от несанкционированного доступа класса «3А».
Средства защиты откомпьютерных вирусов.
3.4.2.2 Техническоеобеспечение
Минимальная конфигурациятехнических средств должна соответствовать стандарту, принятому в торговой сети«Мастер+» и обеспечить нормальную работу СУБД MS SQL Server 2000.

4. Проектирование базыданных
4.1 Нормализацияотношений
 
4.1.1 Ненормализованнаяформа
Таблица 4.1.
Однотабличная база данных«Оптовый склад»Номер пришедшей на склад партии товара Номер проданной партии товара Стоимость партии товара Стоимость единицы товара Единица товара (тонна, ящик, мешок и т п) Масса единицы товара Дата поступления партии товара Дата продажи партии товара Состав партии товара (перечень товаров) Количество каждого товара в партии Наименование поставщика партии товара Адрес поставщика Телефон поставщика ИНН поставщика КПП поставщика ОКПО поставщика БИК поставщика Банк поставщика Счёт поставщика Корреспондентский счёт поставщика Руководитель поставщика Главный бухгалтер поставщика Наименование покупателя партии товара Адрес покупателя Телефон покупателя ИНН покупателя КПП покупателя ОКПО покупателя БИК покупателя Банк покупателя Счёт покупателя Корреспондентский счёт покупателя Руководитель покупателя Главный бухгалтер покупателя Количество товара на складе Наименование склада Адрес склада Телефон склада ИНН склада КПП склада ОКПО склада БИК склада Банк склада Счёт склада Корреспондентский счёт склада Руководитель склада Главный бухгалтер склада
 
4.1.2 Перваянормальная форма
 
/>

/>
/>
В полученной первойнормальной форме каждый не входящий в первичный ключ атрибут функциональнозависит от первичного ключа, следовательно, это вторая нормальная форма.
 
4.2 Структура таблиц
 
Справочник «Поставщики».
Информации о поставщиках хранится в таблице «Supplier».
Структура и правила поддержки целостности данных приводятся втабл. 4.2.1
Таблица 4.2.1.
Структура таблицы Supplier№ Название поля Тип поля Длина Null Назначение 1 Supplier_id Числовой 4 Not Первичный ключ 2 Supplier_name Текстовый 100 Not Название фирмы 3 Supplier_address Текстовый 255 Not Адрес фирмы 4 Supplier_INN Числовой 4 Not ИНН 5 Supplier_account Текстовый 25 Not Номер счёта поставщика 6 Supplier_KPP Числовой 4 Not КПП поставщика 7 Supplier_phone Текстовый 20 Not Телефон(ы) поставщика 8 Supplier_bank Текстовый 255 Not Банк поставщика 9 Address_bank Текстовый 255 Not Адрес банка 10 Supplier_bik Текстовый 255 Not БИК поставщика 11 Corr_account Текстовый 25 Not Корреспондентский счёт поставщика 12 Okpo Числовой 4 Not ОКПО поставщика 13 Director Текстовый 255 Not Директор предприятия 14 Chief_accountant Текстовый 255 Not Главный бухгалтер предприятия
 
Справочник «Товары»
В справочнике «goods»хранится информация о наименовании товара. Она связана с таблицами в которыхнаходятся параметры для каждого товара. Структура данных приведена в табл. 4.2.2.
Таблица 4.2.2.
Структура таблицы Goods№ Название поля Тип поля Длина Null Назначение 1 Goods_id Числовой 4 Not Первичный ключ 2 Goods_name Текстовый 50 Not Название типа 3 Quantity Числовой 4 Not Количество данного товара 4 Price Денежный 8 Not Цена единицы товара 5 Manufacturer Текстовый 255 Not Производитель 6 Unit Текстовый 4 Not Единица измерения товара (тонна, ящик, мешок и т п) 7 Massa Числовой 4 Not Масса единицы товара
 
Справочник «Заказчики»
Справочник «customer» содержит информацию о заказчиках. Структура данных приведена в табл. 4.2.3.
Таблица 4.2.3
Структура таблицы Customer№ Название поля Тип поля Длина Null Назначение 1 Customer_id Числовой 4 Not Первичный ключ 2 Customer_name Текстовый 50 Not Название фирмы 3 Customer_address Текстовый 255 Not Адрес фирмы 4 Customer _INN Числовой 4 Not ИНН 5 Customer_account Текстовый 25 Not Номер счёта заказчика 6 Customer_KPP Числовой 4 Not КПП покупателя 7 Customer _phone Текстовый 255 Not Телефон(ы) покупателя 8 Customer _bank Текстовый 255 Not Банк покупателя 9 Address_bank Текстовый 255 Not Адрес банка № Название поля Тип поля Длина Null Назначение 10 Customer _bik Текстовый 255 Not БИК покупателя 11 Corr_account Текстовый 25 Корреспондентский счёт покупателя 12 Okpo Числовой 4 Not 13 Director Текстовый 255 Not Директор предприятия 14 Chief_accountant Текстовый 255 Not Главный бухгалтер предприятия /> /> /> /> /> /> /> /> />
 
Справочник «Закупаемая партия товара»
В таблице «Party_delivered» содержится стоимость партиипоставленного на склад товара, дата поставки и номер поставщика. Структураданных приведена в табл. 4.2.4.
Таблица 4.2.4
Структура таблицы Party_delivered№ Название поля Тип поля Размер Null Назначение 1 Party id Числовой 4 Not Идентификатор партии товара (номер приходной накладной) 2 Supplier_id Числовой 4 Not Идентификатор поставщика из таблицы 4.2.1 3 Price Денежный
Х Not Стоимость партии товара 4 _Date Дата
Y Not Дата поставки
 
Справочник «Доставленный товар»
В таблице «Delivered_goods» содержится номер партии товара,количество товара в партии, стоимость единицы товара в партии. В различныхпартиях стоимость одного и того же товара за единицу может быть различна.Структура данных приведена в табл. 4.2.5.
Таблица 4.2.5
Структура таблицы Delivered_goods№ Название поля Тип поля Размер Null Назначение 1 Id Числовой 4 Not Идентификатор записи 2 Goods_id Числовой 4 Not Идентификатор товара из таблицы 4.2.2 3 Party_id Числовой 4 Not Идентификатор партии товара из таблицы 4.2.4 4 Quantity Числовой 4 Null Количество товара в партии 5 Price Денежный 8 Not Стоимость единицы товара
Справочник «Проданная партия товара»
В таблице «Party_sold» содержатся сведения о проданномтоваре. Структура данных приведена в табл. 4.2.6.
Таблица 4.2.6
Структура таблицы Party_sold№ Название поля Тип поля Размер Null Назначение 1 Party_id Числовой 4 Not Номер партии (товарно-транспортной накладной 2 _Date Дата 8 Not Дата продажи 3 Price Денежный 8 Not Стоимость партии товара 4 Customer_id Числовой 4 Not Идентификатор покупателя из таблицы 4.2.3 5 Seria Текстовый 10 Not Серия товарно-транспортной накладной
Справочник «Проданный товар»
В таблице «Sent_goods» содержится информация о стоимости исоставе продаваемой партии товара. Структура данных приведена в табл. 4.2.7.
Таблица 4.2.7
Структура таблицы Sent_goods№ Название поля Тип поля Размер Null Назначение 1 Goods_id Числовой 4 Not Идентификатор товара из таблицы 4.2 2 Party_id Числовой 4 Not ID партии из таблицы 4.6 3 Quantity Числовой 4 Not Количество товара в данной партии 4 Price Денежный
Y Not Стоимость единицы товара
 
Справочник «Данные склада»
В таблице «Warehouse» содержатся реквизиты склада. Структура данных приведена в табл. 4.2.8.

Таблица 4.2.8
Структура таблицы Warehouse№ Название поля Тип поля Размер Null Назначение 1 Name Текстовый 100 Not Наименование склада 2 Address Текстовый 255 Not Адрес склада. 3 INN Числовой 4 Not ИНН склада 4 KPP Числовой 4 Not КПП склада 5 Phone Текстовый 20 Not Телефон 6 Account Текстовый 25 Not Счёт 7 Bank Текстовый 255 Not Банк 8 Address_bank Текстовый 255 Not Адрес банка 9 BIK Числовой 4 Not БИК 10 Okpo Числовой 4 Not ОКПО склада 11 Corr_account Текстовый 25 Not Корреспондентский счёт 12 Director Текстовый 255 Not Директор 13 Chief_accountant Текстовый 255 Not Главный бухгалтер
 
4.3. Диаграмма«Сущность-связь» (ER-диаграмма)
Диаграмма“Сущность-связь” (ER-диаграмма)разработана на основе анализа предметной области и представлена на рис. 4,выполненная с помощью CASE-средствMS SQL Server 2000.
Сущность «Поставщик»(Suppliers служит для учетапоставщиков партий на склад.
Сущность «Поставщик»связана с сущностью «Поставленная партия товара».
Атрибуты сущности«Поставщик»:Supplier_id          — Идентификатор поставщика, первичный ключ.Supplier_name     -Наименование поставщика.
Supplier_address         – Адрес поставщика
Supplier_account          – Расчетный счёт поставщика
Supplier_inn                          — ИНН поставщика
Supplier_kpp                         -КПП поставщика
Supplier_phone            -телефон поставщика
Supplier_bank                        -банк поставщика
Address_bank                        -адрес банка поставщика
Supplier_bik                          -БИК банка поставщика
Corr_account                         -Корреспондентский счётпоставщика
Okpo                             -кодОКПО
Director                         -Руководительпредприятия поставщика
Chief_accountant          -Главный бухгалтерпоставщика
Сущность«Покупатель» (Customer) служит для учета юридических и физических лиц, cделавшиеприобретение партий товара.
Сущность«Покупатель» связана с сущностью «Проданная партия товара».
Атрибуты сущности«Покупатель»:Customer_id        — Идентификатор покупателя, первичный ключ.Customer_name   -Наименование покупателя.
Customer_address                – Адрес покупателя
Customer_account                 – Расчетный счёт покупателя
Customer_inn               — ИНН покупателя
Customer_kpp              -КПП покупателя
Customer_phone          -телефон покупателя
Customer_bank            -банк покупателя
Address_bank               -адрес банка покупателя
Customer_bik               -БИК банка покупателя
Corr_account                -Корреспондентский счёт покупателя
Okpo                             -кодОКПО
Director                         -Руководительпредприятия покупателя
Chief_accountant          -Главный бухгалтерпокупателя
Сущность «Товар» (GOODS) служит для учетатоваров находящихся в данное время на складе.
Сущность «Товар»связана с сущностями «Поставленные товары» и «Проданные товары».
Атрибуты сущности«Товар»:
Goods_id - Номер_товара, первичный ключ.
Goods_name — Наименование_товара.
Price -Цена.
Manufacturer -Фирма – производитель товара.
Quantity     — Количество
Unit            — Единица товара (тонна, ящик, мешок, и т п)
Massa                  — Масса единицы товара
Сущность «Закупаемаяпартия товара» служит для учёта даты поставки партии товара на склад, поставщикаи стоимости партии.
Сущность «Закупаемаяпартия товара» связана с сущностями «Товар», «Закупленные товары».
Атрибуты сущности«Закупаемая партия товара»:
Party_id    – номер партии товара, первичныйключ.
Date           — дата поступления партиитовара на склад.
Supplier_id          — идентификатор поставщика.
Price           — стоимость партии.
Сущность «Проданнаяпартия товара» служит для учёта даты продажи партии товара со склада,покупателя и стоимости партии.
Сущность «Проданнаяпартия товара» связана с сущностями «Товар», «Проданные товары».
Атрибуты сущности«Проданная партия товара»:
Party_id    – номер партии товара, первичныйключ.
Date           — дата поступления партиитовара на склад.
Customer_id        — идентификатор покупателя.
Price           — стоимость партии
Seria           — серия товарно–транспортнойнакладной.
Сущность «Проданныйтовар» служит для учёта состава проданной партии товара.
Сущность связана ссущностями «Товар» и «Проданная партия товара».
Атрибуты сущности«Проданный товар»:
ID              -        идентификаторзаписи таблицы, первичный ключ
Goods_id   —        идентификатор товара.
Party_id     -        идентификатор партии товара.
Quantity     -        количество.
Price           -        стоимость единицытоваров.
Сущность «Закупленныйтовар» служит для учёта состава проданной партии товара.
Сущность связана ссущностями «Товар» и «Закупленная партия товара».
Атрибуты сущности«Закупленный товар»:
ID              -        идентификаторзаписи таблицы, первичный ключ
Goods_id   —        идентификатор товара.
Party_id     -        идентификатор партии товара.
Quantity     -        количество.
Price           -        стоимость единицытоваров.
Сущность «Склад» служитдля хранения данных склада.
Сущность не связана спрочими сущностями, но необходима при формировании выходных документов.
Атрибуты сущности«Склад»:
Name                   -        Наименованиесклада.
Address      -        Адрес склада.
INN            -        ИНН склада.
KPP           -        КПП склада.
Phone                  -        Телефонсклада.
Account      -        Расчетный счёт склада.
Bank          -        Банк склада.
Address_bank     -        Адрес банка склада.
BIK            -        БИК банкасклада.
OKPO                  -        ОКПОсклада.
Corr_account       -        Корреспондентский счёт.
Director      -        Руководитель.
Chief_accountant -        Главный бухгалтерсклада.
/>
Рис. 4.3.1. Диаграмма«Сущность — связь»
4.4 Создание базыданных и таблиц
 
CREATE DATABASE warehouse;
USE warehouse;
CREATE TABLE supplier
(
supplier_idINTEGER PRIMARY KEY NOT NULL IDENTITY(1,1),
supplier_nameVARCHAR(100),
supplier_addressVARCHAR(255),
supplier_accountVARCHAR(25),
supplier_innINTEGER,
suppier_kppINTEGER,
supplier_phoneVARCHAR (20),
supplier_bankVARCHAR (255),
address_bankVARCHAR(255),
supplier_bikINTEGER,
cor_accountVARCHAR(25),
okpo INTEGER,
directorVARCHAR(255),
chief_accountantVARCHAR(255)
);
CREATE TABLE customer
(
customer_idINTEGER PRIMARY KEY NOT NULL IDENTITY(1,1),
customer_nameVARCHAR(100),
customer_addressVARCHAR(255),
customer_accountVARCHAR(25),
customer_innINTEGER,
suppier_kppINTEGER,
customer_phoneVARCHAR (20),
customer_bankVARCHAR (255),
address_bankVARCHAR (255),
customer_bikINTEGER,
cor_accountVARCHAR(25),
okpo INTEGER,
directorVARCHAR(255),
chief_accountantVARCHAR(255)
);
CREATE TABLE goods
(
goods_idINTEGER PRIMARY KEY IDENTITY(1,1),
goods_nameVARCHAR(100),
price MONEY,
manufacturerVARCHAR(300),
quantityINTEGER,
unit VARCHAR(50),
massa INTEGER
);
CREATE TABLE party_delivered
(
party_idINTEGER PRIMARY KEY IDENTITY(1,1),
_dateDATETIME,
supplier_idINTEGER,
price MONEY
);
CREATE TABLE party_sold
(
party_idINTEGER PRIMARY KEY IDENTITY(1,1),
_dateDATETIME,
customer_idINTEGER,
price MONEY,
seriaVARCHAR(10)
);
CREATE TABLEsent_goods
(
ID INTEGERPRIMARY KEY IDENTITY(1,1),
goods_idINTEGER,
party_idINTEGER,
quantityINTEGER,
price MONEY
);
CREATE TABLE delivered_goods
(
ID INTEGERPRIMARY KEY IDENTITY(1,1),
goods_idINTEGER,
party_idINTEGER,
quantityINTEGER,
price MONEY
);
CREATE TABLE warehouse_data
(
nameVARCHAR(100),
addressVARCHAR(255),
inn    INTEGER,
kpp   INTEGER,
phone         VARCHAR(20),
accountVARCHAR(25),
bank  VARCHAR(255),
address_bankVARCHAR(255),
bik    INTEGER,
okpo           INTEGER,
cor_accountVARCHAR(25),
directorVARCHAR(255),
Chief_accountantVARCHAR(255)
);
 
4.5 Заполнениетаблиц
 
INSERT INTO supplierVALUES
(
‘Поставщик №1’,
‘г. Астрахань, ул Третья,д 47’,
‘45654233334789d48’,
‘456789123’,
‘159987456’,
‘(8512) 12-58-95’,
‘Первый строительный’,
‘г Астрахань, улБабушкина, д 57’,
‘465466545’,
‘45965456854sd987g89’,
‘15987456’,
‘Романов Н.Г.’,
‘Рыбнкова Г.П’
);
INSERT INTO customerVALUES
(
‘Покупатель № 1’,
‘г. Нижневартовск, улСедьмая, д 14’,
‘45654233334789d48’,
‘456789123’,
‘159987456’,
‘(8512) 12-58-95’,
‘Банк Москвы’,
‘г Москва, ул Степашина,д 57’,
‘465466545’,
‘45965456854sd987g89’,
‘15987456’,
‘Смирнов К.С.’,
‘Иванова Г.П’
);
INSERT INTOgoods VALUES
(
‘Товар 1’,
‘521.50’,
‘Производитель 1’,
‘5000’,
‘ящик’,
’20’
);
INSERT INTO party_deliveredVALUES
(
’13.03.200915:35:01’,
‘1’,
‘456.25’
);
INSERT INTOparty_delivered VALUES
(
’14.03.200912:00:41’,
‘1’,
‘456.25’
);
INSERT INTOsent_goods VALUES
(
‘1’,
‘4’,
‘998’,
‘500’
);
INSERT INTOdelivered_goods VALUES
(
‘1’,
‘4’,
‘365’,
‘456.25’
);
INSERT INTOwarehouse_data VALUES
(
‘Центральный Астраханскийсклад торговой сети «Мастер+»’,
‘г. Астрахань, улПеревозная, строение 77’,
‘15123456798’,
‘123456789’,
‘8512 65-98-41’,
‘d4fgd6g4fs5g65456’,
‘Первый строительныйбанк’,
‘г Астрахань, ул Лесная,Д 45’,
‘546542364556’,
‘12345678’,
‘fds4f56df4s5gf646’,
‘Степанов Н. К’,
‘Гиреева С.Т.’
);

4.6 Тексты запросов SQL
SQL запросы используемые при оформленииприходной накладной:
/*Получение реквизитов склада*/
SELECT * FROM warehouse_data;
/*Выборка данных отоварах, прибывших в составе партии товара*/
SELECTgoods.goods_name, goods.unit, delivered_goods.price, delivered_goods.quantity,(delivered_goods.quantity*delivered_goods.price) FROM goods, delivered_goodsWHERE (delivered_goods.party_id=' 1') AND (delivered_goods.goods_id =goods.goods_id);
В запросе происходитвыборка количества и стоимости товаров, из таблицы «закупленные товары» (delivered_goods) для всех записей, где поле party_idравно идентификатору пришедшей партии (в примере номер партии товара равен 1);к тому же для каждой записи происходит выборка наименований товаров и единицыих измерения из таблицы «товары» (goods). Выражение (delivered_goods.quantity * delivered_goods.price)вычисляет сумму для каждого товара.
SQL запросы используемые при оформлениитоварно-транспортной накладной:
/*Получение реквизитов склада */
SELECT * FROMwarehouse_data;
/*Выборка данных отоварах, вошедших в состав проданной партии товара*/
SELECTgoods.goods_name, goods.unit, sent_goods.price, sent_goods.quantity,(sent_goods.quantity*sent_goods.price) FROM goods, sent_goods WHERE(sent_goods.party_id=' 1') AND (sent_goods.goods_id = goods.goods_id);
Здесь происходит выборкаданных о товаре, вошедшем в проданную партию, аналогично запросу выборки данныхо товарах, прибывших в составе партии товара, описанному выше.
/*Получение реквизитов покупателя*/
SELECTcustomer.customer_name, customer.customer_address, customer.customer_account,customer.customer_INN, customer.customer_kpp, customer.customer_phone,customer.customer_bank, customer.customer_address_bank, customer.customer_bik,customer.cor_account, customer.okpo, customer.mainbuh, customer.director,party_sold.customer_id FROM customer, party_sold WHERE (party_sold.customer_id= customer.customer_id) AND (party_sold.party_id =126);
Здесь происходит выборкареквизитов покупателя партии товара.
/*Получение количества истоимости товара с идентификатором 3, прибывшего на склад после 22.03.2009 (подобныезапросы используются при построении отчёта)*/
SELECTsum(delivered_goods.quantity * delivered_goods.price) ,sum(delivered_goods.quantity)FROMdelivered_goods, party_delivered WHERE(delivered_goods.party_id=party_delivered.party_id)AND(datepart(day,party_delivered._date) > 22 )AND(datepart(month, party_delivered._date)>= 3 ) AND(datepart(year,party_delivered._date) = 2009 ) AND (delivered_goods.goods_id = 3);

5. Клиентская часть
5.1 Общие сведения оработе системы
 
Клиентская частьпрограммы разработана посредством QT 4.3.3 для WindowsXP и выше. Запускающим модулем являетсяClient.exe.
Для организации доступа к базе данных используется драйверODBC для SQL-сервера Microsoft, версия 03.81.9030.5.2 Функциональное назначение
Программный продукт «Автоматизированная система учёта товаровна оптовом складе (клиент)» предназначен для доступа к базе данных, хранящей сведенияо поступлении и продаже товаров на складе, а также для оформления и печатискладских документов: приходных и товарно-транспортных накладных, отчетов попоступившим и проданным товарам. Поддерживается целостность данных,определяемая типом, размером и диапазоном допустимых значений данных. Получитьисходные тексты проекта Вы можете, связавшись с автором по адресу strangera@mail.ru5.3 Инсталляция и выполнение программного продукта
Перед началомэксплуатации программного продукта «Автоматизированная система учёта товаров наоптовом складе» необходимо добавить базу данных warehouse на сервер и проверитьподключение рабочих станций к серверу.
Далее необходимо спомощью утилиты Windows «Источники данных ODBC» создать пользовательскийисточник данных warehouse
Затем следует запуститьфайл «Установка программы (клиент).exe» и следовать инструкциям программы – инсталлятора.5.4 Руководство пользователя
Для работы с программным продуктом используется простой,интуитивно понятный интерфейс. Последовательность работы с объектами формыопределяется доступностью командных кнопок, целостность данных определяетсянабором используемых в программе проверок.
Переход от одного объекта формы к другому осуществляется принажатии клавиши Tab или щелчком мыши по соответствующему объекту.
После запуска программы пользователь видит на экране главнуюформу.5.4.1 Описание главного окна программы
/>
Рис 6.1 Главное окноприложения
Главное окно программысодержит меню для открытия диалоговых окон приложения.
Меню «Операции» содержиткоманды:
-Добавить партию
-Отправить партию
-Редактировать списоктоваров
-Редактировать списокпоставщиков
-Редактировать списокпокупателей
Меню«Отчёты» содержит команду:
-          Отчёт опоступлении товаров за период
Меню «Настройки» содержиткоманды:
-                                  Данные фирмы
-                                  Соединение сбазой
Меню «Справка»предназначено для вызова руководства пользователя.
 
5.4.2Форма оформления добавления партии товара
 
/>
Рис 6.2 Форма дляоформления добавления партии товара
На форме находятсяэлементы ввода для выбора поставщика, товара, его стоимости и количества. Еслиусановленя опция «Распечатать отчёт», то после нажатия кнопки «Сохранить»открывается форма предварительного просмотра и приходной накладной, свозможностью последующей печати. В группах «Поставщики» и «Товары» присутствуюткнопки «Новый» при нажатии на которые открываются диалоги для добавления новыхпоставщиков.
 
5.4.3Форма оформления отправки партии товара
 
/>
Рис 6.3 Форма дляоформления продажи партии товара
На форме находятсяэлементы ввода для выбора покупателя товара, количества товара, его стоимости.Если установлена опция «Распечатать отчёт», то после нажатия кнопки «Сохранить»открывается форма предварительного просмотра товарно-транспортной накладной, свозможностью последующей печати. В группе «Покупатель» присутствует кнопка«Новый» при нажатии на которую открывается диалог для добавления новыхпокупателей. Значения счётчиков «Количество» и «Цена единицы товара»устанавливаются автоматически в максимальное значение для выбранного выбранноготовара. Также есть возможность указать наценку в процентах и складские илитранспортные расходы. При выборе опции «Распечатать отчёт» открываетсядиалоговое окно для предварительного просмотра товарно-транспортной накладной свозможностью последующей распечатки. Имеется возможность сохранитьтоварно-транспортную накладную в формате .pdf.
 
5.4.4Форма для предварительного просмотра товарно транспортной накладной
 
/>
Рис 6.4 Форма дляпредварительного просмотра товарно — транспортной накладной
Товарнотранспортная накладная печатается на бланке типовой межотраслевой формы №1-Т,утвержденной постановлением Госкомстата России от 28.11.97 №78. Кнопка«Печатать» служит для распечатки накладной, кнопка «PDF» служит для экспорта вформат pdf.
 
5.4.5Форма ввода параметров отчёта
/>
Форма предназначена дляввода параметров отчёта о количестве и стоимости товаров, поступивших ивыбывших со склада за период с начальной даты по конечную дату. После нажатияна кнопку «Показать отчёт» открывается диалоговое окно просмотра отчёта с возможностьюпоследующей распечатки.

6. Заключение
В результате работы создано программное обеспечение,позволяющее автоматизировать рутинные операции торгового склада по оформлениюприходных и товарно-транспортных накладных. Также разработаннаяавтоматизированная система обеспечивает простой и удобный доступ к информации оимеющихся на складе товарах, к данным поставщиков и покупателей.
В ходе выполнения курсовой работы были получены навыкисоставления SQL запросов, изучены основные приёмыработы с средством проектирования баз данных MS SQL Server Enterprise Manager.
Получить исходные тексты проекта Вы можете, связавшись савтором по адресу strangera@mail.ru.

Приложение 1
 
Текст команд на языке SQL.
/*Создание базы данных итаблиц*/
CREATEDATABASE warehouse;
USE warehouse;
CREATE TABLE supplier
(
supplier_idINTEGER PRIMARY KEY NOT NULL IDENTITY(1,1),
supplier_nameVARCHAR(100),
supplier_addressVARCHAR(255),
supplier_accountVARCHAR(25),
supplier_innINTEGER,
suppier_kppINTEGER,
supplier_phoneVARCHAR (20),
supplier_bankVARCHAR (255),
address_bankVARCHAR(255),
supplier_bikINTEGER,
cor_accountVARCHAR(25),
okpo INTEGER,
directorVARCHAR(255),
chief_accountantVARCHAR(255)
);
CREATE TABLE customer
(
customer_idINTEGER PRIMARY KEY NOT NULL IDENTITY(1,1),
customer_nameVARCHAR(100),
customer_addressVARCHAR(255),
customer_accountVARCHAR(25),
customer_innINTEGER,
suppier_kppINTEGER,
customer_phoneVARCHAR (20),
customer_bankVARCHAR (255),
address_bankVARCHAR (255),
customer_bikINTEGER,
cor_accountVARCHAR(25),
okpo INTEGER,
directorVARCHAR(255),
chief_accountantVARCHAR(255)
);
CREATE TABLE goods
(
goods_idINTEGER PRIMARY KEY IDENTITY(1,1),
goods_nameVARCHAR(100),
price MONEY,
manufacturerVARCHAR(300),
quantityINTEGER,
unit VARCHAR(50),
massa INTEGER
);
CREATE TABLE party_delivered
(
party_idINTEGER PRIMARY KEY IDENTITY(1,1),
_dateDATETIME,
supplier_idINTEGER,
price MONEY
);
CREATE TABLE party_sold
(
party_idINTEGER PRIMARY KEY IDENTITY(1,1),
_dateDATETIME,
customer_idINTEGER,
price MONEY,
seriaVARCHAR(10)
);
CREATE TABLEsent_goods
(
ID INTEGERPRIMARY KEY IDENTITY(1,1),
goods_idINTEGER,
party_idINTEGER,
quantityINTEGER,
price MONEY
);
CREATE TABLE delivered_goods
(
ID INTEGERPRIMARY KEY IDENTITY(1,1),
goods_idINTEGER,
party_idINTEGER,
quantityINTEGER,
price MONEY
);
CREATE TABLE warehouse_data
(
nameVARCHAR(100),
addressVARCHAR(255),
inn    INTEGER,
kpp   INTEGER,
phone         VARCHAR(20),
accountVARCHAR(25),
bank  VARCHAR(255),
address_bankVARCHAR(255),
bik    INTEGER,
okpo           INTEGER,
cor_accountVARCHAR(25),
directorVARCHAR(255),
Chief_accountantVARCHAR(255)
);
/*Заполнение таблиц*/
INSERT INTO supplierVALUES
(
‘Поставщик №1’,
‘г. Астрахань, ул Третья,д 47’,
‘45654233334789d48’,
‘456789123’,
‘159987456’,
‘(8512) 12-58-95’,
‘Первый строительный’,
‘г Астрахань, улБабушкина, д 57’,
‘465466545’,
‘45965456854sd987g89’,
‘15987456’,
‘Романов Н.Г.’,
‘Рыбнкова Г.П’
);
INSERT INTO customerVALUES
(
‘Покупатель № 1’,
‘г. Нижневартовск, улСедьмая, д 14’,
‘45654233334789d48’,
‘456789123’,
‘159987456’,
‘(8512) 12-58-95’,
‘Банк Москвы’,
‘г Москва, ул Степашина,д 57’,
‘465466545’,
‘45965456854sd987g89’,
‘15987456’,
‘Смирнов К.С.’,
‘Иванова Г.П’
);
INSERT INTOgoods VALUES
(
‘Товар 1’,
‘521.50’,
‘Производитель 1’,
‘5000’,
‘ящик’,
’20’
);
INSERT INTOparty_delivered VALUES
(
’13.03.200915:35:01’,
‘1’,
‘456.25’
);
INSERT INTOparty_delivered VALUES
(
’14.03.200912:00:41’,
‘1’,
‘456.25’
);
INSERT INTOsent_goods VALUES
(
‘1’,
‘4’,
‘998’,
‘500’
);
INSERT INTOdelivered_goods VALUES
(
‘1’,
‘4’,
‘365’,
‘456.25’
);
INSERT INTOwarehouse_data VALUES
(
‘Центральный Астраханскийсклад торговой сети «Мастер+»’,
‘г. Астрахань, улПеревозная, строение 77’,
‘15123456798’,
‘123456789’,
‘8512 65-98-41’,
‘d4fgd6g4fs5g65456’,
‘Первый строительныйбанк’,
‘г Астрахань, ул Лесная,Д 45’,
‘546542364556’,
‘12345678’,
‘fds4f56df4s5gf646’,
‘Степанов Н. К’,
‘Гиреева С.Т.’
);
/*Запросы на выборку данных*/
SQL запросы используемые при оформленииприходной накладной:
/*Получение реквизитов склада */
SELECT * FROMwarehouse_data;
/*Выборка данных отоварах, прибывших в составе партии товара*/
SELECT goods.goods_name, goods.unit, delivered_goods.price,delivered_goods.quantity, (delivered_goods.quantity*delivered_goods.price) FROMgoods, delivered_goods WHERE (delivered_goods.party_id='1') AND(delivered_goods.goods_id = goods.goods_id);
В запросе происходитвыборка количества и стоимости товаров, из таблицы «закупленные товары» (delivered_goods) для всех записей, где поле party_idравно идентификатору пришедшей партии (в примере номер партии товара равен 1);к тому же для каждой записи происходит выборка наименований товаров и единицыих измерения из таблицы «товары» (goods). Выражение (delivered_goods.quantity * delivered_goods.price)вычисляет сумму для каждого товара.
SQL запросы используемые при оформлениитоварно-транспортной накладной:
/*Получение реквизитов склада */
SELECT * FROMwarehouse_data;
/*Выборка данных отоварах, вошедших в состав проданной партии товара*/
SELECT goods.goods_name, goods.unit, sent_goods.price,sent_goods.quantity, (sent_goods.quantity*sent_goods.price) FROM goods,sent_goods WHERE (sent_goods.party_id= '1') AND (sent_goods.goods_id =goods.goods_id);
Здесь происходит выборкаданных о товаре, вошедшем в проданную партию, аналогично запросу выборки данныхо товарах, прибывших в составе партии товара, описанному выше.
/*Получение реквизитов покупателя*/
SELECT customer.customer_name, customer.customer_address,customer.customer_account, customer.customer_INN, customer.customer_kpp,customer.customer_phone, customer.customer_bank, customer.address_bank,customer.customer_bik, customer.cor_account, customer.okpo, customer.chief_accountant,customer.director, party_sold.customer_id FROM customer, party_sold WHERE(party_sold.customer_id = customer.customer_id) AND (party_sold.party_id =126);
Здесь происходит выборкареквизитов покупателя партии товара.
/*Получение количества истоимости товара с идентификатором 3, прибывшего на склад после 22.03.2009 (подобныезапросы используются при построении отчёта)*/
SELECT sum(delivered_goods.quantity * delivered_goods.price),sum(delivered_goods.quantity)FROM delivered_goods, party_delivered WHERE(delivered_goods.party_id=party_delivered.party_id)AND(datepart(day,party_delivered._date) > 22 )AND(datepart(month, party_delivered._date)>= 3 ) AND(datepart(year,party_delivered._date) = 2009 ) AND (delivered_goods.goods_id = 3);

Приложение 2
 
/>
Экранные формы (результаты выполнения запросов)
/>


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.