You are on page 1of 106

TABLE OF CONTENTS

Synopsis
1. System configuration
a.

Hardware configuration

b.

Software configuration

2. About the software


3. System design
4. Project description
5. Database design
6. Sample code
7. Screen layouts
8. Future enhancements
9. Conclusion
Bibliography
Appendix

STUDENT INFORMATION
SYNOPSIS
Introduction of computers there has been a huge transformation, where data is
transformed into electronic form. The days where all records were maintained manually
and stored in a go-down have become more of an illusion.
This project has been developed to generate the students information for the
students as marks, duration of the course and records of students in the educational
institute.
The traditional way of filling the papers is totally eliminated. The presence of
separate page for each of the student helps the to search easily. Reports that are generated
help student to find out certain details like the current marks, grade, and registration
status. There is no need of user training is required for this system application.
The proposed system will show:
Mark details
Student Bio-data
This is an automation project, which gets the input from the system and automates
the control over the electronic devices. Using this software the entire system can be made
automated.

Development Tools and Technologies


Front End
VB 6
Visual Basic (VB) is an ideal programming language for developing
sophisticated professional applications for Microsoft Windows.
Coding in GUI environment is quite a transition to traditional, linear
programming methods where the user is guided through a linear path of execution
and is limited to small set of operations. In GUI environment, the number of
options open to the user is much greater, allowing more freedom to the user and
developer. Features such as easier comprehension, user-friendliness, faster

application development and many other aspects such as introduction to ActiveX


technology and Internet features make Visual Basic an interesting tool to work
with.
Visual Basic (VB) is an event-driven programming language. This is
called because programming is done in a graphical environment unlike the
previous version BASIC where programming is done in a text only environment
and executed sequentially in order to control the user interface. Visual Basic
enables the user to design the user interface quickly by drawing and arranging the
user elements. Due to this spent time is saved for the repetitive task.
Visual Basic (VB) was developed from the BASIC programming
language. In the 1970s, Microsoft started developing ROM-based interpreted
BASIC for the early microprocessor-based computers. In 1982, Microsoft
QuickBasic revolutionized Basic and was legitimized as a serious development
language for MS-DOS environment. Later on, Microsoft Corporation created the
enhanced version of BASIC called Visual Basic for Windows.
Important Features of Visual Basic (VB)

Full set of objects - you 'draw' the application

Lots of icons and pictures for your use

Full array of mathematical, string handling, and graphics functions

Can handle fixed and dynamic variable and control arrays

Sequential and random access file support

Useful debugger and error-handling facilities

Powerful database access tools

ActiveX support

Back End
1. MS Access
MS Access is desktop RDBMS support small application with all features like
relational query, different data types, joins, and query. Includes

Easy to use and easy to deployment.

Integration with Windows OS

Scalability

Import and Export of data in all major database system.

Centralized Management

Reliability

Automating Tasks

TABLE STRUCTURE
Field Names
Admin
Password

Data type
Text(20)
Date

Allow NULLs
Not allowed
Not allowed

Student Table:
Field Names
Stid
sname
fname
dob
sex
religion
community
email
phone
degree
dept
M1
M2
M3
M4
M5
M6
M8
M9
M10
M11
M12
M13
M14
M15
M16
M17
M18
M19
M20
M21

Data type
Number(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)

Allow NULLs
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed

M22
M23
M24
M25
M26
M27
M28
M29

Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)

Not
Not
Not
Not
Not
Not
Not
Not

allowed
allowed
allowed
allowed
allowed
allowed
allowed
allowed

Data Flow Diagram (DFD)


Level 0 DFD (Context Diagram) Student Management

Admin

Login

Student
Information

Verified

View
& Update

Level 1 DFD Student Management


ADMINISTRATOR:

Admin
Verified
Password

Student Database

Store
Record
s
Admin

STUDENTS:

Students
Verified
Password

Student Database

View
Info

Students

HARDWARE CONFIGURATION
Hardware Requirements:
RAM capacity

256MB

Hard Disk

40 GB

Floppy Drive

1.44 MB

CD Drive

52 X

Display Type

Color Monitor

Keyboard Type

101 Keys

Mouse

Logitech

Printer

HP DeskJet

SOFTWARE CONFIGURATION
Software Requirements:
Operating System

Windows XP

Front-End

Visual Basic 6.0

Database

MS-Access

Future Enhancement
In this proposed system, to show the mark details are implemented. The student
information system is beneficial for any type of educational institute. It can be modified
any time with new information.
This will help to access the facilities of student information system by every body. This
access technology will support to develop various facilities like college transport, time
table, hostel facilities etc. The system provides flexibility for incorporating new features,
which may be necessary in future. Thus the system is flexible and can be incorporated
with new features in the future

SYSTEM CONFIGURATION

a)HARDWARE CONFIGURATION
Processor

Intel Pentium 4

Processor speed

0.60GHz

RAM capacity

256MB

Hard Disk

40 GB

Floppy Drive

1.44 MB

CD Drive

52 X

Display Type

Color Monitor

Keyboard Type

101 Keys

Mouse

Logitech

b) SOFTWARE CONFIGURATION
Operating System

Windows XP

Front-End

Visual Basic 6.0

Database

MS-Access

ABOUT THE SOFTWARE


Visual Basic (VB)
Visual Basic is the third-generation event-driven programming language and
integrated development environment (IDE) from Microsoft for its COM programming
model. VB is also considered a relatively easy to learn and use programming language,
because of its graphical development features and BASIC heritage.
Visual Basic was derived from BASIC and enables the rapid application
development (RAD) of graphical user interface (GUI) applications, access to databases
using Data Access Objects, Remote Data Objects, or ActiveX Data Objects, and creation
of ActiveX controls and objects. Scripting languages such as VBA and VBScript are
syntactically similar to Visual Basic, but perform differently.
A programmer can put together an application using the components provided
with Visual Basic itself. Programs written in Visual Basic can also use the Windows API,
but doing so requires external function declarations.The final release was version 6 in
1998. Microsoft's extended support ended in March 2008 and the designated successor
was Visual Basic .NET (now known simply as Visual Basic).

LANGUAGE FEATURES
Like the BASIC programming language, Visual Basic was designed to be easily
learned and used by beginner programmers. The language not only allows programmers
to create simple GUI applications, but can also develop complex applications.
Programming in VB is a combination of visually arranging components or controls on a
form, specifying attributes and actions of those components, and writing additional lines
of code for more functionality. Since default attributes and actions are defined for the
components, a simple program can be created without the programmer having to write
many lines of code. Performance problems were experienced by earlier versions, but with
faster computers and native code compilation this has become less of an issue.

Although programs can be compiled into native code executables from version
5 onwards, they still require the presence of runtime libraries of approximately 1 MB in
size. This runtime is included by default in Windows 2000 and later, but for earlier
versions of Windows like 95/98/NT it must be distributed together with the executable.
Forms are created using drag-and-drop techniques. A tool is used to place controls (e.g.,
text boxes, buttons, etc.) on the form (window). Controls have attributes and event
handlers associated with them. Default values are provided when the control is created,
but may be changed by the programmer. Many attribute values can be modified during
run time based on user actions or changes in the environment, providing a dynamic
application. For example, code can be inserted into the form resize event handler to
reposition a control so that it remains centered on the form, expands to fill up the form,
etc. By inserting code into the event handler for a key press in a text box, the program can
automatically translate the case of the text being entered, or even prevent certain
characters from being inserted.
Visual Basic can create executables (EXE files), ActiveX controls, or DLL files,
but is primarily used to develop Windows applications and to interface database systems.
Dialog boxes with less functionality can be used to provide pop-up capabilities. Controls
provide the basic functionality of the application, while programmers can insert
additional logic within the appropriate event handlers. For example, a drop-down
combination box will automatically display its list and allow the user to select any
element. An event handler is called when an item is selected, which can then execute
additional code created by the programmer to perform some action based on which
element was selected, such as populating a related list.Alternatively, a Visual Basic
component can have no user interface, and instead provide ActiveX objects to other
programs via Component Object Model (COM). This allows for server-side processing or
an add-in module.
The language is garbage collected using reference counting, has a large library
of utility objects, and has basic object oriented support. Since the more common
components are included in the default project template, the programmer seldom needs to
specify additional libraries. Unlike many other programming languages, Visual Basic is

generally not case sensitive, although it will transform keywords into a standard case
configuration and force the case of variable names to conform to the case of the entry
within the symbol table. String comparisons are case sensitive by default, but can be
made case insensitive if so desired.
The Visual Basic compiler is shared with other Visual Studio languages (C, C+
+), but restrictions in the IDE do not allow the creation of some targets (Windows model
DLLs) and threading models.

CHARACTERISTICS
Visual Basic has the following traits which differ from C-derived languages:

Multiple assignments available in C language is not possible. A = B = C does not


imply that the values of A, B and C are equal. The Boolean result of "Is B = C?" is
stored in A. The result stored in A could therefore be false(0) or true(-1)

Boolean constant True has numeric value 1. This is because the Boolean data
type is stored as a 16-bit signed integer. In this construct 1 evaluates to 16 binary
1s (the Boolean value True), and 0 as 16 0s (the Boolean value False). This is
apparent when performing a Not operation on a 16 bit signed integer value 0
which will return the integer value 1, in other words True = Not False. This
inherent functionality becomes especially useful when performing logical
operations on the individual bits of an integer such as And, Or, Xor and Not. This
definition of True is also consistent with BASIC since the early 1970s Microsoft
BASIC implementation and is also related to the characteristics of CPU
instructions at the time.

Logical and bitwise operators are unified. This is unlike some C-derived
languages (such as Perl), which have separate logical and bitwise operators. This
again is a traditional feature of BASIC.

Variable array base. Arrays are declared by specifying the upper and lower bounds
in a way similar to Pascal and FORTRAN. It is also possible to use the Option
Base statement to set the default lower bound. Use of the Option Base statement
can lead to confusion when reading Visual Basic code and is best avoided by

always explicitly specifying the lower bound of the array. This lower bound is not
limited to 0 or 1, because it can also be set by declaration. In this way, both the
lower and upper bounds are programmable. In more subscript-limited languages,
the lower bound of the array is not variable. This uncommon trait does exist in
Visual Basic .NET but not in VBScript.

ADVANTAGES OF VISUAL BASIC


There are quite a number of reasons for the enormous success of Visual Basic (VB):

The structure of the Basic programming language is very simple, particularly as to


the executable code.

VB is not only a language but primarily an integrated, interactive development


environment ("IDE").

The VB-IDE has been highly optimized to support rapid application development
("RAD").

The graphical user interface of the VB-IDE provides intuitively appealing views
for the management of the program structure in the large and the various types of
entities (classes, modules, procedures, forms ...).

VB provides a comprehensive interactive and context-sensitive online help


system.

When editing program texts the "IntelliSense" technology informs you in a little
popup window about the types of constructs that may be entered at the current
cursor location.

VB is a component integration language which is attuned to Microsoft's


Component Object Model ("COM").

COM components can be written in different languages and then integrated using
VB.

Interfaces of COM components can be easily called remotely via Distributed


COM ("DCOM"), which makes it easy to construct distributed applications.

COM components can be embedded in / linked to your application's user


interface and also in/to stored documents (Object Linking and Embedding
"OLE", "Compound Documents").

There is a wealth of readily available COM components for many different


purposes.

Nevertheless, we are convinced that there remain many problems that have not been
addressed at all by Java, VB, and other languages or that haven't found a really
satisfactory solution so far.

MICROSOFT OFFICE ACCESS


Access previously known as Microsoft Access, is a relational database
management system from Microsoft that combines the relational Microsoft Jet Database
Engine with a graphical user interface and software development tools. It is a member of
the Microsoft Office suite of applications and is included in the Professional and higher
versions for Office and also sold separately.
Access stores data in its own format based on the Access Jet Database Engine. It
can also import or link directly to data stored in other Access databases, Excel, Share
Point lists, text, XML, Outlook, HTML, dBase, Paradox, Lotus 1-2-3, or any ODBCcompliant data container including Microsoft SQL Server, Oracle, MySQL and
PostgreSQL. Software developers and data architects can use it to develop application
software and non-programmer "power users" can use it to build simple applications. Like
other Office applications Access is supported by Visual Basic for Applications, an objectoriented programming language that can reference a wide variety of objects, including
DAO (Data Access Objects) and ActiveX Data Objects, and many other ActiveX
components provided by Microsoft or by third parties. Visual objects used in forms and
reports expose their methods and properties gracefully in the VBA programming
environment, and a huge selection of Windows operating system functions can be
declared and called from VBA code modules, making Access a rich programming
environment.
Microsoft Access is used to create simple database solutions. Access tables
support a variety of standard field types, indices, and referential integrity. Access also
includes a query interface, forms to display and enter data, and reports for printing. The
underlying Jet database, which contains these objects, is multi-user-aware and handles
record-locking and referential integrity including cascading updates and deletes.
Simple tasks can be automated through macros with point-and-click options.
Microsoft Access is very popular among non-programmers who can create visually

pleasing and relatively advanced solutions on their own. It is also easy to place a database
on a network and have multiple users share and update data without overwriting each
others work. Data is locked at the record level which is significantly different from Excel
which locks the entire spreadsheet.
Microsoft offers a wide range of template databases within the program and for
download from their website. These options are available upon starting Access and allow
users to quickly use and enhance a database with pre-defined tables, queries, forms,
reports, and macros. Popular templates include tracking contacts, assets, issues, events,
projects, and tasks. Templates do not include VBA code.
Microsoft Access also offers the ability for programmers to create solutions
using the programming language Visual Basic for Applications (VBA), which is similar
to Visual Basic 6.0 (VB6) and used throughout the Microsoft Office programs such as
Excel, Word, Outlook and PowerPoint. Most VB6 code including the use of Windows
API calls, can be used in VBA. Power users and developers can extend basic end-user
solutions to a professional solution with advanced automation, data validation, error
trapping, and multi-user support.
Database solutions created entirely in Microsoft Access are well suited for
individual and workgroup use across a network. The number of simultaneous users that
can be supported depends on the amount of data, the tasks being performed, level of use,
and application design. Generally accepted limits are solutions with 1 GB or less of data
(Access supports up to 2 GB) and 50 or fewer simultaneous users. This is appropriate for
workgroup and department solutions where the total number of users number a few
hundred.
Applications that simply view data or have simple data entry can support
considerably more users. Applications that run complex queries or analysis across large
datasets would naturally require greater bandwidth and memory. Microsoft Access is
designed to scale to support more data and users by linking to multiple Access databases
or using a back-end database like Microsoft SQL Server. With the latter design, the
amount of data and users can scale to enterprise-level solutions.
Microsoft Access' role in web development prior to version 2010 is limited.

User interface features of Access, such as forms and reports, only work in Windows. The
Microsoft Jet Database Engine, core to Access, can be accessed through technologies
such as ODBC or OLE DB. The data (i.e., tables and queries) can be accessed by webbased applications developed in ASP.NET, PHP, or Java. Many ISPs offer Microsoft
Access as a data storage option.
Access 2010 will allow forms and reports to be published to web sites using
what is called "access web services" that runs on Share point software. These web based
forms and reports run in any standard browser. The resulting web forms and reports when
run in the browser don't requite any activeX nor add-ins like Silver light. Thus, the
resulting application can be used by running FireFox on ubuntu Linux for example
(windows or any add-ins are not required to consume these web applications built with
access 2010).
In enterprise environments, Microsoft Access is particularly appropriate for
meeting end-user database needs and for rapid application development. Microsoft
Access is easy enough for end users to create their own queries, forms and reports, laying
out fields and groupings, setting formats, etc. This frees up the professional developers to
focus on more complex portions of the application.
A compiled MDE or ACCDE version of an Access database can be created to
prevent users from getting to the design surfaces to modify module code, forms, and
reports. This is often used in environments where end-user modifications are discouraged
or the application's code should be kept private.
Microsoft offers a runtime version of Microsoft Access 2007 for download. This
allows people to create Access solutions and distribute it for use by non-Microsoft Access
owners (similar to the way DLLs or EXEs are distributed). Unlike the regular version of
Access, the runtime version allows users to use the Access application but they cannot
use its design surfaces.
Microsoft also offers developer extensions for download to help distribute
Access applications, create database templates, and integrate source code control with
Microsoft Visual SourceSafe.

FEATURES
Users can create tables, queries, forms and reports, and connect them together
with macros. Advanced users can use VBA to write rich solutions with advanced data
manipulation and user control.
The original concept of Access was for end users to be able to access data
from any source. Other uses include: the import and export of data to many formats
including Excel, Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server, Oracle, ODBC,
etc. It also has the ability to link to data in its existing location and use it for viewing,
querying, editing, and reporting. This allows the existing data to change and the Access
platform to always use the latest data. It can perform heterogeneous joins between data
sets stored across different platforms. Access is often used by people downloading data
from enterprise level databases for manipulation, analysis, and reporting locally.
There is also the Jet Database format (MDB or ACCDB in Access 2007) which
can contain the application and data in one file. This makes it very convenient to
distribute the entire application to another user, who can run it in disconnected
environments.One of the benefits of Access from a programmer's perspective is its
relative compatibility with SQL (structured query language) queries can be viewed
graphically or edited as SQL statements, and SQL statements can be used directly in
Macros and VBA Modules to manipulate Access tables. Users can mix and use both VBA
and "Macros" for programming forms and logic and offers object-oriented possibilities.
VBA can also be included in queries.
Microsoft Access offers parameterized queries. These queries and Access tables
can be referenced from other programs like VB6 and .NET through DAO or ADO. From
Microsoft Access, VBA can reference parameterized stored procedures via ADO.The
desktop editions of Microsoft SQL Server can be used with Access as an alternative to the
Jet Database Engine. This support started with MSDE (Microsoft SQL Server Desktop
Engine), a scaled down version of Microsoft SQL Server 2000, and continues with the
SQL Server Express versions of SQL Server 2005 and 2008.
Microsoft Access is a file server-based database. Unlike client-server relational
database management systems (RDBMS), Microsoft Access does not implement database

