You are on page 1of 32

CLASS:ROLL

- XII NO:-
SCIENCE

Computer science investigatory


project

EMPLOYEE DATABASE
MANAGEMENT SYSTEM

NAME: - MANDEEP KUMAR


SINGH
INTRODUCTION TO
PROJECT

This program is very useful in real life


situation for providing instant
information of Employees working under
any company, department. It also stores
the information about employees
monthly salary, employee id and
designation.

In this c++ program we can modify, add,


delete, recall and list the records.

Being OOP concept available, we can add


or remove function anytime we need and
even add classes and derived classes
for further improvement of the
program without recording.
SERIAL CONTENTS PAGE NUMBER

NUMBER

1. CERTIFICATE. 4

2. EMPLOYEE DATABASE 5 19
MANAGEMENT
SYSTEM(CODING OF PROGRAM)

3. OUTPUT OF THE PROGRAME. 20

4. BIBLIOGRAPHY. 21

5. THANKS PAGE. 22

INDEX

CERTIFICATE
This is to certify that
MANDEEP KUMAR
SINGH of class XII
SCIENCE has
successfully
completed this
computer project on
the topic Employee
Database
Management System
prescribed by MRS
SABIHA SHAHIN ,
during academic
session 2016-2017 as
per the guidelines
issues by Central
Board of Secondary
Education.

MRS SABHIA SHAHIN


EXTERNAL
(P.G.T,
computer)HEADER
FILES USED
FSTREAM.H:-For handling files
,cin and cout
CONIO.H :-for handling getch()
function and clrscr() function.
STDIO.H:-For handling standard
I/O operation
STRING.H :- For handling strings
related functions
Strcmp(),strcpy() etc.
IOMANIP.H:- For setw() functions
DOS.H:- For date and time
functions
STDLIB.H:-For handling library
functions
GRAPHICS.H:-For the changing
colors
Coding

#include<fstream.h>

#include<dos.h>

#include<conio.h>

#include<stdlib.h>

#include<stdio.h>

#include<string.h>

#include<iomanip.h>

#include<graphics.h>

class group

struct person

char flag;

char empcode[5];

char name[40];
int age;

float sal;

int day;

int month;

int year;

}p;//object of structure person

fstream file;

public:

group();

void addrec();

void listrec();

void modirec();

void delrec();

void recallrec();

void packrec();

void credit();

void exit();
};//end of class

void main()

char choice,v;

group g;

do

clrscr();

struct dosdate_t d;

_dos_getdate(&d);

// p.day=d.day;

// p.month=d.month;

// p.year=d.year;

// _dos_getdate(&d);

gotoxy(12,5);

textcolor(5);
cout<<"------------------------------------------";

cout<<"\n\t\tWELCOME TO EMPLOYEEMANAGER";

cout<<"\n HERE YOU CAN MANIPULATE THE


NECESSARY EMPLOYEE DETAILS";

cout<<"\n\t--------------------------------------------";

cout<<"\n\t\t\tTodays date:";

printf("%d",d.day);

cout<<"/";

printf("%d",d.month);

cout<<"/";

cout<<d.year;

gotoxy(12,9);

cout<<"kv afs bagdogra.corporation pvt.ltd";

gotoxy(12,12);

cout<<"1.Add record";

gotoxy(12,13);

cout<<"2.List Record";
gotoxy(12,14);

cout<<"3.Modify record";

gotoxy(12,15);

cout<<"4.Delete record";

gotoxy(12,16);

cout<<"5.Recall record";

gotoxy(12,17);

cout<<"6.Pack record";

gotoxy(12,18);

cout<<"7.credits";

gotoxy(12,19);

cout<<"0.Exit";

gotoxy(12,20);

cout<<"Your choice"<<" ";

cin>>choice;

clrscr();

switch(choice)
{

case '1':

g.addrec();

break;

case'2':

g.listrec();

break;

case'3':

g.modirec();

break;

case'4':

g.delrec();

break;

case'5':

g.recallrec();
break;

case'6':

g.packrec();

break;

case'7':

g.credit();

break;

case'0':

g.exit();

exit(0);

while(choice!=0);

}
void group::group()

file.open("Emp.dat",ios::binary|ios::in|
ios::out);

p.flag=' ';

if(!file)

cout<<endl<<"Unable to open file";

exit();

void group::addrec()

char ch;

file.seekp(0L,ios::end);

struct dosdate_t d;

_dos_getdate(&d);
p.day=d.day;

p.month=d.month;

p.year=d.year;

cout<<"Make shure that no employee has the


same code"<<endl;

do

cout<<endl<<"Enter employee code, name, age &


salary:"<<endl<<endl;

cout<<"OR"<<endl<<endl;

cout<<"To return to the Main menu press'm' key


else press'a':";

cin>>ch;

