You are on page 1of 93

A

PROJECT REPORT
ON
FAST-FOOD MANAGEMENT SYSTEM

Submitted In Partial Fulfillment of the Requirement


Of Bachelor of Business Administration
BATCH-(2010-2013)

PROJECT SUPERVISOR:

SUBMITTED BY:

MISS.NEHA SABHARWAL

MOHD SHOUAIB
E.No 16312401710

(Delhi Institute Of Rural Development, Nangli Poona)

(Affiliated to Guru Gobind Singh Indraprastha University)

DECLARATION

hereby

declare

that

this

Project

Report

titled

FAST-FOOD

MANAGEMENT SYSTEM submitted by me to Delhi Institute Of Rural


Development, NANGLI POONA is a Bonafide work undertaken by me and has not
been submitted to any other University or Institution for the award of any degree
diploma / certificate or published any time before.

_______________________
MOHD SHOUAIB
16312401710
Date: / / 2012

_______________________
MISS.NEHA SABHARWAL
Project Guide
Date: / / 2012

Signature of the Student

ACKNOWLEDGEMENT

First of all I will thank to our director sir Dr. NARENDER MOHAN, who give
me the valuable suggestion for my minor project.
The success of this final report is the outcome of Guidance and Valuable
suggestions provided by the all concerned without which the report could not fide
on the right back.

I express my sense of deep gratitude to Faculty Coordinator MISS.NEHA


SABHARWAL for inclusions and timely suggestions in the preparation of this
final report.

Finally ,I will be failing in my duty, if I do not thank my parents, brother, friends


and well wishers for their enthusiastic support and who have directly or indirectly
helped in some way or the other in making this final report a success.

Name: MOHD SHOAIB


BBA (g)
16312401710

CONTENTS
S.No

CONTENTS

Declaration

2
3

Acknowledgement
Introduction
Requirement analysis
Problem Definition
Scope and Objectives of the project
System Methodology (Waterfall Model)

Analysis

Feasibility study
Data flow diagrams (DFDs)
0 Level DFD
1 Level DFD
2 Level DFD
System Design
Hardware and Software Requirements
Menu Design
Database Design
Coding
Input Output Screens

Testing

Conclusion

10
11

Limitations
Bibliography

OBJECTIVE
Objective of this software is to computerize any Fast-food Restaurant, so
that all the transactions become fast and there should not be any error in
transactions like calculation mistake. It replaces all the paper work. It
keeps records of all the bills also, given to the customers, so that user
could update his daily accounts.

INTRODUCTION
This project is entitled PIZZA HUT which is very famous spot for people of
all age group. Due to increasing popularity of Pizza Hut, it needs to get all the
work and procedures automated which eventually decreases the burden along with
whole lot of improvement in working manner. Hence, in order to accomplish this
task, the software is prepared to perform bulk amount data and sorting procedures.
As the time taken in dealing with the problem is quite large, so, we need to prepare
software to solve these problems.

The software for department of pizza hut is developed in Visual Basic because
of the fact that it is one of the leading programming language as well as more
powerful, easy to understand and user-friendly. Visual Basics helps to design
database files as per requirement and specific format. It also helps us to enter and
manage data in database files.

Thus, we use VB and ACCESS to prepare our software. In this, a perfect


report is being prepared for those who have to pay bills, for collection of orders for
various items, to keep track of customers arrival & departure along with their
orders and to employees been working in-house. Collectively, we need to maintain
the records of sales per day.

As we know maintaining records is quite tedious work and has to be made


and updated regularly. So to ensure the accuracy, feasibility, time consumption and
maintenance. We need to prepare the project with utmost care & dedication. To
start up with the project, one should know about the exact technique which is based
on certain steps:-

1.
2.
3.
4.
5.

Requirement Analysis & Specifications


Designing
Implementation & Unit Testing
Integration & System Testing
Maintenance & Operation

Visual Basic
Visual Basic was derived from BASIC, and is an event-driven programming
language. Programming in Visual Basic is done visually, which means that as we
design, we will know how our application will look on execution. We can therefore
change and experiment with the design to meet our requirement.
These editions of Visual Basic are available:
Standard
Professional
Enterprise

Features of Visual Basic


Visual Basic 6.0 has many powerful features that are required in todays
programming environment, which include features from the previous versions.
Some of them are:
Programming objects and events: the Visual forms and objects like list
boxes and radio buttons that we use on the forms, help us to interact with
applications in order to find out the flow of the program. The forms and
objects perform a specified action when an event occurs. This is known as
event-driven programming.
A common programming platform across all Microsoft Office
applications: Almost all Microsoft Office applications support Visual Basic
by sharing and reusing code across applications.
32-bit support: Visual Basic support 32-bit application.
A quick and easy way to develop applications: The tools provided by Visual
Basic help us to reduce development time. It is faster to create applications
using the tools available.
Objects types: New object types enable us to work faster and easier with
files and directories.

ActiveX features: Visual Basic allows us to migrate applications to an


ActiveX document, which enables the application to install and run from a
web browser.

Visual Basic Development Environment


It consists of the following items:
Menu bar: The menu bar is displayed directly below the title bar and
includes a list of options. Each option has a drop-down list that is related to
the option chosen from the menu bar.
Form: A form is the main building block in a Visual Basic application. User
interacts with the controls on the home to obtain the desired result. In the
design mode, we can see a grid of dots on the form. The grid helps to line up
the controls at the time of design. The dots disappear at runtime PROJECT
WINDOW. The project window lists forms and modules in the current
project. A project is a list files used to build an application.
Tool box: The tool box is a window that provides us with asset of tools that
are used to design time to place controls on the form. The buttons on the
toolbar depict controls.
Properties windows: The properties widows list the property settings for the
form are the control that we select. A property is a characteristic of an object,
such as size, pattern, or color.

