31
LIBRARY MANAGEMENT LIBRARY MANAGEMENT GIRISH MAHADEVAN GIRISH MAHADEVAN COMPUTER SCIENCE DEPT COMPUTER SCIENCE DEPT SATHYABAMA DEEMED SATHYABAMA DEEMED UNIVERSITY UNIVERSITY CHENNAI-87 CHENNAI-87

Library Management

Embed Size (px)

DESCRIPTION

final documentation of the project

Citation preview

Page 1: Library Management

LIBRARY MANAGEMENTLIBRARY MANAGEMENT

GIRISH MAHADEVANGIRISH MAHADEVANCOMPUTER SCIENCE DEPTCOMPUTER SCIENCE DEPT

SATHYABAMASATHYABAMA DEEMEDDEEMED

UNIVERSITYUNIVERSITYCHENNAI-87CHENNAI-87

Page 2: Library Management

To Whom It May ConcernTo Whom It May Concern

This is certify that the Project Report entitled LIBRARY

MANAGEMENT, submitted by Mr. GIRISH MAHADEVAN, Registration No.:

2411137, ROLL NO: 24SCS131 to the B.E (COMPUTER SCIENCE

ENGINEERING), SATHYABAMA DEEMED UNIVERSITY, CHENNAI. This is a

bonafide record of original work carried out at National Aluminium Company

Limited (NALCO) Bhubaneswar, Orissa. This Project Work has been developed in

SYSTEMS DEPARTMENT at Corporate Office, NALCO.

MR.S.SAHOO MR.N.C.SAHOO

MANAGER (SYSTEMS)

CHIEF MANAGER (SYSTEMS)

Page 3: Library Management

ACKNOWLEDGE

I deem it a great privilege and opportunity to dedicate the following few

lines to a person who enabled me to complete the project work in an organization

like National Aluminum Company Limited, Corporate Office Bhubaneswar.

I owe the highest depth of gratitude to my revered guide Mr.Sudakar Sahoo,

Manager (Systems), Nalco Corporate Office, Bhubaneswar, for being the source of

inspiration and encouraging me with every kind of help at every stage of

preparation and development of the library management, in spite of varied pre-

occupation.

I am highly indebted to Mr. N.C.Sahoo, chief manager (Systems) for his kind

permission to work on this project.

I express my sincere thanks to all members of System Department and

HRD Center of Excellence for their generous help in various ways for the

completion of this project in time.

Page 4: Library Management

NATIONAL ALUMINIUM COMPANY LIMITEDNATIONAL ALUMINIUM COMPANY LIMITED

CCORPORATEORPORATE O OFFICEFFICE, B, BHUBANESWARHUBANESWAR

(A G(A GOVERNMENTOVERNMENT OFOF I INDIANDIA E ENTERPRISENTERPRISE))

AN OVERVIEW OF NALCOAN OVERVIEW OF NALCO

National Aluminium Company Limited (NALCO) is considered to be a turning

point in the history of Indian Aluminium Industry. In a major leap forward, NALCO

has not only addressed the need for self-sufficiency in Aluminium, but also given

the country a technological edge in producing this strategic metal at par with the

best of world.

The performance of the company is highly sensitive to its Human Resource

Technology; quality and cost are sustained through the collective endeavor of

the people who work for the company. In charting a future, be it long term or

short term, a great deal of confidence is reposed on the willingness and ability of

the people to learn, adopt and adjust to the dynamic environment of the future.

The company has the right kind of people to nature the growth and prosperity of

the organization.

Incorporated in 1981, as a public sector enterprise of the Government of India,

National Aluminium Company Limited (NALCO) is Asia’s largest integrated

Aluminium complex, encompassing bauxite mining, alumina refining, Aluminium

smelting and casting, power generation, rail and port operation.

Commissioned during 1985-87, under extremely difficult logistics of project

management, that to without time or cost overruns, Nalco has emerged to be a

star performer in production and export of alumina and Aluminium, and more

