Разработка базы данных по продаже в магазине одежды

Автор работы: Пользователь скрыл имя, 30 Октября 2011 в 12:23, курсовая работа

Краткое описание

Целью данной работы является разработка приложения для работы с базой данных по учету товара в магазине, поступающих в магазин, необходимо создать наиболее удобный интерфейс для пользователя при работе с разрабатываемой базой данных. Для выполнения цели курсовой работы необходимо обозначить следующие задачи. Они включают в себя:
* ознакомление с программами, предназначенными для создания баз данных и форматом баз данных dBase;
* работу с особым набором компонентов предназначенных для создания и редактирования базы данных;
* ознакомление с подобными базами данных используемых в магазинах одежды;
* ознакомление с принципами действия в магазине;
* разработку программного кода для выполнения определенных действий с базой данных таких как: добавление, удаление, поиск, сортировка, фильтрация данных.

Содержание работы

Введение…………………………………………………………………………..3
Глава 1. Теоретическое исследование предметной области…………………...6
1.1. Анализ аналогичных информационных систем ……………………6
1.2. Характеристика организационной структуры предметной области…………………………………………………………………………..14
1.3. Назначение и цели создания системы………………………………15
Глава 2. Описание информационной системы……………………………….16
2.1. Схема функциональной структуры системы с кратким описанием……………………………………………………………………….16
2.2. Описание информационных функций и комплекса решаемых задач……………………………………………………………………………..18
2.3. Разработка решений по специальному математическому обеспечению ИС………………………………………………………………..18
Заключение………………………………………………………………..31
Библиографический список………………………………………………33
ПРИЛОЖЕНИЯ
Приложение 1. «Руководство оператора»…………………………………34
Приложение 2. «Листинг исходного кода ИС»……………………………42

Содержимое работы - 1 файл

Содержание.docx

— 996.37 Кб (Скачать файл)

              Пользователь может просмотреть  данные об ассортименте: его цену, количество, размер, гарантию, узнать скидку; о поставщиках: название, адрес, город, телефон, e-mail, контактное лицо. Добавить, изменить или удалить данные о товаре или поставщиках, осуществить поиск по идентификационному номеру фирмы, выполнить фильтрацию списков товаров по году выпуска, цене и наименованию и получить отчет по данным. 

    1. Разработка  решений по специальному математическому  обеспечению ИС

           Необходимо спроектировать структуру  БД. Для этого запустим Утилиту  DBD (Пуск\Программы\Borland Delhpi\Database Desktop), в появившемся окне выбираем команду File\new\table. Откроется окно Create Table, в данном окне определяем тип таблицы. Выберем тип Paradox 7, его можно считать лучшим для файл-серверных таблиц.

     В колонку Field Name введем имя поля, Type – тип, Size –размер записи в байтах, в колонку Key  помещаем *, если по этому полю необходимо поставить первичный ключ. Определим тип данных каждого поля. Типы представлены в табл.1. 

     Табл.1

     Таблица типов данных используемых в программе

Type Size Тип Описание 
A 1-255 Alpha Текстовое поле указанной длины
D   Date Дата в диапазоне  от 1.01.0000 до 31.12.9999
N   Number Числа с плавающей  запятой в диапазоне 
S   Short Целые числа  в диапазоне -32 768 до +32 767
I   Long Integer Целые числа  в диапазоне -2 147483 648 до + 2 147 483 647
$   Money Денежное поле. Содержит вещественные числа с фиксированной  запятой,6 знаками до запятой и 2 дробной  части.
+   Autoincrement Автоинкрементное  поле
 

     

 

Рис. 2.3.1. Таблица Nakls 

Выберем ключевым полем поле NaklID. Для того чтобы поле NFirm выбиралось из таблицы Firms, необходимо поставить вторичный индекс: Table properties-Secondary Indexes (рис.2.3.2).

Рис.2.3.2 Создание вторичных индексов.

Рис. 2.3.3. Таблица Firms

Аналогичным образом создаем таблицу Firms,в которой будут содержаться сведение о поставщиках (рис.2.3.3.). Вторичный индекс будет содержаться в FName.

Рис. 2.3.4. Таблица Tovar

Таблица Tovar предназначена для хранения данных о товаре (рис.2.3.4). в ней вторичным индексом будет TName.

     Для таблицы TypeNakl необходимо сделать вторичный индекс для поля TName.(рис.2.3.5) В ней будут прописаны типы накладных.

     

 
 Рис. 2.3.5 Таблица TypeNakl

Рис. 2.3.6 Таблица MoveTovar

     Для таблицы MoveTovar необходимо сделать пару вторичных индексов для полей: MNakl, MTovar. Эта таблица необходима для записи данных о товаре в накладных.

          Сохраним таблицы первую –  Nakls ,вторую – Firms, третью – Tovar, четвертую – TypeNakl, а пятую – Move . Обращение к БД осуществляется по псевдониму базы данных. Для данной БД используем псевдоним Kursovaia (рис.2.3.7). Псевдоним должен быть зарегистрирован в файле конкретного компьютера при помощи BDE Administrator  (Пуск\Программы\Borland Delphi7\BDE Administrator). После создания псевдонима перейдем к разработке самой программы.

