You are on page 1of 33

EMPLOYEE LEAVE MANAGEMENT SYSTEM

BY: Aditya Bhujbal GUIDE: Pranali Lokande


Nikhil Bora
PURPOSE

 Manages the employees in a better way.


 Easy to find the background of an
employee.
 Maintains the date of hiring and leaving
EXISTING SYSTEM

 The records are maintained in files.


 Manually entered.
 Each employee’s information is stored in
seperate files.
 There is seperate file for storing CL entry,
for PL entry & ML entry.
What is leave management?

 Leave Management encompasses the


processes employees use to request time
away from the work and supervisors use
to grant or deny leave based on the
organization policies . Complex, manually
administered Leave Management
programs are costly and often result
inErrors.
Introduction

 Casual Leave(CL):-

Casual Leave(CL) are granted for


certain unforeseen situation or were you are
require to go for one or two days leaves to attend
to personal matters and not for vacation. In case
of casual leave normally company’s strict
maximum to 3 days in a month. In such cases the
person has to take the permission in advance.
 There are no casual leave carry-forwards.
At the closing day of year any unused
Casual Leaves will lapse automatically.
 Casual leave is not encashable . At the end
of the year unused Casual Leaves lapse
automatically.
Medical Leave

 Medical leave will be provided for self needs of eligible faculty


members and academic professional and administrative (P&A)
employees, for needs of their dependent children, and for
needs of their immediate family members. Medical leave may
be used for the following reasons:
 A physical or mental health condition that prevents employee
performance of any portion of their work duties for any
period of time;
Partial Leave

 If an employee is capable of performing some of his/her own or


alternative duties, either by working reduced hours or spending
more time on carrying them out, he/she can be granted partial sick
leave and be entitled to partial sickness benefit. Partial sickness
benefit can be granted down to a minimum of 20%. The percentage is
stated in your sick leave certificate. Periods of partial sick leave
count as
Employer, must cover the sick pay the first 16 days as for full sick
leave.
Graphics User Interface (GUI)

In this Project, we use TURBOC++ software.


use following headers for GUI :-
1.#include<iostream.h>
<iostream> contains the definition of basic_iostream class
template , which implements formatted input and output
It contains all Input/output Libraries
2. # include<fstream.h> :-
<fstream> contains the definitions
of basic_ifstream, basic_ofstream and basic_fstream
class templates which implement formatted input, output and
input/output on file streams.
This data type represents the file stream generally, and has the
capabilities of both ofstream and
ifstream which means it can create files, write information to files,
and read information from files.
3. #include<graphics.h>:-
This interface provides access to a simple graphics library that makes it possible
to draw lines, rectangles, ovals, arcs, polygons, images, and strings on a graphical window.

4. #include<stdio.h>
stdio.h stands for standard input output header

5. #include<string.h>
strcmp - compare two strings.
strcpy - copy a string.
strlen - get string lengt
we also use #include<dos.h> , #include<stdlib.h> header files.

Functions

I
Creates the graphics window on the screen.
InitGraphics() initGraphics(width, height)

drawArc(bounds, start, sweep) drawArc(x, y, width,


Draws an elliptical arc inscribed in a rectangle
height, start, sweep)
1. setfillstyle :-
setfillstyle function is takes input arguments - style and color.

The possible style values are, EMPTY_FILL, SOLID_FILL,


LINE_FILL, LTSLASH_FILL, SLASH_FILL, BKSLASH_FILL,
LTBKSLASH_FILL, HATCH_FILL, XHATCH_FILL,
INTERLEAVE_FILL, WIDE_DOT_FILL, CLOSE_DOT_FILL,
USER_FILL

The possible color values are from 0 - 15 BLACK, BLUE, GREEN,


CYAN, RED, MAGENTA, BROWN, LIGHTGRAY, DARKGRAY,
LIGHTBLUE, LIGHTGREEN, LIGHTCYAN, LIGHTRED,
LIGHTMAGENTA, YELLOW, WHITE.

It sets current fill pattern & color.

Syntax :

setfillstyle( int pattern,int color);


