2.4 Элементы интерфейса информационной системы «Начисление заработной платы сотрудникам средне-специальных учебных заведений»

При запуске программы пользователю предлагается указать пароль, окно пароля представлено на рисунке 6.

Рисунок 6. Окно пароля

При правильном вводе пароля (del) происходит загрузка программы, открывается главное окно приложения (рисунок 7).

Окно состоит из пяти объектов:

1)         Кадры;

2)         Расчет;

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

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

5)         Выход, при нажатии кнопки в левом нижнем углу с пиктограммой стрелки происходит выход из программы.

Рисунок 7. Главное окно

При щелчке мышью кнопке «Кадры» открывается окно «Окно категорий ввода и редактирования данных о сотруднике» (рисунок 8).

Данное окно содержит четыре объекта:

-  Ввод, при щелчке мышью открывается окно «Ввода и редактирования кадровых данных» (рисунок 9).

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

Рисунок 8. Окно «Категорий ввода и редактирования данных о сотрудниках»

Для ввода данных о принятом сотруднике необходимо нажать кнопку с пиктограммой «+», окно ввода станет пустым. Ввод начинается с Фамилии И.О., код сотруднику присваивается автоматически. Перемещения по объектам ввода осуществляется с помощью клавиши Tab или мыши. После заполнения всех данных необходимо нажать на кнопку с пиктограммой .

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

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

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

Редактирование, при щелчке мышью открывается окно программы «редактирование академических часов по классам» (рисунок 12).

В данном окне для удобства редактирования записей предусмотрены дополнительные диалоговые окна:


Рисунок 10. Окно ввода личных данных сотрудника

При щелчке на кнопке «Должности» появляется окно для редактирования должностных данных (рисунок 13).

При щелчке на кнопке «Часы» появляется окно для изменения количества часов преподаваемого предмета (рисунок 14).

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

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

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


Рисунок 11. Окно ввода должностных данных сотрудника

Рисунок 12. Окно редактирования данных

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


Рисунок 13. Окно редактирования должностных данных

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

Рисунок 14. Окно редактирования данных

Календарь, при щелчке мышью открывается окно программы «Учет рабочих дней» (рисунок 15).


Рисунок 15. Окно программы «Учет рабочих дней»

Если никаких изменений данных о сотрудниках не производиться, то для того чтобы произвести учет рабочих дней сотрудника вовсе не обязательно открывать окно программы «Редактирование». Окно программы «Учет рабочих дней» можно вызвать из окна категорий или любого окна программы из меню «Окно». Оно обеспечивает бухгалтеру быстрый ввод рабочих и пропущенных дней сотрудника. Учет рабочих дней состоит из нескольких этапов:

-  Устанавливается одна из опций «Пятидневка» или «Шестидневка».

-  Затем устанавливается текущий год и месяц.

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

Если сотрудник по каким-либо причинам пропустил рабочий день, то это фиксируется в объекте «Пропущенные дни» и автоматически происходит изменение значения отработанных дней.

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

При щелчке мышью по кнопке «Расчет» открывается окно программы «Категории расчета» (рисунок 16).

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

Рисунок 16. Окно программы «Категории расчета»

Категории расчета:

Вредность, Вредность рассчитывается работникам, которые в ходе своей деятельности наносят вред своему здоровью. Строка «Коэффициент» становится активной только для учителей химии и ИВТ (рисунок 17).


Рисунок 17. Окно программы расчета вредности

Классное руководство, при щелчке мышью открывается окно программы расчета классного руководства (рисунок 18), в котором указывается коэффициент расчета.

Рисунок 18. Окно программы расчета классного руководства

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


Рисунок 19. Окно программы расчета проверки тетрадей

Расчет проверки тетрадей происходит в зависимости от количества академических часов и от коэффициента расчета.

Замена (рисунок 20), в левой части окна указываются часы замены, а в правой части подсчитывается начисления.

Рисунок 20. Окно расчета «Замены часов»

Внеклассная работа (рисунок 21), в данном окне указывается расчетный коэффициент внеклассной работы.


Рисунок 21. Окно расчета за «Внеклассную работу»

Экология (рисунок 22), в данном окне рассчитывается экологические надбавки.

Рисунок 22. Окно расчета экологических надбавок

Углубленное изучение (рисунок 23).

Рисунок 23. Окно расчета экологических надбавок

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


Рисунок 24. Окно расчета ставки

При нажатии кноп «Итог» откроется диалоговое окно «Начисление заработной платы за текущий месяц» (рисунок 25).

Данное диалоговое окно предоставляет сведения о произведенных начислениях. С помощью кнопки  производится вставка записи в таблицу «Год», где хранятся все начисления за проработанные года. Кнопки  «Таблица месяц» и «Таблица год» позволяют просмотреть данные о начислениях за текущий месяц и проработанные года соответственно. При нажатии кнопки  или кнопки «Удержание из ЗП» открывается окно программы (рисунок 26), в котором отображаются начисления сотрудника с начала года и доходы, не подлежащие налогообложению.

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

