">
Информатика Сети ЭВМ и телекоммуникаций
Информация о работе

Тема: Разработка интрасетевого приложения для ТГТУ

Описание: Аналитическая часть. Обзор интрасети, история появления интрасети и приложений. Анализ входной и выходной информации. Постановка задачи. Разработка сетевой архитектуры предприятия. Разработка общей базы данных. Разработка пользовательского интерфейса.
Предмет: Информатика.
Дисциплина: Сети ЭВМ и телекоммуникаций.
Тип: Курсовая работа
Дата: 19.08.2012 г.
Язык: Русский
Скачиваний: 90
Поднять уникальность

Похожие работы:

Курсовая работа по дисциплине

«Интрасетевые приложения в АУ»

на тему «Разработка интрасетевого приложения для «ТГТУ»

2012

Содержание

Введение…………………………………………………………………………3

1. Аналитическая часть.…………………………………………………………4

1.1. Обзор интрасети, история появления интрасети и приложений……..4

1.2. Анализ входной и выходной информации……………………………..5

1.3. Постановка задачи……………………………………………………….5

2. Проектная часть……………………………………………………………….7

2.1. Разработка сетевой архитектуры предприятия………………………...7

2.2. Разработка общей базы данных…………………………………………8

2.3. Разработка пользовательского интерфейса с использованием языков запроса SQL …………………………………………………………………10

2.4. Разработка политики безопасности……………………………………12

3. Заключение……………………………………………………………………17

Список используемой литературы……………………………………………..18

Введение

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

1. Аналитическая часть

1.1 Обзор интрасети, история появления интрасети и приложений

Интранет (англ. Intranet, также употребляется термин интрасеть) — в отличие от сети Интернет, это внутренняя частная сеть организации. Как правило, Интранет — это Интернет в миниатюре, который построен на использовании протокола IP для обмена и совместного использования некоторой части информации внутри этой организации. Это могут быть списки сотрудников, списки телефонов партнёров и заказчиков. Чаще всего под этим термином имеют в виду только видимую часть Интранет — внутренний веб-сайт организации. Основанный на базовых протоколах HTTP и HTTPS и организованный по принципу клиент-се?рвер, интранет-сайт доступен с любого компьютера через браузер. Таким образом, Интранет — это «частный» Интернет, ограниченный виртуальным пространством отдельно взятой организации. Intranet допускает использование публичных каналов связи, входящих в Internet, (VPN), но при этом обеспечивается защита передаваемых данных и меры по пресечению проникновения извне на корпоративные узлы.

Приложения в Intranet основаны на применении Internet-технологий и в особенности Web-технологии: гипертекст в формате HTML, протокол передачи гипертекста HTTP и интерфейс се?рверных приложений CGI. Составными частями Intranet являются Web-се?рверы для статической или динамической публикации информации и браузеры для просмотра и интерпретации гипертекста.

Как утверждает Стивен Лотон (Stephen Lawton), термин «интранет» впервые появился 24 апреля 1995 года в журнале «Digital News & Review», техническим редактором которого он являлся, в его статье под заголовком «Intranets fuel growth of Internet access tools».

Интранет построен на базе тех же понятий и технологий, которые используются для Интернета, такие как архитектура клиент-сервер и стек протоколов Интернет (TCP/IP). В Интранете встречаются все из известных интернет-протоколов, например, протоколы HTTP (веб-службы), SMTP (электронная почта), и FTP (передача файлов). Интернет-технологии часто используются для обеспечения современными интерфейсами функции информационных систем, размещающих корпоративные данные.

Интранет можно представить как частную версию Интернета, или как частное расширение Интернета, ограниченного организацией с помощью брандмауэра. Первые интранет-веб-сайты и домашние страницы начали появляться в организациях в 1990—1991. Однако по неофициальным данным, термин Интранет впервые стал использоваться в 1992 году в таких учреждениях, как университеты и корпорации, работающие в технической сфере.

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

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

1.2. Анализ входной и выходной информации

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

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

1.3. Постановка задачи

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

- обеспечивать получение общих и детализированных отчетов по итогам работы;

- позволять легко определять тенденции изменения важнейших показателей;

- обеспечивать получение информации, критической по времени, без существенных задержек;

- выполнять точный и полный анализ данных.

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

Современные СУБД в основном являются приложениями Windows, так как данная среда позволяет более полно использовать возможности персональной ЭВМ. Среди наиболее ярких представителей систем управления базами данных можно отметить: Lotus Approach, Microsoft Access, Borland dBase, Borland Paradox, Microsoft Visual FoxPro, Microsoft Visual Basic, а также баз данных Microsoft SQL Server и Oracle, используемые в приложениях, построенных по технологии «клиент-сервер». Фактически, у любой современной СУБД существует аналог, выпускаемый другой компанией, имеющий аналогичную область применения и возможности, любое приложение способно работать со многими форматами представления данных, осуществлять экспорт и импорт данных благодаря наличию большого числа конвертеров. Общепринятыми, также, являются технологи, позволяющие использовать возможности других приложений, например, текстовых процессоров, пакетов построения графиков и т.п., и встроенные версии языков высокого уровня (чаще – диалекты SQL или VBA) и средства визуального программирования интерфейсов разрабатываемых приложений. Поэтому уже не имеет существенного значения на каком языке и на основе какого пакета написано конкретное приложение, и какой формат данных в нем используется.

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

2. Проектная часть

2.1. Разработка сетевой архитектуры предприятия

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

Решение функциональных задач ИСЭ и различных подсистем осуществляется за счет рационального выбора и эффективного использования технического обеспечения. При его выборе также необходимо помнить что:

- целью функционирования комплекса технических средств является обеспечение решения соответствующих задач подсистемы;

- АСУ является человеко-машинной системой, что необходимо учитывать при создании комплекса технических средств;

- затраты на совершенствование технических средств должны быть соизмеримы с экономическими затратами;

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

Наиболее полно перечисленным требованиям отвечает комплекс технических средств на базе персонального компьютера (ПК), а наиболее дешевым, распространенным и доступным ПК является IBM-совместимый ПК на процессорах формы Intel или его клонах.

Персональные компьютеры фирмы IBM на базе 8-разрядного процессора фирмы Intel I8088, с 64 кбайт RAM, дисководом и встроенной версией языка BASIC начали выпускаться с 1981 года. Занимавшая первое место на рынке больших вычислительных систем, фирма IBM со своим персональным компьютером, основанном на принципе открытой архитектуры, быстро заняла лидирующее положение на рынке ПК. Открытость архитектуры IBM PS позволила разработчикам программных и технических средств обеспечить платформу разнообразными перифирийными устройствами и многочисленными приложениями. Что зачастую предопределяло выбор потребителя и сделало в кратчайшие сроки эти ПК наиболее популярными.

В настоящее время линия ПК, базирующаяся на процессорах Intel и операционной системе Windows XX - Windows NT, получившая название «платформа WINTEL», претендует на роль единой платформы для персональных компьютеров, рабочих станций и файловых серверов.

2.2. Разработка общей базы данных

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

Целью разработки любой базы данных является хранение и использование информации о какой-либо предметной области. Для реализации этой цели имеются следующие инструменты:

1) Реляционная модель данных - удобный способ представления данных предметной области;

2) Язык SQL - универсальный способ манипулирования такими данными.

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

- Сама предметная область;

- Модель предметной области;

- Логическая модель данных;

- Физическая модель данных;

- Собственно база данных и приложения.

Предметная область - это часть реального мира, данные о которой мы хотим отразить в базе данных. Например, в качестве предметной области можно выбрать бухгалтерию какого-либо предприятия, отдел кадров, банк, магазин и т.д. Предметная область бесконечна и содержит как существенно важные понятия и данные, так и малозначащие или вообще не значащие данные. Так, если в качестве предметной области выбрать учет товаров на складе, то понятия "накладная" и "счет-фактура" являются существенно важными понятиями, а то, что сотрудница, принимающая накладные, имеет двоих детей - это для учета товаров неважно. Однако, с точки зрения отдела кадров данные о наличии детей являются существенно важными. Таким образом, важность данных зависит от выбора предметной области.[5]

Модель предметной области. Модель предметной области - это наши знания о предметной области. Знания могут быть как в виде неформальных знаний в мозгу эксперта, так и выражены формально при помощи каких-либо средств. В качестве таких средств могут выступать текстовые описания предметной области, наборы должностных инструкций, правила ведения дел в компании и т.п. Опыт показывает, что текстовый способ представления модели предметной области крайне неэффективен. Гораздо более информативными и полезными при разработке баз данных являются описания предметной области, выполненные при помощи специализированных графических нотаций. Имеется большое количество методик описания предметной области. Модель предметной области описывает скорее процессы, происходящие в предметной области и данные, используемые этими процессами. От того, насколько правильно смоделирована предметная область, зависит успех дальнейшей разработки приложений.

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

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

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

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

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

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

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

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

2.3. Разработка пользовательского интерфейса с использованием языков запроса SQL

При писании программного продукта для выбора студентов из базы данных по определенным критериям использовался язык запросов SQL, так как этот язык используется Delphi и Access.

SQL символизирует собой Структурированный Язык Запросов. Это - язык, который дает возможность создавать и работать в реляционных базах данных, являющихся наборами связанной информации, сохраняемой в таблицах.

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

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

- язык манипулирования данными (Data Manipulation Language, DML);

- язык определения данных (Data Definition Language, DDL);

- язык управления данными (Data Control Language, DCL).

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

Язык манипулирования данными используется, как это следует из его названия, для манипулирования данными в таблицах баз данных. Он состоит из 4 основных команд:

SELECT (выбрать)

INSERT (вставить)

UPDATE (обновить)

DELETE(удалить)

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

CREATE DATABASE (создать базу данных);

CREATE TABLE (создать таблицу);

ALTER DATABASE (модифицировать базу данных);

ALTER TABLE (модифицировать таблицу);

DROP DATABASE (удалить базу данных);

DROP TABLE (удалить таблицу);

DROP INDEX (удалить индекс);

DROP PROCEDURE (удалить сохраненную процедуру).

Язык управления данными используется для управления правами доступа к данным и выполнением процедур в многопользовательской среде. Более точно его можно назвать “язык управления доступом”. Он состоит из двух основных команд: GRANT (дать права), REVOKE (забрать права)

С точки зрения прикладного интерфейса существуют две разновидности команд SQL:

- интерактивный SQL;

- встроенный SQL.

Интерактивный SQL используется в специальных утилитах (типа WISQL или DBD), позволяющих в интерактивном режиме вводить запросы с использованием команд SQL, посылать их для выполнения на сервер и получать результаты в предназначенном для этого окне.

Встроенный SQL используется в прикладных программах, позволяя им посылать запросы к серверу и обрабатывать полученные результаты, в том числе комбинируя set-ориентированный и record-ориентированный подходы.

Наиболее важной командой языка манипулирования данными является команда SELECT. Операция выборки позволяет получить все строки (записи) либо часть строк одной таблицы.

К логическим операторам относятся известные операторы AND, OR, NOT, позволяющие выполнять различные логические действия: логическое умножение (AND, “пересечение условий”), логическое сложение (OR, “объединение условий”), логическое отрицание (NOT, “отрицание условий”). В наших примерах мы уже применяли оператор AND. Использование этих операторов позволяет гибко “настроить” условия отбора записей. Оператор AND означает, что общий предикат будет истинным только тогда, когда условия, связанные по “AND”, будут истинны.

Оператор OR означает, что общий предикат будет истинным, когда хотя бы одно из условий, связанных по “OR”, будет истинным. Оператор NOT означает, что общий предикат будет истинным, когда условие, перед которым стоит этот оператор, будет ложным. В одном предикате логические операторы выполняются в следующем порядке: сначала выполняется оператор NOT, затем - AND и только после этого - оператор OR. Для изменения порядка выполнения операторов разрешается использовать скобки.