The properties window will display the property of only one object at a time.
MS ACCESS
Microsoft access calls anything that can have a name and object. Within an access
database, the main objects are tables, queries, forms, reports, data access pages,
macros, modules.

DATABASE
A database is files in which you store data include all the major objects related to
the stored data; including objects you define to automate the use of your data. In
other database systems, the term database used to refer to only those files in which
you store data.

TABLE
An object you define and use to store data. Each table contains information about a
particular subject, such as customers or orders. Table contains fields (or columns)
that store different kinds of data, such as a name or an address, and, record (or
rows) that collect all the information about a particular instance of the subject.
E.g. All the information about a company

QUERY
Query in an object that provides a custom view of data from one or more table. In
Access, you can use the graphical query by example (QBE) facility or you can
write SQL statements to create your queries. You can define queries to select,
update, insert, or delete data. You can also define queries that create new tables
from data in one or more existing table.

FORM
An object designed primarily for data input or display or for control of application
execution. You use forms to customize the presentation of data that your
application extracts for queries or tables. You can also print forms. You can design
a form to run a macro or a Visual Basic procedure in response to any of a number
of events- for eg, to run a procedure when the of data changes.

REPORT
An object designed for formatting, calculating, printing and summarizing selected
data. You can view a report on your screen before you print it.

DATA ACCESS PAGE


An object that includes an HTML file and supporting files to provide custom
access to your data from Microsoft Internet Explorer. You can publish these files
on your company internet to allow other users on your network who also have
office 2000 and internet explorer version 5 or later to view, search, and edit your
data.

MACRO
Macro is an object that is a structured definition of one or more action that you
want Access to perform in response to a defined event. For eg, you might design a
macro that opens a second form in response to the selection of an item on a main
form. You might have another macro that validate the content of a field whenever
the value in the field changes. You can include simple conditions in macros to
specify when one or more actions in the macro should be performed or skipped.
You can use macros to open and execute queries, to open tables, or to print or view
reports. You can also run other macros or Visual Basic procedures from within a
macro.

MODULE
it is an object containing custom procedures that you code using Visual Basic.
Modules provide a discrete flow of actions and allow you to trap errors something
that you cant do with macros. Modules can be stand-alone objects containing
functions that can be called from anywhere in your application, or they can be
directly associated with a form or a report to respond to events on the associated
form or report. Table stores the data that you can extract with queries and display
in reports and update in forms or data access pages. Notice that forms, reports, and
data access pages can use data either directly from tables or a filtered view of the

data created by using queries. Access has also built-in functions that allow you to
summarize and format your data in queries.

EVENT
Event is any change in state of an Access object.
For eg, you can write macros or Visual Basic procedures to respond to

Opening a form
Closing a form
Entering a new row on a form
Changing data in the current record

CONTROL
Control is an object on a form or report that contains data. You can even use design
a macro or a Visual Basic procedure that responds to the user pressing individual
keys on the keyboard when entering data.

METHODOLOGY
The methodology used to develop the Pizza Hut or proposed system is waterfall
model.
WATERFALL MODEL
Its also known as Linear Sequential model or the classic life cycle model. This
model suggests a systematic, sequential approach to the software development that
begins at the system level and progresses through analysis, design, development
and coding, testing and maintenance.
The model acquires its name from the fact the classic software cycle is represented
as a sequencing of descending steps like Waterfall.
Feasibility
study
Requiremen
t Definition
Design
specification

Coding

Testing

Implementati
on
Maintenance

SALIENT FEATURES OF THE WATERFALL MODEL


It bought a definite to the process of the software development, which was a
major improvement over the previous code and fix culture.
Each phase is district and is mandatory for every project irrespective of
project size.
Every phase has a welldefined entry and exit criterion.
Every phase has a provision for verification, validation and correction of
errors and inconsistencies.

STRENGHTS OF WATERFALL MODEL


The waterfall model redeems the software development process of the code and
fixes problems. Its major strength lies in the fact that it emphasizes the fact that the
software development process must be planned, disciplined, and well managed.
It also ensures through segregation that implementation of a product
happens only after all its development requirements have been met with. Strength
of waterfall model is that it allows for communication between customer and
developer and specifies what will be delivered, when and at what cost.

REQUIREMENT ANALYSIS

Requirements analysis in systems engineering and software engineering,


encompasses those tasks that go into determining the needs or conditions to meet
for a new or altered product, taking account of the possibly conflicting
requirements of the various stakeholders, such as beneficiaries or users.
Systematic requirements analysis is also known as requirements engineering.
Requirements must be actionable, measurable, testable, related to identified
business needs or opportunities, and defined to a level of detail sufficient for
system design.
There are three types of requirements: 1) Unknown requirement: - This is such kind of a requirement which is
forgotten by user because they are not needed right now or by some other
user who accesses it.
2) Known user: - It is something which user believes to be implemented as it
is must for the existing system.
3) Undreamt requirement: - Users may not be able to think of new
requirements due to limited domain knowledge.

PROBLEMS OCCURING IN THE MANUAL DATABASE OF


PIZZA HUT

Manual system suffers many problems. Users found themselves in the