При нажатии кнопки «Далее…» открывается окно программы «Сумма ОПВ и налоговые вычеты» (рисунок 27).


Рисунок 25. Окно программы «Начисление заработной платы за текущий месяц»

Рисунок 26 Окно программы «Начисление доходов»


Рисунок 27. Окно программы «Сумма ОПВ и налоговые вычеты»

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

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

Пункт «Налоги» меню «Окно» состоит из шести подпунктов:

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


Рисунок 28. Окно просмотра

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

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


Рисунок 29. Окно просмотра «Сумма ИПН»

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


Рисунок 30. Окно просмотра «Сумма социальных отчислений»

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

Рисунок 31. Окно просмотра «Социальные отчисления и социальный налог»


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

К выдаче, при щелчке мышью открывается окно просмотра доходов, подлежащих к выплате (рисунок 33). Кнопка «Данные» возвращает значения начисленной суммы без учета ИПН и ОПВ за текущий месяц. Так как сумма, подлежащая к выплате используется в отчетах, то ее необходимо сохранить в таблице «Месяц» с помощью кнопки .


Рисунок 33. Окно просмотра доходов, подлежащих к выплате

С помощью меню «Отчеты» можно получить доступ к отчетам за налоговый период (рисунок 35) и к квиткам (рисунок 34)

Рисунок 34 Квитки


Рисунок 35. Отчет за налоговый период

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

В меню «Окно» находиться вызов окна программы общих коэффициентов (рисунок 36). Они используются при расчетах и являются одинаковыми для всех сотрудников. При изменении коэффициентов расчета их достаточно изменить в соответствующих объектах и сохранить эти изменения. Эти изменения будут равносильны для каждого работника школы.

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


Рисунок 36. Окно ввода расчетных коэффициентов

Рисунок 37 Окно справки

Формулы, используемые в данной курсовой работе для начисления заработной платы учителям школы:

1) расчетная ставка

Ставка = БДО*К

где базовый должностной оклад (БДО) у всех сотрудников одинаковый, а коэффициент (К) зависит от разряда;

2) экологические надбавки


Экология = 1378.5*

3) вредность оплачивается учителям Химии и ИВТ за нанесенный вред здоровью в ходе уроков

Вредность = БДО * Надбавочный коэффициент

4) внеклассная работа

Внеклассная работа = БДО * Надбавочный коэффициент*

5) классное руководство

Классное руководство в начальных классах = БДО * Надбавочный коэффициент*

Классное руководство в старших классах = БДО * Надбавочный коэффициент*

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

6) недельные и разовые часы оплаты

Разовый час = ;

Недельный час = ;

Разовый час = ;

Недельный час = ;

8) замена углубленного изучения

Замена углубленного изучения = Часы замены в 1-4 классах * надбавочный коэффициент**

Замена углубленного изучения = Часы замены в 5-11 класса* надбавочный коэффициент**

9) Оплата заменяемых часов в начальных классах

Замена = часы замены в 0-4 классах * разовый час1-4класса+замена углубленного изучения в начальных классах;

10) Оплата заменяемых часов в старших классах

Замена = часы замены в 5-11 классах * разовый час5-11класса+замена углубленного изучения в старших классах;

11) Углубленное изучение

Углубленное изучение в начальных классах = количество часов + часы индивидуальной групповой консультации * надбавочный коэффициент**

Углубленное изучение в старших классах = количество часов + часы индивидуальной групповой консультации в 5-11 классах + Надомное изучение в 5-11 классах* надбавочный коэффициент**

12) проверка тетрадей

Проверка тетрадей в подготовительных классах = БДО *надбавочный коэффициент*

Проверка тетрадей в начальных классах =количество часов в 1-4 кл. * процентный показатель* **

Проверка тетрадей в старших классах = количество часов в 5-11 классах * процентный показатель**

13) заработная плата начисляется в зависимости от нагрузки

Заработная плата в начальных классах = общее количество часов + индивидуальные групповые консультации в 1-4 классах* Недельный час в 1-4 классах.*

Заработная плата в старших классах = общее количество часов + +Надомное изучение в 5-11 классах* индивидуальные групповые консультации в 5-11 классах* Недельный час в 5-11 классах*

14) общая заработная плата в месяц учителей школ

Общая заработная плата в месяц учителей школ = Проверка тетрадей + Заработная плата + Углубленное изучение + Замещение + Экологические надбавки + Вредность + Внеклассная работа + классное руководство;

Формулы удержания из заработной платы налоговых отчислений:

15) начислено доходов с начала года

Начислено доходов с начала года = доходы, начисленные в текущем месяце + доходы, начисленные в предыдущем месяце с начала года;

16) доходы, не подлежащие налогообложению с начала года

Доходы, не подлежащие налогообложению с начала года = доходы, не подлежащие налогообложению в текущем месяце + доходы, не подлежащие налогообложению в предыдущем месяце с начала года;

17) обязательные пенсионные взносы за текущий месяц

Обязательные пенсионные взносы за текущий месяц = Общая заработная плата за текущий месяц / процент ОПВ (10%);

18) сумма Обязательных пенсионных взносов

