Bank Management

71
Bank Management System Table of Content System Analysis Hardware & Software Requirement Overview of Front-end tool (VB) Overview of Back-end tool (MS access) Database Design Data Dictionary DFD System Testing Design Screenshots Coding System Implementation Conclusion Bibliography

description

vb bank project

Transcript of Bank Management

Page 1: Bank Management

Bank Management System

Table of Content

System Analysis

Hardware & Software Requirement

Overview of Front-end tool (VB)

Overview of Back-end tool (MS access)

Database Design

Data Dictionary

DFD

System Testing

Design Screenshots

Coding

System Implementation

Conclusion

Bibliography

SYSTEM ANALYSIS

Page 2: Bank Management

Bank Management SystemSystem development can generally be thought of as having two major

components: System Analysis and System Design.System Design is a process of planning a new system or replace or

complement an existing system. But before the planning can be done, we must thoroughly understand the existing system and determine how computer can be best used to make its operation more effective.

System Analysis is, then, the process of gathering and interpreting facts, diagnosing problems and using the information to recommend improvements to the system. In brief we can say that analysis specifies that what the system should do. Design states how to accomplish the objective.

Identification of Need Identification of the needs is the first step in the analysis phase. Before developing the actual software firstly we need to analysis all the need of the user.

Preliminary Investigation

In this phase we collect all the necessary information related to the requirement of the client.

Feasibility study

A feasibility study is designed to provide an overview of the primary issue related to a business idea. A feasibility study looks at three major areas:

Organizational issue Market issue Financial issue

Three major considerations are involved in the feasibility analysis

Economic Feasibility:

Page 3: Bank Management

Bank Management System Economic feasibility of the project is very important feasibility study that has to done .Cost –Benefit analysis is done for this purpose. Economic feasibility for the Project should be determined before any project under taking as this is important. If the project is not feasible there is no point in carrying on with the project. Cost-Benefit analysis is an important phase as this leads to the decision whether the project is within the budget of the organization. After this analysis it was found that this project is economically feasible.

Technical Feasibility: Technical Feasibility centers on the existing computer system(hardware, software etc) and to what extends it can support the proposed addition. Under this consideration, it is examined that the organization is well equipped with all the required hardware and the software resources like Pentium 4 processor, greater than 512 Mb RAM., Window XP Professional. Having considered all there aspect can the system be developed and implemented.

Behavioral Feasibility By Behavioral Feasibility we find that whether user will accept the change and whether our project is behaviorally feasible or not. Automating the bank Management system will help in computerizing the whole manual system of service and maintaining the information related to the Customer. Feasibility can be done when the system is to be implemented at a particular site.

Conclusion After all the above feasibility studies it is found that bank management software is both economically, technically and behaviorally feasible.

Page 4: Bank Management

Bank Management System

HARDWARE REQUIREMENTS:This section describes what is needed to use the resultant system on

to stand-alone computers. To run the proposed system in Windows Environment following components are needed.

A Pentium computer certified for use with Microsoft Windows A Mouse or a pointing device At least 16 MB of RAM (32 MB suggested for smooth performance A minimum of 25 MB of available disk space to install all the features

of the proposed system 200 MB of available disk space for storage of program, database and

ODBC A minimum of 50 MB swap space in the hard disk A printer (Laser Jet or Ink Jet) to get the report on hard copy

SOFTWARE REQUIREMENTS:

Microsoft Windows XP or higher version The Visual Basic Enterprise Edition 6.0 software The Microsoft Access Crystal Reports 6.7 (Reporting Tool)

Page 5: Bank Management

Bank Management System

OVERVIEW OF VISUAL BASIC

Platform Overview

Visual Basic and Windows EnvironmentVisual Basic is a Windows Programming environment language and is

superior to any other GUI programming as it provides the efficiency of both GUI and Basic.

The windows environment, has a user interface with objects (Visual Basic Program Unit) consisting of forms, dialog boxes, message box, list boxes, command buttons, radio and check buttons etc. to get the interface programming hours and give more comfort to the user, then the simple text interface provided by the DOS.

Advantages of Windows Environment1. Windows lets the programmers to write device independent

programs. This means the programmer is not bothered about the type of peripherals like keyboard, mouse, monitor or printer while writing programs. The appropriate device drivers for auto detection and installation are pre-installed.

2. Windows provides multi-tasking facilities. Different programs can simultaneously be worked upon in different windows and we can easily switch from one window to another window.

3. Windows environment forces the user to divide a complex program into smaller independent modular segments. This makes debugging and maintenance easier.

4. Windows provides a standard user interface. There is a standard menu bar for all types of programs, which the user uses for editing, compiling, executing and printing of program.

Page 6: Bank Management

Bank Management System5. Window’s screen is a graphical one and so text and graphical

images can be combined together and edited appropriately. This enables the facility WYSIWYG i.e. What You See Is What You Get.

Visual Basic 6.0Visual Basic 6 has it’s origin in Basic which was developed round

about the year 1960, when high level languages were just being introduced to the computer community. Microsoft has made it extremely powerful by gearing all it’s good features to the Windows environment. Starting with the version 3 and 4, and then with 6, Visual Basic is now at version 6.

Visual Basic is an Event Driven Language intended to implement Projects or Applications containing multiple tasks in Windows Environment.

What can Visual Basic do for us?Visual Basic can serve as an ideal front-end tool for the client to

interact. It has got connectivity mechanism for all types of databases situated far and wide in a network and so it can cater to the needs of a large body of clients. Using the latest ActiveX technologies, it can integrate the functionality provided by other application like Word, Excel and other Windows. Its Internet capabilities provide easy access to documents and applications across the Internet. Above all it embodies the Object Oriented Technology, which is the cutting edge technology for all the present day developments in the Software World. The final application is a true EXE file and so can be freely distributed.

Why Visual Basic?Visual Basic has emerged as one of the standard Windows

Programming Language and it as become a must for all software people for developing Applications in Visual Environment. In the years since it’s introduction, Visual Basic has revolutionized windows programming and

Page 7: Bank Management

Bank Management Systemfamiliarized us with an Object based event-driven approach to software designing. Visual Basic 5.0 brings Visual Basic to the forefront of the modern programming language by providing an array of sophisticated features that make the language truly Object Oriented and interface it with the latest in the database technology. Over the past years it has become the fastest and easiest way to make robust applications. The VISUAL part refers to the method used to create the Graphical User Interface (GUI). Rather than writing numerous lines of code to describe the appearance and location of elements, we simply drag and drop pre build objects into place on screen. The Basic part refers to the BASIC language. Visual Basic has evolved from the original BASIC language and now contains several hundred statements, functions and keywords, many of which relates directly to the windows GUI. Visual Basic revolutionized the development of the windows program by allowing easy access to what was once the daunting task of maintaining the many controls and messages of the windows environment.

Visual Basic has also provided the first example of a successful component object model for programming in which third party reusable components could be dropped into your programs by providing extra functionality.

Since its introduction Visual Basic has made it easier to become more productive by integrating development, compiling and debugging features into one environment. In a traditional programming environment the code editors, which are used to code program, do not have any code-checking intelligence, if there is any error in source code we do not find it until we compile it. At that point editor performs a syntax check and a logic check. Where as in Visual Basic environment these components are put into one Integrated Development Environment (IDE). As we type the code for the program the editor performs the syntax check immediately to ensure that we had entered

Page 8: Bank Management

Bank Management Systemthe correct code. When we compile the code the IDE performs a logic test and if an error arises, an error flag will notify and the cursor placed in the position in the code where there is an error. Essentially we can code, test and debug in a single environment. Visual Basic has the following features:

Data access features allow us to create databases and front-end applications for most popular database formats.

ActiveX technologies allow one to use the functionality provided by other applications, such as Microsoft Word, Microsoft Excel and other Windows Applications.

Internet capabilities makes it easy to provide access to documents and applications across the Internet from within the applications.

Finished application is a true .EXE file that uses a runtime Dynamic Link Library (DLL) that we can freely distributed

Page 9: Bank Management

Bank Management System

ABOUT MS ACCESS

Microsoft Access is a computer application used to create and manage computer-based databases on desktop computers and/or on connected computers (a network). Microsoft Access can be used for personal information management (PIM), in a small business to organize and manage all data, or in an enterprise to communicate with servers.

Microsoft Access is a powerful program to create and manage your

databases. It has many built in features to assist you in constructing

and viewing your information. Access is much more involved and is a

more genuine database application than other programs such as

Microsoft Works.

This tutorial will help you get started with Microsoft Access and may

solve some of your problems, but it is a very good idea to use the

Help Files that come with Microsoft Access, or go to Microsoft's web

site located at for further assistance.

First of all you need to understand how Microsoft Access breaks down

a database. Some keywords involved in this process are: Database

File, Table, Record, Field, Data-type. Here is the Hierarchy that

Microsoft Access uses in breaking down a database.

Page 10: Bank Management

Bank Management System

Database File: This is your main file that encompasses the entire database and that is saved to your hard-drive or floppy disk. Example) StudentDatabase.mdb Table:A table is a collection of data about a specific topic. There can be multiple tables in a database. Example #1) Students Example #2) Teachers Field:Fields are the different categories within a Table. Tables usually contain multiple fields. Example #1) Student LastName Example #2) Student FirstName Datatypes:Datatypes are the properties of each field. A field only has 1 datatype. FieldName) Student LastName Datatype) Text

This tutorial will help you get started with Microsoft Access and may solve some of your problems, but it is a very good idea to use the Help Files that come with Microsoft Access (or any program you use for that matter).

Page 11: Bank Management

Bank Management System

DATABASE DESIGN

Page 12: Bank Management

Bank Management System

Page 13: Bank Management

Bank Management System

Page 14: Bank Management

Bank Management System

DATA FLOW DIAGRAMAfter observing the present system, the first step in structured system