significantly, in propelling self-sustained growth.

Page 5: Library Management

Leveraging the technical collaboration with Aluminium Pechiney of France, ISO

9002 certification of quality management, LME registration of products,

environment care conforming to ISO 14001, low cost operation, international

customer base, Nalco has continued to add is poised to grow further.

Nalco’s original project cost of Rs.2408 crore was partly financed by 980 million

US dollars, extended by a consortium of international banks. By 1998, the

company not only achieved a zero-debt status, but also is going steady with a

self-funded major expansion plan involving an investment of over Rs.3900 crore.

The Main Segments of the Company are: -

Bauxite mine of capacity 2.4 MTPY at Panchapatmali, Orissa.

Aluminium mine of capacity 800,000 TPY at Damanjodi, Orissa.

Aluminium mine of capacity 230,000 TPY at Angul, Orissa.

Power plant of capacity 720 MW at Angul, Orissa.

Port facility of 3735300 TPY aluminium export and 146,000 TPY caustic soda

import at Vishakhapatnum, Andhra Pradesh.

AIMS

Contribute significantly to increase the ALUMINA and Aluminium production

in the country.

Meet the growing demand of the country and of the international market.

Continue to improve the technological and competitive edge.

Emerge over a period of time as a major ALUMINA and ALUMINIUM producer

in the international market with a considerable export capability.

Establish its image as a dynamic business house, providing growth and

establishing its image to the best satisfaction of its valuable and esteemed

customers and employees.

Provide excellent return to the investor for the investment in NALCO.

Page 6: Library Management

Objectives

Provide a steady growth to the business by progress by progressive

expansion and diversification.

Adopt a suitable strategy to achieve a reasonable and adequate

return on the investments.

Maintain international standards of excellence in product quality,

performance and customer satisfaction and emerge as a major

international company.

Maximize foreign exchange earnings.

Achieve operational efficiency full capacity utilization and improved

productivity.

Strengthen managerial and technical competence in the direction of

self –reliance.

Continuously upgrade the quality of human resources.

Develop a harmonious employee and employer relationship

Encourage the availability of quality products at reasonable costs and

to fix a price from time to time to benefit its valuable customers.

Encourage and reward suitable employees of the organization for their

innovative ideas, suggestion, discoveries and inventions.

Prevent environmental pollution and maintain perfect and harmonious

ecological balance in the area in which the company operates.

Achievements

First Mines Safety Award-1988 by DGMS.

Best Eco-friendly Factory Award 1994-95 to the Mines and Refinery

Complex by Orissa State Factory Inspectorate.

State Award-1995 to Captive Power Plant from state Factory

inspectorate for Environment Management

Page 7: Library Management

Indira Priyadarshini Vrikshamitra Award-1994 from MOEF, Govt. of India,

for afforestation and wasteland development

WEC-IIEE-IAEWP Environment award -1997 for contributing towards

environment protection

Gem Granite Environment Award for -1997-98 by FIMI, New Delhi for

Mines.

Shri Sita Ram Rungta Memorial Social Awareness Award-1997-98 by

FIMI, New Delhi.

Pollution Control Excellence Award - 1998 by Orissa State Pollution

Control Board for Mines.

Special Commendation under Golden Peacock Environment

Management Award 1998 Scheme by World Environment Foundation.

State Award for Best Occupational Health Centre to S&P Complex-

1998.

Page 8: Library Management

PEOPLE:

The philosophy of Nalco in the field of human resources and

management has been:

To attract competent personnel with growth potential and develop there skills and

capabilities in a congenial work and social environment through opportunities for

training, recognition career advancement and other incentives.

To develop and nurture favorable attitude among employees and to obtain their

best contribution to the organization by providing stable employment, safe

working conditions, job satisfaction, quick redress of grievances and through good

pay and welfare amenities, commensurate with the company's capacity to spend

and the governments guidelines.

To foster fellowship and sense of belongingness among all sections of employees

through closer association of employees with the management and by

encouraging healthy trade union practices.

Computerization in Nalco:

In the modern world, computer plays very vital role. The importance of

computerization both in the area of commercial application and automation has

been clearly visualized by NALCO.

The System Department has opted for the Centralized planning developed

and coordination at Corporate Office and De-Centralized work on application

processing and maintenance, matching the local needs at all level.

Need for Computerization:

Keep tracks of high volume of data.

Acquire, consolidate, store, retrieve, distribute and use the data in

multiple plants locations.

Page 9: Library Management

For the introduction of modern technology.

Ensuring optimum level of performance.

Controlling costs of production.

Reducing clerical work and avoiding duplication of data.

System department has installed computer at following places:

Corporate office, Bhubaneshwar

Alumina & Refinery, Damanjodi

Smelter Plant, Angul

Captive power Plant, Angul

Chennai, Bangalore, Vizag, Kolkata, Delhi & Mumbai offices.

Areas of Computerization are:

Production MIS

Training & Placement

Attendance Maintenance

Financial Account, Ledgers to Balance Sheet, P&: Statement

Centralized Cash Management, Value Dated Bank Balance

Cost Monitoring

Payables, Cheque Printing, e-payments

Expenditure monitoring, LC,

Bank Guarantee & Bank reconciliation

Sales & Marketing Accounting

Leave Maintenance

Inventory Management including stores and purchase

Payroll & Establishment processing

Maintenance Management

Shares & Debentures

Provident fund & Pension Accounting

Future Plan:

Page 10: Library Management

As the awareness of computer is very high and the users are very much familiar

to the computer environment, NALCO has a big plan for future growth in the area

of computerization. The main features of plan are: Acquisition of advance

machines with more Processors power and efficiency

In house software development as well as getting it from vendors.

Business process re-engineering and ERP.

Mail messaging and Internet use.

Workflow application development.

Plant wide networking and distributed computing.

Computerization Level at Corporate Office NALCO:

Nalco has exiting IT infrastructure at its CORORATE OFFICE in BHUBANESWAR. All

the department of Corporate Office are networked through local area network.

The network has provision for total of 315 nodes at present there are 110 nodes

connected.

The terminal server is connected to 10/100 mbps switch where are other network

nodes that connectred to the 10 base T-hubs using CATS 5UTP cabling. The

cabling system is structured and cerified for 15 years at the core of the network.

There are three 24 port 10/100 Ethernet switches. There are interconnected using

indoor fiber optics cable (4core) with redundant link between two switches.

Corporate system department is connected to its other locations (i.e. CPP,

Refinery, Smetler, and Mines) through a Wide Area Network (WAN) setup. All

these locations are connected through 64Kbps bandwidth leased link line provided

by BSNL. The primary applications using this link are massaging and other RDBMS

applications. All the department of Corporate Office is connected through

INTRANET services. Corporate System Department is also networked with the

zonal offices at NALCO at Mumbai, Chennai, Vizag, Delhi, and stockyards at

Kolkata, Jeypore, Banglore and Vizag.

Page 11: Library Management

In Order to avail the Internet facility and setting up a massaging infra, at BBSR,

certain software and hardware will be installed.

Page 12: Library Management

OBJECTIVE OF THE PROJECTOBJECTIVE OF THE PROJECT

The project is regarding LIBRARY MANAGEMENT that dissolves in it some basic library manipulation functions, which are recursively produces in the source code and presented in a succinct manner.

UPON the completion of the project:

We get a menu with is classified into two further sources of codes which are listed down below: MEMBER AREA

ADD MEMBERSLIST MEMBERSMODIFY MEMBERSDELETE MEMBERS

BOOK AREA

ADD/RETURN BOOKSLIST BOOKSMODIFY BOOKSISSUE BOOKS

All the member information and the book information will be subsequently appended in two different files (usage of the database concept of storing information).

Page 13: Library Management

PROCEDURE ADOPTED PROCEDURE ADOPTED

