Electricity Billing System: Bachelor of Computer Applications
Electricity Billing System: Bachelor of Computer Applications
Electricity Billing System: Bachelor of Computer Applications
ON
Session 2017-20
DEPARTMENT OF BCA
BEACON INSTITUTE OF TECHNOLOGY
MEERUT
SUBMITTED TO - SUBMITTED BY –
BCA VI SEM
1
TO WHOM IT MAY CONCERN
This is to certify that Abhinav Chauhan, Rajat Tomar, Ashish Kumar,Nitesh Talian from
Department of BCA, Beacon Institute of Technology, Meerut has carried out the project at
our organization from < > to < >.
Under training period, he/she has worked on the project entitled Electricity Billing System
under the guidance of ................................ During this project, he/she has been an active
member of the team. His/ Her specific role in the project was
The work carried by him/her is satisfactory and wish his /her all the best for future
assignments.
Authorized Signatory
Name………………….
Designation ……………….
Date………………
Seal
2
Table of Contents
1. Introduction
2. Feasibility Study
3. Data Tables
4. Data Flow Diagram
5. Entity Relationship Diagram
6. Screen Shots of Module
7. Future Scope
8. Conclusion
9. Bibliography
3
INTRODUCTION:
Our project entitled “Electricity Billing System” aims is to generate electricity bill
with all the charges and penalty. Manual system that is employed is extremely
laborious and quite inadequate. It only makes the process more difficult and hard.
The aim of our project is to develop a system that is meant to partially computerize the
work performed in the Electricity Board like generating monthly electricity bill, record of
consuming unit of energy, store record of the customer and previous unpaid record.
We used Microsoft Java as front end and Ms SQL as back end for developing our
project. Visual Basic is primarily a visual design environment. We can create a VB application
by designing the form and that make up the user interface. Adding visual basic application code
to the form and the objects such as buttons and text boxes on them and adding any required
MySQL is a powerful relational database application with which a desktop user can
efficiently create and manipulate database systems. Access targets the desktop category and
Managing megabytes of data for multi-user access to the same database, Access uses file-server
The overall project report is divided into some parts. These parts are further divided into their
subparts. In the parts we have described the purpose, scope of the project, objective of the
project i.e. approach which used for developing this software. It includes the topics like the
4
problems with the existing system and the functionality of the organization. Introduction to
tools, design, coding, testing and debugging of the system are discussed in very detail. We have
also provided the names of the books from which we have taken guidance to complete the work.
Last section contains the matter about the overall work performed and the efforts taken to
5
HARDWARE SOFTWARE
REQUIREMENT
(1)USER INTERFACE
The external users are the student information system is college administration and the
teachers of the college. The administration and teachers can have an access to this
system. The administrative user has also an authority to access their account for
Windows 7,0
The external hardware interface used for accessing the institute student information is the
1 Ghz RAM
Dualcore PROCESSOR
KEYBOARD
PRINTER
MOUSE
6
Feasibility Study:
Feasibility study is the phase in which the analyst checks that the candidate system is
feasible for the organization or not. This entails identification, description & evaluation of the
system. Feasibility study is done to select the best system that meets the performance
requirement.
If the feasibility study is to serve as a decision document, it must answer key questions.
1. Is there a new and better way to do the job that will benefit the user?
3. What is recommended?
The most successful system projects are not necessarily the biggest or most visible in the
Feasibility considerations
Three key considerations are involved in the feasibility study. They are as follows:-
Economic Feasibility:
Economic analysis is the most frequently used method for evaluating the effectiveness of the
candidate system.
We analyze the candidate system (computerized system) is feasible as than the manual system
because it saves the money, time and manpower. It also feasible according to cost benefits
analysis.
Technical Feasibility:
7
Technical feasibility centers around the technology used. It means the candidate system is
technically feasible i.e. it don’t have any technical fault and work properly in the given
Behavioral Feasibility:
analyze that the candidate system is working properly or not. If working than it communicating
proper with the environment or not. All this matters are analyzed and a good candidate system is
prepared. Due to the change of system what is the change in behavior of the users, this factors
8
DATA TABLE
In this table there are no multivalued attributes. So this is in First Normal Form.
In this table there are no multivalued attributes. So this is in First Normal Form.
Service Centre Table:
9
Field Name Data Type Size Constraint
Cust_id Number Auto Foreign Key
Service_Centre Text 20
Street Text 20
City Text 20
City Code Number Auto
State Text 10
In this table there are no multivalued attributes. So this is in First Normal Form.
In this table there are no multivalued attributes. So this is in First Normal Form.
10
Bill_no Integer Auto Foreign Key
Bill Amount Integer Auto
Bill Date Date
11
ER DIAGRAM
12
SCREEN SHOTS
LOGIN FORM
13
DOMESTIC BILL CALCULATION FORM
14
COMERCIAL BILL CALCULATION FORM
15
DOMESTIC CUSTOMER RECORD FORM
16
COMMERCIAL BILL RECORD FORM
17
CODING
package medicalstore.resources;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
ResultSet rs = null;
public billinfo() {
initComponents();
con= re.getCon();
@SuppressWarnings("unchecked")
18
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-
BEGIN:initComponents
setClosable(true);
setIconifiable(true);
setMaximizable(true);
setResizable(true);
jLabelRollNo.setText("Roll No");
jLabelStName.setText("Student Name");
62
jButtonSave.setText("Save");
jButtonSave.addActionListener(new java.awt.event.ActionListener() {
jButtonSaveActionPerformed(evt);
19
}
});
jButtonPrint.setText("Print");
jButtonPrint.addActionListener(new java.awt.event.ActionListener() {
jButtonPrintActionPerformed(evt);
});
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
.addComponent(jLabelRollNo)
.addComponent(jLabelStName))
20
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
.addGroup(layout.createSequentialGroup()
.addComponent(jButtonSave)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButtonPrint))
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jTextFieldStName, javax.swing.GroupLayout.PREFERRED_SIZE,
156, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(126, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jLabelRollNo)
21
.addComponent(jTextFieldRollNo, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jLabelStName)
.addComponent(jTextFieldStName, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jButtonSave)
.addComponent(jButtonPrint))
.addContainerGap(141, Short.MAX_VALUE))
);
pack();
}// </editor-fold>//GEN-END:initComponents
22
private void jButtonSaveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-
FIRST:event_jButtonSaveActionPerformed
FIRST:event_jButtonPrintActionPerformed
64
package medicalstore.resources;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.sql.Connection;
23
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.logging.Logger;
ResultSet rs = null;
public customersdetail() {
initComponents();
con= re.getCon();
@SuppressWarnings("unchecked")
BEGIN:initComponents
24
jButtonPrint = new javax.swing.JButton();
setClosable(true);
setIconifiable(true);
setMaximizable(true);
setResizable(true);
jLabelRollNo.setText("Roll No");
jLabelStName.setText("Student Name");
jButtonSave.setText("Save");
jButtonSave.addActionListener(new java.awt.event.ActionListener() {
jButtonSaveActionPerformed(evt);
});
jButtonPrint.setText("Print");
jButtonPrint.addActionListener(new java.awt.event.ActionListener() {
jButtonPrintActionPerformed(evt);
});
25
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
.addComponent(jLabelRollNo)
.addComponent(jLabelStName))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
.addGroup(layout.createSequentialGroup()
.addComponent(jButtonSave)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButtonPrint))
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jTextFieldStName, javax.swing.GroupLayout.PREFERRED_SIZE,
156, javax.swing.GroupLayout.PREFERRED_SIZE))
26
.addContainerGap(126, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jLabelRollNo)
.addComponent(jTextFieldRollNo, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jLabelStName)
.addComponent(jTextFieldStName, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
27
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jButtonSave)
.addComponent(jButtonPrint))
.addContainerGap(141, Short.MAX_VALUE))
);
pack();
}// </editor-fold>//GEN-END:initComponents
FIRST:event_jButtonSaveActionPerformed
FIRST:event_jButtonPrintActionPerformed
28
private javax.swing.JTextField jTextFieldStName;
68
package medicalstore.resources;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
ResultSet rs = null;
public ITEMSDETAIL() {
initComponents();
con= re.getCon();
29
}
@SuppressWarnings("unchecked")
BEGIN:initComponents
setClosable(true);
setIconifiable(true);
setMaximizable(true);
setResizable(true);
jLabelRollNo.setText("Roll No");
jLabelStName.setText("Student Name");
jButtonSave.setText("Save");
jButtonSave.addActionListener(new java.awt.event.ActionListener() {
30
jButtonSaveActionPerformed(evt);
});
jButtonPrint.setText("Print");
jButtonPrint.addActionListener(new java.awt.event.ActionListener() {
jButtonPrintActionPerformed(evt);
});
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
.addComponent(jLabelRollNo)
.addComponent(jLabelStName))
31
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADIN
G)
.addGroup(layout.createSequentialGroup()
.addComponent(jButtonSave)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButtonPrint))
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jTextFieldStName, javax.swing.GroupLayout.PREFERRED_SIZE,
156, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(126, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jLabelRollNo)
32
.addComponent(jTextFieldRollNo, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jLabelStName)
.addComponent(jTextFieldStName, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELI
NE)
.addComponent(jButtonSave)
.addComponent(jButtonPrint))
.addContainerGap(141, Short.MAX_VALUE))
);
pack();
}// </editor-fold>//GEN-END:initComponents
33
private void jButtonSaveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-
FIRST:event_jButtonSaveActionPerformed
FIRST:event_jButtonPrintActionPerformed
}//GEN-LAST:event_jButtonPrintActionPerformed
34
package medicalstore.resources;
import java.awt.ScrollPane;
import java.sql.*;
import java.text.DateFormat;
import java.util.Vector;
import java.util.Date;
import java.util.logging.Level;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.table.DefaultTableModel;
import java.util.logging.Logger;
public JasperDesign() {
int tot=0;
35
Connection con=null;
PreparedStatement pst=null;
Statement st=null,stDelete=null;
ResultSet rs = null;
ScrollPane s;
int i_no=0;
public BILLING() {
try
con= re.getCon();
74
st=con.createStatement();
data = dce.getData();
header.add("item no");
header.add("item Name");
header.add("make");
header.add("rate");
36
header.add("ratio");
header.add("unit");
data1 = dce1.getData();
header1.add("item no");
header1.add("item Name");
header1.add("make");
header1.add("srno");
header1.add("unitprice");
header1.add("quantity");
header1.add("total");
initComponents();
rs.next();
if(rs!=null)
i_no=rs.getInt(1);
i_no++;
37
else
i_no=1;
bn.setText(""+i_no);
bn.setEditable(false);
pno.setEditable(false);
make.setEditable(false);
unitp.setEditable(false);
ratio.setEditable(false);
unit.setEditable(false);
pname.setEditable(false);
75
subtotal.setEditable(false);
DateFormat df=null;
df=DateFormat.getDateInstance(DateFormat.SHORT);
datetxt.setText(""+s1);
try {
st=con.createStatement();
38
rs=st.executeQuery("select * from Customer_Master");
while(rs.next())
billto.addItem(""+rs.getString(2));
}catch(Exception e)
39
FUTURE ANALYSIS:
We have left all the options open so that if there is any other future
requirement in the system by the user for the enhancement of the system then it is
possible to implement them.
In the last we would like to thanks all the persons involved in the development of
the system directly or indirectly. We are also thankful to the Shastri Nagar South
Division Electricity Department for so much taken by them in helping to develop
the system.
We hope that the project will serve its purpose for which it is develop there by
underlining success of process.
40
CONCLUSION
We have tried to develop a system that can be a great help for the owner of the
referred electricity department to receiving bill from the customer. Despite all our
efforts there are some bugs in the system, which are still to be removed. This is
possible by the testing being done in the system.
We have left all the options open so that if there is any other future requirement in
the system by the user for the enhancement of the system then it is possible to
implement them.
In the last we would like to thanks all the persons involved in the development of
the system directly or indirectly. We are also thankful to the Meerut Electricity
Department for so much taken by them in helping to develop the system.
We hope that the project will serve its purpose for which it is develop there by
underlining success of process.
41
Bibliography
thed. Delhi:
Gerson, S. J. & Gerson, S. M., 2000. Technical Writing process & product.
3rd edition.
42