|
||||||||||||
|
||||||||||||
|
|||||||||
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - Учет хранения и движения продукции фирмыУчет хранения и движения продукции фирмыМинский Государственный профессионально-технический колледж электроники КУРСОВАЯ РАБОТА ТЕМА: Учет хранения и движения продукции фирмы Выполнила Фарзалиева Л. Проверил Шавейко А. А. Минск 2006 СОДЕРЖАНИЕ Введение 1. Анализ задачи 1.1 Описание предметной области 1.2 Модель данных 1.3 Среда разработки 1.4 Требования к программе 2. Проектирование задачи 2.1 Организация данных 2.2 Функции системы 2.3 Алгоритм работы 2.4 Выходные документы 3. Применение 3.1 Назначение программы 3.2 Инструкции пользователю Заключение Список используемой литературы Приложение 1 ПРиложение 2 Введение Для принятия обоснованных и эффективных решений в производственной деятельности, в управлении экономикой и в политике современный специалист должен уметь с помощью компьютеров и средств связи получать, накапливать, хранить и обрабатывать данные, представляя результат в виде наглядных документов. Поэтому, современные фирмы на сегодняшний день нуждаются в программном обеспечении, способном упростить работу с продукцией, хранящейся на складах и ее оборотом. Данная курсовая работа позволяет систематизировать данные по продукции фирмы, отследить движение товара, его хранение и наличие на складе. Так же дает возможность получить подробную информацию о товаре. 1. Анализ задачи 1.1 Описание предметной области В данном проекте стоит задача создать базу данных для учета хранения и движения товара на складе, а так же дополнительные данные и функции, позволяющие систематизировать работу фирмы. В качестве входной информации будут взяты договора дистебьютеров и данные об ассортименте товара. Выходной информацией будут прайс-листы, отчеты о товарах и дистебьютерах. 1.2 Модель данных Реляционная база данных - это совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Однако пользователи могут воспринимать такую базу данных как совокупность таблиц. В конце 60-х годов появились работы, в которых обсуждались возможности применения различных табличных даталогических моделей данных, т.е. возможности использования привычных и естественных способов представления данных. Наиболее значительной из них была статья сотрудника фирмы IBM д-ра Э.Кодда (Codd E.F., A Relational Model of Data for Large Shared Data Banks. CACM 13: 6, June 1970), где, вероятно, впервые был применен термин "реляционная модель данных". Будучи математиком по образованию Э.Кодд предложил использовать для обработки данных аппарат теории множеств (объединение, пересечение, разность, декартово произведение). Он показал, что любое представление данных сводится к совокупности двумерных таблиц особого вида, известного в математике как отношение - relation (англ.). Наименьшая единица данных реляционной модели - это отдельное атомарное (неразложимое) для данной модели значение данных. Так, в одной предметной области фамилия, имя и отчество могут рассматриваться как единое значение, а в другой - как три различных значения. Доменом называется множество атомарных значений одного и того же типа. Смысл доменов состоит в следующем. Если значения двух атрибутов берутся из одного и того же домена, то, вероятно, имеют смысл сравнения, использующие эти два атрибута (например, для организации транзитного рейса можно дать запрос "Выдать рейсы, в которых время вылета из Москвы в Сочи больше времени прибытия из Архангельска в Москву"). Если же значения двух атрибутов берутся из различных доменов, то их сравнение, вероятно, лишено смысла: стоит ли сравнивать номер рейса со стоимостью билета? Степень отношения - это число его атрибутов. Отношение степени один называют унарным, степени два - бинарным, степени три - тернарным, а степени n - n-арным. Каждое отношение обладает хотя бы одним возможным ключом, поскольку по меньшей мере комбинация всех его атрибутов удовлетворяет условию уникальности. Один из возможных ключей (выбранный произвольным образом) принимается за его первичный ключ. Остальные возможные ключи, если они есть, называются альтернативными ключами. Вышеупомянутые и некоторые другие математические понятия явились теоретической базой для создания реляционных СУБД, разработки соответствующих языковых средств и программных систем, обеспечивающих их высокую производительность, и создания основ теории проектирования баз данных. Однако для массового пользователя реляционных СУБД можно с успехом использовать неформальные эквиваленты этих понятий: Отношение - Таблица (иногда Файл), Кортеж - Строка (иногда Запись), Атрибут - Столбец, Поле. При этом принимается, что "запись" означает "экземпляр записи", а "поле" означает "имя и тип поля". 1.3 Среда разработки Курсовой проект был выполнен на языке программирования Borland Delphi 7.0. Таблицы разрабатывались в приложении Database Desktop. Для более понятного и удобного интерфейса использовались такие компоненты как DBGrid, DBNavigator. Запросы создавались с помощью компонента Query. А отчёты на основе запросов с помощью компонентов RvQueryConnection и RvProject в приложении Rave Designer. 1.4 Требования к программе Программа совместима с операционными системами Windows 95/98/ME/ /2000/XP. Для работы данной программы необходим ПК, имеющий следующие характеристики: Ш Операционная система Windows 95 и выше; Ш Процессор не ниже Pentium 100; Ш Емкость ОЗУ не ниже 32 Мб; Ш Диск 3,5” или CD-ROM 4-x; Ш 16 Мбайт свободного места на жестком диске; 2. Проектирование задачи 2.1 Организация данных В курсовом проекте используется база данных состоящая из четырёх таблиц: - “Product” - перечень ассортимента продукции фирмы - “Distributions” - информация о сотрудниках фирмы - “Sclad” - сведения о наличии товара на складе - “Tovar_dvijenie” - сведения об отгрузке товара Структуры таблиц приведены в таблицах 1.1, 1.2, 1.3, 1.4 Таблица 1.1 - «Product» PKod - код продукта PNaimenovanie - название продукта POb'em - объем продукта PCena - цена продукта в рублях Таблица 1.3 - «Sclad» SKod - код продукта SNaimenovanie - название продукта SDataPolych - дата получения продукта на склад SGoden_do - срок истечения годности продукта SKolichestvo - количество единиц прибывшего продукта SCena - цена продукта в рублях SSymma - общая сумма по данному продукту Таблица 1.2 - «Distributions» DID - личный номер сотрудника DFamiliya - фамилия DImya - имя DOtchestvo - отчество DDataRojd - дата рождения DStrana - страна DIndex - индекс DGorod = город DAdres - адрес DDomTel домашний телефон DRabTel - рабочий телефон DE-mail - электронная почта DDataDog - дата подписания договора с компанией Таблица 1.4 - «Tovar_dvijenie» Kod - номер п/п TID - личный номер сотрудника TDataOtgr - дата отгрузки продукта TKod - код продукта TNaimenovanie - название продукта TKolichestvo - количество TCena - цена в рублях 2.2 Функции системы В данном подразделе выбираются и кратко описываются функции данной базы данных, которые предполагается автоматизировать с использованием разрабатываемой информационной системы: 1) Учет информации об ассортименте продукции Данная функция создает перечень продукции, которую можно заказать. Весь ассортимент должен своевременно пополняться и обновляться. Таким образом есть возможность своевременно представлять весь ассортимент продукции покупателям и дистебьютерам и давать краткую информацию о продукте. 2) Учет сведений о дистебьютерах фирмы Данная функция позволяет вести кадровый учет сотрудников. Все анкеты с необходимой информацией и личными номерами дистебьютеров хранятся в таблице. 3) Учет принятых товаров Данная функция позволяет обновлять сведения о продукции, хранящейся на складе. 4) Учет хранения товаров и его движения Данная функция позволяет отслеживать движение товара, его отгрузку со склада и его хранение по сроку годности. Функция осуществляет своеобразный контроль за товаром и дает данные для обновления других функций. 2.3 Алгоритм работы 2.4 Выходные документы Выходными документами в данной программе являются отчёты, построенные на основе SQL запросов. Предусмотренные в программе отчёты приведены в приложении 2. 3 Применение 3.1 Назначение программыРазработанная мной база данных служит для ведения хозяйственной деятельности фирмы, являющейся посредником между косметической компанией и дистебьютерами. Она несет специфический характер и может использоваться только для данной сферы деятельности фирмы.3.2 Инструкция пользователюДля того чтобы начать работу с программой, необходимо запустить файл Baza.exe. После этого запуститься главная форма. Для того, чтобы начать работу с данными таблиц, необходимо нажать на кнопку «Таблицы» и на появившемся окне выбрать нужную таблицу. Далее таблицы можно редактировать, вносить изменения, качающиеся только входной и выходной информации. Для удобного изменения и обновления данных таблиц на нижней панели форм расположен навигатор (рис. 1).Рис. 1 - НавигаторДля того, чтобы им управлять, необходимо ознакомиться с его функциями (табл. 1).
Заключение В ходе выполнения работы были закреплены знания по созданию и проектированию баз данных в среде Borland Delphi 7, а также приобретены практические навыки в создании программных приложений на данном языке программирования. Результатом проделанной работы является база данных «Baza» выполняющая все необходимые задачи данного курсового проекта. Список используемой литературы В.В. Фараонов Delphi. Программирование на языке высокого уровня. - СПб: Питер, 2004. ERwin -- современное средство проектирования баз данных - http://www.interface.ru Горев А., Ахаян Р., Макашарипов С. Эффективная работа с СУБД. -СПб.: Питер, 1997. Шкрыль А.А. Разработка клиент-серверных приложений в Delphi. - СПб.: БХВ-Петербург, 2006. Приложение 1 unit Glavnaya; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Buttons, StdCtrls, jpeg, ExtCtrls; type TForm1 = class(TForm) Button1: TButton; BitBtn1: TBitBtn; Image1: TImage; Image2: TImage; Image3: TImage; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation uses Product, Vibor_tabl; {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Form4.show; end; end. unit Product; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, DBCtrls, Grids, DBGrids, ExtCtrls, DB, DBTables; type TForm2 = class(TForm) Panel1: TPanel; Panel2: TPanel; Panel3: TPanel; DBGrid1: TDBGrid; DBGrid2: TDBGrid; DBNavigator1: TDBNavigator; BitBtn1: TBitBtn; Label1: TLabel; Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form2: TForm2; implementation uses DM1, Zapros_tovar; {$R *.dfm} procedure TForm2.Button1Click(Sender: TObject); begin Form3.Query1.Close; Form3.Query1.Params[0].AsString:=InputBox('Zapros', 'Введите название товара','0'); Form3.Query1.Open; Form3.Show; end; procedure TForm2.Button2Click(Sender: TObject); begin RvProject1.Execute end; end. unit Vibor_tabl; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, jpeg, ExtCtrls, Buttons; type TForm4 = class(TForm) Button1: TButton; Button2: TButton; BitBtn1: TBitBtn; Image1: TImage; Image2: TImage; Image3: TImage; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form4: TForm4; implementation uses Product, Distributions; {$R *.dfm} procedure TForm4.Button1Click(Sender: TObject); begin Form2.show; end; procedure TForm4.Button2Click(Sender: TObject); begin Form5.show; end; end. unit Zapros_tovar; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, DBTables, Grids, DBGrids, ExtCtrls, StdCtrls, Buttons; type TForm3 = class(TForm) Panel1: TPanel; Panel2: TPanel; DBGrid1: TDBGrid; Query1: TQuery; DataSource1: TDataSource; BitBtn1: TBitBtn; private { Private declarations } public { Public declarations } end; var Form3: TForm3; implementation {$R *.dfm} end. unit Distributions; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, DBCtrls, Grids, DBGrids, ExtCtrls; type TForm5 = class(TForm) Panel1: TPanel; Panel2: TPanel; Panel3: TPanel; DBGrid1: TDBGrid; DBGrid2: TDBGrid; DBNavigator1: TDBNavigator; BitBtn1: TBitBtn; private { Private declarations } public { Public declarations } end; var Form5: TForm5; implementation {$R *.dfm} end. unit DM1; interface uses SysUtils, Classes, DB, DBTables, RpCon, RpConDS, RpConBDE, RpBase, RpSystem, RpDefine, RpRave; type TD1 = class(TDataModule) Database1: TDatabase; Product: TTable; Sclad: TTable; DataSource1: TDataSource; DataSource2: TDataSource; ProductPKod: TAutoIncField; ProductPNaimenovanie: TStringField; ProductPObem: TStringField; ProductPCena: TCurrencyField; ScladSKod: TIntegerField; ScladSNaimenovanie: TStringField; ScladSDataPolych: TDateField; ScladSGoden_do: TDateField; ScladSKolichestvo: TSmallintField; ScladSCena: TCurrencyField; ScladSSymma: TCurrencyField; RvProject1: TRvProject; RvSystem1: TRvSystem; RvTableConnection1: TRvTableConnection; private Private declarations } public { Public declarations } end; var D1: TD1; implementation {$R *.dfm} end. unit DM2; interface uses SysUtils, Classes, DB, DBTables; type TD2 = class(TDataModule) Database1: TDatabase; Distributions: TTable; Tovar_dvijenie: TTable; DataSource1: TDataSource; DataSource2: TDataSource; DistributionsDID: TAutoIncField; DistributionsDFamiliya: TStringField; DistributionsDImya: TStringField; DistributionsDOtchestvo: TStringField; DistributionsDDataRojd: TDateField; DistributionsDStrana: TStringField; DistributionsDIndex: TStringField; DistributionsDGorod: TStringField; DistributionsDAdres: TStringField; DistributionsDDomTel: TStringField; DistributionsDRabTel: TStringField; DistributionsDEmail: TStringField; DistributionsDDataDog: TDateField; Tovar_dvijenieKod: TIntegerField; Tovar_dvijenieTKod: TIntegerField; Tovar_dvijenieTID: TIntegerField; Tovar_dvijenieTDataOtgr: TDateField; Tovar_dvijenieTNaimeovanie: TStringField; Tovar_dvijenieTKolichestvo: TSmallintField; Tovar_dvijenieTCena: TCurrencyField; private { Private declarations } public { Public declarations } end; var D2: TD2; implementation {$R *.dfm} end. Приложение 2
|
РЕКЛАМА
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА | ||
© 2010 |