A
Micro project report On
“Employee Management System”
SUBMITTED TO M.S.B.T.E., Mumbai
For the Award of
DIPLOMA IN INFORMATION TECHNOLOGY
BY
Names of Group Members
Roll. No. Enrollment No.
02. Shinde Tanvi Mahadev. 23212470442
05. Raut Bhumi Yuvraj. 23212470445
12. Khendkar Pranita Pandurang. 23212470452
65. More Sayali Sadanand. 23212470508
66. Patil Arundati Anand. 23212470509
UNDER THE GUIDANCE OF
Ms.A.M.Savant.
DEPARTMENT OF INFORMATION TECHNOLOGY
NBA ACCREDIATED
SVERI’s Collegeof Engineering(Polytechnic),
Gopalpur, Pandharpur-413304
2024-25
AFFILIATED TO
M.S.B.T.E.
Evolution sheet for Micro Project
Academic Year:- 2025-26 Name of Faculty:-Ms.A.M.Savant.
Course:- Information Technology Course Code:- IF4K
Subject: PWP Subject Code:- 314004
Semester:- 4 Scheme:- k
Title of
Project:- “Employee Management System”
COs addressed by the Micro Project:
CO 3
Comments/Suggestions about team work/leadership/inter-personal communication
(if any)
Marks out of6 Marksoutof4
Total
for for
marks
Roll No Name of students performance performance
out
in group in oral/
of 10
activity Presentation
02. Shinde Tanvi Mahadev.
05. Raut Bhumi Yuvraj.
12. Khendkar Pranita Pandurang.
65. More Sayali Sadanand.
66. Patil Arundati Anand.
Name and Signature of faculty Ms.A.M.Savant
SVERI’s COLLEGE OF ENGINEERING(POLYTECHNIC), PANDHARPUR.
CERTIFICATE
This is to certify that the Project report entitled
“Employee Management System”
Submitted by
Roll. No. Names of Group Members Enrollment No.
02. Shinde Tanvi Mahadev. 23212470442
05. Raut Bhumi Yuvraj. 23212470445
12. Khendkar Pranita Pandurang. 23212470452
65. More Sayali Sadanand. 23212470508
66. Patil Arundati Anand. 23212470509
Is a bonafide work carried out by above students, under the guidance of Ms.A.M.Savant and it is submitted
towards the fulfillment of requirement of MSBTE Mumbai for the award of Diploma in Information
Technology at SVERI’s COE (Polytechnic), Pandharpur during the academic year 2024-25.
(Ms.A.M.Savant )
Guide
(Mrs.R.K.Malgonde) (Dr. N. D. Misal)
HOD Principal
Place: Pandharpur
Date: / /
Acknowledgement
“Employee Management System” has been developed successfully with a great contribution of
four students in a period of one months. We like to appreciate their guidance, encouragement and
willingness since without their support the project would not have been a success. We would like to
give our heartfelt gratitude to Principal Dr. N. D. Misal, Guide Ms.A.M.Savant & HOD
Mrs.R.K.Malgonde who is the supervisor of our project for helping and encouraging us in many
ways to make our project a success. We would never been able to finish our work without great
support and enthusiasm from friends and support from our family. We would like to thank the
department of Information Technology, for giving us permission to initiate this project and
successfully finish it .
Creating a Python project that involves using Python libraries and a GUI application
can be a great way Creating a Python project that involves using Python libraries and
a GUI application can be a great way to build something interactive and functional.
Below is
INTRODUCTION
This code implements a basic Employee Management System (EMS) using Python and Tkinter for the graphical
user interface (GUI), with SQLite as the database for storing employee information. The application allows the
user to perform CRUD (Create, Read, Update, Delete) operations on employee records, making it an ideal tool for
managing employees in a small-to-medium-sized organization. The main purpose of this system is to help HR or
administrative staff manage employee details in an easy and efficient way.
Cre
Project Description
The Employee Management System (EMS) project is designed to manage employee records and
information within an organization. It is a simple, interactive application built using Python, Tkinter for the
graphical user interface (GUI), and SQLite as the database for storing and retrieving employee data. This
system allows administrators or HR personnel to perform essential tasks such as adding, viewing, updating,
and deleting employee records.
The Employee Management System (EMS) project is a software application developed to simplify and
streamline the management of employee information within an organization. The system is designed to allow
administrators, HR personnel, or managers to perform essential operations such as adding new employee
records, viewing existing records, updating employee information, and deleting employee data. This helps
organizations maintain accurate and up-to-date employee records, enhancing operational efficiency and
minimizing errors associated with manual data handling.
Key Technologies Used
1. Python: The primary programming language used to develop this system. Python is known for its simplicity,
readability, and powerful libraries, making it a perfect choice for building small-to-medium scale
applications like this one.
2. Tkinter: A Python library for creating graphical user interfaces (GUIs). Tkinter provides a toolkit for
building windows, buttons, labels, and other interactive components in desktop applications. In this project,
Tkinter is used to create a user-friendly GUI for managing employee records.
3. SQLite: An embedded relational database engine used to store and manage employee data. SQLite is
lightweight and doesn’t require any separate server setup, which makes it a great choice for small-scale
applications. The employee data (name, department, salary, etc.) is stored in an SQLite database file,
allowing for efficient data retrieval and modification.
OBJECTIVE
Objetives of the “Employee Management System” :-
1. Simplified Data Entry and Updates
2. Real-Time Data Retrieval
3. Efficient Record Deletion
4. User-Friendly Interface
5. Data Persistence
6. Error-Free Operations
7. Scalability and Future Expansion
8. Efficient HR Operations
9. Improved Data Security
Code And Expected Output :-
import tkinter as tk
from tkinter import messagebox
import sqlite3
# Database setup
def create_table():
conn = sqlite3.connect("employee.db")
cursor = conn.cursor()
cursor.execute("""
CREATE TABLE IF NOT EXISTS employees (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
department TEXT NOT NULL,
salary REAL NOT NULL )
""")
conn.commit()
conn.close()
# Add employee to the database
def add_employee():
name = entry_name.get()
department = entry_department.get()
salary = entry_salary.get()
if name and department and salary:
conn = sqlite3.connect("employee.db")
cursor = conn.cursor()
cursor.execute("INSERT INTO employees (name, department, salary) VALUES (?, ?, ?)",
(name, department, float(salary)))
conn.commit()
conn.close()
clear_entries()
view_employees()
else:
messagebox.showwarning("Warning", "Please fill all fields.")
# View all employees
def view_employees():
listbox_employees.delete(0, tk.END)
conn = sqlite3.connect("employee.db")
cursor = conn.cursor()
cursor.execute("SELECT * FROM employees")
employees = cursor.fetchall()
for employee in employees:
listbox_employees.insert(tk.END, f"ID: {employee[0]}, Name: {employee[1]}, Department:
{employee[2]}, Salary: { employee[3]}")
conn.close()
# Update employee details
def update_employee():
selected_employee = listbox_employees.curselection()
if selected_employee:
employee_id = listbox_employees.get(selected_employee[0]).split(",")[0].split(":")[1].strip()
name = entry_name.get()
department = entry_department.get()
salary = entry_salary.get()
if name and department and salary:
conn = sqlite3.connect("employee.db")
cursor = conn.cursor()
cursor.execute("UPDATE employees SET name = ?, department = ?, salary = ? WHERE id = ?",
(name, department, float(salary), employee_id))
conn.commit()
conn.close()
clear_entries()
view_employees()
else:
messagebox.showwarning("Warning", "Please fill all fields.")
else:
messagebox.showwarning("Warning", "Please select an employee to update.")
# Delete an employee
def delete_employee():
selected_employee = listbox_employees.curselection()
if selected_employee:
employee_id = listbox_employees.get(selected_employee[0]).split(",")[0].split(":")[1].strip()
conn = sqlite3.connect("employee.db")
cursor = conn.cursor()
cursor.execute("DELETE FROM employees WHERE id = ?", (employee_id,))
conn.commit()
conn.close()
view_employees()
else:
messagebox.showwarning("Warning", "Please select an employee to delete.")
# Clear input fields
def clear_entries():
entry_name.delete(0, tk.END)
entry_department.delete(0, tk.END)
entry_salary.delete(0, tk.END)
# GUI setup
root = tk.Tk()
root.title("Employee Management System")
# Labels
label_name = tk.Label(root, text="Name:")
label_name.grid(row=0, column=0, padx=10, pady=5)
label_department = tk.Label(root, text="Department:")
label_department.grid(row=1, column=0, padx=10, pady=5)
label_salary = tk.Label(root, text="Salary:")
label_salary.grid(row=2, column=0, padx=10, pady=5)
# Entry fields
entry_name = tk.Entry(root, width=30)
entry_name.grid(row=0, column=1, padx=10, pady=5)
entry_department = tk.Entry(root, width=30)
entry_department.grid(row=1, column=1, padx=10, pady=5)
entry_salary = tk.Entry(root, width=30)
entry_salary.grid(row=2, column=1, padx=10, pady=5)
# Buttons
button_add = tk.Button(root, text="Add Employee", width=20, command=add_employee)
button_add.grid(row=3, column=0, padx=10, pady=5)
button_update = tk.Button(root, text="Update Employee", width=20, command=update_employee)
button_update.grid(row=3, column=1, padx=10, pady=5)
button_delete = tk.Button(root, text="Delete Employee", width=20, command=delete_employee)
button_delete.grid(row=4, column=0, padx=10, pady=5)
button_view = tk.Button(root, text="View Employees", width=20, command=view_employees)
button_view.grid(row=4, column=1, padx=10, pady=5)
# Listbox to display employees
listbox_employees = tk.Listbox(root, width=50, height=10)
listbox_employees.grid(row=5, column=0, columnspan=2, padx=10, pady=10)
# Initialize database and view employees
create_table()
view_employees()
# Run the application
root.mainloop()
Front Page:-
Add Employee Information:-
Update Employee :-
Delete Employee:-
Conclusion :-
The Employee Management System (EMS) developed in this project provides an efficient and user-friendly
solution to manage employee records within an organization. This system simplifies the processes of storing,
updating, retrieving, and deleting employee data, which is essential for administrative purposes.
The project was developed using Python as the primary programming language and Tkinter for the graphical user
interface (GUI). The SQLite database engine was utilized to store employee information in a structured manner. The
EMS system allows HR personnel or administrators to easily manage employee records, including adding new
employees, viewing existing records, updating employee information, and deleting outdated or incorrect data.
15 / 17
Reference :-
1. https://docs.python.org/3/
2. https://docs.python.org/3/library/tkinter.html
3. https://www.ijcaonline.org/
16
17 / 17