Вы находитесь на странице: 1из 122

ATM-cum-Banking System

CONTENTS
Acknowledgement Certificate of Approval Declaration About Project Features of ATM Features of Banking Introduction to Visual basic Data ControlsS ActiveX Data Model Microsoft Access What is SDLC Hardware requirements System Security Data Flow Diagrams Data Dictionary Normalized Tables Data Flow Diagrams E-R Diagrams Forms Coding Reports Reports Coding Validations to be Used Limitations of the Project Future Scope of the Project Bibliography 2 3 4 5 7 9 12 15 20 23 26 37 37 40 41 42 48 51 53 68 112 117 121 122 123 124

_______________________________________________________

ATM-cum-Banking System

ACKNOWLEDGEMENT

This project is an acknowledgement in itself to the intensity, drive and technical competence of many individuals who have contributed to it. We list here only few of them. We are extremely thankful to her for devoting his valuable time and imparting knowledge to me. With her able guidance the course up to the completion of software became smooth without much cared hurdles. Lastly, we thank to our parents and friends for the moral boost and support in every sphere. We are thankful to staff members for their assistance and cooperation. Manavdeep Kaur MSc (IT)

ATM-cum-Banking System

CERTIFICATE

This is to be certified that this project entitled Atm-cum-Banking System submitted to Punjab Technical University, Jalandhar, on partial fulfillment of Master of Information Technology is a bonafied piece of project work carried out by Manavdeep Kaur under my guidance and no part there of has been submitted for any other degree .

Supervised By: Miss Sheetal Sahi

ATM-cum-Banking System

DECLARATION

I hereby declare that the work being pressented by me in the dissertation titled ATM-CUM-BANKING SYSTEM in partial fulfillment of MSc (IT) submitted to PUNJAB TECHNICAL UNIVERSITY, Amritsar is an authentic record of our own work carried out by me under the supervision of Miss Sheetal Sahi, The matter embodied in

this dissertation has not been submitted by me or anybody else for the award of any other degree .

Manavdeep Kaur

ATM-cum-Banking System

ABOUT PROJECT

ATM is the Automated Teller Machine .It is also called by the name Any Time Money i.e., a client can withdraw or transfer money at any time of the day. With the advent of computerization any work can be done with much speed and accuracy. One benefit of computerization is the ATM .With ATM one can withdraw money from his account within few minutes as well as not wasting time in standing queues. The ATM card holders account is also secured. The ATM card holder is provided with a Pin number which is only known to him. The unauthorized access to account is not possible. In case client loses his debit card no other person can access the account. The client can transfer the amount to any client account. The client can also pay the bill without going to bill pay office. All these facilities are very beneficial for today person life. The clients who don't have ATM cards are also provided with same facilities in the bank. The administrator that is the person who heads our system creates new account issue ATM cards, edit accounts and close the accounts .The access to system by administrator is also restricted only the person who knows the correct ID and password can access the system. The administrator is responsible to perform all the operations on behalf of the person who don't have ATM card. The

ATM-cum-Banking System

administrator has record of all the transaction performed by the clients. The administrator also keeps the record of balance available in the machine and also updates the amount in the machine. Client can get the information regarding the balance available in his account. He can also get the record of last few transaction performed using mini statement function.

ATM-cum-Banking System

FEATURES OF ATM

ATMs are used to perform various transactions. These transactions are related to money. Various transactions performed by our ATM machine are as follows:
1. Withdrawal-: We can withdraw the money from ATM for this we

need not to fill any forms and also not required to stand in the queues. All we need is our Debit card and must our Pin number. We can withdraw money by two ways-:
a. Easy Cash-: With this facility client need not to fill the amount

to be withdrawn. He is provided with various buttons on the screen on which various amounts like Rs.500,Rs.1000 etc are written and client just click on the button and the amount mentioned on that particular button is withdrawn
b. Fast Cash-: In this client need to enter the amount to be

withdrawn. That particular amount checked against daily limits and available balance in the account of the card holder. If the amount entered is less than these then amount is withdrawn.
2. Bill Pay-: Client is also provided with the facility of bill payment. He

can pay his landline as well as mobile bills. His bill amount is also checked against daily limits and available balance.

ATM-cum-Banking System

3. Transfer-: Client can transfer money from his account to some other

client's account. For this he need to know the account number of the person to whose account he is going to transfer the money provided the amount to be transferred is less than or equal to daily limits and available balance in his account.
4. Mini Statement-: Client can get the report of his last eight days

transactions using the mini statement.


5. Change Pin-: Client can also change his password. This feature adds

to the security of the client account in case his old password is leaked out.

ATM-cum-Banking System

FEATURES OF BANKING

Our system also provides the client with the banking facility which is carried out by the administrator on his behalf. Client can deposit or withdraw money from his account. He can also money from his account through cheques. The features of banking are:

1. Withdraw-: Client can also withdraw amount from his account. In this case the amount to be withdrawn is checked against the available balance in his account. He can withdraw amount by cheques also. 2. Deposit-: Client can also deposit money in his account. The deposited by him is added to the available balance.

Requirement Analysis

In early days when we did not had ATM systems then a person had to wait a long in order to get money. He can only get money withdrawn from banks at office hours. In case there was the emergency he can not get the money withdrawn from the banks quickly. He has to wait. But with the advent of ATM machines this problem is solved to a great

ATM-cum-Banking System

10

extent. Some of the reasons of developing an ATM system are:

1. The client has to fill forms before withdrawing the money then these forms were given to he administrator who compares the amount with the available balance of the account holder and if that much money is available than it is withdrawn. This whole process was very lengthy. 2. The bank has to keep the records of the personal information of clients in the files. This information includes residence, professional and bank references. Adding date to files and then updating the files was very time consuming. 3. The bank also had the tough job of issuing account numbers. Every time a request for a new account is generated bank has to check the previous account numbers being issued to the clients, then it checks for close account numbers so that new number is unique i.e., it is not same as issued account as well as the closed accounts. 4. The bank has to update the user balance after each transaction being performed. This includes a lot of calculations.

ATM-cum-Banking System

11

ADVANTAGES OF PROPOSED SYSTEM (COMPUTERIZATION)

More Accuracy: All the calculations are performed using computers there is less chance of errors as compared to manual calculations. More Security: Different employees have assigned different passwords according to their authority so no unauthorized user can access the information of company for which he is not authorized. Quick Response: Information is not scattered in different files but it is stored at company database so it easily accessible and with in short time. Less paper work: All the information about client is stored in companys database so there is no need to maintain different files for a customer. Helpful for employees: All the employees in different department feel easy to make different kinds of report using software.

ATM-cum-Banking System

12

TOOLS/ENVIRONMENT USED
Visual Basic Front End Tool Ms - Access Back End Tool

Reasons to use these tools:


VISUAL BASIC: 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 interface elements, you simply add pre built objects into place on screen. If youve ever used a drawing program such as paint, you already have most of the skills necessary to create an effective user interface. The BASIC part refers to the BASIC (Beginners ALL-PURPOSE SYMBOLIC INSTRUCTION CODE) language, a language used by more programmers than any other language in the history of computing. Visual Basic has evolved from the original BASIC language and now conations several hundred statements, functions & keywords many of which relate directly to the Windows GUI. Beginners can create useful applications by learning just a few of the keywords, yet the power of the language allows professionals to accomplish anything that can be accomplished using any Visual Basic 6.0 has enlarged as one of the standard windows programming language and it has become must software for all

