Проект и реализация системы автоматизации работы сотрудников бухгалтерии ХК АкБарс

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    378,61 Кб
  • Опубликовано:
    2012-07-11
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Проект и реализация системы автоматизации работы сотрудников бухгалтерии ХК АкБарс

Оглавление

Введение

1. Краткий обзор средств решения проблемы

1.1 СУБД MS Access

1.2 Язык программирования Delphi

2. Системный анализ предметной области

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

3.1 Составление перечня атрибутов предметной области

3.2 Агрегация атрибутов, в сущности

3.3 Определение первичных ключей

3.4 Нормализация сущностей

3.5 Графическое представление сущностей

3.6 Определение связей

4. Проектирование концептуальной модели предметной области

4.1 Преобразование сущностей в отношения

4.2 Установление свойств атрибутов

4.3 Определение внешних ключей

4.4 Реализация связи типа М: М

4.5 Графическое изображение концептуальной модели предметной области

5. Состав модулей и их описание

5.1 Main

5.2 DataMod

5.3 Players

5.4 Seasons

5.5 Stadium

5.6 Specializ

6. Диаграмма модулей

7. Описание интерфейса

Выводы

Библиографиязапросы реализованные в курсовом проекте

Листинг модулей

Введение


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

Эффективность автоматизированных информационных систем в значительной степени зависит от того, насколько обеспечивается высокая скорость доступа к данным, их полнота, достоверность, непротиворечивость. Основой для функционирования автоматизированной информационной системы является система управления базами данных (СУБД). Наиболее распространение в настоящее время получили реляционные базы данных и стандартизированный структурированный язык запросов SQL (Structured Query Language).

В данной работе была спроектирована и реализована система автоматизации работы сотрудников бухгалтерии ХК АкБарс.

 

1. Краткий обзор средств решения проблемы


1.1 СУБД MS Access

Access - это функционально полная реляционная СУБД. В ней предусмотрены все необходимые вам средства для определения и обработки данных, а также для управления ими при работе с большими объемами информации. Что касается легкости использования, то Microsoft Access совершил здесь настоящий переворот, и многие для создания своих собственных баз данных и приложений обращаются именно к нему.

Система управления базами данных предоставляет вам возможность контролировать задание структуры и описание своих данных, работу с ними и организацию коллективного пользования этой информацией. СУБД также существенно увеличивает возможности и облегчает каталогизацию и ведение больших объемов хранящейся в многочисленных таблицах информации. СУБД включает в себя три основных типа функций: определение (задание структуры и описание) данных, обработка данных и управление данными. Все эти функциональные возможности в полной мере реализованы в Microsoft Access. В практике, как правило, необходимо решать и задачи с использованием электронных таблиц и текстовых процессоров. Например, после подсчета или анализа данных необходимо их представить в виде определенной формы или шаблоны. В итоге пользователю приходится комбинировать программные продукты для получения необходимого результата. В этом смысле все существенно упростят возможности, предоставляемые Microsoft Access.

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

При проектировании базы данных, в первую очередь, необходимо определить, что именно нужно хранить.

Данная СУБД была выбрана по следующим причинам:

§ простота средств реализации,

§  легкость освоения инструментарием разработчика (VBA),

§  наглядность визуализации информации.

Также «Microsoft Access» предоставляет большое количество внутренних средств по оптимизации работы проектируемого приложения. К ним относятся:

§ загрузка модулей по требованию;

§  оптимизация дерева вызовов;

§  использование файлов MDE;

§  автоматическая поддержка компилированного состояния;

§  использование библиотек Windows API;

§  индивидуальная настройка системы;

§  эффективное использование индексов;

§  встроенный оптимизатор запросов.

Система управления базами данных (СУБД) обычно поддерживает 4 основных типа отношений между таблицами:

один-к-одному (одной записи в первой таблице соответствует одна запись во второй);

один-ко-многим (одной записи в первой таблице соответствует много записей во второй);

много-к-одному (многим записям в первой таблице соответствует одна запись во второй);

много-ко-многим (одной записи в первой таблице соответствует много записей во второй и одной записи во второй таблице соответствует много записей в первой).

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

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

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

 

1.2 Язык программирования Delphi

является мощным и универсальным средством разработки приложений, RAD-оболочкой. Ее вместе с библиотекой VCL, на которой оболочка основана и написана, можно назвать действительно революционной. Сравнение с C++ Builder 4 показывает, что производительность Pascal-кода, сгенерированного Delphi, всего на 4-5% меньше, чем кода C++.

