You are on page 1of 31
STORE MANAGEMENT SYSTEM A project submitted in partial fulfilment of the requirements AISSCE- ALL INDIA SENIOR SCHOOL CERTIFICATE EXAMINATION 2023-2024, SCIENCE - 12 B In COMPUTER SCIENCE (083) 1.ASTHA SINGH -XII B ROLL NO. G.G.S.S.S, MB ROAP-1923055 CERTIFICATE Certified that the work contains in the project titled “ STORE MANAGEMENT SYSTEM” ,by ‘ASTHA SINGH’,ZOYA,GAURI,VANDANA’ has been carried out under my Provision and that this work has not need submitted elsewhere for AISSE certificate .. MAYAM SHARVIKA . PGT COMPUTER SCIENCE G.G.G.S.S pushp vihar Acknowledgement We would like to thank sh.roshan Lal, principal G.G.S.S.S MB ROAD pushp vihar ...| am deeply indebted to our mentor sh.Sharvika ma’am . We further thank to all the staff members of our school We owe my sincere gratitude towards G.G.S.S.S ,PUSHP VIHAR sang than our heartfelt thanks to CBSE We also express our deepest gratitude to our parents Finally we would like to wind up by paying our heartfelt thanks to all our near and dear ones ‘ASTHA SINGH’,12™ B ‘ZOYA’,12™ B “VANDANA,12™ B “GAURI’,12™ B UNDERTAKING We declare that the work presented in this project STORE MANAGEMENT SYSTEM submitted to ma’am Sharvika computer science G.G.S.S.S, MB ROAD for the award of the CBSE -AISSE class 12" certificate. We have not plagiarized or submitted the same work for the award of any other examination. In case this undertaking is found incorrect, we accept that our certificate may be unconditionally withdrawn. January 2024 Place: G.G.S.S.S, PUSHP VIHAR ASTHA-XII- B GAURQI XII-B ZOYA XII-B VANDANA Xiil-B SReENAMAYKNHE Content Introduction Flowchart Design Database Structure Source Code Output Requirement Advantages and disadvantages Conclusion Bibliography INTRODUCTION the retail book, shop to maintain records of the books and also search, display, modification, delete etc the books available. ‘This software searches the books data which is store in the record. related to books selling, printing the reports and cost savings. Book distributors transaction handling is one of the complex, process and it required computerized system to maintain overall transactions in an easier manner. Due to heavy demand of books in these competitive worlds, data increase so much. Books shop required up to date information about the customer who purchased books or about the suppliers from where books are purchased. The books shop requires large amount of data to record and to store, which are collected from the Book House. FLOWCHARI DESIGN DATABASE STRUCTUR,. Table: booksinfo Columnname _Datatype/size Constraints [bookID __jint(11)__| Primary Key. ‘title _—ijvarchan30) | [price [im(tt) | a CC) SOURCE CODE File Name: books_menu.py mrstenenceseeeseeeeeeessesenereeeeeeeseesseeseseesesenseeeneees THE MAIN FUNCTION OF PROGRAM neeeeeeenneeeeeeeneeeeeeseseeaseeeeneareaneeseeasneeseeeneeee ees print("*** BOOKS******MANAGEMENT****SYSTEM******PROJECT#*##*eeeeeeeeeeeeee=) prin"*eeeeeeeeeneenesensenesensensensennsenssnesensensennennsennenssensenesense™) ef intro): Print("seeeeeeeeeneeeeenseeeeseneeeHOOKS-MANAGEMENT##¢¢eeeeeeseesenensensneny prinunseeeeeeeenene: Print("PROJECT: print(" MADE BY print(*————————- def mami) teen eneeeees VuGoT-EoMeeneeeeeeeeeseseneeseeeneeeeeeen) Py MAIN MENU: ") Print("01. BOOKS REPORT GENERATOR") print("02. ADMINISTRATOR") pring("03. EXIT™) print(™ cch=int{input("Please Select Your Option (1-3)")) return ch def book_menu): cho “) antromannd ) BOOKS INFO MENU: print("0!. ADD BOOKS INFORMATION") print("02. MODIFY BOOKS INFORMATION™) print("03. DELETE BOOKS INFORMATION") print("O4. BACK TO MAIN") " chint(input( "Please Select Your Option (1-4) ")) return ch mmnneennneeneneeeenesenesseeseneesnnennneeeneseeeesneeneeeeneneee ‘BOOKS ADD MENU——=———————————————=") ‘chint{input("Please Enter Your Choice (1-8)")) return ch medeneeeeeeeeeesenseeneeeseeseseeneenneesenesseeseneseeeesen eens ADMINSTRATOR BOOKS MAIN MENU seteeseensceeseenssensonasonssonsseessoessoessensseescessoessooenen def BOOKS_menu(): cho myclear() intromain() ADMIN MENU: pera print("!.BOOK'S MENU") print("2. BOOKS SALE/PURCHASE™) print("3, BACK TO MAIN MENU") chint(input("Please Enter Your Choice (1-3) ")) return ch mmroccecvecsoesocoseoocesessesensonsoosocsosososoosooosooeoes MODIFY MENU seeeneeeeeneeenneeeeeeeeeesceeeeeseeeseseneaeensneesenenen def modifyBOOKS_menu(): cho print("S. MODIFY PUBLISHER") print("6.MODIFY CATEGORY") rint("7.BACK TO MAIN MENU") ‘chy»int(input("Please Enter Your Choice (1-7) ")) return ch metdeeeeeseeseceeecesecscessesssesscceescseecssecessessesoes, REPORTS MENU seeeneneeeneneeeeeeeesseeeenesseeeeeeseesensenseeesaeenen def SALE_PURCHASEmenu(): ch myclear() santromaine) rint("=—=======—====-SALE print("l.BOOKS SOLD OUT") print("2. BOOKS PURCHASED") rint("3. BACK TO MAIN MENU") ("SELECT MAX(SPID) FROM salepurchase”) (TITLE WPRICE "QUANTITY tPUB-NAME\WISBNtAUTHOR CATEGORY") #—-search and display book by publisher name def showpub(): wy: user="root”, passwd="", database="booksystem”) ‘C=conn.cursor() scidinput("Enter the Book publisher name:") ‘Query=("SELECT * FROM booksinfo WHERE pubname=%s") datan(scid,) ‘C-execute(Query.data) re=C.fetchall() ifre: print("BOOK IDTITLEWPRICE QUANTITY “PUB-NAMEWISBN\WAUTHOR CATEGORY”) for rel im re: rint(ret[(O},"" ret [1], rel [2},"W" re [3], WU" rel [4] re l[S],"e" re 16], rel 7)) anput("——————————--—press the key =") Cecloset) conn.close() return re except: conn.close() #- to generate the autonumbers def givemenot ‘count-0 printimydb) ; mycursor-mydb cursor ‘query=("SELECT COUNT(*) FROM salepurchase”) @>(/SELECT MAX(SPID) FROM salepurchase") ", user=“root”, passwd="", database="booksystem™) netamt~O ‘Query-("INSERT INTO salepurchase VALUES(%s,%6s,"4s,%s,%68,%68,%%8)") invono=intinput( "Enter the invoice no-")) ‘ch>input("Do you want to add more books to sellty’n)") iffch—'n' oF ch—N- Cecloset) try: Prine(mydb) (Comydb.cursor() ‘netamt-O Query=( INSERT INTO salepurchase VALUES(%s,%6s,%s,%s,%8, %8,%08)") invono~int{ input(“Enter the invoice no:~)) dosp=input("Enter the date of Purchase”) while Truc: ‘no=grvemenot) ‘bno=int{input(“Enter the book no") rel -booksearchdata(bno) qt int{imput("Enter the quantity:")) Pr=int(input "Enter the price”)) netamt=pr qt seamorenation mea TURN Ame mane "PURCHASE invono,netamt) jeden amare mydb commit) rini(C.rowcount, “record(s) affected") changegty((bno.qt.A") else: rint(“No such book record please try again”) cheinput("Do you want to add more books (yin)") iftch="n’ oF ch=’N'}. break Coclose() mydb close() except: mydb close() #-——-SEARCH AND PRINT SALE INVOICE def searchinvoice(): aiken cig Rigid ait eal Rea ‘C=conn.cursor() ifve: int oma—na———- INVOICE: *,invo," DATE: “0 {0]13]) anna SAL Baan") FINS. NO emf BOOK NAMEmmeveevenenermneme TOTAL") for re in re: tortot+re!(1] priniicount,” — |---"ne1(0),"warewt fe" zel[ 1) SEARCH AND PRINT PURCHASE INVOICE ifte: Print? NVOICE: * mvo,"——-DATE: “cf 013) re a) Print("S.NO.-—j-———— BOOK NAME-———=-———————- TOTAL") for rel in re: totetot+re! {1} Print(count,” — |-—-",re1[0],"Wwieit fa" re [1] count=count* | gstetot® 12/100 print” Total: “ot) prima” GST : “gst) pina” NETTOTAL: “nettot) f---~-SEARCH AND PRINT PURCHASE INVOICE def searchinvoicePUR(): ty: ‘conn=pymysql.connect{host="localhost”, user="root", passwd="", database="booksystem”) C=conn.cursort) geo count! nettot=O invoini(input("Enter the Invoice No:")) jsalepurchase.date_SP FROM booksinfo.bookid=salepurchase bookid AND. salepurchase status"PURCHASE’ AND salepurchase.invoiceno=%s") data=(invo,) ‘C-execute(Query.data) eC fetchall() ifte: PrN" nnennnnnnennem-INVOICE: " ittV0,"m—mmneneDDATE “oD rint("-——————-—-—-——----PURCH. Prilt("S. NO -m-fomnn-m----- BOOK NAME_—————TorAL—") for rel in re: tottoterel [1 Print(count,” — |-—-",re1[0),"Warle\t fret E)) count=count* | gsttot* 12/100 + Input Press any heyanennennnne Cj Cclose() conn.close() return re except conn.close() #------~-display all invoice SALE or PURCHASE wise dof displayinvoiceS PQ): ty: ‘conn-pymysql.connectthost="localhost”, user="root”, passwd="", database~"booksystem”) (Coconn.cursor() count=1 chevint{input(”Enter the Choice 1- SALE Wise 2- PURCHASE Wise:")) Query-("SELECT booksinfo.title,salepurchase amount salepurchase quantity salepurchase date SP FROM. WHERE booksinfo bookid=salepurchase bookid AND salepurchase.status=*es") iflehe= 1): data=(SALE') else: data-(PURCHASE’) ‘C.execute(Query,data) eC. fetchal() ifte: PRI -mnnnnnneeeemmneee INVOICE LIS Tonnnnevneeemnnnnnneennem") racecar, rint("S.NO.MiTitleW QUANTITY WMAMOUNTWNDATE") for rel in re: Print(count,"Wu",re1[0},"We" re1[2},"We" se { 1}. re [3]) count=count + | IMU anenenneeneneee Pens any heyoneneeneeeeeeneneeenes”) Coclose() ‘conn closet) return re except, conn.close() fHoo-neenlisplay all invoice SALE or PURCHASE by date def displayinvoiceSPdate(): wy: ‘conn=pymysql.connect{host="localhost”, user="root”, passwd="", database~"booksystem”) (Ceconn.cursor() ch~int(input(“Enter the Choice 1- SALE Wise 2- PURCHASE Wise:")) dt-inputt "Enter the datet yyyy-mm-dd)") + Query=("SELECT Cy ‘booksinfo.title salepurchase amount salepurchase quantity salepurchase.datc_SP.salepurchase invoice booksinfo,salepurchase WHERE booksinfo.bookid=salepurchase.bookid AND salepurchase.status=*s and : SP=%s") iffch==1): data(SALE'dt) infor SALE" tse: data=(PURCHASE’ 4) infowPURCHASE™ ‘Cexccute(Query.data) eC. fetchall() ifre: Print(*-—————--—-—--——--- INVOICE LIST ————--————-—-——————") PE" oaannnnnenenene" Mf, ennneenenenennnneen Print("S.NO.\Title't QUANTITY WtAMOUNTMDA’ for rel in re: Print(count."\u",rc1[0}."W" rel [2]."We" re {1],"e" rel [3],"" rel (4) count=count’ | choice! =O input("Enter any key to continue”) OUTPUTS eeeeeeeees BOOKS******MANAGEMENT#***SYSTEM**##**PROJECT##eseeeeeeeeecesees seeeeeeeeneeneesereeereceseeenseneenes: aeeeeeweneenes: MAIN MENU: 1. BOOKS REPORT GENERATOR: 02. ADMINISTRATOR 03. EXIT Please Select Your Option (1-3) If choice === == BOOKS ADD MENU == === = LSEARCH AND PRINT SALE INVOICE 2. SEARCH AND PRINT PURCHASE INVOICE 3.DISPLAY ALL INVOICE(SALE/PURCHASE) 4.SEARCH INVOICE BY DATEOFINVOICE S.BACK TO MAIN MENU Please Enter Your Choice (1-5) If choice: 1 Enter the Invoice No:1452 INVOICE: 1452 ——_______-—DATE: 2020-09-20 SM Pn S.NO.—}-—————BOOK NAME TOTAL —— 1} CplusProgram 1 4500 2 va | sss Total: 16335 GST : 1960.2 NETTOTAL: 18295.2 if choice: 3 Enter the Choice 1- SALE Wise 2- PURCHASE Wise:1 INVOICE LIST- SNO. Title QUANTITY AMOUNT DATE 1 CplusProgram s 2250 2020-05-06 2 java Is 11835 2020-08-06 3 (CplusProgram 10 4500 2020-09-20 4 java Is 1183s 2020-09-20 Ifchoice: 4 Enter the Choice 1- SALE Wise 2- PURCHASE Wise:1 Enter the date(yyyy-mm-dd) 2020-09-20 —————INVOICE LIST. SALE S.NO. Title QUANTITY AMOUNT DATE INVOICENO 1 CplusProgram 10 4500 2020-09-20 1482 2 is 11835, M choice: 2 ADMIN MENU========-=========== L.BOOK'S MENU 2.BOOKS SALE/PURCHASE 3.BACK TO MAIN MENU Please Enter Your Choice (1-3) Ichoice: | Please Select Your Option (1-4) Uf choice: 1 BOOKS ADD MENU ===-======-===== LCREATE BOOKS DETAILS DISPLAY ALL BOOKS DETAILS Please Enter Your Choice (1-8) If choice: 1 Enter Tithe of bookPythonDummics Emer Price of book$80 Enter Publisher nameDummics Enter ISBN number78956896, Enter Author NameN.D Enter Category( Fiction’ Drama/Education Others }Computer I choice: 2 Please Enter Your Choice (1-8) 2 BOOKID TITLE PRICEQUANTITY PUB-NAME ISBN 1451 CplusProgram 450 90 ESAMUEL 148625 1432 java 789 85 bpbpub 44587 1453 PythonDummics S800 = Dummies 78956896 If choice: 3 Enter the Book ID:1452 AUTHOR TSMITH james ND was CATEGORY FICTIONS Programming ‘Computer BOOKID —s TITLE PRICEQUANTITY PUB-NAME ISBN AUTHOR CATEGORY 1452 java 452 88 = bpbpub 445877 james Programming I choice: 2 MODIFY I choice : 2 ENTER Book Nol4S2 mt + BOOKID TITLE PRICEQUANTITY PUB-NAME ISBN AUTHOR CATEGORY Cy 1452 java 454° 88 == bpbpub = 445877 james Programming Pe the hey nen Enter the new Quantity to update:2 1 record(s) affected REQUIREMENTS HARDWARE REQUIRED © Printer, to print the required documents of the project © Processor : intel or any other ¢ Ram : 512 MB or above ¢ Harddisk : 80 GB or more @ SOFTWARE REQUIRED + Operating system : Windows 7 or above + Python 2 or above + IDE Atom, PyCharm, Thonny, or any other. + Database: MySQL + WebServer: XAMPP ADVANTAGES AND DISADVANTAGES Advantages © Customer does not have to wait in long queues. © This software reduces paper work. @ itis casy to handle customer's record. © This software saves the time. © Information of the customer stores permanently. Disadvantages: © This system suitable for only small book shops. © Online facility is not available. A CONCLUSION This software is efficient in maintaining customer’s details and can easily perform operations on customer’s records. This software also reduces the work load of the shop keeper to know the quantity of books available and also keep the records of how many books are purchased and sold. In future, this system can launch web site for easy online book selling. BIBLIOGRAPHY www.mysql.org www.google.co.in www.w3schools.com www.tutorialspoint.com www. javapoint.com Www.programiz.com www.guru99.com

You might also like