The LIBRARY MANAGEMENT project was done in C/C++ platform, the concepts that are clustered in the program can be dismantled and can be presented as follows:

Files conceptFiles concept for the purpose of storage and proper incubation of information.

Linked listLinked list for making a dictionary, which comprises of member names to illustrate member availability.

Arrays, structuresArrays, structures for trimming the program and decreasing the lines of codes

All the basic conceptsbasic concepts were revised throughout the program: data-types, Loops, input/output functions and puppetting of strings.

Page 14: Library Management

Source codeSource code

libsys.c

// A menu driven program for library management (linker)

#include<stdio.h>#include<conio.h>#include "lbr.c"#include "lbr1.c"main(){char choice;clrscr();cls();beg:printf("\n\n LIBRARY MANAGEMENT");printf("\n\n 1.MEMBER AREA");printf("\n\n 2.BOOK AREA");printf("\n\n 3.EXIT");printf("\n\n ENTER CHOICE: ");choice=getche();clrscr();switch(choice){case '1':goto main1;case '2':goto main2;case '3': printf("\n THANK YOU");

printf("\n press any key to exit");getch();exit();

default:goto beg;}main1:{FILE *fp,*ft,*fq;char another,choice;

Page 15: Library Management

struct emp{char name[60];int age;int id;char address[100];};struct emp e;char empname[40];long int recize;int a;

fp=fopen("EMP.DOC","rb+");

if(fp==NULL){fp=fopen("EMP.DOC","wb+");

if(fp==NULL){puts("\n Cannot open the file");exit();}}recize=sizeof(e);

while(1){cls();printf("MEMBER AREA");gotorc(2,10);printf("1. ADD MEMBER");gotorc(3,10);printf("2. LIST MEMBERS");gotorc(4,10);printf("3. MODIFY MEMBER");gotorc(4,10);printf("4. DELETE MEMBER");gotorc(5,10);printf("5. EXIT");gotorc(7,10);printf(" ENTER YOUR CHOICE: ");

Page 16: Library Management

fflush(stdin);choice=getche();

switch(choice){case '1':

fseek(fp,0,SEEK_END); another='Y'; while(another=='Y'|| another=='y') { //fq=fopen("MEMBERINFO.TXT","a+"); printf("\n"); printf(" Name: "); gets(e.name); //fputs(e.name,fq); printf("\n Age: "); scanf("%d",e.age); //fprintf(e.age,fq); printf("\n I.D: "); scanf("%d",e.id); //fprintf(e.id,fq); printf("\n Address: "); gets(e.address); //fputs(e.address,fq); printf(""); scanf("%d",a); fwrite(&e,recize,1,fp); //fclose(fq); printf("\n ADD ANOTHER MEMBER: "); fflush(stdin); another=getche(); } break;

case '2': rewind(fp); while(fread(&e,recize,1,fp)==1) printf("\n %s %d",e.name,e.id); puts(e.name); printf("\t\b,"); printf("%d",e.age); printf("\t\b,"); printf("%d",e.id);

Page 17: Library Management

printf("\t\b,"); puts(e.address); break;

case '2': another='Y'; while(another=='Y'|| another=='y') { printf("\n Enter name of the member to modify"); gets(empname); rewind(fp); while(fread(&e,recize,1,fp)==1) { if(strcmp(e.name,empname)==0) { //fq=fopen("MEMBERMOD.TXT","a+"); printf("\n Enter new name: "); gets(e.name); //fputs(empname,fq); //fputs("---modified as--- ",fq); //fputs(e.name,fq); printf("\n Enter new age: "); scanf("%d",e.age); printf("\n Enter new ID: "); scanf("%d",e.id); printf("\n Enter new address: "); gets(e.address); printf(""); scanf("%d",a); goto dot; } }

dot: printf("\n\n Modify another record: "); fflush(stdin); another=getche(); } break;

case '3': another='y'; while(another=='y'|| another=='Y') { printf("\n Enter member name to delete: "); gets(empname);

Page 18: Library Management

ft=fopen("TEMP.DOC","wb"); rewind(fp); { while(fread(&e,recize,1,fp)==1) { if(strcmp(e.name,empname)!=0) fwrite(&e,recize,1,ft); } fclose(fp); fclose(ft);

remove("EMP.DOC"); rename("TEMP.DOC","EMP.DOC"); printf("Member deleted"); } fp=fopen("EMP.DOC","rb+"); printf("\n Delete another member: "); fflush(stdin); another=getche(); } break;

case '4': fclose(fp); goto beg;

}}}main2:{FILE *fp,*ft,fe;char another,choice;struct emp1{char name[40];char category[40];char author[40];int id;int rid;char language[100];};struct emp1 e1;char empname[40];

Page 19: Library Management

long int recize;int a,q,w;

fp=fopen("EMP1.DOC","rb+");

if(fp==NULL){fp=fopen("EMP1.DOC","wb+");

if(fp==NULL){puts("\n Cannot open the file");exit();}}recize=sizeof(e1);

while(1){cls1();printf("BOOK AREA");gotorc1(2,10);printf("1. ADD BOOK");gotorc1(3,10);printf("2. LIST BOOKS");gotorc1(4,10);printf("3. MODIFY BOOK INFO");gotorc1(4,10);printf("4. ISSUE BOOK");gotorc1(5,10);printf("5. EXIT");gotorc1(7,10);printf(" ENTER YOUR CHOICE: ");fflush(stdin);choice=getche();

switch(choice){case '1':

fseek(fp,0,SEEK_END); another='Y'; while(another=='Y'|| another=='y')

Page 20: Library Management

{ //fe=fopen("BOOKINFO.TXT","a+"); printf("\n"); printf(" Book name: "); gets(e1.name); //fputs(e1.name,fe); printf("\n Book i.d: "); scanf("%d",e1.id); //fputs(e1.id,fe); printf("\n Authors name: "); gets(e1.author); //fputs(e1.author,fe); printf(""); scanf("%d",&q); //printf("\n Rack i.d: "); //scanf("%d",&q); //scanf("%d",e1.rid); //scanf("%d",&q); printf("\n Book Category: "); gets(e1.category); //fputs(e1.category,fe); printf(""); scanf("%d",&w); printf("\n Book Language: "); gets(e1.language); //fputs(e1.language,fe); scanf("%d",&q); fwrite(&e1,recize,1,fp); //fclose(fe); printf("\n ADD ANOTHER BOOK: "); fflush(stdin); another=getche(); } break;

case '2': rewind(fp); while(fread(&e,recize,1,fp)==1) printf("\n %s %d",e.name,e.id); puts(e.name); printf("\t\b,"); printf("%d",e.age); printf("\t\b,");

Page 21: Library Management

printf("%d",e.id); printf("\t\b,"); puts(e.address); break;

case '2': another='Y'; while(another=='Y'|| another=='y') { printf("\n Enter name of the book to modify:"); gets(empname); rewind(fp); while(fread(&e1,recize,1,fp)==1) { if(strcmp(e1.name,empname)==0) { //fe=fopen("BOOKMOD.TXT","a+"); printf("\n Enter new book name: "); gets(e1.name); //fputs(empname,fe); //fputs("---modified as---",fe); //fputs(e1.name,fe); printf("\n Enter new rack id: "); scanf("%d",e1.id); /*printf("\n Enter new ID: "); scanf("%d",e.id); printf("\n Enter new address: "); gets(e.address); printf(""); scanf("%d",a);*/ } } printf("\n\n Modify another record: "); fflush(stdin); //fclose(fe); another=getche(); } break;

case '3': another='y'; while(another=='y'|| another=='Y') { printf("\n Enter book name to ISSUE: ");

Page 22: Library Management

gets(empname); ft=fopen("TEMP1.DOC","wb"); rewind(fp); while(fread(&e1,recize,1,fp)==1) { if(strcmp(e1.name,empname)!=0) fwrite(&e1,recize,1,ft); } fclose(fp); fclose(ft);

remove("EMP1.DOC"); rename("TEMP1.DOC","EMP1.DOC");

fp=fopen("EMP1.DOC","rb+"); printf("\n ISSUE another book: "); fflush(stdin); another=getche(); } break;

case '4': fclose(fp); goto beg;

}}}}

goto.c

#include"dos.h"cls(){union REGS i,o;

i.h.ah=6;i.h.al=0;i.h.ch=0;i.h.dh=24;i.h.dl=79;i.h.cl=0;i.h.bh=7;int86(16,&i,&o);}

Page 23: Library Management

gotorc(int r,int c){union REGS i,o;i.h.ah=2;i.h.bh=0;i.h.dh=r;i.h.dl=c;int86(16,&i,&o);}

goto1.c

#include"dos.h"cls1(){union REGS i,o;

i.h.ah=6;i.h.al=0;i.h.ch=0;i.h.dh=24;i.h.dl=79;i.h.cl=0;i.h.bh=7;int86(16,&i,&o);}gotorc1(int r,int c){union REGS i,o;i.h.ah=2;i.h.bh=0;i.h.dh=r;i.h.dl=c;int86(16,&i,&o);}

dict.c

// module for member avail

#include<stdio.h>#include<conio.h>#include<string.h>

Page 24: Library Management

#include<ctype.h>#include<alloc.h>struct clist{char name[20];struct clist *link;};struct clist *a[26];main(){int sflag,l;char country[20],ch;FILE *fp;

clrscr();fp=fopen("DWORD.TXT","r+");printf("loading...");if(fp==NULL){puts("\n Unable to open the file");exit();}while(fgets(country,20,fp)){l=strlen(country);country[l-1]='\0';addtolist(toupper(country[0])-65,country);}while(1){printf("\n Enter the word to search: ");fflush(stdin);gets(country);sflag=search_list(toupper(country[0])-65,country);if(sflag)printf("\n %s is present in the list\n",country);elseprintf("\n Not present\n");printf("\n Any more to search(y/n): ");fflush(stdin);ch=getch();if(tolower(ch)!='y')break;}fclose(fp);return 0;}addtolist(int index,char *str){

Page 25: Library Management

char name[20];struct clist *q,*r,*temp;temp=q=a[index];r=malloc(sizeof(struct clist));strcpy(r->name,str);//if list is emptyif(q==NULL||strcmp(q->name,str)>0){q=r;q->link=temp;a[index]=q;}else{//traverse the listwhile(temp!=NULL){if(strcmp(temp->name,str)<=0 && (strcmp(temp->link->name,str)>0)||(temp->link==NULL)){r->link=temp->link;temp->link=r;return;}temp=temp->link;}r->link=NULL;temp->link=r;}}search_list(int index,char *str){struct clist *p;p=a[index];if(p==NULL)return 0;else{while(p!=NULL){if(strcmp(p->name,str)==0)return 1;elsep=p->link;}getch();return 0;}}

Page 26: Library Management

CONCLUSION CONCLUSION

THE MODULES HAVE BEEN VALIDATED AND COLLECTIVELY MADE TO RUNNING ASTHE MODULES HAVE BEEN VALIDATED AND COLLECTIVELY MADE TO RUNNING AS PER THE REQUIREMENTS STATED EARLIER IN THE OBJECTIVE OF THE PROGRAM.PER THE REQUIREMENTS STATED EARLIER IN THE OBJECTIVE OF THE PROGRAM.

REFERENCES:REFERENCES:

www.codeproject.comwww.daniweb.comwww.orkut.come (communities)www.sourcecode.com Let Us C, Yashwant kanetkar, bpb publications (4th revised edition)Understanding pointers in C, Yashwant kanetkar, bpb publications

Code help and concept based understanding to assemble the source code