Удержания из зарплаты

Таблица 3.13

Код удержания

Вид удержания

Сумма удержания

1

Подоходный налог

13

2

Материальный ущерб

25

3

Удержание за брак

10

4

Штраф

5

5

Задолженность

2

6

Прогул

25

7

Благотворительные цели

5

8

Столовая

3

9

Аванс

25

10

Невыполнение плана

15

11

Страховые выплаты

6

12

Невыполнение ТБ

30

13

Пьянство

50

14

Нет удержания

0

Разработка алгоритмов и технологии решения задачи

Общие сведения о содержании и алгоритме решения задачи

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

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

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

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

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

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

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

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

Рис. 4.1. Технологическая схема ввода информации и решения задачи оценки оплаты труда и учёта отработанного времени

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

Описание макетов экранных форм для ввода данных

Для ввода информации по учёту заработной платы и рабочего времени должны быть созданы экранные формы, соответствующие формам входных документов (расчётно-платёжная ведомость и табель учёта рабочего времени). Табель учёта рабочего времени (как уже было сказано выше, состоит из нескольких форм). Так же ввод данных будет осуществляться через формы справочных документов, которые будут представлены ниже. Через экранные формы ввода-вывода должен обеспечиваться однократный ввод данных во взаимосвязанные таблицы: «Должности»; «Подразделения»; «Список сотрудников»; «»Награждения»; «Учёт удержаний из зарплаты»; «Отпуска»; «Тарифная сетка»; «Образование»; «Расчётно-платёжная ведомость»; «Табель учёта рабочего времени». Ниже приведены макеты данных экранных форм:

Форма для загрузки данных о должностях на рис.4.2 (является составной многотабличной). Основная часть формы строится на основе таблицы «Должности». В неё входят поля: «Должность» и «Число вакансий». Подчинённая форма строится на основе таблицы «Сотрудники» и содержит информацию о фамилиях и табельных номерах сотрудников.

Макет формы ввода-вывода для загрузки данных о должностях

Рис. 4.2. Макет формы ввода-вывода для загрузки данных о должностях.

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

Макет формы ввода-вывода для загрузки данных об отпусках

Рис. 4.3. Макет формы ввода-вывода для загрузки данных об отпусках.

Форма для загрузки данных по подразделениям на рис.4.4 (является составной многотабличной). Состоит из двух основных частей (двух таблиц): «Подразделения» и «Сотрудники». В главной части вводится название подразделения, а в подчинённой форме вводятся данные о сотруднике.

Макет формы ввода-вывода для загрузки данных по подразделениям

Рис. 4.4. Макет формы ввода-вывода для загрузки данных по подразделениям.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Макет формы ввода-вывода для загрузки данных по отгулам

Рис. 4.10. Макет формы ввода-вывода для загрузки данных по отгулам.

Форма расчётно-платёжной ведомости представлена на рис.4.11 (является составной многотабличной). Основная часть формы строится на основе таблицы «Расчётно-платёжная ведомость» (РПВ). Так же данная форма состоит из следующих таблиц: «Сотрудники»; «Табель учёта рабочего времени» (ТУРВ); «Должности»; «Подразделения»; «Тарифная сетка»; «Награждения»; «Удержания». В неё входят поля: табельный номер сотрудника, фамилия; наименование должности», подразделение где он работает; его разряд, номер расчётной ведомости; номер табеля рабочего времени; количество (дневных, ночных, праздничных, больничных, отгуленных) часов, наименование награждения, наименование, удержания.

Макет формы расчётно-платёжной ведомости

Рис. 4.11. Макет формы расчётно-платёжной ведомости.

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

Макет формы ввода-вывода для загрузки данных по сотрудникам

Рис. 4.12. Макет формы ввода-вывода для загрузки данных по сотрудникам.

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

Макет формы ввода-вывода для загрузки данных по тарифным ставкам

Рис. 4.13. Макет формы ввода-вывода для загрузки данных по тарифным ставкам.

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

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

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

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

Макет формы ввода-вывода для загрузки данных по удержаниям

