Sebelumnya, salam kenal
Kulo programmer pemula VB,mau tanya masalah SQL, Kulo
punya script sbb :
Private Sub Cetak_reportNew(KO_bpw As Integer)
Dim tgBPW As Date
Me.MousePointer = vbHourglass
Dim KoUnit, bdr, prb, rbk, JumBDR, JumPRB, JumRBK As
Long
KoUnit = 0: bdr = 0: prb = 0: rbk = 0
JumBDR = 0: JumPRB = 0: JumRBK = 0: Jumrec = 0
Set Rec2 = Nothing
Set Rec3 = Nothing
Cls
NOKAR = ""
tgBPW = tG1
For Nox = tG1 To tG2
sql = "SELECT distinct detail_jual.negara " & _
"FROM ((BPW INNER JOIN Penjualan ON
BPW.Kode_BPW = Penjualan.Kode_BPW) INNER JOIN
Detail_Jual ON Penjualan.No_ID = Detail_Jual.No_ID)
INNER JOIN Item_Jual ON Penjualan.No_ID =
Item_Jual.No_ID " & _
"Where (((Detail_Jual.Status) = True)) and
penjualan.kode_bpw=" & KO_bpw & " and tgl_klik = #" &
Format(Nox, "mm/dd/yyyy") & "#"
Set Rec3 = ConServer.Execute(sql)
While Not Rec3.EOF
sql = "SELECT DISTINCT BPW.Nama_BPW, BPW.Alamat,
BPW.No_Telp, Tgl_klik, Detail_Jual.ID_Karcis1,
Detail_Jual.No_Karcis1,
Detail_Jual.Negara,tgl_beli,HARGA " & _
"FROM ((BPW INNER JOIN Penjualan ON BPW.Kode_BPW
= Penjualan.Kode_BPW) INNER JOIN Detail_Jual ON
Penjualan.No_ID = Detail_Jual.No_ID) INNER JOIN
Item_Jual ON Penjualan.No_ID = Item_Jual.No_ID " & _
"Where (((Detail_Jual.Status) = True)) and
status=true and penjualan.kode_bpw=" & KO_bpw & " and
detail_jual.negara='" & Rec3!negara & "' and tgl_klik
= #" & Format(Nox, "mm/dd/yyyy") & "#" ' order by
tgl_klik,Detail_Jual.No_Karcis1 asc"
Set Rec2 = ConServer.Execute(sql)
While Not Rec2.EOF
QtyKar(Jumrec) = Rec2!no_karcis1
Jumrec = Jumrec + 1
If NOKAR = "" Then
NOKAR = NOKAR & Format(Rec2!no_karcis1,
"0#####")
Else
NOKAR = NOKAR & "," &
Format(Rec2!no_karcis1, "0#####")
End If
tbeli = Rec2!TGL_beli
nb = Rec2!nama_bpw
hrg = Rec2!Harga
neg = Rec2!negara
Rec2.MoveNext
Wend
Urut
If QtyKar(Jumrec) <= 0 Then Jumrec = Jumrec - 1
If NOKAR <> "" Then
Rec1.AddNew
Rec1!tgl_jual = Nox 'Rec2!TGL_klik
Rec1!TGL_beli = tbeli 'Rec2!TGL_BELI
Rec1!nama_bpw = nb ' Rec2!nama_bpw
Rec1!Harga = hrg 'Rec2!HARGA
Rec1!negara = neg 'Rec2!negara
Rec1!seri_karcis = NOKAR '
Rec2!id_karcis1 & "." & Format(Rec2!no_karcis1,
"0#####") & ""
Rec1!Jum = Jumrec + 1
Rec1.Update
End If
NOKAR = ""
hrg = 0
Jumrec = 0
Rec3.MoveNext
Wend
Next Nox
Rec1.Requery
Me.MousePointer = Default
End Sub
Catatan Tambahan:
- jarak client ke server sekitar 80 Km
- jaringan pake wirelles
- kecepatan data dengan kapasitas 1000 bytes -
TTL=400-700
Permasalahannya :
- Transaksi lama <lap. 1 hari krlbh 5 menit>
- Apa query blm optimal?
- Mohon saran
Terima kasih sebelumnya
____________________________________________________________________________________
Never miss a thing. Make Yahoo your home page.
http://www.yahoo.com/r/hs