Visual Basic and MS Access Project Report in Electricity Billing System
Short Description
We have developed this project "Electricity Billing System" for managing all the operations of the Electricity...
Description
Electricity Billing System
1. INTRODUCTION: 1.1 Introduction to Proposed System 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 Visual Basic 6.0 as front end and MS-Access 2000 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 support code in additional modular. Microsoft Access 2000 is a powerful relational database application with which a desktop user can efficiently create and manipulate database systems.
Electricity Billing System
Access targets the desktop category and works best for individuals and workgroup Managing megabytes of data for multi-user access to the same database, Access uses file-server architecture, rather than client-server architecture. Access is included in the professional and developer editions of Microsoft office. 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 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 complete the project.
Electricity Billing System
2. SYSTEM STUDY: 2.1 Scope: Our project aims at Business process automation, i.e. we have tried to computerize various processes of Electricity Billing System. In the sector of electricity board we have computerizes their department and stock maintenance. Scope of any software depends upon the following things: 1. It satisfy the user requirement 2. Be easy to understand by the user and operator 3. Be easy to operate 4. Have a good user interface 5. Be expandable 6. Delivered on schedule within the budget. We have tried to make such type of software, which satisfy the above given requirement.
Electricity Billing System
2.2 Objectives Of The System: The firm handles all of the work manually, which is very tedious and mismanaged. The objective of our project is as follows: a. To keep the information of Customer. b. To keep the information of consuming unit of energy of current month. c. To keep the information of consuming unit of energy of previous month. d. To keep the information of employee working in the department. e. To maintain the record of the department.
Electricity Billing System
3. SYSTEM ANALYSIS: 3.1 Identification Of Problem: The old manual system was suffering from a series of drawbacks. Since whole of the system was to be maintained
with
hands
the
process
of
keeping,
maintaining and retrieving the information was very tedious and lengthy. The records were never used to be in a systematic order. there used to be lots of difficulties in associating any particular transaction with a particular context. If any information was to be found it was required
to
go
through
the
different
registers,
documents there would never exist anything like report generation. consumption
There of
would
time
always
while
be
entering
unnecessary records
and
retrieving records. One more problem was that it was very difficult to find errors while entering the records. Once the records were entered it was very difficult to update these records. In present, work done in the electricity board is performed manually which is a great headache for the department .The reason behind it is that there is lot of information to be maintained and have to be kept in mind while running the business .For this reason we
Electricity Billing System
have provided features Present system is partially automated (computerized), actually existing system is quite laborious as one has to enter same information at three different places. Following points should be well considered-: Documents and reports that must be provided by the new system: there can also be few reports, which can help
management
in
decision-making
and
cost
controlling, but since these reports do not get required attention, such kind of reports and information were also identified and given required attention. Details of the information needed for each document and report. The
required
frequency
and
distribution
for
each
document. Probable sources of information for each document and report. With the implementation of computerized system, the task of keeping records in an organized manner will be solved. The greatest of all is the retrieval of information, which will be at the click of the mouse. So the proposed system helps in saving the time in different operations and making information flow easy giving valuable reports.
Electricity Billing System
3.2 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? 2. What are the costs and savings of the alternatives? 3. What is recommended? The most successful system projects are not necessarily the biggest or most visible in the business but rather those truly meet user’s expectations. 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 system.
the effectiveness of the candidate
Electricity Billing 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: 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 environment. Our system is technically feasible; it is providing us required output. Behavioral Feasibility: Behavioral feasibility is the analysis of behavior of the candidate system. In this we 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 are also analyzed.
Electricity Billing System
4. SYSTEM DEVELOPMENT ENVIRONMENT: System development environment shows the hardware and software requirement, which is necessary for developing
the
software.
Necessary
software
and
hardware requirement, which are necessary for making this software are as follows:
4.1 Software Requirement: Software requirement for developing this project is as follows: Microsoft Visual Basic 6.0 Microsoft -Access 98 or higher version. Windows 98 or higher version.
4.2 Hardware Requirement: Hardware requirement for developing this project is as follows: 1. Intel Pentium Processor 2. 32 MB RAM or higher 3. 1.2 GB Hard Disk or greater. 4. Video Display Unit. 5. Keyboard. 6. Mouse. 7.
One Printer for printing the electricity bill.
Electricity Billing System
5. INTRODUCTION TO TOOLS: 5.1 Introduction of Visual Basic: Over past few years visual basic 6.0 (front end) the relational data base management system has been finetuning it is offering a large complex application in the relational market. Visual basic 6.0 is a front end (i.e. uses graphical user interface) visual basic 6.0 uses windows environment. It may use any DBMS or RDBMS as
a
back-end
through
ODBC
(open
database
connectivity). For our purpose of development, in our project we used Visual Basic 6.0 because visual basic 6.0 has following outstanding features and qualities. Advantages Of Visual Basic: 1. Visual Basic applications are event driven. Event driven means the user is in Control of the application. 2. Visual Basic supports the principle of object-oriented design. 3. Visual Basic is a complete window application development system.
Electricity Billing System
4. Visual Basic is infinitely extensible through the use of active x controls dynamically linked libraries (dll's) and adds dins. The Fast Track To Windows Development 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 support code in additional modular. Friendly Environment Creating a form, adding controls to form and writing code behind the form are all managed within a friendly environment. Graphical User Interface Application developed in DOS environment has to include its own set of video, keyboard and printer drivers. in other words many DOS programs provided virtually no user interface at all. Since windows is preferable over DOS and Visual Basic is windows based hence millions of users can use applications with no documentation or training:
Electricity Billing System
The
graphical
user
interface
provides
a
graphical
environment to user as front-end for their operating system through graphical objects and therefore screen looks very attractive and almost has three-dimensional qualities. The point and shoot use of a GUI (Graphical User Interface) make use of the operating system and programming easy. Visual basic 6.0 connect to number of back-end DBMS and RDBMS such as SQL, FoxPro, Sybase, Oracle etc. Open Database Connectivity Visual basic 6.0 connects to any back-end DBMS system whose
DBMS
cores
follow
the
open
database
connectivity rules and this connectivity is established by open database connectivity. The data storage may belong to any DBMS engine specifically supported by visual basic 6.0 driver or any DBMS that supported open database connectivity. The data entry and validation screens are created in visual basic 6.0 connects with whichever engine is specified at the time of screen was created and manipulated data within that engine. Client server computing and visual basic 6.0: The client / server programming is also a distributed application
processing
and
co-operating
application
Electricity Billing System
processing. It has three distinct components, each focusing on specific job. The three components are: 1. Client application 2. A Database Server 3. A network for connecting the first two components. 1. Client Application: Client application (i.e. front end) is the part of the system that users employ to interact with data. The work of client is requesting and receiving information forms a database server (back-end). Client application can be developed rapidly using visual basic 6.0. 2. A Database Server: A Database server focuses on efficiently managing resources such as the table in which data lies. The server’s primary job is to manage the data tables optimally
among
multiple
clients
that
concurrently
request server for same resources. Visual basic can connect to a number of RDBMS that are in trend. 3.
Network
components:
for
connecting
the
first
two
Electricity Billing System
A network and communication software are the vehicle that transports the data between the clients and the server.
The
system
both
client
and
server
run
communication software that allow them to talk across a network. Object Oriented Programming Approach: The visual basic 6.0 uses the OOPS approach. In OOPS, a table is treated as also object and the data being attached to as user specified parameters the forms also treated as objects for this windows object for this window object. The firing of code shippers based on events occurring such as clicking on a button via a mouse. Visual Basic Libraries: When we create commercial application we create object such as windows, data windows, menus etc. these objects that you create using an appropriate visual basic pointer are stored in libraries files. When application has to run visual basic there objects from their libraries and visual basic gives you a library painter to help you manage your libraries. Events in Visual Basic: Visual basic commercial applications are event driven. The user of the application
Electricity Billing System
Controls the flow of the application by the action they take. Visual Basic’s Debugging tool: To distribute application created in visual basic we create an executable i.e. an exe file, also there is a distribution kit to distribute the application. Features of Visual Basic: 1. Visual basic provides a GUI which and therefore screen looks very attractive. 2. Work on client / server computing model. 3. Object Oriented programming approach. 4. Visual basic provides several tool bars, which make working quick and easy. 5. It is front end and DBMS as a back end so it uses all the features of RDBMS like referential integrity foreign key etc. 6. It uses a micro help line, which visual basic uses to display starters to display information through the session. Feel Of Windows Environment Microsoft Windows environment is built-in to Visual Basic application. No need to work with any windows compatible hardware since windows provides drivers for
Electricity Billing System
thousand of different printer’s video adapter, modems and other peripherals.
5.2 Introduction of MS-Access Over
the
past
several
years,
relational
database
management system have become the most widely accepted way to manage data relational system often benefits such as: 1. Easy access to all data. 2. Flexibility in storage and modeling. 3. Reduced data storage and redundancy. 4. Independence of physical storage & logical data designs. 5. A high-level data manipulation language (SQL). 6. Tables & table operations are well defined because relational theory is founded in set theory, relational algebra & relational calculus. Our of this the reason for introducing relational model is to
increase
programmer
the by
productivity eliminating
of
the
the need
application to
change
application programs when a change is made to the database.
Electricity Billing System
As the technologies associated with RDBMS have grown rapidly
in
recent
years,
the
appeal
of
relational
databases has become apparent to a much wider audience. The phenomenal growth of the relational technology has led to more demand for RDBMS in environments ranging from personal computer to large highly secure CPU with users ranging from very casual to very sophisticated. Microsoft Access 2000 is a powerful relational database application with which a desktop user can efficiently create and manipulate database systems. Access targets the desktop category and works best for individuals and workgroup Managing megabytes of data for multi-user access to the
same
database.
Access
uses
File-server
architecture, rather than client-server architecture. Access is included in the professional and developer editions of Microsoft office. As a leader in the desktop database category, Microsoft Access makes it easy for users to find and manage their data to make better business decision. With strong integration with Microsoft Office, Access offers a similar appearance and functionality to that found in the
Electricity Billing System
popular
Microsoft
word
and
Excel
applications
for
general business users, Access provides easy to use wizards throughout, such as the database wizard for getting up and running quickly and the simple query wizards for easily finding information from the data. The combination of ease of use and power in access makes it the top choice among developers who frequently use Access as a front end in a client – server scenario. The only problem with MS-ACCESS is that it cannot provide strong security features. But in front of its fast execution features this drawback can be neglected as the firm does not need any type of security whether it is operational, database, or any other security. But in application development some restriction are made of some places so that our database cannot be corrupted. MS-ACCESS is therefore used for its fast execution speed and also due to its fast connectivity. Importance of database: Growth in the usage of Computers in Business and Industrial
sector
initiated
Database
Software.
development
Database
of
software’s
modern offers
a
number of potential advantages over traditional fileprocessing system; some of them are as follows: Program-Data Independence
Electricity Billing System
The separation of data descriptions (metadata) from the application programs that use the data is called dataindependence.
With
the
database
approach,
data
descriptions are stored in a central location called repository. This property of the database systems allows an organization’s data to change and evolve without changing the application programs that process that data. Minimal Data-Redundancy The design goal with database approach is that previously
separate
and
redundant
data
files
are
integrated into a single, logical structure. Each primary fact is recorded in only one place in the database. The database
approach
does not eliminate redundancy
entirely, but it allows the designers to carefully control the type and amount of redundancy. Data Consistency By controlling data redundancy, we greatly reduce the opportunities for inconsistency. In database approach updating data values is greatly simplified when each value is stored in one place only. Finally we avoid the wasted storage space that results from redundant data storage. Data Sharing
Electricity Billing System
Primary advantage of database approach is sharing of data. A database is designed as a shared resource. Authorized users are granted permission to use the database and each user is provided one or more user views to facilitate this use. A user view is a logical description of some portion of database that is required by the user to perform some task. Enforcement of Standards When the database approach is implemented with full management
support,
the
database
administration
function should be granted single point authority and responsibility standards. conventions,
of
establishing
These
standards
data
quality
and will
enforcing include
standards
and
data
naming uniform
procedures for accessing, updating and processing data. The data repository provides database administrators with powerful tools for developing and enforcing such standards. Reduced Program Maintenance Stored data must be changed frequently for a variety of reasons: new data item types are added; data formats ate changed and so on. In file processing environment, the description of data formats and access methods inevitably result in the need to modify application
Electricity Billing System
programs.
As a result in the change of data formats
and access methods inevitably results in the need to modify
application
programs.
In
a
database
environment, data are more independent of application programs that use them. Within limits, we can change either the data or the application programs that use the data without necessitating the change in other factors.
Electricity Billing System
6. PRELIMINARY DESIGN OF PROPOSED SYSTEM: 6.1 Data Design: In most situations, many physical database design decisions are implicit or eliminated when we choose the database management technologies to use with the information system we are designing. Since many organizations have standard for operating systems, database
management
system
and
data
access
languages, we must deal only with those choices not implicit in the given technologies. The primary goal of database design is data processing efficiency. Objective Of Database Design: i) To decide on the organization of the database in computer storage and define the physical structure of the database management system. ii) To outline the program to process transactions and to generate anticipated management information and decision support reports. Designing Fields:
A field is the smallest unit of
application data recognized by system software
Electricity Billing System
Choosing Data Types:
A data type is a detailed
coding schema recognized by the system software, such as a DBMS, for representing organizational data. Selecting a data type involves four objectives that will have
different
relative
importance
for
different
applications: i.)
Minimized Storage Space
ii.)
Represent All Possible Values
iii.) Improve Data Integrity iv.) Support All Data Manipulations
Data Type Text Date/Ti me Number
Description Valid String Valid calendar date and time Number with a specified number of digits
Controlling Data Integrity For many DBMS, data integrity controls can be built into the physical structure of the fields and controls enforced by the DBMS on those fields. Some other
Electricity Billing System
typical controls that a DBMS may support are the following: Default Values: A default value is the value a field will assume unless a user enters an explicit value for an instance of that field. Assigning a default value to a field can reduce data entry, time since entry of the value can be skipped and it can also help to reduce data entry errors for the most common value. Range Control: Range control limits the set of permissible value a field may assume. The range may be a numeric lower to upper bound
or a set of specific values. It is better to
implement any range controls through a DBMS since range
control
in
programs
may
be
inconsistently
enforced and it is more difficult to find and change them. Null Value Control: A null value is an empty value each primary key must have an integrity control that prohibits a null value. Any other required field may also have a null value control placed on it if that is the policy of the organization. Referential Integrity:
Electricity Billing System
Referential integrity on a field is a form of range control in which the value of that field must exist as the value in some field in another row of the same or different table. Record is a group of a fields stored in adjacent memory location and retrieve together as a unit. The design of a physical record involves choosing the sequencing of fields into adjacent storage location to achieve two goals that are efficient use of secondary storage of data processing speed. We have used five different tables for storing different record. There
are five tables – customer table , Bill
table, Bill charge table, service centre table, commercial table. Their design view are shown as follows:
These are the tables, which are used in the project development for storing different record. Every table has a primary key for storing unique record . we have also used foreign key for making relationship between the tables.
6.2 Input Stream: Input stream shows the way by which information are passed in to the table as record. We have used mainly two forms in the project inputting the record in the table
Electricity Billing System
first is commercial bill record form and second is domestic bill record form. By these form we input the records of the table name, address, service centre, customer_id etc
6.3 Output Stream: Input stream shows the way by which information viewed by the user which are stored in the database. Commercial bill calculation form and domestic bill calculation forms are used as an output stream we can see
the
record
and
also
can
see
the
name
,
bill_date,total_bill etc. Commercial report form and home report form are used for getting the total record of the domestic bill and commercial bill in printed form.
7. ARCHITECTURAL DESIGN: 7.1 SDLC(System Development Life Cycle): System development life cycle is a sequence of events carried out by analyst, designers and users to develop and important an information system. Activities are carried out in different stages. The phases are as follows: 1. Preliminary Investigation (Feasibility Study)
Electricity Billing System
2. Determination Of System Requirement 3. Design Of The System 4. Design Of The System 5. Development Of Software 6. System Testing 7. System Implementation 8. System Maintenance 1. Preliminary Investigation (Feasibility Study): An important outcome of this preliminary investigation is determining whether the System requested is feasible or not. The major purpose of this study are listed below: Identify the responsible users and develop an initial scope of the
system.
Identify current deficiencies in the user’s environment determine objectives for the new system Determine whether it is feasible to automate the system and if so suggest some acceptable options: The
three
major
areas
to
consider
determining the feasibility of a project are:
Technical Feasibility
Economical Feasibility
while
Electricity Billing System
Operational Feasibility
Technical Feasibility: The
Analyst
finds
out
whether
current
technical
resources, which are available in the organization, is capable of Handling user requirements. Economical Feasibility: Economical or financial feasibility is second part of resource determination. Basic resources to consider are:
Management time
Time spent by system analysis team
Cost of doing the full system study
Estimated cost of hardware
Estimated cost of software
Operational Feasibility: Operational feasibility is dependent upon determining human resources for the project. It refers to projecting whether the system will operate and be used once it is installed. The document to be produced at the end of this activity is called “FEASIBILITY STUDY REPORT” 2. Determination Of Requirements (Analysis)
Electricity Billing System
Determination of system requirement involves studying the current business system in Great detail to find out how it works and where improvements have to be made. This activity is carried out in two phases Detailed investigation Analysis or determination of system requirement Detailed investigation The heart of the system analysis is aimed at having a detailed understanding of all-important facts of the project under consideration. Analyst working closely with employees and managers must be able to answer the following key question: What is being done by the current system? How is being done? How frequently does it occur? How big is the volume of transactions or decisions? How well is the task being performed? Does a problem exist? If problem exists, how serious is it? If a problem exists, what is the underlying cause? To answer the above question system analyst talks to a variety of people to gather details about the project. Questionnaires are used to collect this information from
Electricity Billing System
large groups of people who Cannot be interviewed individually. Detailed investigations also require the study of Manual and reports, actual observation of work activities and collection of existing Forms and document to fully understand the project. Analysis or determination of system requirement It is during this phase that the analyst and the user come to an agreement on what Functions the proposed system has to perform. A detailed document has to prepare by system analyst containing the following: Inputs that must be received by the system The outputs to be produced by the system The data to be retained The procedures to get the output from the given inputs Audit and control requirements System acceptance criteria This detailed document is called functional specification or proposed procedures 3. Design Of The System The design process should take care of the following:
Electricity Billing System
Identification of reports and outputs the new system should produce. Scrutinize the data present on each report/output Sketch the form or display as expected to appear at the end of completion of the system. This may be done on paper or on a computer display using one of the automated system design tools description of data to be input calculated or stored individual data items and calculation procedure written in detail. The procedures written should tell how to process the data and produce the output The document produced at the end of this activity is called design specification 4. Development Of Software In this stage the actual coding / writing of the program is done. Analyst – programmers do analyst and designs well as code programs programmers are responsible for documenting the program including comments that explain both how and why certain
procedure was coded in specific
way. Programs are individually tested using some test data. Documentation is also essential to test the programs
and
carry
out
application has been installed.
maintenance
once
the
Electricity Billing System
This activity of system development life cycle produces tested programs. 5. System Testing Once the programs are tested individually the system as a whole needs to tested. During testing the system is used experimentally to ensure that the software does not Fail that it will run according to its specifications and in the way user accept it too. special test data is prepared as input for processing and the result are examined to Locate unexpected result. 6. System Implementation in this stage the system analyst uses new software, which has been tested into use. user personnel are trained and any files of data needed by the new system are constructed. Thus new software is installed and then used. 7. System Maintenance Once installed the software is often used for many years. However both the organization and user change. The environment may also change over a period of time; therefore The software has to be maintained.
7.2 DFD(Data Flow Diagram): They are the versatile diagramming tools used for structured system analysis. They are specifically used
Electricity Billing System
for
process
modeling
which
involves
graphically
representing the function or process, which captures, manipulate, store, and distribute data between a system and its environment and between components within a system.
7.3 CONTEXT DIAGRAM: This is the start point of
data flow diagramming
process. It is denoted as the highest-level diagram. It gives an overview of an organizational system that shows the system boundaries, external entities that interact
with the system and the major information
flows between the entities and the system
Electricity Billing System
8. DETAIL DESIGN OF PROPOSED SYSTEM: 8.1 MODULE: There are mainly four module in our project. These are as follows: 1. Domestic bill information module. 2. Commercial bill information module. 3. Domestic customer record module. 4. Commercial customer record module. 1. Domestic Bill Information Module: In this module, we can see information related to the domestic bill customer
id,
like customer’s name, address, its service
centre,
his
electricity
bill
description, which contain bill no, bill date, total bill etc. we can also calculate total bill of the customer according to total unit, bill charge of the bill. 2. Commercial Bill Information Module: There is no difference between domestic bill information module and this module except that, this module is for commercial purpose. We can see information related to
Electricity Billing System
the
commercial bill
like customer’s name, shop no,
address, its customer id, service centre his electricity bill description, which contain bill no, bill date, total bill etc. we can also calculate total bill of the customer according to total unit, bill charge of the bill.
3. Domestic Customer Record Module: In this module, we can create the record related to the domestic customer like his name, address, customer id. This
module
can
also
perform
deleting
a
record
modifying existing record etc 4. Commercial Customer Record Module: In this module, we can create the record related to the customer like his name, address, customer id. This module can also perform deleting a record, modifying existing record etc. We can also see the existing record by next and previous button.
Electricity Billing System
Database Structure and Table Design Of The Project Online Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
User Interface and Screens Of the Project Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
Electricity Billing System
8.2 DATA DICTIONARY: This is normally represented as the data about data. It is also termed as metadata some times which gives the data about the data stored in the database. It defines each data term encountered during the analysis and design of a new system. Data elements can describe files or the processes. Following are some major symbols used in the data dictionary = equivalent to + and [] either/ or () Optional entry Following
are
some
rules,
which
defines
the
construction of data dictionary entries: 1. Words
should be defined to understand for what
they need and not the variable need by which they may be described in the program . 2.
Each word must be unique. We cannot have two definition of the same client.
Electricity Billing System
3.
Aliases or synonyms are allowed when two or more
enters
shows
the
same
meaning.
For
example a vendor number may also be called as customer number. 4. A self-defining word should not be decomposed. It means that the reduction of any information in to subpart should be done only if it is really required that is it is not easy to understand directly. Data dictionary includes information such as the number of records in file, the frequency a process will run, security factor like pass word which user must enter to get excess to the information.
Electricity Billing System
Coding Section Of the Project Electricity Billing System
Electricity Billing System
Code for MDI Form Private Sub abt_Click() frmAbout1.Show End Sub Private Sub binfo_Click() book_info.Show End Sub Private Sub all_payments_Click() frmMyPayment.Show End Sub Private Sub branch_report_Click() BranchReport.Show End Sub Private Sub changePass_Click() frmChangePass.Show End Sub Private Sub connection_management_Click() frmConnection.Show End Sub Private Sub ctype_management_Click() frmConnectionType.Show End Sub Private Sub customer_management_Click() frmCustomer.Show End Sub Private Sub customer_report_Click() CustomerReport.Show End Sub Private Sub exit_Click() End End Sub Private Sub generate_bill_Click() frmGenerateBill.Show End Sub
Electricity Billing System
Private Sub MDIForm_Load() Call db If userLevel = "Customer" Then customer_management.Visible = False connection_management.Visible = False users_management.Visible = False generate_bill.Visible = False openwin.Visible = False project_repots.Visible = False myPayments.Visible = True myBills.Visible = True End If If userLevel = "Admin" Then customer_management.Visible = True connection_management.Visible = True users_management.Visible = True generate_bill.Visible = True openwin.Visible = True project_repots.Visible = True myPayments.Visible = False myBills.Visible = False End If End Sub Private Sub question_management_Click() frmQuestions.Show End Sub Private Sub myAccount_Click() End Sub Private Sub myBills_Click() frmGenerateBill.Show End Sub Private Sub myPayments_Click() frmMyPayment.Show End Sub Private Sub question_report_Click()
Electricity Billing System
Questions.Show End Sub Private Sub rental_report_Click() RentalSlot.Show End Sub Private Sub rental_slot_Click() frmRentalSlot.Show End Sub Private Sub Results_Click() ResultReport.Show End Sub Private Sub student_management_Click() frmStudent.Show End Sub Private Sub student_report_Click() StudentReport.Show End Sub Private Sub subject_management_Click() frmConnectionType.Show End Sub Private Sub branch_management_Click() frmBranch.Show End Sub Private Sub subject_report_Click() SubjectReport.Show End Sub Private Sub teacher_management_Click() frmTeacher.Show End Sub Private Sub teacher_report_Click() TeacherReport.Show End Sub Private Sub users_management_Click() frmUsers.Show
Electricity Billing System
End Sub
Electricity Billing System
Code for Bill Payment Form Dim totalPayment As String Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "bill_payment", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!billpay_bill_id = billID rs!billpay_bank_name = bank_name.Text rs!billpay_total_amount = totalPayment rs.Update frmBillReceipt.Show End Sub Private Sub Form_Load() Set rs = New ADODB.Recordset rs.Open "select * from bill where bill_id =" & billID & " ", cn, adOpenKeyset, adLockOptimistic bill_amount.Caption = "Rs." & rs!bill_total & "/-" totalPayment = rs!bill_total End Sub
Electricity Billing System
Code for Bill Receipt Form Private Sub Form_Load() Set rs = New ADODB.Recordset rs.Open "select * from bill, conection, customer WHERE bill_connection = connection_id AND connection_customer = customer_id and bill_id = " & billID & " ", cn, adOpenKeyset, adLockOptimistic total.Caption = rs!bill_total connection_id.Caption = rs!bill_connection total_units.Caption = rs!bill_total_units energy_charge.Caption = rs!bill_energy_charge sur_charge.Caption = rs!bill_sur_charges month.Caption = rs!bill_month fix_charge.Caption = rs!bill_fix_charge electricity_duty.Caption = rs!bill_electricity_duty customer_id.Caption = rs!connection_id customer_name.Caption = rs!customer_name connection_ctype.Caption = rs!connection_ctype connnection_address1.Caption = rs!connection_address1 connection_address2.Caption = rs!connection_address2 connection_city.Caption = rs!connection_city connection_state.Caption = rs!connection_state connection_pincode.Caption = rs!connection_pincode End Sub
Electricity Billing System
Code for Change Password Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "select * from users where user_id =" & userLoginID & " ", cn, adOpenKeyset, adLockOptimistic If newPassword.Text confirmPassword.Text Then MsgBox "New Password and Confirm Password does not match.", vbInformation Exit Sub End If If rs!user_password oldPassword.Text Then MsgBox "Old Password does not match", vbInformation Exit Sub End If rs.Close rs.Open "select * from users where user_id =" & userLoginID & " ", cn, adOpenKeyset, adLockOptimistic rs!user_password = newPassword.Text rs.Update MsgBox "Password changed successfully", vbInformation End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub Form_Load() End Sub
Electricity Billing System
Code for Connection Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "conection", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!connection_customer = connection_customer.Text rs!connection_ctype = connection_ctype.Text rs!connection_address1 = connection_address1.Text rs!connection_address2 = connection_address2.Text rs!connection_city = connection_city.Text rs!connection_state = connection_state.Text rs!connection_pincode = connection_pincode.Text rs!connection_description = connection_description.Text rs.Update MsgBox "successfully Added", vbInformation Call frmclear Call List_Fill End Sub Private Sub cmdclear_Click() Call frmclear End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from conection where connection_id =" & connection_id.Text & " ", cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are u sure to delete the record", vbYesNo + vbInformation) If ans = 6 Then rs.Delete Call frmclear Call List_Fill End If End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub cmdfind_Click()
Electricity Billing System
Dim rs As New ADODB.Recordset Dim ID As String ID = InputBox("Enter the ID", "") rs.Open "select * from conection where connection_id =" & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else connection_id.Text = rs!connection_id connection_customer.Text = rs!connection_customer connection_ctype.Text = rs!connection_ctype connection_address1.Text = rs!connection_address1 connection_address2.Text = rs!connection_address2 connection_city.Text = rs!connection_city connection_state.Text = rs!connection_state connection_pincode.Text = rs!connection_pincode connection_description.Text = rs!connection_description rs.MoveNext End If End Sub Private Sub cmdupdate_Click() On Error Resume Next Dim rs As New ADODB.Recordset rs.Open "select * from conection where connection_id =" & connection_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!connection_id = connection_id.Text rs!connection_customer = connection_customer.Text rs!connection_ctype = connection_ctype.Text rs!connection_address1 = connection_address1.Text rs!connection_address2 = connection_address2.Text rs!connection_city = connection_city.Text rs!connection_state = connection_state.Text rs!connection_pincode = connection_pincode.Text rs!connection_description = connection_description.Text rs.Update
Electricity Billing System
MsgBox "successfully Update", vbInformation Call frmclear Call List_Fill End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then Control.Text = "" End If Next End Function Private Sub Form_Load() Call List_Fill Call fillConnectionType Call fillCustomer End Sub Public Sub List_Fill() itemListing.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem rs.Open "select * from conection", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True Set o_ListItem = itemListing.ListItems.Add(, , rs!connection_id) o_ListItem.SubItems(1) = rs!connection_customer o_ListItem.SubItems(2) = rs!connection_ctype o_ListItem.SubItems(3) = rs!connection_address1 o_ListItem.SubItems(4) = rs!connection_address2 o_ListItem.SubItems(5) = rs!connection_city o_ListItem.SubItems(6) = rs!connection_state o_ListItem.SubItems(7) = rs!connection_pincode o_ListItem.SubItems(8) = rs!connection_description rs.MoveNext Loop rs.Close End Sub Private Sub itemListing_ItemClick(ByVal Item As MSComctlLib.ListItem)
Electricity Billing System
connection_id.Text = itemListing.SelectedItem.Text connection_customer.Text = itemListing.SelectedItem.SubItems(1) connection_ctype.Text = itemListing.SelectedItem.SubItems(2) connection_address1.Text = itemListing.SelectedItem.SubItems(3) connection_address2.Text = itemListing.SelectedItem.SubItems(4) connection_city.Text = itemListing.SelectedItem.SubItems(5) connection_state.Text = itemListing.SelectedItem.SubItems(6) connection_pincode.Text = itemListing.SelectedItem.SubItems(7) connection_description.Text = itemListing.SelectedItem.SubItems(8) End Sub Public Function fillConnectionType() Set rs = New ADODB.Recordset rs.Open "select * from connection_type", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True connection_ctype.AddItem rs!ctype_name rs.MoveNext Loop rs.Close End Function Public Function fillCustomer() Set rs = New ADODB.Recordset rs.Open "select * from customer", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True connection_customer.AddItem rs!customer_id rs.MoveNext Loop rs.Close End Function
Electricity Billing System
Code for Connection Type Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "connection_type", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!ctype_name = ctype_name.Text rs.Update MsgBox "Connection Type Updated Successfully", vbInformation Call frmclear Call ctype_Fill End Sub Public Sub ctype_Fill() ctypeList.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem rs.Open "select * from connection_type", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True Set o_ListItem = ctypeList.ListItems.Add(, , rs!ctype_id) o_ListItem.SubItems(1) = rs!ctype_name rs.MoveNext Loop rs.Close End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from connection_type where ctype_id = " & Trim(ctype_id.Text), cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are you sure to delete!", vbYesNo + vbInformation) If ans = 6 Then rs.Delete MsgBox "record deleted", vbInformation Call ctype_Fill End If Call frmclear End Sub Private Sub cmdfind_Click() Dim rs As New ADODB.Recordset Dim ID As String
Electricity Billing System
ID = InputBox("Enter the ID", "") rs.Open "select * from connection_type where ctype_id = " & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else ctype_id.Text = rs!ctype_id ctype_name.Text = rs!ctype_name rs.MoveNext End If End Sub Private Sub cmdupdate_Click() Dim rs As New ADODB.Recordset rs.Open "select * from connection_type where ctype_id =" & ctype_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!ctype_id = ctype_id.Text rs!ctype_name = ctype_name.Text rs.Update MsgBox "Connection Type Successfully Update", vbInformation Call frmclear Call ctype_Fill End Sub Private Sub Form_Load() Call ctype_Fill End Sub Private Sub ctypeList_ItemClick(ByVal Item As MSComctlLib.ListItem) ctype_id.Text = ctypeList.SelectedItem.Text ctype_name.Text = ctypeList.SelectedItem.SubItems(1) End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then Control.Text = "" End If
Electricity Billing System
Next End Function
Electricity Billing System
Code for Customer Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "customer", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!customer_name = customer_name.Text rs!customer_state = customer_state.Text rs!customer_city = customer_city.Text rs!customer_email = customer_email.Text rs!customer_mobile = customer_mobile.Text rs!customer_address = customer_address.Text rs!customer_address2 = customer_address2.Text If customer_male.Value = True Then rs!customer_gender = 1 If customer_female.Value = True Then rs!customer_gender = 2 rs.Update MsgBox "successfully Added", vbInformation Call frmclear Call List_Fill End Sub Private Sub cmdclear_Click() Call frmclear End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from customer where customer_id =" & customer_id.Text & " ", cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are u sure to delete the record", vbYesNo + vbInformation) If ans = 6 Then rs.Delete Call frmclear Call List_Fill End If End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub cmdfind_Click()
Electricity Billing System
Dim rs As New ADODB.Recordset Dim ID As String ID = InputBox("Enter the ID", "") rs.Open "select * from customer where customer_id = " & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else customer_id.Text = rs!customer_id customer_name.Text = rs!customer_name customer_state.Text = rs!customer_state customer_city.Text = rs!customer_city customer_email.Text = rs!customer_email customer_mobile.Text = rs!customer_mobile customer_address.Text = rs!customer_address customer_address2.Text = rs!customer_address2 If rs!customer_gender = 1 Then customer_male.Value = True Else customer_female.Value = True End If rs.MoveNext End If End Sub Private Sub cmdupdate_Click() On Error Resume Next Dim rs As New ADODB.Recordset rs.Open "select * from customer where customer_id =" & customer_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!customer_id = customer_id.Text rs!customer_name = customer_name.Text rs!customer_state = customer_state.Text rs!customer_city = customer_city.Text rs!customer_email = customer_email.Text
Electricity Billing System
rs!customer_mobile = customer_mobile.Text rs!customer_address = customer_address.Text rs!customer_address2 = customer_address2.Text If customer_male.Value = True Then rs!customer_gender = 1 If customer_female.Value = True Then rs!customer_gender = 2 rs.Update MsgBox "successfully Update", vbInformation Call frmclear Call List_Fill End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then Control.Text = "" End If Next End Function Private Sub Form_Load() Call List_Fill End Sub Public Sub List_Fill() itemListing.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem rs.Open "select * from customer", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True Set o_ListItem = itemListing.ListItems.Add(, , rs!customer_id) o_ListItem.SubItems(1) = rs!customer_name o_ListItem.SubItems(2) = rs!customer_state o_ListItem.SubItems(3) = rs!customer_city o_ListItem.SubItems(4) = rs!customer_email o_ListItem.SubItems(5) = rs!customer_mobile o_ListItem.SubItems(6) = rs!customer_address o_ListItem.SubItems(7) = rs!customer_gender o_ListItem.SubItems(8) = rs!customer_address2
Electricity Billing System
rs.MoveNext Loop rs.Close End Sub Private Sub itemListing_ItemClick(ByVal Item As MSComctlLib.ListItem) customer_id.Text = itemListing.SelectedItem.Text customer_name.Text = itemListing.SelectedItem.SubItems(1) customer_state.Text = itemListing.SelectedItem.SubItems(2) customer_city.Text = itemListing.SelectedItem.SubItems(3) customer_email.Text = itemListing.SelectedItem.SubItems(4) customer_mobile.Text = itemListing.SelectedItem.SubItems(5) customer_address.Text = itemListing.SelectedItem.SubItems(6) customer_address2.Text = itemListing.SelectedItem.SubItems(8) If itemListing.SelectedItem.SubItems(7) = 1 Then customer_male.Value = True Else customer_female.Value = True End If End Sub
Electricity Billing System
Code for Generate Bill Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "bill", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!bill_connection = bill_connection.Text rs!bill_month = bill_month.Text rs!bill_total_units = bill_total_units.Text rs!bill_fix_charge = bill_fix_charge.Text rs!bill_energy_charge = bill_energy_charge.Text rs!bill_electricity_duty = bill_electricity_duty.Text rs!bill_sur_charges = bill_sur_charges.Text rs!bill_total = bill_total.Text rs.Update MsgBox "successfully Added", vbInformation Call frmclear Call List_Fill End Sub Private Sub cmdclear_Click() Call frmclear End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from bill where bill_id =" & bill_id.Text & " ", cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are u sure to delete the record", vbYesNo + vbInformation) If ans = 6 Then rs.Delete Call frmclear Call List_Fill End If End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub cmdfind_Click()
Electricity Billing System
Dim rs As New ADODB.Recordset Dim ID As String ID = InputBox("Enter the ID", "") rs.Open "select * from bill where bill_id =" & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else bill_id.Text = rs!bill_id bill_connection.Text = rs!bill_connection bill_month.Text = rs!bill_month bill_total_units.Text = rs!bill_total_units bill_fix_charge.Text = rs!bill_fix_charge bill_energy_charge.Text = rs!bill_energy_charge bill_electricity_duty.Text = rs!bill_electricity_duty bill_sur_charges.Text = rs!bill_sur_charges bill_total.Text = rs!bill_total rs.MoveNext End If End Sub Private Sub cmdupdate_Click() On Error Resume Next Dim rs As New ADODB.Recordset rs.Open "select * from connection where bill_id =" & bill_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!bill_id = bill_id.Text rs!bill_connection = bill_connection.Text rs!bill_month = bill_month.Text rs!bill_total_units = bill_total_units.Text rs!bill_fix_charge = bill_fix_charge.Text rs!bill_energy_charge = bill_energy_charge.Text rs!bill_electricity_duty = bill_electricity_duty.Text rs!bill_sur_charges = bill_sur_charges.Text rs!bill_total = bill_total.Text rs.Update
Electricity Billing System
MsgBox "successfully Update", vbInformation Call frmclear Call List_Fill End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then Control.Text = "" End If Next End Function Private Sub Command1_Click() Dim billCount As Integer If bill_id.Text = "" Then MsgBox "Select the bill to pay." Else Set rs = New ADODB.Recordset rs.Open "select * from bill_payment WHERE billpay_bill_id = " & billID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = False Then MsgBox "You have already paid this bill." Else Unload Me frmBillPayment.Show End If rs.Close End If End Sub Private Sub Form_Load() Call List_Fill Call fillConnection Call fillMonth If userLevel = "Customer" Then billHeaderTitle.Caption = "Bill Details" Frame1.Visible = False Else Frame3.Visible = False End If
Electricity Billing System
End Sub Public Sub List_Fill() itemListing.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem If userLevel = "Customer" Then rs.Open "select * from bill, conection, customer WHERE bill_connection = connection_id AND connection_customer = customer_id and customer_id = " & userLoginID & " ", cn, adOpenKeyset, adLockOptimistic Else rs.Open "select * from bill", cn, adOpenKeyset, adLockOptimistic End If Do While Not rs.EOF = True Set o_ListItem = itemListing.ListItems.Add(, , rs!bill_id) o_ListItem.SubItems(1) = rs!bill_connection o_ListItem.SubItems(2) = rs!bill_month o_ListItem.SubItems(3) = rs!bill_total_units o_ListItem.SubItems(4) = rs!bill_fix_charge o_ListItem.SubItems(5) = rs!bill_energy_charge o_ListItem.SubItems(6) = rs!bill_electricity_duty o_ListItem.SubItems(7) = rs!bill_sur_charges o_ListItem.SubItems(8) = rs!bill_total rs.MoveNext Loop rs.Close End Sub Private Sub itemListing_ItemClick(ByVal Item As MSComctlLib.ListItem) bill_id.Text = itemListing.SelectedItem.Text bill_connection.Text = itemListing.SelectedItem.SubItems(1) bill_month.Text = itemListing.SelectedItem.SubItems(2) bill_total_units.Text = itemListing.SelectedItem.SubItems(3) bill_fix_charge.Text = itemListing.SelectedItem.SubItems(4) bill_energy_charge.Text = itemListing.SelectedItem.SubItems(5) bill_electricity_duty.Text = itemListing.SelectedItem.SubItems(6) bill_sur_charges.Text = itemListing.SelectedItem.SubItems(7) bill_total.Text = itemListing.SelectedItem.SubItems(8) billID = bill_id.Text End Sub Public Function fillConnection()
Electricity Billing System
Set rs = New ADODB.Recordset rs.Open "select * from conection", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True bill_connection.AddItem rs!connection_id rs.MoveNext Loop rs.Close End Function Public Function fillMonth() bill_month.AddItem "January" bill_month.AddItem "February" bill_month.AddItem "March" bill_month.AddItem "April" bill_month.AddItem "May" bill_month.AddItem "June" bill_month.AddItem "July" bill_month.AddItem "August" bill_month.AddItem "September" bill_month.AddItem "October" bill_month.AddItem "November" bill_month.AddItem "December" End Function
Electricity Billing System
Code for Generate Bill Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "bill", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!bill_connection = bill_connection.Text rs!bill_month = bill_month.Text rs!bill_total_units = bill_total_units.Text rs!bill_fix_charge = bill_fix_charge.Text rs!bill_energy_charge = bill_energy_charge.Text rs!bill_electricity_duty = bill_electricity_duty.Text rs!bill_sur_charges = bill_sur_charges.Text rs!bill_total = bill_total.Text rs.Update MsgBox "successfully Added", vbInformation Call frmclear Call List_Fill End Sub Private Sub cmdclear_Click() Call frmclear End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from bill where bill_id =" & bill_id.Text & " ", cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are u sure to delete the record", vbYesNo + vbInformation) If ans = 6 Then rs.Delete Call frmclear Call List_Fill End If End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub cmdfind_Click()
Electricity Billing System
Dim rs As New ADODB.Recordset Dim ID As String ID = InputBox("Enter the ID", "") rs.Open "select * from bill where bill_id =" & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else bill_id.Text = rs!bill_id bill_connection.Text = rs!bill_connection bill_month.Text = rs!bill_month bill_total_units.Text = rs!bill_total_units bill_fix_charge.Text = rs!bill_fix_charge bill_energy_charge.Text = rs!bill_energy_charge bill_electricity_duty.Text = rs!bill_electricity_duty bill_sur_charges.Text = rs!bill_sur_charges bill_total.Text = rs!bill_total rs.MoveNext End If End Sub Private Sub cmdupdate_Click() On Error Resume Next Dim rs As New ADODB.Recordset rs.Open "select * from connection where bill_id =" & bill_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!bill_id = bill_id.Text rs!bill_connection = bill_connection.Text rs!bill_month = bill_month.Text rs!bill_total_units = bill_total_units.Text rs!bill_fix_charge = bill_fix_charge.Text rs!bill_energy_charge = bill_energy_charge.Text rs!bill_electricity_duty = bill_electricity_duty.Text rs!bill_sur_charges = bill_sur_charges.Text rs!bill_total = bill_total.Text rs.Update
Electricity Billing System
MsgBox "successfully Update", vbInformation Call frmclear Call List_Fill End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then Control.Text = "" End If Next End Function Private Sub Command1_Click() Dim billCount As Integer If bill_id.Text = "" Then MsgBox "Select the bill to pay." Else Set rs = New ADODB.Recordset rs.Open "select * from bill_payment WHERE billpay_bill_id = " & billID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = False Then MsgBox "You have already paid this bill." Else Unload Me frmBillPayment.Show End If rs.Close End If End Sub Private Sub Form_Load() Call List_Fill Call fillConnection Call fillMonth If userLevel = "Customer" Then billHeaderTitle.Caption = "Bill Details" Frame1.Visible = False Else Frame3.Visible = False End If
Electricity Billing System
End Sub Public Sub List_Fill() itemListing.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem If userLevel = "Customer" Then rs.Open "select * from bill, conection, customer WHERE bill_connection = connection_id AND connection_customer = customer_id and customer_id = " & userLoginID & " ", cn, adOpenKeyset, adLockOptimistic Else rs.Open "select * from bill", cn, adOpenKeyset, adLockOptimistic End If Do While Not rs.EOF = True Set o_ListItem = itemListing.ListItems.Add(, , rs!bill_id) o_ListItem.SubItems(1) = rs!bill_connection o_ListItem.SubItems(2) = rs!bill_month o_ListItem.SubItems(3) = rs!bill_total_units o_ListItem.SubItems(4) = rs!bill_fix_charge o_ListItem.SubItems(5) = rs!bill_energy_charge o_ListItem.SubItems(6) = rs!bill_electricity_duty o_ListItem.SubItems(7) = rs!bill_sur_charges o_ListItem.SubItems(8) = rs!bill_total rs.MoveNext Loop rs.Close End Sub Private Sub itemListing_ItemClick(ByVal Item As MSComctlLib.ListItem) bill_id.Text = itemListing.SelectedItem.Text bill_connection.Text = itemListing.SelectedItem.SubItems(1) bill_month.Text = itemListing.SelectedItem.SubItems(2) bill_total_units.Text = itemListing.SelectedItem.SubItems(3) bill_fix_charge.Text = itemListing.SelectedItem.SubItems(4) bill_energy_charge.Text = itemListing.SelectedItem.SubItems(5) bill_electricity_duty.Text = itemListing.SelectedItem.SubItems(6) bill_sur_charges.Text = itemListing.SelectedItem.SubItems(7) bill_total.Text = itemListing.SelectedItem.SubItems(8) billID = bill_id.Text End Sub Public Function fillConnection()
Electricity Billing System
Set rs = New ADODB.Recordset rs.Open "select * from conection", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True bill_connection.AddItem rs!connection_id rs.MoveNext Loop rs.Close End Function Public Function fillMonth() bill_month.AddItem "January" bill_month.AddItem "February" bill_month.AddItem "March" bill_month.AddItem "April" bill_month.AddItem "May" bill_month.AddItem "June" bill_month.AddItem "July" bill_month.AddItem "August" bill_month.AddItem "September" bill_month.AddItem "October" bill_month.AddItem "November" bill_month.AddItem "December" End Function
Electricity Billing System
Code for Login Form Private Sub cmdok_Click() If Trim(txtusername.Text) = "" Then MsgBox "Please Enter the User_Name before enter.", , "Blank Value" txtusername.SetFocus Exit Sub ElseIf Trim(txtpassword.Text) = "" Then MsgBox "Please Enter Password before enter.", , "Blank Value" txtpassword.SetFocus Exit Sub End If Dim rs As New ADODB.Recordset rs.Open "select * from users WHERE user_name = '" & Trim(txtusername.Text) & "'", cn, adOpenKeyset, adLockOptimistic If Trim(txtusername.Text) = Trim(rs!user_name) And Trim(txtpassword.Text) = Trim(rs! user_password) Then Unload Me userLoginID = rs!user_user_id userLevel = rs!user_level frmSplash.Show cn.Close Else MsgBox "Invalid user name" End If End Sub Private Sub cmdexit_Click() End End Sub Private Sub Form_Load() Call db End Sub Private Sub Image1_Click()
Electricity Billing System
End Sub Private Sub tmrblink_Timer() If lblblink.Visible = True Then lblblink.Visible = False ElseIf lblblink.Visible = False Then lblblink.Visible = True End If End Sub
Electricity Billing System
Code for My Payment Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "bill", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!bill_connection = bill_connection.Text rs!bill_month = bill_month.Text rs!bill_total_units = bill_total_units.Text rs!bill_fix_charge = bill_fix_charge.Text rs!bill_energy_charge = bill_energy_charge.Text rs!bill_electricity_duty = bill_electricity_duty.Text rs!bill_sur_charges = bill_sur_charges.Text rs!bill_total = bill_total.Text rs.Update MsgBox "successfully Added", vbInformation Call frmclear Call List_Fill End Sub Private Sub cmdclear_Click() Call frmclear End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from bill where bill_id =" & bill_id.Text & " ", cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are u sure to delete the record", vbYesNo + vbInformation) If ans = 6 Then rs.Delete Call frmclear Call List_Fill End If End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub cmdfind_Click()
Electricity Billing System
Dim rs As New ADODB.Recordset Dim ID As String ID = InputBox("Enter the ID", "") rs.Open "select * from bill where bill_id =" & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else bill_id.Text = rs!bill_id bill_connection.Text = rs!bill_connection bill_month.Text = rs!bill_month bill_total_units.Text = rs!bill_total_units bill_fix_charge.Text = rs!bill_fix_charge bill_energy_charge.Text = rs!bill_energy_charge bill_electricity_duty.Text = rs!bill_electricity_duty bill_sur_charges.Text = rs!bill_sur_charges bill_total.Text = rs!bill_total rs.MoveNext End If End Sub Private Sub cmdupdate_Click() On Error Resume Next Dim rs As New ADODB.Recordset rs.Open "select * from connection where bill_id =" & bill_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!bill_id = bill_id.Text rs!bill_connection = bill_connection.Text rs!bill_month = bill_month.Text rs!bill_total_units = bill_total_units.Text rs!bill_fix_charge = bill_fix_charge.Text rs!bill_energy_charge = bill_energy_charge.Text rs!bill_electricity_duty = bill_electricity_duty.Text rs!bill_sur_charges = bill_sur_charges.Text rs!bill_total = bill_total.Text rs.Update
Electricity Billing System
MsgBox "successfully Update", vbInformation Call frmclear Call List_Fill End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then Control.Text = "" End If Next End Function Private Sub Command1_Click() Dim billCount As Integer If bill_id.Text = "" Then MsgBox "Select the bill to pay." Else Set rs = New ADODB.Recordset rs.Open "select * from bill_payment WHERE billpay_bill_id = " & billID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = False Then MsgBox "You have already paid this bill." Else Unload Me frmBillPayment.Show End If rs.Close End If End Sub Private Sub Form_Load() Call List_Fill End Sub Public Sub List_Fill() itemListing.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem If userLevel = "Customer" Then
Electricity Billing System
rs.Open "select * from bill_payment, bill, conection, customer WHERE billpay_bill_id =bill_id AND bill_connection = connection_id AND connection_customer = customer_id and customer_id = " & userLoginID & " ", cn, adOpenKeyset, adLockOptimistic Else rs.Open "select * from bill_payment, bill, conection, customer WHERE billpay_bill_id =bill_id AND bill_connection = connection_id AND connection_customer = customer_id", cn, adOpenKeyset, adLockOptimistic End If Do While Not rs.EOF = True Set o_ListItem = itemListing.ListItems.Add(, , rs!bill_id) o_ListItem.SubItems(1) = rs!bill_connection o_ListItem.SubItems(2) = rs!bill_month o_ListItem.SubItems(3) = rs!bill_total_units o_ListItem.SubItems(4) = rs!bill_fix_charge o_ListItem.SubItems(5) = rs!bill_energy_charge o_ListItem.SubItems(6) = rs!bill_electricity_duty o_ListItem.SubItems(7) = rs!bill_sur_charges o_ListItem.SubItems(8) = rs!bill_total billID = rs!bill_id rs.MoveNext Loop rs.Close End Sub Private Sub itemListing_ItemClick(ByVal Item As MSComctlLib.ListItem) Unload Me frmBillReceipt.Show End Sub
Electricity Billing System
Code for Rental Slot Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "rental", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!rental_ctype = rental_ctype.Text rs!rental_charge = rental_charge.Text rs!rental_start = rental_start.Text rs!rental_end = rental_end.Text rs.Update MsgBox "successfully Added", vbInformation Call frmclear Call List_Fill End Sub Private Sub cmdclear_Click() Call frmclear End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from rental where rental_id =" & rental_id.Text & " ", cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are u sure to delete the record", vbYesNo + vbInformation) If ans = 6 Then rs.Delete Call frmclear Call List_Fill End If End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub cmdfind_Click() Dim rs As New ADODB.Recordset Dim ID As String ID = InputBox("Enter the ID", "")
Electricity Billing System
rs.Open "select * from rental where rental_id =" & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else rental_id.Text = rs!rental_id rental_ctype.Text = rs!rental_ctype rental_charge.Text = rs!rental_charge rental_start.Text = rs!rental_start rental_end.Text = rs!rental_end rs.MoveNext End If End Sub Private Sub cmdupdate_Click() On Error Resume Next Dim rs As New ADODB.Recordset rs.Open "select * from connection where rental_id =" & rental_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!rental_id = rental_id.Text rs!rental_ctype = rental_ctype.Text rs!rental_charge = rental_charge.Text rs!rental_start = rental_start.Text rs!rental_end = rental_end.Text rs.Update MsgBox "successfully Update", vbInformation Call frmclear Call List_Fill End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then
Electricity Billing System
Control.Text = "" End If Next End Function Private Sub Form_Load() Call List_Fill Call fillConnectionType End Sub Public Sub List_Fill() itemListing.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem rs.Open "select * from rental", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True Set o_ListItem = itemListing.ListItems.Add(, , rs!rental_id) o_ListItem.SubItems(1) = rs!rental_ctype o_ListItem.SubItems(2) = rs!rental_charge o_ListItem.SubItems(3) = rs!rental_start o_ListItem.SubItems(4) = rs!rental_end rs.MoveNext Loop rs.Close End Sub Private Sub itemListing_ItemClick(ByVal Item As MSComctlLib.ListItem) rental_id.Text = itemListing.SelectedItem.Text rental_ctype.Text = itemListing.SelectedItem.SubItems(1) rental_charge.Text = itemListing.SelectedItem.SubItems(2) rental_start.Text = itemListing.SelectedItem.SubItems(3) rental_end.Text = itemListing.SelectedItem.SubItems(4) End Sub Public Function fillConnectionType() Set rs = New ADODB.Recordset rs.Open "select * from connection_type", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True rental_ctype.AddItem rs!ctype_name rs.MoveNext Loop rs.Close End Function
Electricity Billing System
Code form Splash Form Private Sub Timer1_Timer() PG1.Value = PG1.Value + 1 If PG1.Value >= 100 Then Electricity.Show Unload Me End If End Sub
Electricity Billing System
Code for Users Form Private Sub cmdadd_Click() Dim rs As New ADODB.Recordset rs.Open "users", cn, adOpenKeyset, adLockOptimistic rs.AddNew rs!user_name = user_name.Text rs!user_password = user_password.Text rs!user_level = user_level.Text rs!user_user_id = user_user_id.Text rs.Update MsgBox "successfully Added", vbInformation Call frmclear Call List_Fill End Sub Private Sub cmdclear_Click() Call frmclear End Sub Private Sub cmddel_Click() Dim rs As New ADODB.Recordset rs.Open "select * from users where user_id =" & user_id.Text & " ", cn, adOpenKeyset, adLockOptimistic ans = MsgBox("Are u sure to delete the record", vbYesNo + vbInformation) If ans = 6 Then rs.Delete Call frmclear Call List_Fill End If End Sub Private Sub cmdexit_Click() Unload Me End Sub Private Sub cmdfind_Click() Dim rs As New ADODB.Recordset Dim ID As String ID = InputBox("Enter the ID", "")
Electricity Billing System
rs.Open "select * from users where user_id = " & ID & " ", cn, adOpenKeyset, adLockOptimistic If rs.EOF = True Then MsgBox "Record Not Found", vbInformation, "Not Exit" Exit Sub Else user_id.Text = rs!user_id user_name.Text = rs!user_name user_password.Text = rs!user_password user_level.Text = rs!user_level user_user_id.Text = rs!user_user_id rs.MoveNext End If End Sub Private Sub cmdupdate_Click() On Error Resume Next Dim rs As New ADODB.Recordset rs.Open "select * from users where user_id =" & user_id.Text & " ", cn, adOpenKeyset, adLockOptimistic rs!user_id = user_id.Text rs!user_name = user_name.Text rs!user_password = user_password.Text rs!user_level = user_level.Text rs!user_user_id = user_user_id.Text rs.Update MsgBox "successfully Update", vbInformation Call frmclear Call List_Fill End Sub Public Function frmclear() For Each Control In Me If TypeOf Control Is TextBox Then Control.Text = ""
Electricity Billing System
End If Next End Function Private Sub Form_Load() Call List_Fill Call fillLevel End Sub Public Sub List_Fill() itemListing.ListItems.Clear Set rs = New ADODB.Recordset Dim o_ListItem As ListItem rs.Open "select * from users", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True Set o_ListItem = itemListing.ListItems.Add(, , rs!user_id) o_ListItem.SubItems(1) = rs!user_name o_ListItem.SubItems(2) = rs!user_password o_ListItem.SubItems(3) = rs!user_level o_ListItem.SubItems(4) = rs!user_user_id rs.MoveNext Loop rs.Close End Sub Private Sub itemListing_ItemClick(ByVal Item As MSComctlLib.ListItem) user_id.Text = itemListing.SelectedItem.Text user_name.Text = itemListing.SelectedItem.SubItems(1) user_password.Text = itemListing.SelectedItem.SubItems(2) user_level.Text = itemListing.SelectedItem.SubItems(3) user_user_id.Text = itemListing.SelectedItem.SubItems(4) End Sub Public Function fillLevel() user_level.AddItem "Admin" user_level.AddItem "Customer" End Function Private Sub user_level_Click() Set rs = New ADODB.Recordset user_user_id.Clear If user_level.Text = "Customer" Then
Electricity Billing System
user_user_id.Text = "Select Customer ID" rs.Open "select * from customer", cn, adOpenKeyset, adLockOptimistic Do While Not rs.EOF = True user_user_id.AddItem rs!customer_id rs.MoveNext Loop rs.Close End If End Sub
Electricity Billing System
Code form module Public cn As New ADODB.Connection Public userLoginID As String Public userLevel As String Public billID As String Public Function db() cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Priyanka\Documents\ElectricityBilling.accdb;Persist Security Info=False;" cn.Open End Function
Electricity Billing System
10. TESTING AND DEBUGGING: Testing is vital for the success of any software. no system design is ever perfect. Testing is also carried in two
phases.
first
phase
is
during
the
software
engineering that is during the module creation. second phase is after the completion of software. this is system testing which verifies that the whole set of programs hanged together.
10.1 White Box Testing: In this technique, the close examination of the logical parts through the software are tested by cases that exercise species sets of conditions or loops. all logical parts of the software checked once. errors that can be corrected using this technique are typographical errors, logical expressions which should be executed once may be getting executed more than once and error resulting by using wrong controls and loops. When the box testing tests all the independent part within a module a logical decisions on their true and the false side are exercised , all loops and bounds within their operational bounds were exercised and internal
Electricity Billing System
data structure to ensure their validity were exercised once.
10.2 Black Box Testing: This method enables the software engineer to device sets of input techniques that fully exercise all functional requirements for a program. black box testing tests the input, the output and the external data. it checks whether the input data is correct and whether we are getting the desired output.
10.3 Alpha Testing: Acceptance testing is also sometimes called alpha testing. Be spoke systems are developed for a single customer. The alpha testing proceeds until the system developer and the customer agree that the provided system is an acceptable implementation of the system requirements.
10.4 Beta Testing: On the other hand, when a system isto be marked as a software product, another process called beta testing is often conducted. During beta testing, a system is delivered among a number of potential users who agree to use it. The customers then report problems to the
Electricity Billing System
developers. This provides the product for real use and detects errors which may not have been anticipated by the system developers. Testing Approaches: Unit Testing: Each module is considered independently. it focuses on each unit of software as implemented in the source code. it is white box testing. Integration Testing: Integration testing aims at constructing the program structure while at the same constructing tests to uncover errors associated with interfacing the modules. modules are integrated by using the top down approach. Validation Testing: Validation testing was performed to ensure that all the functional and performance requirements are met. System Testing: It is executing programs to check logical changes made in it with intention of finding errors. a system is tested for online response, volume of transaction, recovery from failure etc. System testing is done to ensure that the system satisfies all the user requirements.
Electricity Billing System
11. 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 Rajendra 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.
Electricity Billing System
12. 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 Rajendra 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.
View more...
Comments