АКАДЕМИЯ УПРАВЛЕНИЯ ПРИ ПРЕЗИДЕНТЕ РЕСПУБЛИКИ БЕЛАРУСЬ
ИНСТИТУТ УПРАВЛЕНЧЕСКИХ КАДРОВ
Факультет инновационной подготовки
Кафедра управления информационными ресурсами
Специальность «Управления информационными ресурсами»
КУРСОВАЯ РАБОТА
По дисциплине «Системы баз данных»
На тему
«база данных - склад производственного предприятия»
Студент
_____________________ (курс, группа)
|
__________________ (подпись) |
______________________ (инициалы, фамилия) |
Руководитель
_________________ (ученая степень, звание) |
__________________ (подпись) |
______________________ (инициалы, фамилия) |
Минск 2014
СОДЕРЖАНИЕ
ВВЕДЕНИЕ.. 3
- Постановка задачи. 4
- Проектирование приложения. 4
2.1.Определение перечня решаемых задач. 4
2.2. Уточнение последовательности решаемых задач. 5
2.3. Определение объектов базы данных. 6
2.4 Определение структуры данных. 8
- Разработка пользовательского интерфейса и описание приложения. 13
3.1. Запросы.. 13
3.2. Формы.. 16
3.3. Отчеты.. 25
- Автоматизация приложения. 31
4.1. Автоматизация приложения с помощью макросов. 31
4.2. Автоматизация приложения с помощью VBA.. 32
Заключение.. 37
список используемой литературы... 38
ПРИЛОЖЕНИЕ А.. 39
ПРИЛОЖЕНИЕ Б. 40
ПРИЛОЖЕНИЕ В.. 45
ВВЕДЕНИЕ
На сегодняшний день базы данных на предприятиях производственного характера используются повсеместно. Ведение информации и характерных данных по товарам реализуемых предприятием требуют особого внимания. Для этого необходимо создать условие хранения скопившейся информации, организовать полнофункциональную возможность выборки необходимой информации по характерному признаку, составление оперативной отчетности. Использование и применение данных предполагает два направления по их изучению: проектирование базы данных и управление информацией, расположенной в них. Данная курсовая работа рассчитана на автоматизацию склада производственного предприятия средствами Microsoft Access 2007.
В курсовой работе рассмотрены не только вопросы проектирования и построения базы данных, но также приводится схемы и описания проектирования законченного приложения для склада производственного предприятия.
Цель курсовой работы является разработка БД производственного предприятия.
Определим задачи курсовой работы:
1.Определение исходных данных на проектирование базы данных склада производственного предприятия;
2.Определение базовых функций базы данных склада производственного предприятия;
3.Создание базовых запросов пользователя базы данных производственного предприятия;
4.Разработка отчетов (документов) базы данных производственного предприятия;
5.Разработка форм интерфейса базы данных производственного предприятия.
1. Постановка задачи
В процессе разработки базы данных необходимо реализовать:
- Ввод товара в БД и его характеристики;
- Ввод поставщиков и получателей товара в БД и их характеристики;
- Учет принятого на склад от поставщиков товара и учет отгруженного получателям товара;
- Предоставление информации о связях между товаром и получателями и поставщиками;
- Формирование отчетной документации;
- Проведение инвентаризации;
2. Проектирование приложения
Согласно поставленному заданию можно представить, что экономическим объектом является предприятие, специализирующееся на производстве готовой продукции. Также можно предположить, что предприятие является не большим предприятием со своей инфраструктурой. Чтобы наиболее быстро и эффективно функционировать и расширять бизнес, предприятию, необходимо вести автоматизированный учет товара на складе.
Схему движения товара на таком складе можно представить следующим образом:
Рис. 2.1 – Схема движения товара
2.1.Определение перечня решаемых задач
Данная база будет включать в себя все необходимые сведения о товаре, его приходе и расходе со склада.
Автоматизированный учет информации позволяет наиболее достоверно, быстро и безошибочно собирать и производить различные операции с данными. А значит, позволит быстрее и качественнее выполнять работнику склада свои задачи, не отвлекаясь на перепроверку данных.
В общих чертах перечень решаемых БД задач можно записать как:
- Ввод товара в БД и его характеристики;
- Ввод поставщиков товара в БД и их характеристики;
- Ввод получателей товара в БД и их характеристики;
- Учет принятого на склад от поставщиков товара;
- Учет отгруженного со склада товара получателям;
- Предоставление информации о связях между товаром и получателями / поставщиками;
- Формирование отчетной документации;
- Проведение инвентаризации;
- Ввод и предоставление информации о работниках склада.
2.2. Уточнение последовательности решаемых задач
Основное назначение склада – принятие, хранение, выдача и учет готовой продукции выпускаемой предприятием, сырья и материалов предназначенных для производства и непроизводственных товаров внутреннего потребления.
База данных «Склад» создается для удовлетворения потребностей пользователей в информации. Данные о товаре, его характеристиках, приходе, расходе и остатках позволят более оперативно отслеживать потребности в товаре, а также проводить инвентаризацию на складе.
Последовательность решаемых БД задач можно представить как:
- Заполнение справочников:
- Единицы измерения товаров;
- Товарные группы;
- Товар;
- Поставщики;
- Получатели;
- Работники склада.
- Предоставление информации из этих справочников;
- Проведения прихода товара на склад от поставщиков:
- Ввод данных по ТТН (ТН).
- Проведение расхода товара со склада получателям:
- Ввод данных по ТТН (ТН).
- Просмотри связей товара и поставщика / получателя:
- По товару: информация о товаре, кто является поставщиком данного товара, кто является получателем данного товара;
- По поставщику: информация о поставщике, какой товар он поставляет на склад;
- По получателю: информация о получателе, какой товар он получает со склада;
- Получение отчета по инвентаризации.
2.3. Определение объектов базы данных
Для реализации задуманной БД нам понадобятся следующие объекты:
Таблицы:
Рис. 2.2. – Таблицы БД
Запросы:
Рис. 2.3. – Запросы БД
Формы:
Рис. 2.4. – Формы БД
Отчеты:
Рис. 2.5. – Отчеты БД
Макросы:
Рис. 2.6. – Макросы БД
2.4 Определение структуры данных
При разработке структуры данных должны быть учтены следующие принципы:
- эффективное использование памяти;
- быстрый доступ к данным;
- нормализация;
- эффективность связей.
Еще один шаг – логическое группирование элементов данных. Полученные группы составят логические структуры таблиц. Так, например, данные о товаре должны вводиться в справочнике, а не при вводе товара по его приходу на склад.
Исходя из группировки задач по темам были созданы таблицы, а затем поля этих таблиц были заполнены необходимыми данными (рис.2.17).
Рис 2.7. – Структура записей таблицы «Единицы измерения товара»
Рис 2.8. – Структура записей таблицы «Товарные группы»
Рис 2.9. – Структура записей таблицы «Товар»
Рис 2.10. – Структура записей таблицы «Поставщики»
Рис 2.11. – Структура записей таблицы «Получатели»
Рис 2.12. – Структура записей таблицы «Приход товара»
Рис 2.13. – Структура записей таблицы «Приход товара_доп»
Рис 2.14. – Структура записей таблицы «Расход товара»
Рис 2.15. – Структура записей таблицы «Расход товара_доп»
Рис 2.16. – Структура записей таблицы «Движение товара»
В СУБД Access процесс создания реляционной базы данных включает создание схемы данных. Схема данных наглядно отображает таблицы и связи между ними, а также обеспечивает использование связей при обработке данных целостность базы данных.
На рисунке 2.17 представлена схема данных разрабатываемой базы данных.
Рис. 2.17. – Инфологическая модель структуры БД
Увеличена схема БД представлена в Приложении А.
3. Разработка пользовательского интерфейса и описание приложения
3.1. Запросы
Для отображения необходимых данных в формах используются запросы.
Создание запросов происходит с выбора пункта «Создание простых запросов», где необходимо определить нужные таблицы и запросы для выбранного элемента (рисунок 3.1).
Рис. 3.1. - Создание запроса
После выбора всех необходимых полей, система спросит об отчете, который необходим для построения данного запроса.
Рис. 3.2. - Выбор отчета
Для более сложных запросов используется Конструктор запросов.
Рис. 3.3. - Конструктор запроса
После всех проделанных манипуляций наш запрос появится в общих объектах Access (рисунок 3.4).
Рис. 3.4. - Отображение запроса в объектах Access
Таким образом, выполняется большинство запросов.
Все информационные объекты предметной области связаны между собой. Различаются связи нескольких типов, для которых введены следующие обозначения:
- один к одному (1:1);
- один ко многим (1 : М);
- многие ко многим (М : М).
Связь один к одному (1:1) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует не более одного экземпляра информационного объекта В и наоборот.
При связи один ко многим (1:М) одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В, но каждый экземпляр объекта В связан не более чем с 1 экземпляром объекта А. Графически данное соответствие имеет вид.
Связь многие ко многим (М:М) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В и наоборот.
В среде Access запросы не заканчиваются простым построением связей полей через форму Мастера запросов. MSAccess хорошо понимает язык запросов SQL. В нашей разрабатываемой базе данных попробуем восполнить данный элемент. Для этого создадим запрос на выборку товара из таблицы «Товары». Для этого напишем следующий код SQL:
SELECT [Товары].Поле1, [Товары].Тип, [Товары].МОЛ
FROM [Товары]
WHERE ((([Товары].Тип)=[Выберите тип товара:]));
Из данных строк мы определяем, что мы указываем системе справочник (таблицу) «Товары», определяем имеющиеся поля и указываем необходимое нам поле, по которому будет осуществляться запрос. В данном примере выбрано поле – Тип.
SQL-код всех запросов БД представлен в Приложении Б.
3.2. Формы
Формы Access позволяют создавать пользовательский интерфейс для таблиц базы данных. Хотя для выполнения тех же самых функций можно использовать режим таблицы, формы предоставляют преимущества для представления данных в упорядоченном и привлекательном виде. Формы позволяют также создавать списки значений для полей, в которых для представления множества допустимых значений используются коды. Правильно разработанная форма ускоряет процесс ввода данных и минимизирует ошибки.
Формы создаются из набора отдельных элементов управления: текстовые поля для ввода и редактирования данных, кнопки, флажки, переключатели, списки, метки полей, а также рамки объектов для отображения графики и объектов OLE. Форма состоит из окна, в котором размещаются два типа элементов управления: динамические (отображающие данные из таблиц), и статические (отображающие статические данные, такие, как метки и логотипы).
Формы Access являются многофункциональными, они позволяют выполнять задания, которые нельзя выполнить в режиме таблицы. Формы позволяют производить проверку корректности данных, содержащихся в таблице. Access позволяет создавать формы, включающие другие формы (форма внутри формы называется подчиненной). Формы позволяют вычислять значения и выводить на экран результат.
Порядок проектирования экранной формы подразумевает следующие этапы:
- проектирование содержания экранной формы
- проектирование ее формы представления (формы экрана)
- программное обеспечение экранной формы.
Проектирование сценария диалогового режима решения задачи состоит в разработке взаимосвязанной последовательности экранных форм и правил перехода между ними.
В БД «Склад производственного предприятия» мною были разработаны 24 экранные формы.
Для ввода информации в базу данных используются следующие формы:
- «Единицы измерения товара»;
- «Товарные группы»;
- «Товары»;
- «Получатели»;
- «Поставщики»;
- «Приход товара»;
- «Приход товара_доп»;
- «Расход товара»;
- «Расход товара_доп»;
- «Работники склада».
Для вывода той или иной информации из базы данных используются следующие формы:
- «Запрос получатели»;
- «Запрос работники склада»;
- «О программе»;
- «Поиск поставщика»;
- «Поиск товара»;
- «Поиск товара по наименованию»;
- «Информация о получателе»;
- «Получаемый товар»;
- «Получатели1»;
- «Поставляемый товар»;
- «Поставщики1»;
- «Товар1»;
Для поддержания диалогового режима работы пользователя с АРМ используются формы: «Главное меню» и «Справочники».
Формы проектировались как при помощи Мастера, так и с использованием Конструктора.
После создания таблиц, форм и отчетов приступили к связыванию этих компонентов приложения с помощью кнопочных форм. Кнопочные формы – графические кнопочные формы – обычно состоят из набора командных кнопок с текстовыми описаниями или пиктограммами.
Описание основных форм БД:
- Главная форма – форма, предназначенная для выбора начального действия.
Рис. 3.5. – Главная форма
- Форма Справочники
Рис. 3.6. - Форма Справочники
- Форма Единицы измерения товара – форма ввода и редактирования ед.измерения товара.
Рис. 3.7. - Форма Единицы измерения товара
- Форма Товарные группы – форма ввода и редактирования товарных групп.
Рис. 3.8. - Форма Товарные группы
- Форма Товар - форма ввода и редактирования товаров.
Рис. 3.9. - Форма Товар
Справочник товаров позволит пользователю осуществить поиск по наименованию товара и по штрих-коду, удалить запись и добавить новый товар в БД, а также обновить данные и вывести отчет на печать.
- Форма Работники склада – форма ввода и редактирования работников склада.
Рис. 3.10. - Форма Работники склада
Справочник работников склада позволит пользователю осуществить поиск по фамилии работника.
- Форма Получатели – форма ввода и редактирования получателей, аналогична форме ввода и редактирования работников склада.
Рис. 3.11. - Форма Получатели
- Форма Поставщики – форма ввода и редактирования поставщиков, аналогична форме ввода и редактирования получателей.
Рис. 3.12. - Форма Поставщики
- Форма Приход товара – форма, предназначенная для редактирования и просмотра полученных товаров.
Рис. 3.13. - Форма Приход товара
В форме присутствует перекрестный запрос, а также кнопки для перехода к формам Товар и Поставщик. Также можно вывести Общий и Частный отчеты на печать.
- Форма Расход товара – форма, предназначенная для редактирования и просмотра отправленных товаров.
Рис. 3.14. - Форма Расход товара
В форме присутствуют кнопки для перехода к формам Товар и Поставщик. Также можно вывести Общий и Частный отчеты на печать.
- ФормаО программе – форма, предназначенная для вывода и информации о программе.
Рис. 3.15. - Форма О программе
3.3. Отчеты
Конечным продуктом большинства приложений баз данных является отчет. В Access отчет представляет собой специальный тип непрерывных форм, предназначенных для печати. Для создания отчета, который можно распечатать и распределить между потребителями, Access комбинирует данные в таблицах, запросах и даже формах. Распечатанная версия формы может служить отчетом.
Создаваемые Access отчеты делятся на шесть основных типов:
- Отчеты в одну колонку представляют собой один длинный столбец текста, содержащий значения всех полей каждой записи таблицы или запроса. Надпись указывает имя, а справа от нее указывается значение поля. Новое средство Access Автоотчет позволяет создать отчет в одну колонку щелчком по кнопке панели инструментов Автоотчет. Отчеты в одну колонку используются редко, поскольку такой формат представления данных приводит к лишней трате бумаги.
- В ленточных отчетах для каждого поля таблицы или запроса выделяется столбец, а значения всех полей каждой записи выводятся по строчкам, каждое в своем столбце. Если в записи больше полей, чем может поместиться на странице, то дополнительные страницы будут печататься до тех пор, пока не будут выведены все данные; затем начинается печать следующей группы записей.
- Многоколоночные отчеты создаются из отчетов в одну колонку при использовании колонок "газетного" типа или колонок "змейкой", как это делается в настольных издательских системах и текстовых процессорах. Информация, которая не помещается в первом столбце, переносится в начало второго столбца, и так далее. Формат многоколоночных таблиц позволяет сэкономить часть бумаги, но применим не во всех случаях, поскольку выравнивание столбцов едва ли соответствует ожиданиям пользователя.
В своей курсовой я использовал ленточные отчеты и отчеты в одну колонку.
- Отчет Инвентаризация – предназначен для вывода информации о товарах на складе.
Рис. 3.16. - Отчет Инвентаризация
- Отчет Единицы измерения товара.
Рис. 3.17. - Отчет Единицы измерения товара
- Отчет Товарные группы.
Рис. 3.18. - Отчет Товарные группы
- Отчет Товар
Рис. 3.19. - Отчет Товар
- Отчет Работники склада
Рис. 3.20. - Отчет Работники склада
- Отчет Получатели
Рис. 3.21. - Отчет Получатели
- Отчет Поставщики
Рис. 3.22. - Отчет Поставщики
- Отчет Приход товара
Рис. 3.23. - Отчет Приход товара
- Отчет Расход товара
Рис. 3.24. - Отчет Расход товара
4. Автоматизация приложения
4.1. Автоматизация приложения с помощью макросов
Макрос в Access представляет собой структуру, состоящую из одной или нескольких макрокоманд, которые выполняются либо последовательно, либо в порядке, заданном определенными условиями. Набор макрокоманд в Access очень широк, с помощью макросов можно реализовать многое из того, что позволяют сделать процедуры на VBA. Каждая макрокоманда имеет определенное имя и, возможно, один или несколько аргументов, которые задаются пользователем.
Опишем макросы, которые были применены в разработке данной базы данных склада производственного предприятия.
- макрос «Открыть Форму»;
- макрос «Открыть Отчет»;
- макрос «Открыть Запрос»;
- макрос «Выполнить Команду».
Макрос «Открыть Форму» позволяет пользователю визуально работать с формой БД;
Макрос «Открыть Отчет» позволяет пользователю визуально работать с отчетом БД;
Макрос «Открыть Запрос» позволяет пользователю видеть результат запроса;
Макрос «Выполнить Команду» позволяет в данной базе данных произвести печать отчета по выбранным товарам и обновлять данные в подчиненной форме.
Визуально созданные макросы изображены на рисунке 4.1.
Рис. 4.1. – Макрос Открыть Форму
4.2. Автоматизация приложения с помощью VBA
С помощью VBA можно легко и быстро создавать пользовательские приложения, используя единую для всех офисных программ среду и язык. Научившись разрабатывать приложения для одной офисной программы, например Access, можно создавать приложения и для других офисных программ, например Excel. Кроме того, по своей структуре, интерфейсу и синтаксису VisualBasicforApplication образует ядро VisualBasic. Поэтому тот, кто изучит программирование на VBA очень быстро может освоить и VisualBasic.
В процессе разработки данного программного продукта было реализовано множество функций и процедур. Каждая из процедур или функций отвечает за определённые действия и выполняется в определённый момент времени. Посредством существующих процедур происходит обработка событий, запуск различных форм и отчётов, проверка на ошибки, которые могут возникнуть при работе с базой и многое другое. Некоторые процедуры и функции непосредственно взаимосвязаны между собой, т.е. при обработке какого-нибудь события одна процедура может ссылаться на другую. Таких взаимосвязей в данной базе довольно много, т.к. это облегчает написание обработок событий, и делает программный код VBA более читабельным. Примером может послужить, например процедура Form_Load(), которая ссылается на процедуры, которые находятся в разных модулях. Написание модулей, отвечающих за определённые действия, значительно облегчают читабельность и поиск ошибок при написании программы.
Код формы Товар1:
OptionCompareDatabase
SubForm_Current()
onerrorGoToForm_Current_Err
IfC
************************ЧАСТЬ ЛИСТИНГА НЕДОСТУПНА ДЛЯ ПУБЛИЧНОГО ПРОСМОТРА**********************
Код формы Получатели1:
Option Compare Database
Sub Form_Current()
On Error GoTo Form_Current_Err
If ChildFormIsOpen() Then FilterChildForm
Form_Current_Exit:
Exit Sub
Form_Current_Err:
MsgBox Error$
Resume Form_Current_Exit
************************ЧАСТЬ ЛИСТИНГА НЕДОСТУПНА ДЛЯ ПУБЛИЧНОГО ПРОСМОТРА**********************
End Function
Заключение
В рамках курсовой работы на тему «База данных склада производственного предприятия» была разработана база данных для склада предприятия в среде Microsoft Office Access 2007.
В результате выполненной разработки можно сделать следующие выводы:
При разработке базы данных был пройден полный цикл проектирования от постановки задачи до введения выходного результата на исполнение и эксплуатацию.
Разработанная база данных позволяет достигнуть следующих эффектов:
- уменьшение времени необходимого для учета поставок товара на склад предприятия;
- автоматизация контроля поставок;
- возможность длительного хранения информации о поставках на предприятие большого срока давности, для возможности более полного расчета эффективности деятельности предприятия;
Были в полной мере реализованы следующие этапы проектирования базы данных:
- разработка базовых функций базы данных склада производственного предприятия;
- разработка базовых запросов пользователя базы данных производственного предприятия;
- разработка отчетов (документов) базы данных производственного предприятия;
- разработка форм интерфейса базы данных производственного предприятия.
список используемой литературы доступен в полной версии работы
ПРИЛОЖЕНИЕ А
Схема данных БД
ПРИЛОЖЕНИЕ Б
Коды SQL
Запрос получатели:
SELECT Товар.Наименование, Получатели.[Наименование получателя], Получатели.[Код УНП], Получатели.Телефон, Получатели.[Контактное лицо], Получатели.Должность
FROM Товар INNER JOIN ((Получатели INNER JOIN [Расход товара] ON Получатели.[Код получателя] = [Расход товара].[Наименование получателя]) INNER JOIN [Расход товара_доп] ON [Расход товара].[Номер ТТН] = [Расход товара_доп].[Номер ТТН]) ON Товар.[Штрих-код] = [Расход товара_доп].[Наименование товара]
GROUP BY Товар.Наименование, Получатели.[Наименование получателя], Получатели.[Код УНП], Получатели.Телефон, Получатели.[Контактное лицо], Получатели.Должность;
Запрос поставщики:
SELECT Товар.Наименование, Поставщики.[Наименование поставщика], Поставщики.Телефон, Поставщики.[Контактное лицо], Поставщики.Должность
FROM Поставщики INNER JOIN (Товар INNER JOIN ([Приход товара] INNER JOIN [Приход товара_доп] ON [Приход товара].[Номер ТТН] = [Приход товара_доп].[Номер ТТН]) ON Товар.[Штрих-код] = [Приход товара_доп].[Наименование товара]) ON Поставщики.[Код поставщика] = [Приход товара].[Наименование поставщика];
Запрос работники склада:
SELECT [Работники склада].ФИО, [Работники склада].[Дата рождения], [Работники склада].Должность, [Работники склада].[Дата вступления в должность], [Работники склада].[Дата ухода с должности], [Работники склада].[Материальная ответственность], [Работники склада].[Мобильный телефон], [Работники склада].[Домашний телефон], [Работники склада].[Адрес проживания], [Работники склада].[Домашний телефон]
FROM [Работники склада]
WHERE ((([Работники склада].ФИО)=[Введите ФИО работника склада]));
Инвентаризация:
SELECT [Товарные группы].[Товарная группа], Товар.[Штрих-код], Товар.Наименование, Sum([Приход товара_доп]![Количество товара]-[Расход товара_доп]![Количество товара]) AS [Остаток на складе], Товар.[Единица измерения], Sum([Приход товара_доп]![Количество товара]*[Приход товара_доп]![Цена за единицу товара (без НДС)])-Sum([Расход товара_доп]![Количество товара]*[Расход товара_доп]![Цена за единицу товара (без НДС)]) AS Стоимость
FROM [Товарные группы] INNER JOIN ((Товар INNER JOIN [Приход товара_доп] ON Товар.[Штрих-код] = [Приход товара_доп].[Наименование товара]) INNER JOIN [Расход товара_доп] ON Товар.[Штрих-код] = [Расход товара_доп].[Наименование товара]) ON [Товарные группы].[Код товарной группы] = Товар.[Товарная группа]
GROUP BY [Товарные группы].[Товарная группа], Товар.[Штрих-код], Товар.Наименование, Товар.[Единица измерения];
Информация о получателе:
SELECT Получатели.[Наименование получателя], Получатели.[Код УНП], Получатели.[Юридический адрес], Получатели.Телефон, Получатели.[Контактное лицо], Получатели.Должность
FROM Получатели INNER JOIN [Получаемый товар] ON Получатели.[Наименование получателя] = [Получаемый товар].[Наименование получателя]
WHERE (((Получатели.[Наименование получателя])=[Ввеедите наименование получателя]));
Информация о поставщике:
SELECT Поставщики.[Наименование поставщика], Поставщики.[Код УНП], Поставщики.[Юридический адрес], Поставщики.Телефон, Поставщики.[Контактное лицо], Поставщики.Должность
FROM Поставщики INNER JOIN [Поставляемый товар] ON Поставщики.[Наименование поставщика] = [Поставляемый товар].[Наименование поставщика]
WHERE (((Поставщики.[Наименование поставщика])=[Введите наименование поставщика]));
Поиск товара:
SELECT Товар.[Штрих-код], Товар.Наименование, Товар.[Товарная группа], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения], Товар.[Срок годности]
FROM (Товар INNER JOIN [Запрос поставщики] ON Товар.Наименование = [Запрос поставщики].Наименование) INNER JOIN [Запрос получатели] ON Товар.Наименование = [Запрос получатели].Наименование
GROUP BY Товар.[Штрих-код], Товар.Наименование, Товар.[Товарная группа], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения], Товар.[Срок годности]
HAVING (((Товар.[Штрих-код])=[Введите штрих-код товара]));
Поиск товара по наименованию:
SELECT Товар.[Штрих-код], Товар.Наименование, Товар.[Товарная группа], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения], Товар.[Срок годности]
FROM ([Запрос получатели] INNER JOIN Товар ON [Запрос получатели].Наименование = Товар.Наименование) INNER JOIN [Запрос поставщики] ON Товар.Наименование = [Запрос поставщики].Наименование
GROUP BY Товар.[Штрих-код], Товар.Наименование, Товар.[Товарная группа], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения], Товар.[Срок годности]
HAVING (((Товар.Наименование)=[Введите наименование товара]));
Получаемый товар:
SELECT Получатели.[Наименование получателя], [Расход товара_доп].[Наименование товара], Товар.[Штрих-код], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения]
FROM Товар INNER JOIN (Получатели INNER JOIN ([Расход товара] INNER JOIN [Расход товара_доп] ON [Расход товара].[Номер ТТН] = [Расход товара_доп].[Номер ТТН]) ON Получатели.[Код получателя] = [Расход товара].[Наименование получателя]) ON Товар.[Штрих-код] = [Расход товара_доп].[Наименование товара]
GROUP BY Получатели.[Наименование получателя], [Расход товара_доп].[Наименование товара], Товар.[Штрих-код], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения];
Поставляемый товар:
SELECT Поставщики.[Наименование поставщика], Товар.Наименование, Товар.[Штрих-код], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения]
FROM Поставщики INNER JOIN (Товар INNER JOIN ([Приход товара] INNER JOIN [Приход товара_доп] ON [Приход товара].[Номер ТТН] = [Приход товара_доп].[Номер ТТН]) ON Товар.[Штрих-код] = [Приход товара_доп].[Наименование товара]) ON Поставщики.[Код поставщика] = [Приход товара].[Наименование поставщика]
GROUP BY Поставщики.[Наименование поставщика], Товар.Наименование, Товар.[Штрих-код], Товар.[Единица измерения], Товар.[Наименование производителя], Товар.[Страна происхождения];
Приход по запросу:
SELECT [Приход товара].[Номер ТТН], [Приход товара].[Наименование поставщика], [Приход товара].[Номер доверенности], [Приход товара].[Дата выписки доверенности], [Приход товара].[ФИО сдавшего товар], [Приход товара].[ФИО принявшего товар], [Приход товара].[Дата прихода товара на склад]
FROM [Приход товара]
WHERE ((([Приход товара].[Номер ТТН])=[Введите номер ТТН]));
Расход по запросу:
SELECT [Расход товара].[Номер ТТН], [Расход товара].[Наименование получателя], [Расход товара].[Номер доверенности], [Расход товара].[Дата выписки доверенности], [Расход товара].[ФИО принявшего товар], [Расход товара].[ФИО сдавшего товар], [Расход товара].[Дата расхода товара со склад]
FROM [Расход товара]
WHERE ((([Расход товара].[Номер ТТН])=[Введите номер ТТН]));
Запрос на удаление товара:
DELETE Товар.Наименование
FROM Товар
WHERE (((Товар.Наименование)=[Введите удаляемый товар]));
ПРИЛОЖЕНИЕ В
CD-диск с курсовым проектом и презентацией.
Презентация
Содержание архива:
Скачать: