coba dengan begini, pasti gak bengong
 
    rs.open "sql di sini",....dst
        intNumFields = ........Code untuk menghasilkan jumlah fields
        strRs=""
        screen.mousepointer=vbhourglass
        do while not rs.eof
            doevents
            for i=0 to intNumFields -1
                strRs=strRs & rs.fields(i).value & ColumnSep
            next i
            strRs = strRs & RowSep
            rs.movenext
        loop
        screen.mousepointer=vbnormal
 
program akan berjalan terus tanpa bengong, tandanya hanya cursor menjadi sibuk
saat berjalan looping.
 
sy lebih prefer lagi ada satu variabel tambahan lagi (boolean)yg menyatakan bahwa ada proses yg berjalan
karena kita pakai "doevents" kalau proses berlangsung bolean tersebut true, kalau selesai false
di event form_terminate cek dulu bolean ini untu tau sedang ada proses berlangsung atau tidak
kalau ada cancel terminate form. bolean ini diletakan disesudah screen.mouse.......
IT WORKS Nice. lebih nice lagi dikasih timer jadi kita tau looping tersebut sudah berjalan berapa lama...
 
HTH
----- Original Message -----
Sent: Monday, September 29, 2003 4:43 PM
Subject: [Programmer-VB] Tolong bantu paling tidak dalam bentuk ide

Saya sedang membuat aplikasi client -server menggunakan winsock (TCP/IP). Aplikasi server berjalan secara background (service) dan dapat diakses melalui tray icon.
Aplikasi client diinstall pada setiap client dan menggunakan port 55000.
Programnya berjalan dengan baik dan dapat melayani banyak client sekaligus, namun ada masalah:
"program server hanya bisa melayani 1 jenis system saja. misalnya program aplikasi billing. jadi setiap saya hendak membuat 1 macam system informasi maka aplikasi servernya juga khsusus. sehingga jika dalam 1 komputer server terdapat 2 atau lebih layanan system informasi, maka aplikasi servernya juga dibuat 2 atau lebih"
 
Saya punya ide, dimana saya berusaha membuat 1 aplikasi server yang berfungsi seperti MS SQL Server, dan berusaha membangun sintax sendiri seperti halnya sintax pada ADO namun yang dapat dikenali oleh aplikasi server.
 
kesulitannya :
Saya belum menemukan algoritma yang cepat dan tepat untuk melewatkan data berupa recordset melalui winsock. karena yang saya tahu, untuk melewatkan data melalui winsock, maka variabelnya adalah string. Karena itu saya membuat algortima kurang lebih sbb:
 
const ColumnSep = vbTab
const RowSep = vbcrlf & chr$(7)
dim rs as ado.recordset
dim strRs as string, intNumFields as integer, i as integer
 
    rs.open "sql di sini",....dst
        intNumFields = ........Code untuk menghasilkan jumlah fields
        strRs=""
        do while not rs.eof
            for i=0 to intNumFields -1
                strRs=strRs & rs.fields(i).value & ColumnSep
            next i
            strRs = strRs & RowSep
            rs.movenext
        loop
 
Dari sini saya peroleh variabel strRs yang siap di transfer melalui winsock.
masalahnya terjadi proses looping yang membuat server kepayahan. kalau jumlah record yang dihasilkan tidak banyak, maka tidak masalah. namun jika jumlahnya banyak maka not responding.
 
Ada teman - teman yang mau menanggapi?
 
salam,
 
 
zainal


Untuk keluar dari millis ini, kirim email kosong ke:
[EMAIL PROTECTED]





SPONSORED LINKS
Programmer Indonesia Basic programming language
Computer programming languages Programming languages Java programming language


YAHOO! GROUPS LINKS




Kirim email ke