2.3.7. Псевдоним

Принципы  организации информационного обеспечения  ИС

           Принцип организации информационного  обеспечения ИС заключается в  передачи управления из одной  процедуры в другую. В программе  используются компоненты вкладок:

  • Standard: Edit, Label, Button, Panel, RadioGroup, ComboBox, PopupMenu;
  • Additional: Splitter, Image, BitBtn;
  • BDE: Table,Query, Database, UpdateSQL;
  • Data Access: DataSourсe;
  • Data Controls: DBCrid, DBNavigator;
  • Samples: SpinEdit;
  • Win32: DateTimePicker;
  • QReport: QuickRep, QRBand, QRDBText, QRLabel, QRSysData, QRSubDetail;

      Начнем новый проект и изменим свойство пустой формы заданные по умолчанию Caption –Магазин одежды “Fashion Street”. Сохраним изменения. Для реализации работы базы данных на форму поместим следующие компоненты Image и 3 кнопки BitBtn. В свойствах компонента TImage прописываем: в Align:Alclient - для того чтобы картинка была на всю форму Stretch: True – чтобы другие объекты располагались поверх картинки. В свойствах кнопок BitBtn прописываем: в Font выбираем удовлетворяющий нашим требованиям шрифт (приложений 1, рис 1). С помощью кнопок расположенных на форме мы сможет перейти к ассортименту магазина, поставщикам и накладным. Чтобы данные смогла отобразить сетка, необходимо создать модуль данных: File-New-Others-Data Module.  Он позволяет проектировать БД  с таблицами.

     Рис.2.3.8.Модуль данных

     С целью связи таблиц с БД воспользуемся  компонентом TDatabase на вкладке BDE, пропишем в свойствах псевдоним и в строке свойства DatabaseName  напишем произвольное имя Shop. Далее помещаем в окно дерева объектов TTable и «опускаем» его на псевдоним Shop. Определяем имя данной таблицы: TableName-Nakls.

     Чтобы таблицы были связаны между собой, необходимо перейти на вкладку Diagram и «перетащить» объекты таблиц Nakls и MoveTovar. С помощью Master/Detail connector устанавливаем связи проводя от главной таблице к второстепенной.

Рис.2.3.9. Связывание таблиц Nakls и MoveTovar 

     Создаем еще одну форму с таблицей Ассортимент (приложение 1, рис. 2). Для этого необходимо на новую форму поместить 3 панели TPanel. Верхняя будет содержать сведение о товаре TDBGrid, в свойстве DataSource выбираем DataSourse4, нижняя  функции добавить, изменить, удалить TButton, для реализации одноименных действий необходимо произвести процедуры под каждую из кнопок. Для кнопки «Ассортимент» - приложение 2, TshMain.BitBtn1Click,появляется форма Ассортимент (приложений 1,рис.2), для кнопки «Добавить» - TshAssort.Button2Click (приложение 1,рис.3),появится форма shDobav, для кнопки «Замена» - TshAssort.Button3Click (приложение 1,рис.4), кнопка «Удалить» - TshAssort.Button4Click (приложение 1,рис.5).

     На  боковой панели нашей формы выполняем  Сортировку, т.е. выбор одежды, по какому-либо признаку. Воспользуемся для этого компонентами RadioGroup, Combobox и SpinEdit. В свойство Items RadioGroup добавляем признаки, по которому будем делать сортировку. В Combobox прописываем наименования одежды, которая существует в магазине. В SpinEdit1 прописываем минимальный и максимальный диапазон лет, в SpinEdit2 минимальную цену товара, в SpinEdit3 максимальную цену. Делаем кнопку и пишем под нее процедуру. Для сортировки - TshAssort.RadioGroup1Click.    Создаем еще одну форму Поставщики (приложение 1,рис.7). Помещаем на нее 2 панели TPanel . Первую панель располагаем вверху и помещаем в ней сетку DBGrid и связываем с соответствующим набором данных при помощи SQL запросов. Помещаем два компонента Query, DataSource, UpdateSQl. Для кнопки Поставщики - TshMain.BitBtn2Click. Переименуем компоненты в соответствии с набором данных. Изменим свойства каждого компонента:

  • В DataSource изменяем  Name:DSShop;
  • В UpdateSQl изменяем Name: UpDateSQLShopP;
  • В Query1 меняем Active:True

                                   CachedUpDate:True

                                   DatabaseName:Kursovaia

                                   Name:QueryShop

                                   UpdateObject:UpdateSQLShopP

  • В Query2 меняем Active:True

                                    DatabaseName:Kursovaia

                                    DataSource:DSShop

                                    Name:sh

В QueryShop и sh в свойстве SQL прописываем: Select * from Firms.

     Делаем  на форме три кнопки Добавить, Заменить, Удалить. Для реализации одноименных действий необходимо произвести процедуры под каждую из кнопок.   Для кнопки добавить - TshPostav.Button1Click (приложение 1,рис.8), для кнопки Замена - TshPostav.Button2Click (приложение 1,рис.9).      

