Computer Science Class 12th Projects - Employee Database Management System

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 27

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.

2
SERIAL CONTENTS PAGE NUMBER
NUMBER

1. CERTIFICATE. 4

2. EMPLOYEE DATABASE 5 – 19
MANAGEMENT
SYSTEM PROGRAME.
3. OUTPUT OF THE 20
PROGRAME.

4. BIBLIOGRAPHY. 21

5. THANKS PAGE. 22

3
This is to certify that ABC and ABC of class XII has
successfully completed this computer project on the
topic “Employee Database Management System”
prescribed by Mr. ABC, during academic session as per
the guidelines issues by Central Board of Secondary
Education.

External Examiner

4
#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
{
private:
struct person
{
char flag;
char empcode[5];
char name[40];
int age;
float sal;
int day;
int month;
int year;
}p;
fstream file;
public:
group();

void addrec();
void listrec();
void modirec();
void delrec();
void recallrec();
void packrec();
void exit();
};

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(6);
cprintf("Todays date:");
printf("%d",d.day);
cout<<"/";
printf("%d",d.month);
cout<<"/";
cout<<d.year;
gotoxy(12,9);
cout<<"Srknec.corporation pvt.ltd";
gotoxy(12,12);
cout<<"1.Add record";
gotoxy(12,15);
cout<<"2.List Record";
gotoxy(12,17);
cout<<"3.Modify record";
gotoxy(12,19);
cout<<"4.Delete record";
gotoxy(12,21);
cout<<"5.Recall record";
gotoxy(12,23);
cout<<"6.Pack record";
gotoxy(12,25);
cout<<"0.Exit";
gotoxy(12,28);
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'0':
g.exit();
exit(1);

}
}
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<<set
w(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::nocr
eate);
gotoxy(10,10);
cout<<"Marked records to be deleted are all removed";
gotoxy(10,11);
cout<<"press any key....";
getch();
}
void group::exit()
{
file.close();
}
Todays date : 2/01/2013
Srknec.corporation pvt.ltd
1. Add record
2. List record
3. Modify record
4. Delete record
5. Recall record
6. Pack record
0. Exit your choice

20
To make this project we have taken source from a book
“Computer Science With C++” written by Sumita Arora
and “let us c++” written by Yashwanth Kanethkar.

21
We would like to thank our computer sir, 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.

22

You might also like