Академический Документы
Профессиональный Документы
Культура Документы
ON
SESSION: 2017
-1-
UNIVERSITY STUDY CENTRE CERTIFICATE
Certified
Ajay Jain
-2-
ACKNOWLEDGEMENT
Abhsiehk Singh
-3-
INDEX
1. INTRODUCTION 1-2
-objective & Goal 2
4 IMPLEMENTATION 94-100
- User Manual 95
4.3 Maintenance 98
4.4. Limitations 100
5. REFERENCES 101
-4-
INTRODUCTION
This software will be provided as a tool to the INDIAN BANK. The
BANK has been working for Accounts information , Withdrawal(through
Cash/Cheque). Deposit amount. In this Software you can keep record for daily
Banking transactions.
The application should also facilitate the addition of new Customer A/c, deletion of
A/c& modification of existing customer A/C. To Search for every individual accounts
for a particular customer, show all transaction & any account should be opened with
minimum Rest. 500 etc.
-5-
OBJECTIVE & GOALS
To allow only authorized user to access various functions and processed available
in the system.
This will reduced the manual workload and give information instantly. The software
will maintain the list of A/C and customer record and balance status.
The software will be user friendly so that even a beginner can operate the package and
thus maintain the status of A/C and balance status easily.
-6-
PROJECT INIATION
Recognition of problem
A new opportunity that the present system cannot handle pressures Managers, non-
managers or environment elements usually recognize problems very rarely by
information specialists.
Managers find out where the problem exists & what the cause might be.
-7-
c. Form a model of activities and compare it with ROOT DEFINITON
Requirement Analysis
Calculation of the gap between the present performance of the system and of the best
possible one and finding out the system that can fill in this gap
Using:
Interviews
Surveys
Direct observation
Output to be produced
I. FROM PEOPLE
Stimulates enthusiasm
-8-
But answer will be:
Incomplete
Inaccurate
Not clear
Incorrect emphasis
Analyst is part of the organization where the new system will be used and
information transformation in this part.
Project Justification
-9-
- 10 -
SYSTEM DEVELOPMENT LIFE CYCLE
Phases of SDLC
1. System Analysis
2. System Design
3. Coding
4. System Testing
5. System Implementation
6. System Maintenance
- 11 -
- 12 -
PROBLEM FACED IN THE CURRENT SYSTEM
Each A/C and customer is assigned a unique code. Whenever a new book or
member is added then librarian has to search whether that code is previously
existing or not.
When a particular A/c is to be modified for one or more fields the user can be
modified.
There is time wastage in data accessing, data entry and while data retrieving from
the banking register.
All records of A/c`s and customer are stored in separate files. Which
A particular customer record can be modified for one or more fields customer
name, address by providing A/c number.
- 13 -
A customer record can be easily deleted by providing A/c number.
The proposed system provides faster data access, data entry and retrieval.
Over and above the proposed system does not have any possibility of data loss
during processing.
FEASIBILITY STUDY
Depending on the result of the initial investigation the survey was expanded to a more
detailed feasibility study.
Feasibility is the process of defining exactly what is and what strategic issue needs to
be considered to access its feasibility, or likelihood of succeeding. Feasibility studies
are useful both when starting a new business and identifying a new opportunity for an
existing business.
Feasibility study is a test of a system proposal according to its workability and impact
on the organization, ability to meet user needs and effective use of resources.
The feasibility study conducted for this project mainly gives answer to these
Questions:-
1. What are the users demonstrable needs and how does a candidate system meet
them?
2. What resources are available for the given candidate system? Is the problem worth
solving?
- 14 -
Answer to this question revolves around investigation and evaluation of the problem,
identification and the description of the candidate system, specification of
performance and the cost of each system and the final selection of best system.
The objective of this feasibility study is not solving the problem but acquire a sense of
scope. During the study of the problem definition was crystallized and aspect of the
problem to be included in the system is determined.
Feasibility Consideration
The were three key consideration involved in this feasibility analysis each
consideration has reviewed to depict how it relates to the system effort.
1. Economic feasibility
2. Technical feasibility
3. Operational feasibility
ECONOMIC FEASIBILITY
Economic analysis is the most frequently used technique for evaluating the
effectiveness of a proposed system. More commonly known s cost/benefit
Analysis in this procedure we determine the benefits and saving that are
Expected in this procedure we determine the benefits and saving that are expected
from the proposed system and compare the cost; we take a decision and implement
the new proposed system.
The manual efforts involved in maintaining the A/c and customer information, the
withdrawal, the deposit and balance calculation, is tremendous. This is so because the
- 15 -
volume of information to be handled is tremendous. Maintaining the records of these
many customers is not easy and the manpower involved is great. With the help of
computers it is very easy to maintain the detail of book and library and to keep track
of available books.
A single operator can handle many queries. On an average, it should not take more
10-15 minutes to enter the information of a customer.
As part of the feasibility study, an estimate is made whether the identified user needs
may be satisfied using the current software and hardware. This study decides that
whether or not the proposed system will be cost effective from a business point of
view.
In this case, user has one head clerk who does all the work. So the one clerk has
maintain records regarding new A/c and deletion of A/c addition and deletion of
customer, balance amount etc.
ALTERNATIVES
2. Develop a computerized system using VISUAL BASIC & SQL server as database
provider.
4. Develop a computerized system using C++ & maintaining data file i.e. *.dat for
database.
- 16 -
Develop a system using C++ and maintaining dat files ( .dat ) for database.
The last option suggested was to develop a Banking management system using Turbo
C++ and storing the data in dat files that are easily.
2. The last alternatives suggested by the software development team are the
cheapest possible one . Since the Banking already has a computer the only major
expenditure signaled out. The software is text based so no formal training will
have to be imparted. The compiler is freely available. The only expenditure that
needs to be done is money cost of software team.
RESULT
From the above analysis, the development team suggested that the Banking
management should decide to implement the fourth alternative. i.e. that of developing
a new software system using Turbo C++ and maintaining data in DAT files.
The system will be developed using Turbo C++. The programming language is c++.
Thus without much of an expenditure the bank will get the perfect software according
to their needs.
The system will be very easy to understand and implement. The management can ask
the team for specific reports to be generated and can also decide on the kinds of
interface that it needs.
- 17 -
The various advantage of using DOS executable software is as follows:-
The software can be made exactly as per the needs of the management.
No specific training is required to use the software. The use just has to enter the
fields according to requirements.
No overburdening of work for clerk since most of the work will be performed by
the system by the system itself.
And lastly, the cost of development is very less compared to other alternatives.
Plan
The followings plan was made for the development of the software:-
First a prototype was developed and used to know more about the requirements of
the baking management.
The acquired software can be used to execute the up gradation plans of the library
over the next five years.
Since c++ language is used to design the interface. Thus interface can be designed
exactly as per the requirements.
2. Technical Feasibility
This is concerned with specifying equipment and software that will successfully
satisfy the user requirement. The technical needs of the system may vary
considerably, but might include:
- 18 -
o The facility to produce outputs in a given time
Ten to twelve workstations are required, these units should be interconnected through
LAN so that they could operate and communicate smoothly. They should have
enough speeds of input and output to achieve a particular quality of printing.
Operational Feasibility
What new skills will be required? Do the existing staff members have theses
skills?
Generally project will not be rejected simply because of operational infeasibility but
such considerations are likely to critically affect the nature and scope of the eventual
recommendations.
For operational feasibility study we appointed a small group of people who are
familiar with information system techniques, who understand the parts of the business
that are relevant to the project and are skilled in system analysis and design process.
- 19 -
WATER FALL MODEL
SYSTEM PROJECT
FEASIBILITY PLANNING
VALIDATION VALIDATION
VERIFICATION VERIFICATION
CODING OPERATION
VERIFICATION VERIFICATION
VERIFICATION VERIFICATION
- 20 -
HARDWARE AND SOFTWARE USED
The hardware used by the programmer for developing our project named Fast
iv. RAM 64 MB
v. Monitors Color monitor with VGA card having a resolution 640 X 480
Software Used:-
The software used by the programmer for developing our project named Bank
- 21 -
- 22 -
ENTITY RELATIONSHIP DIAGRAM
Opening
Date
Name Add
Balance
A/c no.
- 23 -
DATA FLOW DIAGRAM
USER /
ADMINISTRATOR
Grant access
Grant super
USER /
User access ADMINISTRATOR
- 24 -
1st LEVEL DFD
INITIAL.DAT
USER / VERIFY
Request for a/c info.
A/c
ADMINISTRATOR
NUMBER
If
ok
ACCEPT
CHOICE
SHOW
CUSTOMER
DETAIL
- 25 -
2ND LEVEL DFD
INTIAL.DAT
ACCEPT CHOICE
FORM
USER / PROCESSING USER
ADMINISTRATOR OR
ADMINISTRATOR
7
QUIT
1 2 3 4
SEE LIST OF TRANSA OPEN 6
A/CS A/C CTION NEW A/C HELP
5
EDIT A/C
26
1. SEE ACCOUNT
ESC
1.1
USER / ACCEPT
ADMINISTRATOR CHOICE
1.1.2
ACCEPT
CHOICE
1.1.2.1
ACCEPT
CHOICE
INTIAL.DAT
- 27 -
2.LIST FO ACCOUNTS
ESC
2.1
USER / ACCEPT
ADMINISTRATOR CHOICE
2.1.1
DISPLAY
ALL
ACCOUNT
INTIAL .DAT
- 28 -
3.TRANSACTIONS
3.1
USER /
ACCEPT
ADMINISTRATOR
CHOICE
3.1.1
ENTER
A/C NO.
3.2.1.1
DEPOSIT OR
D WITHDRAW W
3.1.1.1.1 3.1.1.1.2
CASH CASH/CHE
/CHEQUE QUE
INTIAL.DAT
- 29 -
4.OPEN NEW ACCOUNT
3.1.1.1.2
USER / CASH/CHE
ADMINISTRATOR QUE
BANKING.DAT
- 30 -
5.EDIT ACCOUNT
5.1
USER / ACCEPT
ADMINISTRATOR CHOICE
5.I.1.1 5.1.2.1
MODIFY ENTER
A/C A/C NO.
BANKING.DAT
- 31 -
6.HELP
HELP
1.6
- 32 -
STRUCTURE CHART
BANKING MANAGEMENT
1
QUIT
1.7
- 33 -
SEE ACCOUNT
I.1
DISPLAY A/C
INFORMATION
1.1.1.1
- 34 -
LIST OF ACCOUNT
1.2
- 35 -
TRANSACTION
1.3
ENTER A/C NO
1.3.1
DEPOSIT WITHDRAW
1.3.1.1 1.3.1.2.2
- 36 -
OPEN NEW
ACCOUNT
1.4
VERIFYING INTIAL
NAME ADDRESS PERSON DEPOSIT
1.4.1 1.4.2 1.4.3 1.4.4
- 37 -
EDIT ACCOUNT
1.5
MODIFY MODIFY
NAME ADDRESS DELETE A/C
1.5.1.1.1 1.5.1.1.2 1.5.2.1.1
- 38 -
DATA DICTIONARY
1. INITIAL.DAT- This data file contains all the information about account. For
2. BANKING.DAT- This data file contains all the information about member for
3. TEMP.DAT- This data file is used while deleting some information from
A. void gra1()
B. void gra2()
These global function are use to display some graphics in program segment.
A. shape
B. control
C. initial
D. account
- 39 -
A.shape-the class contain function related to draw box etc.
Void line hor. (int, int, int , char):-This function helps to draw horizontal line.
Void line ver (int, int, int , char):- This function helps to draw vertical lines.
Void box (int, int, int , char):- This function helps to draw box lines.
- 40 -
Following are the member function of this class:
Void add to file (int , char t_name [30], char t_address [60],float):- This function
Void display_list(void):- This function display the list of account in file initial.dat.
Void delete account (int):-This function deletes records for the given account no.
void update balance(int,float):- This function update balance for the given account
void modify(void):- This function gives the data to modify the record in the file
initial.dat.
int last acc no.(void):- This function return last account no. in the file initial.dat.
int found account(int):- This function returns 1 if the given account no. found in the
file initial.dat.
char *return name(int):- This function return name for the given account no. in the
file initial.dat.
char *return address(int):-This function return address for the given a/c no. in the
file initial.dat.
float give balance(int):- This function return balance for the given account no. in the
file initial.dat.
int record no(int):-This function return record no. of the given account no. in the file
initial.dat.
void display(int):-This function display the account for given account no. from the
file initial.dat.
modifies the record for the given data in the file initial.dat
- 41 -
void box for_list(void):- This function display draws the box for the list of accounts.
Void new account(void):- This function accept the data to add records in the file
banking.dat.
void close account(void):- This function close the account (delete account).
Void display account (void):- This function display records from the file
banking.dat.
Void clear(int , int):- This function clear the given row and colmn.
- 42 -
Void add to file (int , int , int , int , char , char t-type[10], float ,float, float):- This
Void delete account (int ):- This function deletes the record for given account no.
Int no of days ( int ,int ,int .int .int , int):- This function returns the difference
between
Two dates.
Void box for display(int):- This function draws the box for displaying records from
file banking.dat
- 43 -
- 44 -
/*Program to bank account management*/
#include <iostream.h>
#include <fstream.h>
#include <process.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
#include <dos.h>
class shape
{
public :
void l_hor(int, int, int, char) ;
void l_ver(int, int, int, char) ;
void box(int,int,int,int,char) ;
} ;
class control
{
public :
void main_menu(void) ;
void help(void) ;
private :
void edit_menu(void) ;
} ;
class acc
{
public :
- 45 -
void add_to_file(int, char t_name[30],
char t_address[60], float);
void display_list(void) ;
void delete_account(int) ;
void update_balance(int, float,int ,int
,int) ;
float calculate_interest(int, float) ;
void modify(void) ;
int last_accno(void) ;
int found_account(int) ;
char *return_name(int) ;
char *return_address(int) ;
float give_balance(int) ;
int recordno(int) ;
void display(int) ;
private :
void modify_account(int, char
t_name[30], char t_address[60]) ;
void box_for_list(void) ;
int accno ;
char name[30], address[60] ;
float balance ;
int dd, mm, yy;
} ;
class account
{
public: void new_account(void) ;
void close_account(void) ;
void display_account(void) ;
int no_of_days(int, int, int, int, int,
int) ;
- 46 -
void transaction(void) ;
void clear(int,int) ;
private:
void add_to_file(int, int, int, int,
char, char t_type[10], float, float,
float);
void delete_account(int) ;
void display(int) ;
void box_for_display(int) ;
int accno ;
char type[10] ;
int dd, mm, yy ;
char tran ;
float interest, amount, balance ;
} ;
- 47 -
}
- 48 -
cout <<c4 ;
column1++ ;
column2-- ;
l_hor(column1,column2,row1,l1) ;
l_hor(column1,column2,row2,l1) ;
column1-- ;
column2++ ;
row1++ ;
row2-- ;
l_ver(row1,row2,column1,l2) ;
l_ver(row1,row2,column2,l2) ;
}
- 49 -
cout <<"2: LIST OF ACCOUNTS" ;
gotoxy(30,13) ;
cout <<"3: TRANSACTIONS" ;
gotoxy(30,14) ;
cout <<"4: OPEN NEW ACCOUNT" ;
gotoxy(30,15) ;
cout <<"5: EDIT ACCOUNTS" ;
gotoxy(30,16) ;
cout <<"6: HELP" ;
gotoxy(30,17) ;
cout <<"0: QUIT" ;
gotoxy(30,19) ;
cout <<"Enter your choice: " ;
ch = getche() ;
if (ch == 27)
break ;
else
if (ch == '1')
{
account a ;
a.display_account() ;
}
else
if (ch == '2')
{
acc ini ;
ini.display_list() ;
}
else
if (ch == '3')
{
account a ;
a.transaction() ;
- 50 -
}
else
if (ch == '4')
{
account a ;
a.new_account() ;
}
else
if (ch == '5')
edit_menu() ;
else
if (ch == '6')
help() ;
else
if (ch == '0')
break ;
}
char ch ;
while (1)
{
clrscr() ;
shape s ;
s.box(10,5,71,21,219) ;
s.box(9,4,72,22,218) ;
textcolor(BLUE) ;
textbackground(WHITE) ;
gotoxy(34,10) ;
- 51 -
cprintf(" EDIT MENU ") ;
textcolor(GREEN) ;
textbackground(BLUE) ;
gotoxy(31,12) ;
cout <<"1: MODIFY ACCOUNT" ;
gotoxy(31,13) ;
cout <<"2: CLOSE ACCOUNT" ;
gotoxy(31,14) ;
cout <<"0: QUIT" ;
gotoxy(31,16) ;
cout <<"Enter your choice: " ;
ch = getche() ;
if (ch == 27)
break ;
else
if (ch == '1')
{
acc ini ;
ini.modify() ;
break ;
}
else
if (ch == '2')
{
account a ;
a.close_account() ;
break ;
}
else
if (ch == '0')
break ;
}
- 52 -
}
s.box(2,1,79,25,218) ;
s.box(25,2,54,4,219) ;
textcolor(GREEN) ;
gotoxy(27,3); cprintf("WELCOME TO
INDIAN BANK") ;
textcolor(GREEN) ;
delay(10) ;
gotoxy(10,6);
cout <<"This Bank can keep record of
daily banking" ;
delay(10) ;
gotoxy(10,7);
cout <<"transactions. " ;
delay(10) ;
gotoxy(10,9);
cout <<" This Bank is capable of holding
any no. of account." ;
delay(10) ;
gotoxy(10,11);
cout <<"- With OPTION-1 you can see
the account of a perticular" ;
delay(10) ;
gotoxy(10,12);
cout <<" person by giving simply
account no. of that person." ;
delay(10) ;
- 53 -
gotoxy(10,14);
cout <<"- With OPTION-2 you can see
the List of all the accounts." ;
delay(10) ;
gotoxy(10,16);
cout <<"- With OPTION-3 you can do
banking transactions" ;
delay(10) ;
gotoxy(10,17);
cout <<" (Deposit/Withdraw)." ;
delay(10) ;
gotoxy(10,19);
cout <<"- With OPTION-4 you can
Open New Account." ;
delay(10) ;
gotoxy(10,20);
cout <<" (NOTE: Opening amount
should not be less than Rs.500/-" ;
delay(10) ;
gotoxy(10,22);
cout <<"- With OPTION-5 you can
Modify or Delete any account." ;
delay(10) ;
gotoxy(10,24);
cout <<"- With OPTION-6 you can call
help. " ;
delay(10) ;
textcolor(BLUE+BLINK) ;
textbackground(WHITE) ;
gotoxy(26,25) ; cprintf(" Press any key to
continue ") ;
- 54 -
textcolor(GREEN) ; textbackground(BLUE)
;
gotoxy(25,2) ;
getch() ;
}
- 55 -
return count ;
}
- 56 -
file.seekg(0,ios::beg) ;
char t_name[30] ;
while (file.read((char *) this,
sizeof(acc)))
{
if (accno == t_accno)
{
strcpy(t_name,name) ;
break ;
}
}
file.close() ;
return t_name ;
}
- 57 -
}
- 58 -
break ;
}
}
file.close() ;
return found ;
}
- 59 -
cout <<"Date: " <<d1 <<"/" <<m1 <<"/"
<<y1 ;
}
- 60 -
}
}
file.close() ;
if (!flag)
{
gotoxy(4,24) ;
cout <<"Press any key to continue..." ;
getch() ;
}
}
- 61 -
{
file.read((char *) this, sizeof(acc)) ;
if ( file.eof() )
break ;
if ( accno != t_accno )
temp.write((char *) this,
sizeof(acc)) ;
}
file.close() ;
temp.close() ;
file.open("ACC.DAT", ios::out) ;
temp.open("temp.dat", ios::in) ;
temp.seekg(0,ios::beg) ;
while ( !temp.eof() )
{
temp.read((char *) this, sizeof(acc)) ;
if ( temp.eof() )
break ;
file.write((char *) this, sizeof(acc)) ;
}
file.close() ;
temp.close() ;
}
- 62 -
mm=m1;
yy=y1;
int location ;
location = (recno-1) * sizeof(acc) ;
file.seekp(location) ;
file.write((char *) this, sizeof(acc)) ;
file.close() ;
}
- 63 -
clrscr() ;
char t_acc[10] ;
int t, t_accno ;
gotoxy(71,1) ;
cout <<"<0>=Exit" ;
gotoxy(5,5) ;
cout <<"Enter the account no. " ;
gets(t_acc) ;
t = atoi(t_acc) ;
t_accno = t ;
if (t_accno == 0)
return ;
clrscr() ;
if (!found_account(t_accno))
{
gotoxy(5,5) ;
cout <<"\7Account not found" ;
getch() ;
return ;
}
shape s ;
s.box(2,2,79,24,218) ;
s.l_hor(3,78,4,196) ;
s.l_hor(3,78,22,196) ;
gotoxy(71,1) ;
cout <<"<0>=Exit" ;
textbackground(WHITE) ;
gotoxy(3,3) ;
for (int i=1; i<=76; i++) cprintf(" ") ;
textbackground(BLUE) ;
textcolor(BLUE+BLINK) ;
textbackground(WHITE) ;
gotoxy(30,3) ;
- 64 -
cprintf("MODIFY ACCOUNT SCREEN") ;
textcolor(GREEN) ;
textbackground(GREEN);
int d1, m1, y1 ;
struct date d;
getdate(&d);
d1 = d.da_day ;
m1 = d.da_mon ;
y1 = d.da_year ;
gotoxy(62,5) ;
cout <<"Date: "<<d1 <<"/" <<m1 <<"/"
<<y1 ;
char ch ;
display(t_accno) ;
account a ;
do
{
a.clear(5,13) ;
gotoxy(5,13) ;
cout <<"Modify this account (y/n): " ;
ch = getche() ;
if (ch == '0')
return ;
ch = toupper(ch) ;
} while (ch != 'N' && ch != 'Y') ;
if (ch == 'N')
return ;
int modified=0, valid ;
char t_name[30], t_address[60] ;
gotoxy(5,15) ;
cout <<"Name : " ;
gotoxy(5,16) ;
- 65 -
cout <<"Address : " ;
do
{
a.clear(15,15) ;
a.clear(5,23) ;
gotoxy(5,23) ;
cout <<"ENTER NAME or PRESS
<ENTER> FOR NO CHANGE" ;
valid = 1 ;
gotoxy(15,15) ;
gets(t_name) ;
strupr(t_name) ;
if (t_name[0] == '0')
return ;
if (strlen(t_name) > 25)
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7NAME SHOULD NOT
HAVE GREATER THAN 25 CHARACTERS")
;
getch() ;
}
} while (!valid) ;
if (strlen(t_name) > 0)
modified = 1 ;
do
{
a.clear(15,16) ;
a.clear(5,23) ;
gotoxy(5,23) ;
cout <<"ENTER ADDRESS or
PRESS <ENTER> FOR NO CHANGE" ;
- 66 -
valid = 1 ;
gotoxy(15,16) ;
gets(t_address) ;
strupr(t_address) ;
if (t_address[0] == '0')
return ;
if (strlen(t_address) > 55)
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7SHOULD NOT
BE BLANK OR GREATER THAN 50
CHARACTERS") ;
getch() ;
}
} while (!valid) ;
if (strlen(t_address) > 0)
modified = 1 ;
if (!modified)
return ;
a.clear(5,23) ;
do
{
a.clear(5,18) ;
gotoxy(5,18) ;
cout <<"Do you want to save
changes (y/n): " ;
ch = getche() ;
if (ch == '0')
return ;
ch = toupper(ch) ;
} while (ch != 'N' && ch != 'Y') ;
- 67 -
if (ch == 'N')
return ;
modify_account(t_accno,t_name,t_address)
;
gotoxy(5,21) ;
cout <<"\7Record Modified" ;
gotoxy(5,23) ;
cout <<"Press any key to continue..." ;
getch() ;
}
- 68 -
interest = t_interest ;
amount = t_amount ;
balance = t_balance ;
file.write((char *) this, sizeof(account)) ;
file.close() ;
}
break ;
if ( accno != t_accno )
temp.write((char *) this,
sizeof(account)) ;
}
file.close() ;
temp.close() ;
file.open("TRANSACT.DAT", ios::out) ;
temp.open("temp.dat", ios::in) ;
temp.seekg(0,ios::beg) ;
while ( !temp.eof() )
{
- 69 -
temp.read((char *) this,
sizeof(account)) ;
if ( temp.eof() )
break ;
file.write((char *) this,
sizeof(account)) ;
}
file.close() ;
temp.close() ;
}
- 70 -
int d1, m1, y1 ;
struct date d;
getdate(&d);
d1 = d.da_day ;
m1 = d.da_mon ;
y1 = d.da_year ;
int t_accno ;
t_accno = ini.last_accno() ;
t_accno++ ;
if (t_accno == 1)
{
ini.add_to_file(t_accno,"abc","xyz",1.1) ;
ini.delete_account(t_accno) ;
add_to_file(t_accno,1,1,1997,'D',"INIT
IAL",1.1,1.1,1.1) ;
delete_account(t_accno) ;
}
char t_name[30], t[10], t_address[60] ;
float t_bal=0.0, t_balance=0.0 ;
gotoxy(5,6) ;
cout <<"Date : "<<d1 <<"/" <<m1 <<"/"
<<y1 ;
gotoxy(5,8) ;
cout <<"Account no. # " <<t_accno ;
gotoxy(5,10) ;
cout <<"Name : " ;
gotoxy(5,11) ;
cout <<"Address : " ;
gotoxy(5,12) ;
- 71 -
cout <<"Name of Verifying person : " ;
gotoxy(5,14) ;
cout <<"Initial Deposit : " ;
do
{
clear(15,10) ;
clear(5,23) ;
gotoxy(5,23) ;
cout <<"ENTER NAME OF THE
PERSON" ;
valid = 1 ;
gotoxy(15,10) ;
gets(t_name) ;
strupr(t_name) ;
if (t_name[0] == '0')
return ;
if (strlen(t_name) == 0 ||
strlen(t_name) > 25)
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7NAME SHOULD NOT
BE BLANK OR GREATER THAN 25
CHARACTERS") ;
getch() ;
}
} while (!valid) ;
do
{
clear(15,11) ;
clear(5,23) ;
gotoxy(5,23) ;
- 72 -
cout <<"ENTER ADDRESS OF
THE PERSON" ;
valid = 1 ;
gotoxy(15,11) ;
gets(t_address) ;
strupr(t_address) ;
if (t_address[0] == '0')
return ;
if (strlen(t_address) == 0 ||
strlen(t_address) > 55)
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7SHOULD NOT
BE BLANK OR GREATER THAN 50
CHARACTERS") ;
getch() ;
}
} while (!valid) ;
do
{
char vari[30] ;
clear(31,12) ;
clear(5,23) ;
gotoxy(5,23) ;
cout <<"ENTER NAME OF THE
VERIFYING PERSON" ;
valid = 1 ;
gotoxy(31,12) ;
gets(vari) ;
strupr(vari) ;
if (vari[0] == '0')
return ;
- 73 -
if (strlen(vari) == 0 || strlen(vari) >
25)
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7SHOULD NOT
BE BLANK OR GREATER THAN 25
CHARACTERS") ;
getch() ;
}
} while (!valid) ;
do
{
clear(23,14) ;
clear(5,23) ;
gotoxy(5,23) ;
cout <<"ENTER INITIAL AMOUNT
TO BE DEPOSITED" ;
valid = 1 ;
gotoxy(23,14) ;
gets(t) ;
t_bal = atof(t) ;
t_balance = t_bal ;
if (t[0] == '0')
return ;
if (t_balance < 500)
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7SHOULD NOT
BE LESS THAN 500 RUPEES ") ;
getch() ;
}
- 74 -
} while (!valid) ;
clear(5,23) ;
do
{
clear(5,17) ;
valid = 1 ;
gotoxy(5,17) ;
cout <<"Do you want to save
the record (y/n) : " ;
ch = getche() ;
if (ch == '0')
return ;
ch = toupper(ch) ;
} while (ch != 'N' && ch != 'Y') ;
if (ch == 'N')
return ;
float t_amount, t_interest ;
t_amount = t_balance ;
t_interest = 0.0 ;
char t_tran, t_type[10] ;
t_tran = 'D' ;
strcpy(t_type,"INITIAL") ;
ini.add_to_file(t_accno,t_name,t_addre
ss,t_balance) ;
ini.update_balance(t_accno,t_balance,d1,m
1,y1);
add_to_file(t_accno,d1,m1,y1,t_tran,t_type
,t_interest,t_amount,t_balance) ;
}
- 75 -
s.box(2,1,79,25,218) ;
s.l_hor(3,78,4,196) ;
s.l_hor(3,78,6,196) ;
s.l_hor(3,78,23,196) ;
textbackground(WHITE) ;
gotoxy(3,5) ;
for (int i=1; i<=76; i++) cprintf(" ") ;
textbackground(BLUE) ;
textcolor(BLUE) ; textbackground(WHITE)
;
gotoxy(4,5) ;
cprintf("DATE PARTICULAR
DEPOSIT WITHDRAW INTEREST
BALANCE") ;
textcolor(GREEN) ; textbackground(BLUE)
;
int d1, m1, y1 ;
struct date d;
getdate(&d);
d1 = d.da_day ;
m1 = d.da_mon ;
y1 = d.da_year ;
gotoxy(63,2) ;
cout <<"Date: " <<d1 <<"/" <<m1 <<"/"
<<y1 ;
gotoxy(4,2) ;
cout <<"Account no. " <<t_accno ;
acc ini ;
char t_name[30] ;
strcpy(t_name,ini.return_name(t_accno)) ;
char t_address[60] ;
strcpy(t_address,ini.return_address(t_accn
o)) ;
- 76 -
gotoxy(25,2) ;
cout <<t_name ;
gotoxy(25,3) ;
cout <<t_address ;
}
- 77 -
while (file.read((char *) this,
sizeof(account)))
{
if (accno == t_accno)
{
flag = 0 ;
delay(10) ;
gotoxy(4,row) ;
cout <<dd <<"/" <<mm <<"/" <<yy
;
gotoxy(16,row) ;
cout <<type ;
if (tran == 'D')
gotoxy(30,row) ;
else
gotoxy(42,row) ;
cout <<amount ;
gotoxy(56,row) ;
printf("%.2f",interest);//DONE BY
US
gotoxy(66,row) ;
printf("%.2f",balance);//DONE BY
US
row++ ;
if (row == 23)
{
flag = 1 ;
row = 7 ;
gotoxy(4,24) ;
cout <<"Press
any key to continue..." ;
getch() ;
- 78 -
clrscr() ;
box_for_display(t_accno) ;
}
}
}
file.close() ;
if (!flag)
{
gotoxy(4,24) ;
cout <<"Press any key to continue..." ;
getch() ;
}
}
- 79 -
}
}
return days ;
}
- 80 -
us*/ || (y2==y1 && m2==m1 &&
d2==d1))/**/
return t_interest ;
days = ini.no_of_days(d1,m1,y1,d2,m2,y2)
;
int months=0 ;
if (days >= 30)
{
months = days/30 ;
t_interest = ((t_balance*2)/100) *
months ;
}
file.close() ;
return t_interest ;
}
- 81 -
{
gotoxy(5,5) ;
cout <<"\7Account not found" ;
getch() ;
return ;
}
shape s ;
s.box(2,2,79,24,218) ;
s.l_hor(3,78,4,196) ;
s.l_hor(3,78,22,196) ;
gotoxy(71,1) ;
cout <<"<0>=Exit" ;
textbackground(WHITE) ;
gotoxy(3,3) ;
for (int i=1; i<=76; i++) cprintf(" ") ;
textbackground(BLUE) ;
textcolor(BLUE+BLINK) ;
textbackground(WHITE) ;
gotoxy(29,3) ;
cprintf("TRANSACTION IN ACCOUNT") ;
textcolor(GREEN) ; textbackground(BLUE)
;
int d1, m1, y1 ;
struct date d;
getdate(&d);
d1 = d.da_day ;
m1 = d.da_mon ;
y1 = d.da_year ;
gotoxy(5,6) ;
cout <<"Date : "<<d1 <<"/" <<m1 <<"/"
<<y1 ;
gotoxy(5,8) ;
cout <<"Account no. # " <<t_accno ;
- 82 -
char t_name[30] ;
char t_address[60] ;
float t_balance ;
strcpy(t_name,ini.return_name(t_accno)) ;
strcpy(t_address,ini.return_address(t_a
ccno)) ;
t_balance = ini.give_balance(t_accno) ;
s.box(25,10,75,13,218) ;
gotoxy(27,11) ;
cout <<"Name : " <<t_name ;
gotoxy(27,12) ;
cout <<"Address: " <<t_address ;
gotoxy(5,15) ;
cout <<"Last Balance : Rs." <<t_balance ;
char t_tran, t_type[10], tm[10] ;
float t_amount, t_amt ;
do
{
clear(5,18) ;
valid = 1 ;
gotoxy(5,18) ;
cout <<"Deposit or Withdraw (D/W) : "
;
t_tran = getche() ;
if (t_tran == '0')
return ;
t_tran = toupper(t_tran) ;
} while (t_tran != 'D' && t_tran != 'W') ;
do
{
clear(5,19) ;
clear(5,23) ;
gotoxy(5,23) ;
- 83 -
cout <<"ENTER TRANSACTION
BY CASH OR CHEQUE" ;
valid = 1 ;
gotoxy(5,19) ;
cout <<"(Cash/Cheque) : " ;
gets(t_type) ;
strupr(t_type) ;
if (t_type[0] == '0')
return ;
if (strcmp(t_type,"CASH") &&
strcmp(t_type,"CHEQUE"))
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7ENTER
CORRECTLY ") ;
getch() ;
}
} while (!valid) ;
do
{
clear(5,21) ;
clear(5,23) ;
gotoxy(5,23) ;
cout <<"ENTER AMOUNT FOR
TRANSACTION" ;
valid = 1 ;
gotoxy(5,21) ;
cout <<"Amount : Rs." ;
gets(tm) ;
t_amt = atof(tm) ;
t_amount = t_amt ;
if (tm[0] == '0')
- 84 -
return ;
if ((t_tran == 'W' && t_amount >
t_balance) || (t_amount < 1))
{
valid = 0 ;
gotoxy(5,23) ;
cprintf("\7INVALID
DATA ENTERED ") ;
getch() ;
}
} while (!valid) ;
char ch ;
clear(5,23) ;
do
{
clear(40,20) ;
valid = 1 ;
gotoxy(40,20) ;
cout <<"Save transaction (y/n): " ;
ch = getche() ;
if (ch == '0')
return ;
ch = toupper(ch) ;
} while (ch != 'N' && ch != 'Y') ;
if (ch == 'N')
return ;
float t_interest=0.00 ;
t_interest =
ini.calculate_interest(t_accno,t_balance) ;
if (t_tran == 'D')
t_balance = t_balance + t_amount +
t_interest;
else
- 85 -
t_balance = (t_balance - t_amount) +
t_interest;
ini.update_balance(t_accno,t_balance,d1,m
1,y1) ;
add_to_file(t_accno,d1,m1,y1,t_tran,t_type
,t_interest,t_amount,t_balance) ;
}
- 86 -
s.l_hor(3,78,4,196) ;
s.l_hor(3,78,22,196) ;
gotoxy(71,1) ;
cout <<"<0>=Exit" ;
textbackground(WHITE) ;
gotoxy(3,3) ;
for (int i=1; i<=76; i++) cprintf(" ") ;
textbackground(BLUE) ;
textcolor(BLUE+BLINK) ;
textbackground(WHITE) ;
gotoxy(30,3) ;
cprintf("CLOSE ACCOUNT SCREEN") ;
textcolor(GREEN) ; textbackground(BLUE)
;
int d1, m1, y1 ;
struct date d;
getdate(&d);
d1 = d.da_day ;
m1 = d.da_mon ;
y1 = d.da_year ;
gotoxy(62,5) ;
cout <<"Date: "<<d1 <<"/" <<m1 <<"/"
<<y1 ;
char ch ;
ini.display(t_accno) ;
do
{
clear(5,15) ;
gotoxy(5,15) ;
cout <<"Close this account (y/n): " ;
ch = getche() ;
if (ch == '0')
return ;
- 87 -
ch = toupper(ch) ;
} while (ch != 'N' && ch != 'Y') ;
if (ch == 'N')
return ;
ini.delete_account(t_accno) ;
delete_account(t_accno) ;
gotoxy(5,20) ;
cout <<"\7Record Deleted" ;
gotoxy(5,23) ;
cout <<"Press any key to continue..." ;
getch() ;
}
void main(void)
{
control c ;
c.help() ;
c.main_menu() ;
}
- 88 -
OUT PUT SOURCING/SCREENSHOTS
- 89 -
- 90 -
- 91 -
- 92 -
- 93 -
- 94 -
- 95 -
- 96 -
- 97 -
- 98 -
IMPLEMENTATION
A crucial phase in the system life cycle is the successful implementation of the new
system design. Implementation simply means converting a new system design into
operation. This involves creating computer compatible files, training the operating
staff and installing hardware terminals, and telecommunication network before the
and giving the new system a chance to prove its worth. Training aids such as user-
friendly manuals, a data dictionary and job performance aids that communicate
information about the new system and help screens. Provide the user with a good start
USER MANUAL
Installation
How to use
- 99 -
Now Banking project has installed onto your system.
How to use:-
ACCOUNT
If you want to show an information pertaining to account then enter the account no.
CUSTOMER
Of you want to add an information pertaining to customer then choose 4th option
If you want to modify an information pertaining to customer then choose the 5th
option EDIT ACCOUNT and then choose 1st option & enter modify
CUSTOMER INFORMATION.
If you want to delete an information pertaining to customer then choose the 5th
option EDIT ACCOUNT and then choose 2nd option & delete CUSTOMER
INFORMATION.
TRANSACTIONS
- 100 -
HELP
In case you face any problem regarding operating BANKING PROJECT. At the
running time. Then you can use BANKING PROJECT HELP. For using HELP
- 101 -
- 102 -
SYSTEM MAINTENANCE
captive, tying up programming resources. Analyst and programmers Spend far more
same planning and control used in a formal system project. Documentation is as much
procedures for the system are acquired from the programming banking. Program
changes are then tested and submitted to the user for approval. Once ap0roved, the
completion notice is sent to the user, signaling the termination of the project.
In case of system crash a user may lose all his/her valuable data. To cope with this
This system provides the facility of backup and recovery. Only an administrator can
To utilize this facility user must have floppy drive on his or her system.
- 103 -
LIMITATIONS
In this world every thing has its own limitations. And limitation in a project is quite
obvious. Even famous software's and operating systems have its own limitations. For
example win 3x does not support USB port. So it's a limitation of win3x that it does
In this project a book code cannot be more than 30,000. So it's a limitation of this
project that this system cannot maintain more than 30000 books.
No checks have been made in relation to the entry of duplicate records in book
section. This limitation is also present in the function when we create new
members.
And there are some other limitations, which will be faced by USER when he/she
- 104 -
REFERENCES
I referred M.AWAD for creating ship diagram. Data flow diagram, structure chart etc.
Kanetkar.
- 105 -