• No results found

Library Management System VB Project Documentation

N/A
N/A
Protected

Academic year: 2021

Share "Library Management System VB Project Documentation"

Copied!
80
0
0

Loading.... (view fulltext now)

Full text

(1)

PROJECT REPORT ON

Library Management System

ACKNOWLEDGEMENT

I take this precious opportunity to express my

gratitude toward “LIBRARY MANAGEMENT

SYSTEM” to grant is permission for under going the

training project. Without it’s willingness to permit

this project would not have been succeed.

First of all, I would like to thanks all those people

who helped me directly or indirectly to complete my

project whenever I found my self in problems. Our all

faculties encourages me and due to their kindness and

helpful nature and help I got very much confidence to

complete this project.

I am deeply inherited who devoted his precious

time in giving me the information about the various

aspect and gave support and guidance at every point

of time. I am really thankful to their kind and

(2)

supportive nature. His inspiring nature has always

made my work easy.

Last but not least, I would like to express my

gratitude to those persons who directly or indirectly

helped in my project.

PREFACE

The field of computer education has witnessed a

sea change since the discovery of simple calculating

machine by CHARLES BABAGE. The era is

confronting with the speed and mind of computer, i.e.

the speed and intelligence have become vital. At one

end they are competing with each other. Not only

these computers have immensely benefited the

mankind in the field of planning. The wheel of

progress is rolling with much faster speed then it used

to be a decade ago; thank to the revolution ushered in

by computer. But all this haven’t come as easy as it

appears to be rather it requires planning strategy and a

lot of brain storming before a package is developed or

a language is born.

(3)

Since the prime task of the computer is to process

a raw data into useful information, we can ignore the

basic step of information collection ret rival and

processing at our risk only. The importance of finding

the right information in the possible least time as well

know to us.

ABSTRACT

Maintaining records of application for estates, the

manual system is too complex and cumbersome.

Since time and resources available we have been

proposed to develop an inventory system.

All the outset the application requirements were

studied and analysis and design were carried out. The

development platform and software tool were

identified as Visual Basic 6.0 (As Front-End) and

Access (As Back-End) database. Using visual

programming, object are manipulated directly and

also due to the feature of fast and easy prototyping

and GUI building visual basic 6.0 as used.

(4)

In the system analysis and design part, data is

processed using query techniques and study of the

existing system.

During the development phase various option are

developed like master menu. transaction menu, report

generation, utility etc.

The detail of the programming steps followed

and important clauses incorporated in the screen are

described in documents.

Why Visual Basic Programming

Using visual programming objects are

manipulated directly, By Highlighting; point and

cliking specific properties can relate to physical

appearance (color, shading, fonts, size and so on).

Most widely used objects oriented, graphical

programming language for window development are:

Visual Basic

Power Builder

Forms 5.0 / 6.0

(5)

We have selected one of the most widely

used object oriented, graphical programming

language for window development Visual Basic.

Selection of visual basic based on following

strengths:

Fast and easy prototyping and GUI building.

Fully functional, real window application

building.

Excellent DDE and DDL support and client

OLE.

MDI support.

Easy Dialog Box Construction.

Easy Menu Generation supporting Short –

cut key.

INTRODUCTION OF VISUAL BASIC

(6)

Visual Basic is available in three versions, each

generate to meet a specific set of development

requirement.

The visual basic learning edition.

The professional edition.

The enterprise edition.

VISUAL BASIC AND DATABASE

Visual Basic can be used to build very complex

application. Visual Basic effective software that can

perform all essential management function. It can be

used to:

Create data table and store data in them.

Edit data records.

Retrieve data selectively from stored records

to provide specific information.

(7)

Perform calculation.

Create screens that can interact with users.

Visual Basic provides a wide verity of data

access alternatives, for working with local and remote

database, including enterprise level three-tiered

client/server application.

-: INTRODUCTION TO ACCESS

:-Database : What they are? And how they work?

A database is collection of information related to

particular or purpose such as tracking customer orders

or maintaining a music collection. If your database

isn’t stored on a computer or only parts of it are, you

may be tracking information from variey of source

that you have to coordinate and organize your self.

Using it, you can manage all our information

from single database file. Within file divide your data

using into separate storage containers called tables;

view, add, and update table data using forms; find and

(8)

retrieve just the data you want using queries and

analyze or print data in specific layout using reports.

To find and retrieve just data that meet condition

you specify including data from multiple tables create

a query. A query can also update multiple records at

the same time and perform built-in or custom

calculations on your data. To easily view, enter and

change directly in a table, create a form. When you

open a form, it retrives the data from one or more

tables and display it on screen using the data from you

chose in the form using a layout that you creted from

scratch.

To analyze your data present it a certain way

in print, create a report. For exmple, you might print

one report that raw material and calculates totals.

TABLES :

A tables is a collection of data about a

specific topic, such as products or suppliers. Using as

separate table for each topic means you store that data

only once which makes your database more efficient

and reduces dataentry errors. Table organize data into

columns and rows.

In table datasheet view, you can add, edit or

view the data in a table. You can also check the

(9)

spelling and print your tables data filter or sort

records change the datasheet’s appearance or change

the table’s structure by adding or deleting columns.

You can create an entire table from scratch, or add,

delete, or customize an existing tables fields.

QUERIES:

You use queries to view, change and analyze

data in different ways. You can also use them as the

source of records for froms and report. The most

common type of query is a select query. A select

query retrieves data from one or more tables using

criteria you specify and then display it in the order

you want.

ADVANTAGES OF

ACCESS

:-•

More Reliable than other RDBMS.

Easy to use and learn.

(10)

Updating database.

Support ODBC , ADO data programming

objects.

Disadvantages of Manual

System:-•

The manual system required more time

for processing.

The processing is very lengthy.

It require more clerical work.

The manual system is more error prone.

Manual system is costly.

Immediate response to the quires is

difficulty and time consuming.

(11)

Mathematical calculation done

manfully.

No authentication measures.

Need for computerized

system:-The main draw back of the existing system is that

manual work leads time consumption. It affects the all

person of management and also the departments.

There is number of day-by-day transactions and hence

the large number of register have to the kept to

circulation, which have to the stored. Also large

numbers of register have to the kept to the store. This

document is required more storing space, more

manpower and job become tedious. Sometime

gathering of all documents is a tedious job.

In this system process of summary report in

main part, using the computerized system this process

is become simple and small. You can immediately

getting the report for the query. You can get this all

report or summary for the previous year. Various

year. Various details have to the providing to the

management at any time.

(12)

System Attributes And Quality

Characteristic:

Security:-

The system is designed keeping in view that

chances of unauthorized use are made neligible. In the

design depending upon the user, they are entitled with

specific required right only. Only the Administrator

