Tuesday, June 21, 2011

mini project Department store source code


This mini project is about department store all features required for department store are added in this programe.You can copy the source code and compile it in a code block.This project is perfect for your college mini project in C.


#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
#include<windows.h>

#define ANS 15
#define ACS 4
 COORD coord={0,0}; // this is global variable
                                    //center of axis is set to the top left cornor of the screen
void gotoxy(int x,int y)
{
    coord.X=x;
    coord.Y=y;
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
}
/*declaration of checking functions*/
void c_code(char[]);
int check(char[]);

/*structure declaration*/
typedef struct{
char name[ANS],code[ACS];
float rate;
int quantity;
}rec;
rec item;

/*declaration of display functions*/
void curser(int);
void dbill();
void d_mainmenu();
void display(rec *,int,int);
void window(int,int,int,int);
void dis_con();
void d_search();
void highlight(int,int);

/*declaration of main menu functions*/
void bill() ;
void edit();
void add();
void del();
void exit();

/*declaration of display submenu functions*/
void d_code();
void d_rate();
void d_quan();
void d_all();

/*start of main*/
int main()
{
d_mainmenu();
return 0;
}



void d_mainmenu()
{
int i;
char ch;
const char *menu[]={"   Calculate Bill","   Add Goods","   Edit Goods","   Display All ","   Search", "   Delete Goods","   Exit"};
system("cls");
//textbackground(11);
//textcolor(0);
//_setcursortype(_NOCURSOR);
window(25,50,20,32);
gotoxy(33,18);printf("MAIN MENU");
for (i=0;i<=6;i++){
gotoxy(30,22+i+1);printf("%s\n\n\n",menu[i]);}
curser(7);
}

void d_search()
{
char ch;
int i;
    const char *menu[]={"   By Code","   By Rate","   By Quantity","   Back to main menu"};
system("cls");
//textbackground(11);
//textcolor(0);
window(25,50,20,32);
gotoxy(33,18);printf("SEARCH MENU");
for (i=0;i<=3;i++){
gotoxy(30,22+i+1);printf("%s\n\n\n",menu[i]);}
curser(4);
}

/*function for cursor movement*/
void curser(int no)
{
    int count=1;
    char ch='0';
    gotoxy(30,23);
while(1){
switch(ch){
case 80:
count++;
if (count==no+1) count=1;
break;
case 72:
count--;
if(count==0) count=no;
break;
}
highlight(no,count);
ch=getch();
if(ch=='\r'){
if(no==7){
if (count==1) bill() ;
else if(count==2) add();
else if(count==3) edit();
else if (count==4) d_all();
else if (count==5) d_search();
else if (count==6) del();
else   exit(0);
}
if(no==4){
if (count==1) d_code();
else if (count==2)d_rate();
else if (count==3) d_quan();
else d_mainmenu();
}
}
}
}

void highlight(int no,int count)
{
if (no==4){
//textbackground(11);
//textcolor(0);
gotoxy(30,23);printf("   By Code          ");
gotoxy(30,24);printf("   By Rate          ");
gotoxy(30,25);printf("   By Quantity      ");
gotoxy(30,26);printf("   Back to main menu");
//textcolor(0);
//textbackground(2);
switch (count)
{
case 1:
gotoxy(30,23);
printf(" - By Code          ");
break;
case 2:
gotoxy(30,24);
printf(" - By Rate          ");
break;
case 3:
gotoxy(30,25);
printf(" - By Quantity      ");
break;
case 4:
gotoxy(30,26);
printf(" - Back to main menu");
break;
}
}

if(no==7){
//textbackground(11);
//textcolor(0);
gotoxy (30,23);printf("   Calculate Bill ");
gotoxy (30,24);printf("   Add Goods      ");
gotoxy (30,25);printf("   Edit Goods     ");
gotoxy (30,26);printf("   Display All    ");
gotoxy (30,27);printf("   Search         ");
gotoxy (30,28);printf("   Delete Goods   ");
gotoxy (30,29);printf("   Exit           ");
//textcolor(0);
//textbackground(2);
switch(count){
case 1:
gotoxy (30,23);
printf(" - Calculate Bill ");
break;
case 2:
gotoxy (30,24);
printf(" - Add Goods      ");
break;
case 3:
gotoxy (30,25);
printf(" - Edit Goods     ");
break;
case 4:
gotoxy (30,26);
printf(" - Display All    ");
break;
case 5:
gotoxy (30,27);
printf(" - Search         ");
break;
case 6:
gotoxy (30,28);
printf(" - Delete Goods   ");
break;
case 7:
gotoxy (30,29);
printf(" - Exit           ");
break;
}
}
}