analysis is to draw a data flow diagram. Graphical description of a system’s data and how the process transforms the data is known as Data Flow Diagram(DFD). The DFD is a way of expressing system requirements in a graphical form. A DFD also known as a “bubble chart”, has the purpose of clarifying system requirements and identifying major transformations that will become programs in system design. So it is the starting phase of point of the design phase that functionally decomposes the requirement specifications down to the lowest level of detail. A DFD consists of a series of bubbles joined by lines. The bubbles represent data transformations and line represents data flows in the system.

To construct data flow diagrams we use four symbols: A square defines a source (originator) or destination of system data. An arrow identifies data flow – data in motion. It is a pipeline

through which the information flows. A circle or a bubble represents a process that transforms incoming

data flows into outgoing data flows. An open rectangle is a data store – data, or a temporary repository

of data. DFD describes what data flow (logical) rather than how they are

processed, so it does not depend on hardware, software, data structure or file organization.

A level of DFD also called as fundamental system model or a context model, represents the entire software elements as a single bubble with input and output data indicated by incoming and outgoing arrows respectively. A context DFD does not show any details but is an overview drawing of the system. This diagram gives very little detail. Thus a more detailed diagram with the process split up into the major procedures is drawn. The successive

Page 15: Bank Management

Bank Management Systemexpansion of DFD from the context diagram to those giving more details is known as leveling of DFD.

DATA DICTIONARY

Data dictionary consists of description of all the data used in the system. It consists of logical characteristics of current systems data stores including name, description, aliases, contents and organization. Data dictionary serves as the basis for identifying database requirements during system design. Data dictionary is a catalog, a depositary of the elements in the system.

The data dictionary is used to manage the details in the large system, to communicate a common meaning for all system elements, to document the future of the system, to locate errors and omission in the system. Data dictionary contains two types of descriptions for the data flowing through the system attributes and tables. Attributes are grouped together to make up the tables. The most fundamental data level is attributes tables are a Set of data items, data related to one another and that collectively describes a component in the system. The description of the attributes consists of data names, data descriptions, aliases, and length and data values. The description of data structures consists sequence relation ship, selection relation ship, iteration relationship and operational relationship.

Page 16: Bank Management

Bank Management System

SYSTEM TESTING

SYSTEM INTEGRATION AND TESTINGThe proposed system is tested parallel with the software effort that

consists of its own phases of analysis, implementation, testing and maintenance

UNIT TESTINGUnit testing comprises the set of tests performed by an individual

programmer prior to integration of the unit into a large system.Coding and debugging -> Unit testing -> Integration testing

There are four categories of tests should be performed.

Functional Testing Performance Testing Stress Testing Structure testing

Function test cases involve exercising the code with the nominal input values for which the expected results are known, as well as boundary values maximum.

Performance testing determines the amount of execution spent in various parts of the unit program throughput, response time and device utilization by the program unit.

Stress tests are those tests designing to initially break the unit.Structure tests are con concerned with exercising the internal logic of a

program and traversing particular execution path.Establishing a test completion criterion is another difficulty encountered

in the unit testing of real programs. Unit testing includes.

Page 17: Bank Management

Bank Management System Statement Converge Branch Converge Logical path Converge

Using Statement Converge programmer attempts to find a set of test cases that will execute each statement in a program at least once.

Using Branch Converge as the test completion criterion the programmer attempts to find a set of cases that will execute each branching statement in each direction at least once.

Logical Path Converge acknowledges that the order in which the branches are executed during a test is an important factor in determining the test outcome.

INTEGRATION TESTING

Integration testing is of three types:Bottom up IntegrationTop down IntegrationSandwich Integration

Bottom up integration testing consists of unit testing followed by system testing. Unit testing has the goal of testing individual modules in the system. Subsystem testing is concerned with verifying the operation of the interfaces between modules in the sub systems.

System Testing is concerned with subtleties in the interfaces, decision logic, and control flow recovery procedure, throughput, capacity and timing characteristics.

Top down integration starts with the main routine and one or two immediately subordinate routines in the system structure. Top down integration requires the use of program stubs to simulate the effect of lower level routines that are called by those being tested.

Top down method has the fallowing advantages:

Page 18: Bank Management

Bank Management System System integration is distributed through the implementation phase.

Modules are integrated as they are developed. Top-level interfaces are tested first and mist often. The top-level routine provides a natural test harness for lower level

routines. Errors are localized to the new modules and interfaces that are being

added.Sandwich integration is predominately top down, but bottom up

techniques are used on some modules and sub system. This mix alleviates many of the problems encountered in pure top down and retains the advantages of the top down integration at the subsystem and system level.

Page 19: Bank Management

Bank Management System

Page 20: Bank Management

Bank Management System

Page 21: Bank Management

Bank Management System

Page 22: Bank Management

Bank Management System

Page 23: Bank Management

Bank Management System

Page 24: Bank Management

Bank Management System

Page 25: Bank Management

Bank Management System

Page 26: Bank Management