will be able to create new users. He is the only person

having full access of main database. As sequrity is a

crucial characteristic, it is treated according in this

system.

Portability:-The designed system must operate on different

version of OS viz. Windows 98, NT, XP etc. Proper

care is taken at the time of design and coding so that it

(13)

will execute and run property. To assure portability of

the system, backward compatibility up to a certain

level will also be maintained.

Reliability:-Following tests will be performed to assure

reliability of the system.

Simulation Test.

Memory Test.

Path Test.

Loop Test.

Random Data Test.

OS Compatibility Test.

Hardware Compatibility Test.

(14)

The above listed test are carried out at development

site, installation site and during the development

process as per the requirement. The multiple waterfall

modules during the development of the project will

assure minimum risk.

Application Requirement:

User Platform:

PC/Pentium

Operating System:

Windows2000

Development Tools: Visual Basic6.0

Database:

Access

(15)

ACCESS TABLE’S DETAIL’S:

TABLE – 1 :

LOGIN_MAST (User

Information)

FIELD NAME

DATA TYPE &

(SIZE)

DESCRIPTION

Usr

Text (20)

User Name

Pw

Text (20)

User Password

Typ

Text (1)

Type of User

(16)

TABLE=>2 BOOK_MAST (Store Book

details)

TABLE=>3 MBR_MAST (Store Master

details)

FIELD NAME

DATA TYPE &

(SIZE)

DESCRIPTION

Code

Text (10)

Member No

Surname

Text (50)

Surname

Member

Text (50)

Member Name

Father

Text (50)

Father Name

Join_Dt

Date/Time

Join Date

Address

Memo

Member Address

City

Text (20)

City

Crs

Text (10)

Course

FIELD NAME

DATA TYPE &

(SIZE)

DESCRIPTION

Code

Text (6)

Book/CD Code

Title

Text (30)

Title of Book/Cd

Author

Text (20)

Auther of book(s)

Publisher

Text (20)

Publisher of Book

Pur_Dt

Date/Time

Purchase Date

Price

Currency

(Standard)

Price of Book/Cd

Qty

Number (Long int.) Book/Cd Quantity

Pur_From

Text (50)

Purchase From

IsudBk

Number (Long int) Quantity of issued

(17)

Yer

Text (10)

Year of Course(FY,

SY, TY,

SEM1,etc...)

Cnt_No

Text (50)

Contect Number

Gender

Text (1)

Sex

Fee

Currency

(Standard)

Membership Fee

Fine

Currency

(Standard)

Fine on late

submission

TABLE=>4 FINE_MAST (Store Fine detail)

FIELD NAME

DATA TYPE

DESCRIPTION

Crs

Text (10)

Course

Yer

Text (10)

Year of study

Mbr_No

Text (6)

Member Number

Bk_No

Text (6)

Book Number

Fine

Currency

(Standard)

Fine for late

submission, Datmage

etc...

(18)

TABLE=>5 ISSUE_MAST (Store Issue

Details)

FIELD NAME

DATA TYPE &

(SIZE)

DESCRIPTION

Mbr_No

Text (6)

Member No

Crs

Text (10)

Student Course or Staff

Yer

Text (10)

Year of Study

Bk_No

Text (6)

Book No.

Isu_Dt

Date/Time

Issue Date

Lst_Dt

Date/Time

Last Submit Date

(19)

FORM

DESIGN

&

CODDING

FORM - 1 : WELCOME FORM

(FrmWelcome.frm)

(20)
(21)

Private Sub Form_Resize( ) Img1.Height = Me.ScaleHeight Img1.Width = Me.ScaleWidth

LblWelcome1.Left = (Me.ScaleWidth / 2 - LblWelcome1.Width / 2) - 120

LblWelcome2.Left = Me.ScaleWidth / 2 - LblWelcome2.Width / 2

LblRpbc1.Left = (Me.ScaleWidth / 2 - LblRpbc1.Width / 2) + 60

LblRpbc2.Left = Me.ScaleWidth / 2 - LblRpbc1.Width / 2

LblLib1.Left = Me.ScaleWidth / 2 - LblLib1.Width / 2

LblLib2.Left = (Me.ScaleWidth / 2 - LblLib2.Width / 2) + 60

LblSys1.Left = Me.ScaleWidth / 2 - LblSys1.Width / 2

LblSys2.Left = (Me.ScaleWidth / 2 - LblSys2.Width / 2) + 60

End Sub

Private Sub Img1_Click( )

FrmLogin.Show

Timer1.Enabled = False

End Sub

Private Sub LblWelcome1_Click( )

FrmLogin.Show

Timer1.Enabled = False

End Sub

Private Sub Timer1_Timer( )

FrmLogin.Show vbModal Timer1.Enabled = False

(22)

FORM - 2 : LOGIN FORM (FrmLogin.frm)

CODE : LOGIN FORM (FrmLogin.frm)

Dim rs_user As New Recordset

Private Sub CmdCancel_Click()

End

(23)

Private Sub CmdLogin_Click()

bkType = "BOOK" userType = "L"

Class = "BBA": Yer = "FY"

If Trim(TxtUser) = "" And Trim(TxtPwd) = "" Then MsgBox "Fill all the details", vbInformation, "Login" TxtUser.SetFocus

Exit Sub End If

If TxtUser = "LIBRARY" And TxtPwd = "INDISOFT" Then userType = "L" userNm = "LIBRARY" Unload FrmWelcome Unload FrmLogin MDIFrm.Show Exit Sub End If If rs_user.RecordCount <> 0 Then rs_user.MoveFirst

rs_user.Find "usr = '" & TxtUser & "'" If Not rs_user.EOF Then

If rs_user.Fields(1) = TxtPwd Then userType = rs_user.Fields(2) userNm = rs_user.Fields(0) Unload FrmWelcome Unload FrmLogin MDIFrm.Show Exit Sub Else

MsgBox "Wrong username or password.", vbCritical, "Login"

TxtUser.SetFocus Exit Sub

(24)

Else

MsgBox "Wrong username or password.", vbCritical, "Login"

TxtUser.SetFocus Exit Sub

End If Else

MsgBox "Wrong username or password.", vbCritical, "Login"

TxtUser.SetFocus Exit Sub

End If

End Sub

Private Sub Form_Load()

'OPEN RECORDSET

rs_user.Open "select * from Login_Mast", conn, adOpenStatic, adLockPessimistic

End Sub

Private Sub Form_Unload(Cancel As Integer)

rs_user.Close

End Sub

Private Sub TxtPwd_GotFocus()

Call selectTxt(TxtPwd)

End Sub

Private Sub TxtPwd_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Then KeyAscii = 0

End If

KeyAscii = upper(KeyAscii)