Сумма ОПВ = Обязательные пенсионные взносы за текущий месяц + сумма обязательных пенсионных взносов в предыдущем месяц с начала года;

19) налоговые вычеты с начала года

Налоговые вычеты с начала года = Налоговые вычеты за текущий месяц + Налоговые вычеты в предыдущем месяце с начала года;

20) сумма облагаемого ИПН дохода с начала года

Сумма облагаемого ИПН дохода с начала года = Начислено доходов с начала года - Доходы, не подлежащие налогообложению с начала года - Сумма ОПВ с начала года - Налоговые вычеты с начала года;

21) коэффициент перерасчета

Коэффициент перерасчета = количество месяцев до конца налогового периода / месяц по порядку его деятельности на данном предприятии;

22) расчетная сумма облагаемого ИПН дохода

Расчетная сумма облагаемого ИПН дохода = Сумма облагаемого ИПН дохода с начала года * Коэффициент перерасчета;

23) сумма ИПН с расчетной суммы облагаемого ИПН доходов

Сумма ИПН с расчетной суммы облагаемого ИПН доходов= =ЕСЛИ(Расчетная сумма облагаемого ИПН дохода >=6991200, ТО 973525+(Расчетная сумма облагаемого ИПН дохода -6991200)*20%; ИНАЧЕ ЕСЛИ ( Расчетная сумма облагаемого ИПН дохода >=2330400, ТО 274405+(Расчетная сумма облагаемого ИПН дохода -2330400)*15%; ИНАЧЕ ЕСЛИ(Расчетная сумма облагаемого ИПН дохода >=466080, ТО 32043+(Расчетная сумма облагаемого ИПН дохода -466080)*13%; ИНАЧЕ ЕСЛИ (Расчетная сумма облагаемого ИПН дохода >=174780, ТО 8739+(Расчетная сумма облагаемого ИПН дохода -174780)*8%; ИНАЧЕ Расчетная сумма облагаемого ИПН дохода *5%))));

24) сумма ИПН налога за отчетный месяц

Сумма ИПН налога за отчетный месяц = Сумма ИПН с расчетной суммы облагаемого ИПН доходов / Коэффициент перерасчета;

25) сумма ИПН, удержанные в предыдущие месяцы

Сумма ИПН, удержанные в предыдущие месяцы = Сумма ИПН налога за предыдущий отчетный месяц;

26) сумма ИПН, подлежащая удержанию

Сумма ИПН, подлежащая удержанию = Сумма ИПН налога за отчетный месяц - Сумма ИПН, удержанные в предыдущие месяцы;

27) доходы, не являющиеся объектом обложения социальным налогом, за исключение ОПВ за отчетный месяц

Доходы, не являющиеся объектом обложения социальным налогом, за исключение ОПВ за отчетный месяц = доходы, не подлежащие налогообложению в текущем месяце;

28) доходы, не являющиеся объектом обложения социальным налогом, за исключение ОПВ с начала года

Доходы, не являющиеся объектом обложения социальным налогом, за исключение ОПВ с начала года = Доходы, не являющиеся объектом обложения социальным налогом, за исключение ОПВ за отчетный месяц + Доходы, не являющиеся объектом обложения социальным налогом, за исключение ОПВ в предыдущем месяце с начала года;

29) доходы, облагаемые социальным налогом за отчетный период

Доходы, облагаемые социальным налогом за отчетный период = доходы, начисленные в текущем месяце - Обязательные пенсионные взносы за текущий месяц - Доходы, не являющиеся объектом обложения социальным налогом, за исключение ОПВ за отчетный месяц;

30) доходы, облагаемые социальным налогом с начала года

Доходы, облагаемые социальным налогом с начала года = Доходы, облагаемые социальным налогом за отчетный месяц + Доходы, облагаемые социальным налогом в предыдущем месяце с начала года;

31) расчетная сумма дохода, облагаемого социальным налогом

Расчетная сумма дохода, облагаемого социальным налогом = Доходы, облагаемые социальным налогом с начала года * Коэффициент перерасчета;

32) сумма социального налога с расчетной суммы дохода, облагаемого социальным налогом

Сумма социального налога с расчетной суммы дохода, облагаемого социальным налогом = ЕСЛИ(Расчетная сумма дохода, облагаемого социальным налогом >=6991200, ТО 973525+( Расчетная сумма дохода, облагаемого социальным налогом -6991200)*20%; ИНАЧЕ ЕСЛИ(Расчетная сумма дохода, облагаемого социальным налогом >=2330400, ТО 274405+(Расчетная сумма дохода, облагаемого социальным налогом -2330400)*15%; ИНАЧЕ ЕСЛИ (Расчетная сумма дохода, облагаемого социальным налогом >=466080, ТО 32043+( Расчетная сумма дохода, облагаемого социальным налогом -466080)*13%; ИНАЧЕ ЕСЛИ (Расчетная сумма дохода, облагаемого социальным налогом >=174780, ТО 8739+(Расчетная сумма дохода, облагаемого социальным налогом -174780)*8%; ИНАЧЕ Расчетная сумма дохода, облагаемого социальным налогом *5%))));