Достоинства языка программирования

Простота, скорость и эффективность Delphi объясняют ее популярность. Delphi имеет один из самых быстрых компиляторов, порождающий, тем не менее, весьма и весьма неплохой объектный код. Есть и другие достоинства: простота изучения Object Pascal; облегчающие жизнь нововведения - вроде свойств (properties); программы, написанные на Delphi, не требуется снабжать дополнительными библиотеками (в отличие от связки C++/MFC). В самом деле, VCL предоставляет удобный, легко расширяемый объектно-ориентированный интерфейс к Windows, что ни в коей мере не мешает программисту опускаться в самые глубины Windows API. Создателям оригинальных компонентов это приходится делать довольно часто, в отличие от "просто программистов". Как было сказано выше, модель программирования в Delphi - компонентная, что позволяет пользоваться компонентами, написанными другими разработчиками, даже не имея их исходного кода и уж подавно не изучая его. В Интернете есть огромное количество компонентов, значительная часть которых распространяется бесплатно. Применение компонентной модели приводит к тому, что довольно многое в поведении объектов программировать не нужно вообще, и многое, на что в других средах ушли бы недели, можно сделать за часы или даже минуты. Оно и понятно - это ведь RAD-среда. К достоинствам можно отнести очень быстрый браузер классов и мгновенный вывод подсказки автозавершения кода (code completion). Если кратко - может все. Конечно, Object Pascal накладывает определенные ограничения, но для тех вещей, для которых ее писали, Delphi подходит практически оптимально. Из понравившихся (но, разумеется, нестандартных) "улучшений", внесенных Borland в Object Pascal, хотелось бы выделить свойства (properties) и перегружаемость процедур и функций (overloading).

Недостатки языка программирования

Главный недостаток (и одновременно достоинство) - статическое присоединение (linking) библиотеки VCL и компонентов к исполняемому файлу. Справедливости ради надо сказать, что VCL можно линковать и динамически, но тогда с каждым своим приложением вам придется распространять еще и VCL, а это более 3 Мбайт. Однако если не увлекаться интерфейсными "наворотами" и использовать в программе минимально необходимое число компонентов, то исполняемый файл будет невелик. Другой недостаток (и опять же достоинство) состоит в том, что в используемой в Delphi парадигме форм (Forms) вся информация о форме, включая свойства, настройки компонентов, значения по умолчанию, хранится в exe-файле, причем не оптимальным образом. Анализ исходного кода VCL показывает, что при создании формы фактически происходит чуть ли не синтаксический разбор данных инициализации, что не может ее не замедлять. Третий недостаток, который кто-нибудь тоже может назвать достоинством, - это Object Pascal. Несмотря на простоту, эффективность и легкость в изучении, ему не хватает очень многих мощных средств C++. Разочаровала Delphi и малым числом параметров оптимизации кода. Кроме того, заметна тенденция к "разрастанию" exe-файлов, генерируемых Delphi. Так, большинство небольших проектов, разработанных в Delphi 4, при перекомпиляции в Delphi 5 "растолстели" на 40-70 Кбайт, при этом, разумеется, не обретя новой функциональности.

 

2. Системный анализ предметной области


В хоккейной команде есть игроки, каждый игрок характеризуется следующими параметрами:

Номер игрока

Номер специализации

Фамилия

Имя

Отчество

Дата рождения

Рост

Вес

Количество проведенных игр

Количество забитых шайб

Семейное положение

Город проживания

Улица

Номер дома

Номер квартиры

Дата начала игры за команду

Дата ухода из команды

Образование

У каждого игрока в команде есть своя специализация, она характеризуется следующими параметрами:

Код специализации

Наименование

Информация

Матчи хоккейной команды проходят на стадионе. Стадион характеризуется следующими параметрами:

Номер стадиона

Название стадиона

Город, в котором находится

Название улицы

Номер дома

На стадионе имеются трибуны. Трибуны характеризуются следующими параметрами:

Номер трибуны

Название трибуны

Расположение

На матчи хоккейной команды продаются билеты. Каждый билет характеризуется следующими параметрами:

Номер билета

Номер места

Стоимость билета

Дата продажи

Игроки команды получают заработную плату. Характеристики:

Номер перевода

Дата перевода

Сумма перевода

Премия

Характеристики сезона:

Номер сезона

Название сезона

Дата начала сезона

Дата конца сезона

Бюджет клуба

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

 

.1 Составление перечня атрибутов предметной области


Обозначение атрибута

Имя атрибута