perplexed state while searching any detail.
The following limitations are encountered are:
It becomes very difficult to maintain records related to stock.
Keeping track of all the customers arriving and employees being working
becomes really difficult.
Lot of time is wasted while surfing a particular record.
Adding or removing the record of particular employee becomes tedious.
It does not ensures security and accuracy to great extent.

SYSTEM REQUIREMENTS

Hardware Requirement

Pentium Processor or above


Color Monitor
Keyboard
8 GB Hard Disk or above
32 MB RAM or above
1.44 MB Floppy Disk Drive

Software Requirement

Microsoft Windows 9x.


Microsoft Visual Basic 6.0.

ANALYSIS
Analysis is the first technical step in the process of any software development. A
careful analysis can help the software designer and programmer to have a better
insight of the product to be created. A careless analysis can result into incomplete
or dysfunctional software. To avoid such a situation it is very important to properly
identify the required softwares features and create an effective design for it.
It is also important to analyze and find out whether the application being developed
suits the current hardware and software platform available or not. The application
should be developed well within time and should meet the specified requirements.
If the application is being developed for commercial purposes then a cost-benefit
analysis becomes must to find out the real value of the software product.
An Object-Oriented approach will be followed to develop the application because
the data or information to be displayed and the user who will view that information
are more important here than the process flow of the system. This methodology
will also make the development process more efficient, effective and easy. The
application thus developed will be more user friendly and can be easily extended or
modified whenever required.

TECHNIQUES USED FOR ANALYSIS


On-Site Observations:
This is one of the main tools for gathering information. It is a process of
recognizing and noticing people, objects and occurrences to obtain information.
The major objective of this tools is to get as close as possible to the real system
being studies. For this reason it is extensively used by the system analyst during
the development of a particular system.

Guidelines for onsite observations:

What kind of system is it?


Who are the important people in the system?

Who runs the system?

Apart from its formal function, what kind of system is it in


comparison with other systems in the organization? Is it primary or
secondary contributor to the organization?

It is to be kept in the mind that during observations the observer has to listen more
than talk and to listen with sympathetic and genuine interest when information is
being conveyed.

Types of observation methods:


Natural method: A natural observation occurs in a setting such as the users
workplace.

Obtrusive method: An obtrusive observation takes place when the


respondent knows he/she is being observed.

Direct method: A direct observation takes place when the analyst actually
observes the subject or the system at work.

Structured and Unstructured method: In case of structured method, the


observer looks for and records a specific action. While in case of
unstructured method the observer is placed in a situation to observe
whatever might be pertinent at that time.

FEASIBILITY STUDY

Feasibility Study is a step towards identification of the candidate system as a


feasible product. First the studies often pre-suppose that when the feasibility
document is being prepared, the analyst is in a position to evaluate solutions.
Second, most studies tend to overlook the confusion inherent in system
development the constraints and the assumed attitudes.
If the feasibility study is to serve as a decision document, it must answer three
questions:
Is there a new and better way to do a job that will benefit the user?
What are the costs and savings of the alternatives?
What is recommended?

Feasibility Considerations:
There are three key considerations to the feasibility study:
1) Economic
2) Technical
3) Behavioral

Economic Feasibility:
Economic analysis is the most frequently used method for evaluating the
effectiveness of the candidate system. The project was considered to be
economically feasible because The cost involved in developing the candidate system well under the budget
of the organization.
The Cost-Benefit Analysis tells us that the value of the benefits offered by
the proposed system is much higher than the cost.

Technical Feasibility:
Technical feasibility centers around the existing computer system (Hardware and
Software etc) and to what extend it support the proposed addition. For example, if
the current computer is operating at 80 percent capacity - an arbitrary ceiling - then
running another application could overload the system or require additional
Hardware. This involves financial considerations to accommodate technical
enhancements. So this proposed system is technically feasible because all the
necessary hardware and software required for developing and installing the system
is available with the organization.

Operational Feasibility: This Application is very easy to operate as it is made user friendly with the help of
very effective GUI tools. Main consideration is users easy access to all the
functionality of the Application. Another main consideration is here is that whether
user organization is trained enough to use the newer application.

Behavioral Feasibility:
People are inherently resistant to change, and computers have been known to
facilitate change. An estimate should be made of how strong a reaction the user
staff is likely to have toward the development of a computerized system. Therefore
it is understandable that the introduction of a candidate system requires special
efforts to educate and train the staff. The software that is being developed is user
friendly and easy to learn. In this way, the developed software is truly efficient and
can work on any circumstances, tradition, locales.
Behavioral study strives on ensuring that the equilibrium of the organization and
status quo in the organization neither are nor disturbed and changes are readily
accepted by the users.

E-R diagram
Emp_co
de

Cust_id

Emp_na
me

Cust_na
me
Cust_ad
d

designat
ion

Custom
er

Cust_no

ord
ers

salary

Employ
ee

Emp_do
j
Emp_ad
d

bu
ys

pa
ys

se
lls

Bill_no

Bill

Item

Item_na
me

date
Item_pri
ce

time
Add_ta
x

Pay_mo
de

Max_a
mt
quantit
y

Data Flow Diagrams

Add, modify, delete


items, calculates
customer bills

1st Level DFD

ITEM MANAGER

Receive item
Details

PIZZA HUT
MANAGEM
ENT
SYSTEM

Data
Base

Data Access

Data Storage

Custome
r

Receive bills reports

Purchase items,
Request for Item menu

Print bills details,


customer bills, item
details, item menu,
etc.

Report
s

2nd Level DFD

Add Item

Customer

Purchas
e Item

