Post on 03-Apr-2018
7/29/2019 Credit Card System new
1/71
CONTENTS
S.N
O
TITLE PAGE
NO
ACKNOWLEDGEMENTS 2
ABSTRACT 3
1 INTRODUCTION 4
2 PROJECT DESIGN 5
3 SOFTWARE DESCRIPTION 8
4 DESIGN AND DEVELOPMENT
4.1 ARCHITECTURE
4.2 DATABASE DESIGN
4.3 DATA FLOW DIAGRAM
19
20
26
5
IMPLEMENTATION
5.1 SYSTEM REQUIREMENTS
5.2 SOURCE CODE
28
29
6
CONCLUSION
BIBLIOGRAPHY
59
60
7 ANNEXURE
a) SCREEN CHAT
b) REPORTS
61
71
1
7/29/2019 Credit Card System new
2/71
ABSTRACT
With the advent of foreign banks and the globalization of Indian economy made
a tremendous changes in the services offered by banks to common mans. The
introduction of credit cards led to the paradigm of Buy-now-Pay-later. Naturally this
increased the workload of banks. In order to reduce their burden of maintaining a long
list of pending transactions and dues needed help from third parties and the Business
Process Outsourcing companies fill this gap. This project eliminates these problems. In
this project the user can administer all the cardholders from a single point. Use can
issue new cards and increase their cash limit. Also to send e-statements to cardholders
are possible. Automatically allot personal loans.
Apart from this, the system provides to maintain the details about the
Franchisee and their work over the customer needs. Also the particulars about the
franchisee locations, which make the customer to approach them easily. Offers on
paying the interest as possible as earlier and guide the customer to maintain their
accounts with regular basis of the credit limit. Also this system has the facility of
providing credit transfer, which helps the customer in a perceptive way.
Like credit transfer facility, another aspect which makes the customer to have afree flow of their credit processing is providing loans based on their business reports,
source of income and their credit limits.
This project is implemented using VB.Net and SQL Server. The power of
Internet helps us to interlink banks with franchisees and them in turn with cardholders.
The bank can enquire all their franchisee holders about daily transactions.
2
7/29/2019 Credit Card System new
3/71
INTRODUCTION
With the advent of foreign banks and the globalization of Indian economy made
a tremendous changes in the services offered by banks to common mans. The
introduction of credit cards led to the paradigm of Buy-now-Pay-later. Naturally this
increased the workload of banks. In order to reduce their burden of maintaining a long
list of pending transactions and dues needed help from third parties and the Business
Process Outsourcing companies fill this gap. This project eliminates these problems. In
this project the user can administer all the cardholders from a single point. Use can
issue new cards and increase their cash limit. Also to send e-statements to cardholders
are possible. Automatically allot personal loans.
Apart from this, the system provides to maintain the details about the
Franchisee and their work over the customer needs. Also the particulars about the
franchisee locations, which make the customer to approach them easily. Offers on
paying the interest as possible as earlier and guide the customer to maintain their
accounts with regular basis of the credit limit. Also this system has the facility of
providing credit transfer, which helps the customer in a perceptive way.
Like credit transfer facility, another aspect which makes the customer to have afree flow of their credit processing is providing loans based on their business reports,
source of income and their credit limits.
This project is implemented using VB.Net and SQL Server. The power of
Internet helps us to interlink banks with franchisees and them in turn with cardholders.
The bank can enquire all their franchisee holders about daily transactions.
3
7/29/2019 Credit Card System new
4/71
PROJECT DESCRIPTION
With the advent of foreign banks and the globalization of Indian economy made
a tremendous changes in the services offered by banks to common mans. The
introduction of credit cards led to the paradigm of Buy-now-Pay-later. Naturally this
increased the workload of banks. In order to reduce their burden of maintaining a long
list of pending transactions and dues needed help from third parties and the Business
Process Outsourcing companies fill this gap. This project eliminates these problems. In
this project the user can administer all the cardholders from a single point. Use can
issue new cards and increase their cash limit. Also to send e-statements to cardholders
are possible. Automatically allot personal loans. User can generate various reports like
daily cheque payments, daily outstanding recoveries and interest charges on the defaultpayments.
Apart from this, the system provides to maintain the details about the
Franchisee and their work over the customer needs. Also the particulars about the
franchisee locations, which make the customer to approach them easily. Offers on
paying the interest as possible as earlier and guide the customer to maintain their
accounts with regular basis of the credit limit. Also this system has the facility of
providing credit transfer, which helps the customer in a perceptive way.
Like credit transfer facility, another aspect which makes the customer to have a
free flow of their credit processing is providing loans based on their business reports,
source of income and their credit limits.
This project is implemented using VB.Net and SQL Server. The power of
Internet helps us to interlink banks with franchisees and them in turn with cardholders.
The bank can enquire all their franchisee holders about daily transactions.
This project is divided into four major modules.
Cardholder maintenance
4
7/29/2019 Credit Card System new
5/71
Franchisee maintenance
Interest and other charges maintenance
Personal loan and Enquiries
Cardholder Maintenance
This module deals with issuing a new credit card, increasing credit card limit.
There are two types of cards provided for cardholders named as gold and silver cards.
These types of card issued only based on the cardholders properties, income tax, and
bank transaction details.
Franchisee Maintenance
This module deals with the Information about a particular franchisee. A bank
requires the details like, the credit outstanding in each franchisee, the dues recovered by
each franchisee daily and the Cheques received by each franchisee daily.
Interest and other charges maintenance
The cardholder purchases things and the total amount of purchase should be
below the credit limit allowed for him. He may also withdraw cash using the same
credit card. The installments are calculated based on the total amount of purchase and
the minimum number of installments with specific interest rates. This module also
takes responsibility for other charges such as late payment charge, petrol transaction
charge, railway/air ticket purchase or cancellation fee, cheque bounce, and reissue of
lost, stolen or damaged card etc.
1. Minimum amount calculation:
The minimum amount due is calculated as a certain percentage of youroutstanding, and is presently 5% of the total of your
purchase/cash/advances/fees/charges.
2. Late payment charge calculation:
Assume you receive a statement for the period 16/10-15/11 with a payment due
date of 3/12 to pay his outstanding balance of Rs.5000. you at least need to pay his
minimum amount due of 5%, ie. Rs.250 by the payment due date (3/12) to ensure that
no late payment charges are levied. If you fail to do so, then lat payment chargeswould be levied basis the card outstanding as per the following bands:
5
7/29/2019 Credit Card System new
6/71
Rs.350 for outstanding less than Rs.10, 000
Rs.500 for outstanding between Rs.10, 000-Rs.20, 000
Rs.600 for outstanding above Rs.20, 000
3. Interest calculation:
The rate of interest is 2.9%
The fine amount is calculated for unpaid dues and is added to the next due statement.
The interest is calculated cumulatively.
Personal loan and Enquiries:
The loan allotment process is also handled over to the private parties by the
bank. Since this process involves checking the credentials of the client, and collecting
the dues subsequently, a separate module is designed for this project.
The various type of enquires are as follows. The cardholder may enquire the
balance amount in his card. He may also enquire the last purchase made by him or a
history of the last 10 purchase made by him. Before making a withdrawal a cardholder
enquires the current balance in his card. This module generates various reports such as
the monthly report to each cardholder regarding pending installments, e-statements for
transactions for the last one-month and daily payment details.
6
7/29/2019 Credit Card System new
7/71
SOFTWARE DESCRIPTION
About VB.Net
Visual Basic .Net is much more than new version ofVB; it is the most exciting
and empowering system of development around. The world wanted a generic language
that would enable portability to different operating system and a specification was
created. This specification became known as the common language specification (cls).All .Net languages are equally object oriented and built from the ground up
using the same foundation. Their code would run on multiple operating systems and
raise an exception between two languages on the same operating system.
The .net framework is a multi-language environment for building, deploying
and running web services and applications.
It consist of three main types
a) Common language runtime
b) Unified programming classes
c) Asp.net
Visual Studio .NET is the tool for rapidly building enterprise-scale ASP Web
applications and high performance desktop applications. Visual Studio includes
component-based development tools, such as Visual C#, Visual Basic, and Visual C++,
as well as a number of additional technologies to simplify team-based design,
development, and deployment of your solutions.
Everything in .Net is class, which is combination of variables and functions.
The more classes available in system, the less work we have to do. Classes are most
often created inn Visual Basic.Net as a class library. While using class library, it is
possible to use in other projects.
When are using class it is possible to use inheritance, polymorphism,
abstraction, and encapsulation.
Advantages of class
Reusability
7
7/29/2019 Credit Card System new
8/71
Flexibility
Maintainability
Performance
Events
An event is a way in which an object can send messages to a client. Events are
declared and raised in a class but can be handled differently for each client.
Adding Events to a Class
When code in the class detects that this event condition has been met, the Raise
Event statement can be used to raise the event in the client. To capture events in theclient that are raised in objects the client is using, declare the object reference using the
WithEvents keyword in the client.
Threading
Threads represent singular, sequential flows of control within an application.
Operating systems separate running applications into processes. Threads maintain
exception handlers, a priority, and a set of structures. These structures are used by the
system to store the thread context until it is scheduled.
Advantages of Using Threads
a) No blocking
No limitation related to thread affinity
b) The ability to asynchronously accomplish remote tasks.
c) The ability to distinguish between tasks of varying priorities
and to assign those priorities.
Command Window
The Command window is an amalgamation of a command line and Visual
Basic's immediate window.
It has two modes: Command and Immediate
8
7/29/2019 Credit Card System new
9/71
In Command mode, you can enter IDE command names after the angle bracket
(>). In Immediate mode, you can execute code statements, set or assign variables,
evaluate expressions, and more.
Properties Window
Use this window to view and change the design-time properties and events of
selected objects that are located in editors and designers. You can also use the
Properties window to edit and view file, project, and solution properties. Properties
Window is available from the View menu.
Solution Explorer
Solution Explorer provides you with an organized view of your projects and
their files as well as ready access to the commands that pertain to them. A toolbar
associated with this window offers commonly used commands for the item you
highlight in the list. To access Solution Explorer, select Solution Explorer on the View
menu.
Debugging
Visual Studio .NET incorporates a single integrated debugger for all Visual
Studio languages, with a new unified interface combining features of the old Visual C+
+ and Visual Basic debuggers, as well as many new features.
Major Enhancements Include
1 Cross-language debugging of Visual Basic, Visual C++, Visual C#, the
Managed Extensions for C++, Script, and SQL.
2 Debugging of applications written for the Common Language
3 Runtime as well as Win32 native applications and script.
4 The ability to attach to and debug a running process launched outside of Visual
Studio.
5 Seamless debugging of applications running locally or on remote servers.
9
7/29/2019 Credit Card System new
10/71
Window Management
Visual Studio makes it easier than ever to view more of your code on-screen at
one time.
Auto Hide
Auto Hide allows you to minimize tool windows, such as Solution Explorer and
the Toolbox, along the edges of the IDE so that the windows do not occupy valuable
space. By minimizing tool windows, you can increase the viewable space of the editor.
Tools
We use the controls for getting the input and displaying the output. Some of the
controls we include in an application are text boxes, label boxes, command buttons etc.
Each type of control has its own set of properties.
Label Box
Used for text that you don't want the user to change as a caption under a
graphics image.
Text Box
Windows Forms text boxes are used to get input from the user or to display text.
The Textbox control is generally used for editable text, although it can also be made
read-only. Text boxes can display multiple lines, wrap text to the size of the control,and add basic formatting.
Group Box
Here frame take into the form Group Box that is used to provide an identifiable
grouping for other controls. Typically, you use group boxes to subdivide a form by
function.
10
7/29/2019 Credit Card System new
11/71
Button
Used to create a button the user can select to carry out a command. If we click
the button, an event will take place. Here we can change fore color, which is not
available in Visual Basic
Timer
Used to trap timer events at set intervals. This control is invisible at runtime.
List Box
Used to display a list of item from which the user can choose one. The list can
be scrolled if it has more items than that can be displayed at one time.
Combo Box
A Combo Box displays an editing field combined with a List box, allowing the
user to select from the list or to enter new text. The default behavior of Combo Box
displays an edit field with a hidden drop-down list.
List View
The Windows Forms List-View control displays a list of items with icons. You
can use a list view to create a user interface like the right pane of Windows Explorer.
The control has four view modes: Large Icon, Small Icon, List, and Details.
11
7/29/2019 Credit Card System new
12/71
Splitter
Windows Forms Splitter controls are used to resize docked controls at run
time. The Splitter control is often used on forms with controls that have varying lengths
of data to present, like Windows Explorer, whose data panes contain information ofvarying widths at different times.
Context Menus
Context menus are used within applications to give users access to frequently
used commands via a right-click of the mouse. Often, context menus are assigned to
controls, and provide particular commands that relate to that specific control.
Notify Icon
Icons in the status area are short cuts to processes that are running in the
background of a computer, such as a virus protection program or a volume control.
These processes do not come with their own user interfaces. Notify Icon provides a
way to program in this functionality.
About ADO.Net
ADO.Net represents the latest data access technology in the Microsoft data
components family of libraries and offers exciting changes.
In the .NET Framework, you can access existing components that return ADO
Record set or Record objects, and you can also access ADO Record set and Record
objects directly using the OLE DB .NET Data Provider. The OLE DB .NET DataProvider supports filling a Dataset from an ADO Record set or Record. This enables
you to consume existing Component Object Model (COM) objects that return ADO
objects, without having to rewrite them entirely using the .NET Framework.
In ADO, the in-memory representation of data is the record set. In ADO.NET, it
is the dataset. A dataset is a collection of one or more tables. A record set looks like a
single table.
ADO.Net Components
1) Dataset
12
7/29/2019 Credit Card System new
13/71
2) Data adapter
3) Data connection
ADO.NET Does Not Depend On Continuously Live Connections. In
ADO.NET, you communicate with the database through a data adapter (an
OleDbDataAdapter or SqlDataAdapter object), which makes calls to an OLE DB
provider or the APIs provided by the underlying data source. The important difference
is that in ADO.NET the data adapter allows you to control how the changes to the
dataset are transmitted to the database by optimizing for performance, performing
data validation checks, or adding any other extra processing.
Benefits of ADO.NET
Interoperability
Maintainability
Programmability
Performance
Scalability
Ms-Access
Access offers a variety of features for different database needs. It can be used to
develop five general types of applications:
Personal applications
Applications used to run a small business
Department applications
Corporations- wide applications
Front-end for enterprise-wide client/server applications
Backend tables can be linked to the front-end applications. The process of
linking to backend tables is almost identical to that of linking to tables in other access
databases. After the back end tables have been linked to the front-end applications, they
can be treated like any other linked tables. Access utilizes ODBC to communicate with
the back end tables. Our application sends an Access SQL statement to the Access Jet
Engine.
13
7/29/2019 Credit Card System new
14/71
Jet translates the Access SQL statement into ODBC SQL. The ODBC SQL
statement is then sent to the ODBC Manager. The ODBC manger locates the correct
ODBC driver and passes it the ODBC SQL statement. The ODBC driver, supplied by
the back end vendor, translates the ODBC SQL statement into the back-ends specific
dialect. The back end specific is sent to the SQL server and to the appropriate database.
DataBase
A database is an organized list of data that can be queried to find information
quickly and easily based and chosen reference point, such as a last name or security
number. In database terminology, the columns are called fields and the rows are called
records. This kind organization in a database is called a data table, or just a table.
Access
Access is a RDBMS that you can store and manipulate large amount of
information. A relational database is a database, which consist of tables of related
information that are linked together based on key field.
7/29/2019 Credit Card System new
15/71
7. Modules 8. Relationship
Database Windows
In Access all, objects a database are stored in a single file and the file namehas an MDB extension.
Tables
Tables are the primary building block of ACCESS database. All datas are
stored in tables.
Queries
A query is a question that you ask of the data that I stored in the tables of your
database
New Features in MS Access
MS Access offers many new and improved features to help create powerful
database applications.
New objects, properties, methods and others language elements
1. Accessing the Internet or an intranet from your applications
2. Creating custom objects with class modules.
3. Customizing menus and tool bars in your applications
4. Removing source code from your applications.
5. Working with version 3.5 of the micro-soft jet database engine.
6. Replicating only a specified part of a database.
7. Using new features in the module window
Using the object browser as a reference for objects and their numbers
Need For Computerization
To overcome the drawbacks in the existing system we need computerization.
The existing process computerized with Visual Basic Dot Net. Everyday they have
more number of processes involved in all over the Organization. It is tedious to verify
15
7/29/2019 Credit Card System new
16/71
each one. This lead to lot of time and resources being wasted. Hence the organization is
dedicated to computerize the system.
System has no auto-mechanism to provide relevant information whenever we
need a sought of requirement. This is done manually and hence a lot of time delay.
Data reliability and maintainability is very easy. Better information accuracy
and user can manipulate the data quickly. We can protect the data from the
unauthorized user access.
The management can make it way more enhanced manner than the past when it
carried out by a well-computerized process.
TESTING
The software testing process commences once the program is created and the
documentation and related data structures are design. Software testing is essential for
correcting errors. Otherwise the program or the project is not said to complete.
Device Testing Types:
Unit testing
Integration testing
Unit Testing
Unit testing focuses verification effort on the smallest unit of software design
(i.e.) the module. Units Testing exercises specific paths in a modules control structure
to ensure complete coverage and maximum error detection. This test focuses on each
module individually; ensure that it function property as a unit. Hence, the name is unit
testing.
16
7/29/2019 Credit Card System new
17/71
Validation Testing
If the user enters invalid data type, it will show the error message. For example,
in this module the user type the employee number as character it indicates the error to
validate data.
Integration Testing
Integration Testing addresses the issues associated with the dual problems
of verification and program construction. After the software has been integrated a set of
High -order tests are conducted .the main objectives in this testing process are to take
unit-tested modules and build a program structure has been dictated by design.
17
7/29/2019 Credit Card System new
18/71
ARCHITECTURAL DESIGN
18
MAIN
MENU
LOGIN
CARDHOLDERDETAILS
FRACHISEEDETAILS
PAYMENTDETAILS
PERSONAL LOANDETAILS
REPORTS
MAINTAINSCARDHOLDER
DETAILS
MAINTAINSFRACHISEE
DETAILS
MAINTAINSPAYMENT
DETAILS
MAINTAINSPERSONAL LOAN
DETAILS
CARDHOLDER
FRACHISEE
PAYMENT DETAILS
LOAN DETAILS
EXIT
7/29/2019 Credit Card System new
19/71
DATABASE DIAGRAM
Table Name: login
Table Name: branch
FIELD NAME DATA TYPE DESCRIPTION
uname Text Username
psword Text Password
FIELD NAME DATA TYPE DESCRIPTION
bid Text Branch ID,
Primary key
mname Text Manager Name
bname Text Branch name
baddress Memo Branch Address
contact Text Contact No
bank Text Bank Name
19
7/29/2019 Credit Card System new
20/71
Table Name: cdetails
Table Name: payment
FIELD NAME DATA TYPE DESCRIPTIONcno Text Card No,
Primary key
name Text Name
gender Text Gender
cdate Date/time Date
dob Text Date of Birth
address Memo Address
pcode Text Pincode
location Text Locationemail Text Email ID
contact Text Contact No
estatus Text Employee Status
annual Text Annual Income
limit1 Text Limit
payment Text Payment
interest1 Text Interest
Interest2 Text Interest
FIELD NAME DATA TYPE DESCRIPTION
cno Text Card No
date1 Date/time Date
credit Text Credit Amountinterest Text Interest
total Text Total Amount
payment Text Payment
bal Text Balance20
7/29/2019 Credit Card System new
21/71
21
7/29/2019 Credit Card System new
22/71
Table Name: personal
FIELD NAME DATA TYPE DESCRIPTION
ano Text Application No
cdate Date/time Dateloan Text Loan Amount
tenure Text Tenure
name Text Name
fname Text Fathers Name
dob Date/time Date of Birth
edu Text Education
martial Text Martial Status
bname Text Bank Name
branch Text Branch Name
acc Text Account Type
nyears Text No of Years
occu Text Occupation
organ Text Type of Organizationsalary Text Salary
card Text Card No
climit Text Limit
nuse Text No of years use
addr Memo Address
location Text Location
contact Text Contact No
resi Text Residence type
rname1 Text Reference Name1
relat1 Text Relation
Tel1 Text Telephone No1
Tel2 Text Telephone No2
tloan Text Type of Loan
22
7/29/2019 Credit Card System new
23/71
DATA FLOW DIAGRAM
23
LEVEL 0
USER CREDIT
CARD
SYSTEM
WAREHOUSE
LEVEL 1
USER
CHECK
FOR
VALIDA
TION
USER NAME
USERPASSWORD
VALID ENTER
INTO
CREDIT
CARD
SYSTEM
RELOGIN
CREDIT CARD
SYSTEM
7/29/2019 Credit Card System new
24/71
24
LEVEL 2
USERCHECK
PROCES
S
USER NAME
PASSWORD
RELOGIN
INVALID
ENTER INTO
CREDITCARD
SYSTEM
VALID (USER)
CARD
HOLDER
DETAILS
FRACHISE
E DETAILSPAYMENT
DETAILS
PERSONAL
LOAN
DETAILS
7/29/2019 Credit Card System new
25/71
SYSTEM REQUIREMENTS
25
LEVEL 3
USERCHECK
PROCES
S
USER NAME
PASSWORD
RELOGIN
INVALID
ENTER
INTO
CREDIT
CARD
SYSTEM
VALID (ADMIN)
REPORT
S
7/29/2019 Credit Card System new
26/71
HARDWARE REQUIREMENTS
Processor : INTELCore2 DUO 2.39 GHz
Main Memory : 1 GHz
Hard Disk : Segate 1.60 GB SATA
Monitor : INNOVA 23 TFT Monitor
Keyboard : INNOVA Internet VSB Keyboard
Mouse : INNOVA 2 Buttons Scroll USB
SOFTWARE REQUIREMENTS
Operating System : Windows XP Professional (SP3)
Language : Visual Basic
Back End : Ms-Access
SOURCE CODE
26
7/29/2019 Credit Card System new
27/71
Class1.vb
Imports System.Data
Imports System.Data.OleDb
PublicClass Class1
Public con AsNew OleDbConnection
Public cmd AsNew OleDbCommand
Public drAs OleDbDataReader
Public da As OleDbDataAdapter
Dim ds AsNew DataSet
Dim dt AsNew DataTable
Sub connect()
con =New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=credit.mdb")con.Open()
EndSub
Sub disconnect()
con.Close()
EndSub
Sub execute(ByVal s AsString)
cmd =New OleDbCommand(s, con)
cmd.ExecuteNonQuery()
EndSub
Sub retrieve(ByVal s AsString)cmd =New OleDbCommand(s, con)
dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)
EndSub
Function dset(ByVal s AsString) As DataSet
ds =New DataSet
da =New OleDbDataAdapter(s, con)
ds.Clear()
da.Fill(ds, "rrr")
Return ds
EndFunction
Function dtable(ByVal s AsString) As DataTable
dt.Clear()
dt.Columns.Clear()
dt.Rows.Clear()
da =New OleDbDataAdapter(s, con)
da.Fill(dt)
da.Dispose()
Return dt
EndFunction
EndClass
27
7/29/2019 Credit Card System new
28/71
Module1.vb
Module Module1
Public obj AsNew Class1 Public qry AsString
EndModule
Class1.vb
PublicClass Login
Dim ds AsNew DataSet
Dim i AsInteger
PrivateSub btnLogin_Click(ByVal senderAs System.Object, ByVal e AsSystem.EventArgs) Handles btnLogin.Click
Try
obj.connect()
ds = obj.dset("select * from login where uname='" & Trim(Me.txtUname.Text)
& "' and psword='" & Trim(Me.txtPwd.Text) & "'")
obj.disconnect()
Ifds.Tables(0).Rows.Count > 0 Then
Fori = 0 To ds.Tables(0).Rows.Count - 1
Ifds.Tables(0).Rows(i).Item(0).ToString = "User"Then
Me.Hide() Dim f1 AsNew UserPage
f1.Show()
ElseIfds.Tables(0).Rows(i).Item(0).ToString = "Admin"Then
Me.Hide()
Dim f2 AsNew AdminPage
f2.Show()
EndIf
Next
Else
MsgBox("Invalid User")
txtUname.Text = ""txtPwd.Text = ""
txtUname.Focus()
EndIf
ds.Clear()
Catch ex As Exception
EndTry
EndSub
PrivateSub btnCancel_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnCancel.Click
txtUname.Text = ""
txtPwd.Text = ""txtUname.Focus()
28
7/29/2019 Credit Card System new
29/71
EndSub
EndClass
UserPage.vb
PublicClass UserPage PrivateSub btnCard_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnCard.Click
Me.Hide()
Dim f1 AsNew CardholderMaintenance
f1.Show()
EndSub
PrivateSub btnFranchise_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnFranchise.Click
Me.Hide()
Dim f1 AsNew FranchiesMaintenance
f1.Show()
EndSub
PrivateSub btnPayment_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnPayment.Click
Me.Hide()
Dim f1 AsNew Payment
f1.Show()
EndSub
PrivateSub btnLoan_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnLoan.Click
Me.Hide()
Dim f1 AsNew PersonalLoan
f1.Show()
EndSub
PrivateSub btnLog_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnLog.Click
End
EndSub
PrivateSub lnkBack_LinkClicked(ByVal senderAs System.Object, ByVal e As
System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles
lnkBack.LinkClicked
Me.Hide()
Dim f1 AsNew Login
f1.Show()
EndSub
EndClass
CardholderMaintenance.vb
29
7/29/2019 Credit Card System new
30/71
Imports System.Data
Imports System.Data.OleDb
PublicClass CardholderMaintenance
Dim address, genderAsString Dim y1, y2 AsString
PrivateSub CardholderMaintenance_Load(ByVal senderAs System.Object, ByVal e
As System.EventArgs) HandlesMyBase.Load
Try
obj.connect()
Call autocid()
obj.disconnect()
Me.txtDate.Text = Now.Date
Me.txtName.Focus()
Call loadLocation()
Me.cmbStatus.Items.Add("Salaried")
Me.cmbStatus.Items.Add("Self Employed")
Call loadIncome()
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
PublicSub autocid()
Try
Dim dt AsNew Data.DataSet
dt = obj.dset("select * from cdetails")
Ifdt.Tables(0).Rows.Count
7/29/2019 Credit Card System new
31/71
Me.cmbIncome.Items.Add("50,000 - 99,999")
Me.cmbIncome.Items.Add("1,00,000 - 4,99,999")
Me.cmbIncome.Items.Add("5,00,000 - 9,99,999")
Me.cmbIncome.Items.Add("Above 10,00,000")
EndSub
PrivateSub cmbIncome_SelectedIndexChanged(ByVal senderAs System.Object,ByVal e As System.EventArgs) Handles cmbIncome.SelectedIndexChanged
Try
IfMe.cmbIncome.Text = "Below 49,999"Then
Me.txtLimit.Text = "25,000"
y1 = "2.4"
y2 = "2.2"
ElseIfMe.cmbIncome.Text = "50,000 - 99,999"Then
Me.txtLimit.Text = "50,000"
y1 = "2.5"
y2 = "2.3"
ElseIfMe.cmbIncome.Text = "1,00,000 - 4,99,999"Then Me.txtLimit.Text = "75,000"
y1 = "2.6"
y2 = "2.4"
ElseIfMe.cmbIncome.Text = "5,00,000 - 9,99,999"Then
Me.txtLimit.Text = "1,00,000"
y1 = "2.7"
y2 = "2.5"
ElseIfMe.cmbIncome.Text = "Above 10,00,000"Then
Me.txtLimit.Text = "5,00,000"
y1 = "2.8"
y2 = "2.6"
EndIf
Catch ex As Exception
EndTry
EndSub
PrivateSub btnRegister_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnRegister.Click
Try
obj.connect()
IfMe.rbtnMale.Checked = TrueThengender = "Male"
Else
gender = "Female"
EndIf
address = Trim(Me.txtAddr.Text)
address = address.Replace("'", "''")
IfMe.txtName.Text ""AndMe.txtAddr.Text ""AndMe.txtContact.Text
""AndMe.txtPayment.Text ""Then
qry = "INSERT INTO
cdetails(cno,name,gender,cdate,dob,address,pcode,location,email,contact,estatus,annual,limit1,payment,interest1,interest2) VALUES('" & Trim(Me.txtCno.Text) & "','"
31
7/29/2019 Credit Card System new
32/71
qry = qry & Trim(Me.txtName.Text) & "','" & gender & "','" &
Trim(Me.txtDate.Text) & "','" & Format(Me.dtpDob.Value, "MM/dd/yyyy") & "','" &
address & "','"
qry = qry & Trim(Me.txtPcode.Text) & "','" & Me.cmbLocation.Text & "','"
& Trim(Me.txtEmail.Text) & "','" & Trim(Me.txtContact.Text) & "','" &
Me.cmbStatus.Text & "','"qry = qry & Me.cmbIncome.Text & "','" & Trim(Me.txtLimit.Text) & "','" &
Trim(Me.txtPayment.Text) & "','" & y1 & "','" & y2 & "')"
obj.execute(qry)
MsgBox("Inserted")
Call autocid()
obj.disconnect()
Else
MsgBox("Empty")
EndIf
Catch ex As Exception EndTry
EndSub
PrivateSub txtPayment_TextChanged(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles txtPayment.TextChanged
Try
IfCDbl(Me.txtPayment.Text) > CDbl(Me.txtLimit.Text) Then
MsgBox("Payment should be less then LimitAmount")
Me.txtPayment.Text = ""
EndIf
Catch ex As Exception
EndTry
EndSub
PrivateSub btnClear_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnClear.Click
Me.txtName.Text = ""
Me.rbtnMale.Checked = False
Me.rbtnFemale.Checked = False
Me.txtAddr.Text = "" Me.txtPcode.Text = ""
Me.cmbLocation.Text = ""
Me.txtEmail.Text = ""
Me.txtContact.Text = ""
Me.cmbIncome.Text = ""
Me.cmbStatus.Text = ""
Me.cmbIncome.Text = ""
Me.txtLimit.Text = ""
Me.txtPayment.Text = ""
Call autocid()
Me.txtName.Focus() EndSub
32
7/29/2019 Credit Card System new
33/71
PrivateSub btnBack_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnBack.Click
Me.Hide()
Dim f1 AsNew UserPage
f1.Show() EndSub
EndClass
FranchiesMainTenance.vb
Imports System.Data
Imports System.Data.OleDb
PublicClass FranchiesMaintenance
Dim ds AsNew DataSet
Dim address AsString
PrivateSub FranchiesMaintenance_Load(ByVal senderAs System.Object, ByVal e
As System.EventArgs) HandlesMyBase.Load
Try
obj.connect()
Call loadBid()
Me.txtDate.Text = Now.Date
obj.disconnect()
Catch ex As Exception
EndTry EndSub
PublicSub loadBid()
Try
Dim dt AsNew Data.DataSet
dt = obj.dset("select * from branch")
Ifdt.Tables(0).Rows.Count
7/29/2019 Credit Card System new
34/71
IfMe.txtMname.Text ""AndMe.txtBname.Text ""And
Me.txtBaddr.Text ""AndMe.txtContact.Text ""Then
qry = "INSERT INTO branch(bid,mname,bname,baddress,contact,bank)
VALUES('" & Trim(Me.txtBid.Text) & "','"
qry = qry & Trim(Me.txtMname.Text) & "','" & Trim(Me.txtBname.Text) &
"','" & address & "','"qry = qry & Trim(Me.txtContact.Text) & "','" & Trim(Me.txtBank.Text) &
"')"
obj.execute(qry)
MsgBox("Inserted")
Call loadBid()
Else
MsgBox("Empty")
EndIf
obj.disconnect()
Catch ex As Exception
EndTry EndSub
PrivateSub btnClear_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnClear.Click
Me.txtMname.Text = ""
Me.txtBname.Text = ""
Me.txtBaddr.Text = ""
Me.txtContact.Text = ""
Me.txtBank.Text = ""
Me.txtMname.Focus()
Call loadBid()
EndSub
PrivateSub btnBack_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnBack.Click
Me.Hide()
Dim f1 AsNew UserPage
f1.Show()
EndSub
EndClass
Payment.vb
Imports System.Data
Imports System.Data.OleDb
PublicClass Payment
Dim ds AsNew DataSet
Dim d1, d2 AsDate
Dim d AsInteger
Dim y1 AsString
Dim interest AsDouble Dim cno AsString
34
7/29/2019 Credit Card System new
35/71
PrivateSub Payment_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
Try
Me.txtDate.Text = Now.Date
Catch ex As Exception
EndTry EndSub
Sub loadAmount()
Try
obj.connect()
cno = Trim(Me.txtCno.Text)
qry = "SELECT * FROM cdetails WHERE cno='" & cno & "'"
ds = obj.dset(qry)
Ifds.Tables(0).Rows.Count > 0 Then
Me.txtCredit.Text = ds.Tables(0).Rows(0).Item("payment").ToString
d1 = ds.Tables(0).Rows(0).Item("cdate").ToString
d2 = Trim(Me.txtDate.Text).ToStringd = DateDiff(DateInterval.Month, d1, d2).ToString
Ifd < 7 Then
y1 = ds.Tables(0).Rows(0).Item("interest1").ToString
interest = CDbl(Me.txtCredit.Text) * (y1 / 100)
Else
y1 = ds.Tables(0).Rows(0).Item("interest2").ToString
interest = CDbl(Me.txtCredit.Text) * (y1 / 100)
EndIf
Me.txtInterest.Text = interest
Me.txtTotal.Text = CDbl(Me.txtCredit.Text) + CDbl(Me.txtInterest.Text)
EndIf
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
PrivateSub txtCno_TextChanged(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles txtCno.TextChanged
Call loadAmount()
EndSub
PrivateSub txtPayment_TextChanged(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles txtPayment.TextChanged
Try
IfCDbl(Me.txtPayment.Text) > CDbl(Me.txtTotal.Text) Then
MsgBox("Payment should be less then TotalAmount")
Me.txtPayment.Text = ""
Me.txtBalance.Text = ""
Else
Me.txtBalance.Text = CDbl(Me.txtTotal.Text) - CDbl(Me.txtPayment.Text)
EndIf
Catch ex As Exception EndTry
35
7/29/2019 Credit Card System new
36/71
EndSub
PrivateSub btnRegister_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnRegister.Click
Try
obj.connect() IfMe.txtCno.Text ""AndMe.txtPayment.Text ""Then
qry = "INSERT INTO payment(cno,date1,credit,interest,total,payment,bal)
VALUES('"
qry = qry & Trim(Me.txtCno.Text) & "','" & Trim(Me.txtDate.Text) & "','" &
Trim(Me.txtCredit.Text) & "','"
qry = qry & Trim(Me.txtInterest.Text) & "','" & Trim(Me.txtTotal.Text) &
"','" & Trim(Me.txtPayment.Text) & "','" & Trim(Me.txtBalance.Text) & "')"
obj.execute(qry)
MsgBox("Inserted")
qry = "UPDATE cdetails SET payment='" & Trim(Me.txtBalance.Text) & "'WHERE cno='" & Trim(Me.txtCno.Text) & "'"
obj.execute(qry)
obj.disconnect()
Else
MsgBox("Empty")
EndIf
Catch ex As Exception
EndTry
EndSub
PrivateSub btnClear_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnClear.Click
Me.txtCno.Text = ""
Me.txtCredit.Text = ""
Me.txtInterest.Text = ""
Me.txtTotal.Text = ""
Me.txtPayment.Text = ""
Me.txtBalance.Text = ""
Me.txtCno.Focus()
EndSub
PrivateSub btnBack_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnBack.Click
Me.Hide()
Dim f1 AsNew UserPage
f1.Show()
EndSub
EndClass
PersonalLoan.vb
36
7/29/2019 Credit Card System new
37/71
Imports System.Data
Imports System.Data.OleDb
PublicClass PersonalLoan
Dim address, tloan AsString
PrivateSub PersonalLoan_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load Me.txtDate.Text = Now.Date
Call autoAno()
Call loadTenure()
Call loadQual()
Call loadMartial()
Call loadAcc()
Call loadYears()
Call loadOcc()
Call loadOrgan()
Call loadCardIssuer()
Call loadLocation() Call loadRType()
Call loadTime()
Call loadPlace()
EndSub
Sub loadTenure()
Me.cmbTenure.Items.Add("12")
Me.cmbTenure.Items.Add("18")
Me.cmbTenure.Items.Add("24")
Me.cmbTenure.Items.Add("30")
Me.cmbTenure.Items.Add("36")
Me.cmbTenure.Items.Add("48")
EndSub
Sub loadQual()
Me.cmbEductional.Items.Add("Undergraduate")
Me.cmbEductional.Items.Add("Graduate")
Me.cmbEductional.Items.Add("Postgraduate")
Me.cmbEductional.Items.Add("Professional")
EndSub
Sub loadMartial()
Me.cmbMartial.Items.Add("Single")
Me.cmbMartial.Items.Add("Married") EndSub
Sub loadAcc()
Me.cmbAcctype.Items.Add("Savings")
Me.cmbAcctype.Items.Add("Current")
Me.cmbAcctype.Items.Add("Overdraft")
EndSub
Sub loadYears()
Me.cmbNo.Items.Add("Less than 1 Year")
Me.cmbNo.Items.Add("1 to 3 years")
Me.cmbNo.Items.Add("4 to 5 Year")
Me.cmbNo.Items.Add(">5 Years") EndSub
37
7/29/2019 Credit Card System new
38/71
Sub loadOcc()
Me.cmbOccu.Items.Add("Salaried")
Me.cmbOccu.Items.Add("Practing Professional")
Me.cmbOccu.Items.Add("Self Employed")
EndSub
Sub loadOrgan() Me.cmbType.Items.Add("Govt Organization")
Me.cmbType.Items.Add("Public Sector Undertaking")
Me.cmbType.Items.Add("Medical or Educational Institution")
Me.cmbType.Items.Add("Public Limited Company")
Me.cmbType.Items.Add("Private Limited Company")
Me.cmbType.Items.Add("Partnership")
EndSub
Sub loadCardIssuer()
Me.cmbCard.Items.Add("Amex")
Me.cmbCard.Items.Add("CitiBank")
Me.cmbCard.Items.Add("StanChart") Me.cmbCard.Items.Add("HSBC")
Me.cmbCard.Items.Add("HDFC")
Me.cmbCard.Items.Add("ICICI")
EndSub
Sub loadRType()
Me.cmbResidence.Items.Add("Owned")
Me.cmbResidence.Items.Add("Rented")
Me.cmbResidence.Items.Add("company Provided")
Me.cmbResidence.Items.Add("Parent Owned")
EndSub
Sub loadTime()
Me.cmbTime.Items.Add("8am - 10am")
Me.cmbTime.Items.Add("11am - 6pm")
Me.cmbTime.Items.Add("7pm - 10pm")
EndSub
Sub loadPlace()
Me.cmbPlace.Items.Add("Residence")
Me.cmbPlace.Items.Add("Office")
EndSub
Sub loadLocation()
Me.cmbLocation.Items.Add("Bangalore") Me.cmbLocation.Items.Add("Chennai")
Me.cmbLocation.Items.Add("Delhi")
Me.cmbLocation.Items.Add("Hyderabad")
Me.cmbLocation.Items.Add("Kolkata")
Me.cmbLocation.Items.Add("Mumbai")
Me.cmbLocation.Items.Add("Pune")
Me.cmbLocation.Items.Add("Thanjavur")
Me.cmbLocation.Items.Add("Trichy")
EndSub
Sub autoAno() Try
38
7/29/2019 Credit Card System new
39/71
obj.connect()
Dim dt AsNew Data.DataSet
dt = obj.dset("select * from personal")
Ifdt.Tables(0).Rows.Count
7/29/2019 Credit Card System new
40/71
qry = qry & Me.cmbEductional.Text & "','" & Me.cmbMartial.Text & "','" &
Trim(Me.txtBname.Text) & "','" & Trim(Me.txtBranch.Text) & "','" &
Me.cmbAcctype.Text & "','" & Me.cmbNo.Text & "','" & Me.cmbOccu.Text & "','"
qry = qry & Me.cmbType.Text & "','" & Trim(Me.txtSalary.Text) & "','" &
Me.cmbCard.Text & "','" & Trim(Me.txtSanction.Text) & "','" &
Trim(Me.txtNoyears.Text) & "','" & address & "','" & Me.cmbLocation.Text & "','"qry = qry & Trim(Me.txtContact.Text) & "','" & Me.cmbResidence.Text &
"','" & Trim(Me.txtRname1.Text) & "','" & Trim(Me.txtRname2.Text) & "','" &
Trim(Me.txtRelation1.Text) & "','" & Trim(Me.txtRelation2.Text) & "','"
qry = qry & Trim(Me.txtTel1.Text) & "','" & Trim(Me.txtTel2.Text) & "','" &
tloan & "','" & Trim(Me.txtMonthly.Text) & "','" & Me.cmbTime.Text & "','" &
Me.cmbPlace.Text & "')"
obj.execute(qry)
MsgBox("Inserted")
Call autoAno()
Else
MsgBox("Empty") EndIf
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
PrivateSub btnClear_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnClear.Click
Me.txtLoan.Text = ""
Me.cmbTenure.Text = ""
Me.txtName.Text = ""
Me.txtFname.Text = ""
Me.cmbEductional.Text = ""
Me.cmbMartial.Text = ""
Me.txtBname.Text = ""
Me.txtBranch.Text = ""
Me.cmbAcctype.Text = ""
Me.cmbNo.Text = ""
Me.cmbOccu.Text = ""
Me.cmbType.Text = ""
Me.txtSalary.Text = "" Me.cmbCard.Text = ""
Me.txtSanction.Text = ""
Me.txtNoyears.Text = ""
Me.txtAddress.Text = ""
Me.cmbLocation.Text = ""
Me.txtContact.Text = ""
Me.cmbResidence.Text = ""
Me.txtRname1.Text = ""
Me.txtRname2.Text = ""
Me.txtRelation1.Text = ""
Me.txtRelation2.Text = "" Me.txtTel1.Text = ""
40
7/29/2019 Credit Card System new
41/71
Me.txtTel2.Text = ""
Me.txtMonthly.Text = ""
Me.cmbTime.Text = ""
Me.cmbPlace.Text = ""
Me.rbtn1.Checked = False
Me.rbtn2.Checked = False Me.rbtn3.Checked = False
Me.rbtn4.Checked = False
Me.rbtn5.Checked = False
Me.rbtn6.Checked = False
Me.rbtn7.Checked = False
Me.rbtn8.Checked = False
EndSub
PrivateSub btnBack_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnBack.Click
Me.Hide() Dim f1 AsNew UserPage
f1.Show()
EndSub
EndClass
AdminPage.vb
PublicClass AdminPage
PrivateSub btnCard_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnCard.Click Me.Hide()
Dim f1 AsNew ModifyCardholder
f1.Show()
EndSub
PrivateSub btnFranchise_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnFranchise.Click
Me.Hide()
Dim f1 AsNew ModifyFranchies
f1.Show()
EndSub
PrivateSub btnReports_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnReports.Click
Me.Hide()
Dim f1 AsNew AdminReports
f1.Show()
EndSub
PrivateSub btnLog_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnLog.Click
End EndSub
41
7/29/2019 Credit Card System new
42/71
PrivateSub lnkBack_LinkClicked(ByVal senderAs System.Object, ByVal e As
System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles
lnkBack.LinkClicked
Me.Hide()
Dim f1 AsNew Loginf1.Show()
EndSub
EndClass
ModifyCardholder.vb
PublicClass ModifyCardholder
Dim ds AsNew DataSet
Dim i, j, k1, k2, sindex, sindex1, sindex2 AsInteger
Dim st, address, gender, cno, st1, st2, y1, y2 AsString
PrivateSub ModifyCardholder_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
Try
obj.connect()
Call loadCno()
Call enabl()
Call LoadLocation()
Call loadIncome()
Call loadStatus()obj.disconnect()
Catch ex As Exception
EndTry
EndSub
Sub loadCno()
Try
qry = "SELECT distinct(cno) FROM cdetails"
ds = obj.dset(qry)
Me.cmbCardNo.Items.Clear()
Fori = 0 To ds.Tables(0).Rows.Count - 1
Me.cmbCardNo.Items.Add(ds.Tables(0).Rows(i).Item("cno")) Next
ds.Clear()
Catch ex As Exception
EndTry
EndSub
Sub LoadLocation()
Try
Me.cmbLocation.Items.Add("Bangalore")
Me.cmbLocation.Items.Add("Chennai")
Me.cmbLocation.Items.Add("Delhi")
Me.cmbLocation.Items.Add("Hyderabad") Me.cmbLocation.Items.Add("Kolkata")
42
7/29/2019 Credit Card System new
43/71
Me.cmbLocation.Items.Add("Mumbai")
Me.cmbLocation.Items.Add("Pune")
Me.cmbLocation.Items.Add("Thanjavur")
Me.cmbLocation.Items.Add("Trichy")
Catch ex As Exception
EndTry EndSub
Sub loadIncome()
Me.cmbIncome.Items.Add("Below 49,999")
Me.cmbIncome.Items.Add("50,000 - 99,999")
Me.cmbIncome.Items.Add("1,00,000 - 4,99,999")
Me.cmbIncome.Items.Add("5,00,000 - 9,99,999")
Me.cmbIncome.Items.Add("Above 10,00,000")
EndSub
Sub loadStatus()
Me.cmbStatus.Items.Add("Salaried")
Me.cmbStatus.Items.Add("Self Employed") EndSub
PrivateSub btnEdit_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnEdit.Click
Try
obj.connect()
ds = obj.dset("select * from cdetails where cno='" &
Trim(Me.cmbCardNo.Text) & "'")
obj.disconnect()
Ifds.Tables(0).Rows.Count > 0 Then
Call enable1()
Fori = 0 To ds.Tables(0).Rows.Count - 1
Me.txtName.Text = ds.Tables(0).Rows(i).Item("name")
Ifds.Tables(0).Rows(i).Item("gender") = "Male"Then
Me.rbtnMale.Checked = True
Else
Me.rbtnFemale.Checked = True
EndIf
Me.txtAddr.Text = ds.Tables(0).Rows(i).Item("address")
Me.txtPcode.Text = ds.Tables(0).Rows(i).Item("pcode") Me.dtpDob.Text = ds.Tables(0).Rows(i).Item("dob")
st = ds.Tables(0).Rows(i).Item("location")
Forj = 0 ToMe.cmbLocation.Items.Count - 1
IfMe.cmbLocation.Items(j).ToString = st Then
sindex = j
EndIf
Next
Me.cmbLocation.SelectedIndex = sindex
st1 = ds.Tables(0).Rows(i).Item("estatus") Fork1 = 0 ToMe.cmbStatus.Items.Count - 1
43
7/29/2019 Credit Card System new
44/71
IfMe.cmbStatus.Items(k1).ToString = st1 Then
sindex1 = k1
EndIf
Next
Me.cmbStatus.SelectedIndex = sindex1
st2 = ds.Tables(0).Rows(i).Item("annual")
Fork2 = 0 ToMe.cmbIncome.Items.Count - 1
IfMe.cmbIncome.Items(k2).ToString = st2 Then
sindex2 = k2
EndIf
Next
Me.cmbIncome.SelectedIndex = sindex2
Me.txtContact.Text = ds.Tables(0).Rows(i).Item("contact")
Me.txtLimit.Text = ds.Tables(0).Rows(i).Item("limit1")
Me.txtPayment.Text = ds.Tables(0).Rows(i).Item("payment") Me.txtEmail.Text = ds.Tables(0).Rows(i).Item("email")
Next
EndIf
ds.Clear()
Catch ex As Exception
EndTry
EndSub
PrivateSub btnSave_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnSave.Click
Try
obj.connect()
address = Trim(Me.txtAddr.Text)
address = address.Replace("'", "''")
IfMe.rbtnFemale.Checked = TrueThen
gender = "Female"
Else
gender = "Male"
EndIf
IfMe.txtName.Text ""AndMe.txtAddr.Text ""AndMe.txtContact.Text
""AndMe.txtPayment.Text ""Then
qry = "UPDATE cdetails SET name='" & Trim(Me.txtName.Text) &
"',gender='" & gender & "',dob='" & Me.dtpDob.Value & "',address='"
qry = qry & address & "',pcode='" & Trim(Me.txtPcode.Text) &
"',location='" & Trim(Me.cmbLocation.Text) & "',email='" & Trim(Me.txtEmail.Text)
& "',contact='"
qry = qry & Trim(Me.txtContact.Text) & "',estatus='" & Me.cmbStatus.Text
& "',annual='" & Me.cmbIncome.Text & "',limit1='"
qry = qry & Trim(Me.txtLimit.Text) & "',payment='" &
Trim(Me.txtPayment.Text) & "' WHERE cno='" & Me.cmbCardNo.Text & "'"obj.execute(qry)
44
7/29/2019 Credit Card System new
45/71
MsgBox("Updated")
Call cle()
Call enabl()
Me.cmbCardNo.Text = ""
Else
MsgBox("Empty") EndIf
ds.Clear()
Catch ex As Exception
EndTry
EndSub
PrivateSub cmbIncome_SelectedIndexChanged(ByVal senderAs System.Object,
ByVal e As System.EventArgs) Handles cmbIncome.SelectedIndexChanged
Try
IfMe.cmbIncome.Text = "Below 49,999"Then Me.txtLimit.Text = "25,000"
y1 = "2.4"
y2 = "2.2"
ElseIfMe.cmbIncome.Text = "50,000 - 99,999"Then
Me.txtLimit.Text = "50,000"
y1 = "2.5"
y2 = "2.3"
ElseIfMe.cmbIncome.Text = "1,00,000 - 4,99,999"Then
Me.txtLimit.Text = "75,000"
y1 = "2.6"
y2 = "2.4"
ElseIfMe.cmbIncome.Text = "5,00,000 - 9,99,999"Then
Me.txtLimit.Text = "1,00,000"
y1 = "2.7"
y2 = "2.5"
ElseIfMe.cmbIncome.Text = "Above 10,00,000"Then
Me.txtLimit.Text = "5,00,000"
y1 = "2.8"
y2 = "2.6"
EndIf
Catch ex As Exception EndTry
EndSub
PrivateSub btnDelete_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnDelete.Click
Try
Call enabl()
Call cle()
cno = Me.cmbCardNo.Text
obj.connect()
Ifcno ""Then
45
7/29/2019 Credit Card System new
46/71
IfMsgBox("Are u sure Deleted", MsgBoxStyle.OkCancel) =
MsgBoxResult.OkThen
qry = "DELETE * FROM cdetails WHERE cno='" &
Trim(Me.cmbCardNo.Text) & "'"
obj.execute(qry)
MsgBox("Deleted")qry = "DELETE * FROM payment WHERE cno='" &
Trim(Me.cmbCardNo.Text) & "'"
obj.execute(qry)
Me.cmbCardNo.Text = ""
Call loadCno()
Else
MsgBox("Not Deleted")
Me.cmbCardNo.Text = ""
EndIf
EndIf
obj.disconnect() Catch ex As Exception
EndTry
EndSub
Sub cle()
Me.txtName.Text = ""
Me.rbtnFemale.Checked = False
Me.rbtnMale.Checked = False
Me.txtAddr.Text = ""
Me.txtPcode.Text = ""
Me.cmbLocation.Text = ""
Me.txtEmail.Text = ""
Me.txtContact.Text = ""
Me.cmbStatus.Text = ""
Me.cmbIncome.Text = ""
Me.txtLimit.Text = ""
Me.txtPayment.Text = ""
Me.cmbCardNo.Focus()
EndSub
Sub enabl()
Me.GroupBox2.Enabled = False
Me.Label3.Enabled = False Me.Label4.Enabled = False
Me.Label5.Enabled = False
Me.Label6.Enabled = False
Me.Label7.Enabled = False
Me.Label8.Enabled = False
Me.Label9.Enabled = False
Me.Label10.Enabled = False
Me.Label11.Enabled = False
Me.Label14.Enabled = False
Me.Label15.Enabled = False
Me.Label16.Enabled = False Me.txtName.Enabled = False
46
7/29/2019 Credit Card System new
47/71
Me.rbtnMale.Enabled = False
Me.rbtnFemale.Enabled = False
Me.dtpDob.Enabled = False
Me.txtAddr.Enabled = False
Me.txtPcode.Enabled = False
Me.cmbLocation.Enabled = False Me.txtEmail.Enabled = False
Me.txtContact.Enabled = False
Me.cmbStatus.Enabled = False
Me.cmbIncome.Enabled = False
Me.txtLimit.Enabled = False
Me.txtPayment.Enabled = False
Me.btnSave.Enabled = False
EndSub
Sub enable1()
Me.GroupBox2.Enabled = True
Me.Label3.Enabled = True Me.Label4.Enabled = True
Me.Label5.Enabled = True
Me.Label6.Enabled = True
Me.Label7.Enabled = True
Me.Label8.Enabled = True
Me.Label9.Enabled = True
Me.Label10.Enabled = True
Me.Label11.Enabled = True
Me.Label14.Enabled = True
Me.Label15.Enabled = True
Me.Label16.Enabled = True
Me.txtName.Enabled = True
Me.rbtnMale.Enabled = True
Me.rbtnFemale.Enabled = True
Me.dtpDob.Enabled = True
Me.txtAddr.Enabled = True
Me.txtPcode.Enabled = True
Me.cmbLocation.Enabled = True
Me.txtEmail.Enabled = True
Me.txtContact.Enabled = True
Me.cmbStatus.Enabled = True Me.cmbIncome.Enabled = True
Me.txtLimit.Enabled = True
Me.txtPayment.Enabled = True
Me.btnSave.Enabled = True
EndSub
PrivateSub btnBack_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnBack.Click
Me.Hide()
Dim f1 AsNew AdminPage
f1.Show()
EndSubEndClass
47
7/29/2019 Credit Card System new
48/71
ModifyFranchies.vb
PublicClass ModifyFranchies
Dim ds AsNew DataSet
Dim i AsInteger
Dim address, bid AsString PrivateSub ModifyFranchies_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
Try
obj.connect()
Call loadBid()
Call enabl()
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
Sub loadBid()
Try
qry = "SELECT distinct(bid) FROM branch"
ds = obj.dset(qry)
Me.cmbBid.Items.Clear()
Fori = 0 To ds.Tables(0).Rows.Count - 1
Me.cmbBid.Items.Add(ds.Tables(0).Rows(i).Item("bid"))
Next
ds.Clear()
Catch ex As Exception
EndTry EndSub
PrivateSub btnEdit_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnEdit.Click
Try
obj.connect()
qry = "SELECT * FROM branch WHERE bid='" & Me.cmbBid.Text & "'"
ds = obj.dset(qry)
obj.disconnect()
Ifds.Tables(0).Rows.Count > 0 Then
Call enable1() Fori = 0 To ds.Tables(0).Rows.Count - 1
Me.txtMname.Text = ds.Tables(0).Rows(i).Item("mname")
Me.txtBname.Text = ds.Tables(0).Rows(i).Item("bname")
Me.txtBaddr.Text = ds.Tables(0).Rows(i).Item("baddress")
Me.txtContact.Text = ds.Tables(0).Rows(i).Item("contact")
Me.txtBank.Text = ds.Tables(0).Rows(i).Item("bank")
Next
EndIf
ds.Clear()
Catch ex As Exception
EndTry EndSub
48
7/29/2019 Credit Card System new
49/71
PrivateSub btnSave_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnSave.Click
Try
obj.connect()
address = Trim(Me.txtBaddr.Text)address = address.Replace("'", "''")
IfMe.txtMname.Text ""AndMe.txtBname.Text ""And
Me.txtBaddr.Text ""AndMe.txtContact.Text ""AndMe.txtBank.Text ""
Then
qry = "UPDATE branch SET mname='" & Trim(Me.txtMname.Text) &
"',bname='" & Trim(Me.txtBname.Text) & "',baddress='"
qry = qry & address & "',contact='" & Trim(Me.txtContact.Text) & "',bank='"
& Trim(Me.txtBank.Text) & "' WHERE bid='" & Me.cmbBid.Text & "'"
obj.execute(qry)
MsgBox("Updated") Call cle()
Call enabl()
Me.cmbBid.Text = ""
Else
MsgBox("Empty")
EndIf
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
PrivateSub btnDelete_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnDelete.Click
Try
Call enabl()
Call cle()
bid = Me.cmbBid.Text
obj.connect()
Ifbid ""Then
IfMsgBox("Are u sure Deleted", MsgBoxStyle.OkCancel) =
MsgBoxResult.OkThenqry = "DELETE * FROM branch WHERE bid='" &
Trim(Me.cmbBid.Text) & "'"
obj.execute(qry)
MsgBox("Deleted")
Me.cmbBid.Text = ""
Call loadBid()
Else
MsgBox("Not Deleted")
Me.cmbBid.Text = ""
EndIf
EndIf
49
7/29/2019 Credit Card System new
50/71
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
Sub cle()
Me.txtMname.Text = "" Me.txtBname.Text = ""
Me.txtBaddr.Text = ""
Me.txtContact.Text = ""
Me.txtBank.Text = ""
Me.cmbBid.Focus()
EndSub
Sub enabl()
Me.GroupBox1.Enabled = False
Me.Label2.Enabled = False
Me.Label3.Enabled = False
Me.Label4.Enabled = False Me.Label7.Enabled = False
Me.Label9.Enabled = False
Me.txtMname.Enabled = False
Me.txtBname.Enabled = False
Me.txtBaddr.Enabled = False
Me.txtContact.Enabled = False
Me.txtBank.Enabled = False
EndSub
Sub enable1()
Me.GroupBox1.Enabled = True
Me.Label2.Enabled = True
Me.Label3.Enabled = True
Me.Label4.Enabled = True
Me.Label7.Enabled = True
Me.Label9.Enabled = True
Me.txtMname.Enabled = True
Me.txtBname.Enabled = True
Me.txtBaddr.Enabled = True
Me.txtContact.Enabled = True
Me.txtBank.Enabled = True
EndSub
PrivateSub btnBack_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnBack.Click
Me.Hide()
Dim f1 AsNew AdminPage
f1.Show()
EndSub
EndClass
50
7/29/2019 Credit Card System new
51/71
AdminReports.vb
PublicClass AdminReports
PrivateSub btnCard_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnCard.Click
Dim f1 AsNew CardReportsf1.Show()
EndSub
PrivateSub btnFranchise_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnFranchise.Click
Dim f1 AsNew FranchiseReports
f1.Show()
EndSub
PrivateSub btnPayment_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnPayment.Click
Dim f1 AsNew PaymentReports
f1.Show()
EndSub
PrivateSub btnLoan_Click(ByVal senderAs System.Object, ByVal e As
System.EventArgs) Handles btnLoan.Click
Dim f1 AsNew LoanReports
f1.Show()
EndSub
PrivateSub lnkBack_LinkClicked(ByVal senderAs System.Object, ByVal e As
System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles
lnkBack.LinkClicked
Me.Hide()
Dim f1 AsNew AdminPage
f1.Show()
EndSub
EndClass
CardReports.vb
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
PublicClass CardReports
Dim strpath AsString
Dim ds AsNew DataSet
Dim rpt AsNew ReportDocument
Dim i AsInteger
51
7/29/2019 Credit Card System new
52/71
PrivateSub CardReports_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
Call loadCno()
EndSub
Sub loadCno()
Tryobj.connect()
qry = "SELECT distinct(cno) FROM cdetails"
ds = obj.dset(qry)
Me.cmbCardNo.Items.Clear()
Fori = 0 To ds.Tables(0).Rows.Count - 1
Me.cmbCardNo.Items.Add(ds.Tables(0).Rows(i).Item("cno"))
Next
ds.Clear()
obj.disconnect()
Catch ex As Exception
EndTry EndSub
PrivateSub cmbCardNo_SelectedIndexChanged(ByVal senderAs System.Object,
ByVal e As System.EventArgs) Handles cmbCardNo.SelectedIndexChanged
Try
obj.connect()
ds = obj.dset("SELECT * FROM cdetails WHERE cno='" &
Me.cmbCardNo.Text & "'")
strpath = Application.StartupPath & "\" & "CardRep.rpt"
' strpath = "E:\saran\projects-2008\CreditCardSystem\CardRep.rpt"
IfNot IO.File.Exists(strpath) Then
Throw (New Exception("Unable to locate report file:" & vbCrLf & strpath))
EndIf
rpt.Load(strpath)
rpt.SetDataSource(ds.Tables("rrr"))
Me.CrystalReportViewer1.ReportSource = rpt
ds.Clear()
obj.disconnect()
Catch ex As Exception
EndTry
EndSubEndClass
52
7/29/2019 Credit Card System new
53/71
FranchiseReports.vb
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
PublicClass FranchiseReports
Dim strpath AsString
Dim ds AsNew DataSet
Dim rpt AsNew ReportDocument
Dim i AsInteger
PrivateSub FranchiseReports_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
Try
obj.connect()
ds = obj.dset("SELECT * FROM branch")
strpath = Application.StartupPath & "\" & "FranchiseRep.rpt"
' strpath = "E:\saran\projects-2008\CreditCardSystem\FranchiseRep.rpt"
IfNot IO.File.Exists(strpath) Then
Throw (New Exception("Unable to locate report file:" & vbCrLf & strpath))
EndIf
rpt.Load(strpath)
rpt.SetDataSource(ds.Tables("rrr"))
Me.CrystalReportViewer1.ReportSource = rpt
ds.Clear()
obj.disconnect()
Catch ex As Exception EndTry
EndSub
EndClass
PaymentReports.vb
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.SharedPublicClass PaymentReports
Dim strpath AsString
Dim ds AsNew DataSet
Dim rpt AsNew ReportDocument
Dim i AsInteger
PrivateSub PaymentReports_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
Call loadCno()
EndSub
Sub loadCno()
Tryobj.connect()
53
7/29/2019 Credit Card System new
54/71
qry = "SELECT distinct(cno) FROM cdetails"
ds = obj.dset(qry)
Me.cmbCardNo.Items.Clear()
Fori = 0 To ds.Tables(0).Rows.Count - 1
Me.cmbCardNo.Items.Add(ds.Tables(0).Rows(i).Item("cno"))
Nextds.Clear()
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
PrivateSub cmbCardNo_SelectedIndexChanged(ByVal senderAs System.Object,
ByVal e As System.EventArgs) Handles cmbCardNo.SelectedIndexChanged
Try
obj.connect()
ds = obj.dset("SELECT * FROM payment WHERE cno='" &Me.cmbCardNo.Text & "'")
strpath = Application.StartupPath & "\" & "PaymentRep.rpt"
'strpath = "E:\saran\projects-2008\CreditCardSystem\PaymentRep.rpt"
IfNot IO.File.Exists(strpath) Then
Throw (New Exception("Unable to locate report file:" & vbCrLf & strpath))
EndIf
rpt.Load(strpath)
rpt.SetDataSource(ds.Tables("rrr"))
Me.CrystalReportViewer1.ReportSource = rpt
ds.Clear()
obj.disconnect()
Catch ex As Exception
EndTry
EndSub
EndClass
54
7/29/2019 Credit Card System new
55/71
LoanReports.vb
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
PublicClass LoanReports Dim strpath AsString
Dim ds AsNew DataSet
Dim rpt AsNew ReportDocument
Dim i AsInteger
PrivateSub LoanReports_Load(ByVal senderAs System.Object, ByVal e As
System.EventArgs) HandlesMyBase.Load
Try
obj.connect()
ds = obj.dset("SELECT * FROM personal")
strpath = Application.StartupPath & "\" & "LoanRep.rpt"
'strpath = "E:\saran\projects-2008\CreditCardSystem\LoanRep.rpt"
IfNot IO.File.Exists(strpath) Then
Throw (New Exception("Unable to locate report file:" & vbCrLf & strpath))
EndIf
rpt.Load(strpath)
rpt.SetDataSource(ds.Tables("rrr"))
Me.CrystalReportViewer1.ReportSource = rpt
ds.Clear()obj.disconnect()
Catch ex As Exception
EndTry
EndSub
EndClass
55
7/29/2019 Credit Card System new
56/71
CONCLUSION
The main objective of the project Innovating Credit Card Security System is
to have a smooth move with the cardholders. And all the other objectives, which are
taken, are attained in an effectual manner. Interest, Late payment charge, Minimum
amount due and other charges such as petrol transaction charge, railway / air ticket
purchase or cancellation fee are calculated in a successful manner.
Future Enhancement
1. Have an idea to extend this credit card automation to different type of cards
2. This System may be extend to debit card automation
3. Can extend Registration through Website for User registration for first
investigation
56
7/29/2019 Credit Card System new
57/71
REFERENCE
1. Professional VB.NET 1.0, Special Edition
Author(s): Alex Homer, Brian Francis, David Sussman, Karli Watson, Richard
Anderson, Robert Howard
Released: February 2002
Publisher: Wrox Press
ISBN: 1861007035
2. eXtreme .NET: Introducing extreme Programming Techniques to .NET
Developers
Author(s): Dr. Neil Roodyn
Released: November 2004
Publisher: Addison-Wesley
3. Students Essential Guide to .NET, 1st Edition
Author(s): Tony Grimer
Released: October 2004
Publisher: Butterworth-Heinemann
4. Professional DotNetNuke VB.NET PortalsAuthor(s) : Shaun Walker, Patrick J. Sentry, Joe Brinkman, Dan Caron, Publisher:
Scott McCulloch, Scott Willhite, Bruce Hopkins
Released: June 2005
1 http://www.microsoft.com
2 http://www.vb101.com
3 http://www.codeguru.com
57
7/29/2019 Credit Card System new
58/71
SCREEN SHOTS
Login.vb
58
7/29/2019 Credit Card System new
59/71
UserPage.vb
59
7/29/2019 Credit Card System new
60/71
CardholderMaintenance.vb
60
7/29/2019 Credit Card System new
61/71
FranchiesMainTenance.vb
61
7/29/2019 Credit Card System new
62/71
Payment.vb
62
7/29/2019 Credit Card System new
63/71
PersonalLoan.vb
63
7/29/2019 Credit Card System new
64/71
AdminPage.vb
64
7/29/2019 Credit Card System new
65/71
ModifyCardholder.vb
65
7/29/2019 Credit Card System new
66/71
ModifyFranchies.vb
66
7/29/2019 Credit Card System new
67/71
AdminReports.vb
67
7/29/2019 Credit Card System new
68/71
REPORTS
CardReports.vb
68
7/29/2019 Credit Card System new
69/71
FranchiseReports.vb
69
7/29/2019 Credit Card System new
70/71
LoanReports.vb
70
7/29/2019 Credit Card System new
71/71
PaymentReports.vb