Bank Management System

Page 27: Bank Management

Bank Management System

Page 28: Bank Management

Bank Management System

Page 29: Bank Management

Bank Management System

Page 30: Bank Management

Bank Management System

Page 31: Bank Management

Bank Management System

Page 32: Bank Management

Bank Management System

Page 33: Bank Management

Bank Management System

LOGIN FORM

Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As LongPrivate Sub CmdExit_Click()

If MsgBox("Are you sure you want to exit ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else End End If EXITPROCEDURE: Exit SubEnd Sub

Private Sub cmdLogin_Click()On Error GoTo errhandler If txtPassword.Text = "" Or txtUserName.Text = "" Then MsgBox "Please enter User Name and password ", vbExclamation, title txtPassword.SetFocus GoTo EXITPROCEDURE End If txtPassword.Text = LCase(txtPassword.Text) recUsers.MoveFirst Do While Not recUsers.EOF If Trim(recUsers!LoginID) = Trim(txtUserName.Text) And _ Trim(recUsers!Password) = Trim(txtPassword.Text) Then sndPlaySound App.Path & "\Reminder\reminder.wav", &H1 frmMain.status.Panels("Role").Text = Trim(recUsers!Role) frmMain.status.Panels("Name").Text = Trim(txtUserName.Text) UserID = recUsers!EmployeeID UserName = recUsers!LoginID UserPassword = recUsers!Password UserRole = recUsers!Role Call Enable_Menu If UserRole = "Employee" Or UserRole = "Teller" Then

Page 34: Bank Management

Bank Management System

frmMain.mnuReports.Enabled = False frmMain.mnuUser.Enabled = False frmMain.mnuDate.Enabled = False frmMain.mnuCheckBook.Enabled = False End If Unload Me GoTo EXITPROCEDURE End If recUsers.MoveNext Loop If recUsers.EOF Then MsgBox "Invalid password, kindly retry", vbExclamation, title txtPassword.SelStart = 0 txtPassword.SelLength = Len(txtPassword.Text) txtPassword.SetFocus GoTo EXITPROCEDURE End If EXITPROCEDURE: Exit Sub errhandler: MsgBox Err.Description, vbCritical, title GoTo EXITPROCEDUREEnd Sub

Private Sub Form_Load()On Error GoTo errhandler

UserID = "" UserName = "" UserPassword = "" UserRole = "" Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 3 Call ConnectMe cmdLogin.Enabled = False Call Disable_Menu frmMain.status.Panels("Role").Text = "" frmMain.status.Panels("Name").Text = ""

Page 35: Bank Management

Bank Management System

EXITPROCEDURE: Exit Sub errhandler: MsgBox Err.Description, vbCritical, title GoTo EXITPROCEDUREEnd Sub

Private Sub txtPassword_GotFocus()On Error GoTo errhandler recUsers.MoveFirst Do While Not recUsers.EOF If Trim(recUsers!LoginID) = Trim(txtUserName.Text) Then cmdLogin.Enabled = True GoTo EXITPROCEDURE End If recUsers.MoveNext Loop If recUsers.EOF Then MsgBox "Invalid login name, kindly retry", vbExclamation, title txtUserName.SelStart = 0 txtUserName.SelLength = Len(txtUserName.Text) txtUserName.SetFocus GoTo EXITPROCEDURE End If

EXITPROCEDURE: Exit Suberrhandler: MsgBox Err.Description, vbCritical, title GoTo EXITPROCEDUREEnd Sub

Private Sub Disable_Menu() frmMain.mnuFile.Enabled = False frmMain.mnuAdmin.Enabled = False frmMain.mnuTrans.Enabled = False frmMain.mnuReports.Enabled = False frmMain.mnuHelp.Enabled = FalseEnd Sub

Private Sub Enable_Menu()

Page 36: Bank Management

Bank Management System

frmMain.mnuFile.Enabled = True frmMain.mnuAdmin.Enabled = True frmMain.mnuTrans.Enabled = True frmMain.mnuReports.Enabled = True frmMain.mnuHelp.Enabled = True frmMain.mnuUser.Enabled = True frmMain.mnuCheckBook.Enabled = True frmMain.mnuDate.Enabled = True End Sub

Page 37: Bank Management

Bank Management System

ADD CUSTOMER FORM

Public strPath As String

Private Sub cmdBrowse_Click()

With Dialog .ShowOpen Pic.Picture = LoadPicture(.FileName) strPath = .FileTitle End With

End Sub

Private Sub cmdClose_Click()

Unload Me frmCustomers.Show End Sub

Private Sub cmdOk_Click() If txtFirstName.Text = "" Then MsgBox "Please enter the First Name.", vbExclamation, title txtFirstName.SetFocus GoTo EXITPROCEDURE End If If txtLastName.Text = "" Then MsgBox "Please enter the Last Name.", vbExclamation, title txtLastName.SetFocus GoTo EXITPROCEDURE End If If dtpDateOfBirth.Value = Date Then MsgBox "Date of Birth can not be today, Kindly change it", vbExclamation, title dtpDateOfBirth.SetFocus GoTo EXITPROCEDURE End If If dtpDateOfBirth.Value = Date Then MsgBox "Date of Birth can not be in future", vbExclamation, title

Page 38: Bank Management

Bank Management System

dtpDateOfBirth.SetFocus GoTo EXITPROCEDURE End If If cboGender.Text = "" Then MsgBox "Please select the Gender.", vbExclamation, title cboGender.SetFocus GoTo EXITPROCEDURE End If If txtAccountNo.Text = "" Then MsgBox "Please enter the Account Number.", vbExclamation, title txtAccountNo.SetFocus GoTo EXITPROCEDURE End If If cboAccountType.Text = "" Then MsgBox "Please select the Account Type.", vbExclamation, title cboAccountType.SetFocus GoTo EXITPROCEDURE End If If txtBalance.Text = "" Then MsgBox "Please enter the Balance.", vbExclamation, title txtBalance.SetFocus GoTo EXITPROCEDURE End If If blAddCustomer = True Then recCustomers.AddNew recCustomers!FirstName = txtFirstName.Text & "" recCustomers!LastName = txtLastName.Text & "" recCustomers!OfficeAddress = txtOfficeAddress.Text & "" recCustomers!HomeAddress = txtHomeAddress.Text & "" recCustomers!DateOfBirth = dtpDateOfBirth.Value If cboGender.Text = "Male" Then recCustomers!Gender = "M" Else recCustomers!Gender = "F" End If recCustomers!Email = txtEmail.Text & "" recCustomers!OfficePhone = txtOfficePhone.Text & "" recCustomers!HomePhone = txtHomePhone.Text & ""

Page 39: Bank Management

Bank Management System

recCustomers!AccountNumber = txtAccountNo.Text & "" recCustomers!AccountType = cboAccountType.Text & "" recCustomers!ATMCardNumber = txtATM.Text & "" recCustomers!ExpiryDate = dtpExpiryDate.Value & "" recCustomers!Balance = txtBalance.Text & "" recCustomers!AccessCode = txtAccessCode.Text & "" recCustomers!DateOpened = dtpDateOpened recCustomers!CustomerPicture = strPath recCustomers.Update Unload Me frmCustomers.Show End If If blUpdateCustomer = True Then recCustomers.MoveFirst Do While Not recCustomers.EOF If recCustomers!AccountNumber = Trim(txtAccountNo.Text) Then recCustomers!FirstName = txtFirstName.Text & "" recCustomers!LastName = txtLastName.Text & "" recCustomers!OfficeAddress = txtOfficeAddress.Text & "" recCustomers!HomeAddress = txtHomeAddress.Text & "" recCustomers!DateOfBirth = dtpDateOfBirth.Value If cboGender.Text = "Male" Then recCustomers!Gender = "M" Else recCustomers!Gender = "F" End If recCustomers!Email = txtEmail.Text & "" recCustomers!OfficePhone = txtOfficePhone.Text & "" recCustomers!HomePhone = txtHomePhone.Text & "" recCustomers!AccountNumber = txtAccountNo.Text & "" recCustomers!AccountType = cboAccountType.Text & "" recCustomers!ATMCardNumber = txtATM.Text & "" recCustomers!ExpiryDate = dtpExpiryDate.Value & "" recCustomers!Balance = txtBalance.Text & "" recCustomers!AccessCode = txtAccessCode.Text & "" recCustomers!DateOpened = dtpDateOpened recCustomers!CustomerPicture = strPath recCustomers.UpdateBatch adAffectCurrent End If

Page 40: Bank Management

Bank Management System

recCustomers.MoveNext Loop Unload Me frmCustomers.Show End If EXITPROCEDURE: Exit Sub

End Sub

Private Sub Form_Load() Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 3 Call ConnectMeEnd Sub

Private Sub Form_Unload(Cancel As Integer) blAddCustomer = False blUpdateCustomer = FalseEnd Sub

Private Sub txtBalance_KeyPress(KeyAscii As Integer) Call onlyNumbers(KeyAscii)End Sub

Private Sub txtFirstName_KeyPress(KeyAscii As Integer) Select Case KeyAscii Case vbKey0 To vbKey9 KeyAscii = 0 End SelectEnd Sub

Page 41: Bank Management

Bank Management System

CUSTOMER QUERY FORM

Private Sub cboAccountNumber_Click()On Error GoTo errhandler Call DisplayCustomerDetails(cboAccountNumber.Text) txtBalance.Text = Balance txtFirstName.Text = FirstName txtLastName.Text = LastName txtGender.Text = Gender txtAccountType.Text = AccountType cmdOk.Enabled = True txtQuery.Enabled = True txtQuery.SetFocus Pic.Picture = LoadPicture(App.Path & "\pictures\" & CustomerPicture)EXITPROCEDURE: Exit Sub

errhandler: Pic.Picture = LoadPicture(App.Path & "\Pictures\" & "NA.GIF") GoTo EXITPROCEDUREEnd Sub

Private Sub cboAccountNumber_KeyPress(KeyAscii As Integer) Call onlyNumbers(KeyAscii)End Sub

Private Sub cmdClose_Click() If MsgBox("Are you sure you want to cancel ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else Unload Me End If EXITPROCEDURE: Exit SubEnd Sub

Private Sub cmdOk_Click()On Error GoTo errhandler

Page 42: Bank Management

Bank Management System

If txtQuery.Text = "" Then MsgBox "Please enter Query!", vbExclamation, title txtQuery.SetFocus GoTo EXITPROCEDURE End If If MsgBox("Are you sure you want to register the Query ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else recCustomerQuery.AddNew recCustomerQuery!QueryID = autogen recCustomerQuery!AccountNumber = cboAccountNumber.Text recCustomerQuery!Query = Trim(txtQuery.Text) recCustomerQuery!status = "P" recCustomerQuery!DateReceived = dtpDate.Value recCustomerQuery.Update

MsgBox "The Query has been registered Successfully!", vbExclamation, title Unload Me End If EXITPROCEDURE: Exit Sub

errhandler: MsgBox "An Error occurred while sending Customer Query ", vbCritical, title GoTo EXITPROCEDUREEnd Sub

Private Sub Form_Load()On Error GoTo errhandler

Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 3 Call ConnectMe cmdOk.Enabled = False txtQuery.Enabled = False dtpDate.Value = Date Call fill_Combo(cboAccountNumber)

EXITPROCEDURE:

Page 43: Bank Management

Bank Management System

Exit Sub errhandler: MsgBox "An Error occurred while loading the form", vbCritical, title GoTo EXITPROCEDUREEnd Sub

Public Function autogen() As String Dim rec As New Recordset rec.Open "select max(QueryID) from CustomerQuery", con, adOpenDynamic, adLockOptimistic If rec.EOF Then autogen = "Q001" Else autogen = "Q" & Format(Right(Trim(rec(0)), 3) + 1, "000") End If End Function

Page 44: Bank Management

Bank Management System

DEPOSITE FORM

Private Sub cboAccountNumber_Click()On Error GoTo errhandler Call DisplayCustomerDetails(cboAccountNumber.Text) txtBalance.Text = Balance txtFirstName.Text = FirstName txtLastName.Text = LastName txtGender.Text = Gender txtAccountType.Text = AccountType cmdOk.Enabled = True txtAmount.Enabled = True txtAmount.SetFocus Pic.Picture = LoadPicture(App.Path & "\pictures\" & CustomerPicture) EXITPROCEDURE: Exit Sub

errhandler: Pic.Picture = LoadPicture(App.Path & "\Pictures\" & "NA.GIF") GoTo EXITPROCEDUREEnd Sub

Private Sub cboAccountNumber_KeyPress(KeyAscii As Integer) KeyAscii = 0End Sub

Private Sub cmdClose_Click() If MsgBox("Are you sure you want to cancel ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else Unload Me End If EXITPROCEDURE: Exit SubEnd Sub

Private Sub cmdOk_Click()On Error GoTo errhandler

Page 45: Bank Management

Bank Management System

If txtAmount.Text = "" Then MsgBox "Please enter Amount!", vbExclamation, title txtAmount.SetFocus GoTo EXITPROCEDURE End If If MsgBox("Are you sure you want to deposit " & txtAmount.Text & " into Account Number " & cboAccountNumber.Text & " ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else recTrans.AddNew recTrans!TransactionID = autogen recTrans!TransactionDate = dtpDate.Value recTrans!TransactionType = "Deposit" recTrans!TransactionMode = "Cash" recTrans!FromAccountNumber = "" recTrans!ToAccountNumber = cboAccountNumber.Text recTrans!checkNumber = "" recTrans!Amount = txtAmount.Text recTrans!status = "" recTrans.Update con.Execute "Update Customer set Balance = " & CCur(txtBalance.Text) + CCur(txtAmount.Text) & " Where AccountNumber = '" & Trim(cboAccountNumber.Text) & "'" MsgBox "Transaction done successfully.", vbExclamation, title Unload Me End IfEXITPROCEDURE: Exit Sub errhandler: MsgBox "An Error occurred. Transaction was unsuccessfull, Try again", vbCritical, title GoTo EXITPROCEDUREEnd SubPrivate Sub Form_Load()On Error GoTo errhandler Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 3 Call ConnectMe cmdOk.Enabled = False txtAmount.Enabled = False dtpDate.Value = Date Call fill_Combo(cboAccountNumber)

Page 46: Bank Management

Bank Management System

EXITPROCEDURE: Exit Suberrhandler: MsgBox "An Error occurred while loading the form", vbCritical, title GoTo EXITPROCEDUREEnd SubPrivate Sub txtAmount_KeyPress(KeyAscii As Integer) Call onlyNumbers(KeyAscii)End Sub

Public Function autogen() As StringOn Error GoTo errhandler Dim rec As New Recordset rec.Open "select max(TransactionID) from Trans", con, adOpenDynamic, adLockOptimistic If rec.EOF Then autogen = 1 Else autogen = Val(rec(0) + 1) End If EXITPROCEDURE: Exit Function errhandler: 'MsgBox "An Error occurred. Transaction was unsuccessfull, Try again", vbCritical, title GoTo EXITPROCEDUREEnd Function

Page 47: Bank Management

Bank Management System

WITHDRAW FORM

Private Sub cboAccountNumber_Click()On Error GoTo errhandler Call DisplayCustomerDetails(cboAccountNumber.Text) txtBalance.Text = Balance txtFirstName.Text = FirstName txtLastName.Text = LastName txtGender.Text = Gender txtAccountType.Text = AccountType cmdOk.Enabled = True txtAmount.Enabled = True txtAmount.SetFocus Pic.Picture = LoadPicture(App.Path & "\pictures\" & CustomerPicture) EXITPROCEDURE: Exit Sub

errhandler: Pic.Picture = LoadPicture(App.Path & "\Pictures\" & "NA.GIF") GoTo EXITPROCEDUREEnd Sub

Private Sub cboAccountNumber_KeyPress(KeyAscii As Integer) KeyAscii = 0End Sub

Private Sub cmdClose_Click() If MsgBox("Are you sure you want to cancel ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else Unload Me End If EXITPROCEDURE: Exit SubEnd Sub

Private Sub cmdOk_Click()On Error GoTo errhandler

Page 48: Bank Management

Bank Management System

If txtAmount.Text = "" Then MsgBox "Please enter Amount!", vbExclamation, title txtAmount.SetFocus GoTo EXITPROCEDURE End If If MsgBox("Are you sure you want to deposit " & txtAmount.Text & " into Account Number " & cboAccountNumber.Text & " ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else recTrans.AddNew recTrans!TransactionID = autogen recTrans!TransactionDate = dtpDate.Value recTrans!TransactionType = "Deposit" recTrans!TransactionMode = "Cash" recTrans!FromAccountNumber = "" recTrans!ToAccountNumber = cboAccountNumber.Text recTrans!checkNumber = "" recTrans!Amount = txtAmount.Text recTrans!status = "" recTrans.Update con.Execute "Update Customer set Balance = " & CCur(txtBalance.Text) + CCur(txtAmount.Text) & " Where AccountNumber = '" & Trim(cboAccountNumber.Text) & "'" MsgBox "Transaction done successfully.", vbExclamation, title Unload Me End If EXITPROCEDURE: Exit Sub errhandler: MsgBox "An Error occurred. Transaction was unsuccessfull, Try again", vbCritical, title GoTo EXITPROCEDUREEnd Sub

Private Sub Form_Load()

Page 49: Bank Management

Bank Management System

On Error GoTo errhandler

Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 3 Call ConnectMe cmdOk.Enabled = False txtAmount.Enabled = False dtpDate.Value = Date Call fill_Combo(cboAccountNumber)

EXITPROCEDURE: Exit Sub errhandler: MsgBox "An Error occurred while loading the form", vbCritical, title GoTo EXITPROCEDUREEnd SubPrivate Sub txtAmount_KeyPress(KeyAscii As Integer) Call onlyNumbers(KeyAscii)End SubPublic Function autogen() As StringOn Error GoTo errhandler Dim rec As New Recordset rec.Open "select max(TransactionID) from Trans", con, adOpenDynamic, adLockOptimistic If rec.EOF Then autogen = 1 Else autogen = Val(rec(0) + 1) End If EXITPROCEDURE: Exit Function errhandler: 'MsgBox "An Error occurred. Transaction was unsuccessfull, Try again", vbCritical, title GoTo EXITPROCEDUREEnd Function

Page 50: Bank Management

Bank Management System

STOP PAYMENT FORM

Private Sub cmdActivate_Click()On Error GoTo errhandler If txtCheckNo.Text = "" Then MsgBox "Please enter Check Number!", vbExclamation, title txtCheckNo.SetFocus GoTo EXITPROCEDURE End If If Check_StopCheckNo(txtCheckNo.Text, cboAccountNumber.Text) = False Then MsgBox "Check Number has already been activated", vbExclamation, title txtCheckNo.SelStart = 0 txtCheckNo.SelLength = Len(txtCheckNo.Text) txtCheckNo.SetFocus GoTo EXITPROCEDURE End If If MsgBox("Are you sure you want to activate this check ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else con.Execute "Delete from StopPayment WHERE AccountNumber = '" & cboAccountNumber.Text & "' AND CheckNumber = '" & txtCheckNo.Text & "'"

MsgBox "The check has been Successfully Activated!", vbExclamation, title Unload Me End If EXITPROCEDURE: Exit Sub

errhandler: MsgBox "An Error occurred while sending Customer Query ", vbCritical, title GoTo EXITPROCEDUREEnd Sub

Private Sub cmdClose_Click() If MsgBox("Are you sure you want to cancel ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else

Page 51: Bank Management

Bank Management System

Unload Me End If EXITPROCEDURE: Exit SubEnd SubPrivate Sub cboAccountNumber_Click()On Error GoTo errhandler Call DisplayCustomerDetails(cboAccountNumber.Text) txtBalance.Text = Balance txtFirstName.Text = FirstName txtLastName.Text = LastName txtGender.Text = Gender txtAccountType.Text = AccountType cmdOk.Enabled = True cmdActivate.Enabled = True txtCheckNo.Enabled = True txtInstructions.Enabled = True txtInstructions.SetFocus Pic.Picture = LoadPicture(App.Path & "\pictures\" & CustomerPicture) EXITPROCEDURE: Exit Sub

errhandler: Pic.Picture = LoadPicture(App.Path & "\Pictures\" & "NA.GIF") GoTo EXITPROCEDUREEnd Sub

Private Sub cboAccountNumber_KeyPress(KeyAscii As Integer) KeyAscii = 0End Sub

Private Sub cmdOk_Click()On Error GoTo errhandler If txtCheckNo.Text = "" Then MsgBox "Please enter Check Number!", vbExclamation, title txtCheckNo.SetFocus GoTo EXITPROCEDURE End If

Page 52: Bank Management

Bank Management System

If Check_StopCheckNo(txtCheckNo.Text, cboAccountNumber.Text) = True Then MsgBox "Check Number has already been Stopped", vbExclamation, title txtCheckNo.SelStart = 0 txtCheckNo.SelLength = Len(txtCheckNo.Text) txtCheckNo.SetFocus GoTo EXITPROCEDURE End If If MsgBox("Are you sure you want to stop this check ?", 4 + 32, title) = vbNo Then GoTo EXITPROCEDURE Else recStopPayment.AddNew recStopPayment!checkNumber = txtCheckNo.Text recStopPayment!AccountNumber = cboAccountNumber.Text recStopPayment!Instructions = Trim(txtInstructions.Text) recStopPayment.Update

MsgBox "The Check has been registered Successfully!", vbExclamation, title Unload Me End If EXITPROCEDURE: Exit Sub

errhandler: MsgBox "An Error occurred while sending Customer Query ", vbCritical, title GoTo EXITPROCEDUREEnd Sub

Private Sub Form_Load()On Error GoTo errhandler

Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 3 Call ConnectMe cmdOk.Enabled = False cmdActivate.Enabled = False txtCheckNo.Enabled = False txtInstructions.Enabled = False

Page 53: Bank Management

Bank Management System

Call fill_Combo(cboAccountNumber)

EXITPROCEDURE: Exit Sub errhandler: MsgBox "An Error occurred while loading the form", vbCritical, title GoTo EXITPROCEDUREEnd Sub

Page 54: Bank Management

Bank Management System

IMPLEMENTATION

The ultimate goal of the implementation is to write the source code and internal documentation so that it can be verified easily. The code and documentation should be written in a manner that eases debugging, testing and modifications.

During the implementation phase coding, debugging, documentation and testing of the system were carried out module by module. During coding design specifications were translated into the source code. Implementation of the system was done using Visual Basic 6.0/Ms Access 2003 and Windows XP platform.

An effort has been made to satisfy the following goals: Accuracy of results Minimizations of response time Clarity and Simplicity of Code Minimization of hard coding Minimization of the memory used

Various types of errors were discovered while debugging the modules. Proper documentation of each module was done. Each module was separately tested and errors were debugged as per the needs.

Testing of reports was carried out to find the response time. Modifications were made in the reports as per the requirements of the persons for whom the system is designed.

Page 55: Bank Management

Bank Management System

SECURITY MEASURES TAKEN IN SYSTEM

It is already mentioned in that security means protecting the data and programs against accidental or intentional modification or disclosure to unauthorized persons. Our primary goal is always that data entering to a system and program processing the data must be kept secure. In the present system, I have taken the following security measures:

Only authorized persons are allowed to access the system. Password system is used to present unauthorized access.

Changes in data files are recorded along with date and time. This will help the system manager to find out when the file last modified.

Software developed is an integrated module and only executable file of the software is available to the user. Source codes of the program are kept in a safe place.

Page 56: Bank Management

Bank Management System

CONCLUSION

This new software will work on all platforms

Under trial and testing, the project is running very efficiently and seems to be bug free under standard usage. The test data used simulated the actual data to be used. We have included a lot of error validation code which provides interactive message to the user and guides them to make proper entries if some entries are made in invalid format.

We are sure that the user of this project will find it extremely beneficial because the project reduce the time wasted in paper work and manual entries and provides a friendly simply user interface that any one can be comfortable to work with

Page 57: Bank Management

Bank Management System

BIBLIOGRAPHY

Mastering Visual Basic 6 - Evangelos Petroutsos

Visual Basic 6 Black Book - M. M. Blecjkout

An Introduction to Database System - Vipin C. Desai

System Analysis and Design - Elias M. Awad