![](/stc/img/evkova.png)
Проектирование реализации операций бизнес-процесса «Движение библиотечного фонда»
Содержание:
ВВЕДЕНИЕ
Современные информационные технологий изменили нашу жизнь, она стала неотъемлемой частью практически любого бизнеса, незаменимым залогом успеха и конкурентоспособности любого предприятия и единственным эффективным способом экономии времени и денег в любой сфере жизни. Информационные технологии – это процессы, методы поиска, сбора, хранения, обработки, предоставления, распространения информации и способы осуществления таких процессов и методов.
Цель данной курсовой работы – проектирование информационной системы для реализации бизнес-процесса «Учет движения библиотечного фонда».
Для достижения поставленной цели необходимо решить следующие задачи:
- проанализировать текущую организацию бизнес-процесса учета движения библиотечного фонда в библиотеке и возникающего при его выполнении документооборота;
- выбрать и обосновать проектные решения по информационному и программному обеспечению;
- составить информационную модель проектируемой информационной системы;
- разработать базу данных и программные модули ИС;
- описать контрольный пример реализации проекта.
1 глава. Аналитическая часть
1.1. Выбор комплекса задач автоматизации
Библиотека – это учреждение, собирающее и хранящее произведения печати и письменности для общественного пользования, а также осуществляющее справочно-библиографическую работу.
Во многих современных библиотеках хранятся несколько тысяч книг, журналов, газет. Сотни людей ежедневно пользуется услугами библиотек. Ежедневно увеличивается библиотечный фонд, и приходят новые читатели. Для учета и движения библиотечного фонда, автоматизации процессов регистрации новых посетителей в большинстве библиотек в настоящее время применяются специальные программные и аппаратные средства, но не во всех, особенно их нет в муниципальных.
Посетители для поиска нужной книги используют два вида каталогов: старые, бумажные, и новые, электронные. Бумажные представляют собой картонные карточки с информацией каждой книги котором находятся в картотеке (большой шкаф с выдвижными ящики), отсортированные по алфавиту и по категориям. Электронные каталоги – это специальные компьютеры, установленные в библиотеке, которые позволяют искать информацию об интересующих книгах и других печатных изданиях в электронной базе данных.
Для работы с каталогами новые посетители должны получить абонемент. Для получения абонемента посетитель пишет заявление. На основании заявления работник библиотеки заполняет абонемент, затем распечатывает его на принтере и выдает его посетителю. И только после это посетитель получает доступ каталогам.
После поиска книг по каталогам и выбора книг или книги. Посетитель обращается к работнику библиотеки, чтоб ему выдали эти книги. Библиотекарь фиксирует данный факт выдачи.
Когда посетитель возвращает книгу в библиотеку, библиотекарь фиксирует данный факт возврата книги с обязательными отметками о замечаниях к внешнему виду книги, если они имеются.
В рамках данного курсового проекта в качестве предмета исследования выступает организация бизнес-процесса «Учет движения библиотечного фонда». Для более конкретного изучения его организации будет использован метод моделирования.
1.2. Характеристика существующих бизнес – процессов
Для анализа бизнес-процесса этой деятельности воспользуемся функционально-структурным моделированием. В качестве основной методологии построения функциональных моделей выбираем IDEF0.
IDEF0 – это методология функционального моделирования и графическая нотация, предназначенная для формализации и описания бизнес-процессов.
Производится исследование функций независимо от способов и методов их выполнения. При таком «функциональном» подходе обеспечивается четкое разделение аспектов назначения описываемой системы, от вопросов её реализации.
При исследовании и проектировании систем часто используется IDEF0 на концептуальном уровне.
В IDEF0 имеются два типа графических объектов:
1. Блок, с помощью которого обозначается некоторая функция (действие);
2. Стрелка, с помощью которой указываются информационные или материальные объекты.
Модель IDEF0 представляет собой набор взаимоувязанных диаграмм. Каждая диаграмма является описанием системы или ее отдельных функциональных блоков в рамках некоторого уровня детализации.
Контекстная диаграмма – это диаграмма самого верхнего уровня иерархии, что дает самое общее представление о системе. На контекстной диаграмме отображается только один функциональный блок (контекстная функция).
Далее контекстная диаграмма декомпозируется на основные функции системы с помощью отдельной диаграммы. В дальнейшем каждая такая функция может быть разложена на более мелкие. При построении модели нужно соотнести каждый функциональный блок более высокого уровня с функциональным блоком более низкого уровня.
Функциональный блок и диаграмма его декомпозиции суть одно и то же, но рассматриваемое с разной степенью детализации. Все стрелки, связанные с рассматриваемым функциональным блоком, должны присутствовать на декомпозирующей его диаграмме (если они имеется).
На рисунке 1 изображена контекстная диаграмма для деятельности библиотеки (для построения диаграмм использовалось CASE-средство AllFusion Process Modeler 7).
Рисунок 1. Контекстная диаграмма
В качестве входных данных выступают данные посетителя и данные каталога, управления – законы РФ и регламенты, механизма – посетитель и сотрудник библиотеки. Результатами бизнес-процесса являются – выданные книги, а также данные о выдаче и приеме книг, отчеты о выполненных работах.
Далее контекстная диаграмма декомпозируется на 5 блоков: регистрация в библиотеке, выбор книги, выдача книги, возврат книги и формирование отчетов (Рисунок 2).
Рисунок 2. Диаграмма декомпозиции
В блоке «Регистрация в библиотеке» входными данными являются данные посетителя. На основании, которого выдается абонемент. Далее посетитель с абонементом выбирает нужную ему книгу на основании входных данных данные каталога. После выбора книги, производится выдача книги. Входными данными являются: выбранная книга и абонемент посетителя, выходными данными являются: данные о выдачи книг и выданная книга.
Далее после использования книги производится возврат книги посетителем. Входные данными являются: данные о выдаче книг, выданная книга; выходные данные: данные о приеме книг.
1.3. Характеристика документооборота, возникающего при решении задачи
В ходе выполнении бизнес-процесса учета движения библиотечного фонда формируются два документа: это записи в книги учета выданных книг и на основе этих записей который формируется отчет о деятельности библиотеки, на рисунке 3 приведена схема документооборота бизнес-процесса.
Рисунок 3. Схема документооборота
1.4. Обоснование проектных решений по информационному обеспечению
Информационная система для решения комплекса задач, которые поставлены перед нашим проектом представлено в виде реляционной базы данных, где хранится информация, для автоматизации процесса учета движения библиотечного фонда.
Есть простое понятие база данных что это электронное хранилище информации большого объема, в которое предприятие помещают все данные, которые используются при осуществлении своей деятельности, а доступ информации хранящиеся в нем осуществляется посредством специального программного обеспечения. В большинстве случаев под базой данных понимается весь массив взаимосвязанных данных, хранящихся на компьютере.
Концептуальные требования к системе формируется на основе представлений конечных пользователей конкретного предприятия. На основании этих требований проектируется база данных. Потому что конечный пользователь принимает какие-либо решения на основе полученной информации, которая хранится в базе данных. Эффективность работы организации будет зависеть от качества и оперативности этой информации. Не стоит забывать что конечный пользователь вносит, корректирует и удаляет данные в базе данных.
Есть определенные правила для проектирования и создания базы данных для нужд какой-либо организации:
- База данных должна полной т.е. иметь все необходимые данные для работы организации, хранимая информация в них должна быть в актуальном состоянии;
- База данных должна отвечать заданным требованиям производительности, т.е. обеспечивать доступ ко всей информации за приемлемое время;
- База данных должна полностью удовлетворять выявленным и вновь возникающим требованиям конечных пользователей;
- База данных должна иметь возможность легко расширятся, на случай расширения или изменении сферы деятельности предприятия;
- База данных должна легко трансформироваться при изменении программной и аппаратной среды;
- Данные, которые загружаются в базу данных, должны быть максимально корректными, поэтому при добавлении или изменении данных должна проводиться проверка вносимых данных;
- Доступ к информации, хранящийся в базе данных, должны быть авторизованными, т.е. доступ предоставляется только лицам и сотрудникам организации, имеющие на это соответствующие полномочия и должностные обязанности;
- Для работа с базой данных должны быть дружественных интерфейс и не вызывать затруднений у пользователей.
Базы данных реляционной модели– это модель, где БД есть совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Большинство пользователей такую модель базу данных воспринимать как совокупность таблиц.
1.5. Обоснование проектных решений по программному обеспечению
Программное обеспечение – это все программы для реализации целей и задач информационной системы, и соответственно нормального функционирования всего комплекса технических средств.
В состав комплекса программного обеспечения входят общесистемные и специальные программы, в том числе: операционная система, системы программирования, инструментальные средства программиста, тестовые и диагностические программы, программные средства телекоммуникации, защиты информации, функциональное программное обеспечение (автоматизированные рабочие места, системы управления базами данных и т. п.).
Необходимо выбрать язык программирования для реализации проектируемой информационной системы. В которой будут созданы пользовательские интерфейсы. А также систему управления базой данных для организации хранения информации в виде базы данных.
На рассмотрения были выбраны три наиболее популярных языка программирования в качестве возможных альтернатив: Delphi, C++ и Java.
Delphi - язык программирования высокого уровня, имеет характерные особенности:
- набор операторов языка реализован по принципы структурного проектирования и позволяет записывать достаточно сложные алгоритмы в удобочитаемой форме;
- синтаксис языка несложный и включает в себя возможности объектно-ориентированного программирования;
- для изучения язык лёгок, ему обучают даже в школе;
- развитая система для работы с базами данных;
- позволяет создавать отчёты;
- имеется компилятор с возможностью компоновки исполняемых файлов под операционные системы Windows.
Следующий язык – язык С++. Синтаксис этого языка намного сложенее по сравнению с простым и ясным синтаксисом Object Pascal, которая является основой языка Delphi, исходя из этого Object Pascal претендует на роль языка, идеально подходящего для составления алгоритма. Во многих случаях Object Pascal имеет быстрый, среди продуктов подобного рода, оптимизирующий компилятор, позволяющий создавать быстрые и относительно компактные программы. С++ это языком программирования общего назначения. Я считаю что единственная область его применения - системное программирование, понимаемое в широком смысле этого слова. С++ успешно используется во многих областях программирования, далеко выходящих за его естественную область применения. Реализации С++ есть на всех машинах, начиная с самых скромных микрокомпьютеров - до самых больших супер-ЭВМ, и во всех операционных систем.
Язык С++ проектировался для использования в традиционной среде, такой как: в системе программирования С операционной системы UNIX. Имея, такие возможности, как динамическая загрузка, развитые системы трансляции и базы данных для хранения определенных типов, дают вполне обоснованные доводы в пользу использования С++ как более богатую программную среду.
И третий из самых популярных языков программирования в последнее время язык –Java. Программы на Java транслируются в байт-код, исполнителем которого выступает виртуальная машина Java (JVM) – специальной программой, которая обрабатывает байт-коды и передает соответствующие команды оборудованию.
Основным и главным достоинство такого способа исполнения программы является независимость транслируемого байт-кода от операционной системы и оборудования. То есть, программы написанные на языке программирования JAVA могут быть исполнены на любом устройстве, для которых существует виртуальная машина. Еще одним из основных особенностей технологии Java являются обеспечение безопасности и защита данных, так как исполняемый байт-код находится под полным контроль виртуальной машины. Любые операции, которые не должны входить в полномочия программы (например, доступ к закрытым или конфиденциальным данным, соединения с другим компьютером и пр.) вызывают завершение работы программы. К основным недостаткам технологии Java следует отнести низкую производительность, по сравнению с классическими технологиями программирования в виде дополнительных операции по трансляции программы в байт-код.
Языком программирования для разработки информационной системы был выбран Delphi, а также среда разработки RAD Delphi 7.
И ещё одной основной причиной выбора является наличия опыта работы с данной средой у разработчика.
Для управления базой данных была выбрана свободная реляционная система управления базы данных MySQL
Для создания информационной системы СУБД MySQL обладает всеми необходимыми возможности. Так же система отвечает всем предъявляемым требованиям:
- Богатый функционал - поддерживает большинство функционала SQL.
- Безопасность - большое количество функций обеспечивающих безопасность, которые поддерживается по умолчанию
- Масштабируемость - легко работает с большими объемами данных и легко масштабируется
- Скорость - упрощение некоторых стандартов позволяет значительно увеличить производительность.
2 глава. Проектная часть
2.1. Информационная модель и её описание
Информационная модель - это схема движения входной, промежуточной и результативной информации и функций предметной области. С помощью информационной модели можно объяснить с помощью каких входных документов (данных) и нормативно-справочной документов (информации) происходит выполнение основных функций. Информационная модель проектируемой ИС представлена на рисунке 4.
Рисунок 4. Информационная модель
Пользователи могут работать со всеми справочниками информационной системы в соответствии с составленной информационной модели.
Пользователи также могут добавлять вводить данные о выдаче и приеме книг, и могут формировать выходные документы: отчет о движении книг, список выданных книг.
2.2. Характеристика нормативно-справочной, входной и оперативной информации
Информационная система имеет пять справочников, характеристики которых приведены в таблице 2.
Таблица 2
Справочники информационной системы
№ пп |
Название справочника |
Ответственный за ведение |
Средний объём справочника в записях |
Среднюю частоту актуализации |
Средний объем актуализации, % |
1 |
Пользователи |
Сотрудник библиотеки |
2 |
1 раз в полгода |
50 |
2 |
Читатели |
Сотрудник библиотеки |
10 |
1 раз в месяц |
10 |
3 |
Книги |
Сотрудник библиотеки |
100 |
1 раз в неделю |
10 |
4 |
Категории |
Сотрудник библиотеки |
10 |
1 раз в год |
10 |
5 |
Авторы |
Сотрудник библиотеки |
50 |
1 раз в месяц |
10 |
За актуальное состояние всех справочников отвечают сотрудники библиотеки, у каждого вида справочника своя частота актуализации и средний объем актуализации.
Реквизиты каждого справочника представлены в виде таблицы 3.
Таблица 3
Реквизитный состав справочников информационной системы
№ п/п |
Наименование справочника |
Перечень реквизитов |
1 |
Пользователи |
ФИО пользователя Логин Пароль Телефон |
2 |
Читатели |
ФИО Адрес Телефон Электронная почта |
3 |
Книги |
Наименование Описание Код IBSN |
4 |
Категории |
Наименование |
5 |
Авторы |
ФИО |
Ввод и редактирование записей во все справочники осуществляется с помощью форм.
На рисунке 5 изображена форма для работы с записями справочника «Пользователи».
Рисунок 5. Форма Пользователь
Формы для работы с записями других справочников имеют аналогичный вид (Рисунок 6-9).
Рисунок 6. Форма Читатель
Рисунок 7. Форма Книга
Рисунок 8. Форма Категория
Рисунок 9. Форма Автор
В качестве входных данных для информационной системы выступают данные о выдаче и возврате книг. Эти данные вводятся в ИС в основной форме, приведенной на рисунке 10.
Рисунок 10. Форма для добавления данных о выдаче книг
Данные, введенные в формы, сохраняются в базе данных и используются для формирования выходных данных. Все формы выполнены в единой форме, для облегчения в обучении персонала при работе с информационной системой
2.3. Характеристика результатной информации
В качестве выходных данных выступают список выданных книг и отчет о деятельности.
Подробное описание выходных данных в таблице 4.
Таблица 4
Описание результатной информации
Наименование |
Список выданных книг |
Отчет о деятельности |
Реквизиты |
Дата выдачи; Название книги; ФИО читателя; |
Количество выданных книг за период Количество возвращенных книг за период Количество невозвращенных книг за период |
Таблицы, на основе которых формируется |
Книги Читатели Выдачи |
Выдачи |
Частота формирования |
По мере необходимости |
По мере необходимости |
Способ доставки |
Печатная форма FastReport |
Печатная форма FastReport |
2.4. Общие положения (дерево функций и сценарий диалога)
В виде дерева изображен базовый набор функций разработанной информационной системы на рисунке 11.
Рисунок 11. Дерево функций
Выполнение функций в информационной системе осуществляется с помощью ведения диалога с пользователем. То есть Пользователь информационной системы выполняет какие-либо действия, а программа соответствующим образом на них реагирует. На рисунке 12 представлен сценарий диалога с пользователем.
Рисунок 12. Сценарий диалога
Работа с информационной системой начинается с диалога являющимся запросом логина и пароля пользователя для доступа в систему. После успешной авторизации пользователю открывается основная форма где предлагается ему выбрать задачу, которую он собирается решить: работа со справочниками, работа с выдачами или формирование отчетов. После выбора решаемой задачи пользователем, ему открываются различные формы пользовательского интерфейса, предназначенные для решения выбранной задачи.
2.5. Характеристика базы данных
В качестве системы управления базы данных для разрабатываемой информационной системы была выбрана СУБД MySQL.
Для работы и хранения всех данных была спроектирована и создана база данных, состоящая из 6 таблиц. На рисунке 13 представлена ER-модель спроектированной базы данных.
Рисунок 13. ER-модель базы данных
Описание всех таблиц базы данных представлено в таблицах 5-10.
Таблица 5
Таблица users
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Код пользователя |
userid |
int |
4 |
AI |
ФИО пользователя |
fio |
varchar |
120 |
|
Логин пользователя |
login |
varchar |
120 |
|
Пароль пользователя (в зашифрованном виде) |
password |
varchar |
120 |
|
Телефон пользователя |
phone |
varchar |
120 |
Таблица 6
Таблица reader
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Код посетителя |
readerid |
int |
4 |
AI |
ФИО |
fio |
varchar |
120 |
|
Телефон |
phone |
varchar |
120 |
|
|
|
varchar |
120 |
|
Адрес |
addres |
varchar |
120 |
Таблица 7
Таблица book
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Код книги |
bookid |
int |
4 |
AI |
Наименование |
caption |
varchar |
120 |
|
Описание |
description |
text |
65655 |
|
IBSN |
ibsn |
varchar |
120 |
|
Код категории |
categoryid |
int |
4 |
FK |
Код автора |
authorid |
int |
4 |
FK |
Таблица 8
Таблица category
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Код категории |
categoryid |
int |
4 |
AI |
Наименование |
caption |
varchar |
120 |
Таблица 9
Таблица author
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Код автора |
authorid |
int |
4 |
|
Фио автора |
fio |
varchar |
120 |
Таблица 10
Таблица motion
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Код выдачи |
motionid |
int |
4 |
AI |
Код книги |
bookid |
int |
4 |
FK |
Код посетителя |
readerid |
int |
4 |
FK |
Код пользователя |
userid |
int |
4 |
FK |
Дата выдачи |
givedate |
datetime |
10 |
|
Дата возврата |
returndate |
datetime |
10 |
|
Комментарий |
comment |
TEXT |
65566 |
2.6. Структурная схема пакета (дерево вызова программных модулей)
Проект программы состоит из 9 модулей:
- модуль Main.pas (главный модуль);
- модуль Vcod.pas (модуль авторизации);
- модуль Tip.pas (работа со справочниками);
- модуль Reader.pas (работа со справочниками);
- модуль Users.pas (работа со справочниками);
- модуль Book.pas (работа со справочниками);
- модуль Avtor.pas (работа со справочниками);
- модуль Rep1.pas (работа с отчетами);
- модуль Vidvoz.pas (работа с отчетами).
Подробное описание модулей представлено в виде таблицы 11.
Таблица 11
Описание модулей системы
№ п/п |
Наименование модуля |
Функции модуля |
---|---|---|
1. |
модуль Main.pas |
содержит процедуры и функции, отвечающие за отображение главного окна программы, главного меню, выдачи и возврата книг |
2. |
модуль Vcod.pas |
Модуль авторизации |
3. |
модуль Tip.pas |
модуль содержит процедуры и компоненты для выполнения основных операций со справочником Категории |
4 |
модуль Reader.pas |
модуль содержит процедуры и компоненты для выполнения основных операций со справочником Читатели |
5 |
модуль Users.pas |
модуль содержит процедуры и компоненты для выполнения основных операций со справочником Пользователи |
6 |
модуль Book.pas |
модуль содержит процедуры и компоненты для выполнения основных операций со справочником Книги |
7 |
Модуль Avtor.pas |
модуль содержит процедуры и компоненты для выполнения основных операций со справочником Авторы |
8 |
модуль Rep1.pas |
модуль содержит процедуры для формирования отчета |
9 |
модуль Vidvoz.pas |
модуль содержит процедуры для формирования отчета |
Дерево вызова программных модулей приведено на рисунке 14.
Рисунок 14. Дерево вызова программных модулей
2.7 Описание программных модулей
После запуска программы производиться подключение к базе данных. При помощи технологии ADO осуществляется соединение с базой данных.
Данная технология связи с базами данных особенно популярна у разработчиков, в основном из-за своей универсальности – базовый набор интерфейсов OLE DB имеется во всех современных операционных системах Windows. Для обеспечения доступа приложения к базе данных нужно правильно указать провайдер соединения ADO. На любой компьютер, где имеется наша база данных и установлен провайдер соединения ADO, можно переносить созданный нами программный продукт.
В Delphi есть палитра компонентов, в которой выделена отдельная вкладка для технологии ADO, в нем содержится набор компонентов, для создания полноценных приложений базы данных, при помощи которых можно обратится к хранилище данных.
ADO-технологии обеспечивают универсальный доступ к хранилищам данных из приложений базы данных. Эти возможности предоставляют функции набора интерфейсов, созданных на основе описаний в спецификации OLE DB и общей модели объектов СОМ.
Для приложений единый способ доступа к хранилищам (источникам) данных разных типов обеспечивают технология ADO и интерфейсы OLE DB. Приложения, использующее в своей работе ADO могут использовать в качестве источника любое хранилище данных, поддерживающее ADO-технологии, не только серверные или локальные СУБД, но также электронные таблицы. Любой SQL-запрос, направленный через ADO-технологии к любому источнику данных, будет исполнен.
По своей сути OLE DB это набор специализированных объектов СОМ, инкапсулирующих стандартные функции обработки данных, и специализированные функции конкретных источников данных и интерфейсов, обеспечивающих передачу данных между объектами.
В соответствии с технологией ADO, любой источник данных называется хранилищем данных ( база данных, электронная таблица или файл), с которым при помощи провайдера данных взаимодействует приложение. Минимальный набор компонентов приложения может включать объект соединения, объект набора данных, объект процессора запросов.
Таким образом, приложение обращается не прямо к хранилищу данных, а к объекту OLE DB, который "умеет" представить данные в виде таблицы базы данных или результатом выполнения SQL-запроса.
В технологии ADO есть не только сами объекты OLE DB, но и их механизмы, которые обеспечивают взаимодействие объектов приложения и их данных. На данном уровне важнейшую роль играют провайдеры ADO, которые координируют работу приложений с хранилищами данных различных типов.
При такой архитектуре позволяет сделать набор объектов и интерфейсов открытыми и расширяемыми. Набор объектов и соответствующий провайдер может быть создан для любого хранилища данных без внесения изменений в исходную структуру ADO. При этом существенно расширяется само понятие данных – ведь можно разработать набор объектов и интерфейсов и для нетрадиционных табличных данных. Например, это могут быть графические данные геоинформационных систем, древовидные структуры из системных реестров, данные CASE-инструментов и т. д.
Технология ADO основана на стандартных интерфейсах СОМ, которые являются системным механизмом операционной системы Windows. Что уменьшает общий объем программного кода. Что позволяет распространять приложения база данных, без дополнительных и вспомогательных программ и библиотек.
Компонент Adotable работает напрямую с таблицами базы данных, поэтому он используется для работы со справочниками системы. Этот компонент представляет собой виртуальную копию таблицы базы данных. Все внесенные изменения сразу передаются в таблицу базы данных.
Компоненты AdoQuery используется в приложении для работы с выдачами книг и формирования отчетов. Этот компонент предназначен для создания, обработки и отправки запросов к базе данных. В нашем приложении используются 3 вида запросов:
- Запросы на добавление данных;
- Запросы на обновление данных;
- Запросы на выборку.
Оператор запроса SELECT используется для получения практически любых данных из любого количества таблиц базы данных.
Оператор SELECT выбирает записи из базы данных, и имеет сложную структуру, по сравнению с другими операторами языка SQL. Этот оператор не только выбирать записи из базы данных, удовлетворяющие заданному условию. Но задает параметры отображения этих записей, таких как сортировка и группировка. Есть еще агрегатные функции, которые позволяют подсчитывать необходимые данные.
Для добавления новых данных в базу данных используется оператор INSERT, для– обновления данных в базе данных оператор UPDATE.
Технология ADO позволяет писать любые запрос в объекте AdoQuery на стандартном языке SQL, не учитывая особенности СУБД, используемой в качестве базы данных. Что является огромным преимуществом, так как можно легко и без сложных изменений в приложениях переводить программные средства с одной СУБД на другую, в зависимости от требований и условий эксплуатации.
Все программные модули нашей программы состоят из процедур. Которые обрабатывают различные действия пользователей. То есть нажатия на кнопки, ввод текста в поля и т.д.
Исходный код программы представлены в приложении.
2.8. Контрольный пример реализации проекта и его описание
После запуска программы открывается форма авторизации, в которой необходимо пользователю ввести свой логин и пароль (Рисунок 15).
Рисунок 15. Форма авторизации
После успешного прохождения авторизации пользователю отображается главное окно программы, в котором в виде таблицы представлены все выдачи книг (Рисунок 16).
Рисунок 16. Главная форма со списком выдач
Для использования других функций программы необходимо использовать главное меню (Рисунок 17).
Рисунок 17. Главное меню
Чтобы добавить новую выдачу нужно выбрать пункт «+» в нижнем меню навигатора, добавиться новая строка куда и вносится запись (Рисунок 18).
Рисунок 18. Форма выдачи книги
При помощи того же навигатора можно как и внести данные также редактировать и удалять. Для того чтобы не ошибиться, все данные справочников выбирается из выпадающих списков с данными.
Формы для работы со справочниками имеет общий вид: большую часть формы занимает таблица с записями справочника и навигатор. (Рисунок 19).
Рисунок 19. Форма работы со справочником
Для формирования отчетов необходимо выбрать соответствующий пункт в главном меню. Список книг на руках формируется сразу (Рисунок 20).
Рисунок 20 – Список выданных книг
Для формирования отчета о деятельности необходимо ввести интервал дат с помощью формы (Рисунок 21).
Рисунок 21 – Форма ввода интервала дат
Сформированный отчет в FastReport (Рисунок 22).
Рисунок 22 – Отчет о деятельности
ЗАКЛЮЧЕНИЕ
В рамках выполнения данной курсовой работы были решены следующие задачи:
- Проанализирован бизнес-процесс учета движения библиотечного фонда, были выделены основные этапы выполнения бизнес-процесса, изучен вопросы по документообороту;
- Обоснованный выбор проектного решения по создании информационной системы, в качестве среды разработки была выбрана RAD Delphi7, а в качестве СУБД – MySQL;
- Составлена информационная модель информационной системы, которая отражает пути преобразования входной информации в выходную;
- Разработана база данных и программные модули, реализующие работу информационной системы.
- Создан контрольный пример реализации проекта.
Все задачи поставленные перед курсовым проектом были выполнены, а значит и основная цель достигнута.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
- ГОСТ 2.105 – 95. Общие требования к текстовым документам.
- ГОСТ 7.32 – 2001. Отчет по научно-исследовательской работе. Структура и правила оформления.
- ГОСТ 7.82-2001. Библиографическое описание электронных ресурсов.
- ГОСТ 24.702-85 Эффективность автоматизированных систем управления.
- ГОСТ Р 7.0.5-2008. Библиографическая запись. Библиографическое описание.
- Агальцов В.П. Базы данных. В 2-х т. Т. 2. Распределенные и удаленные базы данных: Учебник. М.: ИД ФОРУМ, НИЦ ИНФРА-М, 2013. 272 с.
- Гагарина Л.Г. Разработка и эксплуатация автоматизированных информационных систем: учебное пособие. М.: ИД «ФОРУМ»: ИНФРА-М, 2013. 384 с.
- Горбаченко В.И., Убиенных Г.Ф. Бобрышева Г.В. Проектирование информационных систем с СА Erwin Modeling Suite 7.3. Пенза: Изд-во ПГУ, 2012, 154 c.
- Зуев Е.А. Программирование на языке Delphi 6.0,7.0. – М.: Радио и связь, Веста, 2016. - 186 с.
- Калмыков Ю.В. Учебно-методичское пособие по обучению программированию на языке Delphi для школ, 2014. – 100 с.
- Карпова И.П. Базы данных: Учебное пособие. – Спб.: Питер, 2013. – 240 с.
- Кузин А.В., Левонисова С.В. Базы данных: Учебное пособие для студ. высш. учеб. заведений. – М.: ИЦ Академия, 2012. – 320с.
- Культин Никита – Основы программирования в Delphi, 2015 – 232 с.
- Маклаков С. В. Моделирование бизнес-процессов с AllFusion Process Modeler (BPwin 4.1) / С.В. Маклаков. – М. : ДИАЛОГ-МИФИ, 2013. – 340 c.
- Маклаков С.В. Создание информационных систем с AllFusion Modeling Suite / С.В. Маклаков. – М. : ДИАЛОГ-МИФИ, 2015. – 512 c.
- Тельнова, Ю.Ф. Проектирование экономических информационных систем: учеб. / под ред. Ю. Ф. Тельнова. М. : Горячая линия, 2015 — 345 c.
- Фуфаев Д.Э. Фуфаев Э.В. Разработка и эксплуатация автоматизированных информационных систем: учебник дя студ. М.: Издательский центр «Академия», 2013. 304 с.
- Шаньгин В.Ф. Информационная безопасность компьютерных системы и сетей: Учебное пособие. М.: ИД ФОРУМ, НИЦ ИНФРА-М, 2013. 416 с.
- Фленов М.Е. Библия Delphi: СПб.:БХВ-Петербург, 2008. – 800 с.
- Никандрова Ю.А. интернет-курс по дисциплине «База данных(Управление данными)», 2012
unit vcod;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB;
type
TForm8 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
ADOTable1: TADOTable;
ADOConnection1: TADOConnection;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form8: TForm8;
implementation
uses main;
{$R *.dfm}
procedure TForm8.Button1Click(Sender: TObject);
var log,par: string;
begin
ADOTable1.Open;
log:= Edit1.Text;
par:= Edit2.Text;
if (ADOTable1.FieldValues['login']=log) and (ADOTable1.FieldValues['password']=par)then
begin
Form8.Hide;
Form1.Show;
end
else ShowMessage('Логин и пароль введены не верно')
end;
procedure TForm8.Button2Click(Sender: TObject);
begin
close;
end;
end.
unit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, DB, ADODB, Menus, StdCtrls;
type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
MainMenu1: TMainMenu;
N1: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
DBNavigator1: TDBNavigator;
ADOTable1: TADOTable;
ADOTable2: TADOTable;
ADOTable3: TADOTable;
DataSource2: TDataSource;
DataSource3: TDataSource;
ADOTable4: TADOTable;
DataSource4: TDataSource;
ADOTable1id: TAutoIncField;
ADOTable1givedate: TDateField;
ADOTable1returndate: TDateField;
ADOTable1comment: TMemoField;
ADOTable1bookid: TIntegerField;
ADOTable1readerid: TIntegerField;
ADOTable1userid: TIntegerField;
ADOTable1book: TStringField;
ADOTable1reader: TStringField;
ADOTable1user: TStringField;
procedure N4Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses users, tip, reader, avtor, book, vidvoz, vcod, rep1;
{$R *.dfm}
procedure TForm1.N4Click(Sender: TObject);
begin
Form8.Close;
Close;
end;
procedure TForm1.N7Click(Sender: TObject);
begin
Form2.show;
end;
procedure TForm1.N11Click(Sender: TObject);
begin
Form3.show;
end;
procedure TForm1.N8Click(Sender: TObject);
begin
Form4.show;
end;
procedure TForm1.N10Click(Sender: TObject);
begin
Form5.show;
end;
procedure TForm1.N9Click(Sender: TObject);
begin
Form6.show;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
Form7.show;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form7.Show;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Form7.Show;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
Form9.QuickRep1.Preview;
end;
procedure TForm1.N6Click(Sender: TObject);
begin
Form7.show;
end;
end.
unit users;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls, DB, ADODB;
type
TForm2 = class(TForm)
ADOTable1: TADOTable;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses main;
{$R *.dfm}
end.
unit tip;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls;
type
TForm3 = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
ADOTable1: TADOTable;
DataSource1: TDataSource;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
uses main;
{$R *.dfm}
end.
unit reader;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ExtCtrls, DBCtrls, Grids, DBGrids, ADODB, StdCtrls;
type
TForm4 = class(TForm)
ADOTable1: TADOTable;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
DataSource1: TDataSource;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
uses main;
{$R *.dfm}
end.
unit avtor;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, ExtCtrls, DBCtrls, Grids, DBGrids;
type
TForm5 = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
DataSource1: TDataSource;
ADOTable1: TADOTable;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
uses main;
{$R *.dfm}
end.
unit book;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids, DBCtrls, Mask, ExtCtrls;
type
TForm6 = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
ADOTable1: TADOTable;
ADOTable2: TADOTable;
DataSource1: TDataSource;
DataSource2: TDataSource;
ADOTable3: TADOTable;
DataSource3: TDataSource;
ADOTable1id: TAutoIncField;
ADOTable1caption: TStringField;
ADOTable1description: TMemoField;
ADOTable1categoryid: TIntegerField;
ADOTable1IBSN: TStringField;
ADOTable1authorid: TIntegerField;
ADOTable1category: TStringField;
ADOTable1autyor: TStringField;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form6: TForm6;
implementation
uses main;
{$R *.dfm}
end.
unit vidvoz;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, Grids, DBGrids, ADODB, ExtCtrls, DBCtrls, Mask,
QuickRpt, QRCtrls, ComCtrls;
type
TForm7 = class(TForm)
Label1: TLabel;
Button1: TButton;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
Label2: TLabel;
Label3: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form7: TForm7;
adata1,adata2: String;
implementation
uses main, rep2;
{$R *.dfm}
procedure TForm7.Button1Click(Sender: TObject);
begin
adata1:=FormatDateTime('yyyy.mm.dd',DateTimePicker1.Date);
adata2:=FormatDateTime('yyyy.mm.dd',DateTimePicker2.Date);
Form10.ADOQuery1.Active:=false;
Form10.ADOQuery1.SQL.Clear;
Form10.ADOQuery1.SQL.add('SELECT count(*) FROM motion where givedate>="'+adata1+'" and givedate<="'+adata2+'"');
Form10.ADOQuery2.Active:=false;
Form10.ADOQuery2.SQL.Clear;
Form10.ADOQuery2.SQL.add('SELECT count(*) FROM motion where givedate>="'+adata1+'" and givedate<="'+adata2+'" and motion.returndate is not null');
Form10.ADOQuery3.Active:=false;
Form10.ADOQuery3.SQL.Clear;
Form10.ADOQuery3.SQL.add('SELECT count(*) FROM motion where givedate>="'+adata1+'" and givedate<="'+adata2+'" and motion.returndate is null');
Form10.ADOQuery1.Active:=true;
Form10.ADOQuery2.Active:=true;
Form10.ADOQuery3.Active:=true;
Form10.QuickRep1.Preview;
end;
end.
unit rep1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, QuickRpt, ExtCtrls, QRCtrls, StdCtrls, DB, ADODB;
type
TForm9 = class(TForm)
QuickRep1: TQuickRep;
QRBand1: TQRBand;
QRBand2: TQRBand;
QRBand3: TQRBand;
QRBand4: TQRBand;
QRBand5: TQRBand;
QRLabel1: TQRLabel;
QRDBText1: TQRDBText;
SummaryBand1: TQRBand;
QRLabel3: TQRLabel;
QRSysData2: TQRSysData;
QRLabel4: TQRLabel;
ADOQuery1: TADOQuery;
QRDBText2: TQRDBText;
QRDBText3: TQRDBText;
QRLabel2: TQRLabel;
QRLabel5: TQRLabel;
QRLabel6: TQRLabel;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form9: TForm9;
implementation
uses main;
{$R *.dfm}
end.
unit rep2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, QuickRpt, DB, ADODB, StdCtrls, QRCtrls;
type
TForm10 = class(TForm)
ADOQuery1: TADOQuery;
QuickRep1: TQuickRep;
ColumnHeaderBand1: TQRBand;
DetailBand1: TQRBand;
PageFooterBand1: TQRBand;
PageHeaderBand1: TQRBand;
SummaryBand1: TQRBand;
TitleBand1: TQRBand;
QRLabel1: TQRLabel;
QRLabel2: TQRLabel;
QRSysData2: TQRSysData;
QRLabel3: TQRLabel;
QRLabel4: TQRLabel;
QRDBText1: TQRDBText;
ADOQuery2: TADOQuery;
QRLabel5: TQRLabel;
QRDBText2: TQRDBText;
ADOQuery3: TADOQuery;
QRLabel6: TQRLabel;
QRDBText3: TQRDBText;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form10: TForm10;
implementation
uses main, vidvoz;
{$R *.dfm}
end.
- Современные языки программирования (Метапрограммирование)
- Коммерческая деятельность розничного торгового предприятия и ее совершенствование (на примере конкретной организации) Теоретические основы организации коммерческой деятельности розничного торгового предприятия)
- Функции менеджмента
- Технологии и методы продаж в гостиничном бизнесе
- Повышения производительности труда в компании: совершенствование мотивации работников.(СУЩНОСТЬ, СОДЕРЖАНИЕ И СТРУКТУРА ПРОЦЕССА МОТИВАЦИИ)
- Коммерческие риски и способы их уменьшения (на примере конкретной организации) (ООО « Оргаропром»)
- Понятие правонарушения (Объект правонарушения)
- Управление каналами сбыта в системе товародвижения реально существующей организации (Оценка организации и планирования сбытовой деятельности ОАО «Промприбор»)
- Руководство, стили руководства (Теоретические аспекты изучение стиля руководства)
- измерение денежной массы: российский опыт, проблемы, перспективы
- Годовой бухгалтерский отчет: содержание и порядок составления
- Факторы внешней среды прямого воздействия