Примечание

х1

Номер игрока


х2

Номер специализации


х3

Фамилия


x4

Имя


x5

Отчество


x6

Дата рождения


x7

Рост


x8

Вес


x9

Количество проведенных игр


x10

Количество забитых шайб


x11

Семейное положение


x12

Город проживания


x13

Улица


x14

Номер дома


x15

Номер квартиры


x16

Дата начала игры за команду


x17

Дата ухода из команды


x18

Образование


x19

Код специализации


x20

Наименование


x21

Информация


x22

Номер стадиона


x23

Название стадиона


x24

Город, в котором находится


x25

Название улицы


x26

Номер дома


x27

Номер трибуны


x28

Название трибуны


X29

Расположение


x30

Номер билета


x31

Номер места


x32

Стоимость билета


x33

Дата продажи


x34

Номер перевода


x35

Дата перевода


X36

Сумма перевода


X37

Премия


X38

Номер сезона


X39

Название сезона


X40

Дата начала сезона


x41

Дата конца сезона


x42

Бюджет клуба



3.2 Агрегация атрибутов, в сущности


Таблица 2

Обозначение сущности

Имя сущности

Список атрибутов

Y1

Игрок

,

Y2

Специализация

Y3

Стадион

Y4

Трибуна

Y5

Билет

Y6

Перевод заработной платы

Y7

Сезон


3.3 Определение первичных ключей


Таблица 3

Сущности

Первичные ключи

Игрок

X1 - уникальный номер игрока

Специализация

X19 - уникальный номер специализации

Стадион

X22 - уникальный номер стадиона

Трибуна

X27- уникальный номер трибуны

Билет

X30 - уникальный номер билета

Перевод заработной платы

X34 - уникальный номер перевода ЗП

Сезон

X39 - уникальный номер сезона


3.4 Нормализация сущностей


Сущности чемпионат “Сезон”, “Перевод заработной платы”, “Команда”, “Стадион”, “Специализация”, “Трибуны”, “Билет” находятся в первой нормальной форме, так как атрибуты каждой сущности можно рассматривать как неделимые элементы.

Сущность “Сезон” находится во второй нормальной форме, поскольку:

Номер сезона→ Название сезона

Номер сезона→ Дата начала сезона

Номер сезона→ Дата конца сезона

Номер сезона→ Бюджет клуба

Сущность “Перевод заработной платы”, находится во второй нормальной форме, поскольку:

Номер перевода → Дата перевода

Номер перевода → Сумма перевода

Номер перевода → Премия

Сущность “Команда”, находится во второй нормальной форме, поскольку:

Номер игрока →Фамилия

Номер игрока →Имя

Номер игрока →Отчество

Номер игрока →Дата рождения

Номер игрока →Рост

Номер игрока →Вес

Номер игрока →Количество проведенных игр

Номер игрока →Количество забитых шайб

Номер игрока →Семейное положение

Номер игрока →Город проживания

Номер игрока →Улица

Номер игрока →Номер дома

Номер игрока →Номер квартиры

Номер игрока →Дата начала игры за команду

Номер игрока →Дата ухода из команды

Номер игрока →Образование

Сущность “Стадион”, находится во второй нормальной форме, поскольку:

Номер стадиона → Название стадиона

Номер стадиона → Город, в котором находится

Номер стадиона → Название улицы

Номер стадиона → Номер дома

Сущность “Трибуны”, находится во второй нормальной форме, поскольку:

Номер трибуны → Название трибуны

Номер трибуны → Расположение

Сущность “Специализация”, находится во второй нормальной форме, поскольку:

Код специализации → Наименование

Код специализации → Информация

Сущность “Трибуны”, находится во второй нормальной форме, поскольку:

Номер трибуны → Название трибуны

Номер трибуны → Расположение

Сущность “Билет”, находится во второй нормальной форме, поскольку:

Номер билета→ Номер места

Номер билета →Стоимость билета

Номер билета →Дата продажи

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

3.5 Графическое представление сущностей


 

 

 

3.6 Определение связей


Таблица 4

Сущность 1

Сущность 2

Тип связи

Команда

Перевод ЗП

 1:М

Сезон

Команда

 М: М

Стадион

Трибуны

 1:М

Трибуны

Билет

 1:M

Команда

Специализация

 1:M

Сезон

Билет

 1:M

 

4. Проектирование концептуальной модели предметной области

 

.1 Преобразование сущностей в отношения


Преобразование сущности “Команда” в отношение “Команда”:

 