End Sub

(25)

Call selectTxt(TxtUser)

End Sub

Private Sub TxtUser_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Then KeyAscii = 0

End If

KeyAscii = upper(KeyAscii)

(26)
(27)

FORM – 3 : MDI FORM (MDIFrm.frm)

Option Explicit

Dim rs As New ADODB.Recordset

Dim FL As String 'TO STORE FILE NAME Dim rpt As String

Private Sub CmdBkEntry_Click()

Call MnuBkOpr_Click

End Sub

Private Sub CmdBkRpt_Click()

Dim str As String

str = InputBox("Enter BOOK for Book report and CD for Cd report", "Report Creation", "BOOK")

If str = "BOOK" Then Call MnuBkRpt_Click ElseIf str = "CD" Then Call MnuCdRpt_Click Else

MsgBox "Invalid input.", vbCritical, "Report Creation" End If

(28)

Private Sub CmdBkSubISu_Click()

Call MnuBkIsuSub_Click

End Sub

Private Sub CmdExit_Click()

End

End Sub

Private Sub CmdIsuDtl_Click()

Call MnuBkIsuDtl_Click

End Sub

Private Sub CmdIsuRpt_Click()

Call mnuIsuRpt_Click

End Sub

Private Sub CmdMbrEntry_Click()

Call MnuMbrOpr_Click

End Sub

Private Sub CmdMbrRpt_Click()

Call MnuMbrRpt_Click

End Sub

Private Sub CmdUAcc_Click()

Call MnuUmgAcc_Click

End Sub

Private Sub LblClose_Click()

Pct1.Visible = False

End Sub

Private Sub MDIForm_Load()

'CHECK USER TYPE

If userNm = "LIBRARY" Then MnuUmg.Enabled = False CmdUAcc.Enabled = False

(29)

End If If userType = "L" Then MnuBkIsuSub.Enabled = False MnuRpt.Enabled = False CmdBkSubISu.Enabled = False End If End Sub

Private Sub MDIForm_Resize()

'RESIZE STATUS BAR

If Me.Width > 1000 And Me.Height > 1000 Then

StatusBar1.Panels(1).Width = Me.ScaleWidth * 0.5 StatusBar1.Panels(2).Width = Me.ScaleWidth * 0.11 StatusBar1.Panels(3).Width = Me.ScaleWidth * 0.11 StatusBar1.Panels(4).Width = Me.ScaleWidth * 0.11 StatusBar1.Panels(5).Width = Me.ScaleWidth * 0.11 StatusBar1.Panels(6).Width = Me.ScaleWidth * 0.05

StatusBar1.Panels(1) = "Current User : " & userNm & "(" & userType & ")"

End If

'ARRANGE PICTURE BOX AND OTHER COMMAND BUTTONS

Pct1.Height = Me.Height

If Me.Height >= 8100 And Me.Width >= 11500 Then 'MAKE LABLE TO CENTER

LblTask.Left = Me.ScaleWidth / 2 - LblTask.Width / 2 'SET ALL COMMAND BUTTONS AND FRAME

CmdUAcc.Left = Me.ScaleWidth / 2 - CmdUAcc.Width / 2

(30)

FramMbr.Left = FramIsu.Left - FramMbr.Width - 500 FramBk.Left = FramIsu.Left + FramIsu.Width + 500

'SET COMMAND BUTTON TO CENTER

CmdExit.Left = Me.ScaleWidth / 2 - CmdExit.Width / 2 LblClose.Top = Me.Height - 1500

LblClose.Left = Me.ScaleWidth - 2500 End If

End Sub

Private Sub MDIForm_Unload(Cancel As Integer)

End

End Sub

Private Sub MnuAbtLib_Click()

Pct1.Visible = False frmAbout.Show vbModal

End Sub

Private Sub MnuBkIsuDtl_Click()

Pct1.Visible = False FrmIsuDtl.Show

End Sub

Private Sub MnuBkIsuSub_Click()

Pct1.Visible = False FrmBookIsu.Show

End Sub

Private Sub MnuBkOpr_Click()

Pct1.Visible = False frmBkEntry.Show

End Sub

Private Sub MnuBkRpt_Click()

(31)

End Sub

Private Sub MnuCdRpt_Click()

Call BookCdReport("CD") 'GENERATE REPORT

End Sub

Private Sub mnuIsuRpt_Click()

Pct1.Visible = False

Report = "I" 'I means Issue Report FrmRpt.Show vbModal

End Sub

Private Sub MnuMbrOpr_Click()

Pct1.Visible = False FrmMember.Show

End Sub

Private Sub MnuMbrRpt_Click()

Pct1.Visible = False

Report = "M" 'M means Member Report FrmRpt.Show vbModal

End Sub

Private Sub MnuMstrSelection_Click()

Pct1.Visible = True

End Sub

Private Sub MnuUmgAcc_Click()

Pct1.Visible = False

FrmUserMng.Show vbModal

End Sub

Private Sub MnuWinClose_Click()

Do While Forms.Count - 1 > 0 Unload Me.ActiveForm Loop

(32)

Private Sub MnuWinCscd_Click()

Arrange vbCascade

End Sub

Private Sub MnuWinHrz_Click()

Arrange vbHorizontal

End Sub

Private Sub MnuWinVrtl_Click()

Arrange vbVertical

End Sub

'================================================ ==='GENERATE REPORT FOR BOOK/CD (PROCEDURE)

Private Sub BookCdReport(typ As String)

Set rs = New Recordset

If typ = "BOOK" Then

rs.Open "SELECT Code,Title,Author,Price,Qty FROM Book_Mast WHERE Code like 'B%'", conn, adOpenStatic, adLockReadOnly

Else

rs.Open "SELECT Code,Title,Author,Price,Qty FROM Book_Mast WHERE Code like 'C%'", conn, adOpenStatic, adLockReadOnly

End If

'WHEN NO RECORD EXIST If rs.RecordCount = 0 Then rs.Close

MsgBox "No record is found.", vbInformation, "Member Report"

(33)

End If

'CREATE REPORT 'OPEN FILE

FL = typ & "_" & Format(Date, "dd-mm-yyyy")

Open App.Path & "\Reports\" & FL & ".txt" For Output As #1 Print #1, "" Print #1, "---"

If typ = "BOOK" Then

Print #1, "--- B O O K S R E P O R T ---" Else Print #1, "--- C D R E P O R T ---" End If Print #1, "---" Print #1, ""

Print #1, " Date : " & Format(Date, "dd-mm-yyyy") Print #1, ""

Print #1,

"---"

Print #1, " CODE TITLE AUTHOR PRICE QUANTITY " Print #1, "---" rs.MoveFirst

Do While Not rs.EOF