Delete
Item

Print

Receiv
e Bill

PIZZA HUT
AUTOMATI
ON
SYSTEM

Modify
Item
Request

Data Access

Data
Storage

Reque
st item
menu

Item Manager

Dat
a
Bas
e

Print

Report
s

8
Calculate bill

3rd Level DFD

Add Item

3 Billtrans

1 Bill
2 Item

Purchas
e Item

Customer

Delete
Item

2 Item

Reque
st item
menu
Print

Modify
Item
2 Item

Print

Receiv
e Bill

Item Manager

Request
7
Print

1 Bill
Print

3 Billtrans

1 Bill

Report
s

8
Calculate bill

3 Billtrans

DATA STRUCTURE
Four tables have been used in this project:

1. ITEM: Keeps record of food items.


ItemCode

: This is unique field and generated


automatically by the program.

Name

: This is name of the item.

Price

: This is price of the item.

2. BILL: Keeps record of bills.


ItemCode

: Code no. of the item.

BillNo

: Bill no. of the bill, automatically generated by


the program.

DateofBill

: Date of the Bill.

Price

: Price per unit.

Quantity

: Quantity purchased.

CustName (Character)

: Name of the Customer.

Amount

: Total Bill amount.

3. BILLTRANS: Keeps record of individual items in bill.


ItemCode

: Code no. of the item.

BillNo

: Bill no. of the bill, automatically


generated by the program.

Price

: Price per unit.

Quantity

: Quantity purchased.

Amount

: Total amount.

4. PASS: Keeps record of password.


Password

: Password to open the project.

WORKING OF THE PROJECT

User can add new food items, modify or delete and existing food items from the
table- ITEM, by selecting forms ADDITEM and EDITITEM.
User can view list of food items by selecting option TODAYS MENU from the
MAIN form.
User can purchase items by selecting form SALES from the MAIN form, bill is
calculated and printed automatically after selecting items to purchase and stored
in the table- BILL.
User can view list of bills at the end of the day by selecting LIST OF BILLS report
the REPORTS form.

STRUCTURE OF THE PROGRAM

FORMS IN THE PROJECT:

frmNewItem

Adds new food item in the item table.

frmModifyItem

Modify the item records.

frmDelete

Delete the item records.

frmSales

Sale food items and add calculate bill.

frmToday

Display list of food items

frmPrintBill

Prints the customers bill.

frmMain

Ask user to input password.

frmMenu

Display main menu.

frmFileMaintenance

Display edit menu (add, modify, delete items).

frmReports

Display reports menu.

frmDateWise

Display date wise list of bills.

frmChangePassword

To change the password.

REPORTS IN THE PROJECT:

DateWise

: Date wise list of bills.

repItemList

: List of Items.

ListofBills

: List of all bills.

repPrintBill

: Prints the customers bill.

OUTPUT/ REPORT GENERATION

1.

With information that we have in the table - item, we can extract the list of
records of the items. Which provides the information like item code, item
name and item price.

2.

Using information in table - bill, we can extract the list of bills. Which
provides details about all the sales done it contains important information
like bill no, item code, item name, date of bill, customer name, quantity,
price and total bill amount. User can view date wise list of bills and single
customer bill also.

VALIDATION CHECKS

1.

Item code is checked whether exist in the file or not whenever user input,
while purchase, delete or modify.

2.

Validation for quantity is checked, customer should not purchase above the
available quantity.

SCREENS LAYOUT & CODING


Module1
Public con As New ADODB.Connection

1) Form Name- frmMain

Coding:Private Sub cmdOk_Click()


Dim rsPass As New ADODB.Recordset
rsPass.Open "select Password from Pass", con, adOpenDynamic
If Not rsPass.EOF Then
If (txtPassword.Text = "" And
(rsPass("Password") = txtPassword.Text) Then
Unload Me
frmMenu.Show vbModal
Else
MsgBox "Invalid Password"
End If
Else
Unload Me
frmMenu.Show vbModal
End If
rsPass.Close
Set rsPass = Nothing
End Sub
Private Sub cmdExit_Click()
Unload Me

IsNull(rsPass("Password")))

Or

End Sub

Private Sub Form_Load()


con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security
Info=False;Data Source=" + App.Path + "\fastfood.mdb"
con.Open
End Sub

2) Form Name- frmMenu

Coding:Private Sub Command1_Click()


End Sub
Private Sub cmdFile_Click()
frmFileMaintainance.Show vbModal
End Sub
Private Sub cmdHelp_Click()
Call Shell("Notepad.exe " & App.Path & "\readme.txt", 1)
End Sub
Private Sub cmdQuit_Click()
Unload Me
End Sub
Private Sub cmdReports_Click()
frmReports.Show vbModal
End Sub
Private Sub cmdSales_Click()
frmSales.Show vbModal
End Sub
Private Sub cmdToday_Click()
frmToday.Show vbModal
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y


As Single)
Me.Image2.Picture = LoadPicture(App.Path & "\mc1.bmp")
End Sub
Private Sub Image2_MouseMove(Button As Integer, Shift As Integer, X As Single,
Y As Single)
Me.Image2.Picture = LoadPicture(App.Path & "\mc2.bmp")
End Sub

3) Form Name- frmChangePassword

Coding:Private Sub cmdExit_Click()