Преобразование сущности “Специализация” в отношение “Специализация”

 

Преобразование сущности “Стадион” в отношение “Стадион”:

 

Преобразование сущности “Билет” в отношение “Билет”:

 

Преобразование сущности “Трибуны” в отношение “Трибуны”:

 

Преобразование сущности “Сезон” в отношение “Сезон”:

 

Преобразование сущности “Перевод заработной платы” в отношение “Перевод заработной платы”:

 

4.2 Установление свойств атрибутов


Свойства атрибутов отношения “Команда”

Имя поля

Тип данных

Номер игрока

Числовой

Фамилия

Текстовый

Имя

Текстовый

Отчество

Текстовый

Номер специализации

Числовой

Количество проведенных игр

Числовой

Количество забитых шайб

Числовой

Семейное положение

Текстовый

Город проживания

Текстовый

Текстовый

Номер дома

Числовой

Номер квартиры

Числовой

Дата начала игры за команду

Дата/Время

Дата ухода из команды

Дата/Время

Образование

Текстовый


Свойства атрибутов отношения “Специализация”

Имя поляТип данных


Код специализации

Числовой

Наименование специализации

Текстовый

Информация

Текстовый


Свойства атрибутов отношения “Сезон”

Имя поляТип данных


Номер сезона

Числовой

Название сезона

Текстовый

Дата начала сезона

Дата/Время

Дата конца сезона

Дата/Время

Бюджет клуба

Числовой

Свойства атрибутов отношения “Перевод заработной платы”

Имя поляТип данных


Номер перевода

Числовой

Номер игрока

Числовой

Дата перевода

Дата/Время

Сумма перевода

Числовой

Премия

Числовой


Свойства атрибутов отношения “Трибуны”

Имя поляТип данных


Номер трибуны

Числовой

Название трибуны

Текстовый

Расположение

Текстовый


Свойства атрибутов отношения “Билет”

Имя поляТип данных


Номер билета

Числовой

Номер места

Числовой

Стоимость билета

Числовой

Дата продажи

Дата/Время


Свойства атрибутов отношения “Стадион”

Имя поляТип данных


Номер стадиона

Числовой

Название стадиона

Текстовый

Город, в котором находится

Текстовый

Название улицы

Текстовый

Номер дома

Числовой

 

4.3 Определение внешних ключей


Таблица 5

Дочернее отношение

Внешний ключ

Тип

NULL

Ссылка

Примечание

Билеты

Номер сезона

int

NotNULL

Сезон, номер сезона

добавление

Билеты

Номер трибуны

int

NotNULL

Трибуны, номер трибуны

добавление

Трибуны

Номер стадиона, в котором находится трибуна

int

NotNULL

Стадион, номер стадиона

добавление

Перевод заработной платы

Номер сезона

int

NotNULL

Сезон, номер сезона

добавление

Перевод заработной платы

Номер игрока

int

NotNULL

Команда, Номер игрока

добавление

Команда

Номер специализации

int

NotNULL

Специализация, код специализации

добавление

 

.4 Реализация связи типа М: М


Между отношениями “Сезон” и “Команда” существует связь многие-ко-многим, поэтому введем новое связующее отношение вида:


Таблица 6

Имя атрибута

Тип

NULL

Ссылка

Код сезоны

int

Not NULL

Сезон, Номер сезона

Код игрока

int

Not NULL

Команда, Номер игрока










4.5 Графическое изображение концептуальной модели предметной области


 

5. Состав модулей и их описание

 

.1 Main


В данном модуле предусмотрено выполнение SQL запросов. Для отображения результатов запроса был размещен компонент DBGrid,для выполнения SQL запросов - компонент ADO Query ,для установления соединения с базой данных - компонент AdoConnection.

5.2 DataMod


В данном модуле осуществляется установление связи с базой данных с помощью компонента ADO Connection.После установления соединения с базой данных в модуле были размещены 8 компонентов Adotable и 8 компонентов Data Source для каждой таблицы в базе данных.

 

.3 Players


В данном модуле реализована возможность работы с таблицами: “Команда”, “Сезоны”, “Перевод заработной платы”. Предусмотрены возможности: добавления, удаления, редактирования данных для каждой таблицы. Для отображения информации в каждой из таблиц служит компонент DBGrid.Добавление во всех вышеперечисленных таблицах реализовано с помощью метода компонента ADOTable - Append.Удаление реализовано помощью метода компонента ADOTable - Delete.

5.4 Seasons


В данном модуле реализована возможность работы с таблицей: “Сезон”.