Print #1, " " & rs!Code & " " & _

(34)

rs!Author & Space(22 - Len(rs!Author)) & _ Space(6 - Len(rs!Price)) & rs!Price & _ Space(11 - Len(rs!qty)) & rs!qty

Print #1, "" rs.MoveNext Loop rs.Close Close #1

MsgBox FL & ".txt created successfully.", vbInformation, "Member Report"

Shell App.Path & "\Reports\wordpad.exe " & App.Path & "\Reports\" & FL & ".txt", vbMaximizedFocus

End Sub

FORM – 4 : USER MANAGEMENT

(FrmUserMng)

(35)

CODE : USER MANAGEMENT

(FrmUserMng.frm)

(36)

Private Sub CmdCancel_Click()

Unload Me

End Sub

Private Sub CmdCreateAcc_Click()

Unload Me

FrmCreateAcc.Show vbModal

End Sub

Private Sub CmdDeleteAcc_Click()

Unload Me

FrmUserDelete.Show vbModal

End Sub

Private Sub CmdEditAcc_Click()

Unload Me

FrmEditAcc.Show vbModal

End Sub

Private Sub Form_Load()

If userType = "L" Then

CmdCreateAcc.Enabled = False CmdDeleteAcc.Enabled = False End If

End Sub

Private Sub Form_Unload(Cancel As Integer)

If Forms.Count = 2 Then

MDIFrm.Pct1.Visible = True End If

(37)

FORM – 5 : CREATE NEW USER

(FrmCreateAcc)

(38)

CODE : CREATE NEW USER (FrmCreateAcc)

Dim rs_user As New ADODB.Recordset

Private Sub CmdBack_Click()

Unload Me

FrmUserMng.Show vbModal

End Sub

Private Sub CmdCancel_Click()

Unload Me

End Sub

Private Sub CmdCreateAcc_Click()

Dim Query As String, typ As String

If Trim(TxtUser.Text) = "" Or Trim(TxtPwd) = "" Or

Trim(TxtConfPwd) = "" Then

MsgBox "All fields are compulsory.", vbInformation, "User Addition"

Exit Sub

ElseIf Trim(TxtPwd) <> Trim(TxtConfPwd) Then

MsgBox "Your confirm password do not match." & vbCrLf & _

"Type your confirm password again.", vbCritical, "User Addition"

TxtConfPwd.SetFocus Exit Sub

End If

(39)

'DUPLICATION CHECK rs_user.MoveFirst

rs_user.Find "usr='" & TxtUser & "'"

If rs_user.EOF Then 'USER NOT EXIST If CmbUserType.Text = "ADMIN" Then typ = "A"

Else

typ = "L" End If

Query = "insert into Login_Mast values ('" & TxtUser & "','" & _

TxtPwd & "','" & typ & "')" MsgBox Query

conn.Execute Query

MsgBox "New user is successfully added.", vbInformation, "User Addition" TxtUser = "" TxtPwd = "" TxtConfPwd = "" CmbUserType.SetFocus Call Form_Load

Else 'USER IS ALREADY EXIST

MsgBox "User already exit. Enter another user name.", vbCritical, "User Additon"

TxtUser.SetFocus End If

End Sub

Private Sub Form_Load()

MDIFrm.Pct1.Visible = False

'OPEN RECORDSET

(40)

rs_user.Open "select * from Login_Mast", conn, adOpenStatic, adLockPessimistic

'CLEAR TEXT BOX TxtUser.Text = "" TxtPwd.Text = "" TxtConfPwd.Text = "" CmbUserType.Text = CmbUserType.List(0) End Sub

Private Sub Form_Unload(Cancel As Integer)

rs_user.Close

End Sub

Private Sub TxtConfPwd_GotFocus()

Call Book.selectTxt(TxtConfPwd)

End Sub

Private Sub TxtConfPwd_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

End Sub

Private Sub TxtPwd_GotFocus()

Call Book.selectTxt(TxtPwd)

End Sub

Private Sub TxtPwd_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

End Sub

Private Sub TxtUser_GotFocus()

(41)

End Sub

Private Sub TxtUser_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

End Sub

FORM – 5 : CHANGE USER NAME

(FrmEditAcc)

(42)

FORM - 6 : CHANGE PASSWORD

(FrmEditAcc)

(43)
(44)

CODE – 5 : CHANGE USER NAME &

CHANGE PASSWORD

(FrmEditAcc)

Dim rs_user As New ADODB.Recordset Dim Query As String

Private Sub CmdBack_Click()

Unload Me

FrmUserMng.Show vbModal

End Sub

Private Sub CmdCancel_Click()

Unload Me

End Sub

Private Sub CmdPwd_Click()

'CHECKING FOR BLANCK TEXT BOXES

If Trim(TxtUser) = "" Or Trim(TxtCurPwd) = "" Or

Trim(TxtNewPwd) = "" Or Trim(TxtConfPwd) = "" Then

MsgBox "All fields are compulsory.", vbInformation, "Change Password"

Exit Sub End If

'CHECKING FOR NEW PASSWORD & CONF. PASSWORD MATCHING

If TxtNewPwd <> TxtConfPwd Then

MsgBox "Your confirm password do not match." & vbCrLf & "Enter confirm password again.", vbCritical, "Change Password"

Exit Sub End If

If userType = "A" Then 'WHEN USER IS ADMIN

(45)

rs_user.MoveFirst

rs_user.Find "usr='" & TxtUser & "'"

If rs_user.EOF Then 'USER NOT EXIST

MsgBox "User name does not exixt." & vbCrLf & _ "Enter current name again.", vbCritical, "Change

Password" TxtUser.SetFocus Exit Sub

End If

'IF USER AND PASSWORD NOT MATCH If rs_user.Fields(1) <> TxtCurPwd Then

MsgBox "Your current password do not match. Enter it again.", vbCritical, "Change Password"

TxtCurPwd.SetFocus Exit Sub

End If

Query = "update Login_Mast set pw='" & TxtNewPwd & "' where usr='" & TxtUser & "'"

Else

'WHEN USER IS LIMITED If TxtUser <> userNm Then

MsgBox "Your user name not match. Enter it again.", vbCritical, "Change Password"

Exit Sub End If

rs_user.MoveFirst

rs_user.Find "usr='" & TxtUser & "'"

'IF USER AND PASSWORD NOT MATCH If rs_user.Fields(1) <> TxtCurPwd Then

MsgBox "Your current password do not match. Enter it again.", vbCritical, "Change Password"

(46)

Exit Sub End If

Query = "update Login_Mast set pw='" & TxtNewPwd & "' where usr='" & TxtUser & "'"

End If

'UPDATE PASSWORD conn.Execute Query

MsgBox "Your password is changed successfully.", vbInformation, "Change Password"

