Учет товаров в хлебном магазине

 

Международная Академия Бизнеса и Управления











ЗАПИСКА

к курсовой работе по дисциплине

«Базы данных»

Тема: Учет товаров в хлебном магазине



Выполнила

студентка 2 курса ИКТ 2 группы

Н.А. Шабалина

Руководитель

доцент кафедры «Прикладная информатика»

к.т.н. В.И. Першиков






Москва 2007г.

Введение


Наименование работы: «Учет товаров в хлебном магазине».

В любой организации, как большой, так и маленькой, возникает проблема обеспечивающей наиболее эффективную работу управления данными организации. Некоторые используют шкафы для хранения документов, ручной поиск и обработку информации. Но большинство современных организаций предпочитают компьютеризированные базы данных и программы, позволяющие эффективно хранить, быстро извлекать нужную информацию и управлять большими объёмами данных.

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

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

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

Объект автоматизации - организация заказа товаров для продажи через магазин с целью получения прибыли.

Предмет автоматизации - учет остатков товаров на складе для обеспечения своевременного заказа товаров, запас которых может закончиться в ближайшее время.

Цель разработки информационной системы - увеличение прибыли за счет своевременности заказов на поставку товаров в склад магазина и снижения трудоемкости учетных операций.

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

Объем хлебного рынка России оценивается в 2-3 млрд. долларов в год, на Москву приходится примерно 200 млн. долларов.

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

1. Анализ предметной области

база учетный магазин заказ

Основные понятия, используемые при разработке информационной системы:

Товар - продукт труда, предназначенный для продажи.

Заказ - документально оформленная и оплаченная заявка на доставку в склад магазина определенного товара.

Поставщик - организация, поставляющая товары какой-либо группы.

Прибыль от торговой деятельности - это чистый доход магазина.

Доход - деньги, получаемые от какого-либо рода деятельности (в рассматриваемой предметной области - от торговли хлебобулочными изделиями).

Прибыль определяется как разность между выручкой и всеми затратами на приобретение и продажу товаров.

Выручка - вырученные от продажи всех товаров деньги. Определяется как сумма произведений количества проданных товаров на их отпускную цену.

Отпускная цена - цена, по которой товар продается в магазине.

Затраты включают оплату поставщикам (производителям) стоимости и доставки всех заказанных товаров, заработную плату сотрудникам, налоговые отчисления, арендную плату.

Затраты на оплату стоимости и доставки определяются как сумма произведений количества проданных товаров на их закупочную цену.

Закупочная цена - цена, по которой товар закуплен у производителя (поставщика) включая стоимость доставки.

Для упрощения учебной задачи примем следующие допущения:

стоимость всех находившихся на складе товаров до внедрения информационной системы не изменяется и не влияет на прибыль (стоимость проданных товаров равна стоимости вновь заказанных товаров);

расходы на налоги, заработную плату, аренду постоянны во все время функционирования информационной системы и не учитываются при определении прибыли.


2. Назначение проектируемой информационной системы


2.1 Функции, решаемые информационной системой


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

ввод и хранение необходимой для работы информации;

обеспечение целостности данных;

обновление информации в базе данных (БД).


2.2 Задачи, решаемые информационной системой


- хранение информации об имеющихся на складе товарах;

хранение информации о проданных товарах;

выдачу информации о заканчивающихся товарах;

хранение информации о поставщиках определенных групп товаров;

хранение информации о поставленных на склад товарах;

расчет выручки от продажи и затрат на заказ товаров;

печать заказов на поставку товаров;

хранение данных о заказанных товарах;

расчет прибыли.


2.3 Требования к представлению информации


Должна представляться вся, и только та информация, которая требуется при учете в магазине в удобной для пользователя форме, и быть доступной для просмотра и модификации.


2.4 Требования к надёжности


Система должна обеспечивать:

целостность данных;

непротиворечивость данных;

возможность хранения архивов на внешних носителях.


.5 Требования к составу и параметрам технических средств


Компьютер стандартной конфигурации:

процессор не ниже Pentium;

объем оперативной памяти не менее 256 Мб;

объём жёсткого диска не менее 2 Гб;

видеомонитор SVGA;

принтер формата А4;

мышь.


2.6 Требования к информационной и программной совместимости