33) сумма социального налога за отчетный месяц

Сумма социального налога за отчетный месяц = Сумма социального налога с расчетной суммы дохода, облагаемого социальным налогом / /Коэффициент перерасчета;

34) сумма социального налога за предыдущие месяцы года

Сумма социального налога за предыдущие месяцы года = Сумма социального налога за предыдущий отчетный месяц;

35) сумма социального налога подлежащего уплате

Сумма социального налога подлежащего уплате = Сумма социального налога за отчетный месяц - Сумма социального налога за предыдущие месяцы года;

36) доходы физических лиц, с которых исчисляются социальные отчисления

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

37) сумма социальных отчислений

Сумма социальных отчислений = Доходы физических лиц, с которых исчисляются социальные отчисления*1,5% / 100%;


38) сумма социального налога за минусом социальных отчислений

Сумма социального налога за минусом социальных отчислений = Сумма социального налога подлежащего уплате - Сумма CО;

39) доходы подлежащие к выплате

Доходы подлежащие к выплате = доходы, начисленные в текущем месяце – ОПВ за текущий месяц – Сумма ИПН, подлежащая удержанию.


ЗАКЛЮЧЕНИЕ

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

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

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

Данная программа была создана по просьбе бухгалтеров школы №31, так как программа «1С – бухгалтерия» предназначена для различных сфер применения, и для того чтобы ее освоить необходимо очень много времени, сил и средств. Очень не многие бухгалтера могут освоить программу «1С - бухгалтерия», и поэтому они прибегают к другим способам расчета заработной платы к таким как бумажный способ или расчет заработной платы с помощью электронных таблиц Excel. В данном случае расчеты производятся в ручную по каждому сотруднику индивидуально. Это очень трудоемкий процесс и занимает очень много времени и ресурсов компьютера.

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


СПИСОК ЛИТЕРАТУРЫ

1.         Симонович С. Специальная информатика /С. Симонович, Г. Евсеев, А. Алексеев. – М.: АСТпресс, 2001. – 478с.

2.         Бакаревич Ю. Самоучитель Microsoft Access 2002 /Ю. Бакаревич, Н. Пушкина. - СПб.: БХВ – Петербург, 2004. – 720 с.

3.         Бобровский С. Delphi7 учебный курс /С. Бобровский. – СПб.: Питер, 2004. – 834с.

4.         Фаронов В. Система программирования Delphi /В. Фаронов. – СПб.: БХВ-Петербург, 2004. – 888с.

5.         Родостовец В.П. Бухгалтерский учет для предприятий /В.П. Родостовец. – Алматы: Каржы – Каражат, 2002. – 978с.

6.         Смурыгина И. Бюллетень бухгалтера: В помощь бухгалтеру /И. Смурыгина, К. Жанбыршиева // БИКО – 2005. - №6. – с.6-9

7.         Гончаров А.Ю. Access 2003 /А.Ю. Гончаров. – М.: Кудиц – Образ, 2004. – 964с.

8.         Михеева В. Microsoft Access 2002 / В. Михеева, И. Харитонова. - СПб.: БХВ – Петербург, 2003. – 1040с.

9.         Фаронов В. Программирование баз данных в Delphi /В. Фаронов. – СПб.: Питер, 2004. – 759с.

10.      Гофман В. Работа с базами данных в Delphi /В. Гофман. – СПб.: БХВ – Петербург, 2003. – 958с.

11.      Роб П. Системы баз данных: проектирование, реализация и управление /П. Роб. - СПб.: БХВ – Петербург, 2004. – 1018с.

12.      Гофман В. Работа с базами данных в Delphi /В. Гофман, А. Хомоненко. - СПб.: БХВ – Петербург, 2003. – 624с.

13.      Драхвелидзе П. Программирование в Delphi 7 /П. Драхвелидзе, Е. Марков. - СПб.: БХВ – Петербург, 2004. – 784 с.

14.      Хомоненко А. Самоучитель Delphi /А. Хомоненко, В. Гофман. - СПб.: БХВ – Петербург, 2003. – 576с.

15.      Михеев С.Л. Access 2000 /С.Л. Михеев.– М.: Кудиц – Образ, 2000. – 964с.

16.      Роббинс Д. Отладка приложений /Д. Робинс. – СПб.: БХВ – Петербург, 2003. – 512с.

17.      Бекаревич Ю. Самоучитель Microsoft Access 2000 /Ю. Бекаревич, Н. Пушкина.- СПб.: БХВ – Петербург, 2000. – 480с.

18.      Бекаревич Ю. Microsoft Access 2000 за 30 занятий / Ю. Бекаревич, Н. Пушкина.- СПб.: БХВ – Петербург, 2000. – 480с.

19.      Мамаев Е. MS SQL Server: проектирование и реализация баз данных /Е. Мамаев.- СПб.: БХВ – Петербург, 2003. – 496с.

20.      Понамарев В. COM и ActiveX в Delphi /В. Понамарев.- СПб.: БХВ – Петербург, 2000. – 320с.

