Смекни!
smekni.com

Разработка и программная реализация информационной системы Кадры (стр. 2 из 2)

Рис. 2. Схема данных

Главная кнопочная форма

Рис. 3. Главная кнопочная форма

Работа с приложением начинается с открытия главной кнопочной формы. На данной форме имеются кнопки для открытия соответственных форм, а также кнопка выхода из приложения.

Форма: Основная информация о сотрудниках

Рис. 4. Основная информация о сотрудниках

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

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

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

Форма: Поиск сотрудников

Рис. 5. Поиск сотрудников

На рисунках 5, 6, 7, 8 изображены формы поиска. Поиск может быть осуществлен по фамилии, по должности и по окладу. Нажатие кнопки выводит информацию в виде выпадающего списка. При нажатии кнопки отмена все формы поиска закрываются. Это реализовано с помощью макроса «Закрытие поиска».

Рис. 6. Поиск по фамилии

Рис. 7. Поиск по должности

Рис.8. Поиск по окладу

Форма: Печать /редактирование приказов

Рис. 9. Печать приказов

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

Запрос Возраст

SELECT DateDiff("yyyy",Сотрудники.[Дата рождения],Now()) AS Возраст, Сотрудники.[Табельный номер]

FROM Сотрудники;

Запрос Общий стаж

SELECT Sum(DateDiff("m",[Трудовая книжка].[Дата постановки],[Трудовая книжка].[Дата увольнения])) AS Все, Int(Все/12) AS Годы , Все-Годы*12 AS Месяцы , [Трудовая книжка].[Табельный номер]

FROM [Трудовая книжка]

GROUP BY [Трудовая книжка].[Табельный номер]

HAVING (((Last([Трудовая книжка].[Дата увольнения])) Is Not Null))

UNION

SELECT DateDiff("m",Last([Трудовая книжка].[Дата постановки]),Now()) AS Все, Int(Все/12) AS Годы , Все-Годы*12 AS Месяцы , [Трудовая книжка].[Табельный номер]

FROM [Трудовая книжка]

GROUP BY [Трудовая книжка].[Табельный номер]

HAVING (((First([Трудовая книжка].[Дата увольнения])) Is Null))

UNION SELECT Sum(DateDiff("m",[Трудовая книжка].[Дата постановки],[Трудовая книжка].[Дата увольнения]))+DateDiff("m",Last([Трудовая книжка].[Дата постановки]),Now()) AS Все, Int(Все/12) AS Годы , Все-Годы*12 AS Месяцы , [Трудовая книжка].[Табельный номер]

FROM [Трудовая книжка]

GROUP BY [Трудовая книжка].[Табельный номер]

HAVING (Last([Трудовая книжка].[Дата увольнения]) Is Null And (First([Трудовая книжка].[Дата увольнения]) Is Not Null));

Запрос Стаж на предприятии

SELECT Sum(DateDiff("m",[Трудовая книжка].[Дата постановки],[Трудовая книжка].[Дата увольнения])) AS Все, Int(Все/12) AS Годы , Все-Годы*12 AS Месяцы , [Трудовая книжка].[Табельный номер]

FROM [Трудовая книжка]

WHERE [Трудовая книжка].[Название учреждения]="ЗАО Строительная компания"

GROUP BY [Трудовая книжка].[Табельный номер]

HAVING (((Last([Трудовая книжка].[Дата увольнения])) Is Not Null))

UNION

SELECT DateDiff("m",Last([Трудовая книжка].[Дата постановки]),Now()) AS Все, Int(Все/12) AS Годы , Все-Годы*12 AS Месяцы , [Трудовая книжка].[Табельный номер]

FROM [Трудовая книжка]

WHERE [Трудовая книжка].[Название учреждения]="ЗАО Строительная компания"

GROUP BY [Трудовая книжка].[Табельный номер]

HAVING (((First([Трудовая книжка].[Дата увольнения])) Is Null))

UNION SELECT Sum(DateDiff("m",[Трудовая книжка].[Дата постановки],[Трудовая книжка].[Дата увольнения]))+DateDiff("m",Last([Трудовая книжка].[Дата постановки]),Now()) AS Все, Int(Все/12) AS Годы , Все-Годы*12 AS Месяцы , [Трудовая книжка].[Табельный номер]

FROM [Трудовая книжка]

WHERE [Трудовая книжка].[Название учреждения]="ЗАО Строительная компания"

GROUP BY [Трудовая книжка].[Табельный номер]

HAVING (Last([Трудовая книжка].[Дата увольнения]) Is Null And (First([Трудовая книжка].[Дата увольнения]) Is Not Null));

Запрос ФИО

SELECT Сотрудники.Фамилия & " " & Сотрудники.Имя & " " & Сотрудники.Отчество AS ФИО

FROM Сотрудники INNER JOIN [Трудовая книжка] ON Сотрудники.[Табельный номер]=[Трудовая книжка].[Табельный номер]

WHERE (([Трудовая книжка]!Должность="Генеральный директор"));

Заключение

В ходе выполнения курсовой работы средствами СУБД Microsoft Access была разработана информационная система «Кадры», предназначенная для автоматизации работы сотрудников отдела кадров.

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

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

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

Литература

1. Хансен Г., Хансен Дж. Базы данных: разработка и управление. — М.: БИНОМ, 1999. — 704 с.

2. Дейт К. Дж. Введение в системы баз данных. — К.; М.; СПб.: Издательский дом «Вильямс», 1999. — 848 с.

3. Карпов Б. Microsoft Access 2000: справочник. — СПб: Питер, 2000. — 416 с.

4. Праг К. Н., Ирвин М. Р. Access 2000. Библия пользователя. — М.: Вильямс, 2000. — 1040 с.

5. Евдокимов В.В. и др. Экономическая информатика: Учебник для вузов / Под ред. проф. В.В. Евдокимова. — СПб.: Питер, 1997. — 592 с.

6. Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных: Учебник для высших учебных заведений / Под ред. проф. А. Д. Хомоненко. — СПб: Корона принт, 2000. — 416 с.