Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUCTION
Computer is an electronic device, which is used to compute
various big calculations. It is basically a device, which is used to input
data, processes the data and gives the output as required.
These days computer has become one of the basic
importance of a common man. Each and every thing is getting
computerized, because making use of computer has facilitated to
perform the task quickly and easily, it has also helped to eliminate
certain problems like:1. Efficiency to perform the work has increased to a very great
extent.
2. Results are accurate and reliable as it has a quality of
accuracy. The mistake occurs only on part of the user.
3. Manual work is reduced to a very large extent.
4. Large calculation is possible.
5. Large datas as well as files could be stored in computers.
6. As computers are versatile same computer could be used for
various applications.
7. There in a single PC we can record datas of various fields.
Due the above mentioned qualities computers these days
are used in fields like companies, railways, airways, transportations,
share markets and even at home.
It offers flexibility.
It speedup the processing and workflow.
Makes for greater accuracy, efficiency, consistence and
improved work control.
Reduces repetitive clerical work.
Permits erase control, checking and updating.
Permits to improved budget control.
PROJECT OUTLINE
I develop project entitled a CALL CENTER
MANAGEMENT SYSTEM to maintain information of human
resources.
Presently all the information is maintained manually. There are
following drawbacks of this approach:
1. It is difficult to handle large volume of information.
2. It is difficult to provide up-to-date information,
3. There is a chance of calculation mistake in Bill.
4. It requires more manpower.
5. It is difficult to analyzing data manually.
To overcome these difficulties I develop CCMS as software and
provided the following facilities:
1. In CCMS system I provide options to keep track information of
various classes of entry, new employee, Members details & pay
slip record etc.
2. In CCMS system I provide information about employee year
records details etc.
HARDWARE SPECIFICATION
Physical units of computer system constitute the computer hardware.
When we look at computer system, we are actually looking at the hardware. The
computer is made by number of sensitive components such as flip-flops, gate,
buses, memory elements etc.
The minimum requirement to run a computer are CPU, monitor, keyboard,
CD drives, Operating system etc. out of all the requirements except operating
system, all are considered the hardware. The CPU is the heart of the computer.
This is made up of very sensitive components & very complicated circuitry. Thus
the hardware itself is composed of hardware.
COMPUTER SYSTEM
PRIMARY STORAGE
SECONDARY STORAGE
DRIVES
INPUT DEVICE
OUTPUT DEVICE
:
:
:
:
:
:
Software specification
CALL CENTER MANAGEMENT SYSTEMis being made
using MS-Visual Basic 6.0 as a Front End tool and MS ACCESS as a back End
Tool. The design specification include the following
ACCESS TERMINOLOGIES
Access is an object- oriented database management system,
which means the entire database is composed of the objects with certain
characteristic are attributes called properties that Determine their structure
appears and behavior. The major database objects are tables, queries,
forms, report, macros and modules.
Tables: The tables are the containers for all the data in our database.
Query: Query is a question you ask to your database. We usually use a
query to extract a specified set of record form one or more tables.
Forms: Forms are more convenient than a tabular datasheet for entering
and Editing table data especially if a table includes more data than can fit
across the screen and you have to scroll right to see the rest . a form can
display single record At a time .
Report: When you want to print the data, you usually create report. The
repot can be quick and easy dump of the table data.
Pages: the data access page object it is special document containing data
from an access Database designed to be viewed on the website.
Modules: module is programs written in visual basics, the programming
language used by access 2000.
PROBLEM DEFINITION
It is the statement of the problem (task), which is to be
accomplished with the help of computer. It generally starts when
programmer is assigned the task. It includes many factors such as I/O,
time constraints, processing requirements, accuracy, limitations,
memory error handling and interface with other program.
The Problem in my projects consists of various validations of
date, application number, and registration number etc of cases.
ANALYSIS
Requirement analysis is done in order to understand the problem
the software system is to solve. The problem could be automating an
existing manual process, developing a new automated system, or a
combination of the two. For large system that have many features,
and that need to perform meant different task, understanding the
requirements of the system is the major task. The emphasis in
requirements analysis is on identifying what is needed from the
system, not how the system will achieve its goals. The developer
has to develop the system to satisfy the clients need.
DESIGN
The purpose of the design phase is to plan a solution of the
problem specified by the requirement documents. This Phase is the
first step in moving from the problem domain to the solutions domain.
Starting with what is needed; design takes us toward how to satisfy the
needs. The design affects the quality of the software; it has major
impact on the later phases, particularly testing and maintenance. The
output of this phase is the design document. This document is similar
to a blue print or a plan for the solution and is used later during
implementation, testing and maintenance.
CODING
Once the design is complete, most of the major decisions about
the systems have been made. The goal of the coding phase is to
translate the design of the system into code in a given programming
language. For a given design, the aim in this phase is to implement the
design in the best possible manner
The coding phase affects both testing and maintence effort.
Hence, during coding the focus should be on focus should be on
developing programs that are easy to write. Simplicity and clarity
should be striving for during the coding phase
TESTING
Testing is the major quality control measure used during software development.
Its basic function is to detect errors in the software. Testing not only has to
uncover errors introduced during coding, but also erros introduced during the
previous phase. Thus, the goal of testing is to uncover requirements , design and
coding errors in the programs.
DEBUGGING
This stage is the discovery and correction of programming errors so that it
is Ingrid that the program does what the programmer intends to do and produces
the correct result for a set of test data.
The tools that can be used to debug programs:1. Simulators
2. Logic Analyzer
3. Break Point
4. Trace routine
5. Memory Dumps
6. Software interrupts
MAINTENANCE
This stage is the updating and correcting of the program to account for
changing conditions of fields experience proper testing and documentation
should significantly reduce the frequency and extend of the required
maintenance. The original program may need change for following reason:1. Newly discovered bugs
2. Specification changes
3. Specification expansion
4. New equipment
PROBLEM FACED
I did a lot of problems while making this project during
these six months. Firstly, I got the problem in getting certificates and
collecting the data for my project. Since I am still amateur in the field of
software Development, I did face a lot of problems in coding. But all these
problems were removed with the efficient help of our faculty members and
friends.
I have also the problem in understanding the terminology used in CALL
CENTER MANAGEMENT SYSTEMI also have the problem regarding
the collection of data, which are necessary to build our project.
In design phase of system I face lot problems to implement the logic of
software, deciding table structure and applying integrity constraints.
Report generated by the system as and when needed increase the
flexibility & speed of system.
5. OPTION BUTTONS
Option buttons provides the facility to select any one correct option out of
various options provided to the user. This selected option is then stored in
the database.
6. TIMER
Timer is used to set definite time, to view our project attractive.
7. FRAME
Frames are used to put selective controls within a frame. It makes our
form looks attractive & makes easily usable.
VALIDATIONS
To debug the errors following options are included in software-
To avoid the storage to null values in table, all the text box, combo
values were tested first and if they contain null values error message
is generated and avoid inserting such data in table.
To avoid invalid date/month error, we used Dicker tools at the time
of date entry.
To avoid error insert value is too large we set MAXLENGTH
property of text boxes.
To avoid data type mismatch error we first the type of values type in text
box before display it. In case of numeric values text box are allowed to
accept number only.
Coding done in KEYPRESS event of text box which ensure that
the correct data type value entered in text box.
To avoid not enough value error we match the exact number and type
of values with their respective table structure.
If avoid EOF/BOF encounter error I first check weather item is
selected in combo box or not. In cast of not selection of item we
display appropriate error message and avoid searching data based on
combo box value.
I try to type correct table name to avoid error like table not exits.
To avoid width error in data report I keep the font of small size in
large report and also reduce left and right margin of reports.
There is only one-way i.e.-through menu to open any specific form of
the project.
When we perform any specific operation on data through any
command button, the other command buttons that are not suitable for
that operation should be disabled.
feasibility asks if the system will work when developed and installed.
System is made menu driven. Hence time consumption in operation
Of the system is less and easy for the and users to operate. Each and
every step in the system is user Friendly hence no extra computer
literacy is required while handling the system.
3. ECONOMICAL FEASIBILITY: All the hardware and software
Facilities as available with the end user so the cost if hardware and
software implementation is eradicated. The operational cost is also
minimized, as no special computer training is essential. As the new
system does not demand any Investments for the operation of the
system .The only cost is the development cost, negligible. As
compared to the benefits from the system. Therefore system is
economically Feasible for end user.
Determination of system requirement
After the feasibility study is done a formal acceptance of the
proposed system is taken from user and the feasibility report is then taken
as the bases of next activity.
Determination of the system requirement is involved the study of
current business system to find out how it word and when improvement
have to be done. The requirement is to have a feature that must be included
in a new system which may include the way processing data producing
information controlling the business activity and supporting the
management by collecting the data.
Designing of the system
The design of an information system produces the details that state
how the system will meet the requirements identified during system
analysis.This phase takes the requirements as agreed and the works which
has led up to producing the proposal and develops the system to the level
of detail necessary to prepare the way for programming. It is concerned
with the computer oriented design of the system-the detail of the input
transaction, detail of printed report , screens and other outputs, the file or
database structure, the contents of record and the efficiency of the system
from a computer processing point of view.
Software Development
System Maintenance
A system should be created whose design is comprehensive and
foresight enough to serve current & project user needs for several years. The
eminence cost and Frequency depends up on the system designing process.
The better the system design easier it will be to maintain and the system
maintenance cast will be low. The eminence cost will be low. The eminence is
the Process, Which ensures the updated & live project. It is basically of 2 type
eminence & enhance.
FORMS &
CODING
i=i-1
j = 60 + j
End If
CalculateHours = Format(i & ":" & j, "hh:mm")
End Function
Private Sub LoadData()
Dim LI As ListItem
Dim rsT As New ADODB.Recordset
If rsT.State = 1 Then rsT.Close
rsT.Open "select EmployeeName,a.UserID,Logintime,LogOutTime,reasons from Attendance
a,EmployeeMaster b where workingDate=#" & Format(mdiCENPAP.stBar.Panels(6).Text) & "# And
a.userid = b.userid", dbConn, adOpenDynamic, adLockOptimistic
lvwList.ListItems.Clear
Do Until rsT.EOF
Set LI = lvwList.ListItems.Add(, , Format(rsT.Fields(0).Value, "dd/mm/yyyy"))
LI.SubItems(1) = rsT.Fields(1).Value
LI.SubItems(2) = rsT.Fields(2).Value
LI.SubItems(3) = IIf(IsNull(rsT.Fields(3).Value), "", rsT.Fields(3).Value)
LI.SubItems(4) = IIf(IsNull(rsT.Fields(4).Value), "", rsT.Fields(4).Value)
rsT.MoveNext
Loop
End Sub
editMode = False
cmdEdit.Caption = "Edit"
cmdDelete.Enabled = False
cmbEmployees.Visible = False
txtName.Visible = True
Else
editMode = True
cmdEdit.Caption = "Add"
cmdDelete.Enabled = True
cmbEmployees.Visible = True
txtName.Visible = False
End If
End Sub
Private Sub cmdSave_Click()
On Error GoTo Doctor
If cmbEmployees.ListCount <= 0 And editMode Then Exit Sub
If Not CheckUserID(txtUserID.Text) And Not editMode Then
MsgBox "User ID already exist.
" & vbCrLf & "You need to enter a unique User ID."
txtUserID.SetFocus
Exit Sub
End If
If Not SaveToEmployeeMaster Then
MsgBox "Unable to add new employee details."
Exit Sub
End If
ClearControls Me
Reload
MsgBox "User Database Updated Successfully."
Exit Sub
Doctor:
If Err.Number <> 0 Then
MsgBox "Error To Perform Action", vbCritical, "Error!!!!!!"
End If
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then
SendFocusToNext
End If
If KeyCode = vbKeyEscape Then
Unload Me
End If
End Sub
Private Function SaveToEmployeeMaster() As Boolean
On Error GoTo Doctor
Dim FSO As FileSystemObject
If Not editMode Then
rsEmployee.AddNew
End If
rsEmployee!EmployeeName.Value = UCase(txtName.Text)
rsEmployee!userID = LCase(txtUserID.Text)
rsEmployee!Password = GenerateCode(LCase(txtPassword.Text))
rsEmployee!DOB = dtpDOB.Value
rsEmployee!DOJ = dtpDOJ.Value
rsEmployee!BloodGroup = UCase(cmbBloodGroup.Text)
rsEmployee!SBU = UCase(cmbSBU.Text)
rsEmployee!level = UCase(Left(cmbLevel.Text, 1))
rsEmployee!Designation = UCase(cmbDesignation.Text)
rsEmployee!Accessibility = UCase(cmbAccess.Text)
rsEmployee!Mobile = txtMobile.Text
rsEmployee!LocalAddress = UCase(txtLocalAddress.Text)
rsEmployee!LocalNo = txtLocalPhone.Text
rsEmployee!PermanentAddress = UCase(txtPermanentAddress.Text)
rsEmployee!PermanentNo = txtPermanentPhone.Text
rsEmployee!EmergencyName = UCase(txtEmergencyName.Text)
rsEmployee!EmergencyNo = txtEmergencyNo.Text
rsEmployee!AppointmentNature = UCase(cmbNature.Text)
If cmbNature.ListIndex <> 0 Then rsEmployee!LDW = dtpLDW.Value
rsEmployee!BankName = UCase(txtBank.Text)
rsEmployee!Branch = UCase(txtBranch.Text)
rsEmployee!LicenceNo = UCase(txtLicence.Text)
rsEmployee!PANNo = UCase(txtPAN.Text)
rsEmployee!BasicSalary = txtBasic.Text
rsEmployee!HRA = Val(txtHRA.Text)
rsEmployee!CCA = Val(txtCCA.Text)
rsEmployee!whoadded = currentUserName
rsEmployee.Update
Dim dest As String
dest = IIf(Right(App.Path, 1) = "\", App.Path & "images\", App.Path & "\images\")
Set FSO = New FileSystemObject
FSO.CopyFile txtPhoto.Text, dest & txtUserID.Text & ".jpg"
SaveToEmployeeMaster = True
Exit Function
Doctor:
If Err.Number <> 0 Then
SaveToEmployeeMaster = False
End If
End Function
Private Function CheckUserID(id As String) As Boolean
On Error GoTo Doctor
Dim rs As New ADODB.Recordset
rs.Open "select * from employeemaster where userid='" & id & "'", dbConn, adOpenDynamic,
adLockOptimistic
rs.MoveFirst
CheckUserID = False
Exit Function
Doctor:
If Err.Number <> 0 Then
CheckUserID = True
End If
End Function
Private Sub Form_Load()
Reload
cmbAccess.ListIndex = 0
cmbNature.ListIndex = 0
Exit Sub
Doctor:
If Err.Number <> 0 Then
MsgBox "Error To Perform Action", vbCritical, "Error!!!!!!"
End If
End Sub
Public Sub SendFocusToNext()
Dim idx As Integer
Dim ctl As Control
idx = Me.ActiveControl.TabIndex
If idx = 10 Or idx = 12 Then Exit Sub
If idx >= 0 And idx < 26 Then
For Each ctl In Me.Controls
If TypeOf ctl Is CommonDialog Then GoTo X
If ctl.TabIndex = idx + 1 Then
If ctl.Enabled = False Then
txtBank.SetFocus
ElseIf TypeOf ctl Is TextBox Or TypeOf ctl Is ComboBox Or TypeOf ctl Is Button Or TypeOf ctl
Is DTPicker Then
ctl.SetFocus
End If
End If
X:
Next
End If
End Sub
Private Sub loadSBU()
Dim rsT As New ADODB.Recordset
rsT.Open "select distinct SBU from EmployeeMaster where SBU<>'user' and
SBU<>'ADMINISTRATOR'", dbConn, adOpenDynamic, adLockOptimistic
cmbSBU.Clear
Do Until rsT.EOF
cmbSBU.AddItem rsT.Fields(0).Value
rsT.MoveNext
Loop
rsT.Close
If cmbSBU.ListCount > 0 Then cmbSBU.ListIndex = 0
End Sub
Private Sub loadDesig()
Dim rsT As New ADODB.Recordset
rsT.Open "select distinct Designation from EmployeeMaster where SBU<>'user' and
SBU<>'ADMINISTRATOR'", dbConn, adOpenDynamic, adLockOptimistic
cmbDesignation.Clear
Do Until rsT.EOF
cmbDesignation.AddItem rsT.Fields(0).Value
rsT.MoveNext
Loop
rsT.Close
If cmbDesignation.ListCount > 0 Then cmbDesignation.ListIndex = 0
End Sub
Else
SaveSetting App.EXEName, "Settings", "UserCaching", "0"
SaveSetting App.EXEName, "Settings", "UserName", ""
End If
If chkBypass.Value = vbChecked Then
SaveSetting App.EXEName, "Settings", "Bypass", "1"
Else
SaveSetting App.EXEName, "Settings", "Bypass", "0"
End If
MsgBox "All Settings applied Successfully"
End Sub
Private Sub Form_Activate()
Dim rsT As New ADODB.Recordset
LoadData
rsT.Open "select Accessibility from EmployeeMaster where UserID='" & currentUserName & "'",
dbConn, adOpenDynamic, adLockOptimistic
If rsT.RecordCount = 0 Then Exit Sub
If rsT.Fields(0).Value <> "ADMINISTRATOR" Then
chkBypass.Enabled = False
chkCache.Enabled = False
End If
rsT.Close
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyEscape Then
Unload Me
End If
End Sub
Private Sub Form_Load()
If GetSetting(App.EXEName, "Settings", "UserCaching", "0") = "1" Then
chkCache.Value = vbChecked
End If
If GetSetting(App.EXEName, "Settings", "Bypass", "0") = "1" Then
chkBypass.Value = vbChecked
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
rs.Close
End Sub
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)
End Sub
Private Sub txtName_GotFocus()
SendKeys "{Home}+{End}"
End Sub
Private Sub txtPass1_GotFocus()
SendKeys "{Home}+{End}"
End Sub
Private Sub txtPass2_GotFocus()
SendKeys "{Home}+{End}"
End Sub
Private Sub LoadData()
If rs.State = 1 Then rs.Close
rs.Open "Select userid,password From EmployeeMaster where whoadded<>'system'", dbConn,
adOpenDynamic, adLockOptimistic
cmbOldUser.Clear
Do Until rs.EOF
cmbOldUser.AddItem rs.Fields(0).Value
rs.MoveNext
Loop
If rs.RecordCount > 0 Then
cmbOldUser.ListIndex = 0
rs.MoveFirst
End If
End Sub
Exit Sub
Doctor:
If Err.Number <> 0 Then
MsgBox "Error To Perform Action", vbCritical, "Error!!!!!!"
End If
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then
If Not TypeOf Me.ActiveControl Is DTPicker Then Me.ActiveControl.BackColor = vbWhite
SendFocusToNext
End If
If KeyCode = vbKeyEscape Then
Unload Me
End If
End Sub
Private Sub Form_Load()
Dim rsT As New ADODB.Recordset
txtMonth.Text = Month(Date)
rsT.Open "select EmployeeName from EmployeeMaster where whoadded<>'system'", dbConn,
adOpenDynamic, adLockOptimistic
Do Until rsT.EOF
cmbEmployeeName.AddItem rsT.Fields(0).Value
rsT.MoveNext
Loop
If rsT.RecordCount > 0 Then cmbEmployeeName.ListIndex = 0
rsT.Close
txtYear.Text = Year(Date)
DaysInMonth(1) = 31
DaysInMonth(2) = 28
DaysInMonth(3) = 31
DaysInMonth(4) = 30
DaysInMonth(5) = 31
DaysInMonth(6) = 30
DaysInMonth(7) = 31
DaysInMonth(8) = 31
DaysInMonth(9) = 30
DaysInMonth(10) = 31
DaysInMonth(11) = 30
DaysInMonth(12) = 31
lvwDayDetails.ColumnHeaders(2).Width = lvwDayDetails.Width / 4
lvwDayDetails.ColumnHeaders(1).Width = lvwDayDetails.Width lvwDayDetails.ColumnHeaders(2).Width
calculateWorkingDays
End Sub
Private Sub calculateTotal()
On Error GoTo Doctor
If Val(txtTotalDays.Text) = 0 Then
txtNet.Text = 0
Exit Sub
End If
basic = (Val(txtBasic.Text) / 30) * IIf(Val(txtTotalDays.Text) > 30, 30, Val(txtTotalDays.Text))
FixTotal = 0
rTotal = 0
dTotal = 0
nTotal = 0
''''''''''''''''''''' Fixed Total ''''''''''''''''''''''
If Right(txtHRA, 1) = "%" Then
FixTotal = basic + (basic * Val(txtHRA.Text) / 100)
txtHRA.Text = (basic * Val(txtHRA.Text) / 100)
Else
FixTotal = basic + Val(txtHRA.Text)
End If
Next
End If
End Sub
Private Sub ClearFields()
txtCA.Text = 0
txtMedical.Text = 0
txtComm.Text = 0
txtSaleBonus.Text = 0
txtOvertime.Text = 0
txtExt.Text = 0
txtIT.Text = 0
txtPT.Text = 0
txtLoans.Text = 0
txtOthers.Text = 0
End Sub
Exit Sub
Doctor:
If Err.Number <> 0 Then
MsgBox "Error To Perform Action", vbCritical, "Error!!!!!!"
End If
End Sub
Private Sub lvwList_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
lvwList.SortOrder = IIf(lvwList.SortOrder = lvwDescending, lvwAscending, lvwDescending)
lvwList.SortKey = ColumnHeader.Index - 1
lvwList.Sorted = True
End Sub
Private Sub lvwList_KeyUp(KeyCode As Integer, Shift As Integer)
Dim LI As ListItem
Set LI = lvwList.SelectedItem
rs.MoveFirst
rs.Move LI.Index - 1
End Sub
LI.SubItems(2) = rs.Fields(2).Value
LI.SubItems(3) = rs.Fields(3).Value
LI.SubItems(4) = IIf(IsNull(rs.Fields(4).Value), "00:00:00", rs.Fields(4).Value)
LI.SubItems(5) = rs.Fields(5).Value
rs.MoveNext
Loop
lvwList.ListItems(Index).Selected = True
ElseIf level = 2 Then
rs1.Open "select workingdate,EmployeeName,a.UserID,Logintime,LogOutTime,ID from Attendance
a,EmployeeMaster b where workingDate=#" & dtpDate.Value & "# And a.userid = b.userid and a.id=" & id,
dbConn, adOpenDynamic, adLockOptimistic
lvwList.ListItems.Clear
Set LI = lvwList.ListItems.Add(, , Format(rs1.Fields(0).Value, "dd/mm/yyyy"))
LI.SubItems(1) = rs1.Fields(1).Value
LI.SubItems(2) = rs1.Fields(2).Value
LI.SubItems(3) = rs1.Fields(3).Value
LI.SubItems(4) = IIf(IsNull(rs1.Fields(4).Value), "00:00:00", rs1.Fields(4).Value)
LI.SubItems(5) = rs1.Fields(5).Value
rs1.Close
End If
End Sub
Private Sub lvwList_KeyDown(KeyCode As Integer, Shift As Integer)
id = Val(lvwList.SelectedItem.SubItems(5))
If KeyCode = vbKeyReturn And level = 1 Then
level = 2
Index = lvwList.SelectedItem.Index
LoadData
cmdEdit.Enabled = True
dtpDate.Enabled = False
ElseIf KeyCode = vbKeyEscape And level = 2 Then
level = 1
LoadData
cmdEdit.Enabled = False
dtpDate.Enabled = True
End If
End Sub
Next
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyEscape Then
Unload Me
End If
End Sub
Private Sub Form_Load()
LoadData
Left = 0
Top = 0
End Sub
Private Sub LoadData()
'On Error GoTo Doctor
Dim LI As ListItem
If rs.State = 1 Then rs.Close
rs.Open "select * from EmployeeMaster where whoadded<>'system'", dbConn, adOpenDynamic,
adLockOptimistic
lvwList.ListItems.Clear
Do Until rs.EOF
Set LI = lvwList.ListItems.Add(, , rs.Fields("EmployeeName").Value)
LI.SubItems(1) = rs!userID
LI.SubItems(2) = rs!DOJ
LI.SubItems(3) = rs!SBU
LI.SubItems(4) = rs!level
LI.SubItems(5) = rs!Accessibility
LI.SubItems(6) = rs!Designation
LI.SubItems(7) = rs!Mobile
LI.SubItems(8) = rs!LocalAddress
LI.SubItems(9) = rs!LocalNo
LI.Checked = True
rs.MoveNext
Loop
lvwList_KeyUp vbKeyDown, 0
Exit Sub
Doctor:
If Err.Number <> 0 Then
MsgBox "Error To Perform Action", vbCritical, "Error!!!!!!"
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
rs.Close
End Sub
Private Sub lvwList_Click()
lvwList_KeyUp vbKeyDown, 0
End Sub
Private Sub lvwList_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
lvwList.SortOrder = IIf(lvwList.SortOrder = lvwDescending, lvwAscending, lvwDescending)
lvwList.SortKey = ColumnHeader.Index - 1
lvwList.Sorted = True
End Sub
Private Sub lvwList_KeyUp(KeyCode As Integer, Shift As Integer)
Dim LI As ListItem
Dim pic As String
Set LI = lvwList.SelectedItem
rs.MoveFirst
rs.Move LI.Index - 1
Dim FSO As New FileSystemObject
pic = IIf(Right(App.Path, 1) = "\", App.Path & "images\", App.Path & "\images\") & LI.SubItems(1) &
".jpg"
If FSO.FileExists(pic) Then
Image1.Picture = LoadPicture(pic)
Image1.ZOrder vbBringToFront
Else
Image1.Picture = LoadPicture()
Image1.ZOrder vbSendToBack
End If
End Sub
rsT.Close
MsgBox "User Authentication Failed." & vbCrLf & "Inavlid User!!!!!!!"
Exit Sub
End If
rsT.Close
rsT.Open "select * from attendance where UserID='" & txtUserIDOut & "' and workingdate=#" &
Format(lbldate.Caption, "dd/mm/yyyy") & "# and LogIn=Yes"
If rsT.RecordCount = 0 Then
MsgBox "You can't Log Out Without Logging In."
rsT.Close
Exit Sub
End If
rsT.Close
rs.Open "select * from Attendance where WorkingDate=#" & Format(lbldate.Caption, "dd/mm/yyyy") &
"# and UserID='" & txtUserIDOut.Text & "' and Login=YES", dbConn, adOpenDynamic, adLockOptimistic
rs!logouttime = Format(lblTime, "hh:mm:ss")
rs!reasons = cmbReasons.Text
rs!login = False
rs!totalHours = CalculateHours(rs!logintime, Format(lblTime.Caption, "hh:mm"))
rs.Update
rs.Close
LoadData
txtUserIDOut.Text = ""
txtPasswordOut.Text = ""
MsgBox "You are successfully Logged Out"
Exit Sub
Doctor:
If Err.Number <> 0 Then
MsgBox "User Authentication Failed." & vbCrLf & "Inavlid User!!!!!!!"
End If
End Sub
Private Sub Form_Activate()
CenterForm Me
lvwList.ColumnHeaders(1).Width = lvwList.Width * 0.3
lvwList.ColumnHeaders(2).Width = lvwList.Width * 0.3
lvwList.ColumnHeaders(3).Width = lvwList.Width * 0.1
lvwList.ColumnHeaders(4).Width = lvwList.Width * 0.1
lvwList.ColumnHeaders(5).Width = lvwList.Width * 0.2
LoadData
cmbReasons.ListIndex = 0
End Sub
Private Sub lvwList_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
SortList lvwList, ColumnHeader
End Sub
Private Sub Timer1_Timer()
lbldate.Caption = Format(Date, "dd/mm/yyyy")
lblTime.Caption = Format(Time, "hh:mm:ss")
End Sub
Private Function CalculateHours(tm1 As Date, tm2 As Date) As Date
Dim i As Double, j As Double
i = Hour(tm2) - Hour(tm1)
j = (Minute(tm2) - Minute(tm1))
If j < 0 Then
i=i-1
j = 60 + j
End If
CalculateHours = Format(i & ":" & j, "hh:mm")
End Function
Private Sub LoadData()
Dim LI As ListItem
Dim rsT As New ADODB.Recordset
If rsT.State = 1 Then rsT.Close
rsT.Open "select EmployeeName,a.UserID,Logintime,LogOutTime,reasons from Attendance
a,EmployeeMaster b where workingDate=#" & Format(mdiCENPAP.stBar.Panels(6).Text) & "# And
a.userid = b.userid", dbConn, adOpenDynamic, adLockOptimistic
lvwList.ListItems.Clear
Do Until rsT.EOF
Set LI = lvwList.ListItems.Add(, , Format(rsT.Fields(0).Value, "dd/mm/yyyy"))
LI.SubItems(1) = rsT.Fields(1).Value
LI.SubItems(2) = rsT.Fields(2).Value
LI.SubItems(3) = IIf(IsNull(rsT.Fields(3).Value), "", rsT.Fields(3).Value)
LI.SubItems(4) = IIf(IsNull(rsT.Fields(4).Value), "", rsT.Fields(4).Value)
rsT.MoveNext
Loop
End Sub
Option Explicit
Private Sub CancelButton_Click()
Unload Me
End Sub
Private Sub Form_Load()
End Sub
Private Sub OKButton_Click()
frmLoggedIN.lvwList.SelectedItem.SubItems(3) = txtIn.Text
frmLoggedIN.lvwList.SelectedItem.SubItems(4) = txtOut.Text
frmLoggedIN.cmdEdit.Caption = "&Save"
Unload Me
End Sub
Private Sub txtIn_GotFocus()
SendKeys "{Home}+{End}"
End Sub
Private Sub txtOut_GotFocus()
SendKeys "{Home}+{End}"
End Sub
: "&
: "&
rs.MoveNext
Loop
rs.Close
rs.Open "select distinct workingdate from attendance where UserID='" & UID & "' and
month(workingdate)=" & Val(txtMonth.Text) & " and year(workingdate)=" & Val(txtYear.Text) & " and
present=YES group by WorkingDate", dbConn, adOpenDynamic, adLockOptimistic
tDays = rs.RecordCount
Do Until rs.EOF
rs1.Open "select TotalHours from Attendance where workingdate=#" & rs.Fields(0).Value & "# and
UserID='" & UID & "'", dbConn, adOpenDynamic, adLockOptimistic
Do Until rs1.EOF
h = h + IIf(IsNull(rs1.Fields(0).Value), 0, Hour(rs1.Fields(0).Value))
m = m + IIf(IsNull(rs1.Fields(0).Value), 0, Minute(rs1.Fields(0).Value))
rs1.MoveNext
Loop
rs1.Close
rs.MoveNext
Loop
rs.Close
Else
rs.Open "select distinct workingdate from attendance where UserID='" & UID & "' and
month(workingdate)=" & Val(txtMonth.Text) & " and year(workingdate)=" & Val(txtYear.Text) & " and
present=yes group by WorkingDate", dbConn, adOpenDynamic, adLockOptimistic
tDays = rs.RecordCount
Do Until rs.EOF
dh = 0: dm = 0
Set LI = lvwList.ListItems.Add(, , rs.Fields(0).Value)
rs1.Open "select TotalHours from Attendance where workingdate=#" & rs.Fields(0).Value & "# and
UserID='" & UID & "'", dbConn, adOpenDynamic, adLockOptimistic
Do Until rs1.EOF
dh = dh + IIf(IsNull(rs1.Fields(0).Value), 0, Hour(rs1.Fields(0).Value))
dm = dm + IIf(IsNull(rs1.Fields(0).Value), 0, Minute(rs1.Fields(0).Value))
rs1.MoveNext
Loop
If dm >= 60 Then
dh = dh + ((dm - dm Mod 60) / 60)
dm = dm Mod 60
End If
dHours = Format(dh, "00") & ":" & Format(dm, "00")
h = h + dh: m = m + dm
LI.SubItems(3) = dHours
rs1.Close
rs1.Open "select min(LoginTime),Max(LogoutTime) from Attendance where workingdate=#" &
rs.Fields(0).Value & "# and UserID='" & UID & "'", dbConn, adOpenDynamic, adLockOptimistic
LI.SubItems(1) = rs1.Fields(0).Value
LI.SubItems(2) = IIf(IsNull(rs1.Fields(1).Value), "", rs1.Fields(1).Value)
rs1.Close
rs.MoveNext
Loop
rs.Close
End If
If m >= 60 Then
h = h + ((m - m Mod 60) / 60)
m = m Mod 60
End If
tHours = Format(h, "00") & ":" & Format(m, "00")
lvwList.ListItems.Add , , ""
Set LI = lvwList.ListItems.Add(, , "")
LI.SubItems(3) = tDays
LI.SubItems(4) = "Total Days Attended"
Set LI = lvwList.ListItems.Add(, , "")
LI.SubItems(3) = ds
LI.SubItems(4) = "Sundays"
Set LI = lvwList.ListItems.Add(, , "")
LI.SubItems(3) = tDays + ds
LI.SubItems(4) = "Total Days"
Set LI = lvwList.ListItems.Add(, , "")
LI.SubItems(3) = tHours
LI.SubItems(4) = "Total Hours Attended"
Exit Sub
Doctor:
If Err.Number = 94 Then
MsgBox "No data for the said month"
Else: Resume Next
End If
End Sub
Private Sub optType_Click(Index As Integer)
mode = Index
FillSheet
End Sub
Private Sub txtMonth_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then LoadData
End Sub
Private Sub txtYear_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then LoadData
End Sub
CONCLUSION
The Project entitled CALL CENTER MANAGEMENT SYSTEM is the 1st project are attempt
by me towards development of any automated system.
I conclude this report with a note of thanks to all those who help me for successful completion of
this project. I have developed his software to the best of me ability, the time schedule and the
resources available to me.
My project CALL CENTER MANAGEMENT SYSTEM works satisfactory as per need. It fulfill all
the major needs of the CALL CENTER MANAGEMENT SYSTEM
SUGGESTION
As this is my first project work, so I feel it was very difficult for me to develop software
independently. I saw a lot of problem during the past time. To develop software for a newer one with in
the limited period of time is little bit difficult but also enjoy making the software and learn lot of things.
At the completion period of software I feel that I can did much more like I could also provide the
facility of various appeals and certificates which are required in the court.
I also havent included the concept of charge anywhere in this project; Due to lack of time I was
unable to gather all essential information for this project, related to charge. So there is no way to
calculate charges in this project.
Most importantly, any provision for back-ups is not available which is an important and useful
part of this project is. Due to unavailability of any back-ups system we may face many problems, such
as if we lost some important information, then in that case there is no provision to get it back.
LIMITATION
Microsoft window is rapidly becoming the standard operating environment for Ps and
visual basic is the standard programming language for window. As a result, many employees are
demanding that computing student should be familiar with visual Basic, and increasingly course from
national to degree level are including a visual basic component.
Visual Basic is the language that many developers including Microsoft themselves are
using to write new application software. At the last count there were over a million visual basic
applications in commercial use. Look closely at any modern window database spreadsheet and word
processing package, whether from Microsoft or other leading software house, and you will find that its
macro language is either a variety of visual basic, or almost identical to it. For this reason, anyone who
wants to become a windows expert should master a grasp of it.
CERTAIN LIMITATION ARE:1
2
3
4
BIBLIOGRAPHY
1
2
3
4
5