Предусмотрены возможности: добавления, удаления, редактирования данных.

Для отображения информации в таблице служит компонент DBGrid,так как добавление данных реализовано с помощью SQL запроса, был размещен компонент ADOQuery.

Удаление реализовано помощью метода компонента ADOTable - Delete.

5.5 Stadium


В данном модуле реализована возможность работы с таблицами: “Стадион”, “Трибуны”, «Билеты”. Предусмотрены возможности: добавления, удаления, редактирования данных. Для отображения информации в каждой из таблиц служит компонент DBGrid.Добавление во всех вышеперечисленных таблицах реализовано с помощью метода компонента ADOTable - Append.Удаление реализовано помощью метода компонента ADOTable - Delete.

5.6 Specializ


В данном модуле реализована возможность работы с таблицей: “Специализация”. Предусмотрены возможности: добавления, удаления, редактирования данных.

Для отображения информации в таблице служит компонент DBGrid,так как добавление данных реализовано с помощью SQL запроса, был размещен компонент ADOQuery.

Удаление реализовано помощью метода компонента ADOTable - Delete.

6. Диаграмма модулей


 

7. Описание интерфейса

база данное программа интерфейс

При запуске программы, появляется форма:


На данной форме предусмотрено выполнение SQL -запросов.

Форма “Сезоны”:

Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Заполнить данные для каждого атрибута в соответствующий ему компонент Edit.

)Нажать на кнопку “Добавление”

)Далее нажать на кнопку “Обновить содержимое таблицу”

Для повторного ввода данных нужно нажать на кнопку “Очистить содержимое редакторов” или же очистить их вручную.

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Вкладка “Игроки”:


Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Ввести в таблицу DBGrid нужные значения.

)Нажать на кнопку “Добавление”

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Вкладка “сезоны”:


Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Ввести в таблицу DBGrid нужные значения.

)Нажать на кнопку “Добавление”

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Форма “специализация игроков”:


Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Заполнить данные для каждого атрибута в соответствующий ему компонент Edit.

)Нажать на кнопку “Добавление”

)Далее нажать на кнопку “Обновить содержимое таблицу”

Для повторного ввода данных нужно нажать на кнопку “Очистить содержимое редакторов” или же очистить их вручную.

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Вкладка “перевод заработной платы”:


Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Ввести в таблицу DBGrid нужные значения.

)Нажать на кнопку “Добавление”

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Вкладка “стадион”:

Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Заполнить данные для каждого атрибута в соответствующий ему компонент DBEdit.

)Нажать на кнопку “Добавление”

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Вкладка “трибуны”:


Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Заполнить данные для каждого атрибута в соответствующий ему компонент DBEdit.

)Нажать на кнопку “Добавление”

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Вкладка “Билеты”:


Для добавления записей в данную таблицу необходимо проделать следующие действия:

)Заполнить данные для каждого атрибута в соответствующий ему компонент DBEdit.

)Нажать на кнопку “Добавление”

Для того чтобы удалить запись, нужно выбрать удаляемую запись и нажать на кнопку “Удаление”.

Для редактирования записи нужно проделать следующие действия:

)Выделить нужную запись.

)После изменения данных нажать на кнопку “Сохранить изменения”.

Выводы


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

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

Библиография


1.   Емалетдинова Л.Ю, Владимирова Н.Л., Новикова С.В. «Структурированный язык запросов SQL к базам данных в многопользовательских системах: Учебное пособие для студентов технической кибернетики и информатики». Казань: Изд-во Казан. гос. техн. ун-та, 2002, 59 стр.

2.      Емалетдинова Л.Ю, Валитова Н.Л., М.А. Разина «Проектирование программного и информационного обеспечения автоматизированных информационных систем». Казань: Изд-во Казан. гос. техн. ун-та, 2005, 81 стр.

SQL запросы реализованные в курсовом проекте


Добавление данных в таблицу “Специализация”

begin.close;.SQL.Clear;.SQL.Text := (

'insert into специализация([Код специализации],[Наименование специализации],[Информация]) values(' + Edit1.Text + ' , ' + char(39) + Edit2.Text + char(39) + ' , ' + char(39) + Edit3.Text + char(39) + ')');

ADOQuery1.Execsql;

Добавление данных в таблицу “Сезон”

begin.Close;.SQL.Clear;.SQL.Text := (

'insert into сезон([Номер сезона],[Название сезона],[Дата начала сезона],[Дата конца сезона],[Бюджет клуба]) values(' + Edit1.Text + ' , ' + Edit2.Text + ' , ' + char(39) + Edit3.Text + char(39) + ',' + char(39) + Edit4.Text + char(39) + ',' + char(39) + Edit5.Text + char(39) + ')');

