Cosmetic Store Management System Project Report

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 77

INDEX

Sr. No. Title


1. Introduction
2. Gantt Chart
3. Organization Overview :
a. History
b. Organizational Chart
c. Present System
d. Limitations of Present System
4 Proposed System:
a. Proposed System
b. Benefits of proposed system
c. Feasibility Study
d. Prototype Model
5. System Documentation :
a. Context Level Diagram
b. Entity Relationship Diagram
c. Event Table
d. DFD
e. System Flow Chart
f. Structure Chart
g. Map
h. Use case Diagram
i. Component Diagram
j. Sequence Diagram
k. ERD conversion Diagram
l. Form List
m. Table List
n. Report List
o. Naming Conventions
6. System Screen
7. System Control And Standard
8. Program Documentation
9. Testing
10. Software and Hardware Specification
11. Conclusion
12. Bibliography

1
Introduction

2
Introduction to Project

With tremendous increase in technology, information technology is a fast developing


field. Technology which is in vogue today might become redundant tomorrow. This ever
changing scenario makes it possible to provide the latest and most modern IT solutions to
various business and institutions.

I am doing my project on Cosmetic Shop Management. There is the need for efficient
management of a network based system for handling customer orders.

This project is an endeavor to provide a solution to this. The proposed system enables an
administrator to keep track of customer orders and maintaining records of the customers. He can
view the submitted requirements made by the customer. He can also view the reports generated
by him and can also sent approvals or rejections instantly.

Thus the project is a sincere effort in simplifying the task of administrators in an


easily usable format.

I finalized to make this project and hence planned to develop this system using Visual
Studio 2008 for front end and SQL as the Back End.

3
GANTT CHART

1. Project Search 1

2. Finalization 2

3. Allocation 3

Investigation of
System
4. Requirements 4

Data & Process


5. Modeling 5

6. System Design 6

7. Program Design 7

8. Program Coding 8

9. Unit Testing 9

10. System Integration 10

System
11. Implementation 11

12. Acceptance Testing 12

W1 W2 W3 W4 W5 W6 W7 W8 W9 W10
W11 W12 W13 W14 W15 W16 W17 W18 W19
W20 W21

LIMITATION OF THE PRESENT SYSTEM:

4
Before starting the project we have to study its limitations and objective some of them
are:-
 All the processes of this management are done manually in the form of paper work and
the records are stored in the registers. In such cases there are frequent chances of data
redundancy and data is ease to lose.
 All the introductions related to the patients and others printed on the papers, this activity
generates the chances of data lost.
 All the bills structures are done by hand written; sometimes it produces mistakes in
calculation.
 This system is very time consuming and require lost of manpower

PROPOSED SYSTEM:

Objective is to overcome the major limitation of the existing enabling effective


management of the customer details thereby improving the performance.
 With improved computerization being involved in the maintenance of customer
details, error and inconsistencies can be kept at par.
 Easy retrieval of data will be made possible by finding techniques.
 Validation of data will ensure only accurate, valid and complete data is stored in
the database.
 Proper monitoring of the processes from customer registration to activation.
Report generation will help make it easy to analyze the performance at the Bank.
 This will be much less time consuming comparing to existing system.

ADVANTAGES OF PROPOSED SYSTEM :-

 With improved computerization being involved in the maintenance of Patient, Doctors,


and Staff details. Error and inconsistencies can be kept at per.
 Validation of data will be ensure only accurate valid and complete data stored in the
database.
 Easy retrieval or data will be made possible by finding techniques.
 Report generation will help made its easy to analyze the performance or clinic
Administration.

OBJECTIVE AND SCOP OF PROPOSED SYSTEM:

 The objectives of the proposed system are to overcome the major limitation of existing
system enabling effective management of the customer details thereby improving the
performance of SHOP ADMINISTRTION.
 The system will store all the basic data processing needs the shop management.

5
Feasibility study
A feasibility study is undertaken to determine to the possibility or probability of either
improving the existing system or developing a completely new system. It helps to obtain the
overview of the problem and to get a rough assessment of whether other feasible solution exists.

NEEDS FOR FEASIBILITY STUDY:


The feasibility study is needed for following things:-

 Answer the questions whether a new system is to be installed or not?

 Determine the potential of the existing system.

 Improve the existing system.

 Know what should be embedded in the new system.

 Define the problems and objectives involved.

 Avoid costly repairs at later stage when system is implemented.

 Avoid crash implementation of the new system.

 Avoid the ‘Hardware approach’ i.e. getting a computer first and then deciding how to use
it.

The Feasibility study is divided in to three parts:-

 TECHNICAL FEASIBILITY

 ECONOMIC FEASIBILITY

 OPERATIONAL FEASIBILITY

 ECONOMIC FEASIBILITY

Economic analysis is most frequently used for evaluation of the effectiveness of the system.
More commonly known as cost/benefit analysis the procedure is to determine the benefit and
saving that are expected from a system and compare them with costs, decisions is made to
design and
Implement the system.

6
This part of feasibility study gives the top management the economic justification for the new
system. This is an important input to the management the management, because very often the
top management does not like to get confounded by the various technicalities that bound to be
associated with a project of this kind. A simple economic analysis that gives the actual
comparison of costs and benefits is much more meaningful in such cases.

In the system, the organization is most satisfied by economic feasibility. Because, if the
organization implements this system, it need not require any additional hardware resources as
well as it will be saving lot of time.

 TECHNICAL FEASIBILITY

Technical feasibility centers on the existing manual system of the test management process and
to what extent it can support the system.
According to feasibility analysis procedure the technical feasibility of the system is analyzed and
the technical requirements such as software facilities, procedure, inputs are identified. It is also
one of the important phases of the system development activities.
The system offers greater levels of user friendliness combined with greater processing speed.
Therefore, the cost of maintenance can be reduced. Since, processing speed is very high and the
work is reduced in the maintenance point of view management convince that the project is
operationally feasible.

 BEHAVIOURAL FEASIBILITY

People are inherently resistant to change and computer has been known to facilitate changes. An
estimate should be made of how strong the user is likely to move towards the development of
computerized system. These are various levels of users in order to ensure proper authentication
and authorization and security of sensitive data of the organization.

7
The prototyping model
The mode is used for developing the “Exam Tool” is the prototyping model.

Prototyping Model is based on the idea of developing an initial implementation, exposing this to
user comment and defining this through many until an adequate system has been developed.

Benefits of prototyping model


The prototyping paradigm begins with requirements gathering. Developers and customers meet
and define the overall objective for the software, identify the requirements and outline the areas
where further definitions are necessary.
The prototype design, is often, quite different from that of the final system. The benefits of
developing a prototype early in the software process are:

 Misunderstanding between software developers and users may be identified, as


the functions are demonstrated.

 Missing user services may be detected.


 Difficult to use or confusing user services may be indentified and refined.
 Software development staff may find incompleteness and inconsistency in
requirement as the prototype is developed.

 A working albeit limited systems is available quickly to demonstrate the


feasibility and usefulness of the application to the management.

 The prototype serves as a basis for writing the specification for a production
quality system. Though the principle purpose of prototyping is to validate
software requirements, software prototype also has other uses.

 A prototype system can be used for training users before the formal system has
been delivered.

 Prototype can be run back-to-back tests. This reduces the need for tedious manual
checking of test run. The same test is given to both the prototype and the system

8
under test to look for differences in the final results and thereby making necessary
changes. Thus prototype serves as a technique of risk reduction.

Selecting the prototype approach

The prototype paradigm can be either close ended (throwaway prototyping) or open
ended(evolutionary prototyping). Before selecting closed or open-ended approach, it is
necessary to determine whether the system to be built is suitable for prototyping or not.
This is decided depending on application area, complexity, and customer characteristics
and projects characteristics. Prototyping or evolutionary prototyping. The throwaway is
developed to understand the system requirements while the evolutionary prototype
evolves through a number of versions to the final system.

9
DIAGRAMS

10
CONTEXT LEVEL DIAGRAM

A System Context Diagram (SCD) in software engineering and systems engineering is


a diagram that represents the actors outside a system that could interact with that system. This
diagram is the highest level view of a system, similar to Block diagram, showing a,
possibly software-based, system as a whole and its inputs and outputs from/to external factors.