Операционная система Windows 9* и выше. СУБД Microsoft Access 2000 и выше.


3. Инфологическая модель предметной области


Инфологическая модель - это структурная модель реальной системы, отражающая ее основные составляющие и связи между ними.

Сотрудник, работающий с информационной системой, ежедневно вводит данные о произведенных продажах, готовит отчет о размере выручки, оформляет заказы на товары, запас которых на складе уменьшается.

В таблице с информацией о конкретном товаре «Товар» будем хранить: код товара, наименование товара, описание товара, цена. Ключевым полем будет «код товара».

Данные о поставщиках будем хранить в таблице «Поставщики» с полями: код поставщика, наименование организации. К примеру, если в магазине будет обнаружено, что привезенный товар уже просрочен, по коду поставщика можно будет определить, какая организация поставляла этот товар и потребовать замену. Поля в таблице «Поставки»: код товара, дата поставки, кол-во поставлено (количество поставленного товара), годен до, код поставщика. Количество проданного товара пишется в таблицу «Продажа» с полями: код товара, дата продажи, кол-во продано.

Ежедневно данные о количестве проданных товаров заносятся в таблицу «Продажа». Чтобы эти четыре таблицы представляли собой систему, между ними должны быть установлены связи в соответствии с рисунком 1.


Рисунок 1 - Схема данных

4. Физическая модель базы данных


Разбивка данных по таблицам произведена на основании логической модели применительно к системе управления базами данных Microsoft Access. Все необходимые для учета поставок и продаж данные включены в следующие таблицы:


Таблица 1 - «Товар»

НаименованиеРазмерОписаниеКод товараЧисловойУникальный номер товараНаименованиеТекстовыйНазваниеОписаниеТекстовыйВид мучного изделияЦенаДенежныйЦена товара

Таблица 2 - «Поставщики»

НаименованиеРазмерОписаниеКод поставщикаЧисловойУникальный номер поставщикаНаименование организацииТекстовыйНазвание фирмы или завода

Таблица 3 - «Поставки»

НаименованиеРазмерОписаниеКод товараЧисловойУникальный номер товараДата поставкиДата/времяДата поставки товараКол-во поставленоЧисловойКоличество поставленного товара данного наименованияГоден доДата/времяСрок годности товараКод поставщикаЧисловойУникальный номер поставщика

Таблица 4 - «Продажа»

НаименованиеРазмерОписаниеКод товараЧисловойУникальный номер товараДата продажиДата/времяДата продажи товараКол-во проданоЧисловойКоличество проданного товара данного наименования

5. Описание работы с системой


Запустите программу, щелкнув мышкой по ярлыку Project1.exe.


Рисунок 2 - Начало работы


Чтобы прочитать информацию о магазине, щелкните по кнопке о магазине.


Рисунок 3 - О магазине

Для продолжения работы с программой с помощью кнопки назад вернитесь на форму «Начало работы» и щелкните по кнопке продолжить работу. Вы увидите форму «Данные о товарах», где можно найти информацию о конкретном товаре по его наименованию (кнопка найти), отфильтровать данные в таблице (кнопка фильтровать), показать все записи в таблице, упорядочить по наименованию данные таблицы, упорядочить по цене данные таблицы.


Рисунок 4 - Данные о товарах


Чтобы увидеть данные о поставках, нажмите на кнопку сведения о поставках, продажах и поставщиках. Откроется форма «Данные о поставках». При нажатии на кнопку всего поставок программа выдаст количество произведенных поставок, при нажатии на кнопку всего продаж программа выдаст количество произведенных продаж, при нажатии на кнопку товара на складе - количество товара поступившего на склад, но еще не проданного покупателям. Подсчеты производятся по товару в целом.

Рисунок 5 - Данные о поставках


Нажмите на кнопку ввести сведения о поставщиках на форме «Данные о поставках», и программа откроет форму «Ввод сведений о поставщиках». Чтобы добавить сведения о новом поставщике, следует ввести их в указанные ячейки и нажать кнопку добавить. Чтобы удалить сведения о поставщике - ввести его наименование в указанную ячейку и нажать кнопку удалить. При нажатии на кнопку показать поставщиков, появится обновленная таблица «Поставщики».


Рисунок 6 - Ввод данных о поставщиках