TxtUser.Text = "" TxtCurPwd.Text = "" TxtNewPwd.Text = "" TxtConfPwd.Text = "" TxtUser.SetFocus End Sub

Private Sub CmdUser_Click()

Dim typ As String typ = userType

If Trim(TxtCurUser) = "" Or Trim(TxtNewUser) = "" Then MsgBox "All fields are compulsory.", vbInformation,

"Change User" Exit Sub

End If

If userType = "A" Then 'WHEN USER IS ADMIN

'FIND USER IS EXIST OR NOT rs_user.MoveFirst

rs_user.Find "usr='" & TxtCurUser & "'"

(47)

MsgBox "User name does not exixt." & vbCrLf & _

"Enter current name again.", vbCritical, "User Edition" TxtCurUser.SetFocus

Exit Sub End If

If CmbUserType.Text = "ADMIN" Then typ = "A"

Else

typ = "L" End If

'WHEN CURRENT USER IS CHANGING ACCOUNT If (TxtCurUser = userNm) And (userType <> typ) Then MsgBox "You can not change your account type." &

vbCrLf & _

"Login with another Admin user and then change your account type.", vbInformation, "User Edition"

Exit Sub End If

Query = "update Login_Mast set usr='" & TxtNewUser & "',typ='" & _

typ & "' where usr='" & TxtCurUser & "'"

Else

'WHEN USER IS LIMITED If userNm <> TxtCurUser Then

MsgBox "Your current name is not correct." & vbCrLf & _ "Enter current name again.", vbCritical, "User Edition" TxtCurUser.SetFocus

Exit Sub End If

Query = "update Login_Mast set usr='" & TxtNewUser & "' where usr='" & userNm & "'"

(48)

'CHECK FOR DUPLICATE RECORD rs_user.MoveFirst

rs_user.Find "usr='" & TxtNewUser & "'"

If (rs_user.EOF = False) And (userNm <> TxtNewUser) Then MsgBox "User already exixt. Enter another user name.",

vbCritical, "User Edition" Exit Sub

End If

'EXECUTE QUERY & UPDATE RECORD conn.Execute Query

MsgBox "User name is changed successfully.", vbInformation, "User Edition"

If TxtCurUser = userNm Then userNm = TxtNewUser.Text userType = typ

MDIFrm.StatusBar1.Panels(1) = "Current User : " &

userNm & "(" & userType & ")" End If TxtCurUser.Text = "" TxtNewUser.Text = "" TxtCurUser.SetFocus End Sub

Private Sub Form_Load()

MDIFrm.Pct1.Visible = False

Call TabEditAcc_Click(0) 'SELECT TAB 1

'CLOSE RECORDSET IF OPEN

(49)

'OPEN RECORDSET

rs_user.Open "select * from Login_Mast", conn, adOpenStatic, adLockPessimistic

End Sub

Private Sub TabEditAcc_Click(PreviousTab As Integer)

If TabEditAcc.Tab = 0 Then FremEditPwd.Enabled = False FremEditUser.Enabled = True CmdUser.Default = True 'CmbUserType.Text = CmbUserType.List(0) TxtCurUser = "" TxtNewUser = "" If userType = "L" Then CmbUserType.Enabled = False CmbUserType.Text = "LIMITED" Else CmbUserType.Text = "ADMIN" End If Else FremEditPwd.Enabled = True FremEditUser.Enabled = False CmdPwd.Default = True TxtUser = "": TxtCurPwd = "" TxtNewPwd = "": TxtConfPwd = "" End If End Sub

Private Sub TxtConfPwd_GotFocus()

(50)

End Sub

Private Sub TxtConfPwd_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

End Sub

Private Sub TxtCurPwd_GotFocus()

Call Book.selectTxt(TxtCurPwd)

End Sub

Private Sub TxtCurPwd_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

End Sub

Private Sub TxtCurUser_GotFocus()

Call Book.selectTxt(TxtCurUser)

End Sub

Private Sub TxtCurUser_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

End Sub

Private Sub TxtNewPwd_GotFocus()

Call Book.selectTxt(TxtNewPwd)

End Sub

Private Sub TxtNewPwd_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

(51)

KeyAscii = Book.upper(KeyAscii)

End Sub

Private Sub TxtNewUser_GotFocus()

Call Book.selectTxt(TxtNewUser)

End Sub

Private Sub TxtNewUser_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

End Sub

Private Sub TxtUser_GotFocus()

Call Book.selectTxt(TxtUser)

End Sub

Private Sub TxtUser_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Or KeyAscii = 34 Or KeyAscii = 32 Then KeyAscii = 0

End If

KeyAscii = Book.upper(KeyAscii)

(52)
(53)

CODE : DELETE USER (FrmUserDelete)

Dim rs_user As New ADODB.Recordset Dim rs_tmp As New ADODB.Recordset

Private Sub CmdBack_Click()

Unload Me

FrmUserMng.Show vbModal

End Sub

Private Sub CmdCancel_Click()

Unload Me

End Sub

Private Sub CmdDelete_Click()

Dim Query As String, cnt As Integer

'CHECK FOR RECORDSET IS OPEN OR CLOSED If rs_tmp.State = 1 Then

rs_tmp.Close End If

rs_tmp.Open "select * from Login_Mast where Typ='A'", conn, adOpenStatic, adLockPessimistic

(54)

If (rs_tmp.RecordCount = 1) And (Mid(LstUserDelete.Text, Len(LstUserDelete.Text) - 1, 1) = "A") Then

MsgBox "You can not delete this Admin user." & vbCrLf & "Atlist one Admin user is required.", vbCritical, "User Deletion"

Exit Sub End If

If MsgBox("You want to delete selected user ?", vbQuestion + vbOKCancel, "User Deletion") = vbOK Then

'FIND SELECTED USER rs_user.MoveFirst

rs_user.Find "usr='" & Mid(LstUserDelete.Text, 1, Len(LstUserDelete.Text) - 4) & "'"

rs_user.Delete 'DELETE USER

Call fillList 'FILL LIST BOX End If

End Sub

Private Sub Form_Load()

MDIFrm.Pct1.Visible = False 'OPEN RECORDSET

rs_user.Open "select * from Login_Mast", conn, adOpenStatic, adLockPessimistic

Call fillList 'FILL LIST BOX

End Sub

Private Sub Form_Unload(Cancel As Integer)

rs_user.Close

End Sub

Private Sub fillList()

'FILL ListBox

(55)

If rs_user.RecordCount <> 0 Then rs_user.MoveFirst

While Not rs_user.EOF

LstUserDelete.AddItem rs_user.Fields(0) & " (" & rs_user.Fields(2) & ")" rs_user.MoveNext Wend LstUserDelete.Text = LstUserDelete.List(0) End If End Sub