void bill()
{
char x[4]={0};
int j=29,q=0,size=0,i=1;
float total=0,gtotal=0;
FILE *file;
file=fopen("record.txt","r+b");
rewind(file);
system("cls");
dbill();
gotoxy(26,15);printf("enter  \"end\" to finish input");
while(1){
gotoxy(25,18);printf("                    ");
gotoxy(25,19);printf("                    ");
gotoxy(25,18);printf("enter item code:");
scanf("%s",x);
if(strcmp(x,"end")==0)
break;
gotoxy(25,19);printf("enter quantity:");
scanf("%d",&q);
rewind(file);
while(fread(&item,sizeof(item),1,file)){
if((strcmp(item.code,x)==0)){
total=item.rate*q;
gotoxy(11,j);printf("%4d",i);
printf("%9s",item.name);
printf("%13d",q);
printf("%15.2f",item.rate);
printf("%13.2f",total);
gtotal=gtotal+total;
size=sizeof(item);
item.quantity=item.quantity-q;
j+=2; i++;
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
}
 }
}
if(gtotal!=0){
gotoxy(30,j+5);
printf("TOTAL AMOUNT = NRs. %6.2f",gtotal);
}
fclose(file);
getch();
d_mainmenu();
}
 /*function to display bill window*/
void dbill()
{
int i;
gotoxy(20,10);
//;
for (i=1;i<=10;i++)
printf("*");
printf(" * FASHION WEAR * ");
for (i=1;i<=10;i++)
      printf("*");
printf("\n\n");
gotoxy(30,11);printf("Departmental Store");
//textcolor(1);
gotoxy(32,25);printf("CUSTOMER'S BILL") ;
//textcolor(8);
gotoxy(13,27);printf("SN.   Item Name     Quantity     Rate          Total");

}
/*function to add records*/
void add ()
{
FILE *file;
char y[ACS],x[12];
system("cls");
//textbackground(11);
//textcolor(0);
gotoxy(25,25);printf("Enter new record(Y/N)?");
while(toupper(getche())=='Y'){
system("cls");
file=fopen("record.txt","ab");
c_code(y);
strcpy(item.code,y);
gotoxy(22,28);printf("Enter rate of the item:");
scanf("%f",&item.rate);
gotoxy(22,30);printf("Enter quantity of the item:");
scanf("%d",&item.quantity);
gotoxy(22,32);printf("Enter name of the item:");
scanf("%s",item.name);
fseek(file,0,SEEK_END);fwrite(&item,sizeof(item),1,file);
fclose(file);
gotoxy(22,34);printf("Enter new record(Y/N)?");

   }
   d_mainmenu();
}

 /*function to check availability of code*/
void c_code(char y[])
{
int flag;
FILE *file;
file=fopen("record.txt","rb");
while(1){
system("cls");
window(20,58,23,36);
gotoxy(32,18);printf(" ADD ARTICLES ")  ;
flag=1;
rewind(file);
gotoxy(22,25);printf("Enter new code of the article:");
scanf(" %[^\n]",y);
while(fread(&item,sizeof(item),1,file)==1){
if (strcmp(y,item.code)==0){
flag=0;
gotoxy(26,30);printf("code already exists");
gotoxy(29,32);printf("enter again");getch();
break;
}
}
if (flag==1)
break;
}
}

/*function for editing*/
void edit()
{
int flag=0,choice;
char x[ACS],y[ACS];
FILE *file;
int size;
system("cls");
//textcolor(0);
//textbackground(11);
window(20,63,20,46);
gotoxy(35,18);printf("EDIT RECORDS");
;
gotoxy(25,23);printf("enter item code: ");
scanf("%s",x);
flag=check(x);
if(flag==0){
file=fopen("record.txt","r+b");
rewind(file);
while (fread(&item,sizeof (item),1,file)){
if(strcmp(item.code,x)==0){
//textcolor(0);
gotoxy(25,27);printf("name       = %s",item.name);
gotoxy(25,28);printf("code       = %s",item.code);
gotoxy(25,29);printf("rate       = %g",item.rate);
gotoxy(25,30);printf("quantity   = %d",item.quantity);
gotoxy(25,32);; printf("do you want to edit this record(y/n):");
fflush(file);
if(toupper(getche())=='Y'){
//textcolor(0);
gotoxy(25,34); printf("1- edit name ");
gotoxy(25,35); printf("2- edit code ");
gotoxy(25,36); printf("3- edit rate ");
gotoxy(25,37); printf("4- edit quantity ");
gotoxy(25,39);  ; printf(" enter your choice(1, 2, 3, 4) ");
scanf("%d",&choice);
switch(choice){
case 1:
system("cls");
window(23,48,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24); printf(" enter new name: ");
scanf("%s",item.name);
size=sizeof(item);
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
case 2:
system("cls");
window(23,65,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24);
c_code(y);
strcpy(item.code,y);
size=sizeof(item);
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
case 3:
system("cls");
window(23,65,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24);
printf(" enter new rate: ");
scanf("%f",&item.rate);
size=sizeof(item);
fseek(file,-size,SEEK_CUR);fwrite(&item,sizeof(item),1,file);
break;
case 4:
system("cls");
window(23,65,20,40);
gotoxy(35,18);printf("EDIT RECORDS");
gotoxy(25,24);
printf(" enter new quantity: ");
scanf("%d",&item.quantity);
size=sizeof(item);
fseek(file,-size,1);fwrite(&item,sizeof(item),1,file);
break;
}
gotoxy(27,30);printf("--- item edited---");
break;
}
}
}
}
if (flag==1){
gotoxy(32,30);printf("item does not exist");
gotoxy(36,32);printf("TRY ABGAIN");
}
getch();
fclose(file);
d_mainmenu();
}