На форме «Данные о поставках» нажмите кнопку ввести сведения о продажах. Откроется форма «Ввод данных о продажах».


Рисунок 7 - Ввод данных о продажах


Введите данные о новой продаже в указанные на форме ячейки и нажмите кнопку добавить.

На форме «Данные о поставках» нажмите кнопку ввести сведения о поставках. Откроется форма «Ввод данных о поставках».


Рисунок 8 - Ввод данных о поставках


Введите данные о новой поставке в указанные на форме ячейки и нажмите кнопку добавить.

При нажатии на кнопку назад на любой форме, программа вернет вас на ту форму, с которой вы покали на данную.

Закрыть программу можно, нажав на кнопку закрыть на форме «Начало работы».


Заключение


Курсовая работа была написана на примере учета товаров в хлебном магазине. Большое количество информации, высокие требования к точности, многочисленные вычисления, потребность в постоянном обновлении данных делают необходимым применение баз данных для учета товаров в магазинах.

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


Список использованных источников


Delphi 7 - Под общ. ред. А.Д. Хомоненко - СПб БХВ-Петербург, 2004

Delphi 2005 - Секреты программирования - Фленов М.Е. - М, С-П. Питер, 2005

Практикум «Информационные системы» - Иванов В.К., Унижаев Н.В - Москва, 2006


Приложение


Листинг программы


program Project1;

uses,in 'Unit1.pas' {Form1},in 'Unit2.pas' {Form2},in 'Unit3.pas' {Form3},in 'Unit4.pas' {Form4},in 'Unit5.pas' {Form5},in 'Unit6.pas' {Form6},in 'Unit7.pas' {Form7};

{$R *.res}.Initialize;.CreateForm(TForm1, Form1);.CreateForm(TForm2, Form2);.CreateForm(TForm3, Form3);.CreateForm(TForm4, Form4);.CreateForm(TForm5, Form5);.CreateForm(TForm6, Form6);.CreateForm(TForm7, Form7);.Run;.Unit1;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, jpeg, ExtCtrls;= class(TForm): TButton;: TButton;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TImage;: TButton;Button1Click(Sender: TObject);Button2Click(Sender: TObject);Button3Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm1;Unit3, Unit7;

{$R *.dfm}TForm1.Button1Click(Sender: TObject);.Show; Form1.Hide;;TForm1.Button2Click(Sender: TObject);.Close;;TForm1.Button3Click(Sender: TObject);.Show; Form1.Hide;;.Unit2;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, ComCtrls, Grids, DBGrids, DB, ADODB;= class(TForm): TDBGrid;: TGroupBox;: TButton;: TButton;: TButton;: TButton;: TButton;: TButton;: TADOQuery;: TDataSource;: TButton;Button6Click(Sender: TObject);Button3Click(Sender: TObject);Button5Click(Sender: TObject);Button4Click(Sender: TObject);Button1Click(Sender: TObject);Button2Click(Sender: TObject);Button7Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm2;Unit3, Unit6, Unit4, Unit5;

{$R *.dfm}TForm2.Button6Click(Sender: TObject);.Show; Form2.Hide;;TForm2.Button3Click(Sender: TObject);.Show;Form2.Hide;;TForm2.Button5Click(Sender: TObject);.Show; Form2.Hide;;TForm2.Button4Click(Sender: TObject);.Show; Form2.Hide;;TForm2.Button1Click(Sender: TObject);.close;.sql.Clear;.sql.add('select count(Поставки.дата_поставки) AS [всего_поставок]') ;.sql.add('from Поставки');.Open ;;TForm2.Button2Click(Sender: TObject);.close;.sql.Clear;.sql.add('select count(Продажа.дата_продажи) AS [всего_продаж],sum(Продажа.кол_во_продано*Товар.цена) AS [на_сумму]') ;.sql.add('from Продажа, Товар');.sql.add('where Продажа.код_товара=Товар.код_товара');.Open ;;

TForm2.Button7Click(Sender: TObject);.close;.sql.Clear;

ADOQuery1.sql.add('SELECT Товар.Наименование, ( sum(Поставки.кол_во_поставлено) - sum(Продажа.кол_во_продано) ) AS [Всего_товаров_на_складе]') ;.sql.add('FROM Товар, Поставки, Продажа');.sql.add('WHERE (Товар.Код_товара=Поставки.Код_товара)') ;.sql.add('and (Товар.Код_товара=Продажа.Код_товара)') ;.sql.add('GROUP BY Товар.Наименование;');