FORM – 8 : MEMBER OPERATION

(FrmMember)

(56)

CODE : MEMBER OPERATION (FrmMember)

Option Explicit

(57)

Dim rs_temp As New ADODB.Recordset Dim rs_isu As New ADODB.Recordset Dim cmd As String

Private Sub CmbClass_Click()

Dim i As Integer

Class = CmbClass.Text

Call fillYear(Me) 'SELECT YEAR

CmbClassYear.Text = CmbClassYear.List(0)

End Sub

Private Sub CmbClassYear_Click()

Yer = CmbClassYear.Text

Call Member.controlEnable(Me, False) If rs_mbr.State = 1 Then rs_mbr.Close

rs_mbr.Open "select * from Mbr_Mast where [crs]='" & CmbClass.Text & _

"' and [Yer]='" & CmbClassYear.Text & "' ORDER BY Code", conn, adOpenStatic, adLockPessimistic

Call Member.clearControl(Me) 'SET DEFAULT CONTROLS If rs_mbr.RecordCount <> 0 Then

Call Book.enableCommand(Me) 'ENABLE COMMAND BTNS

Call memberData(Me, rs_mbr) 'RETRIVE DATA Else

Call Book.disableCommand(Me) 'DISABLE BUTTONS CmdAdd.Enabled = True

End If

'CHECK USER TYPE If userType = "L" Then

CmdAdd.Enabled = False CmdEdit.Enabled = False

(58)

CmdDel.Enabled = False CmdSave.Enabled = False CmdTransfer.Enabled = False End If

End Sub

Private Sub CmbMonth_Click()

Dim i As Integer CmbDay.Clear For i = 1 To daysOfMonth(Val(CmbMonth.Text), Val(CmbYear.Text)) CmbDay.AddItem i Next i CmbDay.Text = Day(Date) End Sub

Private Sub CmbSearch_Click()

Call fillMbrGrid(Me, CmbClass.Text, CmbClassYear.Text, CmbSearch.Text)

End Sub

Private Sub CmbYear_Click()

Dim i As Integer CmbDay.Clear For i = 1 To daysOfMonth(Val(CmbMonth.Text), Val(CmbYear.Text)) CmbDay.AddItem i Next i CmbDay.Text = Day(Date) End Sub

Private Sub CmdAdd_Click()

Dim rs_tmp As New ADODB.Recordset Set rs_tmp = New Recordset

cmd = "Add"

(59)

'ENABLE ALL CONTROLS

Call Member.controlEnable(Me, True) TxtCode.Locked = True

CmdSave.Enabled = True 'ENABLE SAVE BUTTON CmbClass.Enabled = False 'DISABLE CLASS COMBO CmbClassYear.Enabled = False 'DISABLE YEAR COMBO FremCategory.Enabled = False 'DISABLE SEARCH FREAM Call Book.disableCommand(Me) 'DISABLE COMMAND BTNS

CmdSave.Enabled = True

'SET DEFALUT CONTROLS Call Member.clearControl(Me)

'GENERATE NEXT CODE

TxtCode.Text = Book.Next_Code(rs_mbr, "M") TxtSurname.SetFocus

End Sub

Private Sub CmdDel_Click()

Set rs_temp = New Recordset

rs_temp.Open "SELECT * FROM Issue_Mast WHERE [Crs]='" & CmbClass.Text & "' AND [Yer]='" &

CmbClassYear.Text & "' AND [Mbr_No]='" & TxtCode & "' AND [Sub_Dt]='-'", conn, adOpenStatic,

adLockReadOnly

If rs_temp.RecordCount > 0 Then

MsgBox "You can't delete this member. First Issue Book/CD.", vbInformation, "Member Deletion" Exit Sub

End If

If MsgBox("You want to delete this record?", vbInformation + vbYesNo, "Member deletion") = vbYes Then

(60)

rs_mbr.Delete 'DELETE RECORD rs_mbr.Update 'UPDATE RECORD

rs_mbr.MoveNext 'MOVE RECORDSET TO NEXT RECORD

Call Member.fillMbrGrid(Me, Class, Yer, CmbSearch.Text) If rs_mbr.RecordCount = 0 Then

Call Member.clearControl(Me) 'CLEAR TEXT BOXES Call Book.disableCommand(Me) 'DISABLE BUTTONS CmdAdd.Enabled = True 'ENABLE ADD BUTTONS Exit Sub Else If rs_mbr.EOF Then rs_mbr.MoveFirst 'RETRIVE RECORD Call Member.memberData(Me, rs_mbr) Exit Sub Else 'RETRIVE RECORD Call Member.memberData(Me, rs_mbr) End If End If End If End Sub

Private Sub CmdEdit_Click()

cmd = "Edit"

CmdExit.Caption = "&Cancel"

'ENABLE ALL CONTROLS

Call Member.controlEnable(Me, True)

FremCategory.Enabled = False 'DISABLE SEARCH FREAM Call Book.disableCommand(Me)

CmdSave.Enabled = True 'ENABLE SAVE BTN

(61)

End Sub

Private Sub CmdExit_Click()

If CmdExit.Caption = "&Cancel" Then CmdExit.Caption = "E&xit"

'DISABLE ALL CONTROLS

Call Member.controlEnable(Me, False)

FremCategory.Enabled = True 'ENABLE SEARCH FREM

Call Member.clearControl(Me) 'CLEAR CONTROLS If rs_mbr.RecordCount <> 0 Then

rs_mbr.MoveFirst

Call Book.enableCommand(Me) 'ENABLE BUTTON 'RETRIVE RECORD

Call Member.memberData(Me, rs_mbr) Else

Call Book.disableCommand(Me) 'DISABLE BTNS Call Member.clearControl(Me) 'CLEAR CONTROLS CmdAdd.Enabled = True

End If

Call Member.controlEnable(Me, False) 'LOCK TEXT BOXES

CmdSave.Enabled = False

CmbClass.Enabled = True 'ENABLE COURCE COMBO CmbClassYear.Enabled = True 'ENABLE YEAR COMBO ElseIf CmdExit.Caption = "E&xit" Then

Unload Me End If

End Sub

Private Sub CmdFirst_Click()

rs_mbr.MoveFirst 'MOVE RECORD TO FIRST

(62)

Call Member.memberData(Me, rs_mbr)

End Sub

Private Sub CmdLast_Click()

rs_mbr.MoveLast 'MOVE RECORD TO FIRST 'RETRIVE MEMBER DATA

Call Member.memberData(Me, rs_mbr)

End Sub

Private Sub CmdNext_Click()

rs_mbr.MovePrevious If rs_mbr.BOF Then rs_mbr.MoveLast End If