Рис. 4.15. Макет формы ввода-вывода для загрузки данных по удержаниям.

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

Алгоритм решаемой задачи должен обеспечить определение заработной платы и количество часов рабочего времени. К тому же определение заработной платы необходимо произвести по двум критериям: сформировать отчёты с группировкой по сотрудникам и с группировкой по подразделениям. В рассматриваемой задаче необходимо для выбранного сотрудника выдать отчет с данными анализа оплаты труда и выдать отчёт для выбранного структурного подразделения по оплатам труда. Поэтому задача может быть разделена на две подзадачи, в каждой из которых формируется свой выходной документ: (рис. 4.16).

Декомпозиция задачи анализа зарплаты на две подзадачи

Рис. 4.16. Декомпозиция задачи анализа зарплаты на две подзадачи

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

Реализация запросов средствами Access 2007:

Запрос, по удержаниям заработной платы (пример выполнения представлен на рис. 4.17) - определяет именно тех сотрудников, у кого производится удержание заработной платы (Вид>Режим SQL):

Пример выполнения запроса по удержаниям заработной платы

Рис. 4.17. Пример выполнения запроса по удержаниям заработной платы

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, [Учёт удержаний из зарплаты].[Вид удержания], [Учёт удержаний из зарплаты].[Сумма удержания (в %)]

FROM [Учёт удержаний из зарплаты] INNER JOIN ((Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]) INNER JOIN [Расчётно-платёжная ведомость] ON [Табель учёта рабочего времени].[№ табеля] = [Расчётно-платёжная ведомость].[№ табеля]) ON [Учёт удержаний из зарплаты].[Код удержания] = [Расчётно-платёжная ведомость].[Удержание зарплаты]

WHERE ((([Учёт удержаний из зарплаты].[Сумма удержания (в %)])>0))

ORDER BY [Учёт удержаний из зарплаты].[Сумма удержания (в %)];

Запрос, по стажу работы сотрудников (пример выполнения представлен на рис. 4.18) - определяет именно тех сотрудников (и их стаж), которые удовлетворяют введённому пользователем значению в диалоговом окне (Вид>Режим SQL):

SELECT Сотрудники.[Табельный №], Сотрудники.[ФИО], Сотрудники.[Год рождения], Сотрудники.[Количество детей], Сотрудники.[Должность], Сотрудники.[Подразделение], Сотрудники.[Образование], Сотрудники.[Стаж работы]

FROM Сотрудники

WHERE (((Сотрудники.[Стаж работы])=[Введите интересующий вас возраст]))

ORDER BY Сотрудники.[ФИО];

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

Рис. 4.18. Пример выполнения запроса по стажу работы сотрудников

Запрос по рабочим праздничным часам (пример выполнения представлен на рис. 4.19) - определяет именно тех сотрудников, которые работали в праздничные дни и имеют праздничные часы (Вид>Режим SQL):

Пример выполнения запроса по праздничным часам

Рис. 4.19. Пример выполнения запроса по праздничным часам

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, [Табель учёта рабочего времени].[Праздничные часы (часов)]

FROM Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]

WHERE ((([Табель учёта рабочего времени].[Праздничные часы (часов)])>0))

ORDER BY [Табель учёта рабочего времени].[Праздничные часы (часов)];

Запрос по рабочим ночным часам (пример выполнения представлен на рис. 4.20) - определяет именно тех сотрудников, которые работали в ночные часы (Вид>Режим SQL):

Пример выполнения запроса по ночным часам

Рис. 4.20. Пример выполнения запроса по ночным часам

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, [Табель учёта рабочего времени].[Ночные часы (часов)]

FROM Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]

WHERE ((([Табель учёта рабочего времени].[Ночные часы (часов)])>0))

ORDER BY [Табель учёта рабочего времени].[Ночные часы (часов)];

Запрос по рабочим дневным часам (пример выполнения представлен на рис. 4.21) - определяет количество дневных часов, отработанных каждым сотрудником, «0» часы не учитываются (Вид>Режим SQL):

Пример выполнения запроса по дневным часам