ADOQuery1.Open ;;.Unit3;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls, DB, ADODB;= class(TForm): TDBGrid;: TGroupBox;: TEdit;: TButton;: TButton;: TButton;: TButton;: TGroupBox;: TEdit;: TButton;: TButton;: TButton;: TADOTable;: TDataSource;: TDBNavigator;Button7Click(Sender: TObject);Button6Click(Sender: TObject);Button5Click(Sender: TObject);Button1Click(Sender: TObject);Button3Click(Sender: TObject);Button4Click(Sender: TObject);Button2Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm3;Unit1, Unit2;

{$R *.dfm}

TForm3.Button7Click(Sender: TObject);.Show;Form3.Hide;;TForm3.Button6Click(Sender: TObject);.Show;Form3.Hide;;TForm3.Button5Click(Sender: TObject);.Locate('наименование',Edit2.Text,[]);;TForm3.Button1Click(Sender: TObject);.Filter:=Edit1.Text;.Filtered:=True;;TForm3.Button3Click(Sender: TObject);.IndexFieldNames:='наименование';.Filtered:=True;;TForm3.Button4Click(Sender: TObject);.IndexFieldNames:='цена';.Filtered:=True;;TForm3.Button2Click(Sender: TObject);.Filtered:=False;;.Unit4;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, DB, ADODB;= class(TForm): TEdit;: TEdit;: TEdit;: TLabel;: TEdit;: TEdit;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TButton;: TButton;: TADOTable;Button2Click(Sender: TObject);Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm4;Unit2;

{$R *.dfm}TForm4.Button2Click(Sender: TObject);.Show; Form4.Hide;;TForm4.Button1Click(Sender: TObject);.ADOTable1.InsertRecord([edit1.text,edit2.text,edit3.text,edit4.text,edit5.text]);.text:='';.text:='';.text:='';.text:='';.text:='';.SetFocus;;

.Unit5;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, DB, ADODB;= class(TForm): TEdit;: TLabel;: TEdit;: TEdit;: TLabel;: TLabel;: TLabel;: TButton;: TButton;: TADOTable;Button2Click(Sender: TObject);Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm5;Unit2;

{$R *.dfm}TForm5.Button2Click(Sender: TObject);.Show; Form5.Hide;;TForm5.Button1Click(Sender: TObject);.ADOTable1.InsertRecord([edit1.text,edit2.text,edit3.text]);.text:='';.text:='';.text:='';.SetFocus;;.Unit6;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Grids, DBGrids, DB, ADODB;= class(TForm): TDBGrid;: TGroupBox;: TEdit;: TLabel;: TButton;: TGroupBox;: TLabel;: TEdit;: TLabel;: TEdit;: TButton;: TButton;: TADOQuery;: TDataSource;: TButton;Button3Click(Sender: TObject);Button4Click(Sender: TObject);Button1Click(Sender: TObject);Button2Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm6;

Unit2, Unit5;

{$R *.dfm}TForm6.Button3Click(Sender: TObject);.Show; Form6.Hide;;TForm6.Button4Click(Sender: TObject);.close;.sql.Clear;.sql.add('select*') ;.sql.add('from Поставщики');.Open ;;TForm6.Button1Click(Sender: TObject);.Close;.sql.Clear;.sql.Add('delete from Поставщики');.sql.Add('where наименование_организации='''+Edit1.Text+'''');.Open;;TForm6.Button2Click(Sender: TObject);.Close;.SQL.Clear;

ADOQuery1.SQL.add('Insert into Поставщики (Код_поставщика, наименование_организации )');

ADOQuery1.SQL.Add('Values ('''+edit2.Text+''','''+Edit3.Text+''')');.Open;;.Unit7;

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, jpeg, ExtCtrls, StdCtrls;= class(TForm): TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TImage;: TButton;Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm7;Unit1;

{$R *.dfm}TForm7.Button1Click(Sender: TObject);.Show; Form7.Hide;

end;

end.


Международная Академия Бизнеса и Управления ЗАПИСКА к курсовой работе по дисциплине «Базы данных»

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