/*function to display all records*/
void d_all()
{
int i,j=1;
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
fflush(file);
while(fread(&item,sizeof(item),1,file)){
display(&item,i,j);
i++;
j++;
if ((j%20)==0){
      gotoxy(27,47);/*textcolor(0)*/;printf("press any key to see more...........");
      getch();
      system("cls");
      dis_con();
      i=26;
      continue;
}
}
getch();
if (i==26) {
gotoxy(24,30); printf("-- no articles found --");
}
getch();
fclose(file);
d_mainmenu();
}

/*function to display by quantity*/
void d_quan()
{
int i,j=1;
int a,b;
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
gotoxy(16,20);;printf("enter lower range: ");
scanf("%d",&a);
gotoxy(16,21);printf("enter upper range:");
scanf("%d",&b);
fflush(file);
while(fread(&item,sizeof(item),1,file)){
if((item.quantity>=a)&&(item.quantity<=b)){
display(&item,i,j);
i++;
j++;
if ((j%20)==0){
gotoxy(27,47);printf("press any key to see more...........");
getch();
system("cls");
dis_con();
i=26;
continue;
}
  }
}
getch();
if (i==26){
gotoxy(28,30); printf(" no item found ");
}
getch();
d_search();
fclose(file);
}

/*function to display by rate*/
void d_rate(){
int i,j=1;
float a,b;
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
gotoxy(16,20);;printf("enter lower range: ");
scanf("%f",&a);
gotoxy(16,21);printf("enter upper range: ");
scanf("%f",&b);
fflush(file);
while(fread(&item,sizeof(item),1,file)){
if((item.rate>=a)&&(item.rate<=b)){
display(&item,i,j);
i++;
j++;
if ((j%20)==0){
gotoxy(27,47);printf("press any key to see more...........");
getch();
system("cls");
dis_con();
i=26;
continue;
}
}
}
getch();
if (i==26){
gotoxy(28,30); printf(" no item found ");
}
getch();
fclose(file);
d_search();
}

/*function to display by code*/
void d_code()
{
int i,j=1;
char x[4]={0};
FILE *file;
dis_con();
file=fopen("record.txt","rb");
rewind(file);
i=26;
gotoxy(16,20);;printf("enter item code: ");
scanf("%s",x);
fflush(file);
while(fread(&item,sizeof(item),1,file)){
if((strcmp(item.code,x)==0)){
display(&item,i,j);
i++;
j++;
break;
}
}
if (i==26){
gotoxy(28,30); printf("no item found");
}
getch();
fclose(file);
d_search();
}

/*function to display window for item display*/
void dis_con()
{
int i;
system("cls");
gotoxy(20,10);
;
for (i=1;i<=10;i++)
printf("*");
printf(" * FASHION WEAR * ");
for (i=1;i<=10;i++)
      printf("*");
printf("\n\n");
gotoxy(30,11);printf("Departmental Store");
//textcolor(1);
gotoxy(32,17);printf("RECORDS") ;
//textcolor(8);
gotoxy(18,23);printf ("SN   Item Name   Item Code      Rate     Quantity");
}

/*function to display in screen*/
void display(rec *item,int i,int j)
{
gotoxy(16,i);//textcolor(13);
printf("%4d",j);
printf("%9s",item->name);
printf("%12s",item->code);
printf("%14.2f",item->rate);
printf("%11d",item->quantity);
}