triggers, stored procedures, or transaction logging. Access 2010 (not released) does have
table level triggers and stored procedures built into the ACE data engine.

ADVANTAGES OF MICROSOFT ACCESS


With Microsoft Access, the average user can work with databases without being highly
skilled in the field. Microsoft made it easy for just about anyone to learn how to work
with databases by replacing some of the complicated work with easy-to-use templates.
While using Access can be somewhat of a challenge just because of the extensive options
it offers, it's user-friendly enough to have a database up and running before you know it.
Function
Microsoft Access is a database software program that makes manipulating data
manageable for users of many skill levels. You can input data and sort filter or
group information according to your needs. It's particularly useful when there are
thousands of records and sorting through them individually would take hours.
Access allows you to obtain the information quicker by providing a few
commands to tell the program what is being sought. Reports can be created, too,
that pull information out of the database according to the project parameters. For
example, information on a customer's age, sex, marital status, address, email
address, phone number and cell phone number may be listed in your database.
However, demographics about the client may be the only thing necessary to
complete a given project. You can then build a report that will extract customers
by age, sex and marital status.
Benefits
Flexibility is the key with Access. Knowing that not everyone is skilled at making
databases, Microsoft created basic templates that a user can go and use
immediately. However, a database can be built from scratch or the templates can
be tweaked as needed to fit your needs. Rather than inputting each record every
time a project is started, Access holds thousands of records for you to revisit
whenever needed, making it a time-saver, too. This is great because not only is the
information there, but it can be used alongside other Microsoft programs such as
Word. Simply create a mail merge with thousands of letters and join it together

with the Access database. All contacts will be pulled from Access and dumped
into each letter separately. Interaction between MS Outlook is possible too:
Import contacts from your MS Outlook contact book into Access or export contact
information in Access and save it as a contact in Outlook.
Considerations
Access makes it quick to share and manipulate information through collaboration
on the Web. Using Windows Sharepoint Services, several users can move their
Access files to Windows Sharepoint Services so coworkers can update, edit or
work with those files, provided they have been granted permissions by the person
who uploaded the files to Windows Sharepoint Services.
Access Glossary Terms
Access uses many terms that may be new to you, but are necessary to understand
in order to complete the work. A "database" is a way to organize and store
information about people, places and things. Access is a database management
system which houses those various databases and makes it quick to access them.
"Queries" are functions that allow a user to obtain certain data from the table.
Using a query helps answer specific questions that would be difficult to answer by
just looking at the table itself. They can help filter, summarize and perform
calculations with your data. A "table" consists of rows and columns, while
"records" are the rows that combine information about something, and "fields" are
the columns that contain a single item of information.
Database Design Process
A little bit of planning will go a long way for the best use of an Access database.
First, figure out how the database will be used. Next, gather all information to be
input into the database and organize the information into categories, each of
which will become a table. Input the data into the tables, which will become
columns and create relationships between the tables if there is more than one.
Finally, apply normalization rules to make sure the tables are structured correctly.

OVERVIEW OF DATA FLOW DIAGRAM (DFD)

Level 0 DFD (Context Diagram) Student Information

Admin

Login

Student
Information
System

Verified

View
& Update

Level 1 DFD Student Information


Student Login
Student
login details

Student login
details
Student

Checks
Student
exists
or not

Student Register

Student
login status
If Member
does not
exists.
Error will
display

Display
appropriate
error message

Student

Admin Login

Admin login
details
Admin

Student
User
login
logindetails
Admin Register

Checks
Admin
exists or
not

Admin login
status
If user does
not exists.
Error will
display
Display
appropriate
error message

Admin

Level 2 DFD Student Information


Student Details

Student
Login details
Student

Student
login details
Student
Register

Checks
user
exists or
not

User login
status
If Member
Exists
Allow to login
and populate
Student details

Student
details

Display Mark
and Personal
details
Student

Personal
and Mark

Student
Register

Admin

Admin
login
details

Admin login
details
Checks
user
exists
or not

Administrator

Admin Master

Admin login
status

Process
Student
Details

If admin
exists
Allow to
login and
display
admin
panel
Enter
Student
details

Admin
Register
Admin Error
details

Administrator
Update or
insert
Student
Details

PROJECT DESCRIPTION
ETHI- SIS
Ethi-SIS is an application designed for Student event management. This Student
Information application is developed using Visual Basic and MS Access and hence easy
to use and understand. This application goes through several forms and has two end
users. The users may be student or administrator. The forms viewed by the administrator
could not be viewed by student thus providing authentication.
This application is linked to database where personal and marks details are stored.
This database is designed using Access07. Even the student and admin login details are
stored in this SIS database. This database could be accessed through the ethi-sis
application. And only the administrator has the right to modify records in the database
through this application. Student can only have view of the database. Hence student login
is restricted to add record or modify data in student database.
Admin_Login:
Administrator login can add event details of each student personal and
mark details for each event. The details added could be edited and changes made could be
updated, and unwanted records can also be deleted. This login can also modify password
for student login or administrator login. Administrator can also view database and
generate report.
Student_Login:
Student login is allowed to view mark and personal details. Thus

this

application is useful for managing student information. Though this application is


designed for managing Ethiraj college student information program, this could be easily
modified for any other Institution student programs.

FORMS REVIEW
Login_Screen
The first screen of this ethi-sis application is login screen where student and
admin login is done. If student gives his/her name and password and try to enter into
admin login then an error message is displayed. Similarly if admin gives his/her name
and password and try to enter into student login then error message arises. Correct name,
password along with respective login should be given in this form to view next form.
Successful name and password match leads to its respective next form.
ADMIN MODULE
Admin login leads to this form where the admin view for student personal detail.
Then its details could be added or edited and viewed as needed. If Mark Detail option is
selected then its respective records or modified only if name exist in the given list. If we
try to enter without selecting any option it raises error message. We can move to login
screen by clicking home command and quit application by clicking cancel command
which are available in this form.
STUDENT MODULE
Ethi-SIS application when entered through student login this form is displayed
mark details and click to personal button to view the personal details.
At any form student or admin could move to their corresponding previous forms
using home option and quit the application at any stage using cancel option. Home option
leads to the login screen. Thus, these forms are simpler and easy to wok with.

DATABASE DESIGN
Field Names
Admin
Password

Data type
Text(20)
Date

Allow NULLs
Not allowed
Not allowed

Student Table:
Field Names
Stid
sname
fname
dob
sex
religion
community
email
phone
degree
dept
M1
M2
M3
M4
M5
M6
M8
M9
M10
M11
M12
M13
M14
M15
M16
M17
M18
M19
M20
M21
M22
M23