Unload Me
End Sub
Private Sub cmdOk_Click()
Dim rsPass As New ADODB.Recordset
rsPass.Open "select Password from Pass", con, adOpenDynamic
If rsPass("Password") <> Me.txtOld.Text Then
MsgBox "Invalid Password."
Me.txtOld.SetFocus
Exit Sub
ElseIf Me.txtNew.Text <> Me.txtConfirm.Text Then
MsgBox "Invalid Password."
Me.txtConfirm.SetFocus
Exit Sub
Else
con.Execute "update Pass set Password = '" & Me.txtNew.Text & "'"
MsgBox "Password Changed"
Unload Me
End If
End Sub

4) Form Name- frmDateWise

Coding:Private Sub cmdExit_Click()


Unload Me
End Sub
Private Sub cmdPreview_Click()
If Me.txtFrom.Text = "" Then
MsgBox "Input Date."
Me.txtFrom.SetFocus
Exit Sub
End If
If Not IsDate(Me.txtFrom) Then
MsgBox "Invalid Date."
Me.txtFrom.SetFocus
Exit Sub
End If
If Me.txtTo.Text = "" Then
MsgBox "Input Date."
Me.txtTo.SetFocus
Exit Sub
End If
If Not IsDate(Me.txtTo) Then
MsgBox "Invalid Date."

Me.txtTo.SetFocus
Exit Sub
End If
'Dim rsList As New ADODB.Recordset
'rsList.Open "select * from ListofBills where DoB >= cdate('" & Me.txtFrom.Text
& "') and DoB <= cdate('" & Me.txtTo.Text & "') order by DoB,BillNo", con,
adOpenDynamic
'Set repDatewiseBillList.DataSource = rsList
'repDatewiseBillList.Show vbModal
'rsList.Close
'Set rsList = Nothing
Dim acApp As Access.Application
Set acApp = New Access.Application
acApp.OpenCurrentDatabase App.Path & "\fastfood.mdb"
acApp.DoCmd.OpenReport "repPrintBill", acViewPreview, "select * from
PrintBill where DoB >= cdate('" & Me.txtFrom.Text & "') and DoB <= cdate('" &
Me.txtTo.Text & "')"
acApp.DoCmd.Maximize
acApp.Visible = True
End Sub
Private Sub Form_Load()
Me.txtFrom.Text = Date
Me.txtTo.Text = Date
End Sub

5) Form Name- frmDelete

Coding:Private Sub cmbItemCode_Click()


Dim rsFill As New ADODB.Recordset
rsFill.Open "select * from Item where ItemCode = " & Me.cmbItemCode.Text,
con, adOpenDynamic
If Not rsFill.EOF Then
Me.txtName.Text = rsFill("Name").Value
Me.txtPrice.Text = rsFill("Price").Value
End If
rsFill.Close
Set rsFill = Nothing
End Sub
Private Sub cmdExit_Click()
Unload Me
End Sub
Private Sub cmdDelete_Click()
con.Execute "delete from Item where ItemCode = " & Me.cmbItemCode.Text
MsgBox "Record Deleted."
Me.txtName.Text = ""
Me.txtPrice.Text = ""
Me.cmbItemCode.RemoveItem (Me.cmbItemCode.ListIndex)
If Me.cmbItemCode.ListCount <> 0 Then

Me.cmbItemCode.ListIndex = 0
End If
Me.cmbItemCode.SetFocus
End Sub
Private Sub Form_Load()
Me.txtName.Enabled = False
Me.txtPrice.Enabled = False
Dim rsItemCode As New ADODB.Recordset
rsItemCode.Open "select ItemCode,Name from Item order by Itemcode", con,
adOpenDynamic
Do While Not rsItemCode.EOF
Me.cmbItemCode.AddItem rsItemCode("ItemCode").Value
rsItemCode.MoveNext
Loop
If Me.cmbItemCode.ListCount <> 0 Then
Me.cmbItemCode.ListIndex = 0
End If
rsItemCode.Close
Set rsItemCode = Nothing
End Sub

6) Form Name- frmFileMaintenance

Coding:Private Sub cmdChangePassword_Click()


frmChangePassword.Show vbModal
End Sub
Private Sub cmdDelete_Click()
frmDelete.Show vbModal
End Sub
Private Sub cmdModify_Click()
frmModifyItem.Show vbModal
End Sub
Private Sub cmdNew_Click()
frmNewItem.Show vbModal
End Sub
Private Sub cmdReturn_Click()
Unload Me
End Sub
Private Sub Image2_MouseMove(Button As Integer, Shift As Integer, X As Single,
Y As Single)
Me.Image2.Picture = LoadPicture(App.Path & "\mc2.bmp")
End Sub

7) Form Name- frmModifyItem

Coding:Private Sub cmbItemCode_Click()


Dim rsFill As New ADODB.Recordset
rsFill.Open "select * from Item where ItemCode = " & Me.cmbItemCode.Text,
con, adOpenDynamic
If Not rsFill.EOF Then
Me.txtName.Text = rsFill("Name").Value
Me.txtPrice.Text = rsFill("Price").Value
End If
rsFill.Close
Set rsFill = Nothing
End Sub
Private Sub cmdExit_Click()
Unload Me
End Sub
Private Sub cmdUpdate_Click()
If Me.txtName.Text = "" Then
MsgBox "Please input Item Name."
Me.txtName.SetFocus
Exit Sub
End If
If Me.txtPrice.Text = "" Then

MsgBox "Please input Item Price."