Создаем таблицу Накладные (приложение 1,рис.10). Помещаем на форму три панели Panel. На верхней и средней панели помещаем DBGrid. Верхняя будет содержать набор данных из таблицы Nakls, средняя – MoveTovar. Нижняя предназначена для размещения кнопок DBNavigator, Button,DateTimerPicker. Для кнопки Накладные - TshMain.BitBtn3Click.

Так же помещаем на форму компонент MainMenu, кликаем дважды и прописываем в свойстве Caption: Печать (рис.2.3.10).

Рис.2.3.10. Компонент MainMenu

Создание накладных

     Создадим  в проекте новую форму, располагаем  на ней компонент TQuikRep, изменяем имя формы на shPe4iat, соединяем ее с программой: Project-Options. Связываем форму с модулем:File-Use Unit, после помещаем в свойство DataSet компонента QuickRep значение DM.Move. Помещаем на отчет полосу TQRBand  и вносим в нее следующие компоненты:

    1. QRLabel со свойствами: Caption:Товарная накладная №, Left:176,Top:8,Font.Size:16, Font.Style.fsBold:True.
    2. QRLabel со свойствами: Caption:от, Left:460,Top:8,Font.Size:16, Font.Style.fsBold:True.
    3. QRBText  со свойствами:DataSet:DM.Nakls, DataField:NaklID, Left:428,Top:8,Font.Size16, Font.Style.fsBold:True.
    4. QRBText  со свойствами:DataSet:DM.Nakls, DataField:NDate, Left:508,Top:8,Font.Size16, Font.Style.fsBold:True.
    5. QRLabel со свойствами: Caption: Отправитель, Left:16, Top:40, Font.Size:12, Font.Style.fsBold:True.
    6. QRLabel со свойствами: Caption:Получатель, Left:16, Top:64, Font.Size:12, Font.Style.fsBold:True.
    7. QRLabel со свойствами: Caption:Тип накладной, Left:328, Top:48, Font.Size:10, Font.Style.fsBold:True.
    8. QRBText со свойствами: DataSet:DM.Nakls, DataField:Type, Left:120, Top:64, Font.Size12, Font.Style.fsUnderline:True.
    9. QRBText со свойствами: DataSet:DM.Nakls, DataField:Firm, Left:448, Top:48, Font.Size10, Font.Style.fsUnderline:True.

     Теперь  помещаем в отчет заголовки его  колонок. Используем компонент TQRBand со свойством BandType=rbColumnHeader, также установим свойства: Font.Size=10, Font.Style.fmBold=True, Frame.DrawTop=True, FrameDrawBottom=True, FrameDrawLeft=True, FrameDrawRigh=True. Далее разместим на новой полосе четыре компонента TQRLable и в свойстве Caption каждого напишем название поля. Затем помещаем в отчет компонент TQRSubDetail  со значениями:  DataSet= DM.Move,FrameDrawBottom=True,FrameDrawLeft=True,TrameDrawRigh=True На полосе TQRSubDetail разместим 4 компонента TQRDBText для отображения содержимого четырех колонок со свойствами:AutoSize=False, DataSet=DM.Move, DataField=Name, FrameDrawRigh=True. И так со всеми колонками. Для размещения в отчете итоговой информации используется полоса RQRBand типа rbSummary. Помещаем на эту полосу TQRLabel (Сaption=Итого), TQRSysData (Data=qrsDetailCount), ниже находятся TQRLabel (Caption=наименований на сумму), TQRText (DaraField=NSum). Последнее поле является вычисляемым. Далее размещаем еще два QRLabel (Caption=Получатель, Caption=Поставщик) (рис.2.3.11). 

Рис.2.3.11. Отчет Накладные

     Входной информацией в базе будут являться:

    • Тип одежды;
    • Наименование;
    • Производитель;
    • Размер;
    • Артикул;
    • Количество;
    • Остаток;
    • Оптовая цена;
    • Розничная цена;
    • Скидка,
    • Итог,
    • Гарантия;
    • Название поставщика;
    • Его адрес;
    • Город;
    • Телефон e-mail;
    • Контактное лицо.

      Выходная  информация:

    • Название;
    • Фирма;
    • Год выпуска одежды;
    • Количество;
    • Цена;
    • Сумма;
    • Количество наименований;
    • Стоимость.
 

     Заключение.

     В данной курсовой работе представлен  процесс разработки информационной системы  Магазин одежды.

     Создавая  модель информационной системы Магазин  одежды, я произвела:

  • изучила возможности Delphi;
  • провела исследование процесса создания базы данных;
  • сделала вывод о проделанной работе и проанализировала структуру исследуемого объекта;
  • определила объект и предмет исследования;
  • подробно ознакомилась с предметной областью системы;
  • учет товара;
  • учет работы с поставщиков;
  • учет продажи;
  • ввод и хранение данных о товаре;
  • ввод и хранение данных о поставщиках;
  • создание итогового отчета;

Информация о работе Разработка базы данных по продаже в магазине одежды