Data type
Number(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Text(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)

Allow NULLs
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed
Not allowed

M24
M25
M26
M27
M28
M29

Number(20)
Number(20)
Number(20)
Number(20)
Number(20)
Number(20)

CODING

Not
Not
Not
Not
Not
Not

allowed
allowed
allowed
allowed
allowed
allowed

Main
Dim RS As New ADODB.Recordset
Private Sub Command1_Click()
Module1.AttendConn
If RS.State = adStateOpen Then
RS.Close
End If

RS.CursorLocation = adUseClient
RS.CursorType = adOpenStatics
RS.LockType = adLockOptimistic

RS.Open "select * from admin where uname= '" & Text1.Text & "' and
password='" & Text2.Text & "'", CN
If RS.RecordCount > 0 Then
Module1.CloseConn
Unload Me
AdminPersonal.Show
Unload Me
Else
Module1.CloseConn
MsgBox "Incorrect Login Attempt ", vbCritical, "Admin"
End If
End Sub

Private Sub Command2_Click()


Viewform.Label31.Caption = Text3.Text
Personal.Label14.Caption = Text3.Text
Module1.AttendConn
If RS.State = adStateOpen Then
RS.Close
End If
RS.CursorLocation = adUseClient
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic

RS.Open "select * from personal where Stid= '" & Text3.Text & "' and
dob='" & Text4.Text & "'", CN
If RS.RecordCount > 0 Then
Module1.CloseConn
Unload Me
Viewform.Show
Else
Module1.CloseConn
MsgBox "Incorrect Login Attempt ", vbCritical, "Student"
End If
End Sub
Private Sub Form_Load()
'WINRUNNER: DO NOT DELETE THIS SECTION

asr.Init Forms
'WINRUNNER: END
End Sub

PERSONAL
Dim RS As New ADODB.Recordset

Private Sub Command1_Click()


Viewform.Label31.Caption = Personal.Label14.Caption
Viewform.Show
Unload Me
End Sub
Private Sub Command2_Click()
Main.Show
Unload Me
End Sub

Private Sub Form_Activate()


Module1.AttendConn
If RS.State = adStateOpen Then
RS.Close
End If
RS.CursorLocation = adUseClient
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
RS.Open "select * from personal where Stid = '" & Label14.Caption & "'",
CN
ReadRec

End Sub
Private Sub Form_Unload(Cancel As Integer)
Module1.CloseConn
End Sub
Public Sub ReadRec()
If IsNull(RS.Fields(0)) = False Then
Text1.Text = RS.Fields(0)
Else
Text1.Text = ""
End If
If IsNull(RS.Fields(1)) = False Then
Text2.Text = RS.Fields(1)
Else
Text2.Text = ""
End If
If IsNull(RS.Fields(2)) = False Then
Text3.Text = RS.Fields(2)
Else
Text3.Text = ""
End If
If IsNull(RS.Fields(3)) = False Then
Text4.Text = RS.Fields(3)
Else
Text4.Text = ""
End If
If IsNull(RS.Fields(4)) = False Then

Text5.Text = RS.Fields(4)
Else
Text5.Text = ""
End If
If IsNull(RS.Fields(5)) = False Then
Text6.Text = RS.Fields(5)
Else
Text6.Text = ""
End If
If IsNull(RS.Fields(6)) = False Then
Text7.Text = RS.Fields(6)
Else
Text7.Text = ""
End If
If IsNull(RS.Fields(7)) = False Then
Text8.Text = RS.Fields(7)
Else
Text8.Text = ""
End If
If IsNull(RS.Fields(8)) = False Then
Text9.Text = RS.Fields(8)
Else
Text9.Text = ""
End If
If IsNull(RS.Fields(9)) = False Then
Text10.Text = RS.Fields(9)
Else

Text10.Text = ""
End If
If IsNull(RS.Fields(10)) = False Then
Text11.Text = RS.Fields(10)
Else
Text11.Text = ""
End If
If IsNull(RS.Fields(11)) = False Then
Text12.Text = RS.Fields(11)
Else
Text12.Text = ""
End If
End Sub

AdminMark
Dim RS As New ADODB.Recordset
Dim RS1 As New ADODB.Recordset

Dim RS2 As New ADODB.Recordset


Dim RS3 As New ADODB.Recordset

Private Sub Combo1_Click()


dep.Text = Combo1.Text

If RS2.State = adStateOpen Then


RS2.Close
End If
RS2.CursorLocation = adUseClient
RS2.CursorType = adOpenStatic
RS2.LockType = adLockOptimistic
RS2.Open "select * from personal where degree ='" & dep.Text & "'", CN
List1.Clear
Do Until RS2.EOF
List1.AddItem RS2.Fields(0)
RS2.MoveNext
Loop
End Sub
Private Sub Command1_Click()

AdminPersonal.Show
Unload Me
End Sub
Private Sub Command2_Click()
Main.Show
Unload Me
End Sub
Private Sub Command3_Click()
If RS3.State = adStateOpen Then
RS3.Close
End If
RS3.CursorLocation = adUseClient
RS3.CursorType = adOpenStatic
RS3.LockType = adLockOptimistic
RS3.Open "select * from personal where Stid ='" & Label18.Caption & "'",
CN
RS3.Fields(12) = Val(Text1.Text) + 0
RS3.Fields(13) = Val(Text2.Text) + 0
RS3.Fields(14) = Val(Text3.Text) + 0
RS3.Fields(15) = Val(Text4.Text) + 0
RS3.Fields(16) = Val(Text5.Text) + 0
RS3.Fields(17) = Val(Text6.Text) + 0
RS3.Fields(18) = Val(Text7.Text) + 0
RS3.Fields(19) = Val(Text8.Text) + 0
RS3.Fields(20) = Val(Text9.Text) + 0

RS3.Fields(21) = Val(Text10.Text) + 0
RS3.Fields(22) = Val(Text11.Text) + 0
RS3.Fields(23) = Val(Text12.Text) + 0
RS3.Fields(24) = Val(Text13.Text) + 0
RS3.Fields(25) = Val(Text14.Text) + 0
RS3.Fields(26) = Val(Text15.Text) + 0
RS3.Fields(27) = Val(Text16.Text) + 0
RS3.Fields(28) = Val(Text17.Text) + 0
RS3.Fields(29) = Val(Text18.Text) + 0
RS3.Fields(30) = Val(Text19.Text) + 0
RS3.Fields(31) = Val(Text20.Text) + 0
RS3.Fields(32) = Val(Text21.Text) + 0
RS3.Fields(33) = Val(Text22.Text) + 0
RS3.Fields(34) = Val(Text23.Text) + 0
RS3.Fields(35) = Val(Text24.Text) + 0
RS3.Fields(36) = Val(Text25.Text) + 0
RS3.Fields(37) = Val(Text26.Text) + 0
RS3.Fields(38) = Val(Text27.Text) + 0
RS3.Fields(39) = Val(Text28.Text) + 0
RS3.Fields(40) = Val(Text29.Text) + 0
RS3.Fields(41) = Val(Text30.Text) + 0
RS3.Update
MsgBox ("Data Updated")
End Sub
Public Sub ReadRec1()
If IsNull(RS1.Fields(0)) = False Then

Label18.Caption = RS1.Fields(0)
Else
Label18.Caption = ""
End If
If IsNull(RS1.Fields(1)) = False Then
Label19.Caption = RS1.Fields(1)
Else
Label19.Caption = ""
End If
If IsNull(RS1.Fields(10)) = False Then
Label20.Caption = RS1.Fields(10)
Else
Label20.Caption = ""
End If
If IsNull(RS1.Fields(11)) = False Then
Label21.Caption = RS1.Fields(11)
Else
Label21.Caption = ""
End If
If IsNull(RS1.Fields(12)) = False Then
Text1.Text = RS1.Fields(12)
Else
Text1.Text = ""
End If
If IsNull(RS1.Fields(13)) = False Then
Text2.Text = RS1.Fields(13)
Else

Text2.Text = ""
End If
If IsNull(RS1.Fields(14)) = False Then
Text3.Text = RS1.Fields(14)
Else
Text3.Text = ""
End If
If IsNull(RS1.Fields(15)) = False Then
Text4.Text = RS1.Fields(15)
Else
Text4.Text = ""
End If
If IsNull(RS1.Fields(16)) = False Then
Text5.Text = RS1.Fields(16)
Else
Text5.Text = ""
End If
If IsNull(RS1.Fields(17)) = False Then
Text6.Text = RS1.Fields(17)
If Text6.Text = 0 Then
Text6.Text = ""
End If
Else
Text6.Text = ""
End If
If IsNull(RS1.Fields(18)) = False Then

Text7.Text = RS1.Fields(18)
If Text7.Text = 0 Then
Text7.Text = ""
End If
Else
Text7.Text = ""
End If
If IsNull(RS1.Fields(19)) = False Then
Text8.Text = RS1.Fields(19)
If Text8.Text = 0 Then
Text8.Text = ""
End If
Else
Text8.Text = ""
End If
If IsNull(RS1.Fields(20)) = False Then
Text9.Text = RS1.Fields(20)
If Text9.Text = 0 Then
Text9.Text = ""
End If
Else
Text9.Text = ""
End If
If IsNull(RS1.Fields(21)) = False Then
Text10.Text = RS1.Fields(21)
If Text10.Text = 0 Then
Text10.Text = ""

End If
Else
Text10.Text = ""
End If
If IsNull(RS1.Fields(22)) = False Then
Text11.Text = RS1.Fields(22)
If Text11.Text = 0 Then
Text11.Text = ""
End If
Else
Text11.Text = ""
End If
If IsNull(RS1.Fields(23)) = False Then
Text12.Text = RS1.Fields(23)
If Text12.Text = 0 Then
Text12.Text = ""
End If
Else
Text12.Text = ""
End If
If IsNull(RS1.Fields(24)) = False Then
Text13.Text = RS1.Fields(24)
If Text13.Text = 0 Then
Text13.Text = ""
End If
Else
Text13.Text = ""

End If
If IsNull(RS1.Fields(25)) = False Then
Text14.Text = RS1.Fields(25)
If Text14.Text = 0 Then
Text14.Text = ""
End If
Else
Text14.Text = ""
End If
If IsNull(RS1.Fields(26)) = False Then
Text15.Text = RS1.Fields(26)
If Text15.Text = 0 Then
Text15.Text = ""
End If
Else
Text15.Text = ""
End If
If IsNull(RS1.Fields(27)) = False Then
Text16.Text = RS1.Fields(27)
If Text16.Text = 0 Then
Text16.Text = ""
End If
Else
Text16.Text = ""
End If
If IsNull(RS1.Fields(28)) = False Then
Text17.Text = RS1.Fields(28)

If Text17.Text = 0 Then
Text17.Text = ""
End If
Else
Text17.Text = ""
End If
If IsNull(RS1.Fields(29)) = False Then
Text18.Text = RS1.Fields(29)
If Text18.Text = 0 Then
Text18.Text = ""
End If
Else
Text18.Text = ""
End If
If IsNull(RS1.Fields(30)) = False Then
Text19.Text = RS1.Fields(30)
If Text19.Text = 0 Then
Text19.Text = ""
End If
Else
Text19.Text = ""
End If
If IsNull(RS1.Fields(31)) = False Then
Text20.Text = RS1.Fields(31)
If Text20.Text = 0 Then
Text20.Text = ""
End If

Else
Text20.Text = ""
End If
If IsNull(RS1.Fields(32)) = False Then
Text21.Text = RS1.Fields(32)
If Text21.Text = 0 Then
Text21.Text = ""
End If
Else
Text21.Text = ""
End If
If IsNull(RS1.Fields(33)) = False Then
Text22.Text = RS1.Fields(33)
If Text22.Text = 0 Then
Text22.Text = ""
End If
Else
Text22.Text = ""
End If
If IsNull(RS1.Fields(34)) = False Then
Text23.Text = RS1.Fields(34)
If Text23.Text = 0 Then
Text23.Text = ""
End If
Else
Text23.Text = ""
End If

If IsNull(RS1.Fields(35)) = False Then


Text24.Text = RS1.Fields(35)
If Text24.Text = 0 Then
Text24.Text = ""
End If
Else
Text24.Text = ""
End If
If IsNull(RS1.Fields(36)) = False Then
Text25.Text = RS1.Fields(36)
If Text25.Text = 0 Then
Text25.Text = ""
End If
Else
Text25.Text = ""
End If
If IsNull(RS1.Fields(37)) = False Then
Text26.Text = RS1.Fields(37)
If Text26.Text = 0 Then
Text26.Text = ""
End If
Else
Text26.Text = ""
End If
If IsNull(RS1.Fields(38)) = False Then
Text27.Text = RS1.Fields(38)

If Text27.Text = 0 Then
Text27.Text = ""
End If
Else
Text27.Text = ""
End If
If IsNull(RS1.Fields(39)) = False Then
Text28.Text = RS1.Fields(39)
If Text28.Text = 0 Then
Text28.Text = ""
End If
Else
Text28.Text = ""
End If
If IsNull(RS1.Fields(40)) = False Then
Text29.Text = RS1.Fields(40)
If Text29.Text = 0 Then
Text29.Text = ""
End If
Else
Text29.Text = ""
End If
If IsNull(RS1.Fields(41)) = False Then
Text30.Text = RS1.Fields(41)
If Text30.Text = 0 Then
Text30.Text = ""
End If

Else
Text30.Text = ""
End If
End Sub
Public Sub ReadRec()
If IsNull(RS.Fields(0)) = False Then
Label18.Caption = RS.Fields(0)
Else
Label18.Caption = ""
End If
If IsNull(RS.Fields(1)) = False Then
Label19.Caption = RS.Fields(1)
Else
Label19.Caption = ""
End If
If IsNull(RS.Fields(10)) = False Then
Label20.Caption = RS.Fields(10)
Else
Label20.Caption = ""
End If
If IsNull(RS.Fields(11)) = False Then
Label21.Caption = RS.Fields(11)
Else
Label21.Caption = ""
End If

If IsNull(RS.Fields(12)) = False Then


Text1.Text = RS.Fields(12)
Else
Text1.Text = ""
End If
If IsNull(RS.Fields(13)) = False Then
Text2.Text = RS.Fields(13)
Else
Text2.Text = ""
End If
If IsNull(RS.Fields(14)) = False Then
Text3.Text = RS.Fields(14)
Else
Text3.Text = ""
End If
If IsNull(RS.Fields(15)) = False Then
Text4.Text = RS.Fields(15)
Else
Text4.Text = ""
End If
If IsNull(RS.Fields(16)) = False Then
Text5.Text = RS.Fields(16)
Else
Text5.Text = ""
End If
If IsNull(RS.Fields(17)) = False Then

Text6.Text = RS.Fields(17)
If Text6.Text = 0 Then
Text6.Text = ""
End If
Else
Text6.Text = ""
End If
If IsNull(RS.Fields(18)) = False Then
Text7.Text = RS.Fields(18)
If Text7.Text = 0 Then
Text7.Text = ""
End If
Else
Text7.Text = ""
End If
If IsNull(RS.Fields(19)) = False Then
Text8.Text = RS.Fields(19)
If Text8.Text = 0 Then
Text8.Text = ""
End If
Else
Text8.Text = ""
End If
If IsNull(RS.Fields(20)) = False Then
Text9.Text = RS.Fields(20)
If Text9.Text = 0 Then
Text9.Text = ""

End If
Else
Text9.Text = ""
End If
If IsNull(RS.Fields(21)) = False Then
Text10.Text = RS.Fields(21)
If Text10.Text = 0 Then
Text10.Text = ""
End If
Else
Text10.Text = ""
End If
If IsNull(RS.Fields(22)) = False Then
Text11.Text = RS.Fields(22)
If Text11.Text = 0 Then
Text11.Text = ""
End If
Else
Text11.Text = ""
End If
If IsNull(RS.Fields(23)) = False Then
Text12.Text = RS.Fields(23)
If Text12.Text = 0 Then
Text12.Text = ""
End If
Else
Text12.Text = ""

End If
If IsNull(RS.Fields(24)) = False Then
Text13.Text = RS.Fields(24)
If Text13.Text = 0 Then
Text13.Text = ""
End If
Else
Text13.Text = ""
End If
If IsNull(RS.Fields(25)) = False Then
Text14.Text = RS.Fields(25)
If Text14.Text = 0 Then
Text14.Text = ""
End If
Else
Text14.Text = ""
End If
If IsNull(RS.Fields(26)) = False Then
Text15.Text = RS.Fields(26)
If Text15.Text = 0 Then
Text15.Text = ""
End If
Else
Text15.Text = ""
End If
If IsNull(RS.Fields(27)) = False Then
Text16.Text = RS.Fields(27)

If Text16.Text = 0 Then
Text16.Text = ""
End If
Else
Text16.Text = ""
End If
If IsNull(RS.Fields(28)) = False Then
Text17.Text = RS.Fields(28)
If Text17.Text = 0 Then
Text17.Text = ""
End If
Else
Text17.Text = ""
End If
If IsNull(RS.Fields(29)) = False Then
Text18.Text = RS.Fields(29)
If Text18.Text = 0 Then
Text18.Text = ""
End If
Else
Text18.Text = ""
End If
If IsNull(RS.Fields(30)) = False Then
Text19.Text = RS.Fields(30)
If Text19.Text = 0 Then
Text19.Text = ""
End If

Else
Text19.Text = ""
End If
If IsNull(RS.Fields(31)) = False Then
Text20.Text = RS.Fields(31)
If Text20.Text = 0 Then
Text20.Text = ""
End If
Else
Text20.Text = ""
End If
If IsNull(RS.Fields(32)) = False Then
Text21.Text = RS.Fields(32)
If Text21.Text = 0 Then
Text21.Text = ""
End If
Else
Text21.Text = ""
End If
If IsNull(RS.Fields(33)) = False Then
Text22.Text = RS.Fields(33)
If Text22.Text = 0 Then
Text22.Text = ""
End If
Else
Text22.Text = ""
End If

If IsNull(RS.Fields(34)) = False Then


Text23.Text = RS.Fields(34)
If Text23.Text = 0 Then
Text23.Text = ""
End If
Else
Text23.Text = ""
End If
If IsNull(RS.Fields(35)) = False Then
Text24.Text = RS.Fields(35)
If Text24.Text = 0 Then
Text24.Text = ""
End If
Else
Text24.Text = ""
End If
If IsNull(RS.Fields(36)) = False Then
Text25.Text = RS.Fields(36)
If Text25.Text = 0 Then
Text25.Text = ""
End If
Else
Text25.Text = ""
End If
If IsNull(RS.Fields(37)) = False Then
Text26.Text = RS.Fields(37)
If Text26.Text = 0 Then

Text26.Text = ""
End If
Else
Text26.Text = ""
End If
If IsNull(RS.Fields(38)) = False Then
Text27.Text = RS.Fields(38)
If Text27.Text = 0 Then
Text27.Text = ""
End If
Else
Text27.Text = ""
End If
If IsNull(RS.Fields(39)) = False Then
Text28.Text = RS.Fields(39)
If Text28.Text = 0 Then
Text28.Text = ""
End If
Else
Text28.Text = ""
End If
If IsNull(RS.Fields(40)) = False Then
Text29.Text = RS.Fields(40)
If Text29.Text = 0 Then
Text29.Text = ""
End If

Else
Text29.Text = ""
End If
If IsNull(RS.Fields(41)) = False Then
Text30.Text = RS.Fields(41)
If Text30.Text = 0 Then
Text30.Text = ""
End If
Else
Text30.Text = ""
End If
End Sub

Public Sub clearRec()


Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Text10.Text = ""
Text11.Text = ""
Text12.Text = ""

Text13.Text = ""
Text14.Text = ""
Text15.Text = ""
Text16.Text = ""
Text17.Text = ""
Text18.Text = ""
Text19.Text = ""
Text20.Text = ""
Text21.Text = ""
Text22.Text = ""
Text23.Text = ""
Text24.Text = ""
Text25.Text = ""
Text26.Text = ""
Text27.Text = ""
Text28.Text = ""
Text29.Text = ""
Text30.Text = ""
Label18.Caption = ""
Label19.Caption = ""
Label20.Caption = ""
Label21.Caption = ""
End Sub

Private Sub Command4_Click()


If RS.RecordCount <> 0 Then

If Not RS.BOF Then


RS.MovePrevious
End If
If RS.BOF Then
RS.MoveFirst
End If
clearRec
ReadRec
End If
End Sub
Private Sub Command5_Click()
If RS.RecordCount <> 0 Then
If Not RS.EOF Then
RS.MoveNext
End If
If RS.EOF Then
RS.MovePrevious
End If
clearRec
ReadRec
End If
End Sub
Private Sub Command6_Click()
End
End Sub

Private Sub Form_Activate()


Module1.AttendConn
If RS.State = adStateOpen Then
RS.Close
End If
RS.CursorLocation = adUseClient
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
RS.Open "select * from personal", CN
Do Until RS.EOF
List1.AddItem RS.Fields(0)
RS.MoveNext
Loop
End Sub
Private Sub Form_Unload(Cancel As Integer)
Module1.CloseConn
End Sub

Private Sub List1_Click()


Dim t As Integer

Dim a As Double
If RS1.State = adStateOpen Then
RS1.Close
End If
RS1.CursorLocation = adUseClient
RS1.CursorType = adOpenStatic
RS1.LockType = adLockOptimistic
RS1.Open "select * from personal where stid ='" & List1.Text & "'", CN
clearRec
ReadRec1
t = Val(Text1.Text) + Val(Text2.Text) + Val(Text3.Text) + Val(Text4.Text) +
Val(Text5.Text) + Val(Text6.Text) + Val(Text7.Text) + Val(Text8.Text) +
Val(Text9.Text) + Val(Text10.Text) + Val(Text11.Text) + Val(Text12.Text) +
Val(Text13.Text) + Val(Text14.Text) + Val(Text15.Text) + Val(Text16.Text)
+ Val(Text17.Text) + Val(Text18.Text) + Val(Text19.Text) +
Val(Text20.Text) + Val(Text21.Text) + Val(Text22.Text) + Val(Text23.Text)
+ Val(Text24.Text) + Val(Text25.Text) + Val(Text26.Text) +
Val(Text27.Text) + Val(Text28.Text) + Val(Text29.Text) + Val(Text30.Text)
a = t / 30
Label40.Caption = Format(a, "###.00")
End Sub
AdminPersonal:
Dim RS As New ADODB.Recordset
Dim RS1 As New ADODB.Recordset
Private Sub cmdSave_Click()

End Sub
Private Sub Command1_Click()
AdminMark.Show
Unload Me

End Sub
Private Sub Command2_Click()
Main.Show
Unload Me
End Sub
Private Sub Command3_Click()

RS.Fields(0) = Text1.Text
RS.Fields(1) = Text2.Text
RS.Fields(2) = Text3.Text
RS.Fields(3) = Text4.Text
RS.Fields(4) = Text5.Text
RS.Fields(5) = Text6.Text
RS.Fields(6) = Text7.Text
RS.Fields(7) = Text8.Text
RS.Fields(8) = Text9.Text

RS.Fields(9) = Text10.Text
RS.Fields(10) = Text11.Text
RS.Fields(11) = Text12.Text
RS.Update
MsgBox ("Data Updated")
End Sub
Private Sub Command4_Click()

Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Text10.Text = ""
Text11.Text = ""
Text12.Text = ""
RS.AddNew
End Sub
Public Sub clearRec()

Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Text10.Text = ""
Text11.Text = ""
Text12.Text = ""
End Sub
Private Sub Command5_Click()
If RS.RecordCount <> 0 Then
If Not RS.BOF Then
RS.MovePrevious
End If
If RS.BOF Then
RS.MoveFirst
End If
clearRec
ReadRec
End If
End Sub
Public Sub ReadRec()

If IsNull(RS.Fields(0)) = False Then


Text1.Text = RS.Fields(0)
Else
Text1.Text = ""
End If
If IsNull(RS.Fields(1)) = False Then
Text2.Text = RS.Fields(1)
Else
Text2.Text = ""
End If
If IsNull(RS.Fields(2)) = False Then
Text3.Text = RS.Fields(2)
Else
Text3.Text = ""
End If
If IsNull(RS.Fields(3)) = False Then
Text4.Text = RS.Fields(3)
Else
Text4.Text = ""
End If
If IsNull(RS.Fields(4)) = False Then
Text5.Text = RS.Fields(4)
Else
Text5.Text = ""
End If
If IsNull(RS.Fields(5)) = False Then

Text6.Text = RS.Fields(5)
Else
Text6.Text = ""
End If
If IsNull(RS.Fields(6)) = False Then
Text7.Text = RS.Fields(6)
Else
Text7.Text = ""
End If
If IsNull(RS.Fields(7)) = False Then
Text8.Text = RS.Fields(7)
Else
Text8.Text = ""
End If
If IsNull(RS.Fields(8)) = False Then
Text9.Text = RS.Fields(8)
Else
Text9.Text = ""
End If
If IsNull(RS.Fields(9)) = False Then
Text10.Text = RS.Fields(9)
Else
Text10.Text = ""
End If
If IsNull(RS.Fields(10)) = False Then
Text11.Text = RS.Fields(10)
Else

Text11.Text = ""
End If
If IsNull(RS.Fields(11)) = False Then
Text12.Text = RS.Fields(11)
Else
Text12.Text = ""
End If
End Sub
Private Sub Command6_Click()
If RS.RecordCount <> 0 Then
If Not RS.EOF Then
RS.MoveNext
End If
If RS.EOF Then
RS.MovePrevious
End If
clearRec
ReadRec
End If
End Sub
Public Sub ReadRec1()
If IsNull(RS1.Fields(0)) = False Then
Text1.Text = RS1.Fields(0)
Else
Text1.Text = ""

End If
If IsNull(RS1.Fields(1)) = False Then
Text2.Text = RS1.Fields(1)
Else
Text2.Text = ""
End If
If IsNull(RS1.Fields(2)) = False Then
Text3.Text = RS1.Fields(2)
Else
Text3.Text = ""
End If
If IsNull(RS1.Fields(3)) = False Then
Text4.Text = RS1.Fields(3)
Else
Text4.Text = ""
End If
If IsNull(RS1.Fields(4)) = False Then
Text5.Text = RS1.Fields(4)
Else
Text5.Text = ""
End If
If IsNull(RS1.Fields(5)) = False Then
Text6.Text = RS1.Fields(5)
Else
Text6.Text = ""
End If
If IsNull(RS1.Fields(6)) = False Then

Text7.Text = RS1.Fields(6)
Else
Text7.Text = ""
End If
If IsNull(RS1.Fields(7)) = False Then
Text8.Text = RS1.Fields(7)
Else
Text8.Text = ""
End If
If IsNull(RS1.Fields(8)) = False Then
Text9.Text = RS1.Fields(8)
Else
Text9.Text = ""
End If
If IsNull(RS1.Fields(9)) = False Then
Text10.Text = RS1.Fields(9)
Else
Text10.Text = ""
End If
If IsNull(RS1.Fields(27)) = False Then
Text11.Text = RS1.Fields(27)
Else
Text11.Text = ""
End If
If IsNull(RS1.Fields(10)) = False Then
Text12.Text = RS1.Fields(10)
Else

Text12.Text = ""
End If
End Sub
Private Sub Command8_Click()
If RS1.State = adStateOpen Then
RS1.Close
End If
RS1.CursorLocation = adUseClient
RS1.CursorType = adOpenStatic
RS1.LockType = adLockOptimistic
RS1.Open "select * from personal where Stid= '" & Text13.Text & "'", CN
If RS1.RecordCount > 0 Then
clearRec
ReadRec1
Else
MsgBox "Invalid Id", vbCritical, "Admin"
End If
End Sub

Private Sub Form_Activate()


Module1.AttendConn
If RS.State = adStateOpen Then
RS.Close
End If
RS.CursorLocation = adUseClient

RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
RS.Open "select * from personal", CN
End Sub
Private Sub Form_Unload(Cancel As Integer)
Module1.CloseConn
End Sub

VIEWFROM:
Dim RS As New ADODB.Recordset
Private Sub Command1_Click()

Personal.Label14.Caption = Viewform.Label31.Caption
Personal.Show
Unload Me
End Sub
Private Sub Command2_Click()
Main.Show
Unload Me
End Sub
Private Sub Form_Activate()
Module1.AttendConn
If RS.State = adStateOpen Then
RS.Close
End If
RS.CursorLocation = adUseClient
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
RS.Open "select * from personal where Stid = '" & Label31.Caption & "'",
CN
ReadRec
status
Label27.Caption = Val(Text1.Text) + Val(Text2.Text) + Val(Text3.Text) +
Val(Text4.Text) + Val(Text5.Text)
Label25.Caption = Val(Text6.Text) + Val(Text7.Text) + Val(Text8.Text) +
Val(Text9.Text) + Val(Text10.Text)

Label23.Caption = Val(Text11.Text) + Val(Text12.Text) + Val(Text13.Text)


+ Val(Text14.Text) + Val(Text15.Text)
Label81.Caption = Val(Text16.Text) + Val(Text17.Text) + Val(Text18.Text)
+ Val(Text19.Text) + Val(Text20.Text)
Label83.Caption = Val(Text21.Text) + Val(Text22.Text) + Val(Text23.Text)
+ Val(Text24.Text) + Val(Text25.Text)
Label85.Caption = Val(Text26.Text) + Val(Text27.Text) + Val(Text28.Text)
+ Val(Text29.Text) + Val(Text30.Text)
Label49.Caption = Val(Label23.Caption) + Val(Label25.Caption) +
Val(Label27.Caption) + Val(Label81.Caption) + Val(Label83.Caption) +
Val(Label85.Caption)
Label49.Caption = Val(Label49.Caption) / 30
Label49.Caption = Format(Val(Label49.Caption), "###.00")
End Sub
Private Sub Form_Unload(Cancel As Integer)
Module1.CloseConn
End Sub
Public Sub ReadRec()
If IsNull(RS.Fields(0)) = False Then
Label18.Caption = RS.Fields(0)
Else
Label18.Caption = ""
End If
If IsNull(RS.Fields(1)) = False Then

Label19.Caption = RS.Fields(1)
Else
Label19.Caption = ""
End If
If IsNull(RS.Fields(10)) = False Then
Label20.Caption = RS.Fields(10)
Else
Label20.Caption = ""
End If
If IsNull(RS.Fields(11)) = False Then
Label21.Caption = RS.Fields(11)
Else
Label21.Caption = ""
End If
If IsNull(RS.Fields(12)) = False Then
Text1.Text = RS.Fields(12)
Else
Text1.Text = ""
End If
If IsNull(RS.Fields(13)) = False Then
Text2.Text = RS.Fields(13)
Else
Text2.Text = ""
End If
If IsNull(RS.Fields(14)) = False Then
Text3.Text = RS.Fields(14)
Else

Text3.Text = ""
End If
If IsNull(RS.Fields(15)) = False Then
Text4.Text = RS.Fields(15)
Else
Text4.Text = ""
End If
If IsNull(RS.Fields(16)) = False Then
Text5.Text = RS.Fields(16)
Else
Text5.Text = ""
End If
If IsNull(RS.Fields(17)) = False Then
Text6.Text = RS.Fields(17)
If Text6.Text = 0 Then
Text6.Text = ""
End If
Else
Text6.Text = ""
End If
If IsNull(RS.Fields(18)) = False Then
Text7.Text = RS.Fields(18)
If Text7.Text = 0 Then
Text7.Text = ""
End If
Else

Text7.Text = ""
End If
If IsNull(RS.Fields(19)) = False Then
Text8.Text = RS.Fields(19)
If Text8.Text = 0 Then
Text8.Text = ""
End If
Else
Text8.Text = ""
End If
If IsNull(RS.Fields(20)) = False Then
Text9.Text = RS.Fields(20)
If Text9.Text = 0 Then
Text9.Text = ""
End If
Else
Text9.Text = ""
End If
If IsNull(RS.Fields(21)) = False Then
Text10.Text = RS.Fields(21)
If Text10.Text = 0 Then
Text10.Text = ""
End If
Else
Text10.Text = ""
End If
If IsNull(RS.Fields(22)) = False Then

Text11.Text = RS.Fields(22)
If Text11.Text = 0 Then
Text11.Text = ""
End If
Else
Text11.Text = ""
End If
If IsNull(RS.Fields(23)) = False Then
Text12.Text = RS.Fields(23)
If Text12.Text = 0 Then
Text12.Text = ""
End If
Else
Text12.Text = ""
End If
If IsNull(RS.Fields(24)) = False Then
Text13.Text = RS.Fields(24)
If Text13.Text = 0 Then
Text13.Text = ""
End If
Else
Text13.Text = ""
End If
If IsNull(RS.Fields(25)) = False Then
Text14.Text = RS.Fields(25)
If Text14.Text = 0 Then
Text14.Text = ""

End If
Else
Text14.Text = ""
End If
If IsNull(RS.Fields(26)) = False Then
Text15.Text = RS.Fields(26)
If Text15.Text = 0 Then
Text15.Text = ""
End If
Else
Text15.Text = ""
End If
If IsNull(RS.Fields(27)) = False Then
Text16.Text = RS.Fields(27)
If Text16.Text = 0 Then
Text16.Text = ""
End If
Else
Text16.Text = ""
End If
If IsNull(RS.Fields(28)) = False Then
Text17.Text = RS.Fields(28)
If Text17.Text = 0 Then
Text17.Text = ""
End If
Else
Text17.Text = ""

End If
If IsNull(RS.Fields(29)) = False Then
Text18.Text = RS.Fields(29)
If Text18.Text = 0 Then
Text18.Text = ""
End If
Else
Text18.Text = ""
End If
If IsNull(RS.Fields(30)) = False Then
Text19.Text = RS.Fields(30)
If Text19.Text = 0 Then
Text19.Text = ""
End If
Else
Text19.Text = ""
End If
If IsNull(RS.Fields(31)) = False Then
Text20.Text = RS.Fields(31)
If Text20.Text = 0 Then
Text20.Text = ""
End If
Else
Text20.Text = ""
End If
If IsNull(RS.Fields(32)) = False Then
Text21.Text = RS.Fields(32)

If Text21.Text = 0 Then
Text21.Text = ""
End If
Else
Text21.Text = ""
End If
If IsNull(RS.Fields(33)) = False Then
Text22.Text = RS.Fields(33)
If Text22.Text = 0 Then
Text22.Text = ""
End If
Else
Text22.Text = ""
End If
If IsNull(RS.Fields(34)) = False Then
Text23.Text = RS.Fields(34)
If Text23.Text = 0 Then
Text23.Text = ""
End If
Else
Text23.Text = ""
End If
If IsNull(RS.Fields(35)) = False Then
Text24.Text = RS.Fields(35)
If Text24.Text = 0 Then
Text24.Text = ""
End If

Else
Text24.Text = ""
End If
If IsNull(RS.Fields(36)) = False Then
Text25.Text = RS.Fields(36)
If Text25.Text = 0 Then
Text25.Text = ""
End If
Else
Text25.Text = ""
End If
If IsNull(RS.Fields(37)) = False Then
Text26.Text = RS.Fields(37)
If Text26.Text = 0 Then
Text26.Text = ""
End If
Else
Text26.Text = ""
End If
If IsNull(RS.Fields(38)) = False Then
Text27.Text = RS.Fields(38)
If Text27.Text = 0 Then
Text27.Text = ""
End If
Else
Text27.Text = ""

End If
If IsNull(RS.Fields(39)) = False Then
Text28.Text = RS.Fields(39)
If Text28.Text = 0 Then
Text28.Text = ""
End If
Else
Text28.Text = ""
End If
If IsNull(RS.Fields(40)) = False Then
Text29.Text = RS.Fields(40)
If Text29.Text = 0 Then
Text29.Text = ""
End If
Else
Text29.Text = ""
End If
If IsNull(RS.Fields(41)) = False Then
Text30.Text = RS.Fields(41)
If Text30.Text = 0 Then
Text30.Text = ""
End If
Else
Text30.Text = ""
End If
End Sub

Public Sub status()


If Text1.Text >= 40 Then
l1.Caption = "P"
l1.ForeColor = vbBlue
Else
l1.Caption = "F"
l1.ForeColor = vbRed
End If
If Text2.Text >= 40 Then
l2.Caption = "P"
l2.ForeColor = vbBlue
Else
l2.Caption = "F"
l2.ForeColor = vbRed
End If
If Text3.Text >= 40 Then
l3.Caption = "P"
l3.ForeColor = vbBlue
Else
l3.Caption = "F"
l3.ForeColor = vbRed
End If
If Text4.Text >= 40 Then
l4.Caption = "P"
l4.ForeColor = vbBlue
Else

l4.Caption = "F"
l4.ForeColor = vbRed
End If
If Text5.Text >= 40 Then
l5.Caption = "P"
l5.ForeColor = vbBlue
Else
l5.Caption = "F"
l5.ForeColor = vbRed
End If
If Text6.Text = "" Then
l6.Caption = ""
ElseIf Text6.Text >= 40 Then
l6.Caption = "P"
l6.ForeColor = vbBlue
Else
l6.Caption = "F"
l6.ForeColor = vbRed
End If
If Text7.Text = "" Then
l7.Caption = ""
ElseIf Text7.Text >= 40 Then
l7.Caption = "P"
l7.ForeColor = vbBlue
Else
l7.Caption = "F"
l7.ForeColor = vbRed

End If
If Text8.Text = "" Then
l8.Caption = ""
ElseIf Text8.Text >= 40 Then
l8.Caption = "P"
l8.ForeColor = vbBlue
Else
l8.Caption = "F"
l8.ForeColor = vbRed
End If
If Text9.Text = "" Then
l9.Caption = ""
ElseIf Text9.Text >= 40 Then
l9.Caption = "P"
l9.ForeColor = vbBlue
Else
l9.Caption = "F"
l9.ForeColor = vbRed
End If
If Text10.Text = "" Then
l10.Caption = ""
ElseIf Text10.Text >= 40 Then
l10.Caption = "P"
l10.ForeColor = vbBlue

Else
l10.Caption = "F"
l10.ForeColor = vbRed
End If
If Text11.Text = "" Then
l11.Caption = ""
ElseIf Text11.Text >= 40 Then
l11.Caption = "P"
l11.ForeColor = vbBlue
Else
l11.Caption = "F"
l11.ForeColor = vbRed
End If
If Text12.Text = "" Then
l12.Caption = ""
ElseIf Text12.Text >= 40 Then
l12.Caption = "P"
l12.ForeColor = vbBlue
Else
l12.Caption = "F"
l12.ForeColor = vbRed
End If
If Text13.Text = "" Then
l13.Caption = ""
ElseIf Text13.Text >= 40 Then
l13.Caption = "P"

l13.ForeColor = vbBlue
Else
l13.Caption = "F"
l13.ForeColor = vbRed
End If
If Text14.Text = "" Then
l14.Caption = ""
ElseIf Text14.Text >= 40 Then
l14.Caption = "P"
l14.ForeColor = vbBlue
Else
l14.Caption = "F"
l14.ForeColor = vbRed
End If
If Text15.Text = "" Then
l15.Caption = ""
ElseIf Text15.Text >= 40 Then
l15.Caption = "P"
l15.ForeColor = vbBlue
Else
l15.Caption = "F"
l15.ForeColor = vbRed
End If
If Text16.Text = "" Then
l16.Caption = ""
ElseIf Text16.Text >= 40 Then
l16.Caption = "P"

l16.ForeColor = vbBlue
Else
l16.Caption = "F"
l16.ForeColor = vbRed
End If
If Text17.Text = "" Then
l17.Caption = ""
ElseIf Text17.Text >= 40 Then
l17.Caption = "P"
l17.ForeColor = vbBlue
Else
l17.Caption = "F"
l17.ForeColor = vbRed
End If
If Text18.Text = "" Then
l18.Caption = ""
ElseIf Text18.Text >= 40 Then
l18.Caption = "P"
l18.ForeColor = vbBlue
Else
l18.Caption = "F"
l18.ForeColor = vbRed
End If
If Text19.Text = "" Then
l19.Caption = ""

ElseIf Text19.Text >= 40 Then


l19.Caption = "P"
l19.ForeColor = vbBlue
Else
l19.Caption = "F"
l19.ForeColor = vbRed
End If
If Text20.Text = "" Then
l20.Caption = ""
ElseIf Text20.Text >= 40 Then
l20.Caption = "P"
l20.ForeColor = vbBlue
Else
l20.Caption = "F"
l20.ForeColor = vbRed
End If
If Text21.Text = "" Then
l21.Caption = ""
ElseIf Text21.Text >= 40 Then
l21.Caption = "P"
l21.ForeColor = vbBlue
Else
l21.Caption = "F"
l21.ForeColor = vbRed
End If
If Text22.Text = "" Then

l22.Caption = ""
ElseIf Text22.Text >= 40 Then
l22.Caption = "P"
l22.ForeColor = vbBlue
Else
l22.Caption = "F"
l22.ForeColor = vbRed
End If
If Text23.Text = "" Then
l23.Caption = ""
ElseIf Text23.Text >= 40 Then
l23.Caption = "P"
l23.ForeColor = vbBlue
Else
l23.Caption = "F"
l23.ForeColor = vbRed
End If
If Text24.Text = "" Then
l24.Caption = ""
ElseIf Text24.Text >= 40 Then
l24.Caption = "P"
l24.ForeColor = vbBlue
Else
l24.Caption = "F"
l24.ForeColor = vbRed
End If

If Text25.Text = "" Then


l25.Caption = ""
ElseIf Text25.Text >= 40 Then
l25.Caption = "P"
l25.ForeColor = vbBlue
Else
l25.Caption = "F"
l25.ForeColor = vbRed
End If
If Text26.Text = "" Then
l26.Caption = ""
ElseIf Text26.Text >= 40 Then
l26.Caption = "P"
l26.ForeColor = vbBlue
Else
l26.Caption = "F"
l26.ForeColor = vbRed
End If
If Text27.Text = "" Then
l27.Caption = ""
ElseIf Text27.Text >= 40 Then
l27.Caption = "P"
l27.ForeColor = vbBlue
Else
l27.Caption = "F"
l27.ForeColor = vbRed
End If

If Text28.Text = "" Then


l28.Caption = ""
ElseIf Text28.Text >= 40 Then
l28.Caption = "P"
l28.ForeColor = vbBlue
Else
l28.Caption = "F"
l28.ForeColor = vbRed
End If
If Text29.Text = "" Then
l29.Caption = ""
ElseIf Text29.Text >= 40 Then
l29.Caption = "P"
l29.ForeColor = vbBlue
Else
l29.Caption = "F"
l29.ForeColor = vbRed
End If
If Text30.Text = "" Then
l30.Caption = ""
ElseIf Text30.Text >= 40 Then
l30.Caption = "P"
l30.ForeColor = vbBlue
Else
l30.Caption = "F"

l30.ForeColor = vbRed
End If
End Sub

SCREENSHOT
Main form

Student Info Form

AdminLogin:

AdminPersonal:

Admin Mark

Student Infromation

FUTURE ENHANCEMENT

In this proposed system, to show the mark details are implemented. The student
information system is beneficial for any type of educational institute. It can be modified
any time with new information.
This will help to access the facilities of student information system by every body. This
access technology will support to develop various facilities like college transport, time
table, hostel facilities etc. The system provides flexibility for incorporating new features,
which may be necessary in future. Thus the system is flexible and can be incorporated
with new features in the future

CONCLUSION
Generally all the things have its own merits and demerits like a coin having two faces,
this project is also has its advantage And limitations but keeping in mind about
limitations we can develop a system which can solve the problem as much as possible.

BIBLIOGRAPHY
Websites

http://www.google.com

http://www.microsoft.com

http://www.programmer2programmer.net

http://www.codeproject.com

http://www.msdn.com.

http://www.vb123.com

http://www.vbcode.com

http://www.sqltuner.com

Books

Mastering Visual Basic 6 (Paperback)

Mastering Visual Basic .NET (Paperback)

Visual Basic Black Book (Paperback)

SQL Bible, 2nd Edition (Paperback)

Database Development in Visual Basic

APPENDIX
DBMS Data Base Management System
ADODB Activex Data Objects Database
CN Connection String
RS RecordSource
MDB Microsoft Acess Database
VB Visual Basic

You might also like