|
||||||||||||
|
||||||||||||
|
|||||||||
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - Разработка приложений базы данных "Командировка"Разработка приложений базы данных "Командировка"25 Московский Государственный Технический Университет имени Н.Э. Баумана Калужский филиал Кафедра «Компьютерные системы и сети» Пояснительная записка к курсовой работе по курсу «Базы данных» Разработка приложений базы данных «Командировка» Калуга 2007
Среда визуального программирования Delphi 7 предоставляет программисту возможность реализации всех достоинств графического интерфейса этой системы. Так как подавляющее большинство пользователей персональных компьютеров работают сегодня в среде операционных систем семейства Windows, то этот интерфейс является для них наиболее привычным и удобным. Визуальное программирование как бы добавляет новое измерение при создании приложений, давая возможность изображать эти объекты на экране монитора до выполнения самой программы. Без визуального программирования процесс отображения требует написания фрагмента кода, создающего и настраивающего объект «по месту». Увидеть закодированные объекты было возможно только в ходе исполнения программы. При таком подходе достижение того, чтобы объекты выглядели и вели себя заданным образом, становится утомительным процессом, который требует неоднократных исправлений программного кода с последующей прогонкой программы и наблюдения за тем, что в итоге получилось. Благодаря средствам визуальной разработки можно работать с объектами, держа их перед глазами и получая результаты практически сразу. Способность видеть объекты такими, какими они появляются в ходе исполнения программы, снимает необходимость проведения множества операций вручную, что характерно для работы в среде, не обладающей визуальными средствами - вне зависимости от того, является она объектно-ориентированной или нет. После того, как объект помещен в форму среды визуального программирования, все его атрибуты сразу отображаются в виде кода, который соответствует объекту как единице, исполняемой в ходе работы программы. Для запуска программ, написанных на Delphi, не требуются никакие дополнительные библиотеки, интерпретаторы кода и прочее. Достаточно взять один-единственный сгенерированный исполняемый файл и запустить его там, где нужно. Для установки программы на другой компьютер не требуется создание каких-либо дистрибутивов, не нужен процесс инсталляции, достаточно переписать исполняемый файл программы. Таким образом, выбранная платформа, как было показано выше, удовлетворяет поставленным требованиям, поэтому выбор был остановлен на данной системе программирования. 2.4 Проектирование БД БД - это некоторая целевая модель предметной области. Целевая означает, что в ней находят отражение только те факты о предметной области, которые необходимы для функционирования информационной системы. При проектировании эти факты необходимо выделить и описать, а затем выполнить интерпретацию описаний с помощью структур данных, допустимых в конкретной СУБД. Предметная область считается определенной, если известны существующие в ней объекты, их свойства и отношения. Выбранная предметная область связанна с созданием БД «Командировка». На подготовительном этапе были выявлены основные объекты и потоки данных ПО, по которым была составлена информационная модель (Приложение 1). Проектирование БД начинается с предварительной структуризацией предметной области. Объекты реального мира подвергаются классификации, и фиксируется совокупность подлежащих отображению в БД типов объектов. Для каждого типа объектов фиксируется совокупность свойств, по средствам которых будут описываться конкретные объекты этого типа в базе, а также виды отношений между этими объектами. С помощью информационной модели создается инфологическая модель данных (Приложение 2). Сущность инфологического подхода в проектировании информационной системы заключается в установлении соответствия между состоянием предметной области, его восприятием и представлением в БД. Т.к. программа разрабатывается на языке Object Paskal, то используется реляционная модель данных. В основе реляционной модели данных лежит понятие отношение. Отношение - это не связь между объектами, это таблица в виде которой в реляционной модели представляются данные. Столбцы таблицы представляют элементы данных, то есть атрибуты. Строки - это записи, называемые кортежами. Значения в столбце выделятся из домена. Домен - это множество значений, которые может принимать некоторый атрибут. Ключ - это столбец, значения которого однозначно идентифицируют строки таблицы. Ключей может быть несколько. Связь между таблицами осуществляется через общие атрибуты. Любое отношение обладает следующими свойствами: · отсутствуют одинаковые строки, · порядок строк не существенен, · все значения имеют атомарный характер, то есть их нельзя разбить на компоненты без потери информации. Вследствие этого при проектировании связанных таблиц пришлось учитывать необходимость минимальной избыточности, для установления необходимых соответствий между таблицами (Приложение 3). Для создания таблиц данных использовалась утилита Database Desktop. На этапе проектирования было создано 5 таблиц (Приложение 4). Готовая программа будет функционировать по заранее разработанному алгоритму. Для удобства работы основные функции реализованы на главной форме, например редактирование, подготовка отчетов, сортировки Вспомогательные окна появляются лишь при использовании расширенных возможностей БД. (Приложение 5). 2. Конструкторская часть 2.1 Основные этапы разработки БД и обзор используемых средств Delphi Прежде всего, создается псевдоним будущей базы данных с помощью утилиты BDE Administrator. Все инструментальные средства баз данных Borland - Paradox, dBase, Database Desktop - используют BDE. Все особенности, имеющиеся в Paradox или dBase, «наследуются» BDE, и поэтому этими же особенностями обладает и Delphi.Утилита конфигурации BDE по умолчанию устанавливается в папку Program Files\Common Files\Borland Shared\BDE и носит имя bdeadmin.exe. После ее запуска на экране появится следующее окно:Главное окно программы BDE Administrator состоит из двух основных областей. В левой части при первоначальном запуске активна закладка Databases (Базы данных), на которой отображаются все зарегистрированные в системе псевдонимы баз данных. Справа выводится информация о выбранной в левой части базе данных.Работа с псевдонимами БД.Псевдоним (alias) БД - специальное имя базы данных, служащее для обозначения каталога, в котором хранятся таблицы БД.Наличие псевдонимов позволяет программисту писать приложения, не задумываясь над тем, куда будут помещены файлы таблиц БД. Псевдоним облегчает перенос файлов таблиц в другие папки и на другие компьютеры без изменения кода приложения. После изменения положения файлов достаточно изменить адрес каталога, на который ссылается псевдоним БД.Псевдоним для работы с локальными БД имеет всего три параметра. Для таблиц Paradox можно оставить значения первых двух параметров Default Driver, Enable BCD по умолчанию. Третий параметр Path (Путь) необходимо задать.Затем необходимо создать таблицы с помощью утилиты Database Desktop (Приложение 4).Borland Database Desktop доступна в разделе меню Tools / Database Desktop. При разработке новых приложений наиболее удобна база данных Paradox 7. Таблицы Paradox хранят данные в двух файлах:.DB и.MB. В.DB_файле содержится большинство типов полей таблицы, такие как: строковые, числовые, даты и т.п. В.MB_файле содержаться части больших полей, таких как Мемо. Для этого типа поля колонка Size определяет, сколько запоминается в.DB_файле, а остаток сохраняется в.MB_файле. Т. е. колонка Size ни в коей мере не ограничивает количество данных, которые могут содержаться в поле Мемо. Delphi справляется с проблемой наличия нескольких файлов автоматически. Некоторые типы данных требуют указания размера. Это говорит базе данных о наибольшем объеме данных, который может храниться в поле. Тип данных Number не использует понятия размер поля.Использование ключейКлючи способствуют эффективной работе машины базы данных. Таблицы Paradox поддерживают первичные и вторичные индексы (ключи). Первичные индексы создаются вводом звездочки (*) в колонке Key. Первичный ключ может состоять больше чем из одного поля, но они должны идти друг за другом и начинаться с первого поля таблицы. Хотя в большинстве баз данных не обязательно иметь ключи, однако на практике хорошо для каждой таблицы иметь свой ключ. Отсутствие ключа говорит о том, что в таблице нет полей, гарантирующих уникальность каждой записи. Нужно добавить автоинкрементное поле, если первичный ключ может повторяться.Вторичные индексы используются в таблицах Paradox для ускорения поисков и запросов и для изменения порядка просмотра записей.Установка проверок правильности данныхТаблицы Paradox поддерживают множество характеристик, которые являются правилами проверки правильности данных при введении их в таблицу. И DBD, и Delphi поддерживают эти правила. Проверки правильности данных являются правилами для данных на уровне поля.Перед началом работы, на этапе планирования разрабатывается алгоритм будущей программы (Приложение 5).Получение доступа к созданной таблицеПростейшим способом обеспечения доступа и манипуляции данными является использование визуальных компонентов базы данных. Визуальные компоненты базы данных хранятся на двух страницах библиотеки визуальных компонентов: Data Access и Data Control. Органы управления на странице Data Access используются для того, чтобы дать информацию о таблицах базы данных и функциях, которые должны быть использованы. Страница Data Control содержит ряд визуальных компонентов, которые могут отображать информацию базы данных или обеспечивать интерфейс для манипуляций данными.Первым шагом в создании приложения, обеспечивающего доступ к уже созданной базе данных должно быть размещение компонента TTable на форме и задание свойств DataBaseName и TableName. Для этого надо сделать следующее:Обеспечение связиDelphi имеет возможность доступа к информации в базе данных, которая поставляется рядом компонентов, известных как наборы данных (DataSets), одним из которых является компонент TTable. Компоненты другого типа, связанные с данными - это компоненты, которые отображают и манипулируют теми данными, которые доступны Delphi. Чтобы обеспечить уровень абстракции для компонентов, которые могут перемещаться по данным и отображать информацию, был разработан компонент связи TdataSource - источник данных. TdataSource также позволяет узнать, изменялись ли данные, и определить, каково состояние набора или источника данных.Управляющие компоненты для просмотра и модификации данныхОтображение и манипуляцию данными наиболее просто осуществить с помощью управляющих компонентов, связанных с данными (их называют data-aware или data-bound). Большинство средств управления с привязкой к данным предназначено для связи полей базы данных с визуальным компонентом. Все компоненты на странице DataControl, за исключением DBNavigator, используются для отображения информации баз данных. Чтобы начать работать с ними добавляется сетка DBGrid. Delphi имеет мощное средство управления, которое позволяет перемещаться между объектами в таблице - навигатор DBNavigator. Доступ к полям Часто бывает так, что программе надо обратиться к полям базы данных. Свойство Fields набора данных описывает больше, чем содержащиеся в полях значения. Это свойство содержит также информацию о структуре таблицы. Например, свойство Fields может дать сведения об именах полей, типе данных в них, размере данных и их значениях для текущей записи. Объекты TTable имеют массивы полей. Эти массивы можно модифицировать, используя редактор полей для добавления, удаления и модификации определений полей. В простейшем случае, когда приложению известно определение таблицы, поля могут быть доступны непосредственно, без необходимости определения, что они собой представляют или каков тип их данных. В нашем примере в таблице Readers поле №Билета - это первый столбец; поэтому Readers. Fields[0] равно значению №Билета для текущей выделенной записи. Заметьте, что массив начинается с индекса 0. Заметьте также, что для правильного обращения к данным должен быть известен тип данных. Модификация полей в таблице По умолчанию компонент TTable может использовать все поля связанной с ним таблицы. Кроме того, Delphi позволяет разработчику модифицировать используемые поля, основанные на вычислениях, и устанавливать атрибуты для каждого поля. Чтобы запросить редактор полей компонента TTable, дважды щелкните на экземпляре TTable. Это вызовет появление диалогового окна, которое позволяет вам добавлять, удалять и определять новые поля. Заголовок окна содержит имя формы и таблицы. Это диалоговое окно обеспечивает также простой доступ к компонентам TFields. Поля являются производными от типа TField, с некоторой специальной информацией о типе данных. Например, если одно из полей - строка, поле должно иметь тип TStringField. Подобно другим компонентам, поля имеют свойства и события. Одно из преимуществ такого подхода состоит в том, что разные поля в таблице могут иметь разные свойства. Это удобно при необходимости защитить одно из полей от изменений, но разрешить пользователю модифицировать другие поля. Чтобы реализовать это, нужно установить значение свойства ReadOnly для поля, которое нужно защитить, равным True. Большое количество свойств поля определяет, как должны выравниваться данные - справа, слева или по центру отображаемого поля. Например, свойство Alignment. Кроме того, для чисел с плавающей запятой может быть установлено значение Precision (точность), которое указывает, как должны округляться числа. Можно установить отображаемые имена полей, в частности, русские имена. Перемещение по записям Навигатор обеспечивает возможность перемещения по таблице. Создание интерфейсаДля создания интерфейса в Delphi обычно используются различные визуальные компоненты. В работе использовалось меню, а не постраничная организация. Всего одна форма используется для отображения таблиц в зависимости от выбора пользователя. В некотором роде это переключение между таблицами на одной форме. procedure TOsnForma. Rabotnik1Click (Sender: TObject); begin OsnTable. Active:=false; OsnTable. TableName:='Работник'; Tag:=1; Redakt; OsnTable. Active:=true; OsnForma. Caption:='Работник'; Komandirovka1. Enabled:=true; Rabotnik1. Enabled:=false; DenSredstva1. Enabled:=true; Documenty1. Enabled:=true; Detali1. Enabled:=true; end; procedure TOsnForma. DenSredstva1Click (Sender: TObject); begin OsnTable. Active:=false; OsnTable. TableName:='Денежные средства'; Tag:=2; Redakt; OsnTable. Active:=true; OsnForma. Caption:='Денежные средства'; Komandirovka1. Enabled:=true; Rabotnik1. Enabled:=true; DenSredstva1. Enabled:=false; Documenty1. Enabled:=true; Detali1. Enabled:=true; end; procedure TOsnForma. Documenty1Click (Sender: TObject); begin OsnTable. Active:=false; OsnTable. TableName:='Сопроводительные документы'; Tag:=3; Redakt; OsnTable. Active:=true; OsnForma. Caption:='Сопроводительные документы'; Komandirovka1. Enabled:=true; Rabotnik1. Enabled:=true; DenSredstva1. Enabled:=true; Documenty1. Enabled:=false; Detali1. Enabled:=true; end; procedure TOsnForma. Detali1Click (Sender: TObject); begin OsnTable. Active:=false; OsnTable. TableName:='Детали, инструменты'; Tag:=4; Redakt; OsnTable. Active:=true; OsnForma. Caption:='Детали, инструменты'; Komandirovka1. Enabled:=true; Rabotnik1. Enabled:=true; DenSredstva1. Enabled:=true; Documenty1. Enabled:=true; Detali1. Enabled:=false; end; procedure TOsnForma. Komandirovka1Click (Sender: TObject); begin OsnTable. Active:=false; OsnTable. TableName:='Командировка'; Tag:=5; Redakt; OsnTable. Active:=true; OsnForma. Caption:='Командировка'; Komandirovka1. Enabled:=false; Rabotnik1. Enabled:=true; DenSredstva1. Enabled:=true; Documenty1. Enabled:=true; Detali1. Enabled:=true; end; Создание приложений, позволяющих редактировать, сортировать, находить необходимые данные Редактирование осуществляется следующими процедурами программы procedure TOsnForma. Redaktioravt1Click (Sender: TObject); begin Redakt; RedForm. ShowModal; end; procedure TOsnForma. Redakt; begin case Tag of 1: with RedForm do begin Label1. Caption:='Номер документа'; Label2. Caption:='ФИО'; Label3. Caption:='Должность'; Label4. Caption:='Телефон'; Label5. Caption:='Название отдела'; Label6. Caption:='Специализация'; Label7. Visible:=false; DBEdit1. DataField:='№ документа'; DBEdit2. DataField:='ФИО'; DBEdit3. DataField:='Должность'; DBEdit4. DataField:='Телефон'; DBEdit5. DataField:='Название отдела'; DBEdit6. DataField:='Специализация'; DBEdit7. DataField:=''; DBEdit7. Visible:=false; DBEdit6. Visible:=true; Label6. Visible:=true; end; 2: with RedForm do begin Label1. Caption:='Номер запроса'; Label2. Caption:='Суточные'; Label3. Caption:='Оплата проезда'; Label4. Caption:='Оплата труда'; Label5. Caption:='Количество человек'; Label6. Caption:='Итого'; Label7. Visible:=false; DBEdit1. DataField:='№ запроса'; DBEdit2. DataField:='Суточные'; DBEdit3. DataField:='Оплата проезда'; DBEdit4. DataField:='Оплата труда'; DBEdit5. DataField:='Количество человек'; DBEdit6. DataField:='Итого'; DBEdit7. DataField:=''; DBEdit7. Visible:=false; DBEdit6. Visible:=true; Label6. Visible:=true; end; 3: with RedForm do begin Label1. Caption:='Номер запроса'; Label2. Caption:='Номер документа'; Label3. Caption:='Название'; Label4. Caption:='Дата подписания'; Label5. Caption:='Кем подписан'; Label6. Visible:=false; Label7. Visible:=false; DBEdit1. DataField:='№ запроса'; DBEdit2. DataField:='№ документа'; DBEdit3. DataField:='Название'; DBEdit4. DataField:='Дата подписания'; DBEdit5. DataField:='Кем подписан'; DBEdit6. DataField:=''; DBEdit6. Visible:=false; DBEdit7. DataField:=''; DBEdit7. Visible:=false; end; 4: with RedForm do begin Label1. Caption:='Номер запроса'; Label2. Caption:='Название'; Label3. Caption:='Количество'; Label4. Caption:='Стоимость каждой'; Label5. Caption:='Итого'; Label6. Visible:=false; Label7. Visible:=false; DBEdit1. DataField:='№ запроса'; DBEdit2. DataField:='Название'; DBEdit3. DataField:='Количество'; DBEdit4. DataField:='Стоимость каждой'; DBEdit5. DataField:='Итого'; DBEdit6. DataField:=''; DBEdit6. Visible:=false; DBEdit7. DataField:=''; DBEdit7. Visible:=false; end; 5: with RedForm do begin Label1. Caption:='Номер запроса'; Label2. Caption:='Цель'; Label3. Caption:='Дата отбытия'; Label4. Caption:='Дата прибытия'; Label5. Caption:='Место назначения'; Label6. Caption:='Виды выполняемых работ'; Label7. Caption:='ФИО работника'; DBEdit1. DataField:='№ запроса'; DBEdit2. DataField:='Цель'; DBEdit3. DataField:='Дата прибытие'; DBEdit4. DataField:='Дата отбытия'; DBEdit5. DataField:='Место назначения'; DBEdit6. DataField:='Виды выполняемых работ'; DBEdit7. DataField:='ФИО работника'; DBEdit6. Visible:=true; Label6. Visible:=true; DBEdit7. Visible:=true; Label7. Visible:=true; end; end; end; procedure TOsnForma. Ydalit1Click (Sender: TObject); begin if (MessageDlg('Вы уверены?', mtConfirmation, mbOkCancel, 0)=mrOk) then OsnTable. Delete; end; procedure TOsnForma. Dobavit1Click (Sender: TObject); begin OsnTable. Insert; Redakt; RedForm. ShowModal; if (OsnTable. Modified) then OsnTable. Post; end; Поиск записей в наборе данныхДля поиска записей в наборе данных в компоненте TTable применяется следующий метод: function FindKey([список значений]): Boolean - ищет запись, точно удовлетворяющую условиям в списке значений; существует дублирующий его метод GoToKey;Поиск осуществляется только по индексным полям. Состав полей, используемых для идентификации нужной записи при поиске в НД, определяется текущим индексом. Следовательно, в качестве текущего нужно установить индекс, построенный по полям, по значениям которых и планируется осуществить поиск. При поиске на точное соответствие предпринимается попытка отыскать запись, у которой индексные поля соответствуют значениям, указанным в списке значений. Если такая запись найдена, данный метод возвращает True и указатель текущей записи в НД устанавливается на эту запись. Если запись не найдена, курсор не перемещается. procedure TPoiskForm.OKClick (Sender: TObject); begin OsnForma. OsnTable. IndexName:= 'N'+IntToStr (PoiskBox. ItemIndex); OsnForma. OsnTable. FindKey([PoiskEdit. Text]); Close; end; Сортировка набора данныхОдной из наиболее часто выполняемых задач является задача сортировки данных таблицы по одному из полей (или по нескольким полям). Рассмотрим приёмы сортировки таблицы на примере набора данных Table. Сортировка набора данных Table выполняется автоматически по текущему индексному полю. Если переопределить индекс произойдет автоматическая сортировка данных по новому индексу. Если необходимо организовать сортировку данных по нескольким полям одновременно, надо создать индекс, включающий эти поля. procedure TOsnForma.N0Click (Sender: TObject); begin OsnTable. IndexName:=TMenuItem(Sender).Name; end; VII. ЗапросыЗапросы - существенная часть управления базами данных. Для выполнения запросов к БД в Delphi используется компонент TQuery. Основные отличия компонента данных TQuery, возвращающего наборы данных, от выполняющего сходные функции компонента TTable следующие: набор данных, возвращаемый TQuery, может быть составлен из записей нескольких таблиц; в общем случае набор данных, возвращаемый TQuery, даже если источником этого набора служит одна таблица БД, предполагает обращение к подмножеству записей и столбцов, в то время как TTable ориентирован на работу со всеми записями и полями. Результирующий набор данных компонента TQuery формируется путем выполнения запроса к БД на языке SQL. Самые большие реляционные базы данных, такие, как Oracle, Informix, Sybase, так же выполняют запросы, используя SQL. Писать и исполнять SQL_запросы в приложениях Delphi можно различными способами. Один метод - запись текста SQL_команды в свойство SQL компонента TQuery. В этом случае во время работы приложения Delphi выполнит указанный запрос. Если при этом соединить компонент TQuery через TDataSoource с компонентом доступа к данным, результаты запроса будут показаны в компоненте просмотра данных, связанным с TQuery. Другой способ задания SQL_команд - включение их в паскалевские модули (в блоки исполняемого Pascal_кода), которые Delphi создает для вашего проекта. procedure TOsnForma.SQL1Click (Sender: TObject); begin PoiskForm. PoiskBox. Clear; PoiskForm. PoiskBox. Items. Add (OsnTable. Fields. Fields[1].DisplayName); PoiskForm. PoiskBox. Items. Add (OsnTable. Fields. Fields[2].DisplayName); PoiskForm. PoiskBox. Items. Add (OsnTable. Fields. Fields[5].DisplayName); PoiskForm. PoiskBox. ItemIndex:=0; PoiskForm. ShowModal; with OsnUnit. OsnForma. Query do begin Active:=false; SQL. Clear; SQL. Add ('Select *'); SQL. Add ('From Работник'); SQL. Add ('Where '+PoiskForm. PoiskBox. Text+' Like «'+PoiskForm. PoiskEdit. Text+''''); Active:=true; end; SQLForm. ShowModal; end; VIII. Создание отчетов по базе данных Для создания отчетов создается новая форма, на ней размещается компонент TquickRep. procedure TOsnForma.N7Click (Sender: TObject); begin OtchetForm. QuickRep1. PreviewModal; end; 3. Технологическая часть 3.1 Руководство пользователя При запуске программы открывается основное окно программы и выводится таблица «Командировка», в которой содержится наиболее общая информация, связанная с предметной областью (рис. 1). Рис. 1 Главное меню содержит следующие пункты: «Файл», «Таблица», «Редактирование», «Поиск», «Сортировать по…» (рис. 2) Рис. 2 Пункт меню «Файл» позволяет осуществить выход из программы и вывести отчет (рис. 3). Рис. 3 При выборе подменю отчет выведется информация о каждом работнике (рис. 4). На каждой странице - информация об одном человеке. Рис. 4 Для работы с записями используется панель задач (рис. 5) Рис. 5 Пункт основного меню «Таблица» позволяет осуществлять переключение между таблицами БД (рис. 6) Рис. 6 Выбрав любой подпункт можно получить доступ к таблице соответствующим названием. При этом тот подпункт, который совпадает с открытой на данный момент таблицей делается неактивным. Редактирование записей в таблице может осуществляться двумя способами · используя встроенный навигатор (рис. 7) Рис. 7 Перечисление назначения кнопок навигатора слева направо: 1. указатель на начало всех записей 2. указатель на одну запись назад 3. указатель на одну запись вперед 4. вставить новую запись 5. удалить указанную запись 6. редактировать указанную запись 7. сохранить отредактированную запись 8. выйти из режима редактирования 9. обновить данные · при помощи пункта меню «Редактирование» (рис. 8) Рис. 8 При выборе подпункта «Добавить» выведется следующее диалоговое окно (рис. 9) Рис. 9 При вводе данные будут отображаться в соответствующих полях таблицы (рис. 10) Рис. 10 Для редактирования какой-либо записи следует установить на неё указатель и выбрать Редактирование - Редактировать. После чего выведется диалоговое окно, поля которого будут содержать значения этой записи (рис. 11). Рис. 11 Чтобы удалить какую-либо запись следует установить на неё указатель и выбрать Редактирование - Удалить. Пункт основного меню «Поиск» позволяет осуществлять поиск двумя способами. (рис. 12): когда по введенному значению установится указатель на соответствующую запись (рис. 14) и когда по введенному значению данные выведутся в отдельную таблицу (рис. 15). В обоих случаях перед поиском выведется диалоговое окно, в котом необходимо выбрать поле, по которому следует осуществлять поиск и то значение, которое нужно найти (рис. 13). Рис. 11 Рис. 12 Рис. 14 Рис. 15 Сортировка выполняется по любому полю соответствующей таблицы в порядке возрастания. 3.2 Руководство программиста Данная программа является закрытой, поэтому изменение свойств, функционального предназначения или отдельных функций невозможно. 3.3 Системные и программные требования Для нормальной работы программы необходимо: 1. Процессор Pentium II 100MHz (минимально) и выше; 2. ОЗУ 8 Mb; 3. 10 Mb свободного места на диске; 4. Операционная система Windows 9X/ME/2000/XP; Заключение Данная программа позволяет пользователю оперативно производить мониторинг отправки и прибытия из командировок сотрудников предприятия в целом, возможно создание отчетов, редактирование данных и многое другое. К достоинствам программы можно отнести: 1. программный продукт не требует мощных модификаций компьютера, что позволяет значительно расширить круг пользователей; 2. данная программа может использоваться всеми категориями пользователей, и проста в работе; 3. программа занимает мало места на диске, но имеет большие возможности; 4. простота модернизации; 5. расширенные возможности поиска и сортировки; К недостаткам можно отнести: 1. довольно простую графику, нет наглядности отображения числовых значений; 2. невозможность работы с сетевыми базами данных. Этот программный продукт может быть в дальнейшем усовершенствован почти во всех направлениях, что возможно сделает его конкурентоспособным приложением БД на рынке ПО. Список литературы 1. С.И. Бобровский. Delphi 7: Учебный курс.-СПб.: Питер, 2004. 2. В.В. Фаронов. Программирование баз данных в Delphi 7: Учебный курс._М, 2005. 3. Ананьев А.И., Федоров А.С. Самоучитель Pascal 6.0 - СПБ.: БХВ-Петербург, 1995. - 624 с.: ил. |
РЕКЛАМА
|
|||||||||||||||||
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА | ||
© 2010 |