Рис. 4.21. Пример выполнения запроса по дневным часам

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, [Табель учёта рабочего времени].[Дневные часы (часов)]

FROM Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]

WHERE ((([Табель учёта рабочего времени].[Дневные часы (часов)])>0))

ORDER BY [Табель учёта рабочего времени].[Дневные часы (часов)];

Запрос по больничным часам (пример выполнения представлен на рис. 4.22) - определяет только тех работников, у которых имеются часы по болезни (Вид>Режим SQL):

Пример выполнения запроса по больничным

Рис. 4.22. Пример выполнения запроса по больничным

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, [Табель учёта рабочего времени].[Часов по болезни (часов)]

FROM Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]

WHERE ((([Табель учёта рабочего времени].[Часов по болезни (часов)])>0))

ORDER BY [Табель учёта рабочего времени].[Часов по болезни (часов)];

Запрос по отгулам (пример выполнения представлен на рис. 4.23) - определяет только тех работников, у которых имеются отгулы (Вид>Режим SQL):

Пример выполнения запроса по отгулам

Рис. 4.23. Пример выполнения запроса по отгулам

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, [Табель учёта рабочего времени].[Часов по отгулам (часов)]

FROM Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]

WHERE ((([Табель учёта рабочего времени].[Часов по отгулам (часов)])>0))

ORDER BY [Табель учёта рабочего времени].[Часов по отгулам (часов)];

Запрос, по отпускам (пример выполнения представлен на рис. 4.24) - определяет именно тех сотрудников, которые были в отпуске (так же предоставляет количество отпускных дней) и которые удовлетворяют введённому пользователем значению в диалоговом окне (Вид>Режим SQL):

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, Отпуск.[Вид отпуска], [Табель учёта рабочего времени].[Дата отпуска], [Табель учёта рабочего времени].[Количество дней]

FROM Сотрудники INNER JOIN (Отпуск INNER JOIN [Табель учёта рабочего времени] ON Отпуск.[Код отпуска] = [Табель учёта рабочего времени].[Отпуск]) ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]

WHERE ((([Табель учёта рабочего времени].[Дата отпуска])>=[Введите предпологаемую начальную дату:] And ([Табель учёта рабочего времени].[Дата отпуска])<=[Введите предпологаемую конечную дату:]) AND (([Табель учёта рабочего времени].[Количество дней])>0))

ORDER BY [Табель учёта рабочего времени].[Количество дней];

Пример выполнения запроса по отпускам

Рис. 4.24. Пример выполнения запроса по отпускам

Запрос по премиям (пример выполнения представлен на рис. 4.25) - определяет только тех работников, которые были награждены и так же указывает сумму награждения в процентах (Вид>Режим SQL):

Пример выполнения запроса по премиям

Рис. 4.25. Пример выполнения запроса по премиям

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, Награждения.[Вид премии], Награждения.[Сумма в %]

FROM (Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]) INNER JOIN (Награждения INNER JOIN [Расчётно-платёжная ведомость] ON Награждения.[Код премии] = [Расчётно-платёжная ведомость].[Премия сотруднику]) ON [Табель учёта рабочего времени].[№ табеля] = [Расчётно-платёжная ведомость].[№ табеля]

WHERE (((Награждения.[Сумма в %])>0))

ORDER BY Награждения.[Сумма в %];

Запрос для расчётно-платёжной ведомости (пример выполнения представлен на рис. 4.26). Данный запрос выводит полностью всех сотрудников (по запрашиваемому времени с помощью диалогового окна) с указанием всех рабочих часов, тарифных ставок, отпусков, премий, удержаний - и в итоге подсчитывает каждому зарплату - (Вид>Режим SQL). Так же с помощью данного запроса формируются отчёты по зарплате:

Пример выполнения запроса для расчётно-платёжной ведомости

Рис. 4.26. Пример выполнения запроса для расчётно-платёжной ведомости