ADOQuery1.Execsql;

По номеру сезона определить

)Сумму продаж от билетов в сезоне:

begin.Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select sum([Стоимость билета]) from [Билеты]where [Номер сезона]=' +

NumberOfSeason.Text);.Open;.Active := True;;

)Количество проданных билетов в сезоне:

begin.Active := False;.Close;.SQL.Clear;.SQL.Add('Select count(*) from [Билеты]where [Номер сезона]=' +.Text);.Open;.Active := True;;

)Суммарная зарплата игроков за определенный сезон:

begin.Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select sum([сумма перевода]) from [Перевод заработной платы]where [Номер сезона]='

+ NumberOfSeason.Text);.Open;.Active := True;;

) Суммарная премия игроков за определенный сезон:

begin.Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select sum([премия]) from [Перевод заработной платы]where [Номер сезона]='

+ NumberOfSeason.Text);.Open;.Active := True;;

По номеру игрока выяснить

) Список сезонов, в которых играл определенный игрок:

begin.Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select [Код сезона],[Номер игрока],[Фамилия],[Имя],[Отчество] from сезоны,команда where сезоны.[код игрока]=команда.[номер игрока] and команда.[номер игрока]=' + Edit1.Text);

ADOQuery1.Open;.Active := True;;

) Количество сезонов, в которых играл определенный игрок:

begin.Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select count(*) from сезоны,команда where сезоны.[код игрока]=команда.[номер игрока] and команда.[номер игрока]=' + Edit1.Text);

ADOQuery1.Open;.Active := True;;

) Название специализации игрока:

begin

ADOQuery1.Active := False;

ADOQuery1.Close;.SQL.Clear;1.SQL.Add(

'Select [Наименование специализации],[Номер игрока],[Фамилия],[Имя],[Отчество] from специализация,команда where специализация.[код специализации]=команда.[номер игрока] and команда.[номер игрока]=' + Edit1.Text);

ADOQuery1.Open;.Active := True;;

 

Листинг модулей

Main;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Spin, Menus, DB, ADODB, Grids, DBGrids, StdCtrls, seasons, players,, Specializ;= class(TForm): TMainMenu;: TMenuItem;: TMenuItem;: TDBGrid;: TADOConnection;: TADOQuery;: TDataSource;: TGroupBox;: TMenuItem;: TButton;: TEdit;: TButton;: TButton;: TButton;: TMenuItem;: TButton;: TEdit;: TButton;: TButton;N1Click(Sender: TObject);N2Click(Sender: TObject);N3Click(Sender: TObject);SummProdClick(Sender: TObject);KolBilProdClick(Sender: TObject);SumZPClick(Sender: TObject);SumPremClick(Sender: TObject);N4Click(Sender: TObject);Button1Click(Sender: TObject);Button2Click(Sender: TObject);Button3Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TMainForm;

{$R *.dfm}TMainForm.SummProdClick(Sender: TObject);((NumberOfSeason.Text = 'Введите номер сезона') or

(NumberOfSeason.Text = '')) then('Введите номер сезона').Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select sum([Стоимость билета]) from [Билеты]where [Номер сезона]=' +.Text);.Open;.Active := True;;;TMainForm.KolBilProdClick(Sender: TObject);((NumberOfSeason.Text = 'Введите номер сезона') or

(NumberOfSeason.Text = '')) then('Введите номер сезона').Active := False;.Close;.SQL.Clear;.SQL.Add('Select count(*) from [Билеты]where [Номер сезона]=' +.Text);.Open;.Active := True;;;TMainForm.SumZPClick(Sender: TObject);((NumberOfSeason.Text = 'Введите номер сезона') or

(NumberOfSeason.Text = '')) then('Введите номер сезона').Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select sum([сумма перевода]) from [Перевод заработной платы]where [Номер сезона]='

+ NumberOfSeason.Text);.Open;.Active := True;;;TMainForm.SumPremClick(Sender: TObject);((NumberOfSeason.Text = 'Введите номер сезона') or

(NumberOfSeason.Text = '')) then('Введите номер сезона').Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select sum([премия]) from [Перевод заработной платы]where [Номер сезона]='