if(ch=='m'||ch=='M')

main();

cin>>p.empcode>>p.name>>p.age>>p.sal;
p.flag=' ';

file.write((char*)&p,sizeof(p));

cout<<"Add another record ?(y/n) :";

cin>>ch;

while(ch=='y'||ch=='Y');

void group::listrec()

int j=0,a;

file.seekg(0L,ios::beg);

cout<<"List of records present are as


under>>>"<<endl<<endl;

cout<<" "<<"|CODE|"<<" "<<"|


NAME|"<<""<<"|AGE|"<<" "<<"|SALARY|"<<" "<<"|
DATED|"<<endl;

//Donot touch Above Line Any Way it is set


to give Some Nice Look
while(file.read((char*)&p,sizeof(p)))

if(p.flag!='*')

cout<<endl<<"Record#"<<" "<<j+
+<<setw(6)<<p.empcode<<setw(20)<<p.name<<setw(4)<<p.
age<<setw(9)<<p.sal<<"
"<<p.day<<"/"<<p.month<<"/"<<p.year<<endl;

file.clear();

if(j==0)

gotoxy(10,10);

cout<<"No record exit";

gotoxy(10,11);

cout<<"Press any key...";

getch();

}
else

cout<<endl<<"Press any key...";

getch();

void group::modirec()

char code[5];

int count=0;

long int pos;

cout<<"Enter employee code whose record is to be


modified :";

cin>>code;

file.seekg(0L,ios::beg);

while(file.read((char*)&p,sizeof(p)))

if(strcmp(p.empcode,code)==0)
{

cout<<endl<<"Enter new record "<<endl;

cout<<endl<<"Enter employee name,age &


salary :"<<endl;

cin>>p.name>>p.age>>p.sal;

struct dosdate_t d;

_dos_getdate(&d);

p.day=d.day;

p.month=d.month;

p.year=d.year;

p.flag=' ';

pos=count*sizeof(p);

file.seekp(pos,ios::beg);

file.write((char*)&p,sizeof(p));

return;

count++;

}
cout<<endl<<"No employee in file with code= "<<code;

getch();

file.clear();

void group::delrec()

char code[5];

long int pos;

int count=0;

cout<<"Enter employee code to be deleted :";

cin>>code;

file.seekg(0L,ios::beg);

while(file.read((char*)&p,sizeof(p)))

if (strcmp(p.empcode,code)==0)

p.flag='*';

pos=count*sizeof(p);
file.seekp(pos,ios::beg);

file.write((char*)&p,sizeof(p));

return;

count++;

cout<<endl<<"No employee in file with


code="<<code;

cout<<endl<<"Press any key...";

getch();

file.clear();

void group::recallrec()

char code[5];

long int pos;

int count=0;
cout<<"Enter employee code to be
recalled :";

cin>>code;

file.seekg(0L,ios::beg);

while(file.read((char*)&p,sizeof(p)))

if(strcmp(p.empcode,code)==0)

p.flag=' ';

pos=count*sizeof(p);

file.seekp(pos,ios::beg);

file.write((char*)&p,sizeof(p));

return;

count++;
}

cout<<endl<<"No employee in the file with


code="<<code;

cout<<endl<<"Press any key...";

getch();

file.clear();

void group::packrec()

ofstream outfile;

outfile.open("TEMP",ios::out);

file.seekg(0,ios::beg);

while(file.read((char*)&p,sizeof(p)))

if(p.flag!='*')

outfile.write((char*)&p,sizeof(p));

outfile.close();
file.close();

remove("Emp.DAT");

rename("TEMP","EMP.DAT");

file.open("EMP.DAT",ios::binary|ios::in|ios::out|
ios::nocreate);

gotoxy(10,10);

cout<<"Marked records to be deleted are all


removed";

gotoxy(10,11);

cout<<"press any key....";

getch();

void group::credit()

{cout<<"\t\tThis project is made by Mandeep kumar


singh";

cout<<"\n\t\t under guidance of MRS Sabiha shahin";


cout<<"\n\t\tkendriya air force station
\n\t\t\tBagdogra";

getch();

void group::exit()

file.close();

X
BIBLIOGRAPHY

To make this project we have


taken source from a book File
Structures Using C++
Paperback 26 Sep 2008 by
K.R. Venugopal (Author), K
Srinivasa (Author), P.Krishnaraj
(Author)and let us c++
written by Yashwanth
Kanethkar.
And taken help of our computer
teacher MRS SABIHA SHAHIN
(PGT COMPUTER SCIENCE).
VOTE
OF
We would like to thank our
THAN
computer teacher MRS SABIHA
KS COMPUTER
SHAHIN (PGT
SCIENCE), who provided us this
opportunity to make a project
on Employee Database
Management System which
really helped us to understand
the concepts of C++ computer
programming.

You might also like