Account Checking
Bill Login
Request for Item Admin
Customer (User)

Man. Login Details


Supply of Item
Payment Cosmetic Shop Management System

Payment

Supply of Item
Bill
Login
Staff Supplier
(User)
Request for Item
Customer Record,
Create bills

Context Level Diagram for Cosmetic Shop Management System

11
Choice of Product

Order Customer Suggestions

Bill

Inquiry
Products

Supplier

ENTITY RELTIONSHIP DIAGRAM (ERD)

12
Entity-Relationship Diagram

 This document is an entity-relationship diagram, or “ERD,” for a system to manage


Inventory Management System.
 An ERD is a model that identifies the concepts or entities that exist in a system and
the relationships between those entities.
 An ERD is often used as a way to visualize a relational database: each entity
represents a database table, and the relationship lines represent the keys in one table
that point to specific records in related tables.
 ERD may also be more abstract, not necessarily capturing every table needed within a
database, but serving to diagram the major concepts and relationships.
 This ERD is of the latter type, intended to present an abstract, theoretical view of the
major entities and relationships needed for management of electronic resources.
 It may assist the database design process for an e-resource management system, but
does not identify every table that would be necessary for an electronic resource
management database.

ERD for Cosmetic Shop Management System

13
Choice of Product

1/M

1/M 1
1 1/M
Order Customer Suggestions

1 1 1 1

Bill

1/M
Inquiry 0/M
Products

1/M

1
Supplier

Event Table

14
The event table is a table of data that is typically written to the log file for each scenario and also
appears in the Analysis window. The event table contains timing information about specific
events that occur during the scenario.

Event Trigger Source Activity Response Destination

Customer Ask for Item Customer Create new Customer Sells Person
Registration Bill registered
Sells Person Stock Inquiry Customer Look up Stock details Customer
check Stock
availability of availability
Stock
Customer select Enquiry about Sells selecting Item selected Customer
Item Item Person
Sells Person Check the Staff Look up in Item given Customer
gives Item to Price register
Customer
Produce Bill Quantity Sells Checking the Bill report Customer
report inquiry Person Stock
Customer Ask for Bill Sells checking Data checked Accountant
Checks data Person
Summary of End of day Sells Person Produce Bill Bill summary Admin
Bill report summary report (Owner)
report

System Chart

15
A flowchart that emphasizes the component operations which make up a system.

GENERATES
BILL DATABASE
BILL BILL

CUSTOMER
CUSTOMERDATABASE
CUSTOMER

EMPLOYEE
EMPLOYEEDATABASE
Cosmetic EMPLOYEE
Shop
Management

DEBIT / CREDIT DATABASE DEBIT / CREDIT

SHOP
ACCOUNT

PRODUCTS
PRODUCT / SUPPLIER DATABASE
PRODUCTS

Structure chart

16
A Structure Chart (SC) in software engineering and organizational theory is a chart, which
shows the breakdown of the configuration system to the lowest manageable levels.

This chart is used in structured programming to arrange the program modules in a tree structure.
Each module is represented by a box, which contains the module's name. The tree structure
visualizes the relationships between the modules.

Cosmetic Shop Management System

Bill details

Reports
Peripherals details
Bill
Order
Details

Customer details

Supplier / Order Peripherals


Customer

MENU TREE

Cosmetic Shop Management System

17

Transaction Reports Exit


Lock
About
Project
Delete Products
User Bills

Register
Customer
User Employee
Details
Salary

Bill

Employee
Details

Usecase Diagram
A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagram
defined by and created from a Use-case analysis. Its purpose is to present a graphical overview
of the functionality provided by a system in terms of actors, their goals (represented as use
cases), and any dependencies between those use cases.

Login
18
Ask For Item Items/ Stock Details
Customer Admin Staff

Login Details Bill Details

Stock Details Account Details

Data Flow Diagram (DFD)

A data flow diagram (DFD) is a graphical representation of the "flow" of data


through an information system. DFDs can also be used for thevisualization of data
processing (structured design).

CUSTOMER DETAILS

19
1.0

Customer
Details
Customer
Customer CUSTOMER
DETAILS Customer Information

1.1 1.2 1.3

ADD UPDATE DELETE

1.4

SEARCH

1.1

Customer Customer

ADD

1.2
20
Customer
Customer
UPDATE
1.3

Customer Customer

DELETE

1.4

Customer Customer

SEARCH

1.1

ACCOUNT
ADD

2) BILL ORDER DETAILS

2.0

Order
Details
Order
Bill Order
Order 21
DETAILS
Order Information
2.1 2.2 2.3

ADD UPDATE DELETE

2.4

SEARCH

3.DEALER / PRODUCT DETAILS

3.0

Product
Details
PRODUCT
Dealer Order PRODUCT e
DETAILS Product
Information
22
3.1 3.2 3.3 3.4 3.5

ADD UPDATE DELETE SEARCH EDIT

4) EMPLOYEE DETAILS

7.0

Employee
Details Employee
Employee Employee DETAILS
Employee Information
23
7.1 7.2 7.3

ADD UPDATE DELETE

7.4 7.5

SEARCH EDIT

PACKAGE DIAGRAM

Log Management
Subsystem

Cosmetic Shop Management System

Admin Management Customer 24


Subsystem Management
Subsystem
Report Management
Subsystem

Dealer Management Employee Management


Subsystem Subsystem

Forms Used :

Sr.No. FORM-NAME DESCRIPTION

It is the main form. It contains all


1. MDI
the menu items.
It is the main form containing
2. Supplier / Product
Product details.

25
It is the main form containing
3. Customer
Customer details.
It gives information about the
4. About
software
It contains details about the Last Bill
5. Bill
Generated.
It helps to enter the software if the
6. Login correct login name and password is
entered.

7. Splash It is start-up form.

It gives information about the


8. About
software.

9. Employee Details It gives details about the Employees.

It generates the employee salary


10. Employee Salary
slip.

Table Used :

SR.NO. TABLE NAME DESCRIPTION

1. Supplier / Product It contains data of all the Products.

2. Employee Details It contains data of all the Employees.

3. Customer It contains data of all the Customers.

26
It contains data of all the Debits in the
4. Debit
shop .
It contains data of all the Credits in the
5. Credit
shop.
It contains data of all the Salaries
6. Employee Salary
generated for the Employees.

7. Bill It contains data of Bills.

8. Login It contains data valid users.

Report List :

SR.NO REPORT NAME DESCRIPTION

1. Billing It gives the report of generated Bills.

2. Employee Salary It gives the report of all the employee salary slips.

Pseudo Code :

SR.NO. NAME Procedure DESCRIPTION

1. Add Click Add new Records

2. Update Click Update Current Record

3. Delete Click Delete Current Record

27
Naming Convention

Object Name Prefix

Text box txt


Label lbl
Image img
Picture Box pic
Command button cmd
Combo box cmb
Status Bar sb
Progress Bar PB
Frame frame

28
System Screen

Login Page:

29
MDI Form :

30
Supplier Details:

Profit :

31
Customer Bill :

Customer Bill Details:

32
Employee Details :

EMPSalary Slip:

33
Dealer Report :

Customer Bill Report :

34
Customer Details Report :

EMP Report :

35
Salary Report :

36
Coding

Login Page :

Imports System.Data.SqlClient

37
Public Class Login

Private Sub OK_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles OK.Click
Dim cmd As SqlCommand
Dim conn As SqlConnection

Dim sql = "SELECT username,password FROM Login WHERE username = '" &
UsernameTextBox.Text & "' AND password = '" & PasswordTextBox.Text & "'"

conn = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|


DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
conn.Open()

cmd = New SqlCommand(sql, conn)


Dim dr As SqlDataReader = cmd.ExecuteReader

Try
If dr.Read = False Then
MessageBox.Show("Authentication Failed...")
Else
MessageBox.Show("Login Successful...")
MDIParent1.Show()
Me.Hide()
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try

If conn.State <> ConnectionState.Closed Then


conn.Close()
End If

End Sub

Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles Cancel.Click
Me.Close()
Application.Exit()
End Sub

End Class

MDI Form :
Imports System.Windows.Forms
Public Class MDIParent1
Private Sub ShowNewForm(ByVal sender As Object, ByVal e As EventArgs)
' Create a new instance of the child form.
Dim ChildForm As New System.Windows.Forms.Form
' Make it a child of this MDI form before showing it.
ChildForm.MdiParent = Me

