Professional Documents
Culture Documents
CHAPTER ONE
1.0
1.1
INTRODUCTION
BACKGROUND OF THE STUDY
The world is fast becoming a global village and a necessary tool for this
process is communication of which telecommunication is a key player. The
quantum development in the telecommunications industry all over the world
is very rapid as one innovation replaces another in a matter of weeks. A
major breakthrough is the wireless telephone system which comes in either
fixed wireless telephone lines or the Global System of Mobile
Communications (GSM). Communication without doubt is a major driver of
any economy. Emerging trends in socio-economic growth shows a high
premium being placed on information and communication technology (ICT)
by homes, organizations, and nations.
Nigeria is not left out in this race for rapid development as the nations
economy has been subjected to years of economic reversal via
mismanagement and bad leadership. The Nigerian telecommunications
sector was grossly underdeveloped before the sector was deregulated under
the military regime of General Ibrahim Babangida in 1992 with the
1.2
It has been observed that calls across different networks are always difficult
to connect, at times diverted and also attract more cost. This creates room
for users to be confused as how much is deducted from their call credits or
are compelled to having multiple GSM lines. As the network increases, more
users makes call across different networks and there is need to record the
call time, call network, and line identification and be able to put calls across
the networks with out much congestions.
Transmission of calls requires at least two points, A and B (point-to-point;
point-to-multipoint
or
multipoint-to-point).
Consequently,
the
1.3
1.4
This study will help us to know the status of GSM network resource
allocation in Nigeria with a view to knowing areas to be addressed for better
performance. This research work will aid telecommunication companies in
Nigeria to achieve the following:
1.
2.
3.
Determine the calling network and receiving network and use this
information for the purpose of interconnectivity tariffs.
4.
1.5
Basically the aim of this project work is to design and simulate a multi-user
congestion control system for MTN.
1.6
1.7
Some of the constraints encountered during this project design include the
following:
1.8
DEFINITION OF TERMS
and other user data such as the phone book. A users SIM card can be moved
from phone to phone as it contains all the key information required to
activate the phone.
Telecommunication: Are devices and systems that transmit electronic or
optical signals across long distances. Telecommunication enables people
around the world to contact one another to access information instantly, and
to communicate from remote areas.
Computer Network: It is a system used to connect two or more computers
using a communication link.
CHAPTER TWO
2.0
LITERATURE REVIEW
2.1
10
plrli,
l
is the price to which the flow responds.
Congestion control then becomes a distributed optimization algorithm for
solving the above problem. Many current congestion control algorithms can
be modeled in this framework, with pl being either the loss probability or the
queuing delay at link l.
A major weakness of this model is that it assumes all flows observe the same
price, while sliding window flow control causes "burstiness" which causes
different flows to observe different loss or delay at a given link.
There are many ways to classify congestion control algorithms:
By the type and amount of feedback received from the network: Loss; delay;
single-bit or multi-bit explicit signals
11
2.2
CONGESTIVE COLLAPSE
12
13
the most likely choke points. A DSL modem is the most common small
network example, with between 10 and 1000 Mbit/s of incoming bandwidth
and at most 8 Mbit/s of outgoing bandwidth.
The prevention of congestion collapse requires two major components:
A mechanism in routers to reorder or drop packets under overload,
End-to-end flow control mechanisms designed into the end points which
respond to congestion and behave appropriately.
The correct end point behaviour is usually still to repeat dropped
information, but progressively slow the rate that information is repeated.
Provided all end points do this, the congestion lifts and good use of the
network occurs, and the end points all get a fair share of the available
bandwidth. Other strategies such as 'slow start' ensure that new connections
don't overwhelm the router before the congestion detection can kick in.
The most common router mechanisms used to prevent congestive collapses
are fair queuing in its various forms, and random early detection, or RED,
where packets are randomly dropped before congestion collapse actually
occurs, triggering the end points to slow transmission more proactively. Fair
14
15
16
2.3
(NET)
Limited,
responsible
for
the
external
17
world. The installed switching capacity at the end of 1985 was about
200,000 lines as against the planned target of about 460,000. All the
exchanges were analogue. Telephone penetration remained poor equaling 1
telephone line to 440 inhabitants, well below the target of 1 telephone line to
100 inhabitants recommended by ITU for developing countries. The quality
of service was largely unsatisfactory. The telephone system was unreliable,
congested, expensive and customer unfriendly.
Arising from the foregoing, in January 1985, the erstwhile Posts and
Telecommunications
Department
was
split
into
Postal
and
18
NITEL the only national carrier had a monopoly on the sector and was
synonymous with epileptic services and bad management. On assumption of
office on May 29, 1999 the President Olusegun Obasanjo administration
swung to gear to make a reality the complete deregulation of the telecom
sector, most especially the much touted granting of licenses to GSM service
providers and setting in motion the privatization of NITEL. This proactive
approach by the government to the telecom sector has made it possible for
over 2.5 million Nigerians to clutch GSM phones today.
2.4
NETWORK CONGESTION
19
the initial load has been reduced to a level which would not normally have
induced network congestion. Thus, networks using these protocols can
exhibit two stable states under the same level of load. The stable state with
low throughput is known as congestive collapse.
Modern networks use congestion control and network congestion avoidance
techniques to try to avoid congestion collapse. These include: exponential
back off in protocols such as 802.11's CSMA/CA and the original Ethernet,
window reduction in TCP, and fair queuing in devices such as routers.
Another method to avoid the negative effects of network congestion is
implementing priority schemes, so that some packets are transmitted with
higher priority than others. Priority schemes do not solve network
congestion by themselves, but they help to alleviate the effects of congestion
for some services. An example of this is 802.1p. A third method to avoid
network congestion is the explicit allocation of network resources to specific
flows. One example of this is the use of Contention-Free Transmission
Opportunities (CFTXOPs) in the ITU-T G.hn standard, which provides
high-speed (up to 1 Gbit/s) Local area networking over existing home wires
(power lines, phone lines and coaxial cables).
20
2.5
NETWORK CONNECTIVITY
Perhaps, one of the memorable legacies of the Obasanjo government was the
creation
of
an
enabling
environment
for
the
evolution
of
21
22
23
CHAPTER THREE
3.0
3.1
Interconnect Requests
Interconnect Schedule
24
Transmission tests.
Switching tests.
Billing Verification.
Post processing.
Commercial Launch.
3.
Points of Interconnectivity
The Requesting Operator shall provide transmission links from its network
to the relevant Networks POI in line with standard industry practice.
Current MTNNs POIs have since grown from an initial four to a current
total of eight locations with a nation-wide geographical spread, namely Ikoyi
and Ojota within Lagos, Ibadan, Abuja, Port-Harcourt, Asaba, Benin and
Kano.
4.
Resources
25
3.2
3.2.1 Methodology
During the research work, data needed for the project was gathered from
various sources. In gathering and collecting necessary data and information
needed for system analysis, two major fact-finding techniques were used in
this work and they are:
(a) Primary Source
This refers to the sources of collecting original data in which the researcher
made use of empirical approach such as personal interview and
questionnaires.
(b) Secondary Source
The secondary data were obtained by the researcher from written documents
such as magazines, Journal, Newspapers, Library source and Internet
downloads.
Personnel interviews
This method was implored due to some reasons that is, congestion control of
GSM in MTN. controlling congestion in GSM has so many steps and all the
necessary information cannot be obtained through written documents. The
26
3.3
27
28
29
30
SUBSCRIBER REQUEST
REQUEST
ANALYSIS
ON-NET?
NO
YES
CHARGE TYPE 1
PARTNER?
YES
CHARGE TYPE 2
STOP
NO
CHARGE TYPE 3
31
3.5
3.6
The new system is designed to solve problems affecting the manual system
in use. It is design to be computerised thereby relieving both the customers
and staff from much stress as experienced in the manual system.
The proposed system will also have some other feature like:
Accuracy in the handling of data.
Fast rate of operation and excellent responses time
32
CHAPTER FOUR
4.0
SYSTEM DESIGN
4.1
DESIGN STANDARDS
Have a workable form through which all the inputs will be made to
the system.
b.
Generate a report that will present call records with time and date.
c.
d.
33
e.
4.2
The output from the system designed is generated from the system inputs.
The call records are generated in a hard copy and soft copy for management
analysis and decision making. The following outputs were generated from
the software.
4.3
1.
Activated lines
2.
Call Information
At this stage, the information gathered were analyzed and restructured into a
more relevant and useful data. Data analysis and restructuring was based on
the identification of the basic needs and the structure required for the
project. The information gathered were analyzed and restructured in such a
34
way that the subsystems and the modules were achieved efficiently. The
analysis and restructuring of these data were such that the system is capable
of presenting one frame at a time to the user. Below are some of the inputs
forms designed.
4.4
FILE DESIGN
The new system comprises of a database for GSM Lines register and Call
Interconnectivity Database. The database was designed using Access
Database. The structure for the tables in the database file includes:
GSM Interconnectivity Database
Field Name
Caller
Phone
Date
Time
Data Type
Text
Text
Date\time
Text
Field Size
50
11
8
15
35
Receiver
Text
Phone
Text
Table 4.4.1 GSM Interconnectivity Database
50
11
Field Size
50
11
50
25
36
Procedure Chart
Main Menu
Help
Lines
Calls
Report
Sim
Pack
Make
Call
Sims
Block
Line
Subscribers
Calls
Exit
37
System Flowchart
Input From
the
Keyboard
Disk
Storage
Control Unit
Output
(report)
Result to
Screen
38
4.5
SYSTEM REQUIREMENT
Both software and hardware are required for the implementation of this
project. So many programming languages were considered in the cause of
designing this software. A lot of factors were put into consideration which
includes database access, data transmission via networks, database security,
etc.
Moreover, Visual Basic 6.0 is very user friendly and enables the design of an
interface that can be modified programmatically.
They include:
4.5.1 Software Requirement
Windows Xp, Windows 2000 or Vista
Visual Basic 6.0
Microsoft Access Database
Windows Xp Service pack 1, 2, 3
Visual Basic 6.0
39
The choices for Visual Basic 6.0 is because the programming language has
the advantage of easy development, flexibility and it has the ability of
providing the developer/programmer with possible hints and it produces a
graphical user interface.
Microsoft Access Database
The choices for Visual Basic 6.0 with Access Database was made to enable
us achieve the above set objectives. Also Visual Basic supports modular
programming and hence the research finds it suitable for the design of this
software.
4.5.2 Hardware Requirement
Pentium VI and Above
256 MB Ram and above
40GB HD
Printer
4.5.3 Operational Requirement
For the new system to be operational, a computer lab has to be established,
equipped with air conditioner, chairs and office table. This will create a
40
conducive environment for the computer system and personnel that will
work as the staff.
4.5.4 Personnel Requirement
A total of 2 to 3 computer operators are needed to manage the computer
centre. They will oversee the entry of data into the system.
41
Program Flowchart
Start
Main Menu
SIMs (Lines)
Calls
Report
Help
New Line
No
No
Calls
Yes
Dial the number
No
Same
Network?
Yes
Connect the call to
the other network
Charge for
interconnectivity
42
Report Menu
Calls Interconnectivity
SIMS on Network
Yes
Option = 1
No
Option = 4
Option = 2
No
Option = 3
Stop
Yes
Display call
interconnectivity
report on and
across different
GSM Network
Display GSM
Lines on the
Network
43
4.6
SYSTEM IMPLEMENTATION
The new system was implemented using top down methodology. The
program is divided into modules for effective implementation. Bellow is the
modules implemented in the new system.
Sim Pack Sub System
This sub system is used to record all the existing GSM numbers on the inters
witch network. Once a GSM number is entered through this sub system, it is
stored on a database so that when dialed, computer will search for the
number on the database for the purpose of network connectivity
Make Call Sub System
This module is used to dial any GSM number on the network. It has the
features for number entry and dialing.
Subscriber Sub System
Once a user opens the software, he/she has to logon to the network by using
the subscriber subsystem to select his/her phone number.
Block line Sub System
This is used to put off a GSM number out of the network so that calls cannot
be connected to the number.
44
4.7
SOFTWARE INSTALLATION
The software run from GSM folder in drive C: Installation of the software
onto the hard disk of the host computer can easily be done by creating a
folder and copying the database files and the application programs. The
easiest way of doing this under the Windows environment is to use the
Windows Explorer program. The following steps can be used to install the
software:
a) Open Windows Explorer
b) Select GSM folder in drive D:
c) Open the Edit menu and click copy
d) Open drive c:
e) Click Edit menu and click paste
45
Select the options on the home page to load the different modules.
46
CHAPTER FIVE
5.0
5.1
SUMMARY
With the level of research work carried out in this project, a lot of findings
were made on the operations of GSM industries. This will help the mass to
have background information of the GSM sets the use and possible trigger
researchers to use this information for further research. Also students of
higher institutions can adopt the methods used for the implementation of this
project in their academic works.
Moreover, in the cause of this research, the features of the programming
language used were mention and this will make more students to have
interest in programming.
5.2
CONCLUSIONS
47
5.3
RECOMMENDATION
Based on the achievement made on this research work and also the
experienced gained during the design and implementation.
We suggest that every undergraduates, graduates and post graduates should
pay more attention to programming in other to compete favorably with there
counterparts in the western world.
48
49
BIBLIOGRAPHY
Textbooks
Aluko, M. E. (2007). Resolving the Telecommunications
Interconnectivity Battle in Nigeria.
Agba, P.C. (2001). Electronic reporting: Heart of the new
Communication Age Enugu: Snapp ltd.
Carey
(1975). A
Communication.
cultural
approach
to
communication;
50
51
QUESTIONNAIRE
Please kindly tick the most appropriate option and fill in the blank spaces with the best
answers.
Is the GSM network connectivity in MTN reliable? [Yes] [No]
Have there been any complaints from users about poor network connectivity? [Yes] [No]
How does MTN tackle this problem?_________________________________________
In MTN are there always congestions or traffic in the network [Yes] [No]
Is there any difference between congestion and congestive collapse? [Yes] [No]
If there is please state_____________________________________________________
_______________________________________________________________________
When does congestive collapse occur?________________________________________
APPENDIX 2
52
53
APPENDIX 3
PROGRAM HOME PAGE
54
APPENDIX 4
PROGRAM CALL PAGE
55
APPENDIX 5
PROGAM SIMPACK PAGE
56
APPENDIX 6
PROGRAM REPORT PAGE
57
58
APPENDIX 7
PROGRAM SOURCE CODE OF WELCOME PAGE
Private Sub Form_Activate()
ProgressBar1.Min = 1
ProgressBar1.Max = 8
ProgressBar1.Value = 1
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
frmMainMenu.Show
Unload Me
End Sub
Private Sub Timer1_Timer()
Static pr As Boolean
Static va As Integer
Dim col As Integer
col = Int(Rnd * 15)
va = va + 1
ProgressBar1.Value = va
pr = Not pr
If va = 8 Then
frmMainMenu.Show
Unload Me
End If
End Sub
59
APPENDIX 8
PROGRAM SOURCE CODE OF HOME PAGE
Private Sub activesims_Click()
simsreport.Show
End Sub
Private Sub callsreport_Click()
End Sub
Private Sub bline_Click()
On Error Resume Next
sim.Data1.Refresh
sim.Combo2.Clear
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
sim.Combo2.AddItem sim.Data1.Recordset.Fields("phone")
sim.Data1.Recordset.MoveNext
Loop
sim.Command1.Enabled = False
sim.Command2.Enabled = True
sim.Command3.Enabled = True
sim.Show
End Sub
Private Sub callsreportp_Click()
callsreport.Show
callsreport.Data1.Refresh
callsreport.DBGrid1.Refresh
End Sub
60
61
62
sim.Command3.Enabled = False
sim.Show
End Sub
Private Sub cmdsim_MouseMove(Button As Integer, Shift As Integer, X As
Single, Y As Single)
lblDisplay.Caption = "Activate a Simpack"
End Sub
Private Sub cmdSubsriber_Click()
On Error Resume Next
sim.Data1.Refresh
frmMainMenu.Combo1.Clear
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
frmMainMenu.Combo1.AddItem sim.Data1.Recordset.Fields("phone")
sim.Data1.Recordset.MoveNext
Loop
frmMainMenu.Frame3.Visible = True
Text3.Text = ""
End Sub
Private Sub cmdSubsriber_MouseMove(Button As Integer, Shift As Integer,
X As Single, Y As Single)
lblDisplay.Caption = "Log onto the network"
End Sub
Private Sub Combo1_Click()
sim.Data1.Refresh
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
63
If frmMainMenu.Combo1.Text = sim.Data1.Recordset.Fields("phone")
Then
frmMainMenu.Text3.Text = sim.Data1.Recordset.Fields("user")
Exit Do
Else
sim.Data1.Recordset.MoveNext
End If
Loop
End Sub
Private Sub Command8_Click()
frmMainMenu.Frame3.Visible = False
End Sub
Private Sub developer_Click()
Dim de As String
de = MsgBox("Copywrite :Oguanuo Chisom Pamela ", vbInformation,
"Developer")
End Sub
Private Sub exit_Click()
End
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As
Single, Y As Single)
lblDisplay.Caption = ""
End Sub
Private Sub PictureSecurity_Click()
End Sub
Private Sub makecallp_Click()
64
65
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
frmMainMenu.Combo1.AddItem sim.Data1.Recordset.Fields("phone")
sim.Data1.Recordset.MoveNext
Loop
frmMainMenu.Frame3.Visible = True
Text3.Text = ""
End Sub
Private Sub user_Click()
Dim k, usname As String
k = "User Name : " + Text3.Text + " -- Phone Number : " + Combo1.Text
usname = MsgBox(k, vbInformation, "User Information")
End Sub
66
APPENDIX 9
PROGRAM SOURCE CODE OF CALL PAGE
Private Sub Cmdial_Click(Index As Integer)
Text1.Text = Text1.Text + Cmdial(Index).Caption
End Sub
Private Sub Combo1_Click()
Text1.Text = Combo1.Text
End Sub
Private Sub Command1_Click()
On Error Resume Next
Dim found As Boolean
Animation1.Open "C:\gsm\Search.avi"
Animation1.Play
Label2.Caption = "Dialing....."
'frmMainMenu.Text3.Text = "Call 1"
Label6.Caption = 0
found = False
sim.Data1.Refresh
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
If frmcall.Text1.Text = sim.Data1.Recordset.Fields("phone") Then
frmcall.Label3.Caption = sim.Data1.Recordset.Fields("user")
found = True
If sim.Data1.Recordset.Fields("remark") <> "Activate" Then GoTo 300
Exit Do
Else
sim.Data1.Recordset.MoveNext
67
End If
Loop
If found = True Then
frmcall.Timer1.Enabled = True
Else
frmcall.Timer2.Enabled = True
End If
GoTo 400
300 ms = MsgBox("The number you called is not available at the moment.
Please try again later.", vbInformation, "Error in Connection")
400
End Sub
Private Sub Command2_Click()
On Error Resume Next
Animation1.Stop
Label2.Caption = "Call Ended"
Timer1.Enabled = False
Timer2.Enabled = False
End Sub
Private Sub Command3_Click()
'Frame1.Visible = False
'Frame2.Visible = False
Label2.Caption = "-"
frmcall.Hide
frmMainMenu.Show
End Sub
Private Sub Command4_Click()
Text1.Text = Left$(Text1.Text, Len(Text1.Text) - 1)
68
End Sub
Private Sub Command5_Click()
On Error Resume Next
Timer3.Enabled = True
Label2.Caption = "Connected....."
frmMainMenu.Data1.Recordset.AddNew
frmMainMenu.Data1.Recordset.Fields("phone") =
frmMainMenu.Combo1.Text
frmMainMenu.Data1.Recordset.Fields("caller") = frmcall.Text2.Text
frmMainMenu.Data1.Recordset.Fields("date") = Date
frmMainMenu.Data1.Recordset.Fields("time") = Time
frmMainMenu.Data1.Recordset.Fields("Status") = "On"
frmMainMenu.Data1.Recordset.Fields("receiver") = frmcall.Label3.Caption
frmMainMenu.Data1.Recordset.Fields("phone2") = frmcall.Text1.Text
frmMainMenu.Data1.Recordset.Update
Command5.Enabled = False
Timer4.Enabled = False
'MediaPlayer1.Stop
End Sub
Private Sub Command6_Click()
On Error Resume Next
Timer3.Enabled = False
Label2.Caption = "Call Terminated"
Animation1.Stop
Animation2.Stop
frmMainMenu.Data1.Recordset.MoveFirst
Do Until frmMainMenu.Data1.Recordset.EOF
69
If (frmMainMenu.Data1.Recordset.Fields("phone") =
frmMainMenu.Combo1.Text) And
(frmMainMenu.Data1.Recordset.Fields("Status") = "On") Then
frmMainMenu.Data1.Recordset.Edit
frmMainMenu.Data1.Recordset.Fields("Status") = "Off"
frmMainMenu.Data1.Recordset.Update
End If
frmMainMenu.Data1.Recordset.MoveNext
Loop
End Sub
Private Sub Command7_Click()
On Error Resume Next
Frame2.Visible = False
Label2.Caption = "Call Ended"
Timer3.Enabled = False
Animation1.Stop
Animation2.Stop
frmMainMenu.Data1.Recordset.MoveFirst
Do Until frmMainMenu.Data1.Recordset.EOF
If (frmMainMenu.Data1.Recordset.Fields("phone") =
frmMainMenu.Combo1.Text) And
(frmMainMenu.Data1.Recordset.Fields("Status") = "On") Then
frmMainMenu.Data1.Recordset.Edit
frmMainMenu.Data1.Recordset.Fields("Status") = "Off"
frmMainMenu.Data1.Recordset.Fields("duration") = Val(Label6.Caption)
frmMainMenu.Data1.Recordset.Update
End If
frmMainMenu.Data1.Recordset.MoveNext
Loop
End Sub
70
71
Timer4.Enabled = False
Timer2.Enabled = False
Frame2.Visible = False
Animation2.Open "C:\gsm\Findcomp.avi"
Animation2.Stop
' MediaPlayer1.Stop
Label2.Caption = "Call Ended"
End Sub
72
APPENDIX 10
PROGRAM SOURCE CODE OF SIMPACK PAGE
Private Sub Combo2_Click()
sim.Data1.Refresh
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
If sim.Combo2.Text = sim.Data1.Recordset.Fields("phone") Then
sim.Text1.Text = sim.Data1.Recordset.Fields("phone")
sim.Text2.Text = sim.Data1.Recordset.Fields("user")
sim.Combo1.Text = sim.Data1.Recordset.Fields("network")
sim.Combo3.Text = sim.Data1.Recordset.Fields("remark")
Exit Do
Else
sim.Data1.Recordset.MoveNext
End If
Loop
End Sub
Private Sub Command1_Click()
Dim t As String
If (sim.Text1.Text = "") Or (sim.Text2.Text = "") Then
t = MsgBox("Wrong Coding. Re - Enter the Phone Details", vbOKOnly,
"Invalid!!!")
Else
sim.Data1.Recordset.AddNew
sim.Data1.Recordset.Fields("phone") = sim.Text1.Text
sim.Data1.Recordset.Fields("user") = sim.Text2.Text
sim.Data1.Recordset.Fields("network") = sim.Combo1.Text
sim.Data1.Recordset.Fields("remark") = sim.Combo3.Text
73
sim.Data1.Recordset.Update
sim.Text1.Text = ""
sim.Text2.Text = ""
sim.Data1.Refresh
sim.Combo2.Clear
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
sim.Combo2.AddItem sim.Data1.Recordset.Fields("phone")
sim.Data1.Recordset.MoveNext
Loop
sim.Text1.SetFocus
End If
End Sub
Private Sub Command2_Click()
sim.Data1.Refresh
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
If sim.Combo2.Text = sim.Data1.Recordset.Fields("phone") Then
sim.Data1.Recordset.Delete
sim.Text1.Text = ""
sim.Text2.Text = ""
sim.Text1.SetFocus
Exit Do
Else
sim.Data1.Recordset.MoveNext
End If
Loop
sim.Data1.Refresh
sim.Combo2.Clear
sim.Data1.Recordset.MoveFirst
74
Do Until sim.Data1.Recordset.EOF
sim.Combo2.AddItem sim.Data1.Recordset.Fields("phone")
sim.Data1.Recordset.MoveNext
Loop
End Sub
Private Sub Command3_Click()
sim.Data1.Refresh
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
If sim.Combo2.Text = sim.Data1.Recordset.Fields("phone") Then
sim.Data1.Recordset.Edit
sim.Data1.Recordset.Fields("phone") = sim.Text1.Text
sim.Data1.Recordset.Fields("user") = sim.Text2.Text
sim.Data1.Recordset.Fields("network") = sim.Combo1.Text
sim.Data1.Recordset.Fields("remark") = sim.Combo3.Text
sim.Data1.Recordset.Update
sim.Text1.Text = ""
sim.Text2.Text = ""
sim.Text1.SetFocus
Exit Do
Else
sim.Data1.Recordset.MoveNext
End If
Loop
sim.Data1.Refresh
sim.Combo2.Clear
sim.Data1.Recordset.MoveFirst
Do Until sim.Data1.Recordset.EOF
sim.Combo2.AddItem sim.Data1.Recordset.Fields("phone")
sim.Data1.Recordset.MoveNext
75
Loop
End Sub
Private Sub Command4_Click()
sim.Hide
End Sub
76
APPENDIX 11
PROGRAM SOURCE CODE OF REPORT PAGE
Private Sub Command1_Click()
simsreport.PrintForm
Printer.EndDoc
End Sub
Private Sub Command2_Click()
simsreport.Hide
End Sub