Проектирование информационной системы "Начисление заработной платы сотрудникам школы"

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 11.04.2010
Размер файла 2,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

С помощью меню «Отчеты» можно получить доступ к отчетам за налоговый период (рисунок 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.


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.