lblExtraHour=Label(LeftInsideRFRF,font=('arial',10,'bold'),text='VALOR HORA EXTRA $',fg='Steel Blue',bd=10,anchor='w')
lblExtraHour.grid(row=1,column=0)
txtExtraHour=Entry(LeftInsideRFRF,font=('arial',10,'bold'),bd=10,width=18,bg="powder blue",justify='left',textvariable=ExtraHour)
txtExtraHour.grid(row=1,column=1)
lblTotOver=Label(LeftInsideRFRF,font=('arial',10,'bold'),text='VALOR TOTAL HE $',fg='Steel Blue',bd=10,anchor='w')
lblTotOver.grid(row=2,column=0)
txtTotOver=Entry(LeftInsideRFRF,font=('arial',10,'bold'),bd=10,width=18,bg="powder blue",justify='left',textvariable=TotOver)
txtTotOver.grid(row=2,column=1)
from tkinter import* import tkinter.messagebox as MessageBox import mysql.connector as mysql import locale locale.setlocale(locale.LC_ALL, '')
import random import time import datetime
def search():
payroll= Tk() payroll.geometry('1250x420+0+0') payroll.title('Payroll Management')
def Exit(): payroll.destroy()#--------------------------------------------------------
Connecting App to database
def update ():
def Reset(): Id.set('') Employee.set('') Address.set('') Employee.set('') Address.set('') Employer.set('') City.set('') BasicSalary.set('') OverTime.set('') WorkStart.set('') ExtraHour.set('') TotOver.set('') Transport.set('') PerDeduction.set('') Deductions.set('') GrossPay.set('') NetPay.set('') txtId.configure(state='normal')
Id=StringVar() Employee = StringVar() Address= StringVar () Employer=StringVar() City=StringVar() BasicSalary=StringVar() OverTime=StringVar() WorkStart=StringVar() ExtraHour=StringVar() TotOver=StringVar() Transport=StringVar() PerDeduction=StringVar() Deductions=StringVar() GrossPay=StringVar()
Vacations=StringVar()
NetPay=StringVar()
def Sum():
SELECT id, name, class,( social + science + math) AS total FROM
student3
SELECT Id,Employee,(BasicSalary+OverTime) As GrossPay FROM
---------------Frames START----------------------------------------
-----------------------------------------------------------------------
Tops=Frame(payroll,width=600,height=15,bd=16, relief='raise') Tops.pack(side=TOP) LF=Frame(payroll,width=200,height=30,bd=16, relief='raise') LF.pack(side=LEFT) RF=Frame(payroll,width=200,height=30,bd=16, relief='raise') RF.pack(side=RIGHT)
lblInfo= Label(Tops,font=('arial',20,'bold'),text="Pago de Nomina",fg='Steel Blue',bd=10,anchor='w') lblInfo.grid(row=0,column=0)
LeftInsideLF=Frame(LF,width=100,height=100,bd=8, relief='raise') LeftInsideLF.pack(side=TOP) LeftInsideLFLF=Frame(LF,width=100,height=200,bd=8, relief='raise') LeftInsideLFLF.pack(side=LEFT) LeftInsideRFRF=Frame(LF,width=100,height=200,bd=8, relief='raise') LeftInsideRFRF.pack(side=RIGHT)
RightInsideLF=Frame(RF,width=600, height=200,bd=8, relief='raise')
RightInsideLF.pack(side=TOP)
RightInsideLFLF=Frame(RF,width=100,height=200,bd=8, relief='raise') RightInsideLFLF.pack(side=LEFT) RightInsideRFRF=Frame(RF,width=100,height=200,bd=8, relief='raise') RightInsideRFRF.pack(side=RIGHT)
--------------------------left side---------------------------
lbId=Label(LeftInsideLF,font=('arial',10,'bold'),text='ID EMPLEADO',fg='steel blue',bd=10, anchor='w') lbId.grid(row=0,column=0) txtId=Entry(LeftInsideLF,font=('arial',10,'bold'),bd=10,width=25,bg='powder blue',justify='left',textvariable=Id) txtId.grid(row=0,column=1)
-----------------------------------------------------------------------------------
lblEmployee=Label(LeftInsideLF, font=('arial',10,'bold'),text='NOMBRE EMPLEADO',fg='steel blue',bd=10, anchor='w') lblEmployee.grid(row=1,column=0) txtEmployee=Entry(LeftInsideLF,font=('arial',10,'bold'),bd=10,width=25,bg='powder blue',justify='left',textvariable=Employee) txtEmployee.grid(row=1,column=1)
-----------------------------------------------------------------------------------
lblAddress=Label(LeftInsideLF,font=('arial',10,'bold'),text="DIRECCION",fg="steel blue",bd=10,anchor='w') lblAddress.grid(row=2,column=0) txtAddress=Entry(LeftInsideLF,font=('arial',10,'bold'),bd=10,width=25,bg="powder blue",justify='left',textvariable=Address) txtAddress.grid(row=2,column=1)
-----------------------------------------------------------------------------------
lblEmployer=Label(LeftInsideLF, font=('arial',10,'bold'),text='EMPRESA',fg='steel blue',bd=10, anchor='w') lblEmployer.grid(row=4,column=0) txtEmployer=Entry(LeftInsideLF,font=('arial',10,'bold'),bd=10,width=25,bg='powder blue',justify='left',textvariable=Employer) txtEmployer.grid(row=4,column=1)
---------------------------------------------------------------------------
lblCity=Label(LeftInsideLFLF,font=('arial',10,'bold'),text='CIUDAD DE EMPRESA',fg='Steel Blue',bd=10,anchor='w') lblCity.grid(row=0,column=0) txtCity=Entry(LeftInsideLFLF,font=('arial',10,'bold'),bd=10,width=14,bg="powder blue",justify='left',textvariable=City) txtCity.grid(row=0,column=1)
-----------------------------------------------------------------------
lblBasicSalary=Label(LeftInsideLFLF,font=('arial',10,'bold'),text='SALARIO BASICO $',fg='Steel Blue',bd=10,anchor='w') lblBasicSalary.grid(row=1,column=0) txtBasicSalary=Entry(LeftInsideLFLF,font=('arial',10,'bold'),bd=10,width=14,bg="powder blue",justify='left',textvariable=BasicSalary) txtBasicSalary.grid(row=1,column=1)
-------------------------------------------------------------
lblOverTime=Label(LeftInsideLFLF,font=('arial',10,'bold'),text='HORAS EXTRAS LABORADAS',fg='Steel Blue',bd=10,anchor='w') lblOverTime.grid(row=2,column=0) txtOverTime=Entry(LeftInsideLFLF,font=('arial',10,'bold'),bd=10,width=14,bg="powder blue",justify='left',textvariable=OverTime) txtOverTime.grid(row=2,column=1)
------------------------------------------------------------------
lblWorkStart=Label(LeftInsideRFRF,font=('arial',10,'bold'),text='INICIO DE LABORES',fg='Steel Blue',bd=10,anchor='w') lblWorkStart.grid(row=0,column=0) txtWorkStart=Entry(LeftInsideRFRF,font=('arial',10,'bold'),bd=10,width=18,bg="powder blue",justify='left',textvariable=WorkStart) txtWorkStart.grid(row=0,column=1)
-----------------------------------------------------------------------------------
lblExtraHour=Label(LeftInsideRFRF,font=('arial',10,'bold'),text='VALOR HORA EXTRA $',fg='Steel Blue',bd=10,anchor='w') lblExtraHour.grid(row=1,column=0) txtExtraHour=Entry(LeftInsideRFRF,font=('arial',10,'bold'),bd=10,width=18,bg="powder blue",justify='left',textvariable=ExtraHour) txtExtraHour.grid(row=1,column=1)
-----------------------------------------------------------------------------------
lblTotOver=Label(LeftInsideRFRF,font=('arial',10,'bold'),text='VALOR TOTAL HE $',fg='Steel Blue',bd=10,anchor='w') lblTotOver.grid(row=2,column=0) txtTotOver=Entry(LeftInsideRFRF,font=('arial',10,'bold'),bd=10,width=18,bg="powder blue",justify='left',textvariable=TotOver) txtTotOver.grid(row=2,column=1)
----------------------------------------------------------------------------------------------------
---------------------------------rigth side--------------------------------------------
----------------------------- RIGHT INNER SIDE---------------
lblTransport=Label(RightInsideLFLF, font=('arial',10,'bold'),text='AUXILIO DE TRANSPORTE $',fg='steel blue',bd=10, justify='left',anchor='w') lblTransport.grid(row=0,column=0) txtTransport=Entry(RightInsideLFLF,font=('arial',10,'bold'),bd=10,width=20,bg='powder blue',justify='left',textvariable=Transport) txtTransport.grid(row=0,column=1)
-----------------------------------------------------------------------------------
lblPerDeduction=Label(RightInsideLFLF, font=('arial',10,'bold'),text='DEDUCCIONES %',fg='steel blue',bd=10, justify='left',anchor='w') lblPerDeduction.grid(row=1,column=0) txtPerDeduction=Entry(RightInsideLFLF,font=('arial',10,'bold'),bd=10,width=20,bg='powder blue',justify='left',textvariable=PerDeduction) txtPerDeduction.grid(row=1,column=1)
----------------------------------------------------------------
lblDeductions=Label(RightInsideLFLF, font=('arial',10,'bold'),text='VALOR DE DEDUCCIONES $',fg='steel blue',bd=10, anchor='nw') lblDeductions.grid(row=2,column=0) txtDeductions=Entry(RightInsideLFLF,font=('arial',10,'bold'),bd=10,width=20,bg='powder blue',justify='left',textvariable=Deductions) txtDeductions.grid(row=2,column=1)
---------------------------------------------------------------------------------------------lg=Label(RightInsideLFLF, font=('arial',12,'bold'),text='NINumber',fg='steel blue',bd=10, anchor='w')
lblGrossPay=Label(RightInsideLFLF, font=('arial',10,'bold'),text='SALARIO BRUTO $',fg='steel blue',bd=10, anchor='w') lblGrossPay.grid(row=3,column=0) txtGrossPay=Entry(RightInsideLFLF,font=('arial',10,'bold'),bd=10,width=20,bg='powder blue',justify='left',textvariable=GrossPay) txtGrossPay.grid(row=3,column=1)
----------------------------------------------------------------------------
lblNetPay=Label(RightInsideLFLF, font=('arial',10,'bold'),text='SALARIO NETO $',fg='steel blue',bd=10, anchor='w') lblNetPay.grid(row=4,column=0) txtNetPay=Entry(RightInsideLFLF,font=('arial',10,'bold'),bd=10,width=20,bg='powder blue',justify='left',textvariable=NetPay) txtNetPay.grid(row=4,column=1)
---------------------------------------------------------------------------------------
-------------------------------- RIGHT SIDE OF THE RIGHT FRAME
-------------------------------------------------------------------------------
btnWagePayment=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',10,'bold'),width=11,text='WagePayment',bg='sky blue',command=MonthSalary).grid(row=0,column=0)
btnReset=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',10,'bold'),width=11,text='Reset System',bg='sky blue',command=Reset).grid(row=1,column=0)
btnRefPay=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',16,'bold'),width=14,text='Pay Reference',bg='sky blue',command=PayRef).grid(row=2,column=0)
btnDeductions=Button(RightInsideLFLF,padx=8,bd=8,fg='black',font=('arial',12,'bold'),width=12,text='Deductions',bg='sky blue',command=Deductions).grid(row=2,column=2)
btnWorkStart=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',10,'bold'),width=11,text='Pay Code',bg='sky blue',command=PayPeriod).grid(row=2,column=0)
btnExit=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',10,'bold'),width=11,text='Exit',bg='sky blue',command=Exit) btnExit.grid(row=3,column=0) btnsearch=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',10,'bold'),width=11,text='Search',bg='sky blue',command=search) btnsearch.grid(row=4,column=0) btnupdate=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',10,'bold'),width=11,text='Update',bg='sky blue',command=update) btnupdate.grid(row=5,column=0) btnsum=Button(RightInsideRFRF,padx=8,bd=8,fg='black',font=('arial',10,'bold'),width=11,text='Sum',bg='sky blue',command=Sum) btnsum.grid(row=6,column=0) payroll.mainloop()