ATM-cum-Banking System

13

software people for developing Applications in Visual Environment. So, it is one must learn Visual Basic 6.0.

Visual Basics Environment

Tool Box

Form

Properties

Project Explorer

Form Layout Window

ATM-cum-Banking System

14

Visual Basic 6.0 has its 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 its good features to the windows environment. Starting with the version 3.0 and then with 4.0 and then with 6.0. Basic is procedure oriented language intended to implement single tasks in text based environment where as visual basic is an event driven language intended to implement projects or applications containing multiple tasks in windows environment.
1. Event Driven: Visual basic application is event driven. Even

driven mean the user is in control of the application. The user generates a stream of event each time he/she click with the mouse or press a key on the keyboard.
2. Object-Oriented design: Visual basic supports the principal of

object oriented design. This means that you can compartmentalize different aspect of your application as object and develop and test those objects independently of the rest of the application.
3. Windows Application development System: Microsoft has

designed visual basic to be a complete windows application development system. This mean that your visual basic application will look and behave like other windows programs your users might work with.

ATM-cum-Banking System

15

4. ActiveX Control: Visual basic is infinitely extensible through the

use of ActiveX control, dynamically linked library (DLL), and add-ins. You can create these ActiveX control, DLLs, and add-ins with visual basic 6 or buy them off the shelf from a large number of third party software vendors. in fact, one of the major influences driving the rapid adoption if visual basic 6 is the desire of the major development to create ActiveX control . DATA CONTROLS A Textbox control, sometimes called an edit field or edit control, displays information entered at design time entered by the user, or assigned to the control in code at runtime. A Label control is a graphical control you can use to display text that a user can't change directly. A Frame control provides an identifiable grouping for controls. You can also use a Frame to subdivide a form functionallyfor example, to separate groups of Option Button controls. Use a Command Button control to begin, interrupt, or end a process. When chosen, a Command Button appears pushed in and so is sometimes called a push button.

ATM-cum-Banking System

16