Setcolor :-

Declaration :- void setcolor ( int color);

In Turbo Graphics each color is assigned a number. Total 16 colors are available. Strictly speaking number of available colors depends on current
graphics mode and driver.

For Example :- BLACK is assigned 0, RED is assigned 4 etc. setcolor function is used to change the current drawing color. . Setcolor (RED) or setcolor
(4) changes the current drawing color to RED. Remember that default drawing color is WHITE.

Setcolor sets the current drawing color to color which can range from 0 to maxcolor

.Rectangle :-

Declaration :- void rectangle( int left, int top, int right, int bottom);

rectangle function is used to draw a rectangle. Coordinates of left top and right bottom corner are required to draw the rectangle. left specifies
the X-coordinate of top left corner, top specifies the Y-coordinate of top left corner, right specifies the X-coordinate of right bottom corner, bottom
specifies the Y-coordinate of right bottom corner.

Outtextxy :-

outtextxy function display text or string at a specified point( x,y) on the screen.

Declaration :- void outtextxy(int x, int y, char *string);


x, y are coordinates of the point and third argument contains the address of string to be displayed.

void outtext (char *string);


void outtextxy(int x, int y, char *string);
These functions are used to display text on the screen in graphics mode. outtext displays text at the current position while outtextxy displays text
from a specified point(x ,y) on the screen.

Gotoxy :-

gotoxy() function in C language is used to take the cursor to a particular co-ordinate of the screen . the argument of this function is the co-ordinate
where you want to take the the cursor . in Turbo c/ c++ you can directly use the gotoxy () library function

Gotoxy function places cursor at a desired location on screen i.e. we can change cursor position using gotoxy function.
PRODUCT FUNCTIONALITY

 Some major product functionalities of the system are as


follows:
 Information about the employee/student/staff attendance.
 Check for leave availability.
 Maintain employee leave record.
 Display notices.
 Apply for leave.
 Approve or reject leave application.
Data File Handling In C++
File. The information / data stored under a specific name on a storage
device, is called a file.
Stream. It refers to a sequence of bytes.
Binary file. It is a file that contains information in the same format as
it is held in memory. In binary files, no delimiters are used
for a line and no translations occur here.

Classes for file stream operation


Ofstream : Stream class to write on files
ifstream : Stream class to read from files
fstream : Stream class to both read and write from/to files.

Opening a file
OPENING FILE USING CONSTRUCTOR
ofstream outFile("sample.txt"); //output only
ifstream inFile (“sample.txt”); //input only
OPENING FILE USING open()

Stream-object.open (“filename”, mode)

ofstream outFile;
outFile.open ("sample.txt");

ifstream inFile ;
inFile.open("sample.txt");

File mode parameter Meaning

ios::app Append to end of file

ios::ate go to end of file on opening

ios::binary file open in binary mode

ios::in open file for reading only

ios::out open file for writing only

ios::nocreate open fails if the file does not exist

ios::noreplace open fails if the file already exist

ios::trunc delete the contents of the file if it exist


All these flags can be combined using the bitwise operator OR (|).
For example, if we want to open the file example.bin in binary mode
to add data we could do it by the following call to member function
open():
fstream file;
file.open ("example.bin", ios::out | ios::app | ios::binary);
Closing File
outFile.close();
inFile.close();

INPUT AND OUTPUT OPERATION


put() and get() function
the function put() writes a single character to the associated stream.
Similarly, the function get() reads a single character form the associated
stream.
example :
file.get(ch);
file.put(ch);
write() and read() function
write() and read() functions write and read blocks of binary data.
example:
file.read((char *)&obj, sizeof(obj));
file.write((char *)&obj, sizeof(obj));
ERROR HANDLING FUNCTION

FUNCTION RETURN VALUE AND MEANING

returns true (non zero) if end of file is encountered


eof()
while reading; otherwise return false(zero)

return true when an input or output operation has


fail()
failed

returns true if an invalid operation is attempted or


bad()
any unrecoverable error has occurred.

good() returns true if no error has occurred.


File Pointers And Their Manipulation