+ NumberOfSeason.Text);.Open;.Active := True;;;TMainForm.Button1Click(Sender: TObject);((Edit1.Text = '') or (Edit1.Text = 'Введите номер игрока')) then('Введите номер игрока').Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select [Код сезона],[Номер игрока],[Фамилия],[Имя],[Отчество] from сезоны,команда where сезоны.[код игрока]=команда.[номер игрока] and команда.[номер игрока]=' + Edit1.Text);

ADOQuery1.Open;.Active := True;;;TMainForm.Button2Click(Sender: TObject);((Edit1.Text = '') or (Edit1.Text = 'Введите номер игрока')) then('Введите номер игрока').Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select count(*) from сезоны,команда where сезоны.[код игрока]=команда.[номер игрока] and команда.[номер игрока]=' + Edit1.Text);

ADOQuery1.Open;.Active := True;;;TMainForm.Button3Click(Sender: TObject);((Edit1.Text = '') or (Edit1.Text = 'Введите номер игрока')) then('Введите номер игрока').Active := False;.Close;.SQL.Clear;.SQL.Add(

'Select [Наименование специализации],[Номер игрока],[Фамилия],[Имя],[Отчество] from специализация,команда where специализация.[код специализации]=команда.[номер игрока] and команда.[номер игрока]=' + Edit1.Text);

ADOQuery1.Open;.Active := True;;;TMainForm.N1Click(Sender: TObject);.Show;;TMainForm.N2Click(Sender: TObject);.Show;;TMainForm.N3Click(Sender: TObject);.Show;;TMainForm.N4Click(Sender: TObject);.Show;;.DataMod;, Classes, DB, ADODB;= class(TDataModule): TADOConnection;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TADOTable;: TADOTable;: TADOTable;: TADOTable;: TADOTable;: TADOTable;: TADOTable;: TADOTable;

{ Private declarations }

{ Public declarations };: TDataModule1;

{$R *.dfm}. unit Players;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ComCtrls, datamod, Grids, DBGrids, ExtCtrls, StdCtrls, Mask, DBCtrls;= class(TForm): TPageControl;

Игроки: TTabSheet;: TGroupBox;: TButton;: TButton;: TButton;

Сезоны: TTabSheet;: TDBGrid;: TGroupBox;: TButton;: TButton;: TButton;: TTabSheet;: TDBGrid;: TGroupBox;: TButton;: TButton;: TButton;: TDBGrid;Button1Click(Sender: TObject);Button2Click(Sender: TObject);Button3Click(Sender: TObject);Button4Click(Sender: TObject);Button5Click(Sender: TObject);Button6Click(Sender: TObject);Button7Click(Sender: TObject);Button8Click(Sender: TObject);Button9Click(Sender: TObject);Button10Click(Sender: TObject);Button12Click(Sender: TObject);Button11Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm2;

{$R *.dfm}TForm2.Button10Click(Sender: TObject);.TComand.Append;;TForm2.Button11Click(Sender: TObject);Datamodule1.TComand.modified then.TComand.Post;;TForm2.Button12Click(Sender: TObject);.TComand.Delete;('Таблица пуста!!!');;;TForm2.Button1Click(Sender: TObject);.TZarplata.Append;;TForm2.Button2Click(Sender: TObject);.TZarplata.Delete;('Таблица пуста!!!');;;TForm2.Button3Click(Sender: TObject);Datamodule1.TZarplata.modified then.TZarplata.Post;;TForm2.Button4Click(Sender: TObject);.TSpec.Append;;TForm2.Button5Click(Sender: TObject);.TSpec.Delete;('Таблица пуста!!!');;;TForm2.Button6Click(Sender: TObject);Datamodule1.TSpec.modified then.TSpec.Post;;TForm2.Button7Click(Sender: TObject);.TSeasons.Append;;TForm2.Button8Click(Sender: TObject);.TSeasons.Delete;('Таблица пуста!!!');;;TForm2.Button9Click(Sender: TObject);Datamodule1.TSeasons.modified then.TSeasons.Post;;. unit Seasons;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, datamod, Grids, DBGrids, StdCtrls, Mask, DBCtrls, DB, ADODB;= class(TForm): TDBGrid;: TButton;: TButton;: TGroupBox;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TButton;: TADOConnection;: TADOQuery;: TDataSource;: TEdit;: TEdit;: TEdit;: TEdit;: TEdit;: TButton;: TButton;Button2Click(Sender: TObject);Button3Click(Sender: TObject);Button4Click(Sender: TObject);Button1Click(Sender: TObject);Button5Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm1;