Me.txtPrice.SetFocus
Exit Sub
End If
If Not IsNumeric(Me.txtPrice) Then
MsgBox "Please input Numeric Value."
Me.txtPrice.SetFocus
Exit Sub
End If
con.Execute "update Item set Name='" & Me.txtName.Text & "', Price=" &
Me.txtPrice.Text & " where ItemCode = " & Me.cmbItemCode.Text
MsgBox "Record Updated."
Me.cmbItemCode.Text = ""
Me.txtName.Text = ""
Me.txtPrice.Text = ""
Me.cmbItemCode.SetFocus
End Sub
Private Sub Form_Load()
Dim rsItemCode As New ADODB.Recordset
rsItemCode.Open "select ItemCode,Name from Item order by Itemcode", con,
adOpenDynamic
Do While Not rsItemCode.EOF
Me.cmbItemCode.AddItem rsItemCode("ItemCode").Value

rsItemCode.MoveNext
Loop
If Me.cmbItemCode.ListCount <> 0 Then
Me.cmbItemCode.ListIndex = 0
End If
rsItemCode.Close
Set rsItemCode = Nothing
End Sub

8) Form Name- frmNewItem

Coding:Private Sub cmdExit_Click()


Unload Me
End Sub
Private Sub cmdNew_Click()
If Me.cmdNew.Caption = "&New Item" Then
Me.cmdNew.Caption = "&Update"
Me.txtName.Enabled = True
Me.txtPrice.Enabled = True
Dim rsItemCode As New ADODB.Recordset
rsItemCode.Open "select ItemCode from Item order by ItemCode desc", con,
adOpenDynamic
If Not rsItemCode.EOF Then
Me.txtItemCode.Text = rsItemCode("ItemCode").Value + 1
Else
Me.txtItemCode.Text = 1
End If
rsItemCode.Close
Set rsItemCode = Nothing
Me.txtName.SetFocus
Else
If Me.txtName.Text = "" Then

MsgBox "Please input Item Name."


Me.txtName.SetFocus
Exit Sub
End If
If Me.txtPrice.Text = "" Then
MsgBox "Please input Item Price."
Me.txtPrice.SetFocus
Exit Sub
End If
If Not IsNumeric(Me.txtPrice) Then
MsgBox "Please input Numeric Value."
Me.txtPrice.SetFocus
Exit Sub
End If
con.Execute "Insert into Item(ItemCode,Name,Price) values(" &
Me.txtItemCode.Text & ",'" & Me.txtName.Text & "'," & Me.txtPrice.Text & ")"
MsgBox "Record Saved"
Me.txtItemCode.Text = ""
Me.txtName.Text = ""
Me.txtPrice.Text = ""
Me.txtName.Enabled = False
Me.txtPrice.Enabled = False
Me.cmdNew.Caption = "&New Item"

End If
End Sub
Private Sub Form_Load()
Me.txtItemCode.Enabled = False
Me.txtName.Enabled = False
Me.txtPrice.Enabled = False
End Sub

9) Form Name- frmPrintBill

Print Preview:-

Coding:Private Sub cmdExit_Click()


Unload Me
End Sub
Private Sub cmdPreview_Click()
'Dim rsBill As New ADODB.Recordset
'rsBill.Open "select distinct * from ListofBills where
Me.cmbBillNo.Text & " order by billno", con, adOpenDynamic

BillNo="

&

'Set repPrintBill.DataSource = rsBill


'repPrintBill.Show vbModal
'rsBill.Close
'Set rsBill = Nothing
Dim acApp As Access.Application
Set acApp = New Access.Application
acApp.OpenCurrentDatabase App.Path & "\fastfood.mdb"
acApp.DoCmd.OpenReport "repPrintBill", acViewPreview, "select * from
PrintBill where BillNo=" & Me.cmbBillNo.Text
acApp.DoCmd.Maximize
acApp.Visible = True
End Sub
Private Sub Form_Load()
Dim rsBillCode As New ADODB.Recordset

rsBillCode.Open "select BillNo from ListofBills order by BillNo", con,


adOpenDynamic
Do While Not rsBillCode.EOF
Me.cmbBillNo.AddItem rsBillCode("BillNo").Value
rsBillCode.MoveNext
Loop
If Me.cmbBillNo.ListCount <> 0 Then
Me.cmbBillNo.ListIndex = 0
End If
rsBillCode.Close
Set rsBillCode = Nothing
End Sub

10) Form Name- frmReports

Coding:Private Sub cmdFile_Click()


'Dim rsList As New ADODB.Recordset
'rsList.Open "select * from ListofBills", con, adOpenDynamic
'Set repAllBills.DataSource = rsList
'repAllBills.Show vbModal
'rsList.Close
'Set rsList = Nothing
Dim acApp As Access.Application
Set acApp = New Access.Application
acApp.OpenCurrentDatabase App.Path & "\fastfood.mdb"
acApp.DoCmd.OpenReport "repPrintBill", acViewPreview
acApp.DoCmd.Maximize
acApp.Visible = True
End Sub
Private Sub cmdQuit_Click()
Unload Me
End Sub
Private Sub cmdReports_Click()
frmDatewise.Show vbModal
End Sub

Private Sub cmdSales_Click()


Dim rsList As New ADODB.Recordset
rsList.Open "select * from Item order by ItemCode", con, adOpenDynamic
Set repItemList.DataSource = rsList
repItemList.Show vbModal
rsList.Close
Set rsList = Nothing
End Sub
Private Sub cmdToday_Click()
frmPrintBill.Show vbModal
End Sub

11) Form Name- frmSales

Coding:Dim tmpPrice As Integer


Private Sub cmbItemCode_Click()
Dim rsFill As New ADODB.Recordset
rsFill.Open "select * from Item where ItemCode = " & Me.cmbItemCode.Text,
con, adOpenDynamic
If Not rsFill.EOF Then
Me.txtName.Text = rsFill("Name").Value
Me.txtPrice.Text = rsFill("Price").Value
tmpPrice = rsFill("Price").Value
End If
rsFill.Close
Set rsFill = Nothing
End Sub
Private Sub cmdAdd_Click()
If Me.txtQuantity.Text = "" Then
MsgBox "Please input quantity"
Me.txtQuantity.SetFocus
Exit Sub
End If
If Not IsNumeric(Me.txtQuantity.Text) Then
MsgBox "Please input numeric data"

Me.txtQuantity.SetFocus
Exit Sub
End If
Me.lstItemCode.AddItem Me.cmbItemCode.Text
Me.lstQuantity.AddItem Me.txtQuantity.Text
Me.lstPrice.AddItem Me.txtPrice * Me.txtQuantity.Text
t=0
For i = 0 To Me.lstPrice.ListCount - 1
Me.lstPrice.ListIndex = i
t = t + Val(Me.lstPrice.Text)
Next
Me.txtAmount.Text = t
Me.lstPrice.ListIndex = -1
End Sub
Private Sub cmdExit_Click()
Unload Me
End Sub
Private Sub cmdPrintBill_Click()
'Dim rsBill As New ADODB.Recordset
'rsBill.Open "select * from ListofBills where BillNo=" & Me.txtBillNo.Text, con,
adOpenDynamic
'Set repPrintBill.DataSource = rsBill
'repPrintBill.Show vbModal

'rsBill.Close
'Set rsBill = Nothing
Dim acApp As Access.Application
Set acApp = New Access.Application
acApp.OpenCurrentDatabase App.Path & "\fastfood.mdb"
acApp.DoCmd.OpenReport "repPrintBill", acViewPreview, "select * from
PrintBill where BillNo=" & Me.txtBillNo.Text
acApp.DoCmd.Maximize
acApp.Visible = True
End Sub
Private Sub cmdRemove_Click()
If Me.lstItemCode.ListIndex <> -1 Then
t = Me.lstItemCode.ListIndex
Me.lstItemCode.RemoveItem (t)
Me.lstQuantity.RemoveItem (t)
Me.lstPrice.RemoveItem (t)
t=0
For i = 0 To Me.lstPrice.ListCount - 1
Me.lstPrice.ListIndex = i
t = t + Val(Me.lstPrice.Text)
Next
Me.txtAmount.Text = t
Me.lstPrice.ListIndex = -1

End If
End Sub
Private Sub cmdSaleItem_Click()
If Me.cmdSaleItem.Caption = "&New Sale" Then
Me.cmdSaleItem.Caption = "&Sale Item"
Me.cmdAdd.Enabled = True
Me.cmdPrintBill.Enabled = False
Me.cmbItemCode.Enabled = True
Me.txtDoB.Enabled = True
Me.txtCustName.Enabled = True
Me.txtQuantity.Enabled = True
Me.txtCustName.Text = ""
Me.txtQuantity.Text = ""
Me.txtDoB.Text = Date
Me.txtAmount.Text = "0"
Me.lstItemCode.Clear
Me.lstPrice.Clear
Me.lstQuantity.Clear
Dim rsBillNo As New ADODB.Recordset
rsBillNo.Open "select BillNo from Bill order by BillNo desc", con,
adOpenDynamic
If Not rsBillNo.EOF Then

Me.txtBillNo.Text = rsBillNo("BillNo").Value + 1
Else
Me.txtBillNo.Text = 1
End If
rsBillNo.Close
Set rsBillNo = Nothing
If Me.cmbItemCode.ListCount <> 0 Then
Me.cmbItemCode.ListIndex = 0
End If
Me.cmbItemCode.SetFocus
Else
If Me.txtDoB.Text = "" Then
MsgBox "Please input Date."
Me.txtDoB.SetFocus
Exit Sub
End If
If Not IsDate(Me.txtDoB) Then
MsgBox "Please input valid date."
Me.txtDoB.SetFocus
Exit Sub
End If
If Me.txtCustName.Text = "" Then
MsgBox "Please input Name of the Customer."

Me.txtCustName.SetFocus
Exit Sub
End If
If Me.txtQuantity.Text = "" Then
MsgBox "Please input Item Quantity."
Me.txtQuantity.SetFocus
Exit Sub
End If
If Not IsNumeric(Me.txtQuantity) Then
MsgBox "Please input Numeric."
Me.txtQuantity.SetFocus
Exit Sub
End If
con.Execute
"insert
into
Bill(BillNo,ItemCode,DoB,Quantity,Price,Amount,CustName)
values("
&
Me.txtBillNo.Text & "," & Me.cmbItemCode.Text & ",'" & Me.txtDoB.Text & "',"
& Me.txtQuantity.Text & "," & tmpPrice & "," & Me.txtAmount.Text & ",'" &
Me.txtCustName.Text & "')"
For i = 0 To Me.lstItemCode.ListCount - 1
Me.lstItemCode.ListIndex = i
Me.lstPrice.ListIndex = i
Me.lstQuantity.ListIndex = i
con.Execute "insert into BillTrans(BillNo,ItemCode,Quantity,Amount,Price)
values(" & Me.txtBillNo.Text & "," & Me.lstItemCode.Text & "," &

Me.lstQuantity.Text & "," & Me.lstPrice.Text & "," & Me.lstPrice.Text /


Me.lstQuantity.Text & ")"
Next
MsgBox "Record Inserted."
Me.cmdSaleItem.Caption = "&New Sale"
Me.cmdPrintBill.Enabled = True
Me.cmdAdd.Enabled = False
Me.cmbItemCode.Enabled = False
Me.txtDoB.Enabled = False
Me.txtCustName.Enabled = False
Me.txtQuantity.Enabled = False
Me.cmdSaleItem.SetFocus
End If
End Sub
Private Sub cmdToday_Click()
frmToday.Show vbModal
End Sub
Private Sub Form_Load()
Me.txtAmount.Text = "0"
Me.txtName.Enabled = False
Me.txtPrice.Enabled = False
Me.txtBillNo.Enabled = False
Me.txtAmount.Enabled = False

Me.cmbItemCode.Enabled = False
Me.txtDoB.Enabled = False
Me.txtCustName.Enabled = False
Me.txtQuantity.Enabled = False
Me.cmdPrintBill.Enabled = False
Me.cmdAdd.Enabled = False
Dim rsItemCode As New ADODB.Recordset
rsItemCode.Open "select ItemCode,Name from Item order by Itemcode", con,
adOpenDynamic
Do While Not rsItemCode.EOF
Me.cmbItemCode.AddItem rsItemCode("ItemCode").Value
rsItemCode.MoveNext
Loop
'If Me.cmbItemCode.ListCount <> 0 Then
'

Me.cmbItemCode.ListIndex = 0

'End If
rsItemCode.Close
Set rsItemCode = Nothing
End Sub

12) Form Name- frmToday

Coding:Private Sub cmbItemCode_Click()


Dim rsFill As New ADODB.Recordset
rsFill.Open "select * from Item where ItemCode = " & Me.cmbItemCode.Text,
con, adOpenDynamic
If Not rsFill.EOF Then
Me.lblName.Caption = rsFill("Name").Value
Me.lblPrice.Caption = rsFill("Price").Value
End If
rsFill.Close
Set rsFill = Nothing
End Sub
Private Sub cmdExit_Click()
Unload Me
End Sub
Private Sub Form_Load()
Me.lblName.Enabled = False
Me.lblPrice.Enabled = False
Dim rsItemCode As New ADODB.Recordset
rsItemCode.Open "select ItemCode,Name from Item order by Itemcode", con,
adOpenDynamic
Do While Not rsItemCode.EOF

Me.cmbItemCode.AddItem rsItemCode("ItemCode").Value
rsItemCode.MoveNext
Loop
If Me.cmbItemCode.ListCount <> 0 Then
Me.cmbItemCode.ListIndex = 0
End If
rsItemCode.Close
Set rsItemCode = Nothing
End Sub

TESTING

Testing is a very critical activity that ensures the liability of a particular software
product. During this activity the software to be tested is executed with a set of
tests, and the output and functioning of the program are evaluated. It is done to
ensure whether the system meets the specified requirements or not.
Testing can bring forth some aspects that have not been considered or covered by
the developers. Testing a large program is a complex process that can be broken
down into two parts:
Unit testing
Integration testing
System testing
In the first case the different modules of the application are tested individually. In
case of system testing the software is tested as a whole. The system undergoes
several tests like:
Time tests
Performance tests
Memory tests
Input and output tests, etc.

Testing can be done in the following three phases:

Programmatic Testing This is done to determine whether the application


works according to the specifications. Here it is checked whether the
application is providing all the required functionalities and features or not.
All the validations are checked thoroughly. All the links are tested and the
database functionalities are also checked.

User Testing In this phase it is ascertained whether the target audience of


the application can use the application easily and effectively. Is the software
system is serving their purpose and fits their requirements or not. It is
checked whether they are satisfied with the information provided. They are
asked about the clarity, attractiveness and the overall presentation of the
screens and reports.

Goal Testing Finally this test is performed to test whether the application
meets the goals, which were set before developing the application. Here it
must be ensured that the organization is satisfied with the working and
presentation of the application.

SUGGESTIONS

PIZZA HUT is large growing fast food centre in India and other countries also, it
becomes very difficult to keep records for large no. of items and customers and
calculating bills. This project is very useful in the fast-food management.

Utmost care and back-up procedures must be established to ensure 100%


successful implementation of the computerized fast-food system. In case of system
failure, the organization should be in a position to process the transaction with
another organization or if the worst comes to the worst, it should be in a position to
complete it manually.

Major advantages of the project:

Accuracy will be highly enhanced due to negligible chance of


error in computer.
Data storage will become much easier and compact.
A lot of computational will be reduced.
The system being menu-driven will be easy to use as we just
need to click on the options with minute efforts.

Limitations:
1.
2.

It does not ensure security of data to extreme extent.


Only a single user can access the data at a time.

CONCLUSION
This project is designed to meet the requirements of a Pizza Hut Automation
System. It has been developed in Visual Basic and the database has been built in
MS-SQLSERVER only, keeping in mind the specifications of the system. Apart
from MS-SQLSERVER we could have also implemented other database software
like Oracle or Ms-Access.

For designing the system we have used simple data flow diagrams and E/R
diagrams.

Overall the project teaches us the essential skills like:

1.

Using system analysis and design techniques like data flow diagram and E/R
diagram in designing the system.

2.

Understanding programming logic and language along with utilities like


reports, forms, queries etc. in Visual Basic and MS-SQL SERVER.

BIBLIOGRAPHY

Visual basic
Black book
Sumita Arora

Oracle
Evan Baross

You might also like