Создание информационной системы учета в комиссионном букинистическом магазине
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
ОПИСАНИЕ СРЕДСТВ РАЗРАБОТКИ
.1 Среда разработки Delphi
.2 СУБД Access
.3 Язык запросов SQL
АНАЛИЗ ИНФОРМАЦИОННОЙ СИСТЕМЫ
.1 Описание предметной области
.2 Состав и структура информационных
файлов / документов
.3 Постановка задачи
ПРОГРАММИРОВАНИЕ БАЗЫ ДАННЫХ
.1 Создание базы данных в Access
.2 Создание форм в Delphi
.3 Создание запросов, фильтров
.4 Описание работы программы
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
ВВЕДЕНИЕ
На первоначальном этапе развития любого малого
предприятия, когда его обороты малы, бизнесмен может обходиться без
специализированных программ, автоматизирующих многие процессы его бизнеса, в
частности, он может применять простую тетрадь для записей и производить расчёты
на калькуляторе. Но в результате постепенного развития своего дела, любой
руководитель сталкивается с тем, что в ручном режиме уследить за всей
информацией уже не он, не его помощники просто не в состоянии. То есть, по
самым актуальным и важным вопросам: какова прибыль, что и сколько не удалось реализовать
товара и другим, получить вразумительный ответ просто становиться невозможно. А
то, что к данному моменту времени учет товара на складе, практически не
ведётся, может рождать и различные подозрения в отношении своих работников.
Таким образом, нахождение ответов на многочисленные вопросы способно полностью
отвлечь от руководителя от основной его деятельности. Естественным шагом, в
такой ситуации является то, что 99% предпринимателей, обращаются за помощью к
специализированным программам автоматизации, используя уже персональный
компьютер.
Цель данного курсового проекта заключается в
создании информационной системы учета в комиссионном букинистическом магазине.
Исходя из поставленной цели, были сформулированы
следующие задачи:
изучить средства разработки;
изучить предметную область;
изучить состав и структуру информационных
файлов/ документов;
создать базу данных в Access;
создать формы в Delphi;
создать запросы и фильтры;
описать работу программы.
ОПИСАНИЕ СДЕДСТВ РАЗРАБОТКИ
.1 Среда разработки Delphi
- интегрированная среда разработки программного
обеспечения корпорации Borland. Delphi является средой RAD (от англ. rapid
application development - быстрая разработка приложений). По сути является
наследником языка Pascal с объектно-ориентированными расширениями. Изначально
язык был предназначен исключительно для разработки приложений Microsoft
Windows, затем был реализован также для платформ Linux (как Kylix), однако
после выпуска в 2002 году Kylix 3 его разработка была прекращена, и, вскоре
после этого, было объявлено о поддержке Microsoft .NET. Реализация языка Delphi
проектом Free Pascal позволяет использовать его для создания приложений для
таких платформ, как Mac OS, Windows.
Delphi - результат развития языка
Турбо Паскаль <#"871172.files/image001.gif">
Рисунок 2.1 - Отчет по товарам
При необходимости выдается справка по
конкретному товару, в которой имеются данные не только по самому товару, но и
по комитенту, которому принадлежит этот товар. (Рисунок 2.2)
Аналогично предоставляются данные о всех
комитентах в Excel или о
конкретном комитенте и его товарах в Word.
(Рисунок 2.3)
При любой процедуре выплат комитенту выдается
квитанция. В ней находятся данные товара, его комитента, дата принятия и сумма
выплаты клиенту единовременно. На каждый товар квитанция выдается отдельно.
(Рисунок 2.2)
Рисунок 2.2 - Квитанцая о выплатах
Рисунок 2.2 - Справка по товару
Рисунок 2.3 - Справка по комитенту
2.3 Постановка
задачи
В базе данных информационной системы учета в
комиссионном букинистическом магазине должны содержаться следующие таблицы:
users;
tovar;
komitents;
kassa.
Таблица users
содержит данные пользователей программы, а точнее их логин и пароль доступа. В
таблице должны быть следующие поля:
kodU;
user;
password.
Таблица tovar
содержит в себе данные о товаре - наименование, автора книги, год издания,
название издательства, жанр книги, описание книги, имя комитента, дату приема,
дату реализации, цену, заданную клиентом, цену, заданную магазином, сумму
выплаты клиенту единовременно, долг магазина(поле заполнется автоматически после
реализации товара), сумму выплаты клиенту после реализации, дату выплаты этой
суммы, местонахождение книги и ее статус - в наличии или продана. В таблице
должны быть следующие поля:
kodtov;
kodkl;
nametov;
avtor;
- gizd;
izd;
zhanr;
opis;
datapr;
datar;
ckl;
csh;
photo;
sklad;
vkled;
vklr;
datav;
st.
Таблица komitents
содержит данные о комитенте - имя, IIN,
телефон, e-mail.
В таблице должны быть следующие поля:
kodkl;
klient;
IIN;
tel;
email;
dolgmag.
Таблица kassa
содержит все денежные операции, производимые в магазине. Например, приход от
реализации и расход от выплат комитентам.
В таблице должны содержаться следующие поля:
- NPP;
kodkl;
data;
sumpr;
sumras;
- kodtov.
ПРОГРАММИРОВАНИЕ БАЗЫ ДАННЫХ
3.1 Создание
базы данных в Access
Для начала работы требуется открыть Access
и создать новую таблицу. Переименовать ее в Users.
В конструкторе создаются поля kodU
- счетчик. Поля User
и Password числовые.
Следующая таблица называется Tovar.
Kodtov - счетчик. Kodkl,
Gizd, Ckl,
Csh, Dolgmag
- числовые поля. DataPr,
DataR, DataV
- поля дата/время. Opis
- поле Memo. (Рисунок
3.1)
Рисунок 3.1 - Конструктор таблицы Tovar
В таблице komitents
поле kodkl - счетчик,
поле dolmag - числовое.
Остальные поля текстовые. В таблице Kassa
поле npp - счетчик,
поле data -
дата/время. Остальные поля числовые. (Рисунок 3.2)
Рисунок 3.2 - Кoнструктор
таблицы Kassa
3.2
Создание форм в Delphi
Первая форма называется Start.
На ней расположены всего 3 компонента - sSkinManager
и 2 обычных Button. Одна
кнопка предназначена для открытия формы магазина, вторая предназначена для
выхода из программы.
На форме магазина находятся кнопки «О
программе», «Календарь», «Настройки пользователя» и «Выход».
Также присутствует mainmenu.
Раздел «Рабочее место менеджера» содержит пункты «Список товаров», «Список
комитентов», «Новый товар», «Новый комитент», «Бухгалтерия», «Сменить
пользователя», «Временная блокировка», «Выход». Все кнопки, кроме кнопок
«Временная блокировка» и «Выход» открывают новые формы.
Рисунок 3.3 - Форма главного меню
На форме Tovar
также расположено mainmenu.
Здесь оно состоит из пунктов «Добавить товар», «Изменить товар», «Удалить товар
из базы», «Печать», «Продать товар» и «Выплатить долг клиенту».
Справа и слева расположены 2 панели. На правой
размещено поле Memo
и компонент Image. На левой
панели в компоненте Groupbox
под названием «Фильтр» находятся 12 компонентов sCheckbox,
7 компонентов sEdit, 3
компонента sComboBox
и 6 компонентов sDateEdit.
По середине, со свойством Align
- AlClient находится
компонент sDBGrid.
(Рисунок 3.4)
Рисунок 3.4 - Форма «Список товаров»
Форма Newtov
предназначена для вбивания в базу нового товара. На ней расположены 16
компонентов Label, 8
компонентов DBEdit, DateTimePicker,
Combobox и sCombobox,
2 компонента sDBDateEdit,
1 компонент Button, компонент DBMemo,
компонент Image, компонент OpenPictureDialog,
3 компонента BitBtn.
Для одного компонента bitbtn
установлено значение ok,
для второго - cancel, на третьем
написано «Фото». На компоненте Button
написаны 3 точки, что обозначает, что эта кнопка открывает дополнительную
форму. В компоненте ComboBox
в свойстве Items
устанавливаем значения «В магазине» и «У владельца». (Рисунок 3.5)
Рисунок 3.5 - Форма Newtov
Форму «Список комитентов» выглядит фактически
так же, как и форма «Список товаров».
Только здесь отсутствует панель с компонентами DBMemo
и компонентом Image.
Панель содержит в себе компонент GroupBox
с пятью компонентами CheckBox
и с пятью компонентами sEdit.
Ко всему прочему, здесь добавлены 2 кнопки sSpeedBtn
- компоненты быстрого доступа для печати отчета по комитентам и справки о
каком-нибудь конкретном комитенте. (Рисунок 3.6)
Рисунок 3.6 - Форма «Список комитентов»
Форма Newkom
предназначена для вбивания в базу нового комитента. Ее состав прост - 5
компонентов DBEdit, 5
компонентов label, 2
компонента sDBBitBtn
со значениями «ok»
и «cancel». (Рисунок 3.7)
Рисунок 3.7 - Форма «Новый комитент»
Для создания формы Dm
из вкладки ADO на панели
инструментов выбирается компонент ADOconnection
(ADODB). Из той же
вкладки устанавливается ADOQuery.
Количество компонентов зависит от количества таблиц в Access.
Ко всем компонентам ADOQuery
из вкладки Data
Access добавляется DataSourse.
(Рисунок 3.8)
Рисунок 3.8 - Форма Dm
3.3
Создание запросов, фильтров
Для создания SQL
запросов для фильтров в Базе Данных «Комиссионный букинистический магазин»
требуется воплотить в жизнь некоторый алгоритм.
Каждый ADOQuery
и DataSourse переименовать по
названию таблиц. Это нужно, чтобы было удобней ориентироваться в дальнейшем;
Через свойство Connection
соединить каждый ADOQuery
с ADOConnection;
В свойстве DataSet
компонента DataSourse
нужно выбрать название нужного ADOQuery;
Далее в каждом ADOQuery
следует выбрать свойство SQL
и щелкнуть на кнопке с текстом - '...' (три точки, Инспектор Объектов - В.О.).
Должен появиться диалог редактора списка строк (String
List Editor).
Нужно ввести: Select * from
(нужная таблица). Далее следует нажать OK.
Выбрать в Инспекторе Объектов свойство Active
и установите его в TRUE.
Разместить на форме TDBGrid,
если это не было сделано раньше.
Установите его свойство Datasource
в нужный DataSourse.
Свойство SQL
имеет тип TStrings.
Объект TStrings
представляет собой список строк, и чем-то похож на массив. Тип данных TStrings
имеет в своем арсенале команды добавления строк, их загрузки из текстового
файла и обмена данными с другим объектом TStrings.
Другой компонент, использующий TStrings
- TMemo. В
демонстрационном проекте пользователь должен ввести SQL-запрос
и нажать кнопку. Результаты запроса отображаются в табличной сетке. Ниже
полностью приведен код фильтра.
Код фильтра для формы Klient:
procedure
TKlient.sBitBtn1Click(Sender:
TObject);l:byte;.tbKomitents.active:=false;.TbKomitents.SQL.Clear;.TbKomitents.SQL.Add('Select
Komitents.klient, Komitents.iin, Komitents.tel, Komitents.email, Komitents.Dolgkl,
Komitents.kodkl');.TbKomitents.SQL.Add(' from Komitents
where');sCheckBox1.Checked then begin.TbKomitents.SQL.Add(' Komitents.klient
like '+QuotedStr('%'+sEdit1.Text+'%') );:=1;;sCheckBox2.Checked then beginl=1
then dm.TbKomitents.SQL.Add(' and ');.TbKomitents.SQL.Add(' Komitents.iin like
'+QuotedStr('%'+sEdit2.Text+'%') );:=1;;sCheckBox3.Checked then beginl=1 then
dm.TbKomitents.SQL.Add(' and ');.TbKomitents.SQL.Add(' Komitents.tel like
'+QuotedStr('%'+sEdit3.Text+'%') );:=1;;sCheckBox4.Checked then beginl=1 then
dm.TbKomitents.SQL.Add(' and ');.TbKomitents.SQL.Add(' Komitents.email like
'+QuotedStr('%'+sEdit4.Text+'%') );:=1;;sCheckBox5.Checked then beginl=1 then
dm.TbKomitents.SQL.Add(' and ');.TbKomitents.SQL.Add(' Komitents.Dolgkl like '+QuotedStr('%'+sEdit5.Text+'%')
);:=1;;.TbKomitents.Open;;TKlient.sBitBtn2Click(Sender:
TObject);.TbKomitents.Close;.TbKomitents.SQL.Clear;.TbKomitents.SQL.Add('select
* from
komitents');.TbKomitents.Open;.Checked:=false;.Checked:=false;.Checked:=false;.Checked:=false;.Checked:=false;;TKlient.sEdit1Change(Sender:
TObject);length(sEdit1.Text)>0 then begin sCheckBox1.Checked:=true
;Click(Sender);begin.Checked:=false;.TbKomitents.Close;.TbKomitents.SQL.Clear;.TbKomitents.SQL.Add('select
* from komitents');.TbKomitents.Open; end;;TKlient.sEdit2Change(Sender:
TObject);length(sEdit2.Text)>0 then begin
sCheckBox2.Checked:=true;Click(Sender);begin.Checked:=false;.TbKomitents.Close;.TbKomitents.SQL.Clear;.TbKomitents.SQL.Add('select
* from komitents');.TbKomitents.Open; end;;TKlient.sEdit3Change(Sender:
TObject);length(sEdit3.Text)>0 then begin
sCheckBox3.Checked:=true;Click(Sender);
endbegin.Checked:=false;.TbKomitents.Close;.TbKomitents.SQL.Clear;.TbKomitents.SQL.Add('select
* from komitents');.TbKomitents.Open; end;;TKlient.sEdit4Change(Sender:
TObject);length(sEdit4.Text)>0 then begin
sCheckBox4.Checked:=true;Click(Sender);
endbegin.Checked:=false;.TbKomitents.Close;.TbKomitents.SQL.Clear;.TbKomitents.SQL.Add('select
* from komitents');.TbKomitents.Open; end;;TKlient.sEdit5Change(Sender:
TObject);length(sEdit5.Text)>0
then.Checked:=true;Click(Sender);begin.Checked:=false;.TbKomitents.Close;.TbKomitents.SQL.Clear;.TbKomitents.SQL.Add('select
* from komitents');.TbKomitents.Open; end;;
3.4 Описание
работы программы
После двойного щелчка на файл программы с
расширением .exe,
открывается форма с двумя кнопками. Если программа была открыта случайно, ее
можно закрыть с помощью кнопки выход. Если же вход в программу был осознанный,
следующий шаг - нажать на кнопку с названием магазина.
Чтобы посмотреть, что за программа, которой вы
пользуетесь, можно нажать кнопку «О программе» в левом нижнем углу.
Чтобы открыть календарь, следует нажать на
кнопку «Календарь» в правом верхнем углу.
Чтобы начать использовать программу по ее
предназначению, следует нажать на пункт в меню «Рабочее место менеджера».
Пункты «новый товар» и «новый комитент»
предназначены для быстрой регистрации товара и клиента.
Форма «Список комитентов» работает практически
идентично. Также можно воспользоваться фильтром, также можно добавить, изменить
и удалить комитента, также можно напечатать отчет или справку о комитенте.
Форма «Бухгалтерия» содержит две страницы. На
одной можно посмотреть какие денежные операции были произведены. На другой есть
возможность просмотреть отчетность в виде диаграмм.
ЗАКЛЮЧЕНИЕ
При выполнении курсового проекта с целью
создания информационной системы учета в комиссионном букинистическом магазине
были выполнены задачи:
изучить средства разработки;
изучить предметную области;
изучить состав и структуру информационных
файлов/ документов;
создать базу данных в Access;
создать формы в Delphi;
создать запросы и фильтры;
описать работу программы.
В разделе описания средств разработки были
описаны: среда разработки Delphi,
СУБД Access и язык
запросов SQL.
В разделе анализа информационной системы была
описана предметная область, состав и структура информационных файлов и
документов, постановка задачи.
В разделе программирования базы данных было
описано создание базы данных в Access,
создание форм в Delphi,
создание запросов и фильтров и описание самой работы программы.
В итоге было создано приложение, которое позволяет
автоматизировать деятельность комиссионного букинистического магазина.
база
данные delphi access
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1 Аляев
Ю.А Практикум по Алгоритмизации и программированию , ,2007
2 Практикум
по информатике, Михеева Е.В,2006
Практикум
по информационным системам, Михеева Е.В,2007
Практикум
программирования, Беркинбаев К.М,2006
Решение
экономических задач на компьютере, Каплан А.В.,2004
ИС
профессиональная деятельность экономиста, Михеева А.В,2008
Вычислительная
техника информатика, Кашаев С.М Програмирование в Microsoft Eхcel,2007
Информационное
технологии в экономики, Карабутов Н.Н.,2002
Информационные
системы в экономике, Уткин В.Б,2008
Информационные
системы в экономике, Хлебников А.А,2007
Почему
большинство малых предприятий не работают и что с этим делать (1985), Майкл Е.
Гербер
Пятая
дисциплина. Искусство и практика самообучающейся организации (1990), Питер
Сенге
Сначала
нарушьте все правила (1999), Маркус Бакингем, Курт Коффман
Менеджер
за одну минуту (1982), Кеннет Бланшар, Спенсер Джонсон
Курс
на Шесть Сигм. Как General Electric, Motorola и другие ведущие компании мира
совершенствуют свое мастерство (2000), Питер С. Пэнди, Роберт П. Ньюмен, Роланд
Р. Кэвенег