21.      Тихомиров Ю. Microsoft SQL Server /Ю. Тихомиров.- СПб.: БХВ – Петербург, 2000. – 320с.

22.       Долженков В. Microsoft Excel 2002 /В. Долженков, Ю. Колесников.- СПб.: БХВ – Петербург, 2000. – 1072с.

23.       Андерсен В. Разработка приложений в Access 97 /В. Андерсен.- СПб.: БХВ – Петербург, 2000. – 320с.

24.       Гарнаев А. Microsoft Excel: разработка приложений /А. Гарнаев.- СПб.: БХВ – Петербург, 2000. – 320 с.

25.      Родостовец В.П. Бухгалтерский учет: учебный курс /В.П. Родостовец. – Алматы: Каржы – Каражат, 2002. – 978с.

26.      Фаронов В. Система программирования Delphi /В. Фаронов. – СПб.: БХВ-Петербург, 2004. – 888с.

27.      Гофман В. Работа с базами данных в Delphi /В. Гофман, А. Хомоненко. - СПб.: БХВ – Петербург, 2003. – 624с.

28.      Понамарев В. Механизм доступа ActiveX в Delphi /В. Понамарев.- СПб.: БХВ – Петербург, 2000. – 320с.

29.      Бекаревич Ю. Microsoft Access 2000: Экспресс-курс /Ю. Бекаревич, Н. Пушкина.- СПб.: БХВ – Петербург, 2000. – 480с.

30.      Погорелов В. Delphi: Быстрый старт /В. Погорелов.- СПб.: БХВ – Петербург, 2000. – 320с.


ПРИЛОЖЕНИЕ А

Листинг главной формы программы

unit UnMainForm;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, menu, jpeg, StdCtrls, Buttons;

var

MainForm: TMainForm;

implementation

uses menu_ras, dmPayU, prjBase, grid_Year;

{$R *.dfm}

procedure TMainForm.FormCreate(Sender: TObject);

begin

SpeedButton1.Hint:='Выход';

SpeedButton2.Hint:='Справка';

SpeedButton3.Hint:='Расчет ЗП';

SpeedButton4.Hint:='Данные за прошедшие года';

SpeedButton5.Hint:='Ввод\редактирование '+chr(13)+ 'данных о работниках';

end;

procedure TMainForm.Label2Click(Sender: TObject);

begin

MainForm.Visible:=false;

frm_menu.ShowModal;

end;

procedure TMainForm.Label5Click(Sender: TObject);

begin

winhelp(MainForm.Handle,'HLP1.HLP',HELP_CONTEXT, 1);

end;

procedure TMainForm.Label3Click(Sender: TObject);

begin

MainForm.Visible:=false;

menu2.ShowModal;

end;

procedure TMainForm.Label7Click(Sender: TObject);

begin

TabYear.ShowModal;

end;

procedure TMainForm.SpeedButton1Click(Sender: TObject);

begin

mainform.Close;

end;

procedure TMainForm.SpeedButton5Click(Sender: TObject);

begin

MainForm.Visible:=false;

frm_menu.ShowModal;

end;

procedure TMainForm.SpeedButton3Click(Sender: TObject);

begin

MainForm.Visible:=false;

menu2.ShowModal;

end;

procedure TMainForm.SpeedButton4Click(Sender: TObject);

begin

TabYear.ShowModal;

end;

procedure TMainForm.SpeedButton2Click(Sender: TObject);

begin

winhelp(MainForm.Handle,'HLP1.HLP',HELP_CONTEXT, 1); end;


ПРИЛОЖЕНИЕ Б

Листинг модуля данных

unit dmPayU;

interface

uses

SysUtils, Classes, DB, ADODB, DdeMan, OleServer, ExcelXP;

procedure moveCalcFields(DataSet: TDataSet);

procedure personCalcFields(DataSet: TDataSet);

procedure yearCalcFields(DataSet: TDataSet);

var

dmPay: TdmPay;

implementation

{$R *.dfm}

procedure TdmPay.moveCalcFields(DataSet: TDataSet);

begin

//ставка для расчета

with dmPay.move do

fields[33].AsCurrency:=fields[3].AsFloat*person.Fields[4].AsCurrency;

//недельный час (1-4)классах

if dmpay.move.Fields[28].AsBoolean=true then

with dmpay.move do

fields[34].AsCurrency:=fields[33].AsCurrency/coff.Fields[1].AsFloat

else

with dmpay.move do

fields[34].AsCurrency:=0;

//недельный час (5-11)классах

if dmpay.move.Fields[28].AsBoolean=true then

with dmpay.move do

fields[35].AsCurrency:=fields[33].AsCurrency/coff.Fields[2].AsFloat

else

with dmpay.move do

fields[35].AsCurrency:=0;

//разовый час (1-4)

if dmpay.move.Fields[28].AsBoolean=true then

with dmpay.move do

fields[36].AsCurrency:=fields[33].AsCurrency/coff.Fields[3].AsFloat

else

with dmpay.move do

fields[36].AsCurrency:=0;

//разовый час (5-11)