Call Member.memberData(Me, rs_mbr) 'RETRIVE DATA

End Sub

Private Sub CmdPrv_Click()

rs_mbr.MovePrevious If rs_mbr.BOF Then rs_mbr.MoveLast End If

Call Member.memberData(Me, rs_mbr) 'RETRIVE DATA

End Sub

Private Sub CmdSave_Click()

Dim dt As String, sex As String, Qry As String

'VALIDATIONS

If TxtCode = "" Or TxtSurname = "" Or TxtFirst = "" Or TxtLast = "" Or _

TxtAddress = "" Or TxtCity = "" Or TxtFee = "" Then MsgBox "Enter all compulsory information.",

vbInformation, "Member Entry" Exit Sub

End If

(63)

dt = CmbDay.Text & "/" & CmbMonth.Text & "/" & CmbYear.Text

If OptMale.Value = True Then sex = "M" Else sex = "F" End If 'ADD RECORD If cmd = "Add" Then

Qry = "insert into Mbr_Mast values ('" & TxtCode & "','" & TxtSurname & "','" & _

TxtFirst & "','" & TxtLast & "','" & dt & "','" & TxtAddress & "','" & _

TxtCity & "','" & CmbClass.Text & "','" & CmbClassYear.Text & "','" & _

TxtContact & "','" & sex & "'," & TxtFee & ",0)"

conn.Execute Qry

Call CmbClassYear_Click 'TO RETRIVE UPDATED DATA

Call CmdExit_Click 'TO RESET CONTROLS

MsgBox "Record added successfully.", vbInformation, "Member Entry"

ElseIf cmd = "Edit" Then 'EDIT RECORD

Qry = "update Mbr_Mast set [surname]='" & TxtSurname & "', [member]='" & _

TxtFirst & "', [father]='" & TxtLast & "', [Join_Dt]='" & dt & "', [Address]='" & _

TxtAddress & "',[City]='" & TxtCity & "', [Cnt_No]='" & _ TxtContact & "',[Gender]='" & sex & "',[Fee]=" & TxtFee

(64)

TxtCode & "'" & " and [Crs]='" & Class & "' and [Yer]='" & Yer & "'" MsgBox Qry conn.Execute Qry

Call CmdExit_Click 'TO RESET CONTROLS End If

End Sub

Private Sub CmdTransfer_Click()

Unload Me

FrmTransfer.Show vbModal

End Sub

Private Sub Form_Load()

Dim i As Integer 'DAY COMBO For i = 1 To 31 CmbDay.AddItem i Next 'MONTH COMBO For i = 1 To 12 CmbMonth.AddItem i Next 'YEAR COMBO For i = 1950 To 2050 CmbYear.AddItem i Next CmbClass.Text = Class

(65)

Me.MsfgSearch.FormatString = "No. |Code |Name |Join Date |City " & _ "|Contect No. |Gender| Fine"

End Sub

Private Sub Form_Resize()

If Me.Width > 6630 Then

ShapLabel.Width = Me.ScaleWidth

LblLabel.Left = ShapLabel.Width / 2 - LblLabel.Width / 2 End If

End Sub

Private Sub Form_Unload(Cancel As Integer)

rs_mbr.Close If Forms.Count = 2 Then MDIFrm.Pct1.Visible = True End If End Sub

Private Sub MsfgSearch_Click()

rs_mbr.MoveFirst

rs_mbr.Find "Code = '" &

MsfgSearch.TextMatrix(MsfgSearch.Row, 1) & "'"

Call memberData(Me, rs_mbr) 'fill controls

End Sub

Private Sub MsfgSearch_RowColChange()

rs_mbr.MoveFirst

rs_mbr.Find "Code = '" &

MsfgSearch.TextMatrix(MsfgSearch.Row, 1) & "'"

Call memberData(Me, rs_mbr) 'fill controls

(66)

Private Sub TxtAddress_GotFocus()

Call Book.selectTxt(TxtAddress)

End Sub

Private Sub TxtAddress_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Then KeyAscii = 0 Exit Sub End If KeyAscii = Book.upper(KeyAscii) End Sub

Private Sub TxtCity_GotFocus()

Call Book.selectTxt(TxtCity)

End Sub

Private Sub TxtCity_KeyPress(KeyAscii As Integer)

KeyAscii = alpha(KeyAscii)

End Sub

Private Sub TxtCode_GotFocus()

Call Book.selectTxt(TxtCode)

End Sub

Private Sub TxtCode_KeyPress(KeyAscii As Integer)

If KeyAscii < Asc("0") Or KeyAscii > Asc("9") Then KeyAscii = 0

End If

End Sub

Private Sub TxtContact_GotFocus()

Call Book.selectTxt(TxtContact)

End Sub

Private Sub TxtContact_KeyPress(KeyAscii As Integer)

If KeyAscii = 8 Then KeyAscii = 8

ElseIf (KeyAscii < Asc("0") Or KeyAscii > Asc("9")) And KeyAscii <> Asc("-") Then

(67)

KeyAscii = 0 End If

End Sub

Private Sub TxtFee_GotFocus()

Call Book.selectTxt(TxtFee)

End Sub

Private Sub TxtFee_KeyPress(KeyAscii As Integer)

If KeyAscii = 8 Then KeyAscii = 8

ElseIf KeyAscii < Asc("0") Or KeyAscii > Asc("9") Then KeyAscii = 0

End If

End Sub

Private Sub TxtFirst_GotFocus()

Call Book.selectTxt(TxtFirst)

End Sub

Private Sub TxtFirst_KeyPress(KeyAscii As Integer)

KeyAscii = alpha(KeyAscii)

End Sub

Private Sub TxtLast_GotFocus()

Call Book.selectTxt(TxtLast)

End Sub

Private Sub TxtLast_KeyPress(KeyAscii As Integer)

KeyAscii = alpha(KeyAscii)

End Sub

Private Sub TxtSearch_Change()

Set rs_temp = New Recordset

rs_temp.Open "select * from Mbr_Mast where [Crs]='" & CmbClass.Text & "' and [Yer]='" & CmbClassYear.Text & "' and " & CmbSearch.Text & " like('" & TxtSearch & "%') order by " & CmbSearch, conn, adOpenStatic, adLockReadOnly

(68)

If rs_temp.RecordCount = 0 Then MsfgSearch.Enabled = False Else MsfgSearch.Enabled = True End If

Call fillMbrGrid1(Me, rs_temp) 'fill grid

End Sub

Private Sub TxtSearch_GotFocus()

TxtSearch.Locked = False

End Sub

Private Sub TxtSearch_KeyPress(KeyAscii As Integer)

If KeyAscii = 39 Then KeyAscii = 0

End If