{$R *.dfm}TForm1.Button1Click(Sender: TObject);.Text := '';.Text := '';.Text := '';.Text := '';.Text := '';;TForm1.Button2Click(Sender: TObject);.TSeason.Delete;('Таблица пуста!!!');;;TForm1.Button3Click(Sender: TObject);datamodule1.TSeason.Modified then.TSeason.Post;;TForm1.Button4Click(Sender: TObject);((Edit1.Text <> '') and (Edit2.Text <> '') and (Edit3.Text <> '') and

(Edit4.Text <> '') and (Edit5.Text <> '')) then.Close;.SQL.Clear;.SQL.Text := (

'insert into сезон([Номер сезона],[Название сезона],[Дата начала сезона],[Дата конца сезона],[Бюджет клуба]) values(' + Edit1.Text + ' , ' + Edit2.Text + ' , ' + char(39) + Edit3.Text + char(39) + ',' + char(39) + Edit4.Text + char(39) + ',' + char(39) + Edit5.Text + char(39) + ')');

ADOQuery1.Execsql;('Ошибка,вы заполнили не все поля!!!');

end;TForm1.Button5Click(Sender: TObject);.TSeason.Close;.TSeason.open;;. unit Specializ;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, datamod, Grids, DBGrids, StdCtrls, Mask, DBCtrls, DB, ADODB;= class(TForm): TDBGrid;: TLabel;: TLabel;: TLabel;: TButton;: TButton;: TADOConnection;: TADOQuery;: TEdit;: TEdit;: TEdit;: TButton;: TDataSource;: TButton;: TButton;Button3Click(Sender: TObject);Button2Click(Sender: TObject);Button4Click(Sender: TObject);Button1Click(Sender: TObject);Button5Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TSpecial;

{$R *.dfm}TSpecial.Button1Click(Sender: TObject);.TSpec.close;.TSpec.Open;;TSpecial.Button2Click(Sender: TObject);datamodule1.TSpec.Modified then.TSpec.Post;;TSpecial.Button3Click(Sender: TObject);.TSpec.Delete;('Таблица пуста!!!');;;TSpecial.Button4Click(Sender: TObject);((Edit1.Text <> '') and (Edit2.Text <> '') and (Edit3.Text <> '')) then.close;.SQL.Clear;.SQL.Text := (

'insert into специализация([Код специализации],[Наименование специализации],[Информация]) values(' + Edit1.Text + ' , ' + char(39) + Edit2.Text + char(39) + ' , ' + char(39) + Edit3.Text + char(39) + ')');

ADOQuery1.Execsql;('Ошибка,вы заполнили не все поля!!!');

end;TSpecial.Button5Click(Sender: TObject);.Text := '';.Text := '';.Text := '';;. unit Stadium;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ComCtrls, datamod, Grids, DBGrids, StdCtrls, Mask, DBCtrls;= class(TForm): TPageControl;: TTabSheet;: TTabSheet;: TTabSheet;: TDBGrid;: TDBGrid;: TDBGrid;: TGroupBox;: TButton;: TButton;: TButton;: TGroupBox;: TButton;: TButton;: TButton;: TGroupBox;: TButton;: TButton;: TButton;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TLabel;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TLabel;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;Button1Click(Sender: TObject);Button2Click(Sender: TObject);Button3Click(Sender: TObject);Button6Click(Sender: TObject);Button5Click(Sender: TObject);Button4Click(Sender: TObject);Button8Click(Sender: TObject);Button7Click(Sender: TObject);Button9Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm3;

{$R *.dfm}TForm3.Button1Click(Sender: TObject);.TStadium.Append;;TForm3.Button2Click(Sender: TObject);.TStadium.Delete;('Таблица пуста!!!');;;TForm3.Button3Click(Sender: TObject);datamodule1.TStadium.Modified then.TStadium.Post;;TForm3.Button4Click(Sender: TObject);datamodule1.TTribun.Modified then.TTribun.Post;;TForm3.Button5Click(Sender: TObject);.TTribun.Delete;('Таблица пуста!!!');;;TForm3.Button6Click(Sender: TObject);.TTribun.Append;;TForm3.Button7Click(Sender: TObject);.TTickets.Delete;('Таблица пуста!!!');;;TForm3.Button8Click(Sender: TObject);.TTickets.Append;;TForm3.Button9Click(Sender: TObject);datamodule1.TTickets.Modified then.TTickets.Post;;.

Похожие работы на - Проект и реализация системы автоматизации работы сотрудников бухгалтерии ХК АкБарс

 

Не нашел материал для своей работы?
Поможем написать качественную работу
Без плагиата!