38
m_ChildFormNumber += 1
ChildForm.Text = "Window " & m_ChildFormNumber

ChildForm.Show()
End Sub

Private Sub OpenFile(ByVal sender As Object, ByVal e As EventArgs) Handles


OpenToolStripMenuItem.Click, OpenToolStripButton.Click
Dim OpenFileDialog As New OpenFileDialog
OpenFileDialog.InitialDirectory =
My.Computer.FileSystem.SpecialDirectories.MyDocuments
OpenFileDialog.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"
If (OpenFileDialog.ShowDialog(Me) =
System.Windows.Forms.DialogResult.OK) Then
Dim FileName As String = OpenFileDialog.FileName
' TODO: Add code here to open the file.
End If
End Sub

Private Sub SaveAsToolStripMenuItem_Click(ByVal sender As Object, ByVal e


As EventArgs)
Dim SaveFileDialog As New SaveFileDialog
SaveFileDialog.InitialDirectory =
My.Computer.FileSystem.SpecialDirectories.MyDocuments
SaveFileDialog.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"

If (SaveFileDialog.ShowDialog(Me) =
System.Windows.Forms.DialogResult.OK) Then
Dim FileName As String = SaveFileDialog.FileName
' TODO: Add code here to save the current contents of the form to
a file.
End If
End Sub

Private Sub ExitToolsStripMenuItem_Click(ByVal sender As Object, ByVal e


As EventArgs) Handles ExitToolStripMenuItem.Click
Me.Close()
Application.Exit()
End Sub

Private Sub CopyToolStripMenuItem_Click(ByVal sender As Object, ByVal e As


EventArgs)
End Sub

Private Sub PasteToolStripMenuItem_Click(ByVal sender As Object, ByVal e


As EventArgs)
End Sub

Private Sub ToolBarToolStripMenuItem_Click(ByVal sender As Object, ByVal e


As EventArgs) Handles ToolBarToolStripMenuItem.Click
Me.ToolStrip.Visible = Me.ToolBarToolStripMenuItem.Checked
End Sub

Private Sub StatusBarToolStripMenuItem_Click(ByVal sender As Object, ByVal


e As EventArgs) Handles StatusBarToolStripMenuItem.Click
Me.StatusStrip.Visible = Me.StatusBarToolStripMenuItem.Checked

39
End Sub

Private Sub CascadeToolStripMenuItem_Click(ByVal sender As Object, ByVal e


As EventArgs)
Me.LayoutMdi(MdiLayout.Cascade)
End Sub

Private Sub TileVerticalToolStripMenuItem_Click(ByVal sender As Object,


ByVal e As EventArgs)
Me.LayoutMdi(MdiLayout.TileVertical)
End Sub

Private Sub TileHorizontalToolStripMenuItem_Click(ByVal sender As Object,


ByVal e As EventArgs)
Me.LayoutMdi(MdiLayout.TileHorizontal)
End Sub

Private Sub ArrangeIconsToolStripMenuItem_Click(ByVal sender As Object,


ByVal e As EventArgs)
Me.LayoutMdi(MdiLayout.ArrangeIcons)
End Sub

Private Sub CloseAllToolStripMenuItem_Click(ByVal sender As Object, ByVal


e As EventArgs)
' Close all child forms of the parent.
For Each ChildForm As Form In Me.MdiChildren
ChildForm.Close()
Next
End Sub

Private m_ChildFormNumber As Integer

Private Sub CustomerReceiptToolStripMenuItem_Click(ByVal sender As


System.Object, ByVal e As System.EventArgs) Handles
CustomerReceiptToolStripMenuItem.Click
Bill_Report.Show()
End Sub