All i/o streams objects have, at least, one internal stream pointer:
ifstream, like istream, has a pointer known as the get pointer that points to the
element to be read in the next input operation.
ofstream, like ostream, has a pointer known as the put pointer that points to the
location where the next element has to be written.
Finally, fstream, inherits both, the get and the put pointers, from iostream (which is
itself derived from both istream and ostream).

These internal stream pointers that point to the reading or writing locations within
a stream can be manipulated using the following member functions:

moves get pointer(input) to a specified


seekg()
location

moves put pointer (output) to a specified


seekp()
location

tellg() gives the current position of the get pointer

tellp() gives the current position of the put pointer


The other prototype for these functions is:
Seekg (offset, refposition );
seekp (offset, refposition );

The parameter offset represents the number of


bytes the file pointer is to be moved from the
location specified by the parameter refposition.
The refposition takes one of the following three
constants defined in the ios class.

ios::beg start of the file


ios::cur current position of the pointer
ios::end end of the file
TEST CASES :-
1. Check results on entering valid User Id & Password :-
In this test case if we enter valid user id & password that we entered during registration then
we get the result as Login is successful . If anyone trying to enter in to login then it fails.
2. Check the employee information as per employee id :-
If we enter employee id 1 for Nikhil then we have to check at the time of searching record for
Employee id 1 whether it will show Nikhil’s details.
If we search Aditya for employee id 1 it will show there is no such record on employee id1.
4. Check Employee leave status :-
For CL we have to enter CL entry for employee after that we check it whether it will display
The Right & valid data as we enter. If it shows right result then it’s working correctly.
For ML we have to check same condition as for CL.
OBJECTIVES

 To automate existing leave management in different


companies.
 The Employee Leave Management System automates each and
every activity of the manual system and increases its
throughput. Thus the response time of the system is very less
and it works very fast.
 Reduce the cost of maintenance.
 The Employee Leave Management System automates each and
every activity of the manual system and increases its
throughput.
 The primary objective of the design of course, is to deliver the
requirements as specified in the feasibility reports. In general
the following design objectives should be kept in mind.
BENEFITS

 Accurate information: Provides accurate


information about leave balances, leave trends etc.
which allows you to forecast available resources at
any point of time.
 Saves time: Online leave balance visibility can
remove a tremendous strain on HR where as much
as 15% of their time is spent in handling queries on
leave balance for employees.
DESIGN DETAILS
 Improves discipline: Leave, when paired with
attendance, can improve accuracy and build
discipline in any organization.
 Multi-location holiday management: Leave when
paired with location specific holiday calendars can
help calculate the correct number of days that an
employee applied for leave.
Context flow diagram

LOGIN AUTHENTICATI
ON

LEAVE
Employee
payroll and
EMPLOYEE
ADMINSTRATOR leave
managemen
t
INFORMATION

LEAVE LEAVE
STATUS REPORT
DFD at LEVEL1
Employee

Manages

Search Leave Employee


Departmen Detail Detail
t

Department File Employe


e
DFD at level2

Employee

Employee Leave
details

Casual Medical Partial Earned


Store and Leave Leave Leave Leave
receives

Employee
Stores
file

Files
SYSYTEM REQUIREMENTS

 Software Requirements
• TURBOC++
 Hardware Requirements
• Processor : DUAL CORE
• RAM : 1GB or more
• Hard Disk : 2GB
• Keyboard
• Mouse
APPLICATIONS

 Automatic Leave Accruals


 Reporting and Analytics
 Enforcement of Internal Leave Policies
 Enhanced data Integrity
 Leave Management Reminders
 Customisable and Flexible User Interface
 Improved and more efficient Collaboration between Internal teams
Future Scope

 The leaves that have not been availed by the staff in the given session
can be automatically carried forward to the next working session
depending on the HR policy of the organisation.
 Every employees individual leave record can be tabulated in a pie
chart format to ascertain his/her performance during the working
session for HR appriasal activity
Limitations

 The leave status cannot be cleared until and unless the HOD
approves/ rejects the application.
 The staff cannot cancel the leave application once made.

You might also like