Konferensi Nasional Sistem Informasi 2011
246 Server socket kurang lebih memiliki
event – event berikut untuk menangani layanan pertukaran data.
1. Event onClientConnect
Event ini berisi perintah untuk memberitahukan bahwa ada client yang
melakukan koneksi ke server socket. Untuk itu perlu dilakukan definisi alamat IP dengan
menambahkan variabel
temp bertipe
AnsiString untuk menampung alamat IP client yang terhubung.
Kode Program 1. Event onClientConnect
2. Event onClientDisconnect
Sama halnya
dengan event
onClientConnect, event ini uga digunakan sebagai pemberitahuan bahwa ada client
yang melakukan
pemutusan koneksi.
Perintah yang digunakan pada event ini sama dengan yang ada pada event
onClientConnect, hanya
saja kata
terhubung diganti dengan terputus.
3. Event onError
Event onError digunakan didalam penanganan kesalahan atau error yang
mungkin terjadi. Kesalahan dapat saja terjadi jika alamat IP client tidak berada
pada satu jaringan yang sama dengan alamat IP server. Selain itu, jika client salah
mendefenisikan alamat IP server, hal ini juga dapat menimbulkan error. Sehingga
event ini dibutuhkan untuk memunculkan pesan error. Dengan menambahkan perintah
ShowMessageError..;
pada baris event onError.
4. Event onRead
Event onRead digunakan dalam proses pertukaran data. Isi dari event ini
tergantung pada jenis layanan apa yang ditangani oleh server socket tersebut. Pada
aplikasi yang dibangun menggunkan tiga server socket yang menangani layanan yang
berbeda-beda pula. Untuk itu isi dari ketiga event onRead pada tiap server socket
berbeda pula. Event onRead yang menangani
layanan chatting berisi perintah seperti yang ditunjukkan
pada Kode
Program 2.
Dilakukan deklarasi
variabel bertipe
AnsiString dan integer Variabel bertipe AnsiString mendefenisikan alamat IP client
dan pesan yang dikirimkan dari client. Sedangkan
variabel bertipe
integer digunakan
dalam proses
perulanganlooping. Kode Program 2. Perintah event onRead
Server Socket Chat Untuk server socket yang menangani
layanan rekam medis morbiditas, dalam event onClientRead dideklarasikan dua
puluh variabel bertipe AnsiString dan sebuah variabel bertipe integer. Variabel bertipe
AnsiString digunakan untuk menampung data rekam medis yang akan dilewatkan dari
client ke server. Variabel bertipe AnsiSting antara lain, psn, f1, f2, f3, f4, f5, f6, f7, f8, f9,
f10, f11, f12, f13, f14, f15, f16, f17, f18, f19. Variabel psn mendefenisikan pesan yang
akan
diterima server
socket dengan
menggunakan fungsi
ReceiveText. Sedangkan variabel f1 sampai f19 digunakan
dalam proses pengisian data-data rekam medis kedalam database sesuai dengan
aturan yang dibuat. Variabel i bertipe integer, mendefenisikan pesan ke berapa
yang akan dilewatkan, membantu dalam proses perulangan Kode Program 3.
Sedangkan untuk server socket yang menangani layanan rekam medis hasil
kegiatan K.I.A berisi perintah yang hampir sama dengan yang melayani data morbisitas.
Yang membedakan hanya jumlah data yang terkait. Sehingga deklarasi variabel nya
harus disesuaikan dengan jumlah data yang akan dimasukan dalam database.
AnsiString temp; temp=Socket-RemoteAddress;
int i; fori=0;issChat-Socket-
ActiveConnections;i++ {
ssChat-Socket- Connections[i]-SendTexttemp+
Terhubung; }
MemoChat-Lines-Addtemp+ Terhubung;
int i; AnsiString
temp,temp2;untuk temporarinya
temp=Socket-ReceiveText; temp2=Socket-RemoteAddress;
fori=0;issChat-Socket- ActiveConnections;i++
{ ssChat-Socket-
Connections[i]-SendTexttemp2+: +temp;
} MemoChat-Lines-
Konferensi Nasional Sistem Informasi 2011
247 Kode Program 3.. Perintah event
OnClientRead Server Socket Morbiditas
5. Event onListen. Event ini