SELECT Сотрудники.[Табельный №], Сотрудники.ФИО, Сотрудники.Должность, Сотрудники.Подразделение, [Тарифная сетка].[Тарифная ставка (руб)], [Табель учёта рабочего времени].[Дневные часы (часов)], [Табель учёта рабочего времени].[Ночные часы (часов)], [Табель учёта рабочего времени].[Праздничные часы (часов)], [Табель учёта рабочего времени].[Часов по болезни (часов)], [Табель учёта рабочего времени].[Часов по отгулам (часов)], Награждения.[Сумма в %], [Учёт удержаний из зарплаты].[Сумма удержания (в %)], [Расчётно-платёжная ведомость].[Дата начисления], ((((([Табель учёта рабочего времени]![Дневные часы (часов)]*[Тарифная сетка]![Тарифная ставка (руб)])+(([Табель учёта рабочего времени]![Ночные часы (часов)]/10)*[Тарифная сетка]![Тарифная ставка (руб)])+([Табель учёта рабочего времени]![Праздничные часы (часов)]*2*[Тарифная сетка]![Тарифная ставка (руб)])-((([Табель учёта рабочего времени]![Часов по болезни (часов)]*70)/100)*[Тарифная сетка]![Тарифная ставка (руб)]))*[Награждения]![Сумма в %])/100)*[Учёт удержаний из зарплаты]![Сумма удержания (в %)])/100 AS Зарплата

FROM [Учёт удержаний из зарплаты] INNER JOIN ([Тарифная сетка] INNER JOIN ((Сотрудники INNER JOIN [Табель учёта рабочего времени] ON Сотрудники.[Табельный №] = [Табель учёта рабочего времени].[Табельный № сотрудника]) INNER JOIN (Награждения INNER JOIN [Расчётно-платёжная ведомость] ON Награждения.[Код премии] = [Расчётно-платёжная ведомость].[Премия сотруднику]) ON [Табель учёта рабочего времени].[№ табеля] = [Расчётно-платёжная ведомость].[№ табеля]) ON [Тарифная сетка].[Номер разряда] = [Расчётно-платёжная ведомость].[Номер разряда]) ON [Учёт удержаний из зарплаты].[Код удержания] = [Расчётно-платёжная ведомость].[Удержание зарплаты]

WHERE (((((((([Табель учёта рабочего времени]![Дневные часы (часов)]*[Тарифная сетка]![Тарифная ставка (руб)])+(([Табель учёта рабочего времени]![Ночные часы (часов)]/10)*[Тарифная сетка]![Тарифная ставка (руб)])+([Табель учёта рабочего времени]![Праздничные часы (часов)]*2*[Тарифная сетка]![Тарифная ставка (руб)])-((([Табель учёта рабочего времени]![Часов по болезни (часов)]*70)/100)*[Тарифная сетка]![Тарифная ставка (руб)]))*[Награждения]![Сумма в %])/100)*[Учёт удержаний из зарплаты]![Сумма удержания (в %)])/100)>0))

ORDER BY Сотрудники.ФИО;

Разработка диалогового приложения пользователя

Запуск данного приложения начинается с открытия главной кнопочной формы, которая называется «Меню» (представлена на рис.5.1). Эта форма включает следующие подразделы: учётно-оперативная информация (содержит запросы); справочные данные (справочники); отчёты (выходные документы о заработной плате); расчётно-платёжная ведомость (форма по которой автоматически начисляется зарплата). При нажатии на любую кнопку переходим в соответствующее меню.

Форма «Меню»

Рис. 5.1. Форма «Меню»

Переходим в меню «Учётно-оперативная информация» (рис.5.2). Здесь доступны следующие пункты: запросы по отпускам, запросы по удержанию зарплаты, запросы по премиям, запросы о стаже сотрудников, запросы по рабочему времени. При нажатии соответствующего пункта переходим в следующее меню.

Форма «Учётно-оперативная информация»

Рис. 5.2. Форма «Учётно-оперативная информация»