KeyAscii = upper(KeyAscii)

End Sub

Private Sub TxtSurname_GotFocus()

Call Book.selectTxt(TxtSurname)

End Sub

Private Sub TxtSurname_KeyPress(KeyAscii As Integer)

KeyAscii = Member.alpha(KeyAscii)

End Sub

'================================================ ===

Private Sub fillMbrGrid1(Frm As Form, rs As Recordset)

Dim r As Integer Frm.MsfgSearch.Cols = 8 Frm.MsfgSearch.Rows = rs.RecordCount + 1 If rs.RecordCount > 0 Then rs.MoveFirst

(69)

For r = 1 To rs.RecordCount

Frm.MsfgSearch.TextMatrix(r, 0) = r Frm.MsfgSearch.TextMatrix(r, 0) = r

Frm.MsfgSearch.TextMatrix(r, 1) = rs.Fields(0)

Frm.MsfgSearch.TextMatrix(r, 2) = rs.Fields(1) & " " & rs.Fields(2) & " " & rs.Fields(3)

Frm.MsfgSearch.TextMatrix(r, 3) = Format(rs.Fields(4), "dd-mm-yyyy") Frm.MsfgSearch.TextMatrix(r, 4) = rs.Fields(6) Frm.MsfgSearch.TextMatrix(r, 5) = rs.Fields(9) Frm.MsfgSearch.TextMatrix(r, 6) = rs.Fields(10) Frm.MsfgSearch.TextMatrix(r, 7) = rs.Fields(12) rs.MoveNext Next End If End Sub

FORM – 9 : MEMBER TRANSFER

(FrmTransfer)

(70)

FORM – 9 : MEMBER TRANSFER

(FrmTransfer)

(71)

Option Explicit

Dim rs As New ADODB.Recordset Dim rs1 As New ADODB.Recordset Dim i As Integer, cnt As Integer Dim Qry As String

Private Sub CmbClassFrom_Click()

Call fillYear(CmbClassFrom, CmbClassYearFrom)

CmbClassYearFrom.Text = CmbClassYearFrom.List(0)

End Sub

Private Sub CmbClassTo_Click()

Call fillYear(CmbClassTo, CmbClassYearTo) CmbClassYearTo.Text = CmbClassYearTo.List(0)

End Sub

Private Sub CmbClassYearFrom_Click()

Set rs = New Recordset

rs.Open "SELECT * FROM Mbr_Mast WHERE [Crs]='" & CmbClassFrom & _

"' AND [Yer]='" & CmbClassYearFrom & "'", conn, adOpenStatic, adLockReadOnly

LstFrom.Clear

If rs.RecordCount > 0 Then Do While Not rs.EOF

LstFrom.AddItem rs.Fields(0) & " " & _

rs.Fields(1) & " " & rs.Fields(2) & " " & rs.Fields(3)

rs.MoveNext Loop

(72)

End If

End Sub

Private Sub CmbClassYearTo_Click()

Set rs1 = New Recordset

rs1.Open "SELECT * FROM Mbr_Mast WHERE [Crs]='" & CmbClassTo.Text & _

"' AND [Yer]='" & CmbClassYearTo.Text & "' ORDER BY Code", conn, adOpenStatic, adLockReadOnly

LstTo.Clear

If rs1.RecordCount > 0 Then Do While Not rs1.EOF

LstTo.AddItem rs1.Fields(0) & " " & _

rs1.Fields(1) & " " & rs1.Fields(2) & " " & rs1.Fields(3) rs1.MoveNext Loop End If End Sub

Private Sub CmdCancel_Click()

Unload Me

FrmMember.Show

End Sub

Private Sub CmdTransfer_Click()

'WHEN TRANSFER TO SAME CLASS & YEAR If CmbClassFrom.Text = CmbClassTo.Text And

CmbClassYearFrom.Text = CmbClassYearTo.Text Then

MsgBox "Member can not transfer to same class and year", vbInformation, "Member Transfer" Exit Sub

(73)

If rs1.RecordCount = 0 Then

Qry = "UPDATE Mbr_Mast SET [Crs]='" & CmbClassTo.Text & _

"',[Yer]='" & CmbClassYearTo.Text & "' WHERE [Crs]='" & _

CmbClassFrom.Text & "' AND [Yer]='" & CmbClassYearFrom.Text & "'"

conn.Execute Qry

MsgBox "Member transmitted successfully.", vbInformation, "Member Transfer"

LstFrom.Clear

Call CmbClassYearTo_Click 'TO RETRIVE UPDATED DATA

Else

MsgBox "Destination Class is not empty.", vbInformation, "Member Transfer"

End If

End Sub

Private Sub Form_Load()

CmbClassFrom.Text = CmbClassFrom.List(0) CmbClassTo.Text = CmbClassTo.List(0) End Sub '================================================ ===

'FILL YEAR COMBO BOX

Public Sub fillYear(c As Control, y As Control)

y.Clear

(74)

If c.Text = "BBA" Or c.Text = "BCOM" Then y.AddItem "FY" y.AddItem "SY" y.AddItem "TY"

ElseIf c.Text = "PGDCA" Or c.Text = "DCS" Then For i = 1 To 2

y.AddItem "SEM" & i Next

Else

For i = 1 To 6

y.AddItem "SEM" & i Next

End If

End Sub

FORM – 10 : BOOK OPERATIONS

(FrmBkEntry)

(75)
(76)
(77)
(78)
(79)

FORM – 14 : MEMBER & ISSUE REPORT

CREATION (FrmRpt)

(80)

FORM – 15 : ABOUT APPLICATION

(FrmAbout)

References

Related documents

A query is created when you want to gather information from one or more tables, perform calculations, sort data on more than one field, and update a group of records.. This

Creating a SQL query using SELECT 85 Combining data from multiple tables 86 Using a stored procedure to retrieve data 89 Specifying what data to retrieve from a text file 91

After you create your query and return the data to Excel, Query retrieves the data and provides the Excel workbook with both the query and data source information so you can

anniversary of the establishment of the Raleigh Female Benevolent Society, a Sermon shall be preached by some Minister selected for that purpose, and a collection then made in aid

Debra Dobkins, Associate Professor of English, Dean of the Women’s College, Director Caitlin Kelly, Coordinator.. Brenau Trustee Library, Rm 112 625 Academic Street Gainesville,

KR 4.4.a: Expected Learning Outcome: Students are able to explain the impact of health care policy and administration, different health care delivery systems and current

The proposed bTBI regions will be used in the following section to determine the correlation between observable blast injuries (eardrum rupture and lung damage) and the occurrence

Strengthen the rabies shot was possible, chemically inactivated rabies in asia, handwritten information on mobile apps to do you need your local rabies even if a risk.. Carriers