/*function to delete records*/
void del()
{
int flag;
char x[ANS];
FILE *file,*file1;
system("cls");
//textbackground(11);
//textcolor(0);
window(23,51,25,34);
gotoxy(29,18);printf("DELETE ARTICLES");
gotoxy(27,27);printf("enter item code: ");
scanf("%s",x);
flag=check(x);
if(flag==0){
file1=fopen("record1.txt","ab");
file=fopen("record.txt","rb");
rewind(file);
while (fread(&item,sizeof (item),1,file)){
if(strcmp(item.code,x)!=0)
fwrite(&item,sizeof(item),1,file1);
}
gotoxy(27,29);printf("---item deleted---");
remove("record.txt");
rename("record1.txt","record.txt");
}
if (flag==1){
gotoxy(25,29);printf("---item does not exist---");
gotoxy(30,31);printf("TRY AGAIN");
}
fclose(file1);
fclose(file);
getch();
d_mainmenu();
}

/*function to check validity of code while editing and deleting*/
int check(char x[ANS])
{
FILE *file;
int flag=1;
file=fopen("record.txt","rb");
rewind(file);
while (fread(&item,sizeof (item),1,file)){
if(strcmp(item.code,x)==0){
flag=0;
break;
}
}
fclose(file);
return flag;
 }

/*function to display box*/
void window(int a,int b,int c,int d)
{
int i;
system("cls");
gotoxy(20,10);
//textcolor(1);
for (i=1;i<=10;i++)
printf("*");
printf(" * FASHION WEAR * ");
for (i=1;i<=10;i++)
      printf("*");
printf("\n\n");
gotoxy(30,11);printf("Departmental Store");
//textcolor(4);
for (i=a;i<=b;i++){
      gotoxy(i,17);printf("\xcd");
      gotoxy(i,19);printf("\xcd");
      gotoxy(i,c);printf("\xcd");
      gotoxy(i,d);printf("\xcd");
      }

gotoxy(a,17);printf("\xc9");
gotoxy(a,18);printf("\xba");
gotoxy(a,19);printf("\xc8");
gotoxy(b,17);printf("\xbb");
gotoxy(b,18);printf("\xba");
gotoxy(b,19);printf("\xbc");
//textcolor(4);
for(i=c;i<=d;i++){
gotoxy(a,i);printf("\xba");
gotoxy(b,i);printf("\xba");
}
gotoxy(a,c);printf("\xc9");
gotoxy(a,d);printf("\xc8");
gotoxy(b,c);printf("\xbb");
gotoxy(b,d);printf("\xbc");
//textbackground(11);
//textcolor(0);
}

23 comments:

  1. Cn u tell its modules

    ReplyDelete
  2. i want to download and execute this program, please send me full project with form designs and source code
    to my e-Id gloragabriel@gmail.com.

    ReplyDelete
  3. hello sir, can u send full source code of store management software to my email savitkumarkashyap@gmail.com.

    ReplyDelete
  4. can u pls snd me the full source code of this program and all ur c projects its urgent
    vaniaveasna@yahoo.com

    ReplyDelete
  5. hej.. I want to do this project at my own, can you please send me design modules to me because i am using osx and many of header files are not supported..
    my id is farooqabb@gmail.com

    ReplyDelete
  6. May i know how you use the conio.h in codeblocks

    ReplyDelete
    Replies
    1. I mean you used the Textcolor function in codeblocks.. But, I cannot

      Delete
  7. Plz send dis code sir shahmanthan1209@gmail.com

    ReplyDelete
  8. Plz send dis code sir shahmanthan1209@gmail.com

    ReplyDelete
  9. Hi sir I need dis source code to run in fedora so plz send me source code

    ReplyDelete
  10. Can u please send me this source code ,I m using turbo c and it's not running.
    Dr.abhinavsrivastava@gmail.com

    ReplyDelete
  11. Such an advanced code...it works well.....I get most of it, but I got to study it as well hehehehe

    ReplyDelete
  12. Such an advanced code...it works well.....I get most of it, but I got to study it as well hehehehe

    ReplyDelete
  13. can u please send me the code at dasgupta.sanhita04@gmail.com

    ReplyDelete
  14. actually this coed 100s of errors...?!?!

    ReplyDelete
  15. SCW, can you send me full source code of Departmen Store Management Project to my email ydaljir@gmail.com.

    ReplyDelete
  16. sir send me this code at luqmanakram123@gmail.com

    ReplyDelete
  17. Can you send me full source code?? shazidhasanriam@gmail.com

    ReplyDelete
  18. This comment has been removed by the author.

    ReplyDelete
  19. can you send me full source code to pvaldy@yahoo.com
    please, thank you

    ReplyDelete