if dmpay.move.Fields[28].AsBoolean=true then

with dmpay.move do

fields[37].AsCurrency:=fields[33].AsCurrency/coff.Fields[4].AsFloat

else

with dmpay.move do

fields[37].AsCurrency:=0;

//Экология

if dmpay.move.Fields[28].AsBoolean=true then

with dmPay.move do

fields[39].AsFloat:=coff.Fields[5].AsFloat*person.fields[9].AsFloat/person.fields[7].AsFloat

else dmpay.move.fields[39].AsCurrency:=0;

//ЗП

with dmpay.move do

fields[40].AsCurrency:=((fields[5].AsFloat+fields[6].AsFloat+fields[9].AsFloat+fields[10].AsFloat+fields[13].AsFloat+fields[14].AsFloat)*fields[34].AsFloat+(fields[7].AsFloat+fields[8].AsFloat+fields[11].AsFloat+fields[12].AsFloat+fields[15].AsFloat+fields[16].AsFloat)*fields[35].AsFloat)*person.Fields[9].AsInteger/person.Fields[7].AsInteger;

// Проверка тетрадей

if (dmPay.move.FieldByName('Предмет').AsString='начальные классы') then

begin

with dmpay.move do

fields[41].AsCurrency:=dmpay.person.Fields[4].AsCurrency*fields[25].AsFloat* person.Fields[9].AsInteger/person.Fields[7].AsInteger

end else

with dmpay.move do

if fields[29].AsBoolean=true then

begin

