Реферат по предмету "Информатика, программирование"


Разработка приложений базы данных "Командировка"

МосковскийГосударственный Технический Университет имени Н.Э. Баумана
Калужский филиал
Кафедра «Компьютерныесистемы и сети»
Пояснительная записка ккурсовой работе по курсу «Базы данных»
Разработка приложенийбазы данных «Командировка»
Калуга 2007

Содержание
Введение
1. Исследовательская часть
1.1 Выбор предметнойобласти
1.2 Описание предметнойобласти
1.3 Выбор инструментов исредств программирования
1.4 Проектирование БД
2. Конструкторская часть
2.1 Основные этапыразработки БД и обзор используемых средств
Delphi
3. Технологическая часть
3.1 Руководствопользователя
3.2 Руководствопрограммиста
3.3 Системные и программныетребования
Заключение
Список использованнойлитературы
Графические приложения
Листинг
Введение
Задачейданного курсовой работы является реализация базы данных на тему «Командировка».
·         разработатьинформационную и инфологическую модели, заданной предметной области;
·         выбратьмодель данных и разработать концептуальную схему;
·         разработатьбазу данных по выбранной предметной области, содержащую не менее пяти объектовэтой предметной области и не менее десяти записей;
·         получитьдоступ к БД средствами Delphi;
·         реализоватьпользовательский интерфейс;
·         создатьприложения позволяющие редактировать, сортировать, находить необходимые данные;
·         реализоватьSQLзапросы;
·         сформироватьотчеты.
1. Исследовательская часть
 
1.1 Выбор предметнойобласти
При выборепредметной области важным фактором было наличие в данной области всейнеобходимой информации для создания полноценной БД. Была выбрана предметнаяобласть, связанная с созданием БД «Командировка». В данной предметной областибыло выделено 5 объектов (командировка, работник, денежные средства, детали /инструменты, документы) и выделены их атрибуты.
1.        Командировка:номер запроса, цель, дата прибытия, дата отбытия, место назначения, видывыполняемых работ, работники;
2.        Работник:номер паспорта, Ф.И.О., должность, телефон, отдел, специализация;
3.        Денежныесредства: номер запроса, суточные, на проезд, оплата труда, итого;
4.        Детали/инструменты:номер запроса, название, количество, стоимость каждой, итого;
5.        Документы:номер документа, название, дата подписания, кем подписан.
1.2 Описание предметной области
Положение о служебных командировках.
Общие положения.
1. Служебная командировка – поездка работника по распоряжениюработодателя на определенный срок для выполнения служебного поручения вне местапостоянной работы. Служебные поездки работников, постоянная работа которыхосуществляется в пути или имеет разъездной характер, служебными командировкамине признаются. Командировка оформляется выдачей командировочного удостоверенияпо форме №Т‑10, подписанного директором комплекса по принадлежности. Принаправлении работника предприятия за пределы РФ наряду с командировочнымудостоверением оформляется приказ, утвержденный генеральным или исполнительнымдиректором.
2. Срок командировки определяется директором комплекса,направляющим работника в командировку.
3. Фактическое время пребывания в месте командировкиопределяется по отметкам в командировочном удостоверении. Если работниккомандирован в разные населенные пункты, отметки о дне прибытия и дне выбытияделаются в каждом пункте.
4. Днем выезда в командировку считается день отправления поезда,автобуса или другого транспортного средства от места постоянной работы, а днемприезда – день прибытия указанного транспортного средства в место постояннойработы.
5. Выбытие работника в командировку и возвращение из неерегистрируется в канцелярии в «Журнале учета работников, выбывающих вкомандировки из ОАО «Калугапутьмаш»».
Гарантии и компенсации.
6.3а командированным работником сохраняется место постояннойработы (должность) и средний заработок за все рабочие дни, в том числе и завремя нахождения в пути. Если работник специально командирован для работы ввыходные или праздничные дни, компенсация за работу в эти дни производится всоответствии с действующим законодательством (ст. 149,152ТК РФ). В этомслучае работа в выходной день компенсируется предоставлением другого дня отдыхаили по согласованию с руководителем предприятия в денежной форме – не менее чемв двойном размере. В случае отъезда в командировку в выходной день пораспоряжению администрации, работнику по возвращении из командировкипредоставляется другой день отдыха в установленном порядке (по заявлению).
7. На рабочих и служащих, находящихся в командировках,распространяется режим рабочего времени и времени отдыха предприятия, в котороеон командирован. Взамен не использованных во время командировки дней отдыха, повозвращению другие дни отдыха не предоставляются. При возвращении работника наместо постоянной работы до окончания рабочего дня, вопрос о времени явки наработу в этот день решается по договоренности с администрацией, в лиценачальника отдела.
Оформление выдачи денежного аванса на командировочные расходы.
8. Перед отъездом командированному работнику выдается денежный авансв пределах сумм, причитающихся на оплату суточных, проезда и проживания. Нормысуточных и оплаты проживания без документов устанавливаются приказом по ОАО «Калугапутьмаш».Для расчета аванса руководитель соответствующего структурного подразделения наосновании командировочного удостоверения составляет смету расходов на каждуюкомандировку, которая согласовывается с бухгалтером по учету подотчетных сумм ивключается в общий список на выдачу денежных средств, который утверждаетсяруководителем комплекса по принадлежности, главным бухгалтером и начальникомфинансового отдела.
По автотранспортному цеху №7 согласно представляемым вустановленное время заявкам на направление водителя транспортного средства вкомандировку, службами указывается точное наименование груза (характер, вес,габариты), место загрузки, разгрузки, маршрут движения, время выезда, лица,сопровождающего груз. Согласно заявке диспетчерская служба цеха выписываетпутевой лист и передает в техбюро, где инженер-технолог рассчитывает количествотоплива, необходимого для данной поездки. Эти данные передаются всоответствующие службы для включения в общую смету затрат на данную командировку,с последующим включением в список на получение денежного аванса.
9. Выдача аванса на командировочные расходы производится приусловии полного отчета работника по ранее выданному авансу.
Документальное оформление отчетов о командировках.
10. Втечение 3-х дней по возвращении изкомандировки работник обязан представить письменный отчет о выполнениислужебного задания, утвержденный начальником подразделения и руководителемкомплекса, также авансовый отчет по форме №АО-1. К авансовому отчетуприкладывается командировочное удостоверение с отметками о выбытии вкомандировку и прибытии в пункт назначения, выбытии из него и прибытии к местуработы; документ о найме жилого помещения и расходам по проезду, включая платуза пользование постельными принадлежностями. К авансовому отчету работниковОТОВП следует прикладывать копию Акта выполненных работ. Работник бухгалтериипроизводит проверку авансовых отчетов с точки зрения наличия первичныхрасчетно-платежных документов и качества их оформления.
Затем руководитель структурного подразделения производит проверкуцелесообразности расходования денежных средств и результатов командировки. Дляоценки качества и полноты выполнения командировочного задания используетсяинформация служебного задания для направления в командировку и отчет о еговыполнении. Отчет передается руководителю организации на утверждение. После утвержденияавансового отчета бухгалтер производит бухгалтерские записи: списываетподотчетные денежные суммы в установленном порядке.
Суточные.
11. Нормы суточных расходов при направлении работника вкомандировку в пределах РФ устанавливаются приказом руководителя предприятия.Суммы выплачиваемых суточных, превышающие нормы действующего законодательства(100 руб. в сутки) включаются в совокупный доход работника и подлежат обложениюНДФЛ (налог на доходы физических лиц)
Суточные по командировкам за пределы РФ выплачиваются по нормам,установленным действующим законодательством, по курсу установленному ЦБ РФ надату утверждения авансового отчета руководителем предприятия.
Расходы по найму жилого помещения.
12. Расходына проживание возмещаются работнику в сумме фактически произведенных затрат содня его прибытия к месту командировки по день выезда к месту постоянной работы,согласно предоставленных документов. Если квитанция на проживание в гостиницене является бланком строгой отчетности, то командируемый обязан получить чек сконтрольно-кассового аппарата. Подлежат оплате на основании подтверждающихдокументов также затраты работника на оплату дополнительных услуг, оказываемыхв гостиницах (за исключением расходов на обслуживание в барах и ресторанах,расходов на обслуживание в номере, расходов за пользованиерекреационно-оздоровительными объектами)
Если работник не может предоставить документы, подтверждающиерасходы по найму жилья, то оплата этих расходов производится в соответствии сдействующим приказом по предприятию.
Согласно ст. 217, НК РФ не подлежат налогообложению НДФЛсуммы компенсации за проживание без документов в размере, установленномдействующим законодательством (12 рублей в сутки). Компенсация за проживаниесверх указанных размеров подлежит обложению НДФЛ.
При направлении работника в командировку за пределы РФ – расходына проживание без предоставления оправдательных документов не оплачиваются.
Расходы по проезду.
13. Проезд командированного работника к месту командировки иобратно (кроме тех случаев, когда администрация предоставляет средствопередвижения) оплачивается при предоставлении проездных документов, но несвыше:
а)      по железной дороге – стоимости проезда в плацкартном(купейном) вагоне,
б)      по шоссейным и грунтовым дорогам – стоимости проездатранспортным средством общего пользования (кроме такси),
в)      при пользовании воздушным транспортом – возмещаетсястоимость билета обычного класса.
Также командированному работнику оплачиваются расходы по проездуавтотранспортом к железнодорожной станции, аэропорту, если они находятся зачертой населенного пункта, в который работник был командирован, документальноподтвержденные расходы по государственному обязательному страхованию пассажировна транспорте, расходы по предварительной продаже проездных документов, расходыза пользование в поездах постельными принадлежностями, оплата аэродромныхсборов, сборов за право въезда, транзита автомобильного транспорта, запользование морскими каналами, или аналогичные платежи и сборы.
Расходы на пользование внутригородским транспортом оплачиваются засчет суточных.
14. Если работник не предоставил документы на проезд, то ему можетбыть возмещена оплата проезда по минимальной стоимости. Основанием длявозмещения оплаты проезда будет являться заявление работника о возмещении ему израсходованныхсредств с указанием даты и времени отправления транспортного средства, его видаи номера, стоимости билета, а также причин утраты документов. На заявлениируководитель предприятия должен написать распоряжение о размерах возмещаемыхсумм или о невозмещении. Данное заявление прилагается к авансовому отчету идолжно храниться в бухгалтерии предприятия. Возможно оформление приказаруководителя. Эта сумма включается в совокупный доход работника и подлежитобложению НДФЛ.
Оплата телефонных переговоров.
15. Оплата произведенных в командировке телефонных переговоровпроизводится при наличии квитанции с приложением расшифровки конкретныхтелефонных номеров. Если такой расшифровки нет, то суммы переговоров подлежатобложению НДФЛ.
Однодневные командировки.
16. Если работник может ежедневно возвращаться к месту жительства(однодневные командировки), то суточные по ним выплачиваются согласнодействующего приказа по предприятию. Сумма суточных расходов по однодневнымкомандировкам включается в совокупный доход работника и подлежит обложениюНДФЛ.
Окончательный расчет с работником за командировку.
17. Остаток денежных средств (если он имеется) работник обязан внестив кассу предприятия не позднее 3‑х дней после прибытия из командировки.
В исключительных случаях по заявлению работника руководительпредприятия может издать приказ об удержании задолженности из заработной платы.
Если администрация не издала распоряжения об удержании иззаработной платы работника, то суммы задолженности подлежат включению в совокупныйдоход, полученный данным физическим лицом.
Если указанная в авансовом отчете сумма расходов оказываетсябольше выданного ранее работнику аванса на командировочные расходы, образуетсяперерасход по авансовому отчету. Перерасход выдается подотчетному лицу порасходному кассовому ордеру через кассу предприятия.
2.3 Выбор инструментов и средств программирования
Для разработкиприложения выбрана визуальная среда программирования Borland Delphi 7. Базы данных считаютсяосновным плюсом Delphi. Это действительно так. Хотя этот язык не создавался специальнопод данную сферу, реализация работы с данными здесь просто поражает. Даже специализированныеязыки для работы с базами данных (такие, как MS Visual FoxPro) явно уступают попростоте и мощи программирования этого типа приложений. Delphi скрывает все сложности ив то же время даёт величайшую мощь. А главное, что всё это реализовано оченьудобно и легко для понимания.
Delphi – это среда быстрой разработки, в которой в качестве языкапрограммирования используется Object Pascal. В основе идеологии Delphi лежит технологиявизуального проектирования и методология объектно-ориентированного событийногопрограммирования.
Delphi 7 может работать в среде операционных систем от Windows 98 до Windows XP. Особых требований кресурсам компьютера система не предъявляет: процессор должен быть типа Pentium или Celeron, оперативной памяти – неменее 32 Мбайт, достаточное количество свободного дискового пространства – порядка200 Мбайт.
Delphi 7 выигрывает у других подобных программ по многим показателям:
Во-первых, данная среда программирования отличается надёжностью,относительной простотой использования и полностью продуманным файлом помощи, вкотором можно найти ответы на все, возникающие в процессе программированиявопросы. Абсолютно удобный интерфейс позволяет существенно уменьшить времясоздания программы. Во-вторых, написанная программа помещается в файл срасширением *.exe, что позволяет запускать её на любом другом компьютере безустановки дополнительных программ.
Среда визуальногопрограммирования 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;
procedureTOsnForma. Redakt;
begin
caseTag 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;
procedureTOsnForma. Ydalit1Click (Sender: TObject);
begin
if(MessageDlg('Вы уверены?',mtConfirmation, mbOkCancel, 0)=mrOk) then
OsnTable.Delete;
end;
procedureTOsnForma. 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 выполняетсяавтоматически по текущему индексному полю. Если переопределить индекспроизойдет автоматическая сортировка данных по новому индексу. Если необходимоорганизовать сортировку данных по нескольким полям одновременно, надо создатьиндекс, включающий эти поля.
procedureTOsnForma.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 создает для вашегопроекта.
procedureTOsnForma.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.
procedureTOsnForma.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.  ОЗУ 8Mb;
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 с.: ил.


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

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

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.