При выборе пункта «Запросы по отпускам» появляются следующие диалоговые окна (рис.5.3), которые предлагают ввести интересующие нас даты (когда той или иной сотрудник ходил в отпуск) - форма ввода даты так же показана на рис.5.4. После этого будет выдана соответствующая форма (рис.5.3). В неё входят следующие данные: о фамилиях сотрудников, их табельных номерах, о подразделениях где они работают и их должностях. Так же туда входят поля: «Вид отпуска»; «Дата отпуска» и «Количество дней отпуска».

Рис. 5.4. Диалоговое окно Рис. 5.3. Форма «Отпуска»

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

Форма «Удержания по зарплате»

Рис. 5.5. Форма «Удержания по зарплате»

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

Форма «Премии сотрудников»

Рис. 5.6. Форма «Премии сотрудников»

Диалоговое окно

Рис. 5.7. Диалоговое окно

При выборе пункта «Запросы о стаже сотрудников» из меню «Учётно-оперативная информация» мы попадаем в следующее диалоговое окно (рис.5.7), где пользователю предлагается ввести возраст (стаж) сотрудника и далее мы попадаем в форму «Стаж работы сотрудников» (рис.5.8). Она содержит следующие поля: табельный номер сотрудника, фамилия; наименование должности», подразделение где он работает; его год рождения, количество детей, образование и стаж работы.

Форма «Стаж работы сотрудников»

Рис. 5.8. Форма «Стаж работы сотрудников».

При выборе пункта «Запросы по рабочему времени» из меню «Учётно-оперативная информация» мы попадаем в соответствующее меню (рис.5.9).

Меню «Запросы по рабочему времени»

Рис. 5.9. Меню «Запросы по рабочему времени»

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

Форма «Дневные рабочие часы»

Рис. 5.10 Форма «Дневные рабочие часы»

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

Форма «Рабочие часы ночные»

Рис. 5.11. Форма «Рабочие часы ночные»

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

Форма «рабочие часы (праздничные)»

Рис. 5.12. Форма «рабочие часы (праздничные)».

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

Форма «Часы по отгулам»

Рис. 5.13. Форма «Часы по отгулам»

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

Меню «Справочные данные»

Рис. 5.15. Меню «Справочные данные»

Форма «Больничные часы»

Рис. 5.14 Форма «Больничные часы».

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

Форма «Список сотрудников» Рис. 5.17 Форма «Подразделения»

Рис. 5.16 Форма «Список сотрудников» Рис. 5.17 Форма «Подразделения»

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

Рис. 5.18 Форма

«Список должностей» Рис.5.19 Форма «Ставки зарплаты»

Далее в главной кнопочной форме «Меню» выбираем пункт «Расчётно-платёжная ведомость» и переходим в соответствующее меню (рис.5.20). Выбираем пункт «Оформить ведомость на выдачу зарплаты» - переходим в меню (рис.5.21). В неё входят поля: табельный номер сотрудника, фамилия; наименование должности», подразделение где он работает; его разряд, номер расчётной ведомости; номер табеля рабочего времени; количество (дневных, ночных, праздничных, больничных, отгуленных) часов, наименование награждения, наименование, удержания.

Меню «Расчётная ведомость»

Рис.5.20 Меню «Расчётная ведомость»

Форма «Расчётная ведомость»

Рис.5.21 Форма «Расчётная ведомость»

Далее переходим в главное меню и выбираем пункт «Отчёты» и переходим в соответствующее меню. Нам на выбор предоставляется два отчёта по зарплате (они идентичны, но отличаются группировкой). При выборе пункта «….. с группировкой по сотрудникам» на экран выводятся диалоговые окна с предложением ввести интересующую на дату. После этого на экран выводится соответствующий отчёт (см. Приложение 1). Далее мы сможем вывести отчёт «…… с группировкой по подразделениям» (см. Приложение 2) - ход выполнения тот же самый. Т.о. работа с приложением завершена - из него можно выйти, выбрав в главном меню пункт «Выйти из приложения». Ниже на рис.5.22 приведена схема навигации диалога пользователя.

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

Рис.5.22. Пример схемы навигации диалога пользователя

 
< Пред   СОДЕРЖАНИЕ   Загрузить   След >