fields[41].AsCurrency:=((fields[5].AsFloat+fields[6].AsFloat+(fields[9].AsFloat+ fields[10].AsFloat+fields[13].AsFloat+fields[14].AsFloat)/2)*fields[25].AsFloat/ coff.Fields[1].AsFloat+((fields[7].AsFloat+(fields[11].AsFloat+fields[15].AsFloat) /2)*fields[26].AsFloat+(fields[8].AsFloat+(fields[12].AsFloat+fields[16].AsFloat)/2)*fields[27].AsFloat/coff.Fields[2].AsFloat)*person.Fields[4].AsCurrency* person.Fields[9].AsInteger/person.Fields[7].AsInteger

end else

with dmpay.move do

fields[41].AsCurrency:=((fields[5].AsFloat+fields[6].AsFloat)*fields[25].AsFloat/ coff.Fields[1].AsFloat+(fields[7].AsFloat*fields[26].AsFloat+fields[8].AsFloat* fields[27].AsFloat/coff.Fields[2].AsFloat)*person.Fields[4].AsCurrency* person.Fields[9].AsInteger/person.Fields[7].AsInteger;

// Замена

with dmpay.move do

fields[42].AsCurrency:= (fields[17].AsFloat+ fields[18].AsFloat) * fields[36].AsFloat + ( fields[19].AsFloat+ fields[20].AsFloat)* fields[37].AsFloat;

 // Углубленное изучение

with dmpay.move do

fields[43].AsCurrency:=((fields[5].AsFloat+fields[6].AsFloat+fields[9].AsFloat+ fields[10].AsFloat+fields[13].AsFloat+fields[14].AsFloat)/coff.Fields[1].AsFloat+ (fields[7].AsFloat+fields[11].AsFloat+fields[15].AsFloat+fields[8].AsFloat+ fields[12].AsFloat+fields[16].AsFloat)/coff.Fields[2].AsFloat)* person.Fields[4].AsCurrency*fields[22].AsFloat*person.Fields[9].AsInteger/ person.Fields[7].AsInteger;

// Замена углубленного изучения

with dmpay.move do

fields[44].AsCurrency:=((fields[17].AsFloat+fields[18].AsFloat)/coff.Fields[3].AsFloat + (fields[19].AsFloat+fields[20].AsFloat) / coff.Fields[4].AsFloat) * fields[22].AsFloat*person.Fields[4].AsFloat;

//Оплата ставки

with dmpay.move do

fields[45].AsCurrency:=fields[30].AsFloat*fields[33].AsFloat*person.Fields[9].AsInteger / person.Fields[7].AsInteger;

//Классное руководство

with dmpay.move do

fields[46].AsCurrency:=person.Fields[4].AsFloat*fields[21].AsFloat* person.Fields[9].AsInteger / person.Fields[7].AsInteger;

//Вредность

with dmpay.move do

fields[47].AsCurrency:=person.Fields[4].AsFloat*fields[23].AsFloat* person.Fields[9].AsInteger/person.Fields[7].AsInteger;

// Внеклассная работа

with dmpay.move do

fields[48].AsCurrency:=person.Fields[4].AsFloat*fields[24].AsFloat* person.Fields[9].AsInteger/person.Fields[7].AsInteger;

//Итого

with dmpay.move do

fields[49].AsCurrency:=fields[47].AsCurrency+fields[46].AsCurrency+ fields[45].AsCurrency+fields[44].AsCurrency+fields[42].AsCurrency+ fields[41].AsCurrency+fields[40].AsCurrency+fields[39].AsCurrency+ fields[48].AsCurrency+fields[43].AsCurrency;

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

with dmpay.move do

fields[53].AsCurrency:=fields[54].AsFloat*fields[49].AsFloat;

 end;

procedure TdmPay.personCalcFields(DataSet: TDataSet);

begin

with dmPay.person do

fields[9].AsFloat:=fields[7].AsFloat-fields[8].AsFloat;

end;

Листинг окна поиска:

procedure Tfff.SpeedButton2Click(Sender: TObject);

var LO:TLocateOptions;

begin

LO:=[];

if CheckBox1.Checked then LO:=LO+[loCaseInsensitive];

if Checkbox2.Checked then LO:=[loPartialKey];

dmPay.person.Locate('P_Name',edit1.Text,LO);

fff.Close;

end;

end.


ПРИЛОЖЕНИЕ В

Листинг окна программы «Сумма ИПН»

unit ipn;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DBCtrls, Mask, ExtCtrls, ExcelXP, OleServer, Menus;

var

frm_ipn: Tfrm_ipn;

implementation

uses dmPayU, sum_soc, soc, prjBase, tabTime, frm_tim, frm_kl_ruk, frm_propusk, PropD, frm_vnekl, frm_vred, frm_ekolg, Zam, frm_kn;

{$R *.dfm}

procedure Tfrm_ipn.Button1Click(Sender: TObject);

var n:OleVariant;

begin

n:='C:\ЗарПлата\nal.xls';

excelapplication1.Workbooks.Open(n,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,0);

ExcelWorkbook1.ConnectTo(ExcelApplication1.ActiveWorkbook);

ExcelApplication1.Cells.Item[13,11].value:=DBedit2.Text;

ExcelWorkbook1.Save;

// обмен данными

edit39.Text:=excelapplication1.Cells.Item[13,10];

edit40.Text:=excelapplication1.Cells.Item[14,10];

edit41.Text:=excelapplication1.Cells.Item[15,10];

edit42.Text:=excelapplication1.Cells.Item[16,10];

edit43.Text:=excelapplication1.Cells.Item[17,10];

edit44.Text:=excelapplication1.Cells.Item[18,10];

edit45.Text:=excelapplication1.Cells.Item[19,10];

edit46.Text:=excelapplication1.Cells.Item[20,10];

edit47.Text:=excelapplication1.Cells.Item[21,10];

edit48.Text:=excelapplication1.Cells.Item[22,10];

edit49.Text:=excelapplication1.Cells.Item[23,10];

edit50.Text:=excelapplication1.Cells.Item[24,10];

edit52.Text:=excelapplication1.Cells.Item[25,10];

edit27.Text:=excelapplication1.Cells.Item[13,12];

edit28.Text:=excelapplication1.Cells.Item[14,12];

edit29.Text:=excelapplication1.Cells.Item[15,12];

edit30.Text:=excelapplication1.Cells.Item[16,12];

edit31.Text:=excelapplication1.Cells.Item[17,12];

edit32.Text:=excelapplication1.Cells.Item[18,12];

edit33.Text:=excelapplication1.Cells.Item[19,12];

edit34.Text:=excelapplication1.Cells.Item[20,12];

edit35.Text:=excelapplication1.Cells.Item[21,12];

edit36.Text:=excelapplication1.Cells.Item[22,12];

edit37.Text:=excelapplication1.Cells.Item[23,12];

edit38.Text:=excelapplication1.Cells.Item[24,12];

Edit1.Text:=excelapplication1.Cells.Item[13,13];

edit2.Text:=excelapplication1.Cells.Item[14,13];

edit3.Text:=excelapplication1.Cells.Item[15,13];

edit4.Text:=excelapplication1.Cells.Item[16,13];

edit5.Text:=excelapplication1.Cells.Item[17,13];

edit6.Text:=excelapplication1.Cells.Item[18,13];

edit7.Text:=excelapplication1.Cells.Item[19,13];

edit8.Text:=excelapplication1.Cells.Item[20,13];

edit9.Text:=excelapplication1.Cells.Item[21,13];

edit10.Text:=excelapplication1.Cells.Item[22,13];

edit11.Text:=excelapplication1.Cells.Item[23,13];

edit12.Text:=excelapplication1.Cells.Item[24,13];

Edit13.Text:=excelapplication1.Cells.Item[13,11];

edit14.Text:=excelapplication1.Cells.Item[14,11];

edit15.Text:=excelapplication1.Cells.Item[15,11];

edit16.Text:=excelapplication1.Cells.Item[16,11];

edit17.Text:=excelapplication1.Cells.Item[17,11];

edit18.Text:=excelapplication1.Cells.Item[18,11];

edit19.Text:=excelapplication1.Cells.Item[19,11];

edit20.Text:=excelapplication1.Cells.Item[20,11];

edit21.Text:=excelapplication1.Cells.Item[21,11];

edit22.Text:=excelapplication1.Cells.Item[22,11];

edit23.Text:=excelapplication1.Cells.Item[23,11];

edit24.Text:=excelapplication1.Cells.Item[24,11];

end;

procedure Tfrm_ipn.N3Click(Sender: TObject);

var n:OleVariant;

begin

n:='C:\ЗарПлата\nal.xls';

excelapplication1.Workbooks.Open(n,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,emptyParam,0);

ExcelWorkbook1.ConnectTo(ExcelApplication1.ActiveWorkbook);

ExcelApplication1.Cells.Item[13,11].value:=DBedit2.Text;

ExcelWorkbook1.Save;

edit39.Text:=excelapplication1.Cells.Item[13,10];

edit40.Text:=excelapplication1.Cells.Item[14,10];

edit41.Text:=excelapplication1.Cells.Item[15,10];

edit42.Text:=excelapplication1.Cells.Item[16,10];

edit43.Text:=excelapplication1.Cells.Item[17,10];

edit44.Text:=excelapplication1.Cells.Item[18,10];

edit45.Text:=excelapplication1.Cells.Item[19,10];

edit46.Text:=excelapplication1.Cells.Item[20,10];

edit47.Text:=excelapplication1.Cells.Item[21,10];

edit48.Text:=excelapplication1.Cells.Item[22,10];

edit49.Text:=excelapplication1.Cells.Item[23,10];

edit50.Text:=excelapplication1.Cells.Item[24,10];

edit52.Text:=excelapplication1.Cells.Item[25,10];

edit27.Text:=excelapplication1.Cells.Item[13,12];

edit28.Text:=excelapplication1.Cells.Item[14,12];

edit29.Text:=excelapplication1.Cells.Item[15,12];

edit30.Text:=excelapplication1.Cells.Item[16,12];

edit31.Text:=excelapplication1.Cells.Item[17,12];

edit32.Text:=excelapplication1.Cells.Item[18,12];

edit33.Text:=excelapplication1.Cells.Item[19,12];

edit34.Text:=excelapplication1.Cells.Item[20,12];

edit35.Text:=excelapplication1.Cells.Item[21,12];

edit36.Text:=excelapplication1.Cells.Item[22,12];

edit37.Text:=excelapplication1.Cells.Item[23,12];

edit38.Text:=excelapplication1.Cells.Item[24,12];

Edit1.Text:=excelapplication1.Cells.Item[13,13];

edit2.Text:=excelapplication1.Cells.Item[14,13];

edit3.Text:=excelapplication1.Cells.Item[15,13];

edit4.Text:=excelapplication1.Cells.Item[16,13];

edit5.Text:=excelapplication1.Cells.Item[17,13];

edit6.Text:=excelapplication1.Cells.Item[18,13];

edit7.Text:=excelapplication1.Cells.Item[19,13];

edit8.Text:=excelapplication1.Cells.Item[20,13];

edit9.Text:=excelapplication1.Cells.Item[21,13];

edit10.Text:=excelapplication1.Cells.Item[22,13];

edit11.Text:=excelapplication1.Cells.Item[23,13];

edit12.Text:=excelapplication1.Cells.Item[24,13];

Edit13.Text:=excelapplication1.Cells.Item[13,11];

edit14.Text:=excelapplication1.Cells.Item[14,11];

edit15.Text:=excelapplication1.Cells.Item[15,11];

edit16.Text:=excelapplication1.Cells.Item[16,11];

edit17.Text:=excelapplication1.Cells.Item[17,11];

edit18.Text:=excelapplication1.Cells.Item[18,11];

edit19.Text:=excelapplication1.Cells.Item[19,11];

edit20.Text:=excelapplication1.Cells.Item[20,11];

edit21.Text:=excelapplication1.Cells.Item[21,11];

edit22.Text:=excelapplication1.Cells.Item[22,11];

edit23.Text:=excelapplication1.Cells.Item[23,11];

edit24.Text:=excelapplication1.Cells.Item[24,11];

end;

end.


Информация о работе «Проектирование информационной системы "Начисление заработной платы сотрудникам школы"»
Раздел: Информатика, программирование
Количество знаков с пробелами: 78775
Количество таблиц: 1
Количество изображений: 37

Похожие работы

Скачать
65347
23
34

... или же по табельным номерам (пункт "Табельным номерам"). Рис.2.25Отчет « Расчетная ведомость » Схематично автоматизацию начисления и выплаты заработной платы можно представить так: Таблица 2.1. Справочники Документы Журналы Отчеты 1.Сотрудники Наряд бригады Сдельная оплата ОСВ по счету 2.Виды выплат Сдельный наряд Расчетная ведомость 3.Валюты Расчетные ...

Скачать
197833
56
17

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

Скачать
155675
15
0

... охватывало бы вопросы воспитания, взаимодействия учителей с родителями учеников и самими учениками, вопросы самоподготовки желающих учиться учеников, помощи отстающим и т.п. 5. РАЗРАБОТКА ШКОЛЬНОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ (ШИС) НА ОСНОВЕ IT-ТЕХНОЛОГИЙ ДЛЯ МОУ СОШ № 97 Поставленные в предыдущем разделе задачи могут быть решены путем организации широчайшего (относительно родителей, учеников и ...

Скачать
180861
8
10

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

0 комментариев


Наверх