A Checkbox control` displays an X when selected; the X disappears when the Checkbox is cleared. Use this control to give the user a True/False or Yes/No option. You can use Checkbox controls in groups to display multiple choices from which the user can select one or more. You can also set the value of a Checkbox programmatically with the Value property. An Option Button control displays an option that can be turned on or off. Usually, Option Button controls are used in an option group to display options from which the user selects only one. You group Option Button controls by drawing them inside a container such as a Frame control, a Picture Box control, or a form A Combo Box control combines the features of a Textbox control and a List Box controlusers can enter information in the text box portion or select an item from the list box portion of the control. A List Box control displays a list of items from which the user can select one or more. If the number of items exceeds the number that can be displayed, a scroll bar is automatically added to the List Box control. Scroll bars provide easy navigation through a long list of items or a large amount of information. They can also provide an analog representation of

ATM-cum-Banking System

17

current position. You can use a scroll bar as an input device or indicator of speed or quantity A Timer control can execute code at regular intervals by causing a Timer event to occur. The Timer control, invisible to the user, is useful for background processing. The Microsoft Flex Grid (MSFlexGrid) control displays and operates on tabular data. It allows complete flexibility to sort, merge, and format tables containing strings and pictures. When bound to a Data control, MSFlexGrid displays read-only data. The DateTimePicker control enables you to provide a formatted date field that allows easy date selection. In addition, users can select a date from a dropdown calendar interface similar to the Month View control A Tab Strip control is like the dividers in a notebook or the labels on a group of file folders. By using a Tab Strip control, you can define multiple pages for the same area of a window or dialog box in your application. A Status Bar control provides a window, usually at the bottom of a parent form, through which an application can display, various kinds of

ATM-cum-Banking System

18

status data. The Status Bar can be divided up into a maximum of sixteen Panel objects that are contained in a Panels collection A Tree View control displays a hierarchical list of Node objects, each of which consists of a label and an optional bitmap. A Tree View is typically used to display the headings in a document, the entries in an index, the files and directories on a disk, or any other kind of information that might usefully be displayed as a hierarchy. A Toolbar control contains a collection of Button objects used to create a toolbar that is associated with an application The Progress Bar control shows the progress of a lengthy operation by filling a rectangle with chunks from left to right. An Image List control contains a collection of List Image objects, each of which can be referred to by its index or key. The Image List control is not meant to be used alone, but as a central repository to conveniently supply other controls with images. The Shape control is a graphical control displayed as a rectangle, square, oval, circle, rounded rectangle, or rounded square. The Enter key is used to go to the next command or text box this key is used to focus on next command button or text box for working.

ATM-cum-Banking System

19

The MSChart control supports the following features:

True three-dimensional representation. Support for all major chart types. Data grid population via random data and data arrays.

The MSChart control is associated with a data grid (Data Grid object). This data grid is a table that holds the data being charted. The data grid can also include labels used to identify series and categories on the chart. The person who designs your chart application fills the data grid with information by inserting data or by importing data from a spreadsheet or array. The SSTab control provides a group of tabs, each of which acts as a container for other controls. Only one tab is active in the control at a time, displaying the controls it contains to the user while hiding the controls in the other tabs.

ATM-cum-Banking System

20

Visual Basic Development Overview

All visual basic developer follows as they prepare programs destined for the users desktop. Each of these steps is described in detail in the section follow: 1. Design and built the user interface. 2. Write code that responds to events. 3. Create and call other procedures as needed. These steps are not symmetrical. some steps take longer than other do, and you will repeated several steps as the initial application design is

refined and enhanced. You will spend most of your development time in the first four steps. The visual basic package and development wizard to package your application for distribution.

The ActiveX Data Object Model

The active data object model is very lean. It is designed to enable programmers to get a set of records from the data source as quickly as possible. Because speed and simplicity is one of the key objectives of ADO, the model is designed to enable you to create a record set object without having to create and navigate numerous other intervening objects along the way.

ATM-cum-Banking System

21

In fact, there are only three key objects in the model: 1. Connection represents the actual database connection. 2. Command is used to execute queries against the data connection. 3. Record set represents the set of records collected from the query issued via the command object. The connection object has a collection child object called Errors to hold any error information associated with the connection. The command object has a child object collection, parameters, to hold any replaceable parameters for queries. The record set also has a child collection object, fields, to hold information about each field in the recordset. Finally, the connection, command, recordset, and fields objects all have a properties collection to hold detailed information about the object. Special ADO Properties ADO model has number of unique properties not encountered with the DAO and RDO models. These properties control how he dataset is generated, the movement of the pointer within the set, and your access rights within the data connection. There are five properties of the ADO model covered here: 1. connection string 2. command text 3. command types

ATM-cum-Banking System

22

4. cursor locations 5. cursor type 6. lock type

Connection String: The ADO model uses the connection string property to indicate the OLE DB provider to use to the data store, along with all the details needed to complete the data connection. A typical connection string has two parts: Provider=<provider name>; Data source=<source detail> Command Text The command text property of the ADO model is the property that holds the actual data request query. The syntax of this data request depends on provider you are using. For example, this request is valid when using the OLE DB jet 3.51 providers: TRANSFORM SUM (deposit) Select title from account holder PIVOT deposit It is important to keep in mind that OLE DB providers do not need to use SQL syntax as their query language.

ATM-cum-Banking System

23

Back End Tool: Ms-Access


Ms-Access is a high performance, distributed Relational Database Management system user for developing

applications and for storing data. It can support a number of users together handle high transaction databases that range in size several hundred megabytes. In Access, database is partitioned in tables comprising of Rows and Columns and relation between different tables can be established, thus making navigating within tables easier. Access is supported on various platforms like IBM mainframes, DEC VAX minicomputers; UNIX based mini computers, Windows NT and several proprietary hardware operating systems. THE DATABASE SCHEMA The database schema is a collection of logical-structure objects, known as schema objects, which define how you see the databases data. These schema objects consist of structures such as tables, clusters, indexes, views etc. Table A table, which consists of a table name and rows and columns of data, is the basic logical storage unit in the Access database. Columns are defined by name and data type .a table is within a table space; often, many tables share a table space.

ATM-cum-Banking System

24

Cluster A cluster is a set of tables physically stored together as

one table that shares a common column. If data in two or more tables is frequently retrieved together based on data in the common column, using a clustered table can be quite efficient. Tables can be accessed separately even though they are part of a clustered table. Because of the structure of the cluster, related data requires much less I/O overhead if accessed simultaneously.
Index An index is a structure created to help retrieve data more

quickly and efficiently .An index is declared on a column or set of columns. Access to the table based on the value of the indexed columns will use the index to locate the table data.
View A view is a window into one or more tables. A view does

not store any data .A view can be queried, updated, and deleted as a table without restriction. Views are typically used to simplify the users perception of data access by providing limited information from one table, or a set of tables.

ATM-cum-Banking System

25

WHAT IS SDLC?

SDLC is an acronym for SYSTEM DEVELOPMENT LIFE CYCLE, a methodology that consists of development activities that have a prescribed order. Once a problem or opportunity for a new system is recognized a request for developing a new system is forwarded for approval. If it is approved, a study is carried out to ensure that the proposed system is feasible. If it is feasible, then the systems requirements are specified and are followed by phases of system analysis, system design, system implementation, and post implementation. A recycling of development may occur again following system evaluation if the system still requires modification or redevelopment. To understand System Development Life Cycle we need to recognize that candidate system that has a life cycle. System analysis and design are keyed to the system life cycle.

ATM-cum-Banking System

26

The System Concept


The term system is derived from the greek word systema, which means an organized relationship among functioning units or the components. A system exists because it is designed to achieve one or objectives A system is an orderly grouping of interdependent component linked together according to a plan to achieve a specific objective. The word component may refer to a physical part, managerial steps, or a subsystem in a multilevel structure. Scholars in various disciplines, who are concerned about the tendency towards the fragmentation of knowledge and the increasing complexity of phenomena, have sought a unifying approach to knowledge. System analysis and design for the information systems were founded in the general systems theory, which emphasizes a close look at all the parts of the system. System analysis here is the application of the system approach to the study and solution of problem using computer based systems. System thinking is integral to the system interrelated interlocking subsystems. The system approach is the way of thinking about the analysis and design of computer based applications. It provides a framework of visualizing the system. System analysis and design focus on system, process and technology.

ATM-cum-Banking System

27

The SDLC is how all systems are created. It is a very powerful technique for creation of applications to solve problems using computer systems. With it help you get closest view of the system which then helps to create it because you are familiar with all sorts of components of the system .It provides a perfect outline for the system using which the system is created successfully.

ATM-cum-Banking System

28

Feasibility study
Depending on the results of initial investigation, the survey is expanded to the more detailed feasibility study. A feasibility study is a test of the system proposal according to its workability impact on the systems organization, ability to meet users need and effective use of resources.

It focuses on three major questions:1.) What are the users demonstrable needs and does a candidate

system meet them?


2.) What resources are available for the candidate system? Is the

problem worth solving?


3.) What is the likely impact of the candidate system on the

organization and how well does it fit on the organizations master plan?

Each of this question must be answered carefully the result of the feasibility study is a formal proposal. This is simply a report, a formal document detailing the nature and scope of proposal solution. The proposal what is known and what needs to be done.

ATM-cum-Banking System

29

SYSTEM DESIGN:

The system design goes through two phases of development: logical and physical. Logical design: The Data Flow Diagrams shows the logical flow of the system it basically describes the input to be derived from the system, the database used and procedures depicting flow of data, all in a format that is understandable to the users. The design covers:
1. Reviews the current physical system its data flows, file contents,

volume, frequency. 2. Prepares output specifications. 3. Prepares input specification.


4. Prepares edit, control and security specification.

5. Specifies the implementation plan. 6. Reviews benefits costs, target dates and system constraint. After logical design physical design follows. This produces the working system by defining the design specifications that tell the programmer exactly what the candidate system must do.

ATM-cum-Banking System

30

Physical design:
Physical system design has: 1. Design the physical system. 2. Plan system implementation 3. Revise the test and implementations plan and specify new hardware and software
4. Update benefits costs, and conversion date and system constraint.

System design is the most creative and challenging pha8se of the system life cycle. The term design describes a final system and the process by which it is developed. It includes the construction of the program and program testing. The first step is to determine how the output is to be produced and in what format. Second, the input data and the master databases have to be designed to meet the requirement of the proposed output. The final report prior to the implementation phase include flow charts, record layout, reports and a workable plan for implementing the candidate system. A schematic way has to be followed so as to achieve beneficial results at the end. The design phase is the transition from users oriented to a programmers database personnel. Various steps involved in system designing are:

ATM-cum-Banking System

31

Problem Definition

Input/output specification Database design Modular program design SOURCE DOCUMENTS Source data are captured initially on original papers or source documents. Source documents initiate a processing cycle as soon as they are entered into the system from keyboard, punch card or diskettes. The may be or may be not retained by the system. Thus, each source document may be evaluated in terms of

1) Its continued use in the candidate system.


2) The extent of modification for the candidate system.

3) Replacement by an alternate source document.

A source document should be logical and easy to understand. Each area should be clearly identified and should specify for the user what to write and where to write.

ATM-cum-Banking System

32

In my case the source documents are data entry forms, where the user enters data i.e. his name and other particulars. Through many input devices are available the data in our software, entry can be done using keyboard and mouse as Input devices.

ONLINE DATA ENTRY There are three major approaches for entering data into the computer:

1) MENUS 2) FORMATTED FORMS 3) PROMPTS

MENUS A menu is a selection list that simplifies data access or entry. They are used in my forms for making it simpler to perform various functions while getting information and also during a test. All the buttons in a form are also provided in a form.

FORMATED FORMS A formatted form is a pre printed form or a template that requests the user to enter data in the appropriate locations. It is a Fill-in-the-blank type form. The form is usually embedded inside a web page on the screen as a

ATM-cum-Banking System

33

unit. The cursor is usually positioned at the first blank. After the user responds by filling in the appropriate information, the cursor automatically moves to the next line and so on until the form is completed. During this, the user may move the cursor up, down, right or left to various locations for making changes in the response. Number of forms are used in our project like student information entry form, questions entry form etc. PROMPTS In prompt, the system displays one enquiry at a time asking the user for response. Prompts are basically used in our software to confirm certain user action. It is not necessary that prompts are always to take information. Prompts can also be used to display certain information to the user as a message. OUTPUT DESIGN Output is the most important and direct source of information to the user. Efficient, intelligible design improves system credibility and helps user in decision-making. Efficient, intelligible design should improve the systems relationships with the user and help in decision making. A major form of output is hard copy from the printer. Print outs are designed around the output requirements of the user. The output devices depend on

ATM-cum-Banking System

34

the factors such as compatibility of the devices with the system, response time, requirements, expected print quality and number of copies needed. The outputs from the computer system are required mainly to bring the results of processing to the user. The output must be designed around the requirement of the user. The output devices are considered keeping in mind factors such as compatibility of the devices are considered keeping in mind factors such as compatibility of the device with the system, response time requirements, expected print quality etc. output to be produces depends on the following factors: a. Type of user and purpose b. Contents of the output c. Format of the output d. Frequency and timing of the output e. Volume of output f. Quality g. Type of stationary The following devices are available for providing computer-based output: a. Printers. b. Computer Output Microfilm (COM) c. Monitors d. Plotters.

ATM-cum-Banking System

35

In addition the print format must also be considered. The printed output should consist of the following features: a. A specific name or title b. Sample of the output layout c. Properly readable d. All pages must have a heading and a page number e. Meaningful labels to columns. f. Summary lines like group totals, page totals, reports totals. TESTING Testing is the major quality control measure employed during software development. Testing is the process of executing a program with the intent of finding an error. No piece of code is completely ready unless it has been fully tested. This stage is very important as at this stage it is verified whether the code developed meet the requirement specifications or not. Moreover, all validations are also checked in the testing stage. Need for Testing: Testing is vital to the success of the system. Testing makes a logical assumption that if all parts of the system are Correct, the goal will be successfully achieved. Inadequate testing or non-testing leads to errors that may not appear until months later. A small system error can conceivably explode into a much larger problem effective testing early In

ATM-cum-Banking System

36

the process translates directly into long-term cost saving From a reduced number of errors. Second reason for testing is its utility as a user-oriented vehicle before implementation. Finally, testing leads to software reliability. Identifying and removing faults, during testing can make the software more reliable. This increases users confidence in the system.

ATM-cum-Banking System

37

HARDWARE REQUIREMENTS

PROCESSOR OPERATING SYSTEM RANDOM ACCESS MEMORY HARD DISK MONITOR KEYBOARD

PENTIUM III or above Win95/98/NT/2000 128 MB or above 10 GB or above VGA 101 Keys

SOFTWARE REQUIREMENT Ms - Access VISUAL BASIC 6.0

SYSTEM SECURITY As computers have become a part of every day life and more and more are concerned about the security and integrity of the information residing in these computers. While developing the system proper measures for maintaining data integrity and controlling security should be taken. This involves built in features, programs and procedures to protect the candidate system from unauthorized access. Also proper measures should

ATM-cum-Banking System

38

be taken so that if data is lost due to some unidentified reasons it must be recovered without much inconvenience. System security can be threatened due to external as well as internal cases. Some of these are: 1. 2. 3. 4. 5. Errors and omissions Disgruntled and dishonest employees Fire Natural disasters External attacks

When huge quantities of information are stored in one database, sensitive data can be easily copied. Information can also be entered directly into the computer without written record or proper authorization and can be changed without trace. A dishonest programmer can bypass control and surreptitiously authorize his/her own transactions.

Control Measures After system security risks have been evaluated the next step is to select the measures those are internal and external to the facility. These measures are generally classified under the following points:
1. Safety from unauthorized users. 2. Recovery in case of crash due to power failure is hard disk crash. 3. Safety from errors and omissions.

ATM-cum-Banking System

39

In the proposed system proper care has been taken of first data accesses that a user may take to the system. Well, nothing can be said or done about disk crashes or system failures. These are unpredictable and inevitable. Errors and omissions are minimum as the user is prompted effectively by the system if he/she commits any mistake.

ATM-cum-Banking System

40

DATA FLOW DIAGRAMS

The Dataflow Diagram (DFD) was first developed by Larry Constantine as a way of expressing system requirements in a graphical from. A DFD also known as a bubble chart has a purpose of clarifying system requirement and identifying major transformation that will become the program in the system design. DFD SYMBOLS
1.

A SQUARE defines a source or destination of system data

2.

An ARROW identifies dataflow or data in motion. It is pipeline

through which information flows.

3. A CIRCLE or a bubble represents a process transform in coming dataflow into outgoing dataflow

ATM-cum-Banking System

41

4. AN OPEN RECTANGLE is a data source or Data at rest.

Data Dictionary
A Data dictionary is a database about databases. It holds the following information about each data element in the databases, it normally includes: Name Type Range of values Access authorization

ATM-cum-Banking System

42

NORMALIZED TABLES

ATM-cum-Banking System

43

Table Name: ADMIN_LOGIN


Field Name ADMIN_ID PASSWORD BAL Datatype TEXT TEXT NUMBER Size 30 10 30

TABLE NAME : ACCOUNT_NO_ISSUE Field Name ACCOUNT_NO FORM_NO NAME FATHER_NAME ADDRESS CONTECT_NO GENDER PINCODE IDENTITY ACC_TYPE ACC_STATUS DATE_OF_ACC_ISSUE EMAIL_ID OCCUPATION FAX Datatype NUMBER NUMBER TEXT TEXT TEXT NUMBER TEXT NUMBER TEXT TEXT TEXT DATE TEXT TEXT TEXT Size 20 10 30 30 100 12 20 10 30 100 10 30 30 30

TABLE NAME: ATM_DETAILS Field Name BRANCH_CODE DAILY_LIMITS DEBIT_CARD_NO PIN DATED ACCOUNT_NO DBTCARD_STATUS EXPIRY_DATE Datatype TEXT NUMBER NUMBER NUMBER DATE NUMBER TEXT DATE Size 20 30 30 10 20 30

ATM-cum-Banking System

44

TABLE NAME: ADMIN_BAL Field Name Datatype ADMIN_ID TEXT DATED DATE TRANS_BAL NUMBER BAL NUMBER TABLE NAME: LOGIN TABLE Field Name USERNAME PASSWORD Datatype TEXT TEXT Size 20 20 30 Size 20 20

TABLE NAME: NEW_ACCOUNT Field Name FORM_NO NAME FATHER_NAME ADDRESS CONTECT_NO GENDER DOB AGE PINCODE IDENTITY NATIONALITY OCCUPATION ACC_TYPE OPENING_BAL DATED STATUS ATM_STATUS EMAIL_ID FAX Datatype NUMBER TEXT TEXT TEXT NUMBER TEXT DATE NUMBER NUMBER TEXT TEXT TEXT TEXT NUMBER DATE TEXT TEXT TEXT NUMBER Size 10 30 30 100 12 10 5 20 30 30 20 30 20 20 20 35 10

TABLE NAME: NOMINEE

ATM-cum-Banking System

45

Field Name FORM_NO NAME ADDRESS RELATION DOB AGE ACC_NO

Datatype NUMBER TEXT TEXT TEXT DATE NUMBER NUMBER

Size 10 30 100 20 10 20

TABLE NAME: TRANSCATIONS Field Name SR_NO DEBIT_CARD ACC_NO DATED TRANSCATION_TYPE AMOUNT AVL_AMOUNT Datatype NUMBER NUMBER NUMBER DATE TEXT NUMBER NUMBER Size 10 30 20 20 30 30

TABLE NAME: BALANCE Field Name ACC_NO DEBIT_CARD BALANCE DATED Datatype NUMBER NUMBER NUMBER DATE Size 20 30 30

ATM-cum-Banking System

46

DATA FLOW DIAGRAMS

ATM-cum-Banking System

47

Administrator Atm_Balance

Login Form Correct

Transact Amount

Admin_Login

Close Account

New Account

Edit Account

New_Account

Account_info

ATM-cum-Banking System

48

Debit Card Holder Atm_Balance

Login Form Correct

Transact Amount

User_Login

Mini Statement

Easy Cash

Fast Cash

Balance

Balance

ATM-cum-Banking System

49

E-R DIAGRAMS

ATM-cum-Banking System

50

Password

Transact money

Administrator

Logs into

MDIFORM

Admin ID

New Account Editing

Pin No

Transact money

Debit Card Holder

Enters

ATM

Card No

Easy Cash Fast Cash

ATM-cum-Banking System

51

FORMS

ATM-cum-Banking System

52

SPLASH FORM

ATM-cum-Banking System

53

FRONT FORM

ATM-cum-Banking System

54

ADMIN_LOGIN FORM

ATM-cum-Banking System

55

MDI FORM

ATM-cum-Banking System

56

NEW ACCOUNT FORM

ATM-cum-Banking System

57

ACCOUNT_ISSUE FORM

ATM-cum-Banking System

58

ATM_ISSUE FORM

ATM-cum-Banking System

59

FRM_EDIT FORM

ATM-cum-Banking System

60

FRM_ATMREFILL FORM

ATM-cum-Banking System

61

FRM ATM_LOGIN FORM

ATM-cum-Banking System

62

ATM_MENU FORM

ATM-cum-Banking System

63

FRM_EASYCASH FORM

ATM-cum-Banking System

64

FRM_FASTCASH FORM

ATM-cum-Banking System

65

FRM_BALANCE FORM

ATM-cum-Banking System

66

CODING

ATM-cum-Banking System

67

Acc_Issue_No Private Sub cmd_acc_Click() If Rec2.EOF Then txt_acc.Text = 1002001101 Else Rec2.MoveLast txt_acc.Text = Rec2(0) + 1 End If cmd_acc.Visible = False Cmd_Save.Visible = True End Sub

Private Sub CMD_CANCAL_Click() Unload Me End Sub

Private Sub Cmd_Save_Click() conn.Execute ("insert into account_no_issue values(" & txt_acc.Text & "," & txt_form.Text & ",'" & txt_name.Text & "','" & txt_father.Text & "','" & txt_address.Text & "'," & txt_contect.Text & ",'" & txt_gender.Text & "'," & txt_pincode.Text & ",'" & txt_identity.Text & "','" & txt_AcType.Text & "','working','" & Format(txt_dateissue.Text,

ATM-cum-Banking System

68

"DD-MMM-YYYY")

&

"','"

&

txt_email.Text

&

"','"

&

txt_occupation.Text & "'," & txt_fax.Text & ")") conn.Execute ("Update nominee set acc_no=" & txt_acc.Text & " where form_no=" & txt_form.Text) MsgBox "saved account" atm_issue.txt_name.Text = txt_name.Text atm_issue.txt_AcType.Text = txt_AcType.Text atm_issue.Txt_OpenBal.Text = Txt_OpenBal.Text atm_issue.txt_date.Text = txt_date.Text atm_issue.Txt_Frm.Text = txt_form.Text atm_issue.txt_acc.Text = txt_acc.Text atm_issue.Show Unload Me End Sub

Sub fill_fields() txt_form.Text = Rec(0) txt_name.Text = Rec(1) txt_father.Text = Rec(2) txt_address.Text = Rec(3) txt_contect.Text = Rec(4) txt_gender.Text = Rec(5)

ATM-cum-Banking System

69

txt_dob.Text = Format(Rec(6), "DD-MMM-YYYY") Txt_Age.Text = Rec(7) txt_pincode.Text = Rec(8) txt_identity.Text = Rec(9) txt_nationality.Text = Rec(10) txt_occupation.Text = Rec(11) txt_AcType.Text = Rec(12) Txt_OpenBal.Text = Rec(13) txt_date.Text = Format(Rec(14), "DD-MMM-YYYY") txt_email.Text = Rec(17) txt_fax.Text = Rec(18) txt_namenom.Text = Rec1(1) txt_add.Text = Rec1(2) txt_relation.Text = Rec1(3) txt_dobnom.Text = Format(Rec1(4), "DD-MMM-YYYY") txt_agenom.Text = Rec1(5)

End Sub

Private Sub Form_Load() Call Make_Connection If Rec.State = adStateOpen Then Rec.close

ATM-cum-Banking System

70

Rec.Source = "Select * from new_account where status='Request'" Rec.Open If Rec1.State = adStateOpen Then Rec1.close Rec1.Source = "Select * from nominee" Rec1.Open If Rec2.State = adStateOpen Then Rec2.close Rec2.Source = "Select * from account_no_issue" Rec2.Open txt_dateissue.Text = Format(Date, "DD-MMM-YYYY") cmd_acc.Visible = True Cmd_Save.Visible = False Call Fill_COmbo End Sub

Private Sub txt_form_Change() If Not txt_form.Text = "" Then Rec.Filter = "form_no= " & txt_form.Text If Rec.EOF Then MsgBox ("Invalied Form No.") Else Rec1.Filter = " form_no=" & txt_form.Text If Rec1.EOF Then

ATM-cum-Banking System

71

MsgBox ("invalied form no") Else Call fill_fields End If End If End If End Sub

Private Sub txt_form_Click() Rec.Filter = "form_no= " & txt_form.Text If Rec.EOF Then MsgBox ("Invalied Form No.") Else Rec1.Filter = " form_no=" & txt_form.Text If Rec1.EOF Then MsgBox ("invalied form no") Else Call fill_fields End If End If End Sub Sub Fill_COmbo()

ATM-cum-Banking System

72

Rec.Requery txt_form.Clear If Not Rec.EOF Then Rec.MoveFirst While Not Rec.EOF txt_form.AddItem (Rec(0)) Rec.MoveNext Wend End If End Sub

ATM-cum-Banking System

73

Admin_Login Form Dim i As Integer Private Sub Cmd_Cancel_Click() frm_front.Show Unload Me End Sub

Private Sub CMD_ENTER_Click()

If txt_name.Text = "" Or TXT_PASS.Text = "" Then MsgBox "Please Fill Admin ID And PassWord", vbCritical + vbOKOnly Else If UCase(txt_name.Text) = UCase(Rec(0)) And

UCase(TXT_PASS.Text) = UCase(Rec(1)) Then MDIbank.Show Unload Me Unload frm_front Else MsgBox "Admin ID And PassWord Missmatch", vbCritical + vbOKOnly TXT_PASS.Text = "" txt_name.Text = ""

ATM-cum-Banking System

74

txt_name.SetFocus i=i+1 End If End If If i = 3 Then MsgBox " Sorry You Are Not Valid Administrator", vbCritical + vbOKOnly End End If End Sub

Private Sub Form_Load() Call Make_Connection If Rec.State = adStateOpen Then Rec.close Rec.Source = "Select * from ADMIN_LOGIN" Rec.Open i=0 End Sub

ATM-cum-Banking System

75

Atm_Issue Form Private Sub Command1_Click() conn.Execute ("INSERT INTO ATM_DETIALS VALUES('" &

TXT_BRCODE.Text & "'," & txt_DAILY.Text & "," & Txt_Debit.Text & "," & TXT_PIN.Text & ",'" & Format(txt_date.Text, "DD-MMMYYYY") & "'," & txt_acc.Text & ",'Working','" &

Format(txt_expiry.Text, "DD-MMM-YYYY") & "')") conn.Execute ("insert into balance values(" & txt_acc.Text & "," & Txt_Debit.Text & "," & Txt_OpenBal.Text & ",'" &

Format(txt_date.Text, "DD-MMM-YYYY") & "')") conn.Execute ("Update new_account set

status='Issued',atm_status='Issued' where form_no=" & Txt_Frm.Text) MsgBox "ATM ISSUE" AccNo = txt_acc.Text AccountReport.Show Unload Me End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Command3_Click() If Rec3.EOF Then

ATM-cum-Banking System

76

Txt_Debit.Text = "1060210000105001" Else Rec3.MoveLast Txt_Debit.Text = Rec3(2) + 1 End If txt_expiry.Text = Format((Day(Date) & "-" & Month(Date) & "-" & (Year(Date) + 10)), "DD-MMM-YYYY") End Sub

Private Sub Form_Load() txt_date.Text = Format(Date, "DD-MMM-YYYY") End Sub

ATM-cum-Banking System

77

Atm_Login Form Dim i As Integer Private Sub Command1_Click() Rec.Requery If TXT_DBT.Text = "" And TXT_PIN.Text = "" Then MsgBox "Please Fill Debit Card No ANd PIN No.", vbCritical + vbOKOnly Else Rec.Filter = "debit_card_no=" & TXT_DBT.Text If Not Rec.EOF Then If Rec(3) = TXT_PIN.Text Then DbtNo = TXT_DBT.Text AccNo = Rec(5) MDIbank.Show MDIbank.admin.Visible = False MDIbank.trans.Visible = False MDIbank.abu.Visible = False frm_atm_menu.Show Unload Me Unload frm_front Else MsgBox "Invalid PIN Code", vbCritical + vbOKOnly

ATM-cum-Banking System

78

i=i+1 TXT_PIN.Text = "" End If Else MsgBox "Invalid Debit Card NO.", vbCritical + vbOKOnly TXT_DBT.Text = "" TXT_PIN.Text = "" i=i+1 End If End If If i = 3 Then MsgBox "Invalid Debit Card No And PIN No.", vbCritical + vbOKOnly End End If End Sub Private Sub Command2_Click() Unload Me End Sub

Private Sub Form_Load() i=0 Call Make_Connection

ATM-cum-Banking System

79

If Rec.State = adStateOpen Then Rec.close Rec.Source = "SELECT * FROM atm_detials where

dbtcard_Status='Working'" Rec.Open End Sub

ATM-cum-Banking System

80

Balance Form Dim atm As Long, aa As Integer Private Sub Command1_Click() Unload Me frm_atm_menu.Show End Sub Private Sub Form_Load() Txt_Bal.Text = "" Call Make_Connection If Rec.State = adStateOpen Then Rec.close Rec.Source = "SELECT * FROM BALANCE WHERE

DEBIT_CARD=" & DbtNo Rec.Open Txt_Bal.Text = Rec(2) Call Trans_Incr conn.Execute ("Insert into transactions values(" & TransNo & "," & DbtNo & "," & AccNo & ",'" & Format(Date, "DD-MMM-YYYY") & "','Balance Check',0," & Rec(2) & ")") aa = MsgBox("Do You Want To Slip", vbExclamation + vbOKCancel) If aa = 1 Then TransactionSlip.Show End If

ATM-cum-Banking System

81

End Sub

ATM-cum-Banking System

82

Easy_Cash Form Dim amt As Long Private Sub Command1_Click() If txt_amount.Text = "" Then MsgBox "PLEASE FILL AMOUNT" ElseIf Rec(2) < Val(txt_amount.Text) Then MsgBox "invalid balance", vbCritical + vbOKOnly ElseIf txt_amount.Text < 100 Then MsgBox "invalid amount", vbCritical + vbOKOnly ElseIf txt_amount.Text > 15000 Then MsgBox "invalid amount", vbCritical + vbOKOnly Else amt = Rec(2) - Val(txt_amount.Text) conn.Execute ("update balance set balance=" & amt & ", dated='" & Format(Date, "DD-MMM-YYYY") & "' where debit_card=" & DbtNo) atmbal = atmbal - Val(txt_amount.Text) conn.Execute ("Update admin_login set bal=" & atmbal)

Call Trans_Incr conn.Execute ("Insert into transactions values(" & TransNo & "," & DbtNo & "," & AccNo & ",'" & Format(Date, "DD-MMM-YYYY") & "','Withdraw'," & txt_amount.Text & "," & amt & ")")

ATM-cum-Banking System

83

TransactionSlip.Show End If End Sub

Private Sub Command2_Click() Unload Me End Sub

Private Sub Form_Load() Call Make_Connection If Rec.State = adStateOpen Then Rec.close Rec.Source = "SELECT * FROM BALANCE where debit_card=" & DbtNo Rec.Open End Sub

ATM-cum-Banking System

84

Fast_Cash Form Dim amt As Long Private Sub Command1_Click(Index As Integer) Call check(Command1(Index).Caption) End Sub Private Sub Command7_Click() frm_atm_menu.Show Unload Me End Sub Private Sub Form_Load() Call Make_Connection If Rec.State = adStateOpen Then Rec.close Rec.Source = "SELECT * FROM BALANCE where debit_card=" & DbtNo Rec.Open

End Sub Sub check(a As Integer) Rec.Requery If Rec(2) < a Then MsgBox "invalid balance" Else

ATM-cum-Banking System

85

amt = Rec(2) - a

conn.Execute ("update balance set balance=" & amt & ", dated='" & Format(Date, "DD-MMM-YYYY") & "' where debit_card=" & DbtNo) atmbal = atmbal - a conn.Execute ("Update admin_login set bal=" & atmbal) Call Trans_Incr conn.Execute ("Insert into transactions values(" & TransNo & "," & DbtNo & "," & AccNo & ",'" & Format(Date, "DD-MMM-YYYY") & "','Withdraw'," & a & "," & amt & ")") TransactionSlip.Show End If End Sub

ATM-cum-Banking System

86

Frm_AtmMenu Form Private Sub cmd_about_Click() frmAbout.Show End Sub

Private Sub CMD_BAL_Click() BALANCE.Show End Sub

Private Sub CMD_change_Click() Frm_ChangePIN.Show End Sub

Private Sub cmd_easy_Click() EASY_CASH.Show End Sub

Private Sub CMD_exit_Click() End End Sub

Private Sub CMD_fast_Click()

ATM-cum-Banking System

87

FAST_CASH.Show End Sub

Private Sub CMD_mini_Click() MiniBank.Show End Sub

Private Sub cmd_trans_Click() frm_transferamount.Show End Sub

Private Sub Form_Load() Timer1.Enabled = True End Sub

Private Sub Timer1_Timer() Ist.Visible = True IInd.Visible = False IIIrd.Visible = False Timer2.Enabled = True Timer3.Enabled = False End Sub

ATM-cum-Banking System

88

Private Sub Timer2_Timer() IInd.Visible = True Ist.Visible = False IIIrd.Visible = False Timer1.Enabled = False Timer3.Enabled = True End Sub

Private Sub Timer3_Timer() IIIrd.Visible = True Ist.Visible = False IInd.Visible = False Timer1.Enabled = True Timer2.Enabled = False End Sub

ATM-cum-Banking System

89

Frm_Atmrefill Form

Private Sub Cmd_Save_Click() conn.Execute ("Insert into admin_bal values('" & ADMINID & "','" & Format(Date, "DD-MMM-YYYY") & "'," & Txt_TransAmt.Text & "," & TxtBalance.Text & ")") Rec.Requery conn.Execute ("Update admin_login set bal=" & (Rec(2) +

Val(Txt_TransAmt.Text))) Adodc1.RecordSource = "Select * from admin_bal" Adodc1.Refresh End Sub

Private Sub Command2_Click() Unload Me End Sub

Private Sub Form_Load() Call Make_Connection If Rec.State = adStateOpen Then Rec.close Rec.Source = "SELECT * FROM ADMIN_LOGIN" Rec.Open

ATM-cum-Banking System

90

TxtBalance.Text = Rec(2) Adodc1.ConnectionString =

"Provider=MSDAORA.1;Password=tiger;User ID=scott;Persist Security Info=True" Adodc1.CommandType = adCmdText Adodc1.RecordSource = "Select * from admin_bal" Adodc1.Refresh End Sub

ATM-cum-Banking System

91

Frm_Edit Form

Private Sub Cmd_AccClose_Click() conn.Execute ("UPDATE account_no_issue SET FORM_NO=" & txt_form.Text & ",NAME='" & txt_name.Text & "',FATHER_NAME= '" & txt_father.Text & "',ADDRESS= '" & txt_address.Text &

"',CONTECT_NO= " & txt_contect.Text & ",GENDER= '" & txt_gender.Text ",IDENTITY='" txt_AcType.Text & & "',PINCODE= txt_identity.Text & "', " & & txt_pincode.Text "',ACC_TYPE= '" & & &

DATE_OF_ACC_ISSUE='"

Format(txt_dateissue.Text, "DD-MMM-YYYY") & "',EMAIL_ID= '" & txt_email.Text & "',QUCCUPTION='" & txt_occupation.Text &

"',FAX='" & txt_fax.Text & "' WHERE ACCOUNT_NO=" & txt_acc.Text & " ") conn.Execute ("UPDATE & & NOMINEE SET & & & NAME='" txt_add.Text "',DOB='" "',AGE=" & & & &

txt_namenom.Text "',RELATION='"

"',ADDRESS='" txt_relation.Text

Format(txt_dobnom.Text,

"DD-MMM-YYYY")

txt_agenom.Text & " WHERE ACC_NO=" & txt_acc.Text & " ")

End Sub

ATM-cum-Banking System

92

Private Sub CMD_CANCAL_Click() Unload Me End Sub

Private Sub Command1_Click() Rec2.Filter = "account_no= " & txt_acc.Text If Rec2.EOF Then MsgBox ("Invalied account_no.") Else Call fill_fields End If End Sub

Private Sub Form_Load() Call Make_Connection If Rec.State = adStateOpen Then Rec.close Rec.Source = "Select * from atm_detials" Rec.Open If Rec1.State = adStateOpen Then Rec1.close Rec1.Source = "Select * from nominee" Rec1.Open If Rec2.State = adStateOpen Then Rec2.close

ATM-cum-Banking System

93

Rec2.Source = "Select * from account_no_issue" Rec2.Open

End Sub Sub fill_fields() txt_form.Text = Rec2(1) txt_name.Text = Rec2(2) txt_father.Text = Rec2(3) txt_address.Text = Rec2(4) txt_contect.Text = Rec2(5) txt_gender.Text = Rec2(6) txt_pincode.Text = Rec2(7) txt_identity.Text = Rec2(8) txt_occupation.Text = Rec2(13) txt_AcType.Text = Rec2(9) txt_dateissue.Text = Format(Rec2(11), "DD-MMM-YYYY") txt_email.Text = Rec2(12) txt_fax.Text = Rec2(13) txt_namenom.Text = Rec1(1) txt_add.Text = Rec1(2) txt_relation.Text = Rec1(3) txt_dobnom.Text = Format(Rec1(4), "DD-MMM-YYYY")

ATM-cum-Banking System

94

txt_agenom.Text = Rec1(5) TXT_BRCODE.Text = Rec(0) txt_DAILY.Text = Rec(1) Txt_Debit.Text = Rec(2)

End Sub

ATM-cum-Banking System

95

Frm_Front Form

Private Sub Command1_Click() ADMIN_LOGIN.Show End Sub Private Sub Command2_Click() ATM_LOGIN.Show End Sub Private Sub Command3_Click() End End Sub

Private Sub Form_Load() Me.Left = 2775 Me.Top = 2610 End Sub

ATM-cum-Banking System

96

Frm_NewAccount Form

Private Sub Command1_Click() If txt_name.Text = "" Then MsgBox "fill_ID", vbCritical txt_name.SetFocus ElseIf txt_father.Text = "" Then MsgBox "fill_ID", vbCritical txt_father.SetFocus ElseIf txt_address.Text = "" Then MsgBox "fill_ID", vbCritical txt_address.SetFocus ElseIf txt_occupation.Text = "" Then MsgBox "fill_ID", vbCritical txt_occupation.SetFocus ElseIf txt_fax.Text = "" Then MsgBox "fill_ID", vbCritical txt_fax.SetFocus ElseIf Txt_Age.Text = "" Then MsgBox "fill_ID", vbCritical Txt_Age.SetFocus

ATM-cum-Banking System

97

ElseIf txt_email.Text = "" Then MsgBox "fill_ID", vbCritical txt_email.SetFocus ElseIf txt_contect.Text = "" Then MsgBox "fill_ID", vbCritical txt_contect.SetFocus ElseIf cmb_gender.Text = "" Then MsgBox "fill_ID", vbCritical cmb_gender.SetFocus ElseIf txt_pincode.Text = "" Then MsgBox "fill_ID", vbCritical txt_pincode.SetFocus ElseIf txt_identity.Text = "" Then MsgBox "fill_ID", vbCritical txt_identity.SetFocus ElseIf txt_nationality.Text = "" Then MsgBox "fill_ID", vbCritical txt_nationality.SetFocus ElseIf txt_dob.Text = "" Then MsgBox "fill_ID", vbCritical txt_dob.SetFocus ElseIf txt_namenom.Text = "" Then

ATM-cum-Banking System

98

MsgBox "fill_ID", vbCritical txt_namenom.SetFocus ElseIf txt_add.Text = "" Then MsgBox "fill_ID", vbCritical txt_add.SetFocus ElseIf txt_dobnom.Text = "" Then MsgBox "fill_ID", vbCritical txt_dobnom.SetFocus ElseIf txt_agenom.Text = "" Then MsgBox "fill_ID", vbCritical txt_agenom.SetFocus ElseIf txt_relation.Text = "" Then MsgBox "fill_ID", vbCritical txt_relation.SetFocus ElseIf Cmb_AcType.Text = "" Then MsgBox "fill_ID", vbCritical Cmb_AcType.SetFocus ElseIf Txt_OpenBal.Text = "" Then MsgBox "fill_ID", vbCritical Txt_OpenBal.SetFocus Else conn.Execute ("insert into new_account values(" & txt_form.Text & ",'"

ATM-cum-Banking System

99

& txt_name.Text & "','" & txt_father.Text & "','" & txt_address.Text & "'," & txt_contect.Text & ",'" & cmb_gender.Text & "','" & Format(txt_dob.Text, "DD-MMM-YYYY") & "'," & Txt_Age.Text & "," & txt_pincode.Text & & & ",'" "','" "'," & & & txt_identity.Text txt_occupation.Text Txt_OpenBal.Text & & & "','" "','" ",'" & & &

txt_nationality.Text Cmb_AcType.Text

Format(txt_date.Text, "DD-MMM-YYYY") & "','Request','Request','" & txt_email.Text & "'," & txt_fax.Text & ")") conn.Execute ("insert into nominee values(" & txt_form.Text & ",'" & txt_namenom.Text & "','" & txt_add.Text & "','" & txt_relation.Text & "','" & Format(txt_dobnom.Text, "DD-MMM-YYYY") & "'," & txt_agenom.Text & ",0)") MsgBox ("saved") Call clear_feild Call form_inc End If End Sub Sub form_inc() Rec.Requery If Rec.EOF Then txt_form.Text = 101 Else

ATM-cum-Banking System

100

Rec.MoveLast txt_form.Text = Rec(0) + 1 End If End Sub Sub clear_feild() txt_name.Text = "" txt_father.Text = "" txt_address.Text = "" txt_contect.Text = "" cmb_gender.Text = "" txt_dob.Text = "" Txt_Age.Text = "" txt_pincode.Text = "" txt_identity.Text = "" txt_nationality.Text = "" txt_occupation.Text = "" Cmb_AcType.Text = "" Txt_OpenBal.Text = "" txt_email.Text = "" txt_fax.Text = "" txt_namenom.Text = "" txt_add.Text = ""

ATM-cum-Banking System

101

txt_relation.Text = "" txt_dobnom.Text = "" txt_dobnom.Text = "" txt_agenom.Text = "" End Sub

Private Sub Command2_Click() Unload Me End Sub

Private Sub Form_Load() Call Make_Connection If Rec.State = adStateOpen Then Rec.close Rec.Source = "Select * from new_account order by form_no" Rec.Open txt_date.Text = Format(Date, "DD-MMM-YYYY") Call form_inc End Sub

ATM-cum-Banking System

102

Frm_Splash Form

Private Sub Form_Load() Me.Left = 2985 Me.Top = 3000 End Sub

Private Sub Timer1_Timer() ProgressBar1.Value = ProgressBar1.Value + 1 If ProgressBar1.Value >= 98 Then frm_front.Show Unload Me End If End Sub

ATM-cum-Banking System

103

FrmAbout Form

Private Sub Form_Load() Me.Left = 4500 Me.Top = 3345 End Sub

ATM-cum-Banking System

104

MdiBank Form

Private Sub accbal_Click() Frm_ATMTrans.Show End Sub

Private Sub accissue_Click() acc_issue_no.Show End Sub

Private Sub atmbal_Click() Frm_ATMBalance.Show End Sub

Private Sub atmtran_Click() Frm_ATMRefill.Show End Sub

Private Sub close_Click() Frm_AccountClose.Show End Sub

ATM-cum-Banking System

105

Private Sub edclient_Click() FRM_EDIT.Show End Sub

Private Sub end_Click() Unload Me frm_front.Show End Sub Private Sub newacc_Click() Frm_NewAccount.Show End Sub

Private Sub pass_Click() Frm_ChangePass.Show End Sub

Private Sub us_Click() frmAbout.Show End Sub

ATM-cum-Banking System

106

Atm_Module Form Global conn As ADODB.Connection Global Rec As ADODB.Recordset Global Rec1 As ADODB.Recordset Global Rec2 As ADODB.Recordset Global Rec3 As ADODB.Recordset Global trans As ADODB.Recordset Global DbtNo, AccNo, TransNo, atmbal As Long Global ADMINID As String Sub main() Call Make_Connection atmbal = Rec(2) ADMINID = Rec(0) Frm_Splash.Show 'MDIbank.Show End Sub Sub Make_Connection() Set conn = New ADODB.Connection If conn.State = adStateOpen Then conn.close conn.ConnectionString = "Provider=MSDAORA.1;Password=tiger;User ID=scott;Persist Security Info=True" conn.Open

ATM-cum-Banking System

107

Set Rec = New ADODB.Recordset With Rec .ActiveConnection = conn .CursorLocation = adUseClient .CursorType = adOpenDynamic .Source = "select * from admin_login" .Open End With Set Rec1 = New ADODB.Recordset With Rec1 .ActiveConnection = conn .CursorLocation = adUseClient .CursorType = adOpenDynamic .Source = "select * from new_account" .Open End With Set Rec2 = New ADODB.Recordset With Rec2 .ActiveConnection = conn .CursorLocation = adUseClient .CursorType = adOpenDynamic .Source = "select * from new_account"

ATM-cum-Banking System

108

.Open End With Set Rec3 = New ADODB.Recordset With Rec3 .ActiveConnection = conn .CursorLocation = adUseClient .CursorType = adOpenDynamic .Source = "select * from ATM_DETIALS" .Open End With Set trans = New ADODB.Recordset With trans .ActiveConnection = conn .CursorLocation = adUseClient .CursorType = adOpenDynamic .Source = "select * from Transactions order by sr_no" .Open End With End Sub Sub Trans_Incr() trans.Requery If trans.EOF Then

ATM-cum-Banking System

109

TransNo = 10001 Else trans.MoveLast TransNo = trans(0) + 1 End If End Sub

ATM-cum-Banking System

110

REPORT S

ATM-cum-Banking System

111

ATM-cum-Banking System

112

ATM-cum-Banking System

113

ATM-cum-Banking System

114

ATM-cum-Banking System

115

REPORTS CODING

ATM-cum-Banking System

116

AccoutReport

Private Sub DataReport_Initialize() Load DataEnvironment1 DataEnvironment1.rsCommand1.Filter = "account_no=" & AccNo End Sub

Private Sub DataReport_Terminate() Unload DataEnvironment1 End Sub

ATM-cum-Banking System

117

MiniBank

Private Sub DataReport_Initialize() Load DataEnvironment1 DataEnvironment1.rsCommand2_Grouping.Filter = "debit_card=" & DbtNo End Sub

Private Sub DataReport_Terminate() Unload DataEnvironment1 End Sub

ATM-cum-Banking System

118

Transaction Slip Private Sub DataReport_Initialize() Load DataEnvironment1 DataEnvironment1.rsCommand3.Filter = "Sr_No=" & TransNo End Sub

Private Sub DataReport_Terminate() Unload DataEnvironment1 End Sub

ATM-cum-Banking System

119

Validations Used in Project


Account Number and Debit Card Number of a customer is unique.

To save the records in any form, all the text boxes should be filled and correct. Customer cannot withdraw money as less as Rs. 100. Pin Number of Debit Card cannot be more than 4 characters. Any customer cannot withdraw money larger than limit of debit card.

ATM-cum-Banking System

120

Limitations of the Project


To withdraw money from Atm Machine, user must enter his debit

card number.

ATM-cum-Banking System

121

Future Scope of Project


In the future, user may swaps the card and enter his Pin number and get his money.

ATM-cum-Banking System

122

Bibliography

Programming with Visual Basic 6.0 Writer: Mohammed Azam Technical Director Emsquare, Chennai Access Writer: Ivan Bayross http://www.google.com http://www.cs.queensu.ca/FAQs/SE/case.html http://www.rspa.com

Вам также может понравиться