Порядок выводимых строк может быть изменен с помощью опционального (дополнительного) предложения ORDER BY в конце SQL-запроса.

Способ упорядочивания определяется дополнительными зарезервированными словами ASC и DESC. Способом по умолчанию - если ничего не указано - является упорядочивание “по возрастанию” (ASC). Если же указано слово “DESC”, то упорядочивание будет производиться “по убыванию”.

2.4. Разработка политики безопасности

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

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

Навигационный способ доступа даёт возможность осуществлять следующие операции:

- сортировка записей;

- навигация по набору данных;

- редактирование записей;

- вставка и удаление записей;

- фильтрация записей;

- поиск записей.

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

- перевести набор данных в редактирование;

- изменить значение полей записи;

- подтвердить изменения или отказаться от них.

Метод Insert переводит набор данных в режим вставки и добавляет к нему новую пустую запись. Для добавления записи нужно:

- перевести набор данных в режим записи;

- задать значение полей новой записи;

- подтвердить изменения или отказаться от них.

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

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

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

Для сортировки по нескольким полям нужно создавать индекс, включающий эти поля. Направление сортировки определяется параметром ixDescending текущего индекса, по умолчанию он выключен, и упорядочивание выполняется в порядке возрастания значений. Если для индекса признак ixDescending включен, то сортировка выполняется в порядке убывания значений. Поля, по которым сортируются записи, устанавливаются через свойств IndexName.

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

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

- Процедура First – установка на первую строку;

- Процедура Next – установка на следующую строку;

- Процедура Last – установка на последнюю строку;

- Процедура Prior – установка на предыдущую строку.

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

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

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

- по выражению;

- по диапазону.

По умолчанию фильтрация записей не ведётся, и набор данных Table содержит все записи связанной с ним таблицы БД, а в набор данных Query включаются все записи, удовлетворяющие SQL-запросу, содержащемуся в свойстве SQL. Фильтрация похожа на SQL–запросы, но является менее мощным средством. По сравнению с SQL–запросами фильтрация менее эффективна, так как ограничивается количество записей, видимых в наборе.

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

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

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

- имена полей таблицы;

- литералы;

- операции сравнения;

- арифметические операции;

- логические операции;

- круглые и квадратные скобки.

Если имя поля содержит пробелы, то его заключают в квадратные скобки. Имена переменных в выражении фильтра использовать нельзя. Если в выражении фильтра требуется включить значение переменной или свойства какого-либо компонента, то это значение должно быть преобразовано в строковый тип. Операции сравнения представляют собой обычные отношения <,>,=,<=,>=,<>. Арифметическими являются операции +, -,* и /. В качестве логических операций можно использовать AND, OR и NOT. Круглые скобки применяются для изменения порядка выполнения арифметических и логических операций.

Набор данных Table допускается два способа задания условии фильтрации: су помощью выражения фильтра Filter и в обработчике события OnFilterRecord.

В случае набора данных Query для записей можно использовать: SQL-запрос, обработчик событияOnFilterRecord, выражения фильтра.

При фильтрации по диапазону в набор данных включаются записи, значения полей которых попадают в заданный диапазон, т.е. условием фильтрации является выражение вида «значение>нижняя граница AND значение < верхней границы». Такая фильтрация применяется к наборам данных Table.

Достоинство фильтрации по диапазону является высокая скорость обработки записей. В отличие от фильтрации по выражению, когда последовательно просматриваются все записи таблицы, фильтрация по диапазону ведётся индексно-последовательным методом, поэтому этот способ фильтрации применим только для индексированных полей. Индекс поля, диапазон которого задан как текущий с помощью свойства IndexName или IndexFieldName. Если текущий индекс не установлен, то по умолчанию используется главный индекс.

Для включения и выключения фильтрации по диапазону применяются методы ApplyRange и CancelRange. Первый из них активизирует фильтрацию, а другой - деактивизирует. Предварительно для индексного поля или полей, по которому выполняется фильтрация, следует задать диапазон допустимых значений. Когда одна из границ диапазона не задана, то диапазон открыт, то есть нижняя граница становится равной минимально возможному, а верхняя граница – максимально возможному значению этого поля.

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

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

Для поиска записей по полям служат методы Locate и Lookup, причем поля могут быть не индексированными. Функция Locate ищет запись с заданными значениями полей. Если удовлетворяющие условиям поиска записи существует, то указатель текущей записи устанавливается на первую из них. Если запись найдена, функция возвращает значение True, в противном случае значение False. Обычно при разработки приложения пользователю предоставляется возможность влиять на процесс поиска су помощью управляющих элементов, расположенных на форме. При этом действия пользователя по управлению поиском в наборе данных мало, чем отличаются от аналогичных действий при выполнении фильтрации. Функция Lookup так же осуществляет поиску записи, удовлетворяющей определённым условиям, но, в отличие от метода Locate, не перемещает указатель текущей записи, а считывает информацию из полей записи. Еще одно отличие между двумя методами заключается в том, что метод Lookup осуществляет поиск на точное соответствие значений для поиска и значений в полях записей с учетом регистра букв.

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

3. Заключение

Задачей дипломного проекта являлась разработка программного продукта по учету посещаемости (на примере университета). Для реализации этой задачи были выполнены следующие этапы:

- Спроектирована логическая модель базы данных

- Спроектирована физическая модель базы данных

- Организован ввод количества пропущенных часов за каждый день по уважительным (болезнь, отпускные) и неуважительным причинам по каждой специальности, группе, студенту

- Предусмотрена возможность корректировки данных

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

- Предусмотрена возможность сравнения итоговых данных с итогами предыдущего месяца

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

- Предусмотрена возможность формирования отчета

Данный программный продукт был написан с использованием Microsoft Office Access для создания базы данных и среда разработки программных продуктов Delphi, имеющий большие возможности для работы с базами данных. Соединение с базой данных произведено при помощи технологии ADO. Обработка данных производилась при помощи операторов языка запросов SQL.

В результате была создана программа «Учет посещаемости», которая может быть использована в подобных учебных заведениях.

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

Список используемой литературы

1 Гофман В. Э., Хомоненко А. Д. Delphi. Быстрый старт. — СПб.: БХВ-Петербург, 2003. — 288 с.

2 Гофман В. Э., Хомоненко А. Д. Работа с базами данных в Delphi. — СПб.: БХВ-Петербург, 2001. — 656 с.

3 Боровский А. Н. Программирование в Delphi 2005. — СПб.: БХВ-Петербург, 2005. - 448 с.

4 Дарахвелидзе П. Г., Марков Е. П. Delphi 2005 для Win32. - СПб.: БХВ-Петербург, 2005. - 1136 с.

5 Сорокин А. В. Delphi. Разработка баз данных. — СПб.: Питер, 2005. — 477 с.

6 Фленов М. Е. Библия Delphi. — СПб.: БХВ-Петербург, 2004. — 880 с.

7 Фленов М. Е. Программирование в Delphi глазами хакера. — СПб.: БХВ-Петербург, 2003. - 368 с.

8 Фленов М. Е. Delphi в шутку и всерьез: что умеют хакеры (+CD). — СПб.: Питер. 2006. — 271 с.

9 Архангельский Л.Я. Delphi 2006. Справочное пособие: Язык Delphi, классы, функции Win32 и .NET. — М.: ООО «Бином-Пресс», 2006 г. — 1 152 с.

10 Фаронов В. В. Delphi 2005. Разработка приложений для баз данных и Интернета. — СПб.: Питер, 2006. — 603 с.

11 Карпова Т. С. Базы данных: модели, разработка, реализация. — СПб.: Питер, 2001. — 304 с.

12 Delphi World 6.0. Электронный справочник.