Private Sub ExitToolStripMenuItem1_Click(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles ExitToolStripMenuItem1.Click
Application.Exit()
End Sub

Private Sub DetailsToolStripMenuItem_Click(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles DetailsToolStripMenuItem.Click
employee_details.Show()
End Sub

Private Sub InventoryToolStripMenuItem_Click(ByVal sender As


System.Object, ByVal e As System.EventArgs) Handles
InventoryToolStripMenuItem.Click
dealer.Show()
End Sub

Private Sub UpdateStockToolStripMenuItem_Click(ByVal sender As


System.Object, ByVal e As System.EventArgs) Handles
UpdateStockToolStripMenuItem.Click

40
profit.Show()
End Sub

Private Sub EmployeSalarySlipToolStripMenuItem_Click(ByVal sender As


System.Object, ByVal e As System.EventArgs) Handles
EmployeSalarySlipToolStripMenuItem.Click
employee_salary_slip.Show()
End Sub

Private Sub CustomerDetailsToolStripMenuItem_Click(ByVal sender As


System.Object, ByVal e As System.EventArgs) Handles
CustomerDetailsToolStripMenuItem.Click
customer.Show()
End Sub
Private Sub AboutToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles AboutToolStripMenuItem.Click
frmAbout.Show()
End Sub

Private Sub HelpToolStripButton_Click(ByVal sender As System.Object, ByVal


e As System.EventArgs) Handles HelpToolStripButton.Click
frmAbout.Show()
End Sub

Private Sub PrintToolStripButton_Click(ByVal sender As System.Object,


ByVal e As System.EventArgs) Handles PrintToolStripButton.Click
PrintDialog1.ShowDialog()
End Sub

Private Sub MDIParent1_Load(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles MyBase.Load
End Sub

End Class

Bill Report :
Imports System.Data.SqlClient

Imports System.Data

'Imports CrystalDecisions.CrystalReports.Engine

Public Class Bill_Report

Dim cnnSQL As New SQLConnection

Dim cmdSQL As New SQLCommand

Dim cmdAdd As New SQLCommand

Dim cmdAdd1 As New SQLCommand

41
Dim cmdAdd2 As New SQLCommand

Dim cmdSave As New SQLCommand

Dim cmdDelete As New SQLCommand

Dim cmdNew As New SQLCommand

Dim avlq As Integer

Dim pid As String

Dim flag As Integer

Private BS As New BindingSource

Private Sub clear()

txt_billid.Text = ""
txt_cname.Text = ""
cmb_pname.Text = ""
txt_price.Text = ""
txt_qty.Text = ""
txt_amt.Text = ""

End Sub

Private Sub Bill_Report_Load(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles MyBase.Load

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database

cnnSQL.Open()

Dim cmd = New SqlCommand("select product_name from dealer_order",


cnnSQL)

Dim dr = cmd.ExecuteReader

While dr.Read()

cmb_pname.Items.Add(dr("product_name"))

End While

dr.Close()

cnnSQL.Close()

btnAdd.Enabled = True
btnSave.Enabled = False
btnReport.Enabled = True

42
End Sub

Public Sub onlyAlphabets(ByVal e As


System.Windows.Forms.KeyPressEventArgs)
If Not Asc(e.KeyChar) = 8 Then
If InStr("abcdegfhijklmnopqrstuvwxyz", e.KeyChar,
CompareMethod.Text) = 0 Then
e.Handled = True

End If
End If
End Sub
Private Sub txt_cname_keyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles txt_cname.KeyPress
onlyAlphabets(e)

End Sub

Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnAdd.Click

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Dim cmd As New SqlCommand("Select Max(bill_id) from customer", cnnSQL)


Dim maxrows As Integer = cmd.ExecuteScalar()
maxrows = maxrows + 1
txt_billid.Text = maxrows
'MsgBox(maxrows)
cmd = Nothing

cmdDelete.CommandText = "DELETE FROM bill_report;"

'MsgBox(cmdDelete.CommandText)

cmdDelete.CommandType = CommandType.Text

cmdDelete.Connection = cnnSQL

cmdDelete.ExecuteNonQuery()

btnAdd.Enabled = False
btnSave.Enabled = True

cnnSQL.Close()

End Sub

43
Private Sub txt_price_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles txt_price.KeyPress
If (Microsoft.VisualBasic.Asc(e.KeyChar) < 48) Or
(Microsoft.VisualBasic.Asc(e.KeyChar) > 57) Then
e.Handled = True
End If
If (Microsoft.VisualBasic.Asc(e.KeyChar) = 8) Then
e.Handled = False
End If
End Sub

Private Sub txt_price_LostFocus(ByVal sender As Object, ByVal e As


System.EventArgs) Handles txt_price.LostFocus

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database

cnnSQL.Open()

Dim cmd1 = New SqlCommand("select * from dealer_order where


product_name = '" & cmb_pname.Text & "' ", cnnSQL)

Dim dr1 = cmd1.ExecuteReader

While dr1.Read()

lbl1.Text = dr1(4)

End While

dr1.Close()

cnnSQL.Close()

End Sub

Private Sub txt_qty_KeyPress(ByVal sender As Object, ByVal e As


System.Windows.Forms.KeyPressEventArgs) Handles txt_qty.KeyPress
If (Microsoft.VisualBasic.Asc(e.KeyChar) < 48) Or
(Microsoft.VisualBasic.Asc(e.KeyChar) > 57) Then
e.Handled = True
End If
If (Microsoft.VisualBasic.Asc(e.KeyChar) = 8) Then
e.Handled = False
End If
End Sub

Private Sub txt_qty_LostFocus(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles txt_qty.LostFocus

End Sub

44
Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnSave.Click

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

If txt_billid.Text = "" Or txt_cname.Text = "" Or cmb_pname.Text = ""


Or txt_price.Text = "" Or txt_qty.Text = "" Or txt_amt.Text = "" Then

MsgBox("Please Provide All the Values")


Exit Sub
Me.Close()

End If

cmdAdd.CommandText = "INSERT INTO bill_report (bill_id, bill_date,


customer_name, product_name, total_amount) VALUES ('" & txt_billid.Text &
"','" & dtp_billdate.Value & "','" & txt_cname.Text & "','" & lb_pname.Text &
"','" & txt_amt.Text & "');"

'MsgBox(cmdAdd.CommandText)

cmdAdd.CommandType = CommandType.Text

cmdAdd.Connection = cnnSQL

cmdAdd.ExecuteNonQuery()

cnnSQL.Close()

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

cmdAdd1.CommandText = "INSERT INTO customer (bill_id, bill_date,


customer_name, total_amount) VALUES ('" & txt_billid.Text & "','" &
dtp_billdate.Value & "','" & txt_cname.Text & "','" & txt_amt.Text & "');"

'MsgBox(cmdAdd.CommandText)
cmdAdd1.CommandType = CommandType.Text
cmdAdd1.Connection = cnnSQL
cmdAdd1.ExecuteNonQuery()
cnnSQL.Close()
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User
Instance=True;")

45
cnnSQL.Open()
cmdAdd2.CommandText = "INSERT INTO credit (credit_date, credit_amount,
credit_description) VALUES ('" & dtp_billdate.Value & "','" & txt_amt.Text &
"','" & txt_cname.Text & "');"
cmdAdd2.CommandType = CommandType.Text
cmdAdd2.Connection = cnnSQL
cmdAdd2.ExecuteNonQuery()
cnnSQL.Close()
MsgBox("Record Inserted.")
btnSave.Enabled = False
btnReport.Enabled = True
End Sub

Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnClose.Click
Me.Close()
End Sub

Private Sub btnReport_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnReport.Click
Customer_Bill_Report_Form.Show()
Call clear()
End Sub

Private Sub cmb_pname_TextChanged(ByVal sender As Object, ByVal e As


System.EventArgs) Handles cmb_pname.TextChanged

If cmb_pname.Text = "nail paints" Then


PictureBox1.Image =
Image.FromFile("H:\CosmeticShop.vb\CosmeticShop.vb\Image\round.jpg")
Else
If cmb_pname.Text = "makeup kit" Then
PictureBox1.Image =
Image.FromFile("H:\CosmeticShop.vb\CosmeticShop.vb\Image\makeupkit.jpg")
Else
If cmb_pname.Text = "eye shadow" Then
PictureBox1.Image =
Image.FromFile("H:\CosmeticShop.vb\CosmeticShop.vb\Image\eye.jpg")
Else
If cmb_pname.Text = "Lipstick" Then
PictureBox1.Image =
Image.FromFile("H:\CosmeticShop.vb\CosmeticShop.vb\Image\Avon Ultra Moisture
Rich 24K Gold lipstick.jpg")
Else
If cmb_pname.Text = "moisturiser" Then
PictureBox1.Image =
Image.FromFile("H:\CosmeticShop.vb\CosmeticShop.vb\Image\moisturiser.jpg")
End If
End If
End If
End If
End If
End Sub
Private Sub btnAddItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAddItem.Click
If Val(txt_qty.Text) > Val(lbl1.Text) Then
MsgBox("Please Select within the Available Quantity !!! ")

46
Exit Sub
Else
Dim q As Integer = Val(txt_qty.Text)
Dim p As Integer = Val(txt_price.Text)
Dim t As Integer = q * p
txt_amt.Text = Val(txt_amt.Text) + t
lblhide.Text = Val(lbl1.Text) - Val(txt_qty.Text)
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
cmdSave.CommandText = "UPDATE dealer_order SET quantity = '" &
lbl1.Text & "' WHERE product_name = '" & cmb_pname.Text & "';"
cmdSave.CommandType = CommandType.Text
cmdSave.Connection = cnnSQL
cmdSave.ExecuteNonQuery()
lb_pname.Text = lb_pname.Text + " : " + cmb_pname.Text
End If
End Sub
Private Sub txt_cname_TextChanged(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles txt_cname.TextChanged
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Customer_Bill_Report_Form.Show()
End Sub
Private Sub cmb_pname_SelectedIndexChanged(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmb_pname.SelectedIndexChanged
End Sub
End Class

Customer :
Imports System.Data.Sqlclient
Imports System.Data
Public Class customer
Dim cnnSQL As New SQLConnection
Dim cmdSQL As New SQLCommand
Dim cmdAdd As New SQLCommand
Dim cmdSave As New SQLCommand
Dim cmdDelete As New SQLCommand
Dim flag As Integer
Private BS As New BindingSource
Private Sub clear()
txt_id.Text = ""
txt_cname.Text = ""
txt_amt.Text = ""
End Sub
Private Sub customer_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
txt_id.Enabled = False
txt_cname.Enabled = False
txt_amt.Enabled = False
dtp_bill.Enabled = False
Dim ds As New DataSet

47
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
Dim Sql = "SELECT * FROM customer"
Dim da = New SqlDataAdapter(Sql, cnnSQL)
da.Fill(ds, "customer")
' Set the Binding Source
BS.DataSource = ds.Tables("customer")
txt_id.DataBindings.Add("Text", BS, "bill_id")
dtp_bill.DataBindings.Add("Text", BS, "bill_date")
txt_cname.DataBindings.Add("Text", BS, "customer_name")
txt_amt.DataBindings.Add("Text", BS, "total_amount")
End Sub

Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnPrevious.Click
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If
BS.MovePrevious()
flag = 1
End Sub

Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnNext.Click
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If
BS.MoveNext()
flag = 1
End Sub

Private Sub btnLast_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnLast.Click
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If
BS.MoveLast()
flag = 1
End Sub

Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnFirst.Click
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If
BS.MoveFirst()
flag = 1
End Sub

Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnClose.Click
cnnSQL.Close()

48
Me.Hide()
Me.Close()
End Sub

Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnSearch.Click
Try
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database
cnnSQL.Open()
Dim vSearch As String = InputBox("Enter Bill ID number to search
details:")
If vSearch <> "" Then
Dim cmd = New SqlCommand("select * from customer WHERE bill_id
= '" & CInt(vSearch) & "' ", cnnSQL)
cmd.Connection = cnnSQL
Dim dr As SqlDataReader = cmd.ExecuteReader
If dr.Read = True Then
txt_id.Text = dr(0)
dtp_bill.Value = dr(1)
txt_cname.Text = dr(2)
txt_amt.Text = dr(3)
' loading data into TextBoxes by column index
dr.Close()
Else
MsgBox("Record not found")
End If
Else
MsgBox("Enter search value.")
End If
Catch
End Try
btnSearch.Enabled = False
btnFirst.Enabled = False
btnPrevious.Enabled = False
btnNext.Enabled = False
btnLast.Enabled = False
End Sub

Private Sub btnRefresh_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnRefresh.Click
Dim ds As New DataSet
' Make the Connection
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
Dim Sql = "SELECT * FROM customer"
Dim da = New SqlDataAdapter(Sql, cnnSQL)
da.Fill(ds, "customer")
' Set the Binding Source
BS.DataSource = ds.Tables("customer")

49
btnSearch.Enabled = True
btnFirst.Enabled = True
btnPrevious.Enabled = True
btnNext.Enabled = True
btnLast.Enabled = True
End Sub

Private Sub btnReport_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnReport.Click
Customer_Details_Report.Show()
End Sub
End Class

Dealer :
Imports System.Data.Sqlclient
Imports System.Data
Public Class dealer
Dim cnnSQL As New SQLConnection
Dim cmdSQL As New SQLCommand
Dim cmdAdd As New SQLCommand
Dim cmdAdd1 As New SQLCommand
Dim cmdSave As New SQLCommand
Dim cmdDelete As New SQLCommand
Dim flag As Integer
Private BS As New BindingSource
Private Sub clear()

txt_id.Text = ""
txt_pname.Text = ""
txt_price.Text = ""
txt_qty.Text = ""
txt_amt.Text = ""

End Sub

Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnAdd.Click
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
Dim cmd As New SqlCommand("Select Max(order_id) from dealer_order",
cnnSQL)
Dim maxrows As Integer = cmd.ExecuteScalar()
maxrows = maxrows + 1
txt_id.Text = maxrows
'MsgBox(maxrows)
cmd = Nothing
flag = 2
btnSave.Text = "Update"
btnAdd.Enabled = False
btnDelete.Enabled = False
btnSearch.Enabled = False
btnFirst.Enabled = False

50
btnPrevious.Enabled = False
btnNext.Enabled = False
btnLast.Enabled = False
End Sub

Private Sub dealer_Load(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles MyBase.Load
Dim ds As New DataSet
' Make the Connection
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
flag = 1
btnSave.Text = "Update"
Dim Sql = "SELECT * FROM dealer_order"
Dim da = New SqlDataAdapter(Sql, cnnSQL)
da.Fill(ds, "dealer_order")
' Set the Binding Source
BS.DataSource = ds.Tables("dealer_order")
txt_id.DataBindings.Add("Text", BS, "order_id")
dtp_order.DataBindings.Add("Text", BS, "order_date")
txt_pname.DataBindings.Add("Text", BS, "product_name")
txt_price.DataBindings.Add("Text", BS, "product_price")
txt_qty.DataBindings.Add("Text", BS, "quantity")
txt_amt.DataBindings.Add("Text", BS, "total_amount")

End Sub

Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnSave.Click

If txt_id.Text = "" Or txt_pname.Text = "" Or txt_price.Text = "" Or


txt_qty.Text = "" Or txt_amt.Text = "" Then
MsgBox("Please Provide All the Values")
Exit Sub
Me.Close()
End If

If flag = 2 Then
cmdAdd.CommandText = "INSERT INTO dealer_order (order_id,
order_date, product_name, product_price, quantity, total_amount) VALUES ('" &
txt_id.Text & "','" & dtp_order.Value & "','" & txt_pname.Text & "','" &
txt_price.Text & "','" & txt_qty.Text & "','" & txt_amt.Text & "');"
'MsgBox(cmdAdd.CommandText)
cmdAdd.CommandType = CommandType.Text
cmdAdd.Connection = cnnSQL
cmdAdd.ExecuteNonQuery()
cmdAdd1.CommandText = "INSERT INTO debit (debit_date,
debit_amount, debit_description) VALUES ('" & dtp_order.Value & "','" &
txt_amt.Text & "','" & txt_pname.Text & "');"
'MsgBox(cmdAdd.CommandText)
cmdAdd1.CommandType = CommandType.Text
cmdAdd1.Connection = cnnSQL
cmdAdd1.ExecuteNonQuery()
MsgBox("Record Inserted.")

51
Call clear()
btnSave.Text = "Update"
btnAdd.Enabled = True
btnDelete.Enabled = True
btnSearch.Enabled = True
btnFirst.Enabled = True
btnPrevious.Enabled = True
btnNext.Enabled = True
btnLast.Enabled = True
Dim ds As New DataSet
' Make the Connection
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
btnSave.Text = "Update"
Dim Sql = "SELECT * FROM dealer_order"
Dim da = New SqlDataAdapter(Sql, cnnSQL)
da.Fill(ds, "dealer_order")
' Set the Binding Source
BS.DataSource = ds.Tables("dealer_order")
End If
If flag = 1 Then
cmdSave.CommandText = "UPDATE dealer_order SET order_date = '" &
dtp_order.Value & "', product_name='" & txt_pname.Text & "', product_price='"
& txt_price.Text & "', quantity='" & txt_qty.Text & "', total_amount='" &
txt_amt.Text & "' WHERE order_id = '" & txt_id.Text & "';"
'MsgBox(cmdSave.CommandText)
cmdSave.CommandType = CommandType.Text

cmdSave.Connection = cnnSQL
cmdSave.ExecuteNonQuery()
MsgBox("Record Updated.")
Call clear()
Dim ds As New DataSet
' Make the Connection
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
flag = 1
btnSave.Text = "Update"
Dim Sql = "SELECT * FROM dealer_order"
Dim da = New SqlDataAdapter(Sql, cnnSQL)
da.Fill(ds, "dealer_order")
' Set the Binding Source
BS.DataSource = ds.Tables("dealer_order")
End If
cmdSave.Dispose()
cmdAdd.Dispose()
End Sub

Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnPrevious.Click

52
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If
BS.MovePrevious()
flag = 1
End Sub

Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnNext.Click
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If
BS.MoveNext()
flag = 1
End Sub

Private Sub btnLast_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnLast.Click
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If
BS.MoveLast()
flag = 1
End Sub

Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnFirst.Click
If BS.Count = 0 Then
MsgBox("Records are Empty")
End If

BS.MoveFirst()
flag = 1
End Sub

Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnClose.Click
cnnSQL.Close()
Me.Hide()
Me.Close()
End Sub

Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnDelete.Click
If txt_id.Text <> "" Then
cmdDelete.CommandText = "DELETE FROM dealer_order WHERE order_id =
'" & txt_id.Text & "';"
'MsgBox(cmdDelete.CommandText)
cmdDelete.CommandType = CommandType.Text
cmdDelete.Connection = cnnSQL
cmdDelete.ExecuteNonQuery()
MsgBox("Record deleted.")
Call clear()
Dim ds As New DataSet
' Make the Connection

53
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
flag = 1
btnSave.Text = "Update"
Dim Sql = "SELECT * FROM dealer_order"
Dim da = New SqlDataAdapter(Sql, cnnSQL)
da.Fill(ds, "dealer_order")
' Set the Binding Source
BS.DataSource = ds.Tables("dealer_order")
cmdDelete.Dispose()
Else
MsgBox("Enter the required values:" & vbNewLine & "1. Order ID")
End If
cmdSave.Dispose()
End Sub

Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnSearch.Click
Try
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database
cnnSQL.Open()
Dim vSearch As String = InputBox("Enter Order ID number to search
details:")
If vSearch <> "" Then
Dim cmd = New SqlCommand("select * from dealer_order WHERE
order_id = '" & CInt(vSearch) & "' ", cnnSQL)
cmd.Connection = cnnSQL
Dim dr As SqlDataReader = cmd.ExecuteReader
If dr.Read = True Then
txt_id.Text = dr(0)
dtp_order.Value = dr(1)
txt_pname.Text = dr(2)
txt_price.Text = dr(3)
txt_qty.Text = dr(4)
txt_amt.Text = dr(5)
' loading data into TextBoxes by column index
dr.Close()
Else
MsgBox("Record not found")
End If
Else
MsgBox("Enter search value.")
End If
Catch
End Try
btnSave.Enabled = False
btnAdd.Enabled = False
btnDelete.Enabled = False
btnSearch.Enabled = False
btnFirst.Enabled = False
btnPrevious.Enabled = False

54
btnNext.Enabled = False
btnLast.Enabled = False
End Sub
Private Sub btnRefresh_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnRefresh.Click
Dim ds As New DataSet
' Make the Connection
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
cnnSQL.Open()
Call clear()
flag = 1
btnSave.Text = "Update"
Dim Sql = "SELECT * FROM dealer_order"
Dim da = New SqlDataAdapter(Sql, cnnSQL)
da.Fill(ds, "dealer_order")
' Set the Binding Source
BS.DataSource = ds.Tables("dealer_order")
btnSave.Enabled = True
btnAdd.Enabled = True
btnDelete.Enabled = True
btnSearch.Enabled = True
btnFirst.Enabled = True
btnPrevious.Enabled = True
btnNext.Enabled = True
btnLast.Enabled = True
End Sub

Private Sub txt_qty_KeyPress(ByVal sender As Object, ByVal e As


System.Windows.Forms.KeyPressEventArgs) Handles txt_qty.KeyPress
If (Microsoft.VisualBasic.Asc(e.KeyChar) < 48) Or
(Microsoft.VisualBasic.Asc(e.KeyChar) > 57) Then
e.Handled = True
End If
If (Microsoft.VisualBasic.Asc(e.KeyChar) = 8) Then
e.Handled = False
End If
End Sub

Private Sub txt_qty_LostFocus(ByVal sender As Object, ByVal e As


System.EventArgs) Handles txt_qty.LostFocus
Dim p As Integer = Val(txt_price.Text)
Dim q As Integer = Val(txt_qty.Text)
Dim t As Integer = p * q
txt_amt.Text = t
End Sub

Private Sub txt_price_KeyPress(ByVal sender As Object, ByVal e As


System.Windows.Forms.KeyPressEventArgs) Handles txt_price.KeyPress
If (Microsoft.VisualBasic.Asc(e.KeyChar) < 48) Or
(Microsoft.VisualBasic.Asc(e.KeyChar) > 57) Then
e.Handled = True
End If
If (Microsoft.VisualBasic.Asc(e.KeyChar) = 8) Then
e.Handled = False
End If

55
End Sub

Private Sub btnReport_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnReport.Click
Dealer_Report_Form.Show()
End Sub
End Class

Employee Details :
Imports System.Data.Sqlclient

Imports System.Data
Public Class employee_details

Dim cnnSQL As New SQLConnection

Dim cmdSQL As New SQLCommand

Dim cmdAdd As New SQLCommand

Dim cmdSave As New SQLCommand

Dim cmdDelete As New SQLCommand

Dim flag As Integer

Private BS As New BindingSource

Private Sub clear()

txt_id.Text = ""
txt_name.Text = ""
txt_add.Text = ""
txt_no.Text = ""
cmb_designation.Text = ""
txt_salary.Text = ""

End Sub

Private Sub employee_details_Load(ByVal sender As System.Object, ByVal e


As System.EventArgs) Handles MyBase.Load
Dim ds As New DataSet

' Make the Connection


cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Call clear()
flag = 1
btnSave.Text = "Update"

56
Dim Sql = "SELECT * FROM employee_details"
Dim da = New SqlDataAdapter(Sql, cnnSQL)

da.Fill(ds, "employee_details")

' Set the Binding Source


BS.DataSource = ds.Tables("employee_details")

txt_id.DataBindings.Add("Text", BS, "emp_id")


txt_name.DataBindings.Add("Text", BS, "emp_name")
txt_add.DataBindings.Add("Text", BS, "emp_add")
txt_no.DataBindings.Add("Text", BS, "emp_no")
dtp_dob.DataBindings.Add("Text", BS, "emp_dob")
dtp_doj.DataBindings.Add("Text", BS, "emp_doj")
cmb_designation.DataBindings.Add("Text", BS, "emp_designation")
txt_salary.DataBindings.Add("Text", BS, "emp_salary")
End Sub

Private Sub btnNew_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnNew.Click

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Call clear()

Dim cmd As New SqlCommand("Select Max(emp_id) from employee_details",


cnnSQL)
Dim maxrows As Integer = cmd.ExecuteScalar()
maxrows = maxrows + 1
txt_id.Text = maxrows
'MsgBox(maxrows)C:\Documents and
Settings\user\Desktop\CosmeticShop.vb\cosmetic.mdb
cmd = Nothing

flag = 2
btnSave.Text = "Save"

btnNew.Enabled = False
btnDelete.Enabled = False
btnSearch.Enabled = False
btnFirst.Enabled = False
btnPrevious.Enabled = False
btnNext.Enabled = False
btnLast.Enabled = False

End Sub

Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnSave.Click

57
If txt_id.Text = "" Or txt_name.Text = "" Or txt_add.Text = "" Or
txt_no.Text = "" Or cmb_designation.Text = "" Or txt_salary.Text = "" Then

MsgBox("Please Provide All the Values")


Exit Sub
Me.Close()

End If

If flag = 2 Then

If txt_id.Text <> "" And txt_name.Text <> "" And txt_add.Text <>
"" And txt_no.Text <> "" And cmb_designation.Text <> "" And txt_salary.Text <>
"" Then

cmdAdd.CommandText = "INSERT INTO employee_details (emp_id,


emp_name, emp_add, emp_no, emp_dob, emp_doj, emp_designation, emp_salary)
VALUES ('" & txt_id.Text & "','" & txt_name.Text & "','" & txt_add.Text &
"','" & txt_no.Text & "','" & dtp_dob.Value & "','" & dtp_doj.Value & "','" &
cmb_designation.Text & "','" & txt_salary.Text & "');"

'MsgBox(cmdAdd.CommandText)

cmdAdd.CommandType = CommandType.Text

cmdAdd.Connection = cnnSQL

cmdAdd.ExecuteNonQuery()

MsgBox("Record Inserted.")

Call clear()

btnSave.Text = "Update"

btnNew.Enabled = True
btnDelete.Enabled = True
btnSearch.Enabled = True
btnFirst.Enabled = True
btnPrevious.Enabled = True
btnNext.Enabled = True
btnLast.Enabled = True

Dim ds As New DataSet

' Make the Connection


cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Call clear()

btnSave.Text = "Update"

58
Dim Sql = "SELECT * FROM employee_details"
Dim da = New SqlDataAdapter(Sql, cnnSQL)

da.Fill(ds, "employee_details")

' Set the Binding Source


BS.DataSource = ds.Tables("employee_details")

End If

End If

If flag = 1 Then

If txt_id.Text <> "" And txt_name.Text <> "" And txt_add.Text <>
"" And txt_no.Text <> "" And cmb_designation.Text <> "" And txt_salary.Text <>
"" Then

cmdSave.CommandText = "UPDATE employee_details SET emp_name =


'" & txt_name.Text & "', emp_add='" & txt_add.Text & "', emp_no='" &
txt_no.Text & "', emp_dob='" & dtp_dob.Value & "', emp_doj='" & dtp_doj.Value
& "', emp_designation='" & cmb_designation.Text & "', emp_salary='" &
txt_salary.Text & "' WHERE emp_id = '" & txt_id.Text & "';"

'MsgBox(cmdSave.CommandText)

cmdSave.CommandType = CommandType.Text

cmdSave.Connection = cnnSQL

cmdSave.ExecuteNonQuery()

MsgBox("Record Updated.")

Call clear()

Dim ds As New DataSet

' Make the Connection


cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Call clear()
flag = 1
btnSave.Text = "Update"

Dim Sql = "SELECT * FROM employee_details"


Dim da = New SqlDataAdapter(Sql, cnnSQL)

da.Fill(ds, "employee_details")

' Set the Binding Source


BS.DataSource = ds.Tables("employee_details")

59
End If

End If

cmdSave.Dispose()
cmdAdd.Dispose()

End Sub

Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnPrevious.Click

If BS.Count = 0 Then
MsgBox("Records are Empty")
End If

BS.MovePrevious()
flag = 1

End Sub

Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnNext.Click

If BS.Count = 0 Then
MsgBox("Records are Empty")
End If

BS.MoveNext()
flag = 1

End Sub

Private Sub btnLast_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnLast.Click

If BS.Count = 0 Then
MsgBox("Records are Empty")
End If

BS.MoveLast()
flag = 1

End Sub

Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnFirst.Click

If BS.Count = 0 Then
MsgBox("Records are Empty")
End If

60
BS.MoveFirst()
flag = 1

End Sub

Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnClose.Click

cnnSQL.Close()
Me.Hide()
Me.Close()

End Sub

Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnDelete.Click

If txt_id.Text <> "" Then

cmdDelete.CommandText = "DELETE FROM employee_details WHERE emp_id


= '" & txt_id.Text & "';"

'MsgBox(cmdDelete.CommandText)

cmdDelete.CommandType = CommandType.Text

cmdDelete.Connection = cnnSQL

cmdDelete.ExecuteNonQuery()

MsgBox("Record deleted.")

Call clear()

Dim ds As New DataSet

' Make the Connection


cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Call clear()
flag = 1
btnSave.Text = "Update"

Dim Sql = "SELECT * FROM employee_details"


Dim da = New SqlDataAdapter(Sql, cnnSQL)

da.Fill(ds, "employee_details")

' Set the Binding Source

61
BS.DataSource = ds.Tables("employee_details")

cmdDelete.Dispose()

Else

MsgBox("Enter the required values:" & vbNewLine & "1. Employee


ID")

End If

cmdSave.Dispose()

End Sub

Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnSearch.Click

Try
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database

cnnSQL.Open()

Dim vSearch As String = InputBox("Enter Employee ID number to


search details:")

If vSearch <> "" Then

Dim cmd = New SqlCommand("select * from employee_details WHERE


emp_id = '" & CInt(vSearch) & "' ", cnnSQL)

cmd.Connection = cnnSQL

Dim dr As SqlDataReader = cmd.ExecuteReader

If dr.Read = True Then

txt_id.Text = dr(0)
txt_name.Text = dr(1)
txt_add.Text = dr(2)
txt_no.Text = dr(3)
dtp_dob.Value = dr(4)
dtp_doj.Value = dr(5)
cmb_designation.Text = dr(6)
txt_salary.Text = dr(7)
' loading data into TextBoxes by column index

dr.Close()

Else
MsgBox("Record not found")
End If
Else
MsgBox("Enter search value.")

62
End If
Catch
End Try
btnSave.Enabled = False
btnNew.Enabled = False
btnDelete.Enabled = False
btnSearch.Enabled = False
btnFirst.Enabled = False
btnPrevious.Enabled = False
btnNext.Enabled = False
btnLast.Enabled = False
End Sub
Private Sub cmb_designation_TextChanged(ByVal sender As Object, ByVal e As
System.EventArgs) Handles cmb_designation.TextChanged

If cmb_designation.Text = "Store Manager" Then


txt_salary.Text = "8500"
Else
If cmb_designation.Text = "Sales Boy" Then
txt_salary.Text = "7000"
Else
If cmb_designation.Text = "receptionist" Then
txt_salary.Text = "3000"
End If
End If
End If

End Sub

Private Sub btnRefresh_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnRefresh.Click

Dim ds As New DataSet

' Make the Connection


cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Call clear()
flag = 1
btnSave.Text = "Update"

Dim Sql = "SELECT * FROM employee_details"


Dim da = New SqlDataAdapter(Sql, cnnSQL)

da.Fill(ds, "employee_details")

' Set the Binding Source


BS.DataSource = ds.Tables("employee_details")
btnSave.Enabled = True
btnNew.Enabled = True
btnDelete.Enabled = True
btnSearch.Enabled = True
btnFirst.Enabled = True

63
btnPrevious.Enabled = True
btnNext.Enabled = True
btnLast.Enabled = True

End Sub

Private Sub txt_no_KeyPress(ByVal sender As Object, ByVal e As


System.Windows.Forms.KeyPressEventArgs) Handles txt_no.KeyPress
If (Microsoft.VisualBasic.Asc(e.KeyChar) < 48) Or
(Microsoft.VisualBasic.Asc(e.KeyChar) > 57) Then
e.Handled = True
End If
If (Microsoft.VisualBasic.Asc(e.KeyChar) = 8) Then
e.Handled = False
End If
End Sub

Private Sub btnReport_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnReport.Click
Employee_Details_Report.Show()
End Sub
End Class

Employee Salary Slip :


Imports System.Data.Sqlclient

Imports System.Data.Sqlclient.SQLException

'Imports CrystalDecisions.CrystalReports.Engine
Imports System.Data
Public Class employee_salary_slip

Dim cnnSQL As New SQLConnection

Dim cmdSQL As New SQLCommand

Dim cmdAdd As New SQLCommand

Dim cmdAdd1 As New SQLCommand

Private BS As New BindingSource

Private Sub clear()

cmb_id.Text = ""
cmb_month.Text = ""
txt_designation.Text = ""
txt_name.Text = ""
txt_salary.Text = ""

End Sub

64
Private Sub employee_salary_slip_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles MyBase.Load

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database

cnnSQL.Open()

Dim cmd = New SQLCommand("select emp_id from employee_details",


cnnSQL)

Dim dr = cmd.ExecuteReader

While dr.Read()

cmb_id.Items.Add(dr("emp_id"))

End While

dr.Close()
cnnSQL.Close()

btnReport.Enabled = True

dtp1.Value = Date.Now

End Sub

Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnClose.Click

Me.Close()

End Sub

Private Sub btnReport_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnReport.Click

Employee_Salary_Report_Form.Show()

Call clear()

End Sub

Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnSave.Click

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database

65
cnnSQL.Open()

If cmb_id.Text = "" Or txt_name.Text = "" Or txt_designation.Text = ""


Or txt_salary.Text = "" Or cmb_month.Text = "" Then

MsgBox("Please Provide All the Values")


Exit Sub
Me.Close()

End If

cmdAdd.CommandText = "INSERT INTO employee_salary_slip (emp_id,


emp_name, emp_designation, emp_salary, salary_month) VALUES ('" & cmb_id.Text
& "','" & txt_name.Text & "','" & txt_designation.Text & "','" &
txt_salary.Text & "','" & cmb_month.Text & "');"

'MsgBox(cmdAdd.CommandText)

cmdAdd.CommandType = CommandType.Text

cmdAdd.Connection = cnnSQL

cmdAdd.ExecuteNonQuery()

cmdAdd1.CommandText = "INSERT INTO debit (debit_date, debit_amount,


debit_description) VALUES ('" & dtp1.Value & "','" & txt_salary.Text & "','" &
Label8.Text & "');"

'MsgBox(cmdAdd.CommandText)

cmdAdd1.CommandType = CommandType.Text

cmdAdd1.Connection = cnnSQL

cmdAdd1.ExecuteNonQuery()

MsgBox("Record Inserted.")

btnReport.Enabled = True

End Sub

Private Sub cmb_id_TextChanged(ByVal sender As Object, ByVal e As


System.EventArgs) Handles cmb_id.TextChanged
cnnSQL = New SqlConnection("Data
Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")
'provider to be used when working with access database

cnnSQL.Open()

66
Dim cmd1 = New SqlCommand("select * from employee_details where emp_id
= '" & cmb_id.Text & "' ", cnnSQL)

Dim dr1 = cmd1.ExecuteReader

While dr1.Read()

txt_name.Text = dr1(1)
txt_designation.Text = dr1(6)
txt_salary.Text = dr1(7)

End While

dr1.Close()

cnnSQL.Close()

End Sub

End Class

Profit/Loss Form :

Imports System.Data.Sqlclient

Imports System.Data
Public Class profit
Dim cnnSQL As New SQLConnection

Dim cmdSQL As New SQLCommand

Private BS As New BindingSource

Private Sub btnShow_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnShow.Click

cnnSQL = New SqlConnection("Data


Source=.\SQLEXPRESS;AttachDbFilename=|
DataDirectory|\Data\Cosmetic.mdf;Integrated Security=True;User Instance=True")

cnnSQL.Open()

Dim cmd As New SqlCommand("Select Sum(debit_amount) from debit",


cnnSQL)
Dim deb As Integer = cmd.ExecuteScalar()
txt_debit.Text = deb
cmd = Nothing

Dim cmd1 As New SqlCommand("Select Sum(credit_amount) from credit",


cnnSQL)

67
Dim crd As Integer = cmd1.ExecuteScalar()
txt_credit.Text = crd
cmd1 = Nothing

txt_profit.Text = Val(txt_credit.Text) - Val(txt_debit.Text)

End Sub

Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles btnClose.Click

Me.Close()

End Sub

End Class

SYSTEM
IMPLEMENTATION
PHASE

68
TECHNOLOGY USED

I HAVE DONE THE PROJECT IN VISUAL STUDIO 2008 & SQL

INTRODUCTION TO VISUAL STUDIO 2008


VISUAL STUDIO has been used to develop the front end for this application.
It is a structured programming language and complete application development tool for the Microsoft
windows operating System. It is not just a language it’s an integrated development environment (IDE) in
which you develop, run , test and debug your applications.
Visual Studio provides help for the easy development of excellent GUI’s (Graphical user
interfaces). It is an efficient interaction environment for designing forms and windows.
Programming in Visual Studio is event-driven, which means the flow of the application will
depend on the way the user interacts with it. In Visual Studio you can quickly design the visual elements
of any new programming project.
Your program’s interface may include the familiar controls that windows users already know how
to operate such as command buttons, option ,lists ,textbox ,and scroll bars. With just few mouse actions,
you can add any combination of these controls to a program. As a result, the design tasks that used to
require many hours of detailed programming effort could be completed in minutes.
Besides, connection to any type of database can achieve with the help of its Active-X Data
Objects Data Connector .ADODC allows you to connect to databases, retrieve data from them or insert
data with very little effort.

69
VISUAL STUDIO CONTROL PANNEL

For the creating application we use controls like text box controls, check box controlled and each control
has unique properties. There are 9 controls as follows.

1. Textbox control
2. Command buttons
3. Status Bar
4. Combo Box control
5. DT Picker control
6. Tab Strip
7. Progress Bar

Control Panel in Detail

Text Box Control

A textbox control, sometimes called an edit field or edit control, displays information entered at design
time, entered by the user, or assigned to the control in code at run time.
When a text box control receives the focus,an insertion point appears in the box. A VB text box
automatically inherits all the conventions of standard windows text box, including cut copy and from
clipboard area.
To display multiple lines of text in a control, set the Multiline property to true.
If a multiple-line Textbox doesn’t have a horizontal scroll bar, text wraps automatically even when the
Textbox is resized. To customize the scroll bar combination on a textbox, set the Scrollbars property.

Command Buttons

A command button is typically used to start an event that performs an action such as closing a form,
moving to a different record, printing a report, and so on. Use the Command Group control to create a set
of command button that you can manipulate individually or as a group.
You can choose a command button by clicking it, and if the Default property is set to true (.T.), by
pressing the ENTER key when the command button is selected. If the Cancel property of the command
button is set to True (.T.) , you can choose the command button by pressing the ESC Key.

Combo Box Control

70
A combo box control combines the features of a text box and a list box. This control allows the user to
select an item either by typing text into the combo box, or by selecting it from the list.
Combo boxes present a list of choices to the user. If the number of items exceeds what can be displayed
in the combo box, scroll bars will automatically appears on the control. The user can then scroll up and
down or left to right through the list.

Progress Bars
Progress bars gives the user some visual feedback on what’s happening during a time-consuming
operation. they present the user with a color bar that grows in the control to show how the operation is
proceeding usually from 0 to100
Percent. You can use a progress bar when an operation will take some time to finish. The progress bar
Value property determines how much of the control has been filled. The Min and Max properties set
limits of the control.

INTRODUCTION TO SQL
SQL provides users with one of the simplest and most flexible RDBMS solutions on the market
today. Regular users of Microsoft products will enjoy the familiar Windows 'look and feel' as well as the
tight integration with other Microsoft Office family products. If Microsoft Office is your preferred office
software suite then it makes sense to seriously consider Microsoft Access as your database of choice.

FEATURES OF SQL

 New object, properties, methods and other language elements.


 Accessing the intranet or Internet from your application
 Creating custom objects with class modules.
 Customizing menus and toolbars for your application.
 Replicating only a specific part of your database.
 Working with version 4.0 Microsoft Jet Database Engine.
 Using new features in the module window.
 Using the object browser as a reference for objects of their members.
 Using ADO to access OLEDB database without loading Microsoft Jet Database Engine.

71
 Creating a tabbed dialog box for multiple pages with the tab control.
 Setting reference programmatically.
 Improving compilation performance

Implementation Phases
Once the System is tested satisfactorily with test data, the installation has to be done. This
entirely new developed system, will remove the existing manual procedure.

USER TRAINING

 User training is the important factor of system factor installation.


 This will be an ongoing process, which has started during the testing phases.
 The users were involved in the project right from the analysis phase.
 A continuous progress has been show to them from time to time.
 A proper training was given to them before installation of the system.
 For this purpose the test date is entered and various required reports are generated from
the system and checked manually.
 After completion of the user training the conversion took place.

CONVERSION PHASE
 Conversion is the process of changing the old system to the new one.
 There are different methods available for conversion.
 In our case even though there is no existing or automated system, we are using the phase
in method.

72
 The old system is being used along with the new system till the new system can operate
without causing major problem.
 This is being done to protect the major loss on the business.

POST IMPLEMENTATION PHASE


 After the successful installation of newly developed system, the important step in the
system development life cycle is post installation review.
 The success of the system will be judged by the review.
 The outputs are the real objectives of the system and unless they are correct, the
installation is not correct.
 The frequency of the output varies and thus each of them must be tested at the particular
frequency.
 Therefore post installation review may continue for 2 to 4 months.
 We have decided to keep track of the system for the next 4 months, which will help us to
gather the information for the maintenance of the system.
 In post implementation review we will come to know the various problem face by the
user in handling the new system.

Maintenance
Security:
 SSM of Cosmetic Shop Management System makes use of security in the form of User
ID’s and Passwords.
 In order to use this system, the administrator has to enter his password. The password entered
by the administrator is compared with the one in the database and if it matches then the
application precedes it to open.
 At no point in time the administrator can recover his password if he forgets it. However it is
recommended that the administrator change his /her password in the database.

73
 For security purposes it is recommended that the administrator change his password every 2
weeks.
 Besides this on the backend system makes use of SQL, which is very secure DBMS. At all
point in the DBMS checks the username and password before making a connection.’ If the
username and passwords match then the connection is allowed else it is not allowed.

TESTING

74
Testing of System
Testing is asset of activities that can be planned in advanced and conducted systematically.
For this reason a template for software testing a set into which we can specific test case design
techniques and testing methods should be defined for the software process.
A strategy for software testing must accommodate low-level test that are necessary to verify that
a small source code segment can be correctly implemented as well as high –level tests that
validate major system functions against customer requirements.

Types of Testing
1. Alpha Testing: -
Testing after code is mostly complete or contains most of the functional and prior to
end user being involved. More often this testing will be performed in house or by an
outside testing firm in close cooperation with the software engineering department.

2. Beta Testing: -
Testing after the product is code complete. Betas are often widely distributed or even
distributed to the public at large in hopes that they will buy the final product when it is
released.

3. Functional Testing: -
Testing two or more modules together with the intent of finding defects, demonstrating
that defects are not present, verifying that the modules performs its intended functions
as stated in the specification and establishing confidence that a program does what it is
supposed do.

4. Configuration Testing: -
75
Testing to determine how well the product works with a broad of the
hardware/peripheral equipment configurations as on the different operating systems and
software.

5. Pilot Testing: -
Testing that involves the users just before actual release to ensure that users become
familiar with the release contents and ultimately accept it. Typically involves many
users, is conducted over a short period of time and is tightly controlled.

6. System Integration Testing: -


Testing a specific hardware/software installation. This is typically performed on a
COTS system or any other system comprised or the disparate parts where
custom configurations and /or unique installation are the norm .

7. Software Testing: -
The process of exercising software is with the intent of ensuring that the software
system meets its requirements and the user expectations and doesn’t file in an
unacceptable manner .

8. Security testing: -
Testing of database and network software in order to keep company data and resources
from mistaken/ accidental users, hackers and other malevolent attackers.

9. Installation Testing: -
Testing with the intent of determining if the product will install on a variety of
platforms and how easily it installs .

10. Compatibility Testing: -


Testing used to determine whether other system software components such as browsers,
utilities and competing software would conflict with the software being tested.

76
CONCLUSION

The demand of Visual Studio for application is increasing day by


day in Software industry, due to high expectations of client companies.

Hence an attempt of automating an office application had added to our learning experience.

It has also helped in adopting an analytical approach to solving and


made us realize that system development is a step by step process,

Thereby appreciating the role of SDLC model in organizing the


complex process of system development into manageable chunks. Indeed it was a great learning
experience.

77

You might also like