#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<graphics.h>
#include<dos.h>
#include<string.h>
#include<ctype.h>
#include<stdarg.h>
box()
{
int x;
clrscr();
gotoxy(7,1);
printf("=================================================================");
for(x=2;x<24;x++)
{
gotoxy(7,x);
printf("||");
gotoxy(70,x);
printf("||");
}
gotoxy(7,24);
printf("=================================================================");
gotoxy(7,3);
printf("=================================================================");
return(0);
}
/* PROGRAM FOR ::CREATING DATABASE
PROGRAM NAME::CREAT.C */
creat()
{
struct
{
char empcode[10];
char empname[20];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}BD,A;
struct date JD;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
int rc=0,x;
char c,empcode[10],*ps;
FILE *fp;
clrscr();
gotoxy(17,10);
ps=getpass("PLEASE ENTER THE PASSWARD TO RE-CREAT DATABASE");
if(strcmp(ps,"???")==0)
{
fp=fopen("empdata.dat","w+");
getdate(&JD);
if(fp==NULL)
{
printf("can not open the empdata.dat file \n");
}
else
{
while(1)
{
clrscr();
box();
rc++;
gotoxy(10,2);
printf(" ***EMPLOYEE RECORD ENTRY IN DATA REGISTER***");
gotoxy(50,4);
printf("TODAYS %dth RECORD\n",rc);
gotoxy(9,5);
printf("1.ENTER THE EMPLOYEE CODE :");
scanf("%s",ENTRY.empcode);
fseek(fp,0,0);
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&BD.dd,&BD.mm,&BD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
x=strcmp(ENTRY.empcode,empcode);
if(x==0)
{
gotoxy(9,15);
printf("THIS RECORD ALLREADY EXIT");
break;
}
}
if(x!=0)
{
gotoxy(9,7);
fflush(stdin);
printf("2. ENTER THE EMPLOYEE NAME :");
scanf("%[^\n]s",&ENTRY.empname);
gotoxy(9,9);
fflush(stdin);
printf("3.EMPLOYEE'S FOTHER'S NAME :");
scanf("%[^\n]s",&ENTRY.empfaname);
gotoxy(9,11);
fflush(stdin);
printf("4. ENTER THE PERMANENT ADDRESS :");
scanf("%[^\n]s",&ENTRY.peradd);
gotoxy(9,13);
fflush(stdin);
printf("5. ENTER THE DESIGNITION :");
scanf("%[^\n]s",&ENTRY.desig);
gotoxy(9,14);
printf("Department-Produ,Marke,Maint,Accou,Admin");
gotoxy(9,15);
fflush(stdin);
printf("6. ENTER THE DEPARTMENT CHOICE:");
scanf("%[^\n]s",&ENTRY.dept);
gotoxy(9,17);
fflush(stdin);
printf("7. ENTER THE SHIFT<DAY OR NIGHT> :");
scanf("%[^\n]s",&ENTRY.shift);
gotoxy(9,19);
printf("8. ENTER THE BASIC PAY :");
scanf("%f",&ENTRY.empbas);
gotoxy(9,21);
printf("9. ENTER THE DATE OF BIRTH :");
gotoxy(43,21);
printf("DAY:");
scanf("%d",&BD.dd);
gotoxy(51,21);
printf("month:");
scanf("%d",&BD.mm);
gotoxy(61,21);
printf("year:");
scanf("%d",&BD.yy);
gotoxy(9,23);
printf("10.DATE OF JOINING:%d:%d:%d\n",JD.da_day,JD.da_mon,JD.da_year);
if(ENTRY.empbas<4000)
{
da=(ENTRY.empbas*1.30);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.10);
}
if(ENTRY.empbas>=4000 && ENTRY.empbas<6000)
{
da=(ENTRY.empbas*1.10);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.15);
}
if(ENTRY.empbas>=6000)
{
da=(ENTRY.empbas*1.00);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.20);
}
net_sal=(ENTRY.empbas+da+hra+cca+ca+ma)-(pf);
if(net_sal<4000)
tax=0;
else if (net_sal>=4000 && net_sal<6000)
tax=net_sal*.10;
else
tax=net_sal*.20;
tot_sal=net_sal-tax;
fprintf(fp,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.da_day,JD.da_mon,JD.da_year,BD.dd,BD.mm,BD.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
else
goto d;
d:
fflush(stdin);
gotoxy(15,25);
printf("DO YOUWANT MORE ENTRY<y/n>");
scanf("%c",&c);
if(c=='y'||c=='Y')
continue;
else
break;
}
fclose(fp);
}
}
else
printf("YOU HAVE NOT ENTER CORRECT PASSWARD");
return(0);
}
/* END OF CREAT.C */
box1()
{
int x;
clrscr();
gotoxy(7,1);
printf("=================================================================");
for(x=2;x<24;x++)
{
gotoxy(7,x);
printf("||");
gotoxy(70,x);
printf("||");
}
gotoxy(7,24);
printf("================================================================");
gotoxy(7,3);
printf("================================================================");
return(0);
}
/*PROGRAM FOR ::ENTRY OF EMPLOYEE
PROGRAM NAME ::ENTRY.C */
entry()
{
struct
{
char empcode[10];
char empname[20];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}BD,A;
struct date JD;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
int rc=0,x;
char c,empcode[10],*ps;
FILE *fp;
clrscr();
gotoxy(17,10);
ps=getpass("PLEASE ENTER THE PASSWARD TO ADD DATABASE");
if(strcmp(ps,"???")==0)
{
fp=fopen("empdata.dat","a+");
getdate(&JD);
if(fp==NULL)
{
printf("can not open the empdata.dat file \n");
}
else
{
while(1)
{
clrscr();
box1();
rc++;
gotoxy(10,2);
printf(" ***EMPLOYEE RECORD ENTRY IN DATA REGISTER***");
gotoxy(50,4);
printf("TODAYS %dth RECORD\n",rc);
gotoxy(9,5);
printf("1.ENTER THE EMPLOYEE CODE :");
scanf("%s",ENTRY.empcode);
fseek(fp,0,0);
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&BD.dd,&BD.mm,&BD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
x=strcmp(ENTRY.empcode,empcode);
if(x==0)
{
gotoxy(9,15);
printf("THIS RECORD ALLREADY EXIT");
break;
}
}
if(x!=0)
{
gotoxy(9,7);
fflush(stdin);
printf("2. ENTER THE EMPLOYEE NAME :");
scanf("%[^\n]s",&ENTRY.empname);
gotoxy(9,9);
fflush(stdin);
printf("3.EMPLOYEE'S FOTHER'S NAME :");
scanf("%[^\n]s",&ENTRY.empfaname);
gotoxy(9,11);
fflush(stdin);
printf("4. ENTER THE PERMANENT ADDRESS :");
scanf("%[^\n]s",&ENTRY.peradd);
gotoxy(9,13);
fflush(stdin);
printf("5. ENTER THE DESIGNITION :");
scanf("%[^\n]s",&ENTRY.desig);
gotoxy(9,14);
printf("Department-Produ,Marke,Maint,Accou,Admin");
gotoxy(9,15);
fflush(stdin);
printf("6. ENTER THE DEPARTMENT :");
scanf("%[^\n]s",&ENTRY.dept);
gotoxy(9,17);
fflush(stdin);
printf("7. ENTER THE SHIFT<DAY OR NIGHT> :");
scanf("%[^\n]s",&ENTRY.shift);
gotoxy(9,19);
printf("8. ENTER THE BASIC PAY :");
scanf("%f",&ENTRY.empbas);
gotoxy(9,21);
printf("9. ENTER THE DATE OF BIRTH :");
gotoxy(40,21);
printf("DAY:");
scanf("%d",&BD.dd);
gotoxy(48,21);
printf("month:");
scanf("%d",&BD.mm);
gotoxy(59,21);
printf("year:");
scanf("%d",&BD.yy);
gotoxy(9,23);
printf("10.DATE OF JOINING:%d:%d:%d\n",JD.da_day,JD.da_mon,JD.da_year);
if(ENTRY.empbas<4000)
{
da=(ENTRY.empbas*1.30);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.10);
}
if(ENTRY.empbas>=4000 && ENTRY.empbas<6000)
{
da=(ENTRY.empbas*1.10);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.15);
}
if(ENTRY.empbas>=6000)
{
da=(ENTRY.empbas*1.00);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.20);
}
net_sal=ENTRY.empbas+da+hra+cca+ca+ma-pf;
if(net_sal<4000)
tax=0;
else if (net_sal>=4000 && net_sal<6000)
tax=net_sal*.10;
else
tax=net_sal*.20;
tot_sal=net_sal-tax;
fprintf(fp,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.da_day,JD.da_mon,JD.da_year,BD.dd,BD.mm,BD.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
else
goto d;
d:
fflush(stdin);
gotoxy(15,25);
printf("DO YOU WANT MORE ENTRY<y/n>");
scanf("%c",&c);
if(c=='y'||c=='Y')
continue;
else
break;
}
fclose(fp);
}
}
else
printf("YOU HAVE NOT ENTER CORRECT PASSWARD");
return(0);
}
/* END OF ENTRY.C */
box2()
{
int x;
gotoxy(3,2);
printf("=======================================");
for(x=3;x<13;x++)
{
gotoxy(3,x);
printf("||");
gotoxy(39,x);
printf("||");
}
gotoxy(3,13);
printf("=======================================");
gotoxy(3,4);
printf("=======================================");
return(0);
}
box3()
{
int x;
gotoxy(40,2);
printf("=======================================");
for(x=3;x<13;x++)
{
gotoxy(40,x);
printf("||");
gotoxy(77,x);
printf("||");
}
gotoxy(40,13);
printf("========================================");
gotoxy(41,4);
printf("========================================");
gotoxy(41,11);
printf("========================================");
return(0);
}
/* PROGRAM FOR ::MODIFY DATA FILE
PROGRAM NAME ::MODIFY.C */
modify()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY,TEMP;
struct
{
int dd;
int mm;
int yy;
}A,JD;
int x;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
ft=fopen("temp.dat","w+");
if(ft==NULL)
{
printf("CAN NOT OPEN THE TEMP.DAT FILE\n");
}
clrscr();
gotoxy(11,10);
printf("ENTER THE EMPLOYEE CODE FOR MODIFICATION:- ");
scanf("%s",c);
if(c=='\0')
{
printf("YOU HAVE NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.empcode,c)!=0)
{
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
else
{
ft1=fopen("temp1.dat","w");
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
fclose(ft1);
clrscr();
box2();
gotoxy(4,3);
printf("OLD RECORD OF EMPLOYEE CODE %s\n",ENTRY.empcode);
gotoxy(4,5);
printf("EMPLOYEE NAME :%s\n",ENTRY.empname);
gotoxy(4,6);
printf("BASIC SALARY :%8.2f\n",ENTRY.empbas);
gotoxy(4,7);
printf("DESIGNATION :%s\n",ENTRY.desig);
gotoxy(4,8);
printf("DEPARTAMENT :%s\n",ENTRY.dept);
gotoxy(4,9);
printf("PERMANENT ADDS :%s\n",ENTRY.peradd);
gotoxy(4,10);
printf("SHIFT :%s\n",ENTRY.shift);
fflush(stdin);
box3();
gotoxy(45,3);
printf("OPTION FOR MODIFICATION ");
gotoxy(41,5);
printf("[A] FOR PERMANENT ADDRESS\n");
gotoxy(41,6);
printf("[B] FOR BASIC SALARY\n");
gotoxy(41,7);
printf("[D] FOR DEPARTMENT \n");
gotoxy(41,8);
printf("[G] FOR DESIGNATION\n");
gotoxy(41,9);
printf("[S] FOR SHIFT\n");
gotoxy(41,12);
printf("ENTER THE CODE FOR MODIFICATION:_");
scanf("%c",&ch);
if(ch=='a'||ch=='A')
{
gotoxy(20,17);
printf("PLEASE ENTER NEW ADDRESS ");
scanf("%s",TEMP.peradd);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,TEMP.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='b'||ch=='B')
{
gotoxy(20,17);
printf("PLEASE ENTER NEW BASIC SALARY ");
scanf("%f",&TEMP.empbas);
if(TEMP.empbas<4000)
{
da=(TEMP.empbas*1.30);
hra=(TEMP.empbas*.10);
cca=(TEMP.empbas*.03);
ca=(TEMP.empbas*.02);
ma=(TEMP.empbas*.02);
pf=(TEMP.empbas*.10);
}
if(TEMP.empbas>-4000&&TEMP.empbas<6000)
{
da=(TEMP.empbas*1.10);
hra=(TEMP.empbas*.10);
cca=(TEMP.empbas*.03);
ca=(TEMP.empbas*.02);
ma=(TEMP.empbas*.02);
pf=(TEMP.empbas*.15);
}
if(TEMP.empbas>=6000)
{
da=(TEMP.empbas*1.00);
hra=(TEMP.empbas*.10);
cca=(TEMP.empbas*.03);
ca=(TEMP.empbas*.02);
ma=(TEMP.empbas*.02);
pf=(TEMP.empbas*.20);
}
net_sal=TEMP.empbas+da+hra+cca+ca+ma-pf;
if(net_sal<4000)
tax=0;
else if (net_sal>=4000 && net_sal<6000)
tax=net_sal*.10;
else
tax=net_sal*.20;
tot_sal=net_sal-tax;
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,TEMP.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='g'||ch=='G')
{
gotoxy(20,17);
printf("PLEASE ENTER THE NEW DESTINATION ");
scanf("%s",TEMP.desig);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,TEMP.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='d'||ch=='D')
{
gotoxy(20,17);
printf("PLEASE ENTER THE NEW DEPARTAMENT ");
scanf("%s",TEMP.dept);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,TEMP.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='s'||ch=='S')
{
gotoxy(20,17);
printf("PLEASE ENTER THE NEW SHIFT ");
scanf("%s",TEMP.shift);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,TEMP.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
}
}
}
fflush(stdin);
ft1=fopen("temp1.dat","r");
if(ft1==NULL)
{
gotoxy(20,22);
printf("THIS RECORD NOT EXIST IN DATA FILE");
}
gotoxy(20,24);
printf("DO YOU WANT MORE MODIFICATION <Y OR N> ");
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
{
fclose(fp);
fclose(ft);
remove("empdata.dat");
rename("temp.dat","empdata.dat");
remove("temp1.dat");
continue;
}
else
{
fclose(fp);
fclose(ft);
remove("empdata.dat");
rename("temp.dat","empdata.dat");
remove("temp1.dat");
break;
}
}
return(0);
}
/* END OF MODIFY.C */
/* PROGRAM FOR ::DELETION OF RECORD
PROGRAM NAME::DELET.C */
delet()
{
struct
{
char empcode[25];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,JD;
struct date BD;int u,x;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
char *ps;
clrscr();
gotoxy(17,10);
ps=getpass("PLEASE ENTER THE PASWORD TO DELETE DATABASE");
if(strcmp(ps,"???")==0)
{
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE \n");
}
ft=fopen("temp.dat","w+");
if(ft==NULL)
{
printf("CAN NOT OPEN THE TEMP .DAT FILE\n");
}
clrscr();
fflush(stdin);
gotoxy(10,15);
printf("ENTER THE EMPLOYEE CODE FOR DELETE RECORD ");
scanf("%s",c);
if(c=='\0')
{
printf("YOU HAVE NOT ENTER ANY EMPLOYEE CODE \n");
clrscr();
continue;
}
else
{
clrscr();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.empcode,c)==0)
{
gotoxy(10,7);
printf("=======================================================");
for(x=8;x<19;x++)
{
gotoxy(10,x);
printf("||");
gotoxy(63,x);
printf("||");
}
gotoxy(10,19);
printf("=======================================================");
gotoxy(10,10);
printf("=======================================================");
gotoxy(15,8);
printf(" EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM");
gotoxy(15,9);
printf(" Service record of empioyee of code no.%s",ENTRY.empcode);
gotoxy(12,11);
printf(" 1.EMPLOYEE'S NAME :%s",ENTRY.empname);
gotoxy(12,12);
printf(" 2.EMPLOYEE'S POST :%s",ENTRY.desig);
gotoxy(12,13);
printf(" 3.EMPLOYEE'S DEPARTMENT :%s",ENTRY.dept);
gotoxy(12,14);
printf(" 4.EMPLOYEE'S DATE OF JOINING:%d %d %d",JD.dd,JD.mm,JD.yy);
gotoxy(12,15);
printf(" 5.EMPLOYEE'S current basic pay :%f",ENTRY.empbas);
gotoxy(12,17);
printf(" 7.EMPLOYEE'S ADDRESS :%s",ENTRY.peradd);
ft1=fopen("temp1.dat","w+");
if(ft1==NULL)
{
printf(" CAN NOT OPEN THE TEMP.DAT FILE\n");
}
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
break;
}
}
fclose(ft1);
ft1=fopen("temp1.dat","r");
if(ft1==NULL)
{
printf("\n\n\n *****EMPLOYEE OF THIS CODE IS NOT FOUND *****\n");
}
else
{
fflush(stdin);
gotoxy(10,23);
printf("ARE YOU SURE TO DELET THIS RECORD <y or n> ");
scanf("%c",&ch);
if(ch=='n'||ch=='N')
{
remove("temp1.dat");
goto ab;
}
else if(ch=='y'||ch=='Y')
{
rewind(fp);
while(!feof(fp))
{
fscanf(fp,"%s%s%s%s%s%s%s%d%d%d%d%d%d%f%f%f%f%f%f%f%f%f%f",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.empcode,c)!=0)
{
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
remove("temp1.dat");
}
remove("empdata.dat");
rename("temp.dat","empdata.dat");
remove("temp.dat");
}
}
ab: fflush(stdin);
gotoxy(20,25);
printf("DOYOU WANT MORE DELETION <y or n> ");
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
{
fclose(fp);
fclose(ft);
continue;
}
else
{
fclose(fp);
fclose(ft);
break;
}
}
}
remove("temp.dat");
}
return(0);
}
/* END OF DELET.C */
/*PROGRAM FOR ::PROCESS MENU
PROGRAM NAME ::PROCMENU.C */
procmenu()
{
xx: int x,c;
clrscr();
gotoxy(20,2);
printf("=========================================");
for(x=3;x<22;x++)
{
gotoxy(20,x);
printf("||");
gotoxy(59,x);
printf("||");
}
gotoxy(20,22);
printf("=========================================");
gotoxy(20,5);
printf("=========================================");
gotoxy(20,17);
printf("=========================================");
gotoxy(20,19);
printf("=========================================");
gotoxy(23,4);
printf("MENU FOR PROCESSING IN DATA FILE");
gotoxy(24,7);
printf("1. RECREAT DATABASE FILE...");
gotoxy(24,9);
printf("2.ADDITION OF MORE RECORD...");
gotoxy(24,11);
printf("3.DELETION OF RECORDS...");
gotoxy(24,13);
printf("4. MODIFICATION IN RECORD");
gotoxy(24,15);
printf("5. EXIT");
ii:
gotoxy(24,18);
printf("PLEASE CHOICE OPTION BY S.NO.");
gotoxy(24,20);
printf("ENTER THE CHOICE ==>");
scanf("%d",&c);
switch(c)
{
case 1:
{
creat();
goto xx;
}
case 2:
{
entry();
goto xx;
}
case 3:
{
delet();
goto xx;
}
case 4:
{
modify();
goto xx;
}
case 5:
{
break;
}
default:
{
gotoxy(24,23);
printf("Illegle choice try again");
goto ii;
}
}
return(0);
}
/* END OF PROCMENU.C */
box10()
{
int x;
clrscr();
gotoxy(2,1);
printf("=============================================================================");
for(x=2;x<23;x++)
{
gotoxy(2,x);
printf("||");
gotoxy(78,x);
printf("||");
}
gotoxy(2,23);
printf("=============================================================================");
gotoxy(3,4);
printf("===========================================================================");
gotoxy(3,7);
printf("===========================================================================");
for(x=4;x<23;x++)
{
gotoxy(11,x);
printf("||");
gotoxy(35,x);
printf("||");
gotoxy(45,x);
printf("||");
gotoxy(57,x);
printf("||");
gotoxy(65,x);
printf("||");
}
gotoxy(11,4);
printf("||");
gotoxy(35,4);
printf("||");
gotoxy(45,4);
printf("||");
gotoxy(57,4);
printf("||");
gotoxy(65,4);
printf("||");
gotoxy(11,23);
printf("||");
gotoxy(35,23);
printf("||");
gotoxy(45,23);
printf("||");
gotoxy(57,23);
printf("||");
gotoxy(65,23);
printf("||");
gotoxy(4,6);
printf("CODE NO.");
gotoxy(15,6);
printf("EMPLOYEE'S NAME");
gotoxy(38,6);
printf("POST");
gotoxy(47,6);
printf("DEPARTMENT");
gotoxy(59,6);
printf("SHIFT");
gotoxy(68,6);
printf("BASIC PAY");
return(0);
}
/* PROGRAM FOR ::EMPLOYEE DETAILS
PROGRAM NAME ::LIST.C */
list()
{
int x;
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,JD;
float net_sal,basic, tot_sal,da,hra,cca,ca,ma,pf,tax,lbas,mbas;
int a=3,b=8,rc;
char sft[7],dpt[10],name[25],code[10],choice[15],g;
FILE *fp;
while(1)
{
fflush(stdin);
clrscr();
gotoxy(12,8);
printf("EMPLOYEE,S DATA RECORD MANTANCE SYSTEM\n");
gotoxy(12,9);
printf("LIST=>(According to given option)");
gotoxy(12,11);
printf("1.LIST OF ALL DATA RECORD");
gotoxy(12,12);
printf("2.LIST OF DATA RECORD SIFT WISE:-");
gotoxy(12,13);
printf("3.LIST OF DATA RECORD DEPARTMENT WISE:-");
gotoxy(12,14);
printf("4.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE ");
gotoxy(16,18);
printf(" < choise option by serial no.>");
gotoxy(30,16);
g=getch();
fp=fopen("empdata.dat","r");
switch(g)
{
case'1' :
{
a=3,b=8;
clrscr();
box10();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+11,b);
printf("%s",ENTRY.empname);
gotoxy(a+34,b);
printf("%s",ENTRY.desig);
gotoxy(a+45,b);
printf("%s",ENTRY.dept);
gotoxy(a+56,b);
printf("%s",ENTRY.shift);
gotoxy(a+65,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=3;
if(b>22)
{
gotoxy(15,24);
printf("PRESS ANY KEY TO CONTINUE.......");
getch();
clrscr();
b=8,a=3;
}
}
getch();
fclose(fp);
break;
}
case'2':
{
a=3,b=8;
clrscr();
printf("ENTER THE SHIFT OF WHICH RECORDS YOU WANT:-");
scanf("%s",sft);
box10();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(sft,ENTRY.shift)==0)
{
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+11,b);
printf("%s",ENTRY.empname);
gotoxy(a+34,b);
printf("%s",ENTRY.desig);
gotoxy(a+45,b);
printf("%s",ENTRY.dept);
gotoxy(a+56,b);
printf("%s",ENTRY.shift);
gotoxy(a+65,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=3;
if(b>22)
{
b=8,a=3;
gotoxy(15,24);
printf("PRESS ANY KEY TO CONTINUE...");
getch();
clrscr();
}
}
}
getch();
fclose(fp);
break;
}
case'3':
{
a=3,b=8;
clrscr();
printf("ENTER THE DEPARTMENT OF WHICH RECORDS YOU WANT :-");
scanf("%s",dpt);
clrscr();
box10();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(dpt,ENTRY.dept)==0)
{
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+11,b);
printf("%s",ENTRY.empname);
gotoxy(a+34,b);
printf("%s",ENTRY.desig);
gotoxy(a+45,b);
printf("%s",ENTRY.dept);
gotoxy(a+56,b);
printf("%s",ENTRY.shift);
gotoxy(a+65,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=3;
if(b>22)
{
b=8,a=3;
gotoxy(15,24);
printf("PRESS ANY KEY TO CONTINUE...");
getch();
clrscr();
}
}
}
fclose(fp);
getch();
break;
}
case'4':
{
goto dd;
}
}
}
dd:;
return(0);
}
/* END OF LIST.C */
box8()
{
int x;
gotoxy(2,1);
printf("==============================================================================");
for(x=2;x<23;x++)
{
gotoxy(2,x);
printf("||");
gotoxy(78,x);
printf("||");
}
gotoxy(2,23);
printf("============================================================================");
gotoxy(3,4);
printf("===========================================================================");
gotoxy(3,7);
printf("===========================================================================");
for(x=4;x<23;x++)
{
gotoxy(11,x);
printf("||");
gotoxy(35,x);
printf("||");
gotoxy(45,x);
printf("||");
gotoxy(57,x);
printf("||");
gotoxy(65,x);
printf("||");
}
gotoxy(11,4);
printf("||");
gotoxy(35,4);
printf("||");
gotoxy(45,4);
printf("||");
gotoxy(57,4);
printf("||");
gotoxy(65,4);
printf("||");
gotoxy(11,23);
printf("||");
gotoxy(35,23);
printf("||");
gotoxy(45,23);
printf("||");
gotoxy(57,23);
printf("||");
gotoxy(65,23);
printf("||");
gotoxy(4,6);
printf("CODE NO.");
gotoxy(15,6);
printf("EMPLOYEE'S NAME");
gotoxy(38,6);
printf("POST");
gotoxy(47,6);
printf("DEPARTMENT");
gotoxy(59,6);
printf("SHIFT");
gotoxy(68,6);
printf("BASIC PAY");
return(0);
}
/* PROGRAM FOR ::SORTING DATABASE
PROGRAM NAME::SRT.C */
srt()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,JD;
float net_sal,basic,tot_sal,da,hra,cca,ca,ma,pf,tax,lbas,mbas;
int a,b,rc,g,x;
char c,o,sft[7],dpt[10],name[25],code[10],choice[15],aord[12];
FILE *fp,*ft1,*ft2,*ft3;
while(1)
{
fflush(stdin);
clrscr();
gotoxy(12,8);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("SORTED LIST< ACCADING TO GIVEN OPTION >\n");
gotoxy(12,11);
printf("1.SORTED LIST DATA RECORD CODE WISE\n");
gotoxy(12,12);
printf("2.SORTED LIST OF DATA RECORD NAME WISE\n");
gotoxy(12,13);
printf("3.SORTED LIST OF DATA RECORD BASIC PAY WISE\n");
gotoxy(12,14);
printf("4.FOR RETURN MAIN MENU\n");
gotoxy(12,16);
printf("ENTER THE CHOICE\n");
gotoxy(16,18);
printf("<CHOSE OPTION BY SERIAL NO.>\n");
gotoxy(30,16);
scanf("%d",&g);
fp=fopen("empdata.dat","r");
ft3=fopen("data.dat","w");
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
fprintf(ft3,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(fp);
fclose(ft3);
switch(g)
{
case 1:
{
gotoxy(10,22);
fflush(stdin);
printf("PRESS 'A' FOR ASCENDING OR PRESS 'D' FORDECENDING ORDER:");
o=getch();
o=tolower(o);
strcpy(choice,"CODE WISE");
ft1=fopen("sort.dat","w");
ll:
ft2=fopen("temp.dat","w");
ft3=fopen("data.dat","r");
if(ft3==NULL)
{
printf("CAN NOT OPEN THE DATAFILES<EMPDATA.DAT>\n");
getch();
}
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
strcpy(code,ENTRY.empcode);
if(feof(ft3))
{
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
goto nn;
}
while(!feof(ft3))
{
if(o=='a')
{
strcpy(aord,"ASSCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(code,ENTRY.empcode)>0)
{
strcpy(code,ENTRY.empcode);
}
}
if(o=='d')
{
strcpy(aord,"DESCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(code,ENTRY.empcode)<0)
{
strcpy(code,ENTRY.empcode);
}
}
}
rewind(ft3);
while(!feof(ft3))
{
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(code,ENTRY.empcode)==0)
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
else
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(ft3);
fclose(ft2);
remove("data.dat");
rename("temp.dat","data.dat");
goto ll;
nn:
fclose(ft3);
fclose(ft1);
fclose(ft2);
remove("data.data");
remove("temp.dat");
}break; /* Closing second case loop */
case 2:
{
gotoxy(10,22);
fflush(stdin);
printf("PRESS 'A' FOR ASCENDING OR PRESS 'D' FORDECENDING ORDER");
scanf("%c",&o);
o=tolower(o);
strcpy(choice,"NAME WISE");
ft1=fopen("sort.dat","w");
aa:
ft2=fopen("temp.dat","w");
ft3=fopen("data.dat","r");
if(ft3==NULL)
{
printf("CAN NOT OPEN THE DATAFILES<EMPDATA.DAT>\n");
getch();
}
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
strcpy(name,ENTRY.empname);
if(feof(ft3))
{
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
goto bb;
}
while(!feof(ft3))
{
if(o=='a')
{
strcpy(aord,"ASSCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(name,ENTRY.empname)>0)
{
strcpy(name,ENTRY.empname);
}
}
if(o=='d')
{
strcpy(aord,"DECENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(name,ENTRY.empname)<0)
{
strcpy(name,ENTRY.empname);
}
}
}
rewind(ft3);
while(!feof(ft3))
{
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(name,ENTRY.empname)==0)
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
else
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(ft3);
fclose(ft2);
remove("data.dat");
rename("temp.dat","data.dat");
goto aa;
bb:
fclose(ft3);
fclose(ft1);
fclose(ft2);
remove("data.data");
remove("temp.dat");
}break; /* Closing Secod case loop */
case 3:
{
gotoxy(10,22);
fflush(stdin);
printf("PRESS 'A' FOR ASCENDING OR PRESS 'D' FORDECENDING ORDER");
scanf("%c",&o);
strcpy(choice,"BASICPAYWISE");
ft1=fopen("sort.dat","w");
e:
ft2=fopen("temp.dat","w");
ft3=fopen("data.dat","r");
if(ft3==NULL)
{
printf("CAN NOT OPEN THE DATAFILES<EMPDATA.DAT>\n");
getch();
}
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
basic=ENTRY.empbas;
if(feof(ft3))
{
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
getch();
goto f;
}
while(!feof(ft3))
{
if(o=='a')
{
strcpy(aord,"ASSCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(basic>ENTRY.empbas)
{
basic=ENTRY.empbas;
}
}
if(o=='d')
{
strcpy(aord,"DESCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(basic<ENTRY.empbas)
{
basic=ENTRY.empbas;
}
}
}
rewind(ft3);
while(!feof(ft3))
{
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(ENTRY.empbas==basic)
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
else
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(ft3);
fclose(ft2);
remove("data.dat");
rename("temp.dat","data.dat");
goto e;
f:
fclose(ft3);
fclose(ft1);
fclose(ft2);
remove("data.data");
remove("temp.dat");
}break;/* Closing third case loop */
case 4:
{
goto dd;
}
} /* Closing switch case */
clrscr();
printf("YOUR DATABASE SORTED ACCORDING GIVEN OPTION\n");
printf("Press any key to see record");
ft1=fopen("sort.dat","r");
clrscr();
a=4,b=8;
box8();
gotoxy(15,2);
printf("****EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM****");
gotoxy(18,3);
printf("%s SORTED DATA RECORD IN %s ORDER ",choice,aord);
while(!feof(ft1))
{
fscanf(ft1,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
fflush(stdin);
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+10,b);
printf("%s",ENTRY.empname);
gotoxy(a+33,b);
printf("%s",ENTRY.desig);
gotoxy(a+44,b);
printf("%s",ENTRY.dept);
gotoxy(a+55,b);
printf("%s",ENTRY.shift);
gotoxy(a+64,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=4;
if(b>22)
{
getch();
clrscr();
b=8,a=3;
}
}
getch();
fclose(ft1);
}
dd:;
return(0);
}
/* END OF SORT.C */
/* PROGRAM FOR ::AGE FINDING
PROGRAM NAME ::AGE.C */
age(int dd,int mm,int yy)
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g,l;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
A.dd=dd;
A.mm=mm;
A.yy=yy;
{
getdate(&D);
if(D.da_day<A.dd)
{
if(D.da_mon==1||D.da_mon==3||D.da_mon==5||D.da_mon==7||D.da_mon==8
||D.da_mon==10||D.da_mon==12)
{
D.da_day+=31;
D.da_mon-=1;
}
if(D.da_mon==4||D.da_mon==6||D.da_mon==9||D.da_mon==11)
{
D.da_day+=30;
D.da_mon-=1;
}
if(D.da_mon==2 && D.da_year%4 && D.da_year/100!=0||D.da_year%400==0)
{
D.da_day+=29;
D.da_mon-=1;
}
else
{
D.da_day+=28;
D.da_mon-=1;
}
}
if(D.da_mon<A.mm)
{
D.da_mon+=12;
D.da_year-=1;
}
B.dd=D.da_day-A.dd;
B.mm=D.da_mon-A.mm;
B.yy=D.da_year-A.yy;/*-1900;*/
return(B.yy);
}
}
/* END OF AGE */
/* PROGRAM FOR ::SERVICE RECORD
PROGRAM NAME ::SERVICE.C */
service()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g,l,d,m,y;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
clrscr();
fflush(stdin);
gotoxy(12,8);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("YOU CAN SEE SALARY REORD AS GIVEN OPTION\n");
gotoxy(12,11);
printf("1.SERVICE RECORD FOR GIVEN EMPLOYEE");
gotoxy(12,12);
printf("2.SERVICE RECORD OF ALL EMPLOYEES");
gotoxy(12,13);
printf("3.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE ");
gotoxy(16,18);
printf("<CHOSE OPTION BY SERIAL NO.>");
gotoxy(30,16);
scanf("%d",&g);
switch(g)
{
case 1:
{
clrscr();
gotoxy(20,12);
printf("ENTER THE EMPLOYEE CODE FOR SERVICE RECORD ::");
scanf("%s",c);
if(c=='\0')
{
gotoxy(20,15);
printf("YOU HAVE NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(c,ENTRY.empcode)==0)
{
ft1=fopen("temp1.dat","w");
fprintf(ft1,"%s\n",ENTRY.empcode);
fclose(ft1);
clrscr();
gotoxy(9,7);
printf("========================================================");
for(x=8;x<19;x++)
{
gotoxy(9,x);
printf("||");
gotoxy(63,x);
printf("||");
}
gotoxy(9,19);
printf("========================================================");
gotoxy(9,10);
printf("========================================================");
gotoxy(15,8);
printf("EMPLOYE'S DATA RECORD MANTENCE SYSTEM");
gotoxy(12,9);
printf("Service record for employee of code no.%s",ENTRY.empcode);
gotoxy(11,11);
printf("1.EMPLOYEE,S NAME :%s",ENTRY.empname);
gotoxy(11,12);
printf("2.EMPLOYEE,S POST :%s",ENTRY.desig);
gotoxy(11,13);
printf("3.EMPLOYEE,S DEPARTMENT :%s",ENTRY.dept);
gotoxy(11,14);
printf("4.EMPLOYEE,S DATE OF JOINING :%d %d %d",JD.dd,JD.mm,JD.yy);
gotoxy(11,15);
printf("5.EMPLOYEE,S CURRENT TOTAL PAY:%7.2f",tot_sal);
gotoxy(11,16);
d=A.dd;
m=A.mm;
y=A.yy;
B.yy=age(d,m,y);
printf("6.EMPLOYEE,S CURRENT AGE :%d",B.yy);
gotoxy(11,17);
printf("7.EMPLOYEE,S ADDRESS :%s",ENTRY.peradd);
break;
}
}
fopen("temp1.dat","r");
if(feof(ft1))
{
clrscr();
gotoxy(20,15);
printf("THIS RECORD NOT FOUND");
gotoxy(20,20);
printf("PRESS ANY KEY TO CONTINUE");
}
getch();
fclose(ft1);
remove("temp1.dat");
}
break;}
case 2:
{
clrscr();
gotoxy(13,3);
printf("**CURRENT SERVICE RECORD OF ALL EMPLOYEE **\n");
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(1,6);
printf("CODE.NO");
gotoxy(3,l);
printf("%s",ENTRY.empcode);
gotoxy(13,6);
printf("PERMANENT ADDRESS");
gotoxy(12,l);
printf("%s",ENTRY.peradd);
gotoxy(36,6);
printf("POST");
gotoxy(36,l);
printf("%s",ENTRY.desig);
gotoxy(46,6);
printf("JOIN DATE");
gotoxy(46,l);
printf("%d/%d/%d/",JD.dd,JD.mm,JD.yy);/*-1900);*/
gotoxy(59,6);
printf("AGE");
gotoxy(58,l);
d=A.dd;
m=A.mm;
y=A.yy;
B.yy=age(d,m,y);
printf("%d",B.yy);
gotoxy(68,6);
printf("TOTAL_PAY");
gotoxy(67,l);
printf("%8.2f",tot_sal);
l=l+1;
if(l>22)
{
gotoxy(15,24);
printf("press any key to continue");
getch();
clrscr();
l=8;
}
}
getch();
}
break;
case 3:
{
goto aa;
}
}
}
aa :;
return(0);
}
/* END OF SERVICE.C */
/* PROGRAM FOR ::SALARY RECORD
PROGRAM NAME ::SALARY.C */
salary()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g,l;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT\n");
}
clrscr();
fflush(stdin);
gotoxy(12,8);
printf("EMLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("YOU CAN SEE SALARY RECORD AS GIVEN OPTION");
gotoxy(12,11);
printf("1.SALARY RECORD FOR A GIVEN PERSON");
gotoxy(12,12);
printf("2.SALARY RECOED OF ALL EMPLOYEES");
gotoxy(12,13);
printf("3.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE ");
gotoxy(12,18);
printf("< CHOSE OPTIONS BY SERIAL NO. >");
gotoxy(30,16);
scanf("%d",&g);
switch(g)
{
case 1:
{
clrscr();
gotoxy(20,12);
printf("ENTER THE EMPLOYEE CODE FOR SALARY RECORD ::");
scanf("%s",c);
if(c=='\0')
{
gotoxy(20,15);
printf("YOU NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(c,ENTRY.empcode)==0)
{
clrscr();
gotoxy(10,5);
printf("=======================================================");
for(x=6;x<21;x++)
{
gotoxy(10,x);
printf("||");
gotoxy(63,x);
printf("||");
}
gotoxy(10,20);
printf("=====================================================");
gotoxy(10,8);
printf("======================================================");
gotoxy(15,6);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM");
gotoxy(14,7);
printf("Salary record of employee of code no %s" ,ENTRY.empcode);
gotoxy(12,9);
printf("1.EMPLOYEE,S NAME :%s",ENTRY.empname);
gotoxy(12,10);
printf("2.EMPLOYEE'S BASIC PAY :%8.2f",ENTRY.empbas);
gotoxy(12,11);
printf("3.EMPLOYEE HOUSE RENT ALLOUNCE:%8.2f",hra);
gotoxy(12,12);
printf("4.EMPLOYEE DEARNESS ALLOUNCE :%8.2f",da);
gotoxy(12,13);
printf("5.EMPLOYEE,S CITY ALLOUNCE :%8.2f",ca);
gotoxy(12,14);
printf("6.EMPLOYEE,S CCA :%8.2f",cca);
gotoxy(12,15);
printf("7.EMPLOYEE,S MEDICAL ALLOUNCE :%8.2f",ma);
gotoxy(12,16);
printf("8.PROVIDENT FUND DEDUCTION :%8.2f",pf);
gotoxy(12,17);
printf("9.EMPLOYEE,S NET SALARY :%8.2f",net_sal);
gotoxy(12,18);
printf("10.TAX PAID BY EMPLOYEE :%8.2f",tax);
gotoxy(12,19);
printf("11.TOTAL SALARY :%8.2f",tot_sal);
break;
}
else
{
gotoxy(25,20);
printf("THIS RECORD IS NOT EXIT");
printf("\nPress Any Key toreturn salary menu");
}
}
}
getch();
break;}
case 2:
{
ab: clrscr();
gotoxy(13,2);
printf("******CURRENT SALARY RECORD OF ALL EMPLOYEE ******\n");
gotoxy(13,3);
printf("**< TOTAL PAY =(BASIC+DA+HRA+CCA+CA+MA)-(PF+TAX) >**\n");
l=8;
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(2,l);
printf("%s",ENTRY.empcode);
gotoxy(2,6);
printf("CODE");
gotoxy(8,l);
printf("%8.2f",ENTRY.empbas);
gotoxy(9,6);
printf("BASIC");
gotoxy(17,l);
printf("%8.2f",da);
gotoxy(19,6);
printf("D.A.");
gotoxy(26,l);
printf("%6.2f",hra);
gotoxy(27,6);
printf("HRA");
gotoxy(34,l);
printf("%4.0f",cca);
gotoxy(35,6);
printf("CCA");
gotoxy(40,l);
printf("%4.0f",ca);
gotoxy(42,6);
printf("C.A.");
gotoxy(47,l);
printf("%4.0f",ma);
gotoxy(48,6);
printf("M.ALL");
gotoxy(55,l);
printf("%4.0f",pf);
gotoxy(57,6);
printf("P.F.");
gotoxy(64,l);
printf("%5.0f",tax);
gotoxy(65,6);
printf("TAX");
gotoxy(70,l);
printf("%8.2f",tot_sal);
gotoxy(70,6);
printf("TOTAL_PAY");
l=l+1;
if(l>22)
{
gotoxy(40,24);
printf("HRA ,CCA,CA,MAARE APPROXIMATE VALUE");
gotoxy(2,25);
printf("press any key to salary menu");
getch();
l=8;
goto ab;
}
}
gotoxy(40,24);
printf(" hra,cca,ca,ma,are approximate value");
gotoxy(2,25);
printf("PRESS ANY KEY TO SALARY MENU");
getch();
break;
}
case 3:
{
goto aa;
}
}
}
aa:;
fclose(fp);
return(0);
}
/* END OF SALARY.C */
/* PROGRAM FOR ::SUMMARY GRAPHREPORT
PROGRAM NAME ::SL.C */
sl()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int d1=0,d2=0,d3=0,d4=0,d5=0;
int gd=DETECT,gm;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax,s1=0,s2=0,s3=0,s4=0,s5=0;
char ch,c[10];
FILE *fp;
getdate(&D);
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
clrscr();
fflush(stdin);
rewind(fp);
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.dept,"Produ")==0)
{ d1=d1+1;
s1=s1+tot_sal;
}
if(strcmp(ENTRY.dept,"Marke")==0)
{
d2=d2+1;
s2=s2+tot_sal;
}
if(strcmp(ENTRY.dept,"Maint")==0)
{
d3=d3+1;
s3+s3+tot_sal;
}
if(strcmp(ENTRY.dept,"Accou")==0)
{
d4=d4+1;
s4=s4+tot_sal;
}
if(strcmp(ENTRY.dept,"Admin")==0)
{
d5=d5+1;
s5=s5+tot_sal;
}
}
initgraph(&gd,&gm,"c:\\tc\\bgi");
setcolor(RED);
line(5,1,5,430);
line(5,430,639,430);
setfillstyle(2,3);
bar3d(20,(430-(d1*20)),50,430,5,1);
bar3d(120,(430-(d2*20)),150,430,5,1);
bar3d(220,(430-(d3*20)),250,430,5,1);
bar3d(320,(430-(d4*20)),350,430,5,1);
bar3d(420,(430-(d5*20)),450,430,5,1);
bar3d(600,10,630,20,5,1);
setfillstyle(7,5);
bar3d(55,(430-(s1/150)),85,430,5,1);
bar3d(155,(430-(s2/150)),185,430,5,1);
bar3d(255,(430-(s3/150)),285,430,5,1);
bar3d(355,(430-(s4/150)),385,430,5,1);
bar3d(455,(430-(s5/150)),485,430,5,1);
bar3d(550,10,580,20,5,1);
rectangle(545,2,639,170);
settextstyle(SANS_SERIF_FONT,HORIZ_DIR,1);
setcolor(LIGHTRED);
outtextxy(10,450,"Production");
outtextxy(115,450,"Marketing");
outtextxy(216,450,"Maintenence");
outtextxy(340,450,"account");
outtextxy(440,450,"administration");
settextstyle(SMALL_FONT,VERT_DIR,5);
setcolor(LIGHTCYAN);
outtextxy(560,20,"Total salary<--");
outtextxy(610,20,"Total Employee<--");
settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);
outtextxy(160,15,"Bajaj Auto ltd.");
fclose(fp);
getch();
cleardevice();
closegraph();
return(0);
}
/* END OF SL.C */
/* PROGRAM FOR ::PAYSLIP
PROGRAM NAME ::S1.C */
s1()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
clrscr();
fflush(stdin);
gotoxy(12,8);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("YOU CAN SEE SALARY REORD AS GIVEN OPTION\n");
gotoxy(12,11);
printf("1.PAY SLIP FOR GIVEN EMPLOYEE");
gotoxy(12,12);
printf("2.PAY SLIP OF ALL EMPLOYEES");
gotoxy(12,13);
printf("3.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE:- ");
gotoxy(16,18);
printf("< CHOSE OPTION BY SERIAL NO. >");
gotoxy(30,16);
scanf("%d",&g);
switch(g)
{
case 1:
{
clrscr();
gotoxy(20,12);
printf("ENTER THE EMPLOYEE CODE FOR PAYSLIP ::");
scanf("%s",c);
if(c=='\0')
{
gotoxy(20,15);
printf("YOU HAVE NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(c,ENTRY.empcode)==0)
{
clrscr();
gotoxy(1,1);
printf("=============================================================================");
for(x=2;x<24;x++)
{
gotoxy(1,x);
printf("||");
gotoxy(76,x);
printf("||");
if(x<23&&x>3)
{
gotoxy(38,x);
printf("||");
}
}
gotoxy(1,24);
printf("=============================================================================");
gotoxy(1,5);
printf("===========================================================================");
gotoxy(1,20);
printf("===========================================================================");
gotoxy(1,3);
printf("===========================================================================");
gotoxy(1,22);
printf("===========================================================================");
gotoxy(38,3);
printf("=");
gotoxy(38,22);
printf("=");
gotoxy(38,5);
printf("=");
gotoxy(38,20);
printf("=");
gotoxy(10,4);
printf("EARNING AMOUNT ");
gotoxy(47,4);
printf("DEDUCTING AMOUNT");
gotoxy(3,7);
printf("1.BASIC SALARY AMOUNT ");
gotoxy(3,9);
printf("2.DEARNESS AMOUNT");
gotoxy(3,11);
printf("3.CA AMOUNT ");
gotoxy(3,13);
printf("4.CCA AMOUNT");
gotoxy(3,15);
printf("5.MEDICAL AMOUNT ");
gotoxy(3,17);
printf("6.HOUSE RENT AMOUNT");
gotoxy(3,21);
printf("TOTAL EARNING==");
gotoxy(40,9);
printf("1.PROVIDENT FOUND AMOUNT");
gotoxy(40,14);
printf("2.TOTAL TAX AMOUNT ");
gotoxy(40,21);
printf("TOTAL DEDUCTION==");
gotoxy(3,23);
printf("NET SALARY==(TOTAL EARNING-TOTAL DEDUCTION) IS ");
gotoxy(3,2);
printf("CODE- %s",ENTRY.empcode);
gotoxy(21,2);
printf("NAME- %s",ENTRY.empname);
gotoxy(51,2);
printf("DEPRTMENT- %s",ENTRY.dept);
gotoxy(27,7);
printf("%8.2f",ENTRY.empbas);
gotoxy(27,9);
printf("%8.2f",da);
gotoxy(27,11);
printf("%8.2f",ca);
gotoxy(27,13);
printf("%8.2f",cca);
gotoxy(27,15);
printf("%8.2f",ma);
gotoxy(27,17);
printf("%8.2f",hra);
gotoxy(63,9);
printf("%8.2f",pf);
gotoxy(63,14);
printf("%8.2f",tax);
gotoxy(27,21);
printf("%8.2f",ENTRY.empbas+da+ca+cca+hra+ma);
gotoxy(63,21);
printf("%8.2f",pf+tax);
gotoxy(60,23);
printf("%8.2f",tot_sal);
gotoxy(25,25);
printf("PRES ANY KEY TO RETURN....");
break;
}
else
{
gotoxy(25,25);
printf("THIS RECORD IS NOT EXIT");
printf("\n press any key to return salary menu");
}
}
}
getch();
break;
}
case 2:{
clrscr();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(1,1);
printf("============================================================================");
for(x=2;x<24;x++)
{
gotoxy(1,x);
printf("||");
gotoxy(76,x);
printf("||");
if(x<23 && x>3)
{
gotoxy(38,x);
printf("||");
}
}
gotoxy(1,24);
printf("============================================================================");
gotoxy(1,5);
printf("===========================================================================");
gotoxy(1,20);
printf("===========================================================================");
gotoxy(1,3);
printf("===========================================================================");
gotoxy(1,22);
printf("===========================================================================");
gotoxy(38,3);
printf("=");
gotoxy(38,22);
printf("=");
gotoxy(38,5);
printf("=");
gotoxy(38,20);
printf("(=");
gotoxy(10,4);
printf("EARNING AMOUNT ");
gotoxy(47,4);
printf("DEDUCTING AMOUNT");
gotoxy(2,7);
printf("1.BASIC SALARY AMOUNT ");
gotoxy(2,9);
printf("2.DEARNESS AMOUNT");
gotoxy(2,11);
printf("3.CA AMOUNT ");
gotoxy(2,13);
printf("4.CCA AMOUNT");
gotoxy(2,15);
printf("5.MEDICAL AMOUNT ");
gotoxy(2,17);
printf("6.HOUSE RENT AMOUNT");
gotoxy(2,21);
printf("TOTAL EARNING==");
gotoxy(39,9);
printf("1.PROVIDENT FOUND AMOUNT");
gotoxy(39,14);
printf("2.TOTAL TAX AMOUNT ");
gotoxy(40,21);
printf("TOTAL DEDUCTION==");
gotoxy(2,23);
printf("NET SALARY==(TOTAL EARNING-TOTAL DEDUCTION) IS ");
gotoxy(2,2);
printf("CODE- %s",ENTRY.empcode);
gotoxy(21,2);
printf("NAME- %s",ENTRY.empname);
gotoxy(51,2);
printf("DEPRTMENT- %s",ENTRY.dept);
gotoxy(27,7);
printf("%8.2f",ENTRY.empbas);
gotoxy(27,9);
printf("%8.2f",da);
gotoxy(27,11);
printf("%8.2f",ca);
gotoxy(27,13);
printf("%8.2f",cca);
gotoxy(27,15);
printf("%8.2f",ma);
gotoxy(27,17);
printf("%8.2f",hra);
gotoxy(63,9);
printf("%8.2f",pf);
gotoxy(63,14);
printf("%8.2f",tax);
gotoxy(27,21);
printf("%8.2f",ENTRY.empbas+da+ca+cca+hra+ma);
gotoxy(63,21);
printf("%8.2f",pf+tax);
gotoxy(60,23);
printf("%8.2f",tot_sal);
gotoxy(25,25);
printf("PRES ANY KEY TO CONTINUE....");
getch();
}
break;
}
case 3:{
goto aa;
}
}
}
aa:;
fclose(fp);
return(0);
}
/* END OF S1.C */
/* PROGRAM FOR ::REPORT MENU
PROGRAM NAME::REPOMENU.C */
repomenu()
{
int x,c;
ii:
clrscr();
gotoxy(20,2);
printf("=========================================");
for(x=3;x<22;x++)
{
gotoxy(20,x);
printf("||");
gotoxy(59,x);
printf("||");
}
gotoxy(20,22);
printf("=========================================");
gotoxy(20,5);
printf("=========================================");
gotoxy(20,18);
printf("=========================================");
gotoxy(20,20);
printf("=========================================");
gotoxy(23,4);
printf("MENU FOR REPORTS OF EMPLOYEE");
gotoxy(24,7);
printf("1.GENARAL LIST OF EMPLOYEE");
gotoxy(24,9);
printf("2.SORTED LIST OF EMPLOYEE...");
gotoxy(24,11);
printf("3.SERVICE RECORD OF EMPLOYEE...");
gotoxy(24,13);
printf("4.SALARY RECORD OF EMPLOYEE...");
gotoxy(24,15);
printf("5.SUMMARY REPORT...");
gotoxy(24,17);
printf("6.EXIT");
gotoxy(24,19);
printf("PLEASE CHOICE OPTION BY S.NO");
gotoxy(24,21);
printf("ENTER THE CHOICE ==>");
scanf("%d",&c);
switch(c)
{
case 1:{
list();
goto ii;
}
case 2:{
srt();
goto ii;
}
case 3:{
service();
goto ii;
}
case 4:{
salary();
goto ii;
}
case 5:{
sl();
goto ii;
}
case 6:{
break;
}
default:
{
gotoxy(24,23);
printf("illegel choice try agin");
getch();
goto ii;
}
}
return(0);
}
/* END OF REPOMENU.C */
/* PROGRAM FOR ::WELCOME AT SYSTEM
PROGRAM NAME ::W1.C */
wellcome()
{
int r=0,r1,r2,i;
char msg[100],msg1[100],z1;
int gd=DETECT,gm;
struct date d;
struct time t;
getdate(&d);
gettime(&t);
clrscr();
sprintf(msg,"DATE-%d:%d:%d",d.da_day,d.da_mon,d.da_year);
sprintf(msg1,"TIME- %d:%d:%d",t.ti_hour,t.ti_min,t.ti_sec);
initgraph(&gd,&gm,"c:\\tc\\bgi");
setfillstyle(1,getmaxcolor());
setcolor(RED);
bar3d(1,35,590,480,36,1);
setcolor(DARKGRAY);
for(r1=37,r2=11;r1<474&&r2<453;r1++,r2++)
{
line(590,r1,624,r2);
}
for(r1=3,r2=37;r1<584&&r2<624;r1++,r2++)
{
line(r1,35,r2,10);
}
setcolor(BROWN);
for(r=37;r<470;r+=4)
{
outtextxy(4,r," ");
if(r>176)
setcolor(WHITE);
if(r>321)
setcolor(2);
}
setcolor(BLUE);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,7);
outtextxy(100,20,"PROJECT ");
outtextxy(100,23,"PROJECT ");
outtextxy(100,26,"PROJECT ");
outtextxy(100,29,"PROJECT ");
outtextxy(100,32,"PROJECT ");
setcolor(YELLOW);
settextstyle(GOTHIC_FONT,HORIZ_DIR,7);
outtextxy(250,100,"ON");
outtextxy(250,103,"ON");
outtextxy(250,106,"ON");
outtextxy(250,109,"ON");
outtextxy(250,112,"ON");
setcolor(RED);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);
outtextxy(30,180,"PERSONAL");
outtextxy(30,182,"PERSONAL");
outtextxy(30,184,"PERSONAL");
outtextxy(30,186,"PERSONAL");
outtextxy(200,225,"MANAGMENT");
outtextxy(200,227,"MANAGMENT");
outtextxy(200,229,"MANAGMENT");
outtextxy(200,231,"MANAGMENT");
outtextxy(400,271,"SYSTEM");
outtextxy(400,273,"SYSTEM");
outtextxy(400,275,"SYSTEM");
outtextxy(400,277,"SYSTEM");
setcolor(MAGENTA);
settextstyle(SMALL_FONT,HORIZ_DIR,8);
outtextxy(20,330,"SUPERVISED BY...");
outtextxy(30,360,"Mr.Manoj Kumar");
settextstyle(SANS_SERIF_FONT,HORIZ_DIR,2);
outtextxy(230,420,msg);
outtextxy(230,450,msg1);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,1);
outtextxy(350,330,"CODED BY...");
outtextxy(350,360,"MANISH KUMAR SINGH");
getch();
clrscr();
i=0;
setcolor(BLUE);
for(i=0;i<400;i+=1)
{
circle(320,238,i);
if(i>217);
setcolor(RED);
}
r=150;
setcolor(WHITE);
for(i=0;i<40;i++)
{
settextstyle(TRIPLEX_FONT,HORIZ_DIR,7);
outtextxy(80,r,"Bajaj Auto Ltd.");
r+=2;
}
delay(1300);
getch();
closegraph();
return(0);
}
/* END OF W1.C */
/* PROGRAM FOR ::MAIN MENU
PROGRAM NAME ::MAIN.C
PROGRAM CODED BY ::MANISH KUMAR */
main()
{
char ch,z1;
int r;
int gd=DETECT,gm;
wellcome();
clrscr();
u:
initgraph(&gd,&gm,"c:\\tc\\bgi");
setcolor(2);
rectangle(3,3,600,400);
setcolor(3);
rectangle(8,8,595,395);
setcolor(4);
rectangle(13,13,590,391);
setcolor(5);
rectangle(18,18,585,386);
setcolor(6);
rectangle(23,23,579,381);
setcolor(7);
rectangle(28,28,574,376);
setcolor(9);
rectangle(33,33,569,371);
setcolor(3);
rectangle(38,38,564,366);
setcolor(1);
for (r=41;r<358;r+=7)
{
outtextxy(41,r," ");
}
setcolor(2);
rectangle(78,68,524,330);
rectangle(75,65,527,333);
setcolor(7);
for(r=72;r<320;r+=7)
{
outtextxy(81,r," ");
}
setcolor(RED);
rectangle(83,73,519,117);
setcolor(WHITE);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);
outtextxy(87,61,"**** MAIN MENU ****\n\n");
outtextxy(87,65,"**** MAIN MENU ****\n\n");
outtextxy(87,69,"**** MAIN MENU ****\n\n");
outtextxy(87,63,"**** MAIN MENU ****\n\n");
settextstyle(GOTHIC_FONT,HORIZ_DIR,4);
setcolor(RED);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,3);
outtextxy(210,120," OPTION ");
setcolor(WHITE);
outtextxy(95,170," [p] for Processing\n");
outtextxy(95,200," [r] for Records\n");
outtextxy(95,230," [s] for Payslip\n");
outtextxy(95,260," [e] for Exit\n\n");
ii : outtextxy(130,282,"please enter your choice [__] ");
fflush(stdin);
gotoxy(57,19);
z1=getch();
z1=tolower(z1);
if(z1=='p'||z1=='r'||z1=='e'||z1=='s')
{
closegraph();
switch(z1)
{
case'p':
procmenu ();
goto u;
case 'r' :
repomenu();
goto u;
case 's':
s1();
goto u;
case 'e' :
wellcome();
break;
default:
{
outtextxy(95,300,"ILLIGAL CHOICE TRY AGAIN !!!");
delay(20);
goto u;
}
}
}
else
goto ii;
return(0);
}
/* END OF MAIN.C */
#include<conio.h>
#include<stdlib.h>
#include<graphics.h>
#include<dos.h>
#include<string.h>
#include<ctype.h>
#include<stdarg.h>
box()
{
int x;
clrscr();
gotoxy(7,1);
printf("=================================================================");
for(x=2;x<24;x++)
{
gotoxy(7,x);
printf("||");
gotoxy(70,x);
printf("||");
}
gotoxy(7,24);
printf("=================================================================");
gotoxy(7,3);
printf("=================================================================");
return(0);
}
/* PROGRAM FOR ::CREATING DATABASE
PROGRAM NAME::CREAT.C */
creat()
{
struct
{
char empcode[10];
char empname[20];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}BD,A;
struct date JD;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
int rc=0,x;
char c,empcode[10],*ps;
FILE *fp;
clrscr();
gotoxy(17,10);
ps=getpass("PLEASE ENTER THE PASSWARD TO RE-CREAT DATABASE");
if(strcmp(ps,"???")==0)
{
fp=fopen("empdata.dat","w+");
getdate(&JD);
if(fp==NULL)
{
printf("can not open the empdata.dat file \n");
}
else
{
while(1)
{
clrscr();
box();
rc++;
gotoxy(10,2);
printf(" ***EMPLOYEE RECORD ENTRY IN DATA REGISTER***");
gotoxy(50,4);
printf("TODAYS %dth RECORD\n",rc);
gotoxy(9,5);
printf("1.ENTER THE EMPLOYEE CODE :");
scanf("%s",ENTRY.empcode);
fseek(fp,0,0);
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&BD.dd,&BD.mm,&BD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
x=strcmp(ENTRY.empcode,empcode);
if(x==0)
{
gotoxy(9,15);
printf("THIS RECORD ALLREADY EXIT");
break;
}
}
if(x!=0)
{
gotoxy(9,7);
fflush(stdin);
printf("2. ENTER THE EMPLOYEE NAME :");
scanf("%[^\n]s",&ENTRY.empname);
gotoxy(9,9);
fflush(stdin);
printf("3.EMPLOYEE'S FOTHER'S NAME :");
scanf("%[^\n]s",&ENTRY.empfaname);
gotoxy(9,11);
fflush(stdin);
printf("4. ENTER THE PERMANENT ADDRESS :");
scanf("%[^\n]s",&ENTRY.peradd);
gotoxy(9,13);
fflush(stdin);
printf("5. ENTER THE DESIGNITION :");
scanf("%[^\n]s",&ENTRY.desig);
gotoxy(9,14);
printf("Department-Produ,Marke,Maint,Accou,Admin");
gotoxy(9,15);
fflush(stdin);
printf("6. ENTER THE DEPARTMENT CHOICE:");
scanf("%[^\n]s",&ENTRY.dept);
gotoxy(9,17);
fflush(stdin);
printf("7. ENTER THE SHIFT<DAY OR NIGHT> :");
scanf("%[^\n]s",&ENTRY.shift);
gotoxy(9,19);
printf("8. ENTER THE BASIC PAY :");
scanf("%f",&ENTRY.empbas);
gotoxy(9,21);
printf("9. ENTER THE DATE OF BIRTH :");
gotoxy(43,21);
printf("DAY:");
scanf("%d",&BD.dd);
gotoxy(51,21);
printf("month:");
scanf("%d",&BD.mm);
gotoxy(61,21);
printf("year:");
scanf("%d",&BD.yy);
gotoxy(9,23);
printf("10.DATE OF JOINING:%d:%d:%d\n",JD.da_day,JD.da_mon,JD.da_year);
if(ENTRY.empbas<4000)
{
da=(ENTRY.empbas*1.30);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.10);
}
if(ENTRY.empbas>=4000 && ENTRY.empbas<6000)
{
da=(ENTRY.empbas*1.10);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.15);
}
if(ENTRY.empbas>=6000)
{
da=(ENTRY.empbas*1.00);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.20);
}
net_sal=(ENTRY.empbas+da+hra+cca+ca+ma)-(pf);
if(net_sal<4000)
tax=0;
else if (net_sal>=4000 && net_sal<6000)
tax=net_sal*.10;
else
tax=net_sal*.20;
tot_sal=net_sal-tax;
fprintf(fp,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.da_day,JD.da_mon,JD.da_year,BD.dd,BD.mm,BD.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
else
goto d;
d:
fflush(stdin);
gotoxy(15,25);
printf("DO YOUWANT MORE ENTRY<y/n>");
scanf("%c",&c);
if(c=='y'||c=='Y')
continue;
else
break;
}
fclose(fp);
}
}
else
printf("YOU HAVE NOT ENTER CORRECT PASSWARD");
return(0);
}
/* END OF CREAT.C */
box1()
{
int x;
clrscr();
gotoxy(7,1);
printf("=================================================================");
for(x=2;x<24;x++)
{
gotoxy(7,x);
printf("||");
gotoxy(70,x);
printf("||");
}
gotoxy(7,24);
printf("================================================================");
gotoxy(7,3);
printf("================================================================");
return(0);
}
/*PROGRAM FOR ::ENTRY OF EMPLOYEE
PROGRAM NAME ::ENTRY.C */
entry()
{
struct
{
char empcode[10];
char empname[20];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}BD,A;
struct date JD;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
int rc=0,x;
char c,empcode[10],*ps;
FILE *fp;
clrscr();
gotoxy(17,10);
ps=getpass("PLEASE ENTER THE PASSWARD TO ADD DATABASE");
if(strcmp(ps,"???")==0)
{
fp=fopen("empdata.dat","a+");
getdate(&JD);
if(fp==NULL)
{
printf("can not open the empdata.dat file \n");
}
else
{
while(1)
{
clrscr();
box1();
rc++;
gotoxy(10,2);
printf(" ***EMPLOYEE RECORD ENTRY IN DATA REGISTER***");
gotoxy(50,4);
printf("TODAYS %dth RECORD\n",rc);
gotoxy(9,5);
printf("1.ENTER THE EMPLOYEE CODE :");
scanf("%s",ENTRY.empcode);
fseek(fp,0,0);
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&BD.dd,&BD.mm,&BD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
x=strcmp(ENTRY.empcode,empcode);
if(x==0)
{
gotoxy(9,15);
printf("THIS RECORD ALLREADY EXIT");
break;
}
}
if(x!=0)
{
gotoxy(9,7);
fflush(stdin);
printf("2. ENTER THE EMPLOYEE NAME :");
scanf("%[^\n]s",&ENTRY.empname);
gotoxy(9,9);
fflush(stdin);
printf("3.EMPLOYEE'S FOTHER'S NAME :");
scanf("%[^\n]s",&ENTRY.empfaname);
gotoxy(9,11);
fflush(stdin);
printf("4. ENTER THE PERMANENT ADDRESS :");
scanf("%[^\n]s",&ENTRY.peradd);
gotoxy(9,13);
fflush(stdin);
printf("5. ENTER THE DESIGNITION :");
scanf("%[^\n]s",&ENTRY.desig);
gotoxy(9,14);
printf("Department-Produ,Marke,Maint,Accou,Admin");
gotoxy(9,15);
fflush(stdin);
printf("6. ENTER THE DEPARTMENT :");
scanf("%[^\n]s",&ENTRY.dept);
gotoxy(9,17);
fflush(stdin);
printf("7. ENTER THE SHIFT<DAY OR NIGHT> :");
scanf("%[^\n]s",&ENTRY.shift);
gotoxy(9,19);
printf("8. ENTER THE BASIC PAY :");
scanf("%f",&ENTRY.empbas);
gotoxy(9,21);
printf("9. ENTER THE DATE OF BIRTH :");
gotoxy(40,21);
printf("DAY:");
scanf("%d",&BD.dd);
gotoxy(48,21);
printf("month:");
scanf("%d",&BD.mm);
gotoxy(59,21);
printf("year:");
scanf("%d",&BD.yy);
gotoxy(9,23);
printf("10.DATE OF JOINING:%d:%d:%d\n",JD.da_day,JD.da_mon,JD.da_year);
if(ENTRY.empbas<4000)
{
da=(ENTRY.empbas*1.30);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.10);
}
if(ENTRY.empbas>=4000 && ENTRY.empbas<6000)
{
da=(ENTRY.empbas*1.10);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.15);
}
if(ENTRY.empbas>=6000)
{
da=(ENTRY.empbas*1.00);
hra=(ENTRY.empbas*.10);
cca=(ENTRY.empbas*.03);
ca=(ENTRY.empbas*.02);
ma=(ENTRY.empbas*.02);
pf=(ENTRY.empbas*.20);
}
net_sal=ENTRY.empbas+da+hra+cca+ca+ma-pf;
if(net_sal<4000)
tax=0;
else if (net_sal>=4000 && net_sal<6000)
tax=net_sal*.10;
else
tax=net_sal*.20;
tot_sal=net_sal-tax;
fprintf(fp,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.da_day,JD.da_mon,JD.da_year,BD.dd,BD.mm,BD.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
else
goto d;
d:
fflush(stdin);
gotoxy(15,25);
printf("DO YOU WANT MORE ENTRY<y/n>");
scanf("%c",&c);
if(c=='y'||c=='Y')
continue;
else
break;
}
fclose(fp);
}
}
else
printf("YOU HAVE NOT ENTER CORRECT PASSWARD");
return(0);
}
/* END OF ENTRY.C */
box2()
{
int x;
gotoxy(3,2);
printf("=======================================");
for(x=3;x<13;x++)
{
gotoxy(3,x);
printf("||");
gotoxy(39,x);
printf("||");
}
gotoxy(3,13);
printf("=======================================");
gotoxy(3,4);
printf("=======================================");
return(0);
}
box3()
{
int x;
gotoxy(40,2);
printf("=======================================");
for(x=3;x<13;x++)
{
gotoxy(40,x);
printf("||");
gotoxy(77,x);
printf("||");
}
gotoxy(40,13);
printf("========================================");
gotoxy(41,4);
printf("========================================");
gotoxy(41,11);
printf("========================================");
return(0);
}
/* PROGRAM FOR ::MODIFY DATA FILE
PROGRAM NAME ::MODIFY.C */
modify()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY,TEMP;
struct
{
int dd;
int mm;
int yy;
}A,JD;
int x;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
ft=fopen("temp.dat","w+");
if(ft==NULL)
{
printf("CAN NOT OPEN THE TEMP.DAT FILE\n");
}
clrscr();
gotoxy(11,10);
printf("ENTER THE EMPLOYEE CODE FOR MODIFICATION:- ");
scanf("%s",c);
if(c=='\0')
{
printf("YOU HAVE NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.empcode,c)!=0)
{
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
else
{
ft1=fopen("temp1.dat","w");
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
fclose(ft1);
clrscr();
box2();
gotoxy(4,3);
printf("OLD RECORD OF EMPLOYEE CODE %s\n",ENTRY.empcode);
gotoxy(4,5);
printf("EMPLOYEE NAME :%s\n",ENTRY.empname);
gotoxy(4,6);
printf("BASIC SALARY :%8.2f\n",ENTRY.empbas);
gotoxy(4,7);
printf("DESIGNATION :%s\n",ENTRY.desig);
gotoxy(4,8);
printf("DEPARTAMENT :%s\n",ENTRY.dept);
gotoxy(4,9);
printf("PERMANENT ADDS :%s\n",ENTRY.peradd);
gotoxy(4,10);
printf("SHIFT :%s\n",ENTRY.shift);
fflush(stdin);
box3();
gotoxy(45,3);
printf("OPTION FOR MODIFICATION ");
gotoxy(41,5);
printf("[A] FOR PERMANENT ADDRESS\n");
gotoxy(41,6);
printf("[B] FOR BASIC SALARY\n");
gotoxy(41,7);
printf("[D] FOR DEPARTMENT \n");
gotoxy(41,8);
printf("[G] FOR DESIGNATION\n");
gotoxy(41,9);
printf("[S] FOR SHIFT\n");
gotoxy(41,12);
printf("ENTER THE CODE FOR MODIFICATION:_");
scanf("%c",&ch);
if(ch=='a'||ch=='A')
{
gotoxy(20,17);
printf("PLEASE ENTER NEW ADDRESS ");
scanf("%s",TEMP.peradd);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,TEMP.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='b'||ch=='B')
{
gotoxy(20,17);
printf("PLEASE ENTER NEW BASIC SALARY ");
scanf("%f",&TEMP.empbas);
if(TEMP.empbas<4000)
{
da=(TEMP.empbas*1.30);
hra=(TEMP.empbas*.10);
cca=(TEMP.empbas*.03);
ca=(TEMP.empbas*.02);
ma=(TEMP.empbas*.02);
pf=(TEMP.empbas*.10);
}
if(TEMP.empbas>-4000&&TEMP.empbas<6000)
{
da=(TEMP.empbas*1.10);
hra=(TEMP.empbas*.10);
cca=(TEMP.empbas*.03);
ca=(TEMP.empbas*.02);
ma=(TEMP.empbas*.02);
pf=(TEMP.empbas*.15);
}
if(TEMP.empbas>=6000)
{
da=(TEMP.empbas*1.00);
hra=(TEMP.empbas*.10);
cca=(TEMP.empbas*.03);
ca=(TEMP.empbas*.02);
ma=(TEMP.empbas*.02);
pf=(TEMP.empbas*.20);
}
net_sal=TEMP.empbas+da+hra+cca+ca+ma-pf;
if(net_sal<4000)
tax=0;
else if (net_sal>=4000 && net_sal<6000)
tax=net_sal*.10;
else
tax=net_sal*.20;
tot_sal=net_sal-tax;
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,TEMP.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='g'||ch=='G')
{
gotoxy(20,17);
printf("PLEASE ENTER THE NEW DESTINATION ");
scanf("%s",TEMP.desig);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,TEMP.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='d'||ch=='D')
{
gotoxy(20,17);
printf("PLEASE ENTER THE NEW DEPARTAMENT ");
scanf("%s",TEMP.dept);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,TEMP.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
if(ch=='s'||ch=='S')
{
gotoxy(20,17);
printf("PLEASE ENTER THE NEW SHIFT ");
scanf("%s",TEMP.shift);
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,TEMP.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
}
}
}
fflush(stdin);
ft1=fopen("temp1.dat","r");
if(ft1==NULL)
{
gotoxy(20,22);
printf("THIS RECORD NOT EXIST IN DATA FILE");
}
gotoxy(20,24);
printf("DO YOU WANT MORE MODIFICATION <Y OR N> ");
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
{
fclose(fp);
fclose(ft);
remove("empdata.dat");
rename("temp.dat","empdata.dat");
remove("temp1.dat");
continue;
}
else
{
fclose(fp);
fclose(ft);
remove("empdata.dat");
rename("temp.dat","empdata.dat");
remove("temp1.dat");
break;
}
}
return(0);
}
/* END OF MODIFY.C */
/* PROGRAM FOR ::DELETION OF RECORD
PROGRAM NAME::DELET.C */
delet()
{
struct
{
char empcode[25];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,JD;
struct date BD;int u,x;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
char *ps;
clrscr();
gotoxy(17,10);
ps=getpass("PLEASE ENTER THE PASWORD TO DELETE DATABASE");
if(strcmp(ps,"???")==0)
{
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE \n");
}
ft=fopen("temp.dat","w+");
if(ft==NULL)
{
printf("CAN NOT OPEN THE TEMP .DAT FILE\n");
}
clrscr();
fflush(stdin);
gotoxy(10,15);
printf("ENTER THE EMPLOYEE CODE FOR DELETE RECORD ");
scanf("%s",c);
if(c=='\0')
{
printf("YOU HAVE NOT ENTER ANY EMPLOYEE CODE \n");
clrscr();
continue;
}
else
{
clrscr();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.empcode,c)==0)
{
gotoxy(10,7);
printf("=======================================================");
for(x=8;x<19;x++)
{
gotoxy(10,x);
printf("||");
gotoxy(63,x);
printf("||");
}
gotoxy(10,19);
printf("=======================================================");
gotoxy(10,10);
printf("=======================================================");
gotoxy(15,8);
printf(" EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM");
gotoxy(15,9);
printf(" Service record of empioyee of code no.%s",ENTRY.empcode);
gotoxy(12,11);
printf(" 1.EMPLOYEE'S NAME :%s",ENTRY.empname);
gotoxy(12,12);
printf(" 2.EMPLOYEE'S POST :%s",ENTRY.desig);
gotoxy(12,13);
printf(" 3.EMPLOYEE'S DEPARTMENT :%s",ENTRY.dept);
gotoxy(12,14);
printf(" 4.EMPLOYEE'S DATE OF JOINING:%d %d %d",JD.dd,JD.mm,JD.yy);
gotoxy(12,15);
printf(" 5.EMPLOYEE'S current basic pay :%f",ENTRY.empbas);
gotoxy(12,17);
printf(" 7.EMPLOYEE'S ADDRESS :%s",ENTRY.peradd);
ft1=fopen("temp1.dat","w+");
if(ft1==NULL)
{
printf(" CAN NOT OPEN THE TEMP.DAT FILE\n");
}
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
break;
}
}
fclose(ft1);
ft1=fopen("temp1.dat","r");
if(ft1==NULL)
{
printf("\n\n\n *****EMPLOYEE OF THIS CODE IS NOT FOUND *****\n");
}
else
{
fflush(stdin);
gotoxy(10,23);
printf("ARE YOU SURE TO DELET THIS RECORD <y or n> ");
scanf("%c",&ch);
if(ch=='n'||ch=='N')
{
remove("temp1.dat");
goto ab;
}
else if(ch=='y'||ch=='Y')
{
rewind(fp);
while(!feof(fp))
{
fscanf(fp,"%s%s%s%s%s%s%s%d%d%d%d%d%d%f%f%f%f%f%f%f%f%f%f",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.empcode,c)!=0)
{
fprintf(ft,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,JD.dd,JD.mm,JD.yy,A.dd,A.mm,A.yy,ENTRY.empbas,da,hra,cca,ca,ma,pf,net_sal,tax,tot_sal);
}
remove("temp1.dat");
}
remove("empdata.dat");
rename("temp.dat","empdata.dat");
remove("temp.dat");
}
}
ab: fflush(stdin);
gotoxy(20,25);
printf("DOYOU WANT MORE DELETION <y or n> ");
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
{
fclose(fp);
fclose(ft);
continue;
}
else
{
fclose(fp);
fclose(ft);
break;
}
}
}
remove("temp.dat");
}
return(0);
}
/* END OF DELET.C */
/*PROGRAM FOR ::PROCESS MENU
PROGRAM NAME ::PROCMENU.C */
procmenu()
{
xx: int x,c;
clrscr();
gotoxy(20,2);
printf("=========================================");
for(x=3;x<22;x++)
{
gotoxy(20,x);
printf("||");
gotoxy(59,x);
printf("||");
}
gotoxy(20,22);
printf("=========================================");
gotoxy(20,5);
printf("=========================================");
gotoxy(20,17);
printf("=========================================");
gotoxy(20,19);
printf("=========================================");
gotoxy(23,4);
printf("MENU FOR PROCESSING IN DATA FILE");
gotoxy(24,7);
printf("1. RECREAT DATABASE FILE...");
gotoxy(24,9);
printf("2.ADDITION OF MORE RECORD...");
gotoxy(24,11);
printf("3.DELETION OF RECORDS...");
gotoxy(24,13);
printf("4. MODIFICATION IN RECORD");
gotoxy(24,15);
printf("5. EXIT");
ii:
gotoxy(24,18);
printf("PLEASE CHOICE OPTION BY S.NO.");
gotoxy(24,20);
printf("ENTER THE CHOICE ==>");
scanf("%d",&c);
switch(c)
{
case 1:
{
creat();
goto xx;
}
case 2:
{
entry();
goto xx;
}
case 3:
{
delet();
goto xx;
}
case 4:
{
modify();
goto xx;
}
case 5:
{
break;
}
default:
{
gotoxy(24,23);
printf("Illegle choice try again");
goto ii;
}
}
return(0);
}
/* END OF PROCMENU.C */
box10()
{
int x;
clrscr();
gotoxy(2,1);
printf("=============================================================================");
for(x=2;x<23;x++)
{
gotoxy(2,x);
printf("||");
gotoxy(78,x);
printf("||");
}
gotoxy(2,23);
printf("=============================================================================");
gotoxy(3,4);
printf("===========================================================================");
gotoxy(3,7);
printf("===========================================================================");
for(x=4;x<23;x++)
{
gotoxy(11,x);
printf("||");
gotoxy(35,x);
printf("||");
gotoxy(45,x);
printf("||");
gotoxy(57,x);
printf("||");
gotoxy(65,x);
printf("||");
}
gotoxy(11,4);
printf("||");
gotoxy(35,4);
printf("||");
gotoxy(45,4);
printf("||");
gotoxy(57,4);
printf("||");
gotoxy(65,4);
printf("||");
gotoxy(11,23);
printf("||");
gotoxy(35,23);
printf("||");
gotoxy(45,23);
printf("||");
gotoxy(57,23);
printf("||");
gotoxy(65,23);
printf("||");
gotoxy(4,6);
printf("CODE NO.");
gotoxy(15,6);
printf("EMPLOYEE'S NAME");
gotoxy(38,6);
printf("POST");
gotoxy(47,6);
printf("DEPARTMENT");
gotoxy(59,6);
printf("SHIFT");
gotoxy(68,6);
printf("BASIC PAY");
return(0);
}
/* PROGRAM FOR ::EMPLOYEE DETAILS
PROGRAM NAME ::LIST.C */
list()
{
int x;
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,JD;
float net_sal,basic, tot_sal,da,hra,cca,ca,ma,pf,tax,lbas,mbas;
int a=3,b=8,rc;
char sft[7],dpt[10],name[25],code[10],choice[15],g;
FILE *fp;
while(1)
{
fflush(stdin);
clrscr();
gotoxy(12,8);
printf("EMPLOYEE,S DATA RECORD MANTANCE SYSTEM\n");
gotoxy(12,9);
printf("LIST=>(According to given option)");
gotoxy(12,11);
printf("1.LIST OF ALL DATA RECORD");
gotoxy(12,12);
printf("2.LIST OF DATA RECORD SIFT WISE:-");
gotoxy(12,13);
printf("3.LIST OF DATA RECORD DEPARTMENT WISE:-");
gotoxy(12,14);
printf("4.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE ");
gotoxy(16,18);
printf(" < choise option by serial no.>");
gotoxy(30,16);
g=getch();
fp=fopen("empdata.dat","r");
switch(g)
{
case'1' :
{
a=3,b=8;
clrscr();
box10();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+11,b);
printf("%s",ENTRY.empname);
gotoxy(a+34,b);
printf("%s",ENTRY.desig);
gotoxy(a+45,b);
printf("%s",ENTRY.dept);
gotoxy(a+56,b);
printf("%s",ENTRY.shift);
gotoxy(a+65,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=3;
if(b>22)
{
gotoxy(15,24);
printf("PRESS ANY KEY TO CONTINUE.......");
getch();
clrscr();
b=8,a=3;
}
}
getch();
fclose(fp);
break;
}
case'2':
{
a=3,b=8;
clrscr();
printf("ENTER THE SHIFT OF WHICH RECORDS YOU WANT:-");
scanf("%s",sft);
box10();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(sft,ENTRY.shift)==0)
{
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+11,b);
printf("%s",ENTRY.empname);
gotoxy(a+34,b);
printf("%s",ENTRY.desig);
gotoxy(a+45,b);
printf("%s",ENTRY.dept);
gotoxy(a+56,b);
printf("%s",ENTRY.shift);
gotoxy(a+65,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=3;
if(b>22)
{
b=8,a=3;
gotoxy(15,24);
printf("PRESS ANY KEY TO CONTINUE...");
getch();
clrscr();
}
}
}
getch();
fclose(fp);
break;
}
case'3':
{
a=3,b=8;
clrscr();
printf("ENTER THE DEPARTMENT OF WHICH RECORDS YOU WANT :-");
scanf("%s",dpt);
clrscr();
box10();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(dpt,ENTRY.dept)==0)
{
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+11,b);
printf("%s",ENTRY.empname);
gotoxy(a+34,b);
printf("%s",ENTRY.desig);
gotoxy(a+45,b);
printf("%s",ENTRY.dept);
gotoxy(a+56,b);
printf("%s",ENTRY.shift);
gotoxy(a+65,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=3;
if(b>22)
{
b=8,a=3;
gotoxy(15,24);
printf("PRESS ANY KEY TO CONTINUE...");
getch();
clrscr();
}
}
}
fclose(fp);
getch();
break;
}
case'4':
{
goto dd;
}
}
}
dd:;
return(0);
}
/* END OF LIST.C */
box8()
{
int x;
gotoxy(2,1);
printf("==============================================================================");
for(x=2;x<23;x++)
{
gotoxy(2,x);
printf("||");
gotoxy(78,x);
printf("||");
}
gotoxy(2,23);
printf("============================================================================");
gotoxy(3,4);
printf("===========================================================================");
gotoxy(3,7);
printf("===========================================================================");
for(x=4;x<23;x++)
{
gotoxy(11,x);
printf("||");
gotoxy(35,x);
printf("||");
gotoxy(45,x);
printf("||");
gotoxy(57,x);
printf("||");
gotoxy(65,x);
printf("||");
}
gotoxy(11,4);
printf("||");
gotoxy(35,4);
printf("||");
gotoxy(45,4);
printf("||");
gotoxy(57,4);
printf("||");
gotoxy(65,4);
printf("||");
gotoxy(11,23);
printf("||");
gotoxy(35,23);
printf("||");
gotoxy(45,23);
printf("||");
gotoxy(57,23);
printf("||");
gotoxy(65,23);
printf("||");
gotoxy(4,6);
printf("CODE NO.");
gotoxy(15,6);
printf("EMPLOYEE'S NAME");
gotoxy(38,6);
printf("POST");
gotoxy(47,6);
printf("DEPARTMENT");
gotoxy(59,6);
printf("SHIFT");
gotoxy(68,6);
printf("BASIC PAY");
return(0);
}
/* PROGRAM FOR ::SORTING DATABASE
PROGRAM NAME::SRT.C */
srt()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,JD;
float net_sal,basic,tot_sal,da,hra,cca,ca,ma,pf,tax,lbas,mbas;
int a,b,rc,g,x;
char c,o,sft[7],dpt[10],name[25],code[10],choice[15],aord[12];
FILE *fp,*ft1,*ft2,*ft3;
while(1)
{
fflush(stdin);
clrscr();
gotoxy(12,8);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("SORTED LIST< ACCADING TO GIVEN OPTION >\n");
gotoxy(12,11);
printf("1.SORTED LIST DATA RECORD CODE WISE\n");
gotoxy(12,12);
printf("2.SORTED LIST OF DATA RECORD NAME WISE\n");
gotoxy(12,13);
printf("3.SORTED LIST OF DATA RECORD BASIC PAY WISE\n");
gotoxy(12,14);
printf("4.FOR RETURN MAIN MENU\n");
gotoxy(12,16);
printf("ENTER THE CHOICE\n");
gotoxy(16,18);
printf("<CHOSE OPTION BY SERIAL NO.>\n");
gotoxy(30,16);
scanf("%d",&g);
fp=fopen("empdata.dat","r");
ft3=fopen("data.dat","w");
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
fprintf(ft3,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(fp);
fclose(ft3);
switch(g)
{
case 1:
{
gotoxy(10,22);
fflush(stdin);
printf("PRESS 'A' FOR ASCENDING OR PRESS 'D' FORDECENDING ORDER:");
o=getch();
o=tolower(o);
strcpy(choice,"CODE WISE");
ft1=fopen("sort.dat","w");
ll:
ft2=fopen("temp.dat","w");
ft3=fopen("data.dat","r");
if(ft3==NULL)
{
printf("CAN NOT OPEN THE DATAFILES<EMPDATA.DAT>\n");
getch();
}
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
strcpy(code,ENTRY.empcode);
if(feof(ft3))
{
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
goto nn;
}
while(!feof(ft3))
{
if(o=='a')
{
strcpy(aord,"ASSCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(code,ENTRY.empcode)>0)
{
strcpy(code,ENTRY.empcode);
}
}
if(o=='d')
{
strcpy(aord,"DESCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(code,ENTRY.empcode)<0)
{
strcpy(code,ENTRY.empcode);
}
}
}
rewind(ft3);
while(!feof(ft3))
{
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(code,ENTRY.empcode)==0)
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
else
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(ft3);
fclose(ft2);
remove("data.dat");
rename("temp.dat","data.dat");
goto ll;
nn:
fclose(ft3);
fclose(ft1);
fclose(ft2);
remove("data.data");
remove("temp.dat");
}break; /* Closing second case loop */
case 2:
{
gotoxy(10,22);
fflush(stdin);
printf("PRESS 'A' FOR ASCENDING OR PRESS 'D' FORDECENDING ORDER");
scanf("%c",&o);
o=tolower(o);
strcpy(choice,"NAME WISE");
ft1=fopen("sort.dat","w");
aa:
ft2=fopen("temp.dat","w");
ft3=fopen("data.dat","r");
if(ft3==NULL)
{
printf("CAN NOT OPEN THE DATAFILES<EMPDATA.DAT>\n");
getch();
}
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
strcpy(name,ENTRY.empname);
if(feof(ft3))
{
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
goto bb;
}
while(!feof(ft3))
{
if(o=='a')
{
strcpy(aord,"ASSCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(name,ENTRY.empname)>0)
{
strcpy(name,ENTRY.empname);
}
}
if(o=='d')
{
strcpy(aord,"DECENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(name,ENTRY.empname)<0)
{
strcpy(name,ENTRY.empname);
}
}
}
rewind(ft3);
while(!feof(ft3))
{
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(name,ENTRY.empname)==0)
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
else
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(ft3);
fclose(ft2);
remove("data.dat");
rename("temp.dat","data.dat");
goto aa;
bb:
fclose(ft3);
fclose(ft1);
fclose(ft2);
remove("data.data");
remove("temp.dat");
}break; /* Closing Secod case loop */
case 3:
{
gotoxy(10,22);
fflush(stdin);
printf("PRESS 'A' FOR ASCENDING OR PRESS 'D' FORDECENDING ORDER");
scanf("%c",&o);
strcpy(choice,"BASICPAYWISE");
ft1=fopen("sort.dat","w");
e:
ft2=fopen("temp.dat","w");
ft3=fopen("data.dat","r");
if(ft3==NULL)
{
printf("CAN NOT OPEN THE DATAFILES<EMPDATA.DAT>\n");
getch();
}
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
basic=ENTRY.empbas;
if(feof(ft3))
{
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
getch();
goto f;
}
while(!feof(ft3))
{
if(o=='a')
{
strcpy(aord,"ASSCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(basic>ENTRY.empbas)
{
basic=ENTRY.empbas;
}
}
if(o=='d')
{
strcpy(aord,"DESCENDING");
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(basic<ENTRY.empbas)
{
basic=ENTRY.empbas;
}
}
}
rewind(ft3);
while(!feof(ft3))
{
fscanf(ft3,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(ENTRY.empbas==basic)
fprintf(ft1,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
else
fprintf(ft2,"%s@%s@%s@%s@%s@%s@%s@%d@%d@%d@%d@%d@%d@%f@%f@%f@%f@%f@%f@%f@%f@%f@%f@\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
}
fclose(ft3);
fclose(ft2);
remove("data.dat");
rename("temp.dat","data.dat");
goto e;
f:
fclose(ft3);
fclose(ft1);
fclose(ft2);
remove("data.data");
remove("temp.dat");
}break;/* Closing third case loop */
case 4:
{
goto dd;
}
} /* Closing switch case */
clrscr();
printf("YOUR DATABASE SORTED ACCORDING GIVEN OPTION\n");
printf("Press any key to see record");
ft1=fopen("sort.dat","r");
clrscr();
a=4,b=8;
box8();
gotoxy(15,2);
printf("****EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM****");
gotoxy(18,3);
printf("%s SORTED DATA RECORD IN %s ORDER ",choice,aord);
while(!feof(ft1))
{
fscanf(ft1,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
fflush(stdin);
gotoxy(a+2,b);
printf("%s",ENTRY.empcode);
gotoxy(a+10,b);
printf("%s",ENTRY.empname);
gotoxy(a+33,b);
printf("%s",ENTRY.desig);
gotoxy(a+44,b);
printf("%s",ENTRY.dept);
gotoxy(a+55,b);
printf("%s",ENTRY.shift);
gotoxy(a+64,b);
printf("%7.2f",ENTRY.empbas);
b=b+1,a=4;
if(b>22)
{
getch();
clrscr();
b=8,a=3;
}
}
getch();
fclose(ft1);
}
dd:;
return(0);
}
/* END OF SORT.C */
/* PROGRAM FOR ::AGE FINDING
PROGRAM NAME ::AGE.C */
age(int dd,int mm,int yy)
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g,l;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
A.dd=dd;
A.mm=mm;
A.yy=yy;
{
getdate(&D);
if(D.da_day<A.dd)
{
if(D.da_mon==1||D.da_mon==3||D.da_mon==5||D.da_mon==7||D.da_mon==8
||D.da_mon==10||D.da_mon==12)
{
D.da_day+=31;
D.da_mon-=1;
}
if(D.da_mon==4||D.da_mon==6||D.da_mon==9||D.da_mon==11)
{
D.da_day+=30;
D.da_mon-=1;
}
if(D.da_mon==2 && D.da_year%4 && D.da_year/100!=0||D.da_year%400==0)
{
D.da_day+=29;
D.da_mon-=1;
}
else
{
D.da_day+=28;
D.da_mon-=1;
}
}
if(D.da_mon<A.mm)
{
D.da_mon+=12;
D.da_year-=1;
}
B.dd=D.da_day-A.dd;
B.mm=D.da_mon-A.mm;
B.yy=D.da_year-A.yy;/*-1900;*/
return(B.yy);
}
}
/* END OF AGE */
/* PROGRAM FOR ::SERVICE RECORD
PROGRAM NAME ::SERVICE.C */
service()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g,l,d,m,y;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
clrscr();
fflush(stdin);
gotoxy(12,8);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("YOU CAN SEE SALARY REORD AS GIVEN OPTION\n");
gotoxy(12,11);
printf("1.SERVICE RECORD FOR GIVEN EMPLOYEE");
gotoxy(12,12);
printf("2.SERVICE RECORD OF ALL EMPLOYEES");
gotoxy(12,13);
printf("3.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE ");
gotoxy(16,18);
printf("<CHOSE OPTION BY SERIAL NO.>");
gotoxy(30,16);
scanf("%d",&g);
switch(g)
{
case 1:
{
clrscr();
gotoxy(20,12);
printf("ENTER THE EMPLOYEE CODE FOR SERVICE RECORD ::");
scanf("%s",c);
if(c=='\0')
{
gotoxy(20,15);
printf("YOU HAVE NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(c,ENTRY.empcode)==0)
{
ft1=fopen("temp1.dat","w");
fprintf(ft1,"%s\n",ENTRY.empcode);
fclose(ft1);
clrscr();
gotoxy(9,7);
printf("========================================================");
for(x=8;x<19;x++)
{
gotoxy(9,x);
printf("||");
gotoxy(63,x);
printf("||");
}
gotoxy(9,19);
printf("========================================================");
gotoxy(9,10);
printf("========================================================");
gotoxy(15,8);
printf("EMPLOYE'S DATA RECORD MANTENCE SYSTEM");
gotoxy(12,9);
printf("Service record for employee of code no.%s",ENTRY.empcode);
gotoxy(11,11);
printf("1.EMPLOYEE,S NAME :%s",ENTRY.empname);
gotoxy(11,12);
printf("2.EMPLOYEE,S POST :%s",ENTRY.desig);
gotoxy(11,13);
printf("3.EMPLOYEE,S DEPARTMENT :%s",ENTRY.dept);
gotoxy(11,14);
printf("4.EMPLOYEE,S DATE OF JOINING :%d %d %d",JD.dd,JD.mm,JD.yy);
gotoxy(11,15);
printf("5.EMPLOYEE,S CURRENT TOTAL PAY:%7.2f",tot_sal);
gotoxy(11,16);
d=A.dd;
m=A.mm;
y=A.yy;
B.yy=age(d,m,y);
printf("6.EMPLOYEE,S CURRENT AGE :%d",B.yy);
gotoxy(11,17);
printf("7.EMPLOYEE,S ADDRESS :%s",ENTRY.peradd);
break;
}
}
fopen("temp1.dat","r");
if(feof(ft1))
{
clrscr();
gotoxy(20,15);
printf("THIS RECORD NOT FOUND");
gotoxy(20,20);
printf("PRESS ANY KEY TO CONTINUE");
}
getch();
fclose(ft1);
remove("temp1.dat");
}
break;}
case 2:
{
clrscr();
gotoxy(13,3);
printf("**CURRENT SERVICE RECORD OF ALL EMPLOYEE **\n");
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(1,6);
printf("CODE.NO");
gotoxy(3,l);
printf("%s",ENTRY.empcode);
gotoxy(13,6);
printf("PERMANENT ADDRESS");
gotoxy(12,l);
printf("%s",ENTRY.peradd);
gotoxy(36,6);
printf("POST");
gotoxy(36,l);
printf("%s",ENTRY.desig);
gotoxy(46,6);
printf("JOIN DATE");
gotoxy(46,l);
printf("%d/%d/%d/",JD.dd,JD.mm,JD.yy);/*-1900);*/
gotoxy(59,6);
printf("AGE");
gotoxy(58,l);
d=A.dd;
m=A.mm;
y=A.yy;
B.yy=age(d,m,y);
printf("%d",B.yy);
gotoxy(68,6);
printf("TOTAL_PAY");
gotoxy(67,l);
printf("%8.2f",tot_sal);
l=l+1;
if(l>22)
{
gotoxy(15,24);
printf("press any key to continue");
getch();
clrscr();
l=8;
}
}
getch();
}
break;
case 3:
{
goto aa;
}
}
}
aa :;
return(0);
}
/* END OF SERVICE.C */
/* PROGRAM FOR ::SALARY RECORD
PROGRAM NAME ::SALARY.C */
salary()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g,l;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp,*ft,*ft1;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT\n");
}
clrscr();
fflush(stdin);
gotoxy(12,8);
printf("EMLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("YOU CAN SEE SALARY RECORD AS GIVEN OPTION");
gotoxy(12,11);
printf("1.SALARY RECORD FOR A GIVEN PERSON");
gotoxy(12,12);
printf("2.SALARY RECOED OF ALL EMPLOYEES");
gotoxy(12,13);
printf("3.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE ");
gotoxy(12,18);
printf("< CHOSE OPTIONS BY SERIAL NO. >");
gotoxy(30,16);
scanf("%d",&g);
switch(g)
{
case 1:
{
clrscr();
gotoxy(20,12);
printf("ENTER THE EMPLOYEE CODE FOR SALARY RECORD ::");
scanf("%s",c);
if(c=='\0')
{
gotoxy(20,15);
printf("YOU NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(c,ENTRY.empcode)==0)
{
clrscr();
gotoxy(10,5);
printf("=======================================================");
for(x=6;x<21;x++)
{
gotoxy(10,x);
printf("||");
gotoxy(63,x);
printf("||");
}
gotoxy(10,20);
printf("=====================================================");
gotoxy(10,8);
printf("======================================================");
gotoxy(15,6);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM");
gotoxy(14,7);
printf("Salary record of employee of code no %s" ,ENTRY.empcode);
gotoxy(12,9);
printf("1.EMPLOYEE,S NAME :%s",ENTRY.empname);
gotoxy(12,10);
printf("2.EMPLOYEE'S BASIC PAY :%8.2f",ENTRY.empbas);
gotoxy(12,11);
printf("3.EMPLOYEE HOUSE RENT ALLOUNCE:%8.2f",hra);
gotoxy(12,12);
printf("4.EMPLOYEE DEARNESS ALLOUNCE :%8.2f",da);
gotoxy(12,13);
printf("5.EMPLOYEE,S CITY ALLOUNCE :%8.2f",ca);
gotoxy(12,14);
printf("6.EMPLOYEE,S CCA :%8.2f",cca);
gotoxy(12,15);
printf("7.EMPLOYEE,S MEDICAL ALLOUNCE :%8.2f",ma);
gotoxy(12,16);
printf("8.PROVIDENT FUND DEDUCTION :%8.2f",pf);
gotoxy(12,17);
printf("9.EMPLOYEE,S NET SALARY :%8.2f",net_sal);
gotoxy(12,18);
printf("10.TAX PAID BY EMPLOYEE :%8.2f",tax);
gotoxy(12,19);
printf("11.TOTAL SALARY :%8.2f",tot_sal);
break;
}
else
{
gotoxy(25,20);
printf("THIS RECORD IS NOT EXIT");
printf("\nPress Any Key toreturn salary menu");
}
}
}
getch();
break;}
case 2:
{
ab: clrscr();
gotoxy(13,2);
printf("******CURRENT SALARY RECORD OF ALL EMPLOYEE ******\n");
gotoxy(13,3);
printf("**< TOTAL PAY =(BASIC+DA+HRA+CCA+CA+MA)-(PF+TAX) >**\n");
l=8;
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(2,l);
printf("%s",ENTRY.empcode);
gotoxy(2,6);
printf("CODE");
gotoxy(8,l);
printf("%8.2f",ENTRY.empbas);
gotoxy(9,6);
printf("BASIC");
gotoxy(17,l);
printf("%8.2f",da);
gotoxy(19,6);
printf("D.A.");
gotoxy(26,l);
printf("%6.2f",hra);
gotoxy(27,6);
printf("HRA");
gotoxy(34,l);
printf("%4.0f",cca);
gotoxy(35,6);
printf("CCA");
gotoxy(40,l);
printf("%4.0f",ca);
gotoxy(42,6);
printf("C.A.");
gotoxy(47,l);
printf("%4.0f",ma);
gotoxy(48,6);
printf("M.ALL");
gotoxy(55,l);
printf("%4.0f",pf);
gotoxy(57,6);
printf("P.F.");
gotoxy(64,l);
printf("%5.0f",tax);
gotoxy(65,6);
printf("TAX");
gotoxy(70,l);
printf("%8.2f",tot_sal);
gotoxy(70,6);
printf("TOTAL_PAY");
l=l+1;
if(l>22)
{
gotoxy(40,24);
printf("HRA ,CCA,CA,MAARE APPROXIMATE VALUE");
gotoxy(2,25);
printf("press any key to salary menu");
getch();
l=8;
goto ab;
}
}
gotoxy(40,24);
printf(" hra,cca,ca,ma,are approximate value");
gotoxy(2,25);
printf("PRESS ANY KEY TO SALARY MENU");
getch();
break;
}
case 3:
{
goto aa;
}
}
}
aa:;
fclose(fp);
return(0);
}
/* END OF SALARY.C */
/* PROGRAM FOR ::SUMMARY GRAPHREPORT
PROGRAM NAME ::SL.C */
sl()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int d1=0,d2=0,d3=0,d4=0,d5=0;
int gd=DETECT,gm;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax,s1=0,s2=0,s3=0,s4=0,s5=0;
char ch,c[10];
FILE *fp;
getdate(&D);
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
clrscr();
fflush(stdin);
rewind(fp);
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(ENTRY.dept,"Produ")==0)
{ d1=d1+1;
s1=s1+tot_sal;
}
if(strcmp(ENTRY.dept,"Marke")==0)
{
d2=d2+1;
s2=s2+tot_sal;
}
if(strcmp(ENTRY.dept,"Maint")==0)
{
d3=d3+1;
s3+s3+tot_sal;
}
if(strcmp(ENTRY.dept,"Accou")==0)
{
d4=d4+1;
s4=s4+tot_sal;
}
if(strcmp(ENTRY.dept,"Admin")==0)
{
d5=d5+1;
s5=s5+tot_sal;
}
}
initgraph(&gd,&gm,"c:\\tc\\bgi");
setcolor(RED);
line(5,1,5,430);
line(5,430,639,430);
setfillstyle(2,3);
bar3d(20,(430-(d1*20)),50,430,5,1);
bar3d(120,(430-(d2*20)),150,430,5,1);
bar3d(220,(430-(d3*20)),250,430,5,1);
bar3d(320,(430-(d4*20)),350,430,5,1);
bar3d(420,(430-(d5*20)),450,430,5,1);
bar3d(600,10,630,20,5,1);
setfillstyle(7,5);
bar3d(55,(430-(s1/150)),85,430,5,1);
bar3d(155,(430-(s2/150)),185,430,5,1);
bar3d(255,(430-(s3/150)),285,430,5,1);
bar3d(355,(430-(s4/150)),385,430,5,1);
bar3d(455,(430-(s5/150)),485,430,5,1);
bar3d(550,10,580,20,5,1);
rectangle(545,2,639,170);
settextstyle(SANS_SERIF_FONT,HORIZ_DIR,1);
setcolor(LIGHTRED);
outtextxy(10,450,"Production");
outtextxy(115,450,"Marketing");
outtextxy(216,450,"Maintenence");
outtextxy(340,450,"account");
outtextxy(440,450,"administration");
settextstyle(SMALL_FONT,VERT_DIR,5);
setcolor(LIGHTCYAN);
outtextxy(560,20,"Total salary<--");
outtextxy(610,20,"Total Employee<--");
settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);
outtextxy(160,15,"Bajaj Auto ltd.");
fclose(fp);
getch();
cleardevice();
closegraph();
return(0);
}
/* END OF SL.C */
/* PROGRAM FOR ::PAYSLIP
PROGRAM NAME ::S1.C */
s1()
{
struct
{
char empcode[10];
char empname[25];
char empfaname[25];
char desig[15];
char dept[10];
char peradd[30];
char shift[7];
float empbas;
}ENTRY;
struct
{
int dd;
int mm;
int yy;
}A,B,JD;
struct date D;
int u,x,g;
float net_sal,tot_sal,da,hra,cca,ca,ma,pf,tax;
char ch,c[10];
FILE *fp;
while(1)
{
fp=fopen("empdata.dat","r");
if(fp==NULL)
{
printf("CAN NOT OPEN THE EMPDATA.DAT FILE\n");
}
clrscr();
fflush(stdin);
gotoxy(12,8);
printf("EMPLOYEE'S DATA RECORD MANTENENCE SYSTEM\n");
gotoxy(12,9);
printf("YOU CAN SEE SALARY REORD AS GIVEN OPTION\n");
gotoxy(12,11);
printf("1.PAY SLIP FOR GIVEN EMPLOYEE");
gotoxy(12,12);
printf("2.PAY SLIP OF ALL EMPLOYEES");
gotoxy(12,13);
printf("3.FOR RETURN MAIN MENU");
gotoxy(12,16);
printf("ENTER THE CHOICE:- ");
gotoxy(16,18);
printf("< CHOSE OPTION BY SERIAL NO. >");
gotoxy(30,16);
scanf("%d",&g);
switch(g)
{
case 1:
{
clrscr();
gotoxy(20,12);
printf("ENTER THE EMPLOYEE CODE FOR PAYSLIP ::");
scanf("%s",c);
if(c=='\0')
{
gotoxy(20,15);
printf("YOU HAVE NOT ENTERED ANY EMPLOYEE CODE\n");
clrscr();
continue;
}
else
{
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
if(strcmp(c,ENTRY.empcode)==0)
{
clrscr();
gotoxy(1,1);
printf("=============================================================================");
for(x=2;x<24;x++)
{
gotoxy(1,x);
printf("||");
gotoxy(76,x);
printf("||");
if(x<23&&x>3)
{
gotoxy(38,x);
printf("||");
}
}
gotoxy(1,24);
printf("=============================================================================");
gotoxy(1,5);
printf("===========================================================================");
gotoxy(1,20);
printf("===========================================================================");
gotoxy(1,3);
printf("===========================================================================");
gotoxy(1,22);
printf("===========================================================================");
gotoxy(38,3);
printf("=");
gotoxy(38,22);
printf("=");
gotoxy(38,5);
printf("=");
gotoxy(38,20);
printf("=");
gotoxy(10,4);
printf("EARNING AMOUNT ");
gotoxy(47,4);
printf("DEDUCTING AMOUNT");
gotoxy(3,7);
printf("1.BASIC SALARY AMOUNT ");
gotoxy(3,9);
printf("2.DEARNESS AMOUNT");
gotoxy(3,11);
printf("3.CA AMOUNT ");
gotoxy(3,13);
printf("4.CCA AMOUNT");
gotoxy(3,15);
printf("5.MEDICAL AMOUNT ");
gotoxy(3,17);
printf("6.HOUSE RENT AMOUNT");
gotoxy(3,21);
printf("TOTAL EARNING==");
gotoxy(40,9);
printf("1.PROVIDENT FOUND AMOUNT");
gotoxy(40,14);
printf("2.TOTAL TAX AMOUNT ");
gotoxy(40,21);
printf("TOTAL DEDUCTION==");
gotoxy(3,23);
printf("NET SALARY==(TOTAL EARNING-TOTAL DEDUCTION) IS ");
gotoxy(3,2);
printf("CODE- %s",ENTRY.empcode);
gotoxy(21,2);
printf("NAME- %s",ENTRY.empname);
gotoxy(51,2);
printf("DEPRTMENT- %s",ENTRY.dept);
gotoxy(27,7);
printf("%8.2f",ENTRY.empbas);
gotoxy(27,9);
printf("%8.2f",da);
gotoxy(27,11);
printf("%8.2f",ca);
gotoxy(27,13);
printf("%8.2f",cca);
gotoxy(27,15);
printf("%8.2f",ma);
gotoxy(27,17);
printf("%8.2f",hra);
gotoxy(63,9);
printf("%8.2f",pf);
gotoxy(63,14);
printf("%8.2f",tax);
gotoxy(27,21);
printf("%8.2f",ENTRY.empbas+da+ca+cca+hra+ma);
gotoxy(63,21);
printf("%8.2f",pf+tax);
gotoxy(60,23);
printf("%8.2f",tot_sal);
gotoxy(25,25);
printf("PRES ANY KEY TO RETURN....");
break;
}
else
{
gotoxy(25,25);
printf("THIS RECORD IS NOT EXIT");
printf("\n press any key to return salary menu");
}
}
}
getch();
break;
}
case 2:{
clrscr();
while(!feof(fp))
{
fscanf(fp,"%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%[^@]%*c%d%*c%d%*c%d%*c%d%*c%d%*c%d%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c\n",ENTRY.empcode,ENTRY.empname,ENTRY.empfaname,ENTRY.desig,ENTRY.dept,ENTRY.peradd,ENTRY.shift,&JD.dd,&JD.mm,&JD.yy,&A.dd,&A.mm,&A.yy,&ENTRY.empbas,&da,&hra,&cca,&ca,&ma,&pf,&net_sal,&tax,&tot_sal);
gotoxy(1,1);
printf("============================================================================");
for(x=2;x<24;x++)
{
gotoxy(1,x);
printf("||");
gotoxy(76,x);
printf("||");
if(x<23 && x>3)
{
gotoxy(38,x);
printf("||");
}
}
gotoxy(1,24);
printf("============================================================================");
gotoxy(1,5);
printf("===========================================================================");
gotoxy(1,20);
printf("===========================================================================");
gotoxy(1,3);
printf("===========================================================================");
gotoxy(1,22);
printf("===========================================================================");
gotoxy(38,3);
printf("=");
gotoxy(38,22);
printf("=");
gotoxy(38,5);
printf("=");
gotoxy(38,20);
printf("(=");
gotoxy(10,4);
printf("EARNING AMOUNT ");
gotoxy(47,4);
printf("DEDUCTING AMOUNT");
gotoxy(2,7);
printf("1.BASIC SALARY AMOUNT ");
gotoxy(2,9);
printf("2.DEARNESS AMOUNT");
gotoxy(2,11);
printf("3.CA AMOUNT ");
gotoxy(2,13);
printf("4.CCA AMOUNT");
gotoxy(2,15);
printf("5.MEDICAL AMOUNT ");
gotoxy(2,17);
printf("6.HOUSE RENT AMOUNT");
gotoxy(2,21);
printf("TOTAL EARNING==");
gotoxy(39,9);
printf("1.PROVIDENT FOUND AMOUNT");
gotoxy(39,14);
printf("2.TOTAL TAX AMOUNT ");
gotoxy(40,21);
printf("TOTAL DEDUCTION==");
gotoxy(2,23);
printf("NET SALARY==(TOTAL EARNING-TOTAL DEDUCTION) IS ");
gotoxy(2,2);
printf("CODE- %s",ENTRY.empcode);
gotoxy(21,2);
printf("NAME- %s",ENTRY.empname);
gotoxy(51,2);
printf("DEPRTMENT- %s",ENTRY.dept);
gotoxy(27,7);
printf("%8.2f",ENTRY.empbas);
gotoxy(27,9);
printf("%8.2f",da);
gotoxy(27,11);
printf("%8.2f",ca);
gotoxy(27,13);
printf("%8.2f",cca);
gotoxy(27,15);
printf("%8.2f",ma);
gotoxy(27,17);
printf("%8.2f",hra);
gotoxy(63,9);
printf("%8.2f",pf);
gotoxy(63,14);
printf("%8.2f",tax);
gotoxy(27,21);
printf("%8.2f",ENTRY.empbas+da+ca+cca+hra+ma);
gotoxy(63,21);
printf("%8.2f",pf+tax);
gotoxy(60,23);
printf("%8.2f",tot_sal);
gotoxy(25,25);
printf("PRES ANY KEY TO CONTINUE....");
getch();
}
break;
}
case 3:{
goto aa;
}
}
}
aa:;
fclose(fp);
return(0);
}
/* END OF S1.C */
/* PROGRAM FOR ::REPORT MENU
PROGRAM NAME::REPOMENU.C */
repomenu()
{
int x,c;
ii:
clrscr();
gotoxy(20,2);
printf("=========================================");
for(x=3;x<22;x++)
{
gotoxy(20,x);
printf("||");
gotoxy(59,x);
printf("||");
}
gotoxy(20,22);
printf("=========================================");
gotoxy(20,5);
printf("=========================================");
gotoxy(20,18);
printf("=========================================");
gotoxy(20,20);
printf("=========================================");
gotoxy(23,4);
printf("MENU FOR REPORTS OF EMPLOYEE");
gotoxy(24,7);
printf("1.GENARAL LIST OF EMPLOYEE");
gotoxy(24,9);
printf("2.SORTED LIST OF EMPLOYEE...");
gotoxy(24,11);
printf("3.SERVICE RECORD OF EMPLOYEE...");
gotoxy(24,13);
printf("4.SALARY RECORD OF EMPLOYEE...");
gotoxy(24,15);
printf("5.SUMMARY REPORT...");
gotoxy(24,17);
printf("6.EXIT");
gotoxy(24,19);
printf("PLEASE CHOICE OPTION BY S.NO");
gotoxy(24,21);
printf("ENTER THE CHOICE ==>");
scanf("%d",&c);
switch(c)
{
case 1:{
list();
goto ii;
}
case 2:{
srt();
goto ii;
}
case 3:{
service();
goto ii;
}
case 4:{
salary();
goto ii;
}
case 5:{
sl();
goto ii;
}
case 6:{
break;
}
default:
{
gotoxy(24,23);
printf("illegel choice try agin");
getch();
goto ii;
}
}
return(0);
}
/* END OF REPOMENU.C */
/* PROGRAM FOR ::WELCOME AT SYSTEM
PROGRAM NAME ::W1.C */
wellcome()
{
int r=0,r1,r2,i;
char msg[100],msg1[100],z1;
int gd=DETECT,gm;
struct date d;
struct time t;
getdate(&d);
gettime(&t);
clrscr();
sprintf(msg,"DATE-%d:%d:%d",d.da_day,d.da_mon,d.da_year);
sprintf(msg1,"TIME- %d:%d:%d",t.ti_hour,t.ti_min,t.ti_sec);
initgraph(&gd,&gm,"c:\\tc\\bgi");
setfillstyle(1,getmaxcolor());
setcolor(RED);
bar3d(1,35,590,480,36,1);
setcolor(DARKGRAY);
for(r1=37,r2=11;r1<474&&r2<453;r1++,r2++)
{
line(590,r1,624,r2);
}
for(r1=3,r2=37;r1<584&&r2<624;r1++,r2++)
{
line(r1,35,r2,10);
}
setcolor(BROWN);
for(r=37;r<470;r+=4)
{
outtextxy(4,r," ");
if(r>176)
setcolor(WHITE);
if(r>321)
setcolor(2);
}
setcolor(BLUE);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,7);
outtextxy(100,20,"PROJECT ");
outtextxy(100,23,"PROJECT ");
outtextxy(100,26,"PROJECT ");
outtextxy(100,29,"PROJECT ");
outtextxy(100,32,"PROJECT ");
setcolor(YELLOW);
settextstyle(GOTHIC_FONT,HORIZ_DIR,7);
outtextxy(250,100,"ON");
outtextxy(250,103,"ON");
outtextxy(250,106,"ON");
outtextxy(250,109,"ON");
outtextxy(250,112,"ON");
setcolor(RED);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);
outtextxy(30,180,"PERSONAL");
outtextxy(30,182,"PERSONAL");
outtextxy(30,184,"PERSONAL");
outtextxy(30,186,"PERSONAL");
outtextxy(200,225,"MANAGMENT");
outtextxy(200,227,"MANAGMENT");
outtextxy(200,229,"MANAGMENT");
outtextxy(200,231,"MANAGMENT");
outtextxy(400,271,"SYSTEM");
outtextxy(400,273,"SYSTEM");
outtextxy(400,275,"SYSTEM");
outtextxy(400,277,"SYSTEM");
setcolor(MAGENTA);
settextstyle(SMALL_FONT,HORIZ_DIR,8);
outtextxy(20,330,"SUPERVISED BY...");
outtextxy(30,360,"Mr.Manoj Kumar");
settextstyle(SANS_SERIF_FONT,HORIZ_DIR,2);
outtextxy(230,420,msg);
outtextxy(230,450,msg1);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,1);
outtextxy(350,330,"CODED BY...");
outtextxy(350,360,"MANISH KUMAR SINGH");
getch();
clrscr();
i=0;
setcolor(BLUE);
for(i=0;i<400;i+=1)
{
circle(320,238,i);
if(i>217);
setcolor(RED);
}
r=150;
setcolor(WHITE);
for(i=0;i<40;i++)
{
settextstyle(TRIPLEX_FONT,HORIZ_DIR,7);
outtextxy(80,r,"Bajaj Auto Ltd.");
r+=2;
}
delay(1300);
getch();
closegraph();
return(0);
}
/* END OF W1.C */
/* PROGRAM FOR ::MAIN MENU
PROGRAM NAME ::MAIN.C
PROGRAM CODED BY ::MANISH KUMAR */
main()
{
char ch,z1;
int r;
int gd=DETECT,gm;
wellcome();
clrscr();
u:
initgraph(&gd,&gm,"c:\\tc\\bgi");
setcolor(2);
rectangle(3,3,600,400);
setcolor(3);
rectangle(8,8,595,395);
setcolor(4);
rectangle(13,13,590,391);
setcolor(5);
rectangle(18,18,585,386);
setcolor(6);
rectangle(23,23,579,381);
setcolor(7);
rectangle(28,28,574,376);
setcolor(9);
rectangle(33,33,569,371);
setcolor(3);
rectangle(38,38,564,366);
setcolor(1);
for (r=41;r<358;r+=7)
{
outtextxy(41,r," ");
}
setcolor(2);
rectangle(78,68,524,330);
rectangle(75,65,527,333);
setcolor(7);
for(r=72;r<320;r+=7)
{
outtextxy(81,r," ");
}
setcolor(RED);
rectangle(83,73,519,117);
setcolor(WHITE);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,5);
outtextxy(87,61,"**** MAIN MENU ****\n\n");
outtextxy(87,65,"**** MAIN MENU ****\n\n");
outtextxy(87,69,"**** MAIN MENU ****\n\n");
outtextxy(87,63,"**** MAIN MENU ****\n\n");
settextstyle(GOTHIC_FONT,HORIZ_DIR,4);
setcolor(RED);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,3);
outtextxy(210,120," OPTION ");
setcolor(WHITE);
outtextxy(95,170," [p] for Processing\n");
outtextxy(95,200," [r] for Records\n");
outtextxy(95,230," [s] for Payslip\n");
outtextxy(95,260," [e] for Exit\n\n");
ii : outtextxy(130,282,"please enter your choice [__] ");
fflush(stdin);
gotoxy(57,19);
z1=getch();
z1=tolower(z1);
if(z1=='p'||z1=='r'||z1=='e'||z1=='s')
{
closegraph();
switch(z1)
{
case'p':
procmenu ();
goto u;
case 'r' :
repomenu();
goto u;
case 's':
s1();
goto u;
case 'e' :
wellcome();
break;
default:
{
outtextxy(95,300,"ILLIGAL CHOICE TRY AGAIN !!!");
delay(20);
goto u;
}
}
}
else
goto ii;
return(0);
}
/* END OF MAIN.C */
0 Comments:
Subscribe to:
Post Comments (Atom)