База данных 'Отдел кадров'

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

База данных 'Отдел кадров'

Введение

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

эпоху информационно-коммуникационных технологий. По данному поводу 22 июля 2000 г. на очередном заседании лидеров восьми наиболее промышленно развитых стран мира была принята «Окинавская Хартия Глобального Информационного общества», в которой говорилось: «Информационно-коммуникационные технологии (ИТ) являются одним из наиболее важных факторов, влияющих на формирование общества двадцать первого века. Их революционное воздействие касается образа жизни людей, их образования и работы… ИТ быстро становятся жизненно важным стимулом развития мировой экономики. Они также дают возможность всем частным лицам, фирмам и сообществам, занимающимся предпринимательской деятельностью, более эффективно и творчески решать экономические и социальные проблемы. Перед ними открываются огромные возможности».

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

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

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

 


1. Предметная область

.1 Основные сведения о предприятии

С 1993 года на рынке строительных услуг Кустаная работает ТОО «Производственно-коммерческая фирма «Гренада». Среди наиболее крупных объектов, в строительстве и ремонте которых принимали участие его специалисты, - Родильный дом г. Рудного, кожно-венерологический диспансер и родильный дом города Кустаная, Лисаковская, Рудненская и Канарская городские больницы, Тарановская, Денисовская, Сарыкольская и Мендыкаринская центральные районные больницы. Качественно выполненные работы по капитальному ремонту и реставрации Октябрьской сельской участковой больницы в Карасуском районе отмечены на районном совещании лично Акимом области Сергеем Витальевичем Кулагиным.

В настоящее время в ТОО «ПКФ «Гренада» трудится большой коллектив. К подбору кадров руководство относится очень серьёзно. На высоком уровне в ТОО «ПКФ «Гренада» организована социальная работа. ТОО «ПКФ «Гренада» неоднократно удостаивалось благодарности заказчиков, руководства Кустанайский области, а в 2008 году стало лауреатом Международной премии Знак Почёта «Лидер национальной экономики».

Структура отдела кадров включает в себя следующие бюро (отделы):

-             подбора персонала;

-             обучения, продвижения квалификации и переквалификации персонала;

-             планирования карьеры и продвижения;

-             нормирования труда, оценки резервов и аттестации;

Отдел кадров находился под руководством Зам. Директора по производству.

Выполнял все его поручения и задания.

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

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

Основными задачами отдела кадров являются:

-             организация отбора, набора и найма персонала, необходимой квалификации и в требуемом объеме;

-             создание эффективной системы штатных сотрудников;

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

-             разработка кадровых технологий и др.

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

1.2 Назначение и область применения программы


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

ввод данных по сотрудникам;

-   поиск по данным;

-       редактирование информации;

-       удаление данных;

-       вывод данных на печать.

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

1.3 Базы данных и системы управления базами данных. Основные понятия


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

Современной формой информационных систем являются банки данных, включающие в свой состав следующие составляющие:

-   вычислительную систему;

-       систему управления базами данных (СУБД);

-       одну или несколько баз данных (БД);

-       набор прикладных программ (приложения БД).

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

Все данные, находящиеся в базе данных, можно представить в виде записей или объектов.

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

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

Все СУБД делятся на две группы:

-   локальные;

-       сетевые.

Локальные - это СУБД, работающие на одном компьютере.

К ним относятся dBase, FoxPro, Microsoft Access и т.д.

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

Примерами сетевых СУБД являются InterBase, Oracle, Microsoft SQL Server и т.д.

По принципу хранения данных все базы данных разделяются на несколько основных типов:

-   иерархические;

-       сетевые;

-       реляционные.

Современные СУБД являются объектно-ориентированными и реляционными. Основной единицей является объект, имеющий свойства, и связи между объектами. СУБД используют несколько моделей данных: иерархическую и сетевую (с 60-х годов) и реляционную (с 70-х). Основное различие данных моделей в представлении взаимосвязей между объектами.

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

Сетевая модель данных строится по принципу «главный и подчиненный тип одновременно», то есть любой тип данных одновременно может порождать несколько подчиненных типов (быть владельцем набора) и быть подчиненным для нескольких главных (быть членом набора).

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

Таблица - упорядоченная структура, состоящая из конечного набора однотипных записей.

Все современные средства СУБД поддерживают реляционную модель данных.

Одно из основных понятий такой структуры - ключевые поля.

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

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

Внешний ключ. Столбец одной таблицы, значения в котором совпадают со значениями столбца, являющегося первичным ключом другой таблицы, называются внешним ключом.

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

Если таблица связана с несколькими другими таблицами, она может иметь несколько внешних ключей.

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

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

Объект (Сущность) - элемент какой-либо системы, информация о котором сохраняется. Объект может быть как реальным (например, человек), так и абстрактным (например, событие - поступление человека в стационар).

Атрибут - информационное отображение свойств объекта. Каждый объект характеризуется набором атрибутов.

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

Реляционные базы данных обладают рядом достоинств:

-   разделение таблиц разными программами;

-       развернутый «код возврата» при ошибках;

-       высокая скорость обработки запросов языка SQL.

1.4 Проектирование баз данных

кадры программа управление

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

1.  Определение цели создания базы данных.

2.      Определение таблиц, которые должна содержать база данных.

.        Определение необходимых в таблице полей.

.        Задание индивидуального значения каждому полю.

.        Определение связей между таблицами.

.        Обновление структуры базы данных.

.        Добавление данных и создание других объектов базы данных.

Рассмотрим каждый этап подробнее:

1.  Определение цели создания базы данных.

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

2.  Определение таблиц, которые должна содержать база данных.

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

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

-   информация в таблице не должна дублироваться. Не должно быть повторений и между таблицами;

-       каждая таблица должна содержать информацию только на одну тему.

3.  Определение необходимых в таблице полей.

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

-   каждое поле должно быть связано с темой таблицы;

-       не рекомендуется включать в таблицу данные, которые являются результатом выражения;

-       в таблице должна присутствовать вся необходимая информация;

-       информацию следует разбирать на наименьшие логические единицы.

4.  Задание индивидуального значения каждому полю.

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

5.  Определение связей между таблицами.

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

6.  Обновление структуры базы данных.

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

7.  Добавление данных и создание других объектов базы данных.

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

 

1.5 Состав СУБД


Язык описания данных (ЯОД) - средства описания данных в БД и связей между ними. Средствами этого языка описывается структура БД, форматы записей, пароли, защищающие данные.

Язык манипулирования данными (ЯМД) - язык для выполнения операций над данными, позволяющий менять их строение.

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

1.6 Основные функции и особенности работы СУБД


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

-       логическая и физическая организация БД являются нестандартными для операционных систем и языков программирования;

-       описание баз данных и их фрагментов отдельно от прикладных программ и должно создаваться и обрабатываться специальными средствами;

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

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

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

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

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

В зависимости от того, что является объектом управления, в СУБД предусмотрены три уровня управления (манипулирования):

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

-       управление записями (кортежами), которое включает чтение, добавление, удаление и упорядочивание записей;

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

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

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

1.7 Режимы работы СУБД


Как транслятор СУБД может работать в двух режимах: режиме интерпретатора и режиме компилятора.

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

Целью компиляции является не немедленное выполнение программы, а создание файла.exe. Как правило, процесс создания.exe - файла включает два этапа:

-  синтаксический контроль всей исходной программы и генерацию объектного модуля obj, выполняемый компилятором;

-       создание.exe - файла из объектного модуля путём обработки его редактором связей. Exe - файл является выполняемым и не требует наличия СУБД.

Примерами СУБД, работающих как интерпретатор, являются dBase III Plus и FoxBASE, работающих как компилятор - СУБД Clipper, работающих в обоих режимах - СУБД Clarion.

1.8 Языки программирования в СУБД


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

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

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

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

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

Процедурность и декларативность - два противоположных свойства языка, отражающие степень алгоритмизации решаемой задачи. Процедурные языки требуют от пользователя описания алгоритма получения требуемых данных, то есть ответа на два вопроса: ч т о необходимо получить из базы данных и как следует получить результат. Декларативные (непроцедурные) языки не требуют от пользователя описания алгоритма получения результата: в запросе на декларативном языке указывается, что необходимо получить, но не содержится указаний, как получить результат. Алгоритм получения результата формируется в самой СУБД, что существенно облегчает работу пользователя, повышая его производительность. Примером декларативного языка является QBE, примером процедурного языка dBase. Высокой степенью декларативности обладает язык SQL.

Третий признак классификации - по используемому математическому аппарату - делит язык программирования на три уровня. К низшему уровню относятся языки, ориентированные на манипулирование одиночными записями, то есть основанные на принципе «одно выполнение оператора - одна запись БД». Ориентация на обработку одиночным записями характерна для ИМД и СМД. К более высокому уровню принадлежат языки, использующие аппарат реляционной алгебры. Они обеспечивают манипулирование не одиночными записями, а множествами записей: в качестве операндов и результатов операций используются отношения РМД. Примером «чистого» языка реляционной алгебры является язык запросов ISBL, разработанный фирмой IBM. Несмотря на высокий уровень, он является процедурным языком и поэтому не находит широкого применения.

Для снижения процедурности и создания максимальных удобств пользователя разработан ряд языков, основанных на исчислении отношений. Классическим примером такого языка является язык Альфа, предложенный Е.Ф. Коддом. Язык обладает абсолютной непроцедурностью, его предложения записываются не в виде традиционных операторов или команд, а в виде специальных альфа - выражений.

2. Разработка программы

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


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

2.2 Организация входных и выходных данных


При разработки структуры базы данных информацию по кадровому составу рационально представить в виде совокупности шести таблиц (смотрите приложение 1).

Рассмотрим каждую таблицу подробнее:

Таблица Sotrudnik. предназначена для хранения данных по сотруднику.

Таблица содержит следующие поля:

-   TabNomer - табельный номер сотрудника, ключевой поле таблицы;

-       SurName - фамилия сотрудника;

-       FirstName - имя сотрудника;

-       OtchName - отчество сотрудника;

-       Birthday - дата рождения сотрудника;

-       Foto - фотография сотрудника;

-       YdostNomer - номер удостоверения личности сотрудника;

-       YdostVidan - наименование органа выдавшего удостоверение;

-       YdostDate - дата выдачи удостоверения сотруднику;

-       PHH - регистрационный налоговый номер сотрудника;

-       IDPensdogovor - индексное поле, служащее для связи с таблицей PensFond;

-       Sik - социальный индивидуальный код сотрудника;

-       HomeTel - домашний телефон;

-       SotTel - сотовый телефон;

-       Adress - адрес, по которому проживает сотрудник.

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

Таблица содержит следующие поля:

-   TabNomer - табельный номер сотрудника, ключевой поле таблицы;

-       IDDolz - индексное поле, служащее для связи с таблицей Dolznost;

-       DayPrim - дата принятия на работу сотрудника;

-       DayIsn - дата окончания испытательного срока сотрудника;

-       DayYvol - дата увольнения сотрудника;

-       DateNachOtp - дата начала отпуска;

-       DateOkOtp - дата окончания отпуска;

-       Osnov - основание предоставления отпуска сотруднику.

Таблица Obrazovan. предназначенная для хранения данных об образовании сотрудника.

Таблица содержит следующие поля:

-   TabNomer - табельный номер сотрудника, ключевой поле таблицы;

-       Obrazov - образование (средне-специальное, высшее и т.д.);

-       SchollName - название учебного заведения;

-       Spez - специальность;

-       Kvalif - квалификация;

-       Razrad - квалификационный разряд сотрудника;

-       Staz - стаж работы по основной профессии;

-       Stazob - общий стаж;

-       Staznepr - непрерывный стаж.

Таблица Family. предназначена для хранения данных о семейном положении сотрудника.

Таблица содержит следующие поля:

-   TabNomer - табельный номер сотрудника, ключевой поле таблицы;

-       Famsupr - фамилия супруга(и) сотрудника;

-       Namesupr - имя супруга(и) сотрудника;

-       Otchsupr - отчество супруга(и) сотрудника;

-       Datesupr - дата рождения cупруга(и) сотрудника;

-       FamChild1 - фамилия ребенка сотрудника;

-       NameChild1 - имя ребенка сотрудника;

-       OtchChild1 - отчество ребенка сотрудника;

-       DateChild1 - дата рождения ребенка сотрудника;

-       FamChild2 - фамилия ребенка сотрудника;

-       NameChild2 - имя ребенка сотрудника;

-       OtchChild2 - отчество ребенка сотрудника;

-       DateChild2 - дата рождения ребенка сотрудника;

-       FamChild3 - фамилия ребенка сотрудника;

-       NameChild3 - имя ребенка сотрудника;

-       OtchChild3 - отчество ребенка сотрудника;

-       DateChild3 - дата рождения ребенка сотрудника.

Таблица PensFond. предназначена для хранения данных о пенсионых фондах.

Таблица содержит следующие поля:

-   IDPensdogovor - индексное поле, служащее для связи с таблицей Sotrudnik;

-       Pensdogovor - наименование пенсионного фонда.

Таблица Dolznost. предназначена для хранения данных по должностям.

Таблица содержит следующие поля:

-   IDDolz - индексное поле, служащее для связи с таблицей Sotrudnik;

-       Dolz - наименование должности.

2.3 Выбор состава программных и технических средств


В наше время широкое применение получили системы визуальной разработки приложений, например Delphi, C++ Builder от фирмы Inprise, программный комплекс Visual Studio фирмы Microsoft и др.

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

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

Среда Delphi обладает практически всеми возможностями современных систем управления базами данных. Она имеет встроенную поддержку языка структурированных запросов (SQL). C помощью Delphi можно разрабатывать как локальные, так и удаленные базы данных.

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

Технические характеристики компьютера: процессор Celeron 700, 128 Mb оперативной памяти, жесткий диск 2 Gb. Такие параметры создают условия для полноценной работы интегрированной среды разработки Delphi 6 и созданных с помощью ее программ. Для работы требуется принтер.

2.4 Описание алгоритма работы программы


Данная программа решает следующие задачи:

1.  формирование базы данных о сотрудниках;

2.      формирование базы данных о пенсионных фондах;

.        формирование базы данных должностей.

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

2.5 Описание форм


В проект программы сходят следующие формы:

1.  MainForm - главное окно программы;

2.      CotrForm - окно ввода необходимых данных по сотрудникам;

3.      DataModule1 - не визуальный модуль данных, служащий для размещения не визуальных компонентов Table и DataSource.

4.      DolzForm - окно ввода перечня должностей;

5.      OtchetForm1 - специальное окно, в котором выводиться личные карточки сотрудников, которые при необходимости можно вывести на печать;

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

7.      PensFondForm - окно ввода перечня пенсионных фондов;

8.      PoiskForm - диалоговое окно поиска данных по фамилии сотрудника;

9.      RedaktForm - окно редактирования данных по сотрудникам;

На рисунке 1 представлено окно MainForm.

Рисунок 1. Главное окно программы на этапе проектирования

Свойства и события компонентов:

Свойства:

BorderIcons = [biSystemMenu, biMinimize]= База данных «Отдел кадров»= clAppWorkSpace= fsMDIForm= MainMenu1= MainForm= poScreenCenter

Событий нет.

1 - MainMenu1. Главное меню программы.

- TStatusBar. Строка состояний.

Свойства:   Сolor = clActiveBorder

На рисунке 2 представлено окно CotrForm - окно ввода необходимых данных по сотрудникам, содержит четыре различные закладки: «Данные о сотруднике», «Дополнительно», «Образование» и «Семейное положение». Закладка: «Данные о сотруднике»:

Рисунок 2. Окно ввода данных о новом сотруднике, закладка «Общие»

Свойства и события компонентов:

Свойства:

Caption = Ввод новых данных о новом сотруднике

Color = clSkyBlue= fsMDIChild= CotrForm= True

События:= FormClose. При закрытии окна «Ввод данных о новом сотруднике» закроются таблицы, содержащие данные о сотрудниках.

OnCreate = FormCreate. При открытии окна «Ввод данных о новом сотруднике» открываются таблицы, которые содержат данных о сотрудниках и добавляются новые пустые строки в конец таблиц.

- PageControl1 класса TPageControl. Контейнер, содержащий закладки с компонентами.

Свойства:   Аlign = alClient

Закладка «Данные о сотруднике»:

- Maininfo класса TTabSheet. Закладка «Данные о сотрудниках»

Свойства:   Caption = Данные о сотрудниках

- PhotoImage класса TDBImage. Окно для отображения фотографии сотрудника.

Свойства:= Foto= DataSource1

- OpenBitBtn класса TBitBtn. Кнопка «Загрузить».

Свойства:

Hint = Загрузить фотографию сотрудника

Caption = Загрузить фотографию

ShowHint = True

События:

OnClick = OpenBitBtnClick. При нажатии на данную кнопку, пользователю появляется диалоговое окно открытия графического файла - фотографии.

- Bevel1 класса TBevel.

Свойства:

Width = 201

Height = 369

- ClearBitBtn класса TBitBtn. Кнопка «Очистить».

Свойства:

Hint = Удалить фотографию сотрудника

Caption = Очистить

ShowHint = True

События:= ClearBitBtnClick. Удаляет фотографию сотрудника из поля «Фотография».

- Panel1 класса TPanel. Инструментальная панель для размещения компонентов.

Свойства:= alBottom= clBackground

- Label4 класса TLabel.

Свойства:   Caption = Табельный номер

- Label1 класса TLabel.

Свойства:   Caption = Фамилия

- Label2 класса TLabel.

Свойства:   Caption = Имя

- Label3 класса TLabel.

Свойства:   Caption = Отчество

- Label5 класса TLabel.

Свойства:   Caption = Дата рождения

- Label6 класса TLabel.

Свойства:   Caption = Должность.

- Label7 класса TLabel.

Свойства:   Caption = Дата приема на работу.

- Label8 класса TLabel.

Свойства:   Caption = Дата окончания испытательного срока.

- Label9 класса TLabel.

Свойства:   Caption = Дата увольнения.

16 - SotrTable класса TTable.

Свойства:= True= Sotrudnik= Sotrudnik.db

- DataSource1 класса TDataSource

Свойства: DataSet = SotrTable

- OpenPictureDialog1 класса TopenPictureDialog.

Свойства:= 128= 416

- DopolnTable класса TTable.

Свойства:= True= Dopoln= Dopoln.db

- DolznostTable класса TTable.

Свойства:= True= Dolznost= Dolznost.db

- ObrazovanTable класса TTable.

Свойства:= True= Obrazovan= Obrazovan.db

- FamilyTable класса TTable.

Свойства:= True= Family= Family.db

- PensFondTable класса TTable.

Свойства:= True= PensFond= PensFond.db

- OkBitBtn класса TBitBtn.

Свойства:

Сaption = Ok = Сохранить данные о сотруднике

Kind = bkOK

ShowHint = True

События:   OnClick = OkBitBtnClick. Сохраняет данные о сотрудниках.

- CloseBitBtn класса TBitBtn.

Свойства:

Hint = Удаление введенных данных и выход из ввода данных о

сотруднике= Отмена= bkClose= True

События:   ОnClick = CloseBitBtnClick. Удаление введенных данных и выход из ввода данных о сотруднике.

26 - DBEdit1 класса TDBEdit.

Свойства:= TabNomer= DataSource1

- DBEdit2 класса TDBEdit.

Свойства:= SurName= DataSource1

- DBEdit3 класса TDBEdit.

Свойства:= FirstName= DataSource1

- DBEdit4 класса TDBEdit.

Свойства:= OtchName= DataSource1

- BirthDayPicker класса TDateTimePicker.

Свойства:

DateFormat = dfShort= dmComboBox

- Dolz класса TDBComboBox.

Свойства:= Dolz= DataSource3

- DayprimPicker класса TDateTimePicker.

Свойства:= dfShort= dmComboBox

- DayisnPicker класса TDateTimePicker.

Свойства:= dfShort= dmComboBox

- DayyvolPicker класса TDateTimePicker.

Свойства:= dfShort= dmComboBox

- DataSource2 класса TDataSource

Свойства: DataSet = DopolnTable

- DataSource3 класса TDataSource

Свойства: DataSet = DolznostTable

- DataSource4 класса TDataSource

Свойства: DataSet = ObrazovanTable

- DataSource5 класса TDataSource

Свойства: DataSet = FamilyTable

- DataSource1 класса. TDataSource

Свойства: DataSet = PensFondTable

- Bevel2 класса TBevel.

Свойства:

Width = 457

Height = 369

Закладка «Дополнительно» (представлено на рисунке 3):

Рисунок 3. Окно ввода данных о новом сотруднике, закладка «Дополнительно»

Свойства: Caption = Дополнительно

- DBEdit5 класса TDBEdit.

Свойства:= YdostNomer= DataSource1

- DBEdit6 класса TDBEdit.

Свойства:= Ydostvidan= DataSource1

- YdostdatePicker класса TDateTimePicker.

Свойства:= dfShort= dmComboBox

- Label18 класса TLabel.

Свойства: Caption = РНН.

- Label19 класса TLabel.

Свойства: Caption = СИК.

- Label20 класса TLabel.

Свойства: Caption = Пенсионный фонд.

- Label21 класса TLabel.

Свойства: Caption = Документы для перечисления пенсионных взносов.

- DBEdit8 класса TDBEdit.

Свойства:

DataField = PHH

DataSource = DataSource1

- DBEdit9 класса TDBEdit.

Свойства:= Sik= DataSource1

- PensFond класса TDBComboBox.

Свойства:= PensDogovor= DataSource6

- Label14 класса TLabel.

Свойства: Caption = Отпуск.

- DatenachotpPicker класса TDateTimePicker.

Свойства:= dfShort= dmComboBox

- DateOkOtpPicker класса TDateTimePicker.

Свойства:= dfShort= dmComboBox

- DBEdit7 класса TDBEdit.

Свойства:= Osnov= DataSource2

- DBEdit10 класса TDBEdit

Свойства:= HomeTel= DataSource1

- DBEdit11 класса TDBEdit.

Свойства:= SotTel= DataSource1

- DBEdit12 класса TDBEdit.

Свойства:= Adress= DataSource1

- Label17 класса TLabel.

Свойства:   Caption = Основание.

- Label16 класса TLabel.

Свойства: Caption = Дата окончания отпуска.

- Label15 класса TLabel

Свойства: Caption = Дата начала отпуска.

- Label13 класса TLabel

Свойства: Caption = Данные удостоверения личности.

- Label10 класса TLabel.

Свойства: Caption = Удостоверение №.

- Label11 класса TLabel.

Свойства: Caption = Кем выдано.

- Label12 класса TLabel.

Свойства: Caption = Дата выдачи удостоверения.

- Label25 класса TLabel.

Свойства: Caption = Контактные адреса и телефоны.

- Label22 класса TLabel.

Свойства: Caption = Домашний телефон.

- Label23 класса TLabel.

Свойства: Caption = Сотовый телефон.

- Label24 класса TLabel.

Свойства: Caption = Домашний адрес.

- Bevel3 класса TBevel.

Свойства:

Width = 329

Height = 177

- Bevel6 класса TBevel.

Свойства:= 329= 177

- Bevel4 класса TBevel.

Свойства:= 329= 177

- Bevel5 класса TBevel.

Свойства:= 329 = 177

Закладка «Образование» (представлено на рисунке 4):

Рисунок 4. Окно ввода данных о новом сотруднике, закладка «Образование»

- Obrinfo класса TTabSheet. Закладка «Образование»

Свойства: Caption = Образование.

- Bevel7 класса TBevel.

Свойства:

Width = 665

Height = 337

- Label27 класса TLabel.

Свойства: Caption = Образование.

4 - Label26 класса TLabel.

Свойства: Caption = Название учебного заведения.

- Label28 класса TLabel.

Свойства: Caption = Специальность по диплому.

- Label29 класса TLabel.

Свойства: Caption = Квалификация по диплому.

- Label33 класса TLabel.

Свойства: Caption = Разряд.

- Label30 класса TLabel.

Свойства: Caption = Стаж работы по основной профессии.

- Label31 класса TLabel.

Свойства: Caption = Общий стаж.

- Label32 класса TLabel.

Свойства: Caption = Непрерывный стаж.

11 - DBEdit14 класса TDBEdit.

Свойства:= Obrazov= DataSource4

- DBEdit13 класса TDBEdit.

Свойства:= Schollname= DataSource4

- DBEdit15 класса TDBEdit.

Свойства:= Spez= DataSource4

- DBEdit16 класса TDBEdit.

Свойства:= Kvalif= DataSource4

- DBEdit20 класса TDBEdit.

Свойства:= Razrad= DataSource4

- DBEdit17 класса TDBEdit.

Свойства:= Staz= DataSource4

- DBEdit18 класса TDBEdit.

Свойства:= Stazob= DataSource4

- DBEdit19 класса TDBEdit.

Свойства:= Staznepr= DataSource4

Закладка «Семейное положение» (представлено на рисунке 5):

Рисунок 5. Окно ввода данных о новом сотруднике, закладка «Семейное положение»

1 - Familyinfo класса TTabSheet. Закладка «Семейное положение»

Свойства: Caption = Семейное положение.

- Label40 класса TLabel.

Свойства: Caption = Фамилия.

- Label41 класса TLabel.

Свойства: Caption = Имя.

- Label42 класса TLabel.

Свойства: Caption = Отчество.

- Label43 класса TLabel.

Свойства: Caption = Дата рождения.

- Bevel9 класса TBevel.

Свойства:

Width = 329

Height = 177

- Label39 класса TLabel.

Свойства: Caption = Данные о детях.

8 - DBEdit24 класса TDBEdit.

Свойства:= FamChild1= DataSource4

- DBEdit25 класса TDBEdit.

Свойства:= NameChild1

DataSource = DataSource4

- DBEdit26 класса TDBEdit.

Свойства:= OtchChild1= DataSource4

- DateChildPicker1 класс TDateTimePicker.

Свойства:= dfShort= dmComboBox

- Bevel11 класса TBevel.

Свойства:= 329= 177

- Label49 класса TLabel.

Свойства: Caption = Данные о детях.

14 - DBEdit30 класса TDBEdit.

Свойства:= FamChild3= DataSource4

- DBEdit31 класса TDBEdit.

Свойства:= NameChild3

DataSource = DataSource4

- DBEdit32 класса TDBEdit.

Свойства:= OtchChild3= DataSource4

- DateChildPicker3 класс TDateTimePicker.

Свойства:= dfShort= dmComboBox

- DBEdit27 класса TDBEdit.

Свойства:= FamChild2= DataSource4

- DBEdit28 класса TDBEdit.

Свойства:= NameChild2= DataSource4

- DBEdit29 класса TDBEdit.

Свойства:= OtchChild2= DataSource4

- DateChildPicker2 класс TDateTimePicker.

Свойства:= dfShort= dmComboBox

- Label50 класса TLabel.

Свойства: Caption = Фамилия.

- Label51 класса TLabel.

Свойства: Caption = Имя.

- Label52 класса TLabel.

Свойства: Caption = Отчество.

- Label53 класса TLabel.

Свойства: Caption = Дата рождения.

- Bevel8 класса TBevel.

Свойства:

Width = 329= 177

- Label34 класса TLabel.

Свойства: Caption = Данные о муже / жене.

- Label35 класса TLabel.

Свойства: Caption = Фамилия.

- Label36 класса TLabel.

Свойства: Caption = Имя.

- Label37 класса TLabel.

Свойства: Caption = Отчество.

- Label38 класса TLabel.

Свойства: Caption = Дата рождения.

- Bevel10 класса TBevel.

Свойства:

Width = 329

Height = 177

- Label44 класса TLabel.

Свойства: Caption = Данные о детях.

- Label45 класса TLabel.

Свойства: Caption = Фамилия.

- Label46 класса TLabel.

Свойства: Caption = Имя.

- Label47 класса TLabel.

Свойства: Caption = Отчество.

- Label48 класса TLabel.

Свойства: Caption = Дата рождения.

38 - DBEdit21 класса TDBEdit

Свойства:= Famsupr= DataSource4

- DBEdit22 класса TDBEdit

Свойства:= NameSupr= DataSource4

- DBEdit23 класса TDBEdit

Свойства:= OtchSupr= DataSource4

- DateSuprPicker класс TDateTimePicker.

Свойства:= dfShort= dmComboBox

На рисунке 6 представлено окно DataModule1 - не визуального модуля данных, служащего для размещения не визуальных компонентов Table и DataSource.

Рисунок 6. Окно модуля данных

1 - Query1 класса TQuery.

Свойства:= True= Sotrudnik. Strings = ('SELECT TabNomer, SurName, FirstName, OtchName, Birthbay, Dolz, D' +'ayprim, Dayisn, Dayyvol, Foto, YdostNomer, Ydostvidan, YdostDate' + ', PHH, Sik, PensDogovor, HomeTel, SotTel, Adress, DateNachOtp, D' +'ateOkOtp, Osnov, Schollname, Obrazov, Spez, Kvalif, Staz, Stazob' +', Staznepr, Razrad, Famsupr, NameSupr, OtchSupr, DateSupr, FamCh' +ild1, NameChild1, OtchChild1, DateChild1, FamChild2, NameChild2,' +' OtchChild2, DateChild2, FamChild3, NameChild3, OtchChild3, Date' + 'Child3'

'FROM «Sotrudnik.db» Sotrudnik')

- DataSource1 класса TDataSource.

Свойства: DataSet = Query1

На рисунке 7 представлено окно «Перечень должностей», предназначенное для внесения должностей сотрудников, из данного окна, они будут переносится в окно «Новый сотрудник» в вкладку выбора должностей.

Рисунок 7. Окно «Перечень должностей»

Свойства и события компонентов:

Свойства:

Caption = Перечень должностей= clBtnFace= fsMDIChild= DolzForm= True

Свойства компонентов:

- DBGrid1 класс TDBGrid.

Свойства:= alClient= clBtnHighlight= DataSource1= clSkyBlue

2 - Panel1 класс TPanel. Инструментальная панель для размещения компонентов.

Свойства:= alBottom= clBackground

- DBNavigator1 класс TDBNavigator. Навигатор для перемещения указателя текущей записи по набору данных.

Свойства:= DataSource1

- DolzTable класс TTable.

Свойства:= True= Dolznost= Dolznost.db

- DataSource1класс TDataSource

Свойства:= DolzTable

На рисунке 8 представлено окно «Перечень пенсионных фондов», предназначенное для внесения пенсионных фондов, из данного окна они будут переносится в окно «Новый сотрудник» во вкладку выбора пенсионных фондов.

Рисунок 8. Окно «Перечень пенсионных фондов»

Свойства и события компонентов:

Свойства:

Caption = Перечень пенсионных фондов

Color = clBtnFace

FormStyle = fsMDIChild= PensFondForm= True

Свойства компонентов:

- DBGrid1 класс TDBGrid.

Свойства:= alClient= clBtnHighlight= DataSource1= clSkyBlue

- Panel1 класс TPanel. Инструментальная панель для размещения компонентов.

Свойства:= alBottom= clBackground

- DBNavigator1 класс TDBNavigator. Навигатор для перемещения указателя текущей записи по набору данных.

Свойства:= DataSource1

- DataSource1класс TDataSource

Свойства:= PensFondTable

- PensFondTable класс TTable.

Свойства:= True= PensFond = PensFond.

На рисунке 9 представлено окно «Поиск данных», предназначенное для поиска данных по сотрудникам по фамилии.

Рисунок 9. Окно «Поиск данных»

Свойства и события компонентов:

Свойства:

Caption = Поиск данных= clBtnFace= fsMDIChild= PoiskForm

- Label1 класс TLabel.

Свойства:

Caption = Введите данные сотрудника

- Panel1 класс TPanel. Инструментальная панель для размещения компонентов.

Свойства:

Align = alTop

Color = clSkyBlue

- DBGrid1 класс TDBGrid.

Свойства:= alClient= DataSource1= clSkyBlue

4 - FamEdit класс TEdit.

Свойства:= FamEdit

- BitBtn1 класс TBitBtn. Кнопка «Найти».

События:

Hint = Введите фамилию сотрудника и нажмите на кнопку Найти

Caption = Найти= True

События: OnClick = BitBtn1Click. При нажатии на данную кнопку производиться поиск данных о сотруднике по фамилии.

6 - Query1 класс TQuery

События:= True= Sotrudnik

- DataSource1 класс TDataSource

События: DataSet = Query1

На рисунке 10 представлено окно «Редактирование данных», предназначенное для изменения данных по сотрудникам.

Рисунок 10. Окно «Редактирование данных»

Свойства и события компонентов:

Свойства:

Caption = Редактирование данных= clBtnFace= fsMDIChild= RedaktForm= True

- DBGrid1 класс TDBGrid.

Свойства:

Align = alClient= DataSource1= clSkyBlue

2 - Panel1 класс TPanel. Инструментальная панель для размещения компонентов.

Свойства:= alBottom= clBackground

- DBNavigator1 класс TDBNavigator. Навигатор для перемещения указателя текущей записи по набору данных.

Свойства:= DataSource1

- DataSource1 класс TDataSource

События:= Table1

- Table1 класс TTable.

Свойства:= True= Sotrudnik = Sotrudnik.

На рисунке 11 представлено специальное окно, в котором выводиться личные карточки сотрудников, которые при необходимости можно вывести на печать.

Рисунок 11. Окно вывода на печать личных карточек сотрудников

Свойства и события компонентов:

Свойства:= Краткие данные о сотрудниках

Color = clBtnFace

Name = OtchetForm1= True 

- QuickRep1 класса TQuickRep.

Свойства:

DataSet = DataModule1. Query1. Orientation = poPortrait. PaperSize = A4= True

- QRBand1 класс TQRBand.

Свойства:= clWhite= rbPageHeader

- QRBand2 класс TQRBand.

Свойства:= clWhite= rbTitle

- QRLabel1 класс TQRLabel.

Свойства: Caption = Краткие данные о сотрудниках ТОО «ПКФ «Гренада»

5 - QRBand3 класс TQRBand.

Свойства:= clWhite= rbDetail

- QRDBImage1 класс TQRDBImage.

Свойства:= Foto= DataModule1. Query1

- QRBand4 класс TQRBand

Свойства:= clWhite= rbPageFooter

- QRLabel2 класс TQRLabel

Свойства: Caption = Фамилия

- QRLabel3 класс TQRLabel

Свойства: Caption = Имя

- QRLabel4 класс TQRLabel

Свойства: Caption = Отчество

11 - QRLabel5 класс TQRLabel.

Свойства: Caption = Дата рождения

- QRLabel6 класс TQRLabel.

Свойства: Caption = Должность

13 - QRDBText1 класс TQRDBText

Свойства:= DataModule1. Query1= SurName

- QRDBText2 класс TQRDBText.

Свойства:= DataModule1. Query1= FirstName

- QRDBText3 класс TQRDBText

Свойства:= DataModule1. Query1= OtchNamе

- QRDBText4 класс TQRDBText

Свойства:= DataModule1. Query1= Birthbay

- QRDBText5 класс TQRDBText

Свойства:= DataModule1. Query1= Dolz

18 - QRSysData1 класс TQRSysData. Показывает системное время.

Свойства: Data = qrsTime

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

Рисунок 12. Окно вывода на печать личных карточек сотрудников

Свойства и события компонентов:

Свойства:= Полные данные о сотрудниках

Color = clBtnFace

Name = OtchetForm1= True

- QuickRep1 класса TQuickRep.

Свойства:= DataModule1. Query1. Orientation = poPortrait. PaperSize = A4= True

- QRBand1 класс TQRBand.

Свойства:= clWhite= rbPageHeader

- QRBand2 класс TQRBand.

Свойства:= clWhite= rbTitle

- QRLabel1 класс TQRLabel.

Свойства: Caption = Краткие данные о сотрудниках ТОО «ПКФ «Гренада»

5 - QRBand3 класс TQRBand.

Свойства:= clWhite= rbDetail        

Свойства:= Foto= DataModule1. Query1

- QRBand4 класс TQRBand

Свойства:= clWhite= rbPageFooter

- QRLabel2 класс TQRLabel

Свойства: Caption = Фамилия

- QRLabel3 класс TQRLabel.

Свойства: Caption = Имя

- QRLabel4 класс TQRLabel.

Свойства: Caption = Отчество

11 - QRLabel5 класс TQRLabel.

Свойства: Caption = Дата рождения

- QRLabel6 класс TQRLabel.

Свойства: Caption = Должность

- QRLabel7 класс TQRLabel.

Свойства: Caption = Дата принятия на работу

- QRLabel8 класс TQRLabel.

Свойства: Caption = Удостоверение №

- QRLabel9 класс TQRLabel.

Свойства: Caption = Кем выдано

- QRLabel10 класс TQRLabel.

Свойства: Caption = Дата выдачи удостоверения

- QRLabel11 класс TQRLabel.

Свойства: Caption = РНН

- QRLabel12 класс TQRLabel.

Свойства: Caption = Пенсионный фонд

- QRLabel13 класс TQRLabel.

Свойства: Caption = СИК

- QRLabel14 класс TQRLabel.

Свойства: Caption = Домашний телефон

- QRLabel15 класс TQRLabel.

Свойства: Caption = Сотовый телефон

- QRLabel16 класс TQRLabel.

Свойства: Caption = Домашний адрес

- QRLabel17 класс TQRLabel.

Свойства: Caption = Название учебного заведения

- QRLabel18 класс TQRLabel.

Свойства: Caption = Образование

- QRLabel19 класс TQRLabel.

Свойства: Caption = Специальность по диплому

- QRLabel20 класс TQRLabel.

Свойства: Caption = Квалификация по диплому

- QRLabel21 класс TQRLabel.

Свойства: Caption = Стаж работы по основной профессии

- QRLabel22 класс TQRLabel.

Свойства: Caption = Общий стаж

- QRLabel23 класс TQRLabel.

Свойства: Caption = Непрерывный стаж

- QRLabel24 класс TQRLabel.

Свойства: Caption = Разряд

31 - QRDBText1 класс TQRDBText

Свойства:= DataModule1. Query1= SurName

- QRDBText2 класс TQRDBText

Свойства:= DataModule1. Query1= FirstName

- QRDBText3 класс TQRDBText

Свойства:= DataModule1. Query1= OtchName

- QRDBText4 класс TQRDBText

Свойства:= DataModule1. Query1= Birthbay

- QRDBText5 класс TQRDBText

Свойства:= DataModule1. Query1= Dolz

- QRDBText6 класс TQRDBText

Свойства:= DataModule1. Query1= Dayprim

- QRDBText7 класс TQRDBText

Свойства:= DataModule1. Query1= YdostNomer

- QRDBText8 класс TQRDBText

Свойства:= DataModule1. Query1= Ydostvidan

- QRDBText9 класс TQRDBText

Свойства:= DataModule1. Query1= YdostDate

- QRDBText10 класс TQRDBText

Свойства:= DataModule1. Query1= PHH

- QRDBText11 класс TQRDBText

Свойства:= DataModule1. Query1= PensDogovor

- QRDBText12 класс TQRDBText

Свойства:= DataModule1. Query1= Sik

- QRDBText13 класс TQRDBText

Свойства:= DataModule1. Query1= HomeTel

- QRDBText14 класс TQRDBText

Свойства:= DataModule1. Query1= SotTel

- QRDBText15 класс TQRDBText

Свойства:= DataModule1. Query1= Adress

- QRDBText16 класс TQRDBText

Свойства:= DataModule1. Query1= Schollname

- QRDBText17 класс TQRDBText

Свойства:= DataModule1. Query1= Obrazov

- QRDBText18 класс TQRDBText

Свойства:= DataModule1. Query1= Spez

- QRDBText19 класс TQRDBText

Свойства:= DataModule1. Query1= Kvalif

- QRDBText20 класс TQRDBText

Свойства:= DataModule1. Query1= Staz

- QRDBText21 класс TQRDBText

Свойства:= DataModule1. Query1= Stazob

- QRDBText22 класс TQRDBText

Свойства:= DataModule1. Query1= Staznepr

- QRDBText23 класс TQRDBText

Свойства:= DataModule1. Query1= Razrad

- QRSysData1 класс TQRSysData. Показывает системное время.

Свойства: Data = qrsTime

2.6 Описание работы программы


Рассмотрим методы вызова окон программы. При запуске программы, открывается главное окно программ «База данных «Отдел кадров». Для ввода данных о новом сотруднике открывается специальное окно с помощью меню «Данные» ® «Новый сотрудник». Для ввода данных о новом пенсионном фонде или должности, также открываются специальные окна с помощью меню «Данные» ® «Перечень пенсионных фондов» и «Перечень должностей» соответственно.

С помощью меню «Отчеты» ® «Краткие данные о сотрудниках» открывается специальное окно, в котором выводиться личные карточки сотрудников, которые при необходимости можно вывести на печать.

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

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

В данной программе предусмотрена возможность редактирования данных для этого необходимо войти в меню «Сервис» ® «Редактирование данных».

В программе предусмотрена справка, содержащая информацию о работе и авторе программы.

 

2.7 Спецификация программы


В состав программы сходят следующие файлы:

-   Otdel kadrov.exe - исполняемый файл программы;

-       Sotrudnik. - файл базы данных «Данные о сотруднике»;

-       Dopoln. - файл базы данных «Дополнительно»;

-       Dolznost. - файл базы данных «Должности»;

-       PensFond. - файл базы данных «Пенсионный фонды»;

-       Obrazovan. - файл базы данных «Образование»;

-       Family. - файл базы данных «Семейное положение»

-       Help - файл справки.

Таблица 1

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

Обозначение

Примечание

Mainpr.dpr

Файл проекта

Связывает все файлы, из которых состоит приложение

Mainpr.res

Файл ресурсов

Содержит ресурсы программы

Mainpr.dof

Файл параметров проекта

Содержит текущие установки проекта

Mainpr.cfg

Файл конфигурации проекта

Содержит установки проекта

Main.dfm

Файл формы Main

Содержит список свойств компонентов включенных в эту форму

Main.pas

Файл программного модуля данных Main

Определяет функциональность формы Main

Main.ddp

Файл с информацией о модуле формы Main

Содержит информацию о модуле о модуле формы Main

Main.dcu

Объектный файл для Main.pas

Откомпилированная версия Main.pas

Cotr.dfm

Файл формы Cotr

Содержит список свойств компонентов включенных в эту форму

Cotr.pas

Файл программного модуля данных Cotr

Определяет функциональность формы Cotr

Cotr.ddp

Файл с информацией о модуле формы Cotr

Содержит информацию о модуле о модуле формы Cotr

Cotr.dcu

Объектный файл для Cotr.pas

Откомпилированная версия Cotr.pas

Dolz.dfm

Файл формы Dolz

Содержит список свойств компонентов включенных в эту форму

Dolz.pas

Файл программного модуля данных Dolz

Определяет функциональность формы Dolz

Dolz.ddp

Файл с информацией о модуле формы Dolz

Содержит информацию о модуле о модуле формы Dolz

Dolz.dcu

Объектный файл для Dolz.pas

Откомпилированная версия Dolz.pas

Otchet1.dfm

Файл формы Otchet1

Содержит список свойств компонентов включенных в эту форму

Otchet1.pas

Файл программного модуля данных Otchet1

Определяет функциональность формы Otchet1

Otchet1.ddp

Файл с информацией о модуле формы Otchet1

Содержит информацию о модуле о модуле формы Otchet1

Otchet1.dcu

Объектный файл для Otchet1.pas

Откомпилированная версия Otchet1.pas

Otchet2.dfm

Файл формы Otchet2

Содержит список свойств компонентов включенных в эту форму

Otchet2.pas

Файл программного модуля данных Otchet2

Определяет функциональность формы Otchet2

Otchet2.ddp

Файл с информацией о модуле формы Otchet2

Содержит информацию о модуле о модуле формы Otchet2

Otchet2.dcu

Объектный файл для Otchet2.pas

Откомпилированная версия Otchet2.pas

PensFond.dfm

Файл формы PensFond

Содержит список свойств компонентов включенных в эту форму

PensFond.pas

Файл программного модуля данных PensFond

Определяет функциональность формы PensFond

PensFond.ddp

Файл с информацией о модуле формы PensFond

Содержит информацию о модуле о модуле формы PensFond

PensFond.dcu

Объектный файл для PensFond.pas

Откомпилированная версия PensFond.pas

Poisk.dfm

Файл формы Poisk

Содержит список свойств компонентов включенных в эту форму

Poisk.pas

Файл программного модуля данных Poisk

Определяет функциональность формы Poisk

Poisk.ddp

Файл с информацией о модуле формы Poisk

Содержит информацию о модуле о модуле формы Poisk

Poisk.dcu

Объектный файл для Poisk.pas

Откомпилированная версия Poisk.pas

Redakt.dfm

Файл формы Redakt

Содержит список свойств компонентов включенных в эту форму

Redakt.pas

Файл программного модуля данных Redakt

Определяет функциональность формы Redakt

Redakt.ddp

Файл с информацией о модуле формы Redakt

Содержит информацию о модуле о модуле формы Redakt

Redakt.dcu

Объектный файл для Redakt.pas

Откомпилированная версия Redakt.pas

Uotcherkr.dfm

Файл формы Uotcherk

Содержит список свойств компонентов включенных в эту форму

Uotcherkr.pas

Файл программного модуля данных Uotcherkr

Определяет функциональность формы Uotcherkr

Uotcherkr.dcu

Объектный файл для Uotcherkr.pas

Откомпилированная версия Uotcherkr.pas

Info.dfm

Файл формы Info

Содержит список свойств компонентов включенных в эту форму

Info.pas

Файл программного модуля данных Info

Определяет функциональность формы Info

Info.ddp

Файл с информацией о модуле формы Info

Содержит информацию о модуле о модуле формы Info

Info.dcu

Объектный файл для Info.pas

Откомпилированная версия Info.pas

 

2.8 Инструкция по применению


Для запуска программу необходимо поместить на диск (D:\). Вызов программы проводиться последовательно после двойного нажатия левой кнопки мыши на попку Мой компьютер ® диск D:\ ® BD_OK ® Otdel kadrov.exe, расположенном в каталоге программы. После запуска программы на экран выводиться главное окно базы данных «Отдел кадров» (представлено на рисунке 13).

Главное окно имеет меню. Меню «Данные» содержит следующие пункты: «Новый сотрудник», «Перечень должностей», «Перечень пенсионный фондов и «Выход». Меню «Сервис» содержит пункты необходимые для поиска и редактирования данных о сотруднике. Меню «Отчеты» содержит пункты: «Краткие данные о сотрудниках» и «Полные данные о сотрудниках». Меню «Справка» содержит пункты: «О программе» и «Справка».

Рисунок 13. Главное окно базы данных «Отдел кадров»

Для внесения данных о новом сотруднике открывается через меню «Данные» ® «Новый сотрудник» окно «Данные о работнике» (представлено на рисунке 14). Данное окно имеет четыре вкладки для ввода данных, такие как: «Данные о сотруднике», «Дополнительно», «Образование» и «Семейное положение».

Вкладка «Данные о сотруднике» служит для ввода следующих данных: табельного номера, фамилии, имени, отчества, даты рождения, должности, даты принятия на работу, даты окончания испытательного срока, даты увольнения. Вставка фотографии осуществляется нажатием кнопки , после чего открывается стандартное окно операционной системы Windows - «Открытие файла», где указывается путь и выбирается необходимый графический файл, содержащий фотографию. Для удаления фотографии необходимо нажать кнопку .

Рисунок 14. Окно ввода данных о новом сотруднике, вкладка «Данные о сотруднике»

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

Вкладка «Дополнительно» (представлено на рисунке 15) служит для ввода таких данных, как: номер удостоверения личности, кем выдано, дата выдачи удостоверения, РНН, СИК, наименование пенсионного фонда, домашнего и сотового телефонов, домашнего адреса, даты начала и окончания отпуска, основания предоставления отпуска (приказ №, дата).

Рисунок 15. Окно ввода данных о новом сотруднике, вкладка «Дополнительно»

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

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

Вкладка «Семейное положение» (представлено на рисунке 17) служит для ввода следующих данных: фамилии, имени, отчества супруга(и) и детей.

Для внесения данных о новой должности служит окно «Перечень должностей», которое открывается через меню «Данные» ® «Перечень должностей» (представлено на рисунке 18).

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

Рисунок 16. Окно ввода данных о новом сотруднике, вкладка «Образование»

Рисунок 17. Окно ввода данных о новом сотруднике, вкладка «Семейное положение»

Навигатор состоит из шести кнопок используемых для управления набором данных. Кнопка Insert  создает поле для ввода записи. После ввода новых данных необходимо нажать кнопку Refresh  для их сохранения. Для удаления записи необходимо выделить нужную запись и нажать кнопку Delete . Кнопка Edit  используется для редактирования записей. Для утверждения изменения записи используется кнопка Post . Кнопкой Cancel  можно воспользоваться для отмены изменения в текущей записи.

Рисунок 18. Окно «Перечень должностей»

Для внесения данных о новых пенсионных фондах служит окно «Перечень пенсионных фондов», которое открывается через меню «Данные» ® «Пенсионные фонды» (представлено на рисунке 19).

Для ввода данных по должностям используются таблица. Управление в данных таблицы осуществляется с помощью навигатора. Управлении навигатором описано выше в этом же разделе.

Рисунок 19. Окно «Перечень пенсионных фондов»

Для поиска данных о сотрудниках служит окно «Поиск данных» (представлено на рисунке 20), которое открывается в меню «Сервис» ® «Поиск данных». Для осуществления поиска данных о сотруднике, в открывшемся окне необходимо ввести фамилию сотрудника и нажать на кнопку .

Рисунок 20. Окно «Поиск данных»

Результаты поиска выводятся в таблицу, если в базе данных нет данных, то появиться окно, уведомляющее об этом (представлено на рисунке 21).

Рисунок 21. Окно уведомления, при отсутствии необходимых данных

Для редактирования данных о сотрудниках служит окно «Редактирование данных», которое открывается в меню «Сервис» ® «Редактирование данных». Управление в данных таблицы осуществляется с помощью навигатора. Управление навигатором описано выше в этом же разделе.

С помощью меню «Отчеты» ® «Краткие данные о сотрудниках» открывается специально окно, в котором выводиться личные карточки сотрудников, которые при необходимости можно вывести на печать.

В данном окне для изменения размеров страницы используются кнопки  «Страница целиком»,  «По ширине текста» и  «По ширине страницы». Для перехода по страницам используются кнопки  «Перейти к первой странице»,  «Перейти к предыдущей странице»,  «Перейти к следующей странице»,  «Перейти к последней странице». Кнопка  «Настройка принтера» используется для настройки параметров печати принтеров. Кнопка  «Печать» используется для непосредственного вывода на печать открытой станицы.

С помощью меню «Отчеты» - «Полные данные о сотрудниках», в котором выводиться полный список личных карточек сотрудника с данными о сотруднике. Управление в данном окне производиться аналогично управлению в окне «Краткие данные о сотрудниках».

Заключение

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

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

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

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

-       ввод данных;

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

-       удаление данных;

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

-       выводит основные данные на печать.

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

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

Список литературы

1.  Окинавская Хартия Глобального Информационного общества от 22 июля 2000 г. // Телекоммуникации и информатизация образования. -2001. - №1 (2) - Ст. 6.

2.      Ахаян Р., Макашарипо А., Эффективная работа с СУБД - СПб.: Питер, 2000

.        Бобровский С. Delphi 5: Учебный курс - СПб.: Питер, 2000-2003

.        Возневич Э., Освой самостоятельно Delphi - М.: Бином, 2000

.        Глушаков С.В., Ломотько Д.В. Базы данных. Учебный курс. - Харьков: Фолио; М.: ООО «Издательство АСТ», 2001

.        Гофман В., Хомоненко А. Delphi 6. - СПб.: БХВ-Петербург, 2001

.        Дарахвелидзе П.Г., Марков Е.П. Delphi - среда визуального программирования - С.-Пб.: БХВ, 2000

.        Дарахвелидзе П.Г., Марков Е.П. Delphi 4.0 - С.-Пб.: БХВ, 2000

.        Дейта К. Введение в системы баз данных - М.: Наука, 2000

.        Матчо Дж., Фолкнер Д. Delphi - М.: БИНОМ, 2000

.        Елманова Н., Трепалин С., Тенцер А., Delphi 6 и технология СОМ - С.-Пб.: Питер, 2002

.        Жуков А. Изучаем Delphi - С.-Пб.: Питер, 2000

.        Карпов Б. Delphi 5: Учебный курс - С.-Пб.: Питер, 2001

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

.        Кэнту М. Delphi 6-7 для профессионалов - С.-Пб.: Питер, 2002-2003

.        Орлик С., Секреты Delphi - М.: Бином, 2000

.        Пономарев В. Базы данных в Delphi 7. Самоучитель - С. Пб.: Питер, 2003

.        Сван Т., Секреты 32-разрядного программирования в Delphi - Киев: Диалектика, 2000

.        Свиридов Ю., Тюкачев Н. Delphi 5. Создание мультимедийных приложений: Учебный курс - С.-Пб.: Питер, 2001

.        Тейксера, Стив, Пачеко, Ксавье. Delphi 5. Руководство разработчика, том 1 - том 2. Основные методы и технологии программирования - Разработка компонентов и программирование баз данных: Пер. с англ.: Уч. Пос. - М.: Издательский дом «Вильямс», 2000

.        Фаронов В., Delphi 5: Руководство программиста - М.: Нолидж, 2001

.        Фаронов В., Delphi 6. Учебный курс - С.-Пб.: Питер, 2002 - М.: Нолидж, 2001

.        Фаронов В., Delphi. Программирование на языке высокого уровня - С.-Пб.: Питер, 2003

.        Фаронов В., Программирование баз данных в Delphi 6-7. Учебный курс - С.-Пб.: Питер, 2002-2003

.        Фаронов В., Профессиональная работа в Delphi 6. Библиотека программиста - С.-Пб.: Питер, 2002

.        Федоров А., Создание Windiws-приложений в среде Delphi - С.-Пб.: Питер, 2000

 


Приложение


Таблица установления связей



Sotrudnik.

1: ¥






TabNomer


Dopoln.





SurName


TabNomer

1: 1

Dolznost.



FirstName


IDDolz


IDDolz



OtchName


DayPrim


Dolz



Birthday


DayIsn





Foto


DayYvol





YdostNomer


DateNachOtp





YdostVidan


DateOkOtp





YdostDate


Osnov



PensFond.

1: 1

PHH





IDPensdogovor


Obrazovan.



Pensdogovor


Sik


TabNomer





HomeTel


Obrazov





SotTel


SchollName





Adress


Spez







Kvalif







Razrad







Staz







Stazob







Staznepr














Family.







TabNomer







Famsupr







Namesupr







Otchsupr







Datesupr







FamChild1







NameChild1







OtchChild1







DateChild1







FamChild2







NameChild2







OtchChild2







DateChild2







FamChild3







NameChild3







OtchChild3







DateChild3



 

Листинг программ


Листинг модуля Main

unit Main;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Menus, ComCtrls;= class(TForm): TStatusBar;: TMainMenu;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;N2Click (Sender: TObject);N4Click (Sender: TObject);N5Click (Sender: TObject);N7Click (Sender: TObject);N3Click (Sender: TObject);N6Click (Sender: TObject);N9Click (Sender: TObject);N10Click (Sender: TObject);N12Click (Sender: TObject);

{Private declarations}

{Public declarations};

: TMainForm;cotr, poisk, Redakt, Dolz, PensFond, Otchet1, Otchet2, Info;

{$R *.dfm}

TMainForm.N2Click (Sender: TObject);:= TCotrForm. Create(Application);;

TMainForm.N4Click (Sender: TObject);:= TPoiskForm. Create(Application);;

TMainForm.N5Click (Sender: TObject);:= TRedaktForm. Create(Application);;

TMainForm.N7Click (Sender: TObject);. Close;;

TMainForm.N3Click (Sender: TObject);:= TDolzForm. Create(Application);;

TMainForm.N6Click (Sender: TObject);:= TPensFondForm. Create(Application);;

TMainForm.N9Click (Sender: TObject);:= TOtchetForm1. Create(Application);. QuickRep1. Preview;. Hide;;

TMainForm.N10Click (Sender: TObject);:= TOtchetForm2. Create(Application);. QuickRep1. Preview;. Hide;;

TMainForm.N12Click (Sender: TObject);. Show;;.

Листинг модуля Cotr

Cotr;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ExtCtrls, ComCtrls, DBCtrls, StdCtrls, Mask, DB, DBTables,, Buttons;

= class(TForm): TPageControl;: TPanel;: TTabSheet;: TBevel;: TBevel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TDBEdit;: TLabel;: TLabel;: TDBEdit;: TLabel;: TDateTimePicker;: TLabel;: TLabel;: TDateTimePicker;: TDateTimePicker;: TDateTimePicker;: TLabel;: TLabel;: TTabSheet;: TBevel;: TBevel;: TBevel;: TBevel;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TDateTimePicker;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDateTimePicker;: TDateTimePicker;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TLabel;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TDBEdit;: TLabel;: TTabSheet;: TBevel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TTabSheet;: TBevel;: TBevel;: TBevel;: TBevel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TLabel;: TDBEdit;: TDBEdit;: TDBEdit;: TDateTimePicker;: TDateTimePicker;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDBEdit;: TDateTimePicker;: TDateTimePicker;: TDBEdit;: TDBEdit;: TDBEdit;: TDataSource;: TTable;: TBitBtn;: TOpenPictureDialog;: TBitBtn;: TBitBtn;: TBitBtn;: TDBImage;: TDBComboBox;: TDBComboBox;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TDataSource;: TTable;: TTable;: TTable;: TTable;: TTable;OpenBitBtnClick (Sender: TObject);ClearBitBtnClick (Sender: TObject);FormCreate (Sender: TObject);OkBitBtnClick (Sender: TObject);CloseBitBtnClick (Sender: TObject);FormClose (Sender: TObject; var Action: TCloseAction);

{Private declarations}

{Public declarations};

: TCotrForm;

{$R *.dfm}

TCotrForm. OpenBitBtnClick (Sender: TObject);OpenPicturedialog1. Execute then. Picture. LoadFromFile (OpenPictureDialog1. FileName);;

TCotrForm. ClearBitBtnClick (Sender: TObject);. Picture. LoadFromFile (ExtractFileDir(Application. ExeName)+'\'+'blank.bmp');;

TCotrForm. FormCreate (Sender: TObject);

begin

// При запуске приложения добаляем новую пустую запись в конец таблицы

SotrTable. Append;;

TCotrForm. OkBitBtnClick (Sender: TObject);

begin

// Записываем измененные данные в таблицу

// Записываем дату рождения. FieldByName('BirthBay').AsDateTime:=BirthDayPicker. Date;

// Записываем дату приема на работу. FieldByName('Dayprim').AsDateTime:=DayprimPicker. Date;

// Записываем дату окончания испытательного срока. FieldByName('Dayisn').AsDateTime:=DayisnPicker. Date;

// Записываем дату увольнения работника. FieldByName('Dayyvol').AsDateTime:=DayyvolPicker. Date;

// Записываем дату выдачи удостоверения. FieldByName('Ydostdate').AsDateTime:=YdostDatePicker. Date;

// Записываем дату начала отпуска. FieldByName('DateNachOtp').AsDateTime:=DateNachOtpPicker. Date;

// Записываем дату окончания отпуска. FieldByName('DateOkOtp').AsDateTime:=DateOkOtpPicker. Date;

// Записываем дату рождения супруга (мужа или жены)

SotrTable. FieldByName('DateSupr').AsDateTime:=DateSuprPicker. Date;

// Записываем дату рождения 1 ребенка. FieldByName('dateChild1').AsDateTime:=DateChildPicker1. Date;

// Записываем дату рождения 2 ребенка. FieldByName('dateChild2').AsDateTime:=DateChildPicker2. Date;

// Записываем дату рождения 3 ребенка. FieldByName('dateChild3').AsDateTime:=DateChildPicker3. Date;

// Записываем изменные данные в таблицу. Post;

// Добавляем новую запись в конец таблицы

Sotrtable. Append;;

TCotrForm. CloseBitBtnClick (Sender: TObject);

begin

// Отмена сделанных изменений. Cancel;

// Добавляем новую запись в конец таблицы

SotrTable. Append;;

TCotrForm. FormClose (Sender: TObject; var Action: TCloseAction);. Close;;.

Листинг модуля Dolz

Dolz;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, DBTables, DBCtrls, Grids, DBGrids, ExtCtrls;

= class(TForm): TPanel;: TDBGrid;: TDBNavigator;: TDataSource;: TTable;

{Private declarations}

{Public declarations};

: TDolzForm;

{$R *.dfm}.

Листинг модуля Otchet1Otchet1;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, QuickRpt, QRCtrls, ExtCtrls;

= class(TForm): TQuickRep;: TQRBand;: TQRBand;: TQRBand;: TQRBand;: TQRLabel;: TQRSysData;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBImage;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRDBText;

{Private declarations}

{Public declarations};

: TOtchetForm1;Uotchetkr1;

{$R *.dfm}.

Листинг модуля Otchet2Otchet2;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ExtCtrls, QuickRpt, QRCtrls;

= class(TForm): TQuickRep;: TQRBand;: TQRBand;: TQRBand;: TQRBand;: TQRSysData;: TQRLabel;: TQRDBText;: TQRDBText;: TQRDBText;: TQRDBText;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRLabel;: TQRDBText;: TQRDBImage;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;: TQRLabel;: TQRDBText;

{Private declarations}

{Public declarations};

: TOtchetForm2;Uotchetkr1;

{$R *.dfm}.

Листинг модуля PensFondPensFond;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, DBTables, DBCtrls, Grids, DBGrids, ExtCtrls;

= class(TForm): TPanel;: TDBGrid;: TDBNavigator;: TDataSource;: TTable;

{Private declarations}

{Public declarations};: TPensFondForm;

{$R *.dfm}.

Листинг модуля PoiskPoisk;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, DBTables, Grids, DBGrids, ExtCtrls, StdCtrls, Buttons;

type= class(TForm): TPanel;: TDBGrid;: TBitBtn;: TEdit;: TLabel;: TQuery;: TDataSource;TabNomer: TFloatField;SurName: TStringField;FirstName: TStringField;OtchName: TStringField;Birthbay: TDateField;Dolz: TStringField;Dayprim: TDateField;Dayisn: TDateField;Dayyvol: TDateField;YdostNomer: TFloatField;Ydostvidan: TStringField;YdostDate: TDateField;PHH: TFloatField;Sik: TStringField;PensDogovor: TStringField;HomeTel: TFloatField;SotTel: TFloatField;Adress: TStringField;DateNachOtp: TDateField;DateOkOtp: TDateField;Osnov: TStringField;Schollname: TStringField;Obrazov: TStringField;Spez: TStringField;Kvalif: TStringField;Staz: TFloatField;Stazob: TFloatField;Staznepr: TFloatField;Razrad: TStringField;Famsupr: TStringField;NameSupr: TStringField;OtchSupr: TStringField;DateSupr: TDateField;FamChild1: TStringField;NameChild1: TStringField;OtchChild1: TStringField;DateChild1: TDateField;FamChild2: TStringField;NameChild2: TStringField;OtchChild2: TStringField;DateChild2: TDateField;FamChild3: TStringField;NameChild3: TStringField;OtchChild3: TStringField;DateChild3: TDateField;BitBtn1Click (Sender: TObject);

{Private declarations}

{Public declarations};: TPoiskForm;

{$R *.dfm}

TPoiskForm. BitBtn1Click (Sender: TObject);

var: string[50]; // критерий запроса

buf:= FamEdit. Text;buf = '' then exit;

// пользователь ввел критерий поискаQuery1 do

// закрыть результат выполнения предыдущего запроса;

// удалить текст предыдущего запроса. Clear;

// формируем новый запрос. Add ('SELECT *');

SQL. Add ('FROM»:sotrudnik:sotrudnik.db» ');. Add('WHERE');. Add ('(SurName= «'+buf+'»)');. Add ('ORDER BY SurName, FirstName');

// выполнить запрос;

// отобразить результат выполнения запроса

if RecordCount <> 0 then. DataSet:= Query1

else('В базе данных «Отдел кадров» нет записей, удовлетворяющих'

+#13+ 'критерию запроса.');;;

end.

Листинг модуля RedaktRedakt;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, DB, DBTables, Grids, DBGrids, DBCtrls, ExtCtrls;

= class(TForm): TPanel;: TDBNavigator;: TDBGrid;: TDataSource;: TTable;

{Private declarations}

{Public declarations};

: TRedaktForm;

{$R *.dfm}.

Листинг модуля Uotchetkr1Uotchetkr1;, Classes, DB, DBTables;

= class(TDataModule): TQuery;: TDataSource;TabNomer: TFloatField;SurName: TStringField;FirstName: TStringField;OtchName: TStringField;Birthbay: TDateField;Dolz: TStringField;Dayprim: TDateField;Dayisn: TDateField;Dayyvol: TDateField;Foto: TGraphicField;YdostNomer: TFloatField;Ydostvidan: TStringField;YdostDate: TDateField;PHH: TFloatField;Sik: TStringField;PensDogovor: TStringField;HomeTel: TFloatField;SotTel: TFloatField;Adress: TStringField;DateNachOtp: TDateField;DateOkOtp: TDateField;Osnov: TStringField;Schollname: TStringField;Obrazov: TStringField;Spez: TStringField;Kvalif: TStringField;Staz: TFloatField;Stazob: TFloatField;Staznepr: TFloatField;Razrad: TStringField;Famsupr: TStringField;NameSupr: TStringField;OtchSupr: TStringField;DateSupr: TDateField;FamChild1: TStringField;NameChild1: TStringField;OtchChild1: TStringField;DateChild1: TDateField;FamChild2: TStringField;NameChild2: TStringField;OtchChild2: TStringField;DateChild2: TDateField;FamChild3: TStringField;NameChild3: TStringField;OtchChild3: TStringField;DateChild3: TDateField;

{Private declarations}

{Public declarations};

: TDataModule1;

{$R *.dfm}.

Листинг модуля InfoInfo;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, ExtCtrls;

= class(TForm): TImage;: TButton;Button1Click (Sender: TObject);

{Private declarations}

{Public declarations};

: TInfoForm;

{$R *.dfm}

TInfoForm. Button1